A system and method for recommending users based on shared digital experiences.

The digital experience-based recommendation tool addresses inaccuracies in online matching by using user choices during a digital event to provide accurate compatibility recommendations and engage users, connecting those with similar traits.

JP7894902B2Inactive Publication Date: 2026-07-24MATCH GROUP LLC
View PDF 7 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
MATCH GROUP LLC
Filing Date
2024-05-08
Publication Date
2026-07-24
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

Existing online matching/recommendation systems rely on detailed personal information, which users may provide inaccurately or not provide at all, leading to inadequate compatibility results and user disappointment, and face challenges in engaging inactive users.

Method used

A digital experience-based recommendation tool that uses non-linear branching stories to reveal user personality traits through choices made during a digital event, connecting users based on shared experiences and choices rather than personal information.

Benefits of technology

Provides accurate compatibility recommendations based on actual user personality traits, engages users actively, and connects geographically separated individuals with similar traits without requiring physical presence.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007894902000003
    Figure 0007894902000003
  • Figure 0007894902000004
    Figure 0007894902000004
  • Figure 0007894902000005
    Figure 0007894902000005
Patent Text Reader

Abstract

To provide a system and method for recommending a user based on a shared digital experience.SOLUTION: In a system 100, a processor 140 of a digital experience-based recommendation tool 105 uses an interface 150 to transmit first media files which presents a first choice between at least two options to a device 115 of a user. On receipt of a first selection in response to the first choice, the processor transmits a second media file which presents a second choice between at least two options to the device 115. On receipt of a second selection in response to the second choice, the processor identifies a second user as potentially compatible with the user, based at least in part on the first selection and the second selection, and transmits a profile of the second user to the device 115.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention generally relates to the field of communications, and more particularly, to a system and method for recommending users based on a shared digital experience.

Background Art

[0002] Networking architectures developed in a communication environment have been increasingly evolving into more complexity in recent years. A number of protocols and configurations have been developed to accommodate diverse groups of end users with various networking needs. Many of these architectures have gained significant popularity as they can provide the advantages of automation, convenience, management, and improved consumer choice. By using a computing platform along with the networking architecture, an increase in communication, collaboration, and / or interaction has become possible. For example, certain network protocols may be used to enable end users to connect online with other users who meet specific search requirements. These protocols may be related to job search, personal discovery services, real estate search, or online dating.

Summary of the Invention

[0003] Networking architectures developed in a communication environment have been increasingly evolving into more complexity in recent years. A number of protocols and configurations have been developed to accommodate diverse groups of end users with various networking needs. Many of these architectures have gained significant popularity as they can provide the advantages of automation, convenience, management, and improved consumer choice. By using a computing platform along with the networking architecture, an increase in communication, collaboration, and / or interaction has become possible. For example, certain network protocols may be used to enable end users to connect online with other users who meet specific search requirements. These protocols may be related to job search, personal discovery services, real estate search, or online dating.

[0004] A typical online matching / recommendation system can facilitate matching by using profiles that contain a specific set of attributes relevant to each participant in the system. For example, in the context of online dating, a profile may include attributes such as age, education, and interests. A typical online matching / recommendation system can provide an algorithmic estimate of compatibility scores between pairs of participants by comparing various attributes from each participant's profile. However, such systems typically rely on detailed personal information, which many potential participants may be reluctant to provide to the system. Therefore, at least some potential participants may choose to provide false profile information, while others may simply choose not to participate in the online matching / recommendation system. In either case, potential participants may receive an inadequate compatibility result (at least partially based on false profile information) or receive no result at all (based on their inability to participate). Furthermore, many users may provide the system with profile information that represents an idealized version of themselves, far removed from an accurate representation. Therefore, participants matched with such users may face disappointment when interacting with these users in real life.

[0005] Another potential problem in the online matching / recommendation field is the inactivity of end users within their respective online communities. If end users are not active in reviewing the information they receive, they may hinder their online experience. Participation is a significant factor in online customer satisfaction. Therefore, the ability to encourage these end users to engage with a given service, facilitated by their own contributions, presents a significant challenge for website / application operators, component manufacturers, service providers, and system designers alike.

[0006] This disclosure is intended to provide a digital experience-based recommendation tool that addresses one or more of the above problems. The digital experience-based recommendation tool considers the choices a user makes while participating in a digital event to provide the user with better recommendations of other users who may be a good match for them. During the event, the user moves through a non-linear branching story that is sent to their device. Each branch of the non-linear branching story may consist of a display (e.g., a video) that presents the user with a set of options. The options may be designed to explore specific aspects of the user's personality. For example, a video presenting the user with the option to go skydiving or take a walk might demonstrate the user's adventurousness. In certain embodiments, the tool prompts the user to select an option within a short time window, encouraging the user to act on their instincts and potentially increasing the likelihood that the user's choice accurately reflects their personality. The tool records the choice made by the user and sends the user further media based on this choice. This process is repeated as the user moves through the story. The tool uses choices made by the user during the event to provide the user with recommendations of other users who may be a good match for them, based on shared choices chosen by the user throughout the event. In this way, certain embodiments of the tool can connect users with similar personality traits who participated in the event, where compatibility between users is determined in part based on their shared experiences during the event. Specific embodiments of the digital experience-based recommendation tool are described below.

[0007] According to one embodiment, the method includes the step of sending a first media file to a first user's device. The first media file presents a first choice among at least two options. The method further includes the step of receiving a first choice from the first user in response to the first choice. In response to receiving the first choice from the first user, the method includes the step of sending a second media file to the first user's device. The second media file presents a second choice among at least two options. The method further includes the step of receiving a second choice from the first user in response to the second choice. The method further includes the step of identifying a second user as potentially compatible with the first user, based in part on the first and second choices. The method further includes the step of sending a profile of the second user to the first user.

[0008] According to another embodiment, the device includes an interface and a hardware processor. The interface transmits and receives data over a network. The hardware processor uses the interface to transmit a first media file to a first user's device. The first media file presents a first choice among at least two options. The processor further uses the interface to receive a first choice from the first user in response to the first choice. In response to receiving the first choice from the first user, the processor uses the interface to transmit a second media file to the first user's device. The second media file presents a second choice among at least two options. The processor further uses the interface to receive a second choice from the first user in response to the second choice. The processor further identifies a second user as potentially compatible with the first user, based in part on the first and second choices. The processor further uses the interface to transmit a profile of the second user to the first user.

[0009] In a further embodiment, the system includes a communication element, a storage element, and a processing element. The communication element is operable to transmit and receive data over a network. The storage element is operable to store a set of media files, a set of profiles, and a set of weights. The set of media files includes a first media file and a second media file. The first media file is configured to present a first choice between at least two options. The second media file is configured to present a second choice between at least two options. The set of profiles includes a profile for a first user and a profile for a second user. The set of weights includes a first weight and a second weight. The first weight is assigned to a first choice, and the second weight is assigned to a second choice. The processing element is operable to use the communication element to transmit the first media file to the first user's device. The processing element is further operable to use the communication element to receive a first selection from the first user within a threshold time in response to a first choice. In response to receiving a first selection from the first user, the processing element can operate using a communication element to send a second media file to the first user's device. The processing element can further operate to receive a second selection from the first user within a threshold time in response to a second selection. The processing element can further operate to identify the second user as potentially compatible with the first user, based in part on the first selection, the second selection, the first weight, the second weight, the first user's profile, and the second user's profile. The processing element can further operate using a communication element to send the second user's profile to the first user. The processing element can further operate to add information to the first user's profile, which is based in part on the first and second selections.

[0010] A particular embodiment provides one or more technical advantages. For example, one embodiment provides improved recommendations based on user personality traits revealed through a shared digital experience. Another example is an embodiment that connects geographically separated individuals with similar personality traits. A further example is an embodiment that enables users to participate in a shared experience without having to go to a physical location. Another example is an embodiment that generates profile information for a user based on choices made by the user during an event, rather than relying on the user manually entering profile information. Another example is an embodiment that can present recommendations of users who are potentially compatible with each other, where the potential compatibility is assessed based on choices made by the user while participating in a digital event, rather than based on personal information entered by the user into their user profile. A further example is an embodiment that connects users who are active on the network during an event, increasing the likelihood of contact between such users who are recommended to each other. A particular embodiment may include, some, or all of the above technical advantages. One or more other technical advantages may be readily apparent to those skilled in the art from the drawings, specification and claims included in this application. [Brief explanation of the drawing]

[0011] For a more complete understanding of this disclosure, please refer to the following description in conjunction with the attached drawings. [Figure 1] An example system is shown. [Figure 2] Figure 1 shows an exemplary decision tree illustrating the nonlinear branching of stories generated by the digital experience-based recommendation tool of the system. [Figure 3] Figure 1 shows the recommendation engine for the system's digital experience-based recommendation tool. [Figure 4] Figure 1 shows an exemplary still image of a video transmitted by the system's digital experience-based recommendation tool. [Figure 5]Figure 1 is a flowchart illustrating the process by which the system's digital experience-based recommendation tool sends media to a user, receives a response from the user, and uses that response to generate recommendations for other users who are potentially a good match for the user. [Figure 6-1] Figure 1 presents a flowchart illustrating the branching of stories transmitted by the system's digital experience-based recommendation tool. [Figure 6-2] Figure 1 presents a flowchart illustrating the branching of stories transmitted by the system's digital experience-based recommendation tool. [Figure 7] A flowchart illustrating the behavior of the digital experience-based recommendation tool in the system shown in Figure 1, in an embodiment where the user must submit a response within a threshold time, is presented. [Modes for carrying out the invention]

[0012] Embodiments of the present disclosure and their advantages can be understood by referring to Figures 1 to 7 of the drawings, where the same numbering is used for similar and corresponding parts.

[0013] Figure 1 shows an exemplary system 100. As shown in Figure 1, system 100 includes a digital experience-based recommendation tool 105, one or more devices 115, a network 120, and a database 125. Generally, the digital experience-based recommendation tool 105 sends a media file 130 to the device 115, receives a response 170A from the device 115, and generates a recommendation 175 based on the response 170. This disclosure intends that the media file 130 may include any type of media. For example, the media file 130 may include pre-recorded video, live-streamed video, images, text, audio, virtual or augmented reality simulations, or other appropriate forms of media. The media file 130 that the tool 105 sends to a given device 115 depends on the response 170 that the tool 105 receives from the device 115. For example, the digital experience-based recommendation tool 105 can send a first media file 130A to both a first device 115A belonging to a first user 110A and a second device 115B belonging to a second user 110B. The first media file 130A can present two or more options to the first user 110A and the second user 110B. For example, the first media file 130A can ask the users to choose between a first option, such as attending a concert, and a second option, such as attending a house party. Users 110A and 110B each select an option using their devices 115A and 115B, and send these selected options back to the digital experience-based recommendation tool 105 as a response 170. For example, the first user 110A may select the first option (e.g., a concert), and the second user 110B may select the second option (e.g., a house party).In response to receiving a first option from a first user 110A, the digital experience-based recommendation tool 105 can send a second media file 130B to the first device 115A. Conversely, in response to receiving a second option from a second user 110B, the digital experience-based recommendation tool 105 can send a third media file 130C to the second device 115B, the third media file 130C being different from the second media file 130B. For example, if the first option corresponds to attending a concert, the second media file 130B can display a video of attendees entering the concert venue and present the first user 110A with the choice of attending either the first line or the second line. Similarly, if the second option corresponds to attending a house party, the third media file 130C could display a video of the user approaching the front door of a house and present the second user 110B with the choice of ringing the doorbell or opening the door and going straight inside. In this way, the digital experience-based recommendation tool 105 enables users 110A-110C to navigate through a non-linear branching story, and the path a given user 110 takes through the story depends on the responses 170 that user 110 provides to the tool to the options presented by the media file 165.

[0014] The digital experience-based recommendation tool 105 receives a series of responses 170 from each participating user 110A to 110C. At least once during a story, the digital experience-based recommendation tool 105 can compare these sets of responses 170 to determine the potential compatibility between users. For example, the digital experience-based recommendation tool 105 can compare response 170A provided by the first user 110A with response 170B provided by the second user 110B and response 170C provided by the third user 110C, and determine that the second user 110B is more likely to be compatible with the first user 110A than with the third user 110C, and therefore, the potential match is with the first user 110A rather than the third user 110C. In response to determining that the second user 110B could be a potential match with the first user 110A, the digital experience-based recommendation tool 105 may send the profile 135B assigned to the second user 110B to the first user 110A as a recommendation 175.

[0015] This disclosure is intended to enable the digital experience-based recommendation tool 105 to compare sets of responses 170 provided by each user at any point during a story. For example, in a particular embodiment, after user 110A has reached the end of a story, the digital experience-based recommendation tool 105 can compare the set of responses 170 provided by user 110A with sets of responses 170 provided by other users 110.

[0016] This disclosure intends that Recommendation 175 may be obtained solely based on Response 170 provided by Users 110A–110C. Alternatively, this disclosure further intends that Response 170 may be used as a factor in a larger set of factors considered in a larger recommendation algorithm. For example, in a particular embodiment, Users 110A–110C may submit information about themselves and preferred characteristics of other users they are seeking to be matched with using Tool 105. Such information may include gender, preferred gender of potential matches, height, weight, age, location, ethnicity, birthplace, eating habits, activities, and goals. Furthermore, Users 110A–110C may provide Tool 105 with information indicating how important certain factors are when searching for a match. For example, Users 110A–110C may indicate which characteristics are important in a potential match. As another example, Tool 105 may ask User 110 to indicate, "How important is it that your match does not smoke?" Tool 105 may further allow user 110 to indicate that certain features are not important search criteria. For example, user 110A may indicate to tool 105 that weight and / or height are not important for potential matches. In certain embodiments, tool 105 may prompt users 110A-110C to provide information to the tool. For example, tool 105 may ask user 110 to answer several questions or provide several explanations before allowing the user to participate in the recommendation system. Tool 105 may be configured to receive information submitted by users 110A-110C and create profiles 135A-135C for users 110A-110C based on that information. In addition to using the information provided by user 110A to create profile 135A, the digital experience-based recommendation tool 105 may also use responses 170 to add further information to the user's profile.For example, tool 105 may use response 170 to determine that user 110A is more likely to choose the adventurous option when presented with a choice between the adventurous option and the cautious / non-adventurous option. Thus, tool 105 may add the adventurous attribute to the user's profile. This disclosure intends that such an attribute may be binary (i.e., simply indicating that the user has the attribute) or may be associated with a score indicating the degree to which the attribute may exist in the user's personality. For example, user 110A may be quite adventurous, moderately adventurous, or slightly adventurous. This disclosure intends that a digital experience-based recommendation tool may add any number of attributes to the user's profile 135A based on responses 170 provided by user 110A while participating in a digital event.

[0017] In certain embodiments, the digital experience-based recommendation tool 105 may be configured to look up information contained in the profile 135 (including attributes obtained from the response 170) in order to determine the recommendation 175. The method for determining recommendations relevant to a user may include determining how closely one user's preferences match those of another user's characteristics / attributes, and vice versa. In some embodiments, the tool 105 may be configured to generate a pool of recommendations 175 for user 110A according to the various characteristics / attributes and preferences of user 110A and other users of the system. The tool 105 may assign scores to the pool of recommendations for user 110A based on user 110A's preferences and / or activities. The tool 105 may further restrict the inclusion of entities in the recommendation pool based on the profile status, location information about entities, or location information about user 110A. In this way, a particular embodiment of tool 105 can provide user 110A with a recommendation 175 of user 110B based on both the information provided by users 110A and 110B when setting up profiles 135A and 135B, and the shared experience of users 110A and 110B while participating in the digital event.

[0018] Device 115 is used by user 110 to receive and display media files 130 from the digital experience-based recommendation tool 105 and to send responses 170 back to the digital experience-based recommendation tool 105. In certain embodiments, device 115 can communicate with the digital experience-based recommendation tool 105 via a web interface through a network 120.

[0019] Device 115 includes any suitable device for communicating with components of System 100 via Network 120. For example, Device 115 may be, or may be, a telephone, mobile phone, computer, laptop, tablet, server, automation assistant, and / or virtual reality or augmented reality headset or sensor, or other device. This disclosure is intended to show that Device 115 is any suitable device for transmitting and receiving communications via Network 120. Not limited to, but as an example, Device 115 may be a computer, laptop, wireless or cellular telephone, electronic notebook, personal digital assistant, tablet, or any other device capable of receiving, processing, storing, and / or communicating information with other components of System 100. Device 115 may further include a user interface such as a display, microphone, keypad, or other suitable terminal equipment usable by User 110. In some embodiments, applications performed by Device 115 can perform the functions described herein.

[0020] Network 120 facilitates communication among various components of system 100. This disclosure contemplates that network 120 can be any suitable network operable to facilitate communication among components of system 100. Network 120 can include any interconnection system capable of transmitting audio, video, signals, data, messages, or any combination of the foregoing. Network 120 can include all or a portion of any other suitable communication link operable to facilitate communication among components, including, for example, a public switched telephone network (PSTN), a public or private data network, a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a local, regional, or global communication or computer network, such as the Internet, a wired or wireless network, a corporate intranet, or combinations thereof.

[0021] Database 125 stores a set 135 of media 130 and user profiles. Media 130 includes media that includes non-linear branching stories transmitted to user 110 by digital experience-based recommendation tool 105. Each media file 130A - 130N of the set of media 130 corresponds to a different branch of the non-linear branching story. User 110 moves through the story by choosing among various options presented by media files 130A - 130N. This disclosure contemplates that media file 130 can include any type of media. For example, media file 130 can include pre-recorded video, live-streamed video, images, text, audio, virtual or augmented reality simulations, or other suitable forms of media.

[0022] This disclosure is intended that media files 130A-130N can present options to user 110 in any suitable way. For example, in certain embodiments, media files 130A-130N can present options to user 110 by displaying text on the screen of user device 115. In some embodiments, media files 130A-130N can present options to user 110 by playing audio through the speaker system of user device 115. In certain embodiments, media file 130 can present audio and / or video to the user, and then a display presenting options to the user can follow.

[0023] This disclosure is intended to enable user 110 to interact with one or more media files from a set of media 130 in any manner suitable for sending back their selection of a given option to a digital experience-based recommendation tool 105. As an example, user 110 can select one of several options by making a gesture in a specific direction on the screen of their device 115. For example, user 110 can select a first option by making a drag gesture from the right side of the screen to the left side of the screen on their device 115, or user 110 can select a second option by making a drag gesture from the left side of the screen to the right side of the screen on their device 115. As another example, in a particular embodiment, user 110 can select an option by entering a value using the keypad of device 115 or a keypad displayed on the screen of device 115. For example, user 110 can select from four options labeled A, B, C, and D by entering one of A, B, C, or D into the keypad. As a further example, in a particular embodiment, user 110 can select an option by tapping the screen of device 115. For example, user 110 can select the speed at which they virtually move from a first location to a second location by tapping the screen of device 115 a given number of times, with each tap increasing the current speed.

[0024] This disclosure is intended to show that media 130 stored in database 125 can present a nonlinear branching story to user 110 in any suitable format. For example, in certain embodiments, media 130 can provide user 110 with first-person perspective action video. In certain embodiments, media 130 can provide user 110 with an augmented reality experience by accessing the outward-facing camera of device 115 and displaying computer-generated graphics around user 110's real world. In further embodiments, media 130 can accommodate a computer-generated 3D simulation in which user 110 interacts using certain hardware such as a virtual reality headset and / or sensors 115.

[0025] In certain embodiments, the database 125 can store customizable media 130, which the digital experience-based recommendation tool 105 can customize for a given user 110 before sending the media to the user 110. As an example, in certain such embodiments, the digital experience-based recommendation tool 105 can customize media file 130A for user 110A by placing the user's face in media file 130A using the user's profile picture stored in profile 135A assigned to user 110A. For example, media file 130A may be a first-person perspective video including a sequence in which user 110A looks in a mirror. Thus, the digital experience-based recommendation tool 105 can use user 110A's profile picture to generate an image of user 110A to be displayed in a mirror. As another example, in certain such embodiments, the digital experience-based recommendation tool 105 can customize a given media file 130A for user 110A by placing information from the user's profile 135A into the options presented by media file 130A. For example, media file 130A can present user 110A with the option to attend a sporting event at their alma mater or a rival school, based on educational information that user 110A has included in their profile 135A. Similarly, media file 130A can present user 110A with the option to listen to one of several songs, the songs presented being those that user 110A has linked to and / or included in their profile 135A. As another example, in a particular embodiment, a digital experience-based recommendation tool 105 can customize the options presented to user 110A by media file 130 based on personality attributes of user 110A that the tool has previously determined. For example, the digital experience-based recommendation tool 105 can determine that user 110A is extroverted based on a previous response 170A provided by user 110A.Therefore, the digital experience-based recommendation tool 105 can customize the media 130 to include a larger percentage of options associated with extroverted personality types rather than introverted personality types. For example, when investigating a user's introverted / extroverted personality traits, the digital experience-based recommendation tool 105 can present user 110A with primarily extroverted options (e.g., a mixture of 80% extroverted and 20% introverted options) rather than presenting user 110A with an equal number of extroverted and introverted options. This may be desirable to keep user 110A interested in digital events and / or to fine-tune the user's extroversion score. As a further example, in certain embodiments, the digital experience-based recommendation tool 105 can customize the media 130 to present specific options to only a subset of user 110. For example, the digital experience-based recommendation tool 105 can add options to the media 130 associated with an exclusive branch in a non-linear branching story. These exclusive options may also be available to users 110 who have participated in at least a threshold number of previous digital events, and / or users who have paid for access to exclusive media or for the opportunity to view and match with exclusive user profiles.

[0026] In a particular embodiment, the database 125 may store a single first media file 130A so that each of users 110A to 110C participating in a nonlinear branching story receives the same first media file 130A at the beginning of a digital event. In a particular embodiment, the database 125 may store multiple first media files 130A so that each of users 110A to 110C may receive a different first media file 130A at the beginning of a digital event. For example, in a particular embodiment, the first media file 130A received by user 110 may depend on the last media file 130N received by user 110 in a previous story or event in which user 110 participated. This may be desirable to provide continuity between different stories / events, which may help encourage user 110 to participate in future events.

[0027] This disclosure states that for a given story, database 125 contains a series of N binary decisions, and database 125 has 2 N The intention is to store media 130 associated with nonlinear branching stories so as to store fewer than 10 final media files 130. For example, in certain embodiments, the database 125 may store fewer than 10 final media files 130. This may be desirable to help ensure that a large number of users 110 experience the same ending for branching stories, and so that generating recommendations among users 110 can be partially based on the ending experienced by the users 110. For example, in certain embodiments, the digital experience-based recommendation tool 105 may recommend only users who experience the same ending to each other, while in some embodiments, the ending experienced by the users 110 may be a factor considered by the recommendation algorithm of the digital experience-based recommendation tool 105. The nonlinearity of branching stories will be discussed in more detail below in the discussion in Figure 2.

[0028] As described above, the database 125 also stores a set of user profiles 135. The user profiles 135 define or represent the characteristics of user 110. Profiles 135 may be available to the general public, to members of the online dating system, and / or to members of a specific category of the online dating system. Profiles 135 may include information requested by user 110 when setting up their online dating account, or information entered into their profile by such user in other ways. Profiles 135 may include general information such as age, height, gender, and occupation, as well as more detailed information that may include the user's interests, likes / dislikes, personal feelings, and / or worldview.

[0029] In certain embodiments, profile 135 may include information provided by user 110 and information automatically generated by digital experience-based recommendation tool 105 based on responses 170 provided by user 110 to tool 105. For example, in certain embodiments, digital experience-based recommendation tool 105 may group each of the options presented by media file 130 into a set of personality categories, assign a score to each of the options within a personality category, and use responses 170 to assign a score to user 110 in each of the personality categories. Digital experience-based recommendation tool 105 can then display these scores in profile 135. As an example, in certain such embodiments, digital experience-based recommendation tool 105 may group the options presented by media 130 into personality categories including extraversion, adventurousness, risk tolerance, and spontaneity. For example, a response 170 including the option to attend a party rather than stay home may increase the user's extraversion score, and a response 170 including the decision to get a tattoo rather than attend a concert may increase the user's risk tolerance and spontaneity scores. This disclosure is intended to show that multiple decisions made by a user while participating in a digital event may contribute to the same personality category. For example, in addition to the choice of attending a party or staying home, the decision of whether to go backstage to meet the band's lead singer or remain among the general audience at a concert may also influence the user's extraversion score. Furthermore, this disclosure is intended to show that decisions contributing to a given personality category do not necessarily have to occur in the same digital event. For example, during a first digital event, a user may choose to attend a party rather than stay home, thereby increasing their extraversion score. During a second digital event, this user may choose to go backstage to meet the band's lead singer rather than remain among the general audience at a concert, thereby increasing their extraversion score.Determining personality trait scores based on responses 170 and displaying these scores as part of the user's profile 135 may be desirable because determining a user's personality traits based on decisions they make during a digital experience may result in a more accurate representation of their personality than relying on their own input. This is especially true in situations where a user 110 might otherwise provide false or idealized information if asked to fill in their profile information themselves. Furthermore, a user 110 may be more willing to provide profile information by participating in a digital event than by answering questions and / or filling in fields.

[0030] As shown in Figure 1, the digital experience-based recommendation tool 105 includes a processor 140, memory 145, and interface 150. This disclosure intends that the processor 140, memory 145, and interface 150 are configured to perform any of the functions of the digital experience-based recommendation tool 105 described herein. Generally, the digital experience-based recommendation tool 105 implements a response analyzer 155 and a recommendation engine 160.

[0031] The response analyzer 155 receives a response 170A from the user 110, stores the response 170A in memory 145 as a set of responses 170 for each user 110, and uses the response 170A to determine which media file of media 130 should be sent to the user 110. At the start of a digital event, the response analyzer 155 can instruct the interface 150, through the processor 140, to send a first media file 130A to the user 110. In certain embodiments, the first media file 130A is the same for each user 110. In some embodiments, media 130 may contain multiple first media files 130A, thereby allowing the response analyzer 155 to instruct the interface 150 to send a different first media file 130A to each of the users 110A-110C at the start of a digital event. For example, in a particular embodiment, the first media file 130A received by user 110A may depend on the last media file 130N received by user 110A during the previous digital event. Sending the first media file 130A that depends on the last media file 130N received by user 110 during the previous event may be desirable to provide continuity between different digital stories / events, which may help encourage user 110 to participate in future events.

[0032] In certain embodiments, before instructing interface 150 to send a given media file or set of media 130 to user 110, response analyzer 155 can first determine whether the current time is within a specified time interval for a digital event. For example, in certain embodiments, the digital event is a live event of a specified duration, thereby allowing user 110 to participate in the digital event only during that specified time. In some embodiments, user 110 can participate in the digital event on demand, thereby allowing response analyzer 155 to instruct interface 150 to send a given media file of a set of media 130 to user 110 at any time. In some embodiments, user 110 can participate in the digital event on demand, but only for a limited, pre-identified number of times. For example, a recorded version of an originally live-streamed digital event may be offered for a specified time or number of times due to the popularity of the original live-streamed version of the event.

[0033] Each media file in the media set 130 can be configured to present a set of options to the user 110, enabling the user 110 to navigate through a nonlinear branching story containing digital events. Thus, after instructing the interface 150 to send the first media file 130A to user 110A, the response analyzer 155 can receive a response 170A containing one of the options from the set of options presented to user 110A by the first media file 130A, selected by user 110A. In response to receiving response 170A, the response analyzer 155 stores response 170A in the set of responses 170 stored in memory 145 and, based on response 170A, determines which second media file 130B should be sent to user 110A. To determine which second media file 130B should be sent to user 110A, the response analyzer 155 refers to a decision tree stored in memory 145, database 125, or any other suitable location. For a given media file 130A in the set of media 130, the decision tree associates each option in the set of options presented by media file 130A with a further media file in the set of media 130. For example, if media file 130A presents user 110 with options A and B, the decision tree can associate option A with a second media 130B and option B with a third media file 130C. While this example considers a pair of options A and B, the disclosure is intended to show that each media file may present user 110 with any number of options, including options such as “Skip,” “No Choices,” or any other option that user 110 does not like. In response to receiving a response 170A from user 110A, the response analyzer first analyzes response 170A to determine the option chosen by user 110A, and then uses the decision tree to determine the media file 130B associated with this option.Next, the response analyzer 155 instructs the processor 140 to tell the interface 150 to send media file 130B to user 110A. This process is repeated until the response analyzer 155 instructs the processor 140 to tell the interface 150 to send the final media file 130N, associated with the end of the digital event, to user 110A. An exemplary decision tree is presented below in the discussion in Figure 2, along with a detailed discussion of the response analyzer 155's use of decision trees.

[0034] In a particular embodiment, the response analyzer 155 can receive a response 170A from user 110 only if the response 170A is sent to interface 150 within a threshold time. For example, in a particular embodiment, user 110 may have only a set time interval to select an option from the set of options presented to him by media file 130. For example, in a particular such embodiment, user 110 may have 7 seconds to select an option from the set of options presented to him by media file 130. In a particular embodiment, if user 110A does not select an option from the set of options presented to him by media file 130 within the threshold time, the response analyzer 155 may select one of these options and instruct interface 150 to send the media file 130 associated with the selected option to user 110A via processor 140. In some embodiments, the set of options includes “Skip,” “No Choice,” or any other “No Preference” option, and when the user selects “Skip,” “No Choice,” or any other option indicating that the user does not like it, the response analyzer 155 may also select an option from the set of possible options other than “Skip,” “No Choice,” or any other “No Preference” option. In certain embodiments, the response analyzer 155 may store the selected option in memory 145 with a weight of zero, indicating to the recommendation engine 160 that this selected option should not be considered when matching user 110A with other users 110. The disclosure is intended to show that the response analyzer 155 may select one of the options in any appropriate manner.For example, in a particular embodiment, the response analyzer 155 may be configured to: 1) randomly select one of the options from a set of possible options; 2) select a predetermined option; 3) select a first option from a set of possible options; 4) select the most popular option from a set of possible options determined from responses 170 provided by other users; 5) select an option from a set of possible options based on user decisions or supplied personality traits, for example, selecting an adventurous option from a set of possible options for user 110A based on a decision from a previous response 170 supplied by user 110A that user 110A is adventurous; or selecting an extroverted option from a set of possible options for user 110A based on information supplied by user 110A to generate their own profile 135A (other than responses 170) indicating that user 110A is extroverted; or 6) select from among the available options using any other factor. Encouraging user 110A to select an option within a short time interval may be desirable to encourage the user to act on instinct rather than overthink various options, potentially increasing the likelihood that the user's choices accurately reflect their personality traits.

[0035] In certain embodiments, the response analyzer 155 can determine which media file 130 should be sent to user 110A based not only on the response 170A received from user 110A, but also on the responses 170B-170C received from other users 110B-110C. For example, in certain embodiments, the digital event may be a live streaming event that presents users with a set of options from which they can vote for their favorites. As an example, the digital event may be a live singing contest in which user 110 can vote for their favorite contestant. In such embodiments, the response analyzer 155 can determine the most popular choice from the responses 170 and, based on the most popular choice, determine a single media file 130 that should be sent to all participating users 110. For example, the first media file 130A may consist of the first round of a singing contest in which user 110 is asked to choose their favorite from three contestants. Even if user 110A selects the second contestant as their favorite, user 110A may still receive the second media file 130B consisting of the second round of the singing contest in which the second contestant was removed based on the fact that the second contestant received the fewest votes, as determined from response 170. Nevertheless, user 110A's choices can be used by digital experience-based recommendations to generate recommendations for users who are potentially a good match for user 110A, although this does not affect the media file 130 that user 110A receives. For example, user 110A may receive recommendations 175 from other users who have similarly selected the second contestant as their favorite.

[0036] The response analyzer 155 may also be a software module stored in memory 145 and executed by processor 140. An exemplary algorithm of the response analyzer 155 is as follows: Set the current media file to the first media file 130A. While the current media file is not the final media file 130N, {instruct interface 150 to send the current media file to user 110A; receive response 170A from user 110A through interface 150 containing a choice from the set of choices presented by the current media file; save the choice to the set of responses 170 stored in memory 145; determine the position of the choice in the decision tree; determine the media file 130B assigned to the choice; set the current media file to media file 130B}. Instruct interface 150 to send the final media file 130N to user 110A.

[0037] As described above, the digital experience-based recommendation tool 105 further includes a recommendation engine 160. The recommendation engine 160 generates recommendations 175 among users 110 participating in a digital event. For a given user 110A, the recommendation 175 may include users 110 that the recommendation engine 160 has determined to be potentially compatible with user 110A. This disclosure is intended to show that the recommendation engine 160 may determine compatibility between users 110 based at least in part on the choices made by the users 110 (and stored in a set of responses 170 in the response analyzer 155) as the users 110 move through a nonlinear branching story presented during the digital event. For example, in a particular embodiment, the recommendation engine 160 may determine that the first user 110A is compatible with the second user 110B based on the fact that both the first user 110A and the second user 110B chose the choices that led them to the same final media file 130N during the digital event. In this embodiment, the recommendation engine 160 can present all users who have received the same final media file 130N as the first user 110A as recommendations 175 to user 110A.

[0038] In certain embodiments, for each target user 110A to 110C, the recommendation engine 160 can determine a ranked list of other users 110 who are potentially a good match for the target user, in which the recommendation engine 160 presents users 110 according to the number of choices they made that were the same as choices made by target user 110A during the event. For example, the recommendation engine 160 can determine a ranked list for first user 110A, including second user 110B who is ranked higher than third user 110C, based on the fact that second user 110B chose three choices that were the same as choices made by first user 110A, while third user 110C chose only one choice that was the same as choices made by first user 110A. In certain such embodiments, the digital experience-based recommendation tool 105 can assign weights to each set of options presented to user 110 such that certain choices are weighted more heavily than others. For example, a second user 110B might have selected three options that were the same as those selected by the first user 110A, such as (1) opening the left door rather than the right door, (2) playing darts rather than a pool game, and (3) traveling east rather than west. When these options may not significantly demonstrate the user's personality traits, the digital experience-based recommendation tool 105 can assign them a smaller weight than the other options. On the other hand, a third user 110C might have selected one option that was the same as those selected by the first user 110A, such as deciding to go skydiving rather than watch a movie. When this decision may significantly demonstrate the user's adventurousness, the digital experience-based recommendation tool 105 can assign it a larger weight.Therefore, despite the fact that the third user 110C and the first user 110A had only one decision in common, while the second user 110B and the first user 110A had three decisions in common, the recommendation engine 160 can rank the third user 110C as potentially more compatible than the second user 110B, based on the fact that a greater weight is assigned to the one decision common between the first user 110A and the third user 110C.

[0039] In certain embodiments, rather than determining the number of choices a given user 110A has in common with other users 110B and 110C, the recommendation engine 155 may assign each user 110 a set of scores based on the decisions the user makes during the digital event. The recommendation engine 155 can then recommend users to each other based on the similarity of their scores. The set of scores may include scores covering a range of different personality categories. For example, the set of scores may include an extraversion score, an adventurousness score, a risk tolerance score, and a spontaneity score. In such embodiments, the recommendation engine 160 may group each set of options presented by the media file 130 into one or more personality categories and assign a score to each option within a given category. For example, a set of options including the choice between staying home or attending a party may be assigned to the extraversion category, with a score of -50 for the decision to stay home and a score of +50 for the decision to attend a party. This disclosure is intended to show that multiple decisions made by a user while participating in a digital event may contribute to the same personality category. For example, in addition to the choice of attending a party or staying home, the decision of whether to go backstage to meet the band's lead singer or remain among the general audience at a concert may also influence the user's extraversion score. Here, the decision to go backstage may be assigned a score of +20, while the decision to remain among the general audience may be assigned a score of -10. Furthermore, this disclosure intends that decisions contributing to a given personality category do not need to occur in the same digital event. For example, during a first digital event, a user may choose to attend a party rather than stay home, thereby increasing their extraversion score. Furthermore, during a second digital event, this user may choose to go backstage to meet the band's lead singer rather than remain among the general audience at a concert, thereby further increasing their extraversion score.

[0040] The recommendation engine 160 can determine a set of scores for user 110A by determining the score to be assigned to each of the options selected by user 110A and summing the scores within each personality category. For example, the recommendation engine 160 can determine the following set of scores for users 110A to 110C, where a positive score indicates the presence of a given personality trait and a negative score indicates the presence of the opposite personality trait. [Table 1] These scores indicate that users 110A and 110C are more likely to be extroverted, quite adventurous, and risk-tolerant, in contrast to the second user 110B, who is more likely to be introverted, timid, and risk-averse. Therefore, based on a direct comparison of these score sets, the recommendation engine 160 can determine that the third user 110C is more likely to be a better match for the first user 110A than for the second user 110B. In certain embodiments, rather than directly comparing personality trait scores across users 110A-110C, the recommendation engine 160 can utilize a machine learning algorithm trained to generate a ranked list of compatible users 110 based on attributes that may include the users' personality trait scores.

[0041] This disclosure is intended to show that the recommendation engine 160 may consider any number of factors in addition to the responses 170 received from the users 110 in order to determine matches 175 between users 110 and rank these matches. As an example, in an embodiment in which the recommendation engine 160 utilizes a machine learning algorithm trained to generate a ranked list of compatible users 110 based on attributes including the user's personality trait score, the machine learning algorithm may operate on further attributes obtained from the profile 135 in a manner similar to, for example, the system described in U.S. Patent No. 9,733,811, and the entire disclosure is incorporated herein by reference, except for definitions, disclaimers, denials, and inconsistencies. In such an embodiment, the personality trait score determined by the tool 105 may be placed in the user's profile 135, so that a machine learning algorithm configured to extract attributes obtained from the profile 135 and operate on those attributes can easily incorporate further attributes associated with the personality trait score placed in the profile 135. As another example, in a particular embodiment, the recommendation engine 160 may determine recommendations based on the information contained in profile 135, and then rank these recommendations (and / or select a subset of these recommendations) based on the similarity of choices made by the user during a digital event. As another example, in a particular embodiment, the recommendation engine 160 may consider the user 110's age, gender, and location when determining recommendations 175. For example, the recommendation engine 160 may provide user 110A with recommendations 175 corresponding to users 110 that fall within the age, gender, and / or location range specified by user 110A. As another example, in a particular embodiment, where the recommendations 175 generated for user 110A consist of a ranked list of potentially compatible users, the recommendation engine 160 may prioritize user 110B who has previously viewed profile 135A belonging to user 135A by increasing user 110B's ranking within user 110A's ranked list.This may be desirable because previous profile views may indicate that user 110B is interested in user 110A and therefore could potentially be matched with user 110A when presented with recommendations for user 110A. As a further example, in a particular embodiment where the recommendations 175 generated for user 110A consist of a ranked list of potentially compatible users, the recommendation engine 160 may prioritize user 110B within the ranked list based on the number of previous digital events that user 110B has participated in. For example, the recommendation engine 160 may rank user 110B higher if they have participated in their first digital event. This may be desirable to help ensure that a user 110 who frequently participates in digital events has the opportunity to be matched with new users rather than continuously receiving recommendations from the same set of users.

[0042] In certain embodiments, the recommendations 175 generated by the recommendation engine 160 for user 110A may be available to user 110A throughout the duration of the digital event, but may be unavailable after the digital event has ended. For example, in certain embodiments, the digital event may continue until midnight, after which user 110A may no longer be matched with other users who shared the same digital experience as user 110A during the event. This may be desirable to help ensure that users 110 who have been offered recommendations to user 110A are active on the system at or before / after the recommendation time, and to facilitate communication between such users and user 110A. Furthermore, in some embodiments, the number of recommendations presented to user 110A may continue to increase over the duration of the digital event. For example, the digital event may continue from 6 p.m. to 12 p.m. on a specified date. User 110A may complete the digital event at 7 p.m. and receive recommendations 175 consisting of other users 110 who similarly completed the digital event at or before 7 p.m. As night progresses, user 110A can receive additional recommendations 175 as more users 110 complete the digital event by the end of the digital event at 12 p.m. For example, at the time user 110A completes the digital event, the response 175 may contain only 20 recommendations of potentially compatible users, but by the end of the digital event, the response 175 may contain 300 recommendations of potentially compatible users. In certain embodiments, the recommendations 175 generated for user 110A by the recommendation engine 160 may remain available to user 110A even after the digital event has ended.

[0043] In certain embodiments, the recommendations 175 generated by the recommendation engine 160 may include a user profile 135. In some embodiments, the recommendations 175 may include parts of the user profile 135 such as a profile picture, a pure text representation of the user profile, or an image, i.e., a graphical representation of the user profile. In further embodiments, the recommendations 175 may include an avatar generated by user 110 rather than a photograph in the user profile 135. In such embodiments, user 110A may only be able to see the user's photograph in user profile 135B (rather than an avatar) if both user 110A and user 110B choose to match with each other. The use of an avatar may be desirable for user 110A who wish to maintain anonymity. Furthermore, the use of an avatar may be desirable because it may help encourage user 110 to select matches 175 based on personality traits rather than personal appearance, potentially leading to more meaningful matches. In some embodiments, user 110 may choose specific customizations for their profile and / or avatar. For example, user 110 can select a specific skin, badge, avatar, accessory, or any other customization shown within the digital experience. In some embodiments, user 110 can offer payment for these customizations.

[0044] In certain embodiments, recommendations 175 generated by the recommendation engine 160 for user 110A may only be available to user 110A after user 110A has completed a nonlinear branching story presented during a digital event. In some embodiments, certain recommendations 175 may be presented to user 110A through a nonlinear branching story. For example, in certain embodiments, a particular branch of a nonlinear branching story may provide participation by multiple users, thereby allowing user 110 who has traveled along the same path as user 110A within the nonlinear branching story to be presented to user 110A. For example, after choosing to open a door, media file 130 may inform user 110A that he is now in a room with users 110B and 110C and must work with users 110B and 110C to decide how to leave the room. In such embodiments, the digital experience-based recommendation tool 105 may enable voice and / or text communication between users 110A-110C while they interact with each other within the story.

[0045] As another example, in a particular embodiment, the digital experience-based recommendation tool 105 can select pairs and / or groups of users 110A and 110B who should participate together in a non-linear branching story. For example, the digital experience-based recommendation tool 105 can select pairs of users 110A and 110B who the tool has previously determined to be potentially compatible with each other to participate together in a story. The digital experience-based recommendation tool 105 may determine that users 110A and 110B are potentially compatible based on the shared choices they made during a previous digital event, or based on personality attributes generated from profiles 135A and 135B belonging to users 110A and 110B. By encouraging users 110A and 110B to participate in a digital event together, the digital experience-based recommendation tool 105 can enable users 110A and 110B to assess their compatibility with each other even before they meet in person. This is desirable because sharing digital experiences with each other can provide users in pairs with more meaningful compatibility information than information that can be obtained through messages exchanged between the two users.

[0046] In an embodiment in which the digital experience-based recommendation tool 105 introduces user 110B to user 110A at either the beginning of a digital event or at some point during the digital event, the recommendation engine 160 may present recommendations for the other user to each of users 110A and 110B at the end of the event (or at some point during the event), thereby allowing these users to choose to match with each other. If both user 110A and user 110B choose to match with each other, the recommendation engine 160 may enable users 110A and 110B to interact with each other outside of the digital event. However, if either user 110A or user 110B chooses not to match with the other user, the recommendation engine 160 may discard profile 135A from user 110B's recommendation 175 and discard profile 135B from user 110A's recommendation 175.

[0047] In certain embodiments, in addition to the digital experience-based recommendation tool 105 selecting users 110 who should participate in a digital event together, groups of two or more users 110 may choose to participate in a digital event together. For example, a pair of users 110A and 110B, recommended to each other based on information contained in their profiles 135, may choose to participate in a digital event to gain insight into their compatibility with each other. As another example, in certain embodiments, groups of users 110A-110C who know each other may choose to participate in a digital event together. This disclosure is intended to include digital events in which groups of users may participate together, such as games composed of competing teams where each group of users is assigned to a team, and games in which users can participate cooperatively. In certain embodiments comprising groups of users participating in a digital event together, recommendations 175 generated by the recommendation engine 160 may consist of other groups of users who made similar choices to the group of users 110A-110C during the event. Generating recommendations for groups rather than individuals can be desirable because, assuming that groups of friends often consist of individuals who get along well with each other, it may potentially provide a larger number of individuals to match. Furthermore, allowing groups of friends to participate in each other's events could increase user enjoyment of the event and encourage participation in further digital events in the future.

[0048] In certain embodiments, in addition to generating recommendations among users 110, the recommendation engine 160 may generate profile information for each user 110 using a set of responses 170 stored in memory 145. For example, in an embodiment where the recommendation engine 160 determines a personality trait score for each user 110 based on the responses 170, the recommendation engine 160 may store and / or display these personality trait scores in a profile 135 assigned to the user 110. This may be desirable because determining a user's personality traits based on decisions the user makes during a digital experience may result in a more accurate representation of the user's personality than relying on the user's own input. Furthermore, a user 110 may be more willing to provide profile information by participating in digital events than by answering questions and / or filling in fields.

[0049] The recommendation engine 160 may be a software module stored in memory 145 and executed by processor 140. An exemplary algorithm of the recommendation engine 160 used to determine a recommendation 175 for a first user 110A is as follows: Set the recommendation variable to equal to 0. Set the recommendation counter to equal to 0. For each user 110i != user 110A, {compare the response 170i received from user 110i with the response 170A received from user 110A; determine the number of responses 110i that are the same as response 110A; if the number of responses 110i that are the same as response 110A is greater than the recommendation counter value, {set the recommendation counter value to equal to the number of responses 110i that are the same as response 110A; set the recommendation variable to equal to user 110i}}. Store the users stored in the recommendation variable as recommendation 175. The above algorithm can be repeated for the remaining users to determine further recommendations 175 for user 110A.

[0050] The processor 140 may be any electronic circuit, but is not limited to, a microprocessor, application-specific integrated circuit (ASIC), application-specific instruction set processor (ASIP), and / or state machine, which is communicatively coupled to the memory 145 and interface 150 and controls the operation of the digital experience-based recommendation tool 105. The processor 140 may be 8-bit, 16-bit, 32-bit, 64-bit, or any other suitable architecture. The processor 140 may include an arithmetic logic unit (ALU) that performs arithmetic and logical operations, processor registers that supply operands to the ALU and store the results of ALU operations, and a control unit that retrieves instructions from memory and executes them by directing the coordinated operation of the ALU, registers, and other components. The processor 140 may include other hardware and software that operate to control and process information. The processor 140 executes software stored in memory to perform any of the functions described herein. The processor 140 controls the operation and management of the digital experience-based recommendation tool 105 by processing information received from the network 120, device 115, interface 150, and memory 145. The processor 140 may be a programmable logic device, a microcontroller, a microprocessor, any suitable processing device, or any suitable combination of the foregoing. The processor 140 is not limited to a single processing device and may include multiple processing devices.

[0051] Memory 145 can permanently or temporarily store data, operating software, or other information for the processor 140. Memory 145 may include one or a combination of volatile or non-volatile local or remote devices suitable for storing information. For example, memory 145 may include random access memory (RAM), read-only memory (ROM), magnetic storage devices, optical storage devices, or any other suitable information storage device, or a combination thereof. Software represents any suitable set of instructions, logic, or code embodied in a computer-readable storage medium. For example, software may be embodied in memory 145, a disk, a CD, or a flash drive. In certain embodiments, software may include applications that can be executed by the processor 140 to perform one or more of the functions described herein.

[0052] Interface 150 represents any suitable device capable of operating to receive information from network 120, transmit information through network 120, perform appropriate processing of information, communicate with other devices, or perform any combination of the foregoing. For example, interface 150 sends media files from a set of media files 130 to device 115. In another example, interface 150 receives a response 170 from device 115. Interface 150 represents any real or virtual port or connection, including any suitable hardware and / or software, including protocol conversion and data processing capabilities, for communication through a LAN, WAN, or other communication system, enabling the digital experience-based recommendation tool 105 to exchange information with device 115 and / or other components of system 100 via network 120.

[0053] In certain embodiments, interface 150 can customize media 130 before sending it to user 110. For example, in certain embodiments, interface 150 can customize media file 130A by adding user 110A's face to media file 130A using user 110A's profile picture. For example, media file 130A may be a first-person perspective video including a sequence of user 110A looking in a mirror. Interface 150 can customize media file 130A by generating an image of user 110A to be displayed in the mirror using user 110A's profile picture stored in profile 135A assigned to user 110A. As another example, in certain such embodiments, interface 150 can customize media file 130A for user 110A by arranging information from user profile 135A into options presented by media file 130A. For example, media file 130A can present user 110A with the option to attend a sporting event at their alma mater or a rival school, based on educational information that user 110A has included in their profile 135A. Similarly, media file 130A can present user 110A with the option to listen to one of several songs, the song being presented being one that user 110A has linked to their profile 135A. As another example, in a particular embodiment, interface 150 can customize the options presented to user 110A by media 130 based on user 110A's personality attributes previously evaluated by a digital experience-based recommendation tool 105. For example, the digital experience-based recommendation tool 105 may determine that user 110A is extroverted based on a previous response 170A provided by user 110A. Thus, interface 150 can customize media 130 to include a larger percentage of options associated with extroverted personality types rather than introverted personality types.For example, when investigating a user's introversion / extroversion, rather than presenting user 110A with an equal number of extroverted and introverted options, interface 150 may present user 110A with primarily extroverted options (e.g., a mixture of 80% extroverted and 20% introverted options). This may be desirable to keep user 110A interested in digital events and to fine-tune the user's extroversion score. As a further example, in certain embodiments, interface 150 may customize media 130 to present specific options to only a subset of user 110. For example, interface 150 may add options to media 130 associated with exclusive branches in a non-linear branching story. These exclusive options may also be available to users 110 who have participated in at least a threshold number of previous digital events, and / or users who have paid for access to exclusive media or for the opportunity to view and match with exclusive user profiles. For example, users 110A and 110B may be offered the option to attend an exclusive concert by making a payment, while user 110C may not be offered this option and / or may only be offered it as an option through payment. In this example, users 110A and 110B are given access to exclusive matches with each other and with other users who pay to attend a virtual exclusive concert, while user 110C is not given such access.

[0054] In certain embodiments, user 110 may pay for other exclusive options to enhance their digital experience and add temporary benefits or additional capabilities. For example, user 110 may receive the ability to enhance one or more of their decisions to make them more prominent on their profile (e.g., highlighting that user 110A chose skydiving over staying home at a digital event) and / or to see other users who have made the same decisions. As another example, user 110 may revise previous decisions by replaying or undoing them in order to select different options. In certain embodiments, user 100 may offer a digital gift that can be presented to another user during, during, or at the end of a digital event. For example, user 110A may choose the option to purchase a virtual rose during a digital event and choose to present that rose to user 110B at the end. This may be desirable as a way for user 110 to interact in different ways and to increase the likelihood of a match from the digital event (e.g., user 110A can let user 110B know of their affection). As a further example, in an experience where user 110 faces an obstacle or puzzle (e.g., an escape game), user 110 may pay for a shortcut or clue to help solve the problem.

[0055] In a particular embodiment, the digital experience-based recommendation tool 105 provides enhanced recommendations to users 110 participating in a digital event by recommending them to each other based on their shared digital experiences during the event. Users participating in the event navigate through a non-linear branching story transmitted to their device 115 via media 130 by the tool, by selecting from various options presented by the media. Some of these options may be designed to explore various aspects of a user's personality, thereby suggesting that users who select the same options may have similar personalities and therefore be compatible in a dating context. Thus, at the end of the event, the tool generates recommendations for the users, at least in part, based on the options the users have chosen throughout the event. In this way, a particular embodiment of the tool enables geographically distant compatible users to connect with each other.

[0056] Without departing from the scope of the present invention, the systems described herein may be modified, added to, or omitted. For example, system 100 may include any number of users 110, devices 115, a network 120, and a database 125. The components may be integrated or separated. Rather than sequentially sending media files 130 to users, the digital experience-based recommendation tool 105 may send some or all of the media files 130A-130N to the user at the beginning of an event or before an event, so that the actions necessary to create the digital event may be completed by the user's device 115. Furthermore, the actions may be performed by more, fewer, or other components. Furthermore, the actions may be performed using any appropriate logic, including software, hardware, and / or other logic. As used in this document, “each” refers to each member of a set or each member of a subset of a set.

[0057] Figure 2 shows an example of a nonlinear branching story presented to user 110 by a digital experience-based recommendation tool 105. This disclosure intends that the story presented to user 110 may consist of any type of media. For example, the media may include pre-recorded video, live-streamed video, images, text, audio, virtual or augmented reality simulations, or other appropriate forms of media. Figure 2 shows an exemplary story from one embodiment of the digital experience-based recommendation tool 105, in which each user 110 is presented with the same media file 130A at the beginning of the story. However, this disclosure also intends that different users 110 may each receive a different first media file 130A at the beginning of a digital event. For example, in a particular embodiment, the first media file 130A received by user 110A may depend on the last media file 130N received by user 110A in a previous digital event. This may be desirable to provide continuity between different stories, which may help encourage user 110 to participate in future digital events. Furthermore, while Figure 2 shows one embodiment of a digital experience-based recommendation tool 105 in which each media file 130A-130K provides a choice between two options, the disclosure intends that media file 130 may provide user 110 with a choice of any number of different options. In addition, these options may include options such as “Skip,” “No Choices,” or any other option indicating that user 110 does not like any of the presented options.

[0058] As shown in Figure 2, the first media file 130A provides user 110 with a choice between the first option 205A and the second option 205B. The first option 205A is associated with the second media file 130B, and the second option 205B is associated with the third media file 130C. Thus, if user 110 selects the first option 205A, the digital experience-based recommendation tool 105 sends the second media file 130B to the user, and if user 110 selects the second option 205B, the digital experience-based recommendation tool 105 sends the third media file 130C to the user. The second media file 130B and the third media file 130C are each configured to present their own options, which are shown in Figure 2 as the third option 205C and the fourth option 205D for the second media file 130B, and as the fifth option 205E and the sixth option 205F for the third media file 130C.

[0059] This disclosure intends that the branching stories presented by the digital experience-based recommendation tool 105 are nonlinear branching stories. Figure 2 shows two examples of such nonlinearity. Firstly, selecting an option presented by different media files 130, as shown by the fifth media file 130E—here, the fourth option 205D and the fifth option 205E—both allows the digital experience-based recommendation tool 105 to send the same media file 130E to the user 110 making these selections. Therefore, even if the first user 110A and the second user 110B could have selected different options presented by the first media file 130A—for example, if the first user 110A could have selected the first option 205A and the second user 110B could have selected the second option 205B—they may nevertheless be presented with the same ending media file—the eighth media file 130H or the ninth media file 130I—if the first user 110A selects the fourth option 205D in response to the second media file 130B and the second user 110B selects the fifth option 205E in response to the third media file 130C.

[0060] The fourth media file 130D presents another example of nonlinearity in the branching story shown in Figure 2. The fourth media file 130D presents two options (the seventh option 205G and the eighth option 205H), both of which lead to the same media file - the seventh media file 130G. For example, the seventh option 205G and the eighth option 205H could correspond to the choice of opening the right door or the left door. Since neither option can particularly demonstrate the user's personality traits, both options may simply lead to the same result.

[0061] Due to the nonlinearity of the branching story, this disclosure is limited to two stories. NIt is intended to contain fewer than 1 final media files, where N corresponds to the number of decisions that user 110 is asked to make while moving through the story. As seen in Figure 2, instead of containing 8 final media files, the story presented in Figure 2 contains only 5—the 7th media file 130G, the 8th media file 130H, the 9th media file 130I, the 10th media file 130J, and the 11th media file 130K. This helps ensure that a large number of users 110 experience the same ending for branching stories, which may be desirable as recommendations 175 among users 110 can be generated partially based on the ending that user 110 experiences.

[0062] Figure 3 shows the recommendation engine 160 of the digital experience-based recommendation tool 105. As seen in Figure 3, in a particular embodiment, the recommendation engine 160 determines recommendations 175A to 175N for users 130A to 130N based on responses 170A to 170N submitted by the users and profiles 135A to 135N belonging to the users. However, the disclosure further intends that in a particular embodiment, recommendations 175A to 175N may be determined solely from responses 170A to 170N, and in some embodiments, recommendations 175A to 175N may be determined from responses 170A to 170N in addition to any number of different factors, including but not limited to profiles 135A to 135N.

[0063] For a given user 110A, recommendation 175A may include users 110B to 110N that the recommendation engine 160 has determined to be potentially compatible with user 110A. This disclosure intends for the recommendation engine 160 to determine compatibility between users 110 based at least in part on the choices made by user 110 as user 110 moves through a nonlinear branching story presented during a digital event (indicated as responses 170A to 170N). For example, in a particular embodiment, the recommendation engine 160 determines that first user 110A is potentially compatible with second user 110B based on the fact that both first user 110A and second user 110B chose the choices that led them to the same final media file 130N during a digital event.

[0064] In a particular embodiment, for each target user 110A to 110N, the recommendation engine 160 determines a ranked list of other users 110 that are potentially a good match for the target user, in which the recommendation engine 160 ranks these users 110 in each list, in part according to the number of choices chosen by the user 110 that were the same as the choices chosen by the target user 110A during the event. For example, the recommendation engine 160 may determine a ranked list for the first user 110A that includes the second user 110B, who is ranked higher than the third user 110C, based on the fact that the second user 110B chose three choices that were the same as the choices chosen by the first user 110A, while the third user 110C chose only one choice that was the same as the choices chosen by the first user 110A. In certain such embodiments, the digital experience-based recommendation tool 105 may assign a weight of 305 to each set of options presented to user 110, thereby weighting certain choices more heavily than others. For example, a second user 110B might have selected three choices that were the same as those selected by the first user 110A, such choices including (1) opening the left door rather than the right door, (2) playing darts rather than a pool game, and (3) traveling east rather than west. When these choices may not be particularly indicative of the user's personality traits, the digital experience-based recommendation tool 105 may assign them a smaller weight of 350. On the other hand, a third user 110C might have selected one choice that was the same as those selected by the first user 110A, in which case the choice would consist of a decision to go skydiving rather than watch a movie. When this decision is likely to demonstrate a user's adventurous spirit, the digital experience-based recommendation tool 105 can assign it a significant weight of 305.Therefore, despite the fact that the third user 110C and the first user 110A had only one decision in common, while the second user 110B and the first user 110A had three decisions in common, the recommendation engine 160 can rank the third user 110C as potentially more compatible than the second user 110B, based on the fact that a greater weight is assigned to the one decision common between the first user 110A and the third user 110C.

[0065] In certain embodiments, the recommendation engine 155 can assign each user 110A-110N a set of scores based on decisions the user makes during a digital event, and generate recommendations between users based on the similarity of the scores. The set of scores may include scores covering a range of different personality categories. For example, the set of scores may include an extraversion score, an adventurous score, a risk tolerance score, and a spontaneity score. In such embodiments, the recommendation engine 160 can group each set of options presented by media files 130A-130N into one or more personality categories and assign a score to each option within a given category. For example, a set of options including the choice between staying home or attending a party may be assigned to the extraversion category, with a score of -50 assigned to the decision to stay home and a score of +50 assigned to the decision to attend a party. This disclosure is intended to show that multiple decisions made by a user while participating in a digital event may contribute to the same personality category. For example, in addition to the choice of attending a party or staying home, the decision of whether to go backstage to meet the band's lead singer or remain among the general audience at a concert may also influence the user's extraversion score. Here, the decision to go backstage may be assigned a score of +20, while the decision to remain among the general audience may be assigned a score of -10. Furthermore, this disclosure intends that decisions contributing to a given personality category do not need to occur in the same digital event. For example, during a first digital event, a user may choose to attend a party rather than stay home, thereby increasing their extraversion score. Furthermore, during a second digital event, this user may choose to go backstage to meet the band's lead singer rather than remain among the general audience at a concert, thereby further increasing their extraversion score.

[0066] The recommendation engine 160 can determine a set of scores for user 110A by determining the score to be assigned to each of the options selected by user 110A and summing the scores assigned to each personality category. For example, the recommendation engine 160 can determine the following set of scores for users 110A to 110C, where a positive score indicates the presence of a given personality trait and a negative score indicates the presence of the opposite personality trait. [Table 2] These scores indicate that users 110A and 110C are more likely to be extroverted, quite adventurous, and risk-tolerant, in contrast to a second user 110B, who is more likely to be introverted, timid, and risk-averse. Therefore, based on a direct comparison of these score sets, the recommendation engine 160 can determine that a third user 110C is more likely to be a better match for the first user 110A than for the second user 110B. In certain embodiments, rather than directly comparing personality trait scores across users 110A-110N, the recommendation engine 160 can utilize a machine learning algorithm trained to generate a ranked list of compatible users 110 based on attributes including the user's personality trait scores.

[0067] This disclosure is intended to show that the recommendation engine 160 may consider any number of factors in addition to the responses 170 received from users 110 in order to determine the ranking between recommendations 175A-175N and users 110A-110N. As an example, in an embodiment in which the recommendation engine 160 utilizes a machine learning algorithm trained to generate a ranked list of compatible users 110 based on attributes including the user's personality trait score, the machine learning algorithm may operate on further attributes obtained from profiles 135A-135N. In such an embodiment, the personality trait scores determined by tool 105 may be placed in the user's profile 135, so that a machine learning algorithm configured to extract attributes obtained from profile 135 and operate on those attributes can easily incorporate further attributes associated with the personality trait scores placed in profile 135. As another example, in a particular embodiment, the recommendation engine 160 may determine recommendations based on the information contained in profiles 135A-135N, and then rank these recommendations or select a subset of these recommendations based on the similarity of the choices 170A-170N selected by the user during a digital event. As another example, in a particular embodiment, the recommendation engine 160 may consider the user 110's age, gender, and location when determining recommendations 175A-175N. For example, the recommendation engine 160 may provide user 110A with recommendations 175 corresponding to users 110B-110N that fall within the age, gender, and / or location range specified by user 110A. As another example, in a particular embodiment, where the recommendations 175A generated for user 110A consist of a ranked list of potentially compatible users, the recommendation engine 160 may prioritize user 110B who has previously viewed profile 135A belonging to user 135A by increasing user 110B's ranking.This may be desirable because previous profile views may indicate that user 110B is interested in user 110A and therefore may be a good match for user 110A when presented with recommendations for user 110A. As a further example, in a particular embodiment where the recommendations 175A generated for user 110A consist of a ranked list of compatible users, the recommendation engine 160 may prioritize user 110B based on the number of previous digital events that user 110B has participated in. For example, the recommendation engine 160 may rank user 110B higher if user 110B has participated in its first digital event. This may be desirable to help ensure that a user 110 who frequently participates in digital events has the opportunity to be matched with new users rather than continuously receiving recommendations from the same set of users.

[0068] Figure 4 shows exemplary stills of a media file 130 that is sent to a user device 115 by a digital experience-based recommendation tool 105 and displayed on the screen of the device 115, in a particular embodiment in which the user 110 has a threshold time to select a response 170 from options presented by the media file 130. The first still 405A corresponds to a media file 130 consisting of a video displayed at time t, and the second still 405B corresponds to a media file 130 consisting of a video displayed at time t+Δt, where Δt is less than the threshold time. Although Figure 4 shows media 130 in video format, this disclosure intends that the story presented during a digital event may consist of any type of media. For example, the media may include pre-recorded video, live-streamed video, images, text, audio, virtual or augmented reality simulations, or other suitable forms of media.

[0069] In this example, media file 130 indicates that user 110 has plugged their phone into a surround sound system and presents user 110 with a choice between a pair of songs to play on the sound system: a first choice 425 consisting of song A and a second choice 415 consisting of song B. As described above, in certain embodiments, media file 130 may be customizable so that songs A and B are selected from a profile 135 belonging to user 110. This may be desirable to maintain the user's interest in the digital event. In certain embodiments where the digital experience-based recommendation tool 105 does not have access to any information about user 110's musical preferences, songs A and B may be selected from different musical genres to gain insight into the user's musical preferences.

[0070] Figure 4 shows a media file 130 that presents a user with a pair of options, but this disclosure intends that the media file 130 may present the user 110 with any number of different options. Furthermore, these options may include options such as “Skip,” “No Options,” or any other options that the user may select to indicate that they do not like any of the presented options.

[0071] As shown on the screen of device 115 in Figure 4, user 110 can select a first option 425 (song A) by making a left-to-right gesture on the screen of device 115, or select a second option 415 (song B) by making a right-to-left gesture on the screen of device 115. If user 110 fails to select between the first option 425 and the second option 415 within a threshold time, the response analyzer 155 of the digital experience-based recommendation tool 105 can make a selection between the first option 425 and the second option 415, and use the selected option to move within the nonlinear branching story to a new branch of the story and send the media file 130 associated with this new branch to device 115. This disclosure is intended to allow the response analyzer 155 to select one of the options in any appropriate manner. For example, in a particular embodiment, the response analyzer 155 may be configured to: 1) randomly select one of the options from a set of possible options; 2) select a predetermined option; 3) select a first option from a set of possible options; 4) select the most popular option from a set of possible options determined from responses 170 provided by other users; 5) select an option from a set of possible options based on user decisions or supplied personality traits, for example, selecting an adventurous option from a set of possible options for user 110A based on a decision from a previous response 170 supplied by user 110A that user 110A is adventurous; or selecting an extroverted option from a set of possible options for user 110A based on information supplied by user 110A to generate their own profile 135A (other than responses 170) indicating that user 110A is extroverted; or 6) select from among the available options using any other factor.

[0072] In certain such embodiments, the response analyzer 155 may store the selected option in memory 145 with a weight of zero, indicating to the recommendation engine 160 that this selected option should not be considered when matching user 110 with other users 110. This may be desirable when the selected option may provide limited or no information about the user's personality traits.

[0073] In certain embodiments (and as shown in Figure 4), the time interval during which user 110 can choose between the first option 425 and the second option 415 may be indicated by the length of a diagonal bar 420 positioned on the screen of device 115 between the first option 425 and the second option 415. Here, diagonal bar 420A is longer than diagonal bar 420B, indicating that user 110 has less time at the second steel 405B to choose between the first option 425 and the second option 415 than the user had at the first steel 405A. Encouraging user 110A to choose an option within a short time interval may be desirable to encourage the user to act on instinct rather than overthinking various options, potentially increasing the likelihood that the user's choices accurately reflect their own personality traits.

[0074] Furthermore, the media file 130 can also provide an indicator 410 of the number of users participating in the digital event. In certain embodiments, the indicator 410 may correspond to the total number of users participating in the digital event. In some embodiments, the indicator 410 may correspond to the number of users moving along the same path as user 110 within a non-linear branching story, and / or the number of users currently viewing / receiving the same media file 130 as user 110. In certain embodiments, the indicator 410 may correspond to the cumulative number of users who have moved along the same path as user 110 within a non-linear branching story, and / or the number of users who have viewed / received the same media file 130 as user 110 over the entire time that the user was able to participate in the digital event. Displaying the number of users who are moving along or have moved along the same path as user 110, and / or the number of users who are currently viewing / receiving the same media file 130 as user 110, or who have previously viewed / received the same media file 130, may be desirable as it may provide user 110 with an indicator of the popularity of their choice. For example, if the number of other users 410 decreases to 1 / 5 of the previous value after selecting the first option 425, this information can indicate to user 110 that the first option 425 is not a popular option among participants in the digital event.

[0075] This disclosure is intended to show that the media files 130 displayed in stills 405A and 405B may include any number of further features. For example, in certain embodiments, a user 110 can customize the media files 130 presented to them by selecting from a number of badges and / or skins provided by a digital experience-based recommendation tool 105.

[0076] Figures 5 to 7 present flowcharts illustrating the details of the operation of the digital experience-based recommendation tool.

[0077] Figure 5 presents a flowchart illustrating how a digital experience-based recommendation tool 105 sends a media file 130 to a user 110, receives a response 170 from the user 110, and uses the response 170 to match the user 110. Figure 5 intends for each set of options presented to the user 110 through the event to be a digital event consisting of pairs of options. However, this disclosure intends for each set of options to consist of any number of different options presented to the user 110.

[0078] In step 505, the digital experience-based recommendation tool 105 uses the interface 150 to send a first media file 130A to a device 115A belonging to user 110A. This disclosure is intended to show that each media file in the set of media 130 may present user 110A with a branch of a non-linear branching story in any suitable format. For example, in certain embodiments, media files 130A-130N may provide user 110A with a first-person perspective video of the story. In some embodiments, media files 130A-130N may provide user 110A with an augmented reality experience of the story by accessing the outward-facing camera of device 115A and displaying computer-generated graphics over the user 110A's real-world surroundings. In certain embodiments, media files 130A-130N may consist of audio files and / or text files. In further embodiments, media files 130A-130N may correspond to a computer-generated 3D simulation that user 110A can interact with by using certain hardware such as a virtual reality headset and / or sensors.

[0079] In step 510, the first media file 130A presents the user 110A with a pair of options – a first option and a second option. This disclosure is intended to show that media files 130A to 130N may present the options to the user 110A in any suitable way. For example, in certain embodiments, media files 130A to 130N may present the options to the user 110A by displaying text on the screen of the user's device 115A. In some embodiments, media files 130A to 130N may present the options to the user 110A by playing audio through the speaker system of the user's device 115A.

[0080] In step 515, the digital experience-based recommendation tool 105 receives a first selection from user 110A as response 170A. The first selection corresponds to the choice made by user 110A between a first option and a second option. The disclosure is intended to allow user 110A to interact with each of the media files 130A-130N in any suitable manner to send its own selection of a given option to the digital experience-based recommendation tool 105 as response 170A. As an example, in a particular embodiment, user 110A can select one of two options by making a gesture in a specified direction on the screen of their device 115A. For example, user 110A can select the first option by making a gesture from the right side of the screen to the left side of the screen on their device 115A, or user 110A can select the second option by making a gesture from the left side of the screen to the right side of the screen on their device 115A. As another example, in a particular embodiment, user 110A can select between the first and second options by entering a value using the keypad of device 115A or a keypad displayed on the screen of device 115A. For example, user 110A can select the first option by entering "1" on the keypad and select the second option by entering "2" on the keypad. As yet another example, in a particular embodiment, user 110A can select between the first and second options by tapping the screen of device 115A.

[0081] In step 520, the digital experience-based recommendation tool 105 determines whether user 110A has selected the first option or the second option. In this example, the first option is assigned to the second media file 130B, and the second option is assigned to the third media file 130C. Therefore, if in step 520 the digital experience-based recommendation tool 105 determines that user 110A has selected the first option, in step 525 the digital experience-based recommendation tool 105 sends the second media file 130B to user 110A using the interface 150. In step 530, the second media file 130B then presents its own pair of options to user 110A.

[0082] In step 520, if the digital experience-based recommendation tool 105 determines that user 110A has selected the second option, in step 535, the digital experience-based recommendation tool 105 sends a third media file 130C to user 110A using the interface 150. In step 540, the third media file 130C presents the pair of options to user 110A.

[0083] Regardless of whether user 110A selects a first option and is presented with a second media file 130B, or selects a second option and is presented with a third media file 130C, in step 545, the digital experience-based recommendation tool 105 receives a second selection from user 110A. This second selection consists of either an option selected from the set of options presented by the second media file 130B, or an option selected from the set of options presented by the third media file 130C.

[0084] In step 550, the digital experience-based recommendation tool 105 uses the first and second choices received from user 110A to identify a second user 110B as potentially compatible with user 110A. For example, in a particular embodiment, the digital experience-based recommendation tool 105 identifies a second user 110B as potentially compatible with user 110A by directly comparing the first and second choices received from user 110A with the choices received by the second user 110B. In a particular embodiment, the digital experience-based recommendation tool 105 first assigns weights to the first and second choices received from user 110A, along with the choices received by the second user 110B, and then identifies a second user 110B as potentially compatible with user 110A by comparing the weighted choices. This may be desirable when certain decisions better demonstrate the user's personality traits than others. For example, the decision to go skydiving rather than watch a movie may better reveal a user's personality traits than the decision to open the left door rather than the right door.

[0085] In certain embodiments, rather than determining that user 110B is potentially compatible with user 110A by comparing the first and second choices with the choices made by the second user 110B, the digital experience-based recommendation tool 105 can assign scores to the first choice, the second choice, and the choices made by the second user 110B, and determine compatibility between user 110A and the second user 110B based on the similarity of those scores. For example, the set of scores may include an extraversion score, an adventurousness score, a risk tolerance score, and a spontaneity score. In such embodiments, the recommendation engine 160 can group each set of options presented by the media file 130 into one or more personality categories and assign a score to each option within a given category. For example, a set of options including the choice between staying home or going to a party may be assigned to the extraversion category, with the decision to stay home being assigned a score of -50 and the decision to go to a party being assigned a score of +50. This disclosure is intended to show that multiple decisions made by a user while participating in a digital event may contribute to the same personality category. For example, in addition to the choice of attending a party or staying home, the decision of going backstage to meet the band's lead singer or remaining among the general audience at a concert may also influence the user's extraversion score. Here, the decision to go backstage may be assigned a score of +20, while the decision to remain among the general audience may be assigned a score of -10. Furthermore, this disclosure is intended to show that decisions contributing to a given personality category do not need to occur in the same digital event. For example, during a first digital event, a user may choose to attend a party rather than stay home, thereby increasing their extraversion score. Furthermore, during a second digital event, this user may choose to go backstage to meet the band's lead singer rather than remaining among the general audience at a concert, thereby further increasing their extraversion score.

[0086] The recommendation engine 160 can determine a set of scores for user 110A by determining a score to assign to each of the choices made by user 110A and summing the scores assigned to each personality category. Similarly, the recommendation engine 160 can determine a set of scores for second user 110B by determining a score to assign to each of the choices made by second user 110B and summing the scores assigned to each personality category. In certain embodiments, the recommendation engine 160 can then determine the degree of compatibility between user 110A and second user 110B based on the similarity of their scores. In certain embodiments, rather than directly comparing the personality trait scores of user 110A and second user 110B, the recommendation engine 160 may utilize a machine learning algorithm trained to generate a ranked list of compatible users 110 based on attributes including the users' personality trait scores.

[0087] This disclosure is intended to enable the recommendation engine 160 to consider any number of factors in addition to the selection received from user 110 in order to determine that a second user 110B is a good match for user 110A. As an example, in an embodiment in which the recommendation engine 160 utilizes a machine learning algorithm trained to generate a ranked list of compatible users 110 based on attributes including user personality trait scores, the machine learning algorithm may operate on further attributes obtained from profile 135A belonging to user 110A and profile 135B belonging to the second user 110B. In such an embodiment, the personality trait scores determined by tool 105 for user 110A may be placed in profile 135A, and the personality trait scores determined by tool 105 for user 110B may be placed in profile 135B, thereby allowing a machine learning algorithm configured to extract attributes obtained from profile 135 and operate on those attributes to easily incorporate further attributes associated with the personality trait scores placed in profile 135. As another example, in a particular embodiment, the recommendation engine 160 may consider the age, gender, and location of user 110 when determining that a second user 110B is a good match for user 110A. For example, the recommendation engine 160 may determine that a second user 110B is a good match for user 110A based in part on the fact that the second user 110B falls within the age, gender, and / or location range specified by user 110A.

[0088] This disclosure is intended to enable the digital experience-based recommendation tool 105 to determine, at any given time, that a second user 110B may be a good match for user 110A. For example, the digital experience-based recommendation tool 105 may determine that a second user 110B is a good match for user 110A at any of the following times: (1) after user 110A has finished the digital event but before user 110B has finished the digital event; (2) after user 110A has finished the digital event and user 110B has finished the digital event, and user 110B joined the digital event at a later time than user 110A; (3) while user 110A is participating in the digital event and after user 110B has finished the digital event; or (4) at any other time.

[0089] After determining that the second user 110B is a good match for user 110A, in step 555, the digital experience-based recommendation tool 105 sends user 110A the profile 135B assigned to the second user 110B. In certain embodiments, rather than sending profile 135B which includes user 110B's profile picture, the digital experience-based recommendation tool 105 may send an avatar generated by user 110B to represent itself. In such embodiments, user 110A may only be able to see user 110B's profile picture (rather than the avatar) if both user 110A and user 110B choose to match with each other. The use of avatars may be desirable for users 110 who wish to maintain anonymity while participating in digital events. Furthermore, the use of avatars may be desirable to help encourage users 110 to contact potentially compatible users based on the personality traits of potentially compatible users rather than on their personal appearance, potentially leading to more meaningful experiences in real life.

[0090] Method 500 shown in Figure 5 may be modified, added to, or omitted. Method 500 may include more, fewer, or other steps. For example, the steps may be performed in parallel or in any suitable order. Although a digital experience-based recommendation tool 105 (or its components) is discussed as performing the steps, any suitable component of System 100, such as Device 115, may perform one or more steps of this method.

[0091] Figure 6 is a flowchart that further illustrates how the digital experience-based recommendation tool 105 matches users 110, focusing on the branching nature of the stories transmitted by the tool.

[0092] In step 605, the digital experience-based recommendation tool 105 uses interface 150 to send the first media file 130A to the first user 110A, the second user 110B, and the third user 110C. In step 610, the first media file 130A presents each of the first user 110A, the second user 110B, and the third user 110C with a pair of options – the first option and the second option. In step 615, the digital experience-based recommendation tool 105 receives a selection of one option from the pair of options from each of the first user 110A, the second user 110B, and the third user 110C.

[0093] This disclosure is intended to show that a digital experience-based recommendation tool 105 may send media files 130 to each of users 110A to 110C simultaneously or at different times. For example, a digital event may be scheduled from 6:00 p.m. to 12:00 p.m., and user 110 may choose to start participating in the event at any point between 6:00 p.m. and 12:00 p.m. Therefore, the first user 110A may choose to start joining the event at 6:00 p.m., thereby the tool 105 will send the first media file 130A to the first user 110A at 6:00 p.m.; the second user 110B may choose to start joining the event at 6:45 p.m., thereby the tool 105 will send the first media file 130A to the second user 110B at 6:45 p.m.; and the third user 110C may choose to start joining the event at 8:00 p.m., thereby the tool 105 will send the first media file 130A to the third user 110C at 8:00 p.m. Similarly, this disclosure intends that the digital experience-based recommendation tool 105 may receive a selection of one of the options from each of the first user 110A, the second user 110B, and the third user 110C simultaneously or at different times.

[0094] In step 620, the digital experience-based recommendation tool 105 determines whether the first user 110A has selected the first option. Similarly, in step 625, the digital experience-based recommendation tool 105 determines whether the second user 110B has selected the first option, and in step 630, the digital experience-based recommendation tool 105 determines whether the third user 110C has selected the first option. If any of the first user 110A, the second user 110B, or the third user 110C has selected the first option, in step 635, the digital experience-based recommendation tool 105 uses the interface 150 to send the second media file 130B to the user who selected the first option. In step 640, the second media file 130B presents the user who selected the first option with another pair of options—the third option and the fourth option.

[0095] If any of the first user 110A, the second user 110B, and the third user 110C select the second option, in step 645, the digital experience-based recommendation tool 105 uses the interface 150 to send the third media file 130C to the user who selected the second option. In step 650, the third media file 130C presents its own pair of options—the fifth option and the sixth option—to the user who selected the second option.

[0096] Regardless of whether user 110A, 110B, or 110C selected the first option or the second option, in step 655, the digital experience-based recommendation tool 105 receives a fourth selection from the first user 110A, a fifth selection from user 110B, and a sixth selection from user 110C. Again, this disclosure intends that the fourth, fifth, and sixth selections may be received simultaneously or at different times. Each of the fourth, fifth, and sixth selections consists of either an option selected from the set of options presented by the second media file 130B, or an option selected from the set of options presented by the third media file 130C.

[0097] In step 660, the digital experience-based recommendation tool 105 determines a first score between the first user 110A and the second user 110B, based on the choices made by the first user 110A and the second user 110B—that is, the first choice, the fourth choice, the second choice, and the fifth choice. Similarly, in step 665, the digital experience-based recommendation tool 105 determines a second score between the first user 110A and the third user 110C, based on the choices made by the first user 110A and the third user 110B—that is, the first choice, the fourth choice, the third choice, and the sixth choice. In step 670, the digital experience-based recommendation tool 105 compares the first score with the second score. In step 670, if the digital experience-based recommendation tool 105 determines that the first score is greater than the second score, this indicates that the second user 110B may be a better match for the first user 110A. Therefore, in step 675, the digital experience-based recommendation tool 105 sends profile 135B, which belongs to the second user 110B, to the first user 110A. On the other hand, in step 670, if the digital experience-based recommendation tool 105 determines that the second score is greater than the first score, indicating that the third user 110C is a better match for the first user 110A, then in step 680, the digital experience-based recommendation tool 105 sends profile 135C, which belongs to the third user 110C, to the first user 110A.

[0098] This disclosure is intended to enable the digital experience-based recommendation tool 105 to determine at any given time whether a second user 110B or a third user 110C may be a good match for user 110A. For example, the digital experience-based recommendation tool 105 may determine whether a second user 110B or a third user 110C is a good match for user 110A at any of the following times: (1) after user 110A has finished the digital event but before users 110B and 110C have finished the digital event; (2) after user 110A has finished the digital event and users 110B and 110C have finished the digital event, and one or both of users 110B and 110C joined the digital event at a later time than user 110A; (3) while user 110A is participating in the digital event and after users 110B and 110C have finished the digital event; or (4) at any other time.

[0099] Method 600 shown in Figure 6 may be modified, added to, or omitted. Method 600 may include more, fewer, or other steps. For example, the steps may be performed in parallel or in any suitable order. Although the digital experience-based recommendation tool 105 (or its components) is discussed as performing the steps, any suitable component of System 100, such as Device 115, may perform one or more steps of this method.

[0100] Figure 7 presents a flowchart illustrating the behavior of the digital experience-based recommendation tool 105 in an embodiment in which the user 110 can submit a response 170 to the digital experience-based recommendation tool 105 only within a threshold time.

[0101] In step 705, the digital experience-based recommendation tool 105 sends the first media file 130A to user 110A. In step 710, the first media file 130A presents user 110A with a first option and a second option. In step 715, the digital experience-based recommendation tool 105 determines whether user 110A has submitted a selection for either the first or second option within the threshold time. If the digital experience-based recommendation tool 105 determines that user 110A has submitted a selection within the threshold time, in step 720, the tool receives this selection as the first selection from user 110A. If the digital experience-based recommendation tool 105 determines that user 110A has not submitted a selection within a threshold time, in step 725, the tool selects a first selection for user 110A from the first and second options, assigns a weight of 0 to this first selection, and indicates that this selected option should not be considered when matching user 110A with other users. The disclosure is intended to allow the response analyzer 155 to select one of the options in any appropriate manner.For example, in a particular embodiment, the response analyzer 155 may be configured to: 1) randomly select one of the options from a set of possible options; 2) select a predetermined option; 3) select a first option from a set of possible options; 4) select the most popular option from a set of possible options determined from responses 170 provided by other users; 5) select an option from a set of possible options based on user decisions or supplied personality traits, for example, selecting an adventurous option from a set of possible options for user 110A based on a decision from a previous response 170 supplied by user 110A that user 110A is adventurous; or selecting an extroverted option from a set of possible options for user 110A based on information supplied by user 110A to generate their own profile 135A (other than responses 170) indicating that user 110A is extroverted; or 6) select from among the available options using any other factor. Providing an option for the user if user 110A does not submit a choice within a threshold time may be desirable because it may encourage user 110A to act on instinct rather than overthinking various options, potentially increasing the likelihood that the user's choices accurately reflect their own personality traits.

[0102] In step 730, the digital experience-based recommendation tool 105 determines whether the first selection is the first option. If the digital experience-based recommendation tool 105 determines that the first selection is the first option, in step 735, the tool sends the second media file 130B to user 110A. Then, in step 740, the second media file 130B presents user 110A with another pair of options—the third option and the fourth option. On the other hand, if the digital experience-based recommendation tool 105 determines in step 730 that the first selection is not the first option, in step 745, the tool sends the third media file 130C to user 110A. Then, in step 750, the third media file 130C presents user 110A with its own set of options—the fifth option and the sixth option.

[0103] Regardless of whether the first selection was determined to be the first option or the second option in step 730, in step 755, the digital experience-based recommendation tool 105 receives the second selection from user 110A. In step 760, the digital experience-based recommendation tool 105 determines whether a weight of zero is assigned to the first selection. If a weight of zero is assigned to the first selection, in step 765, the digital experience-based recommendation tool 105 uses the second selection to identify a third user 110C as potentially compatible with the first user 110A (i.e., the digital experience-based recommendation tool 105 does not consider that selection when determining the degree of compatibility of the other user with user 110A). Ignoring any option selected by the tool 105 rather than by user 110A in compatibility determination may be desirable because the selected option may provide limited or no information about the user's personality traits.

[0104] On the other hand, if no weight of zero is assigned to the first selection, in step 770, the digital experience-based recommendation tool 105 uses the first and second selections to identify a second user 110B as potentially compatible with the first user 110A. Finally, in step 775, the digital experience-based recommendation tool 105 sends the profile 135 of the compatible user (either the second user 110B or the third user 110C) to user 110A. This disclosure is intended to allow the digital experience-based recommendation tool 105 to send the profile 135 to user 110A at any time during and / or after a digital event.

[0105] Method 700 shown in Figure 7 may be modified, added to, or omitted. Method 700 may include more, fewer, or other steps. For example, the steps may be performed in parallel or in any suitable order. Although a digital experience-based recommendation tool 105 (or its components) is discussed as performing the steps, any suitable component of System 100, such as Device 115, may perform one or more steps of this method.

[0106] While this disclosure includes several embodiments, numerous changes, modifications, alterations, transformations, and modifications may be suggested to those skilled in the art, and this disclosure is intended to include such changes, modifications, alterations, transformations, and modifications so as to fall within the scope of the appended claims.

Claims

1. It is a system, The processor, Determine whether the first user is within a specified time interval for the story of the digital event, The system is configured to send a first media file to the first user's device in response to the determination that the first user is within the specified time interval for the digital event. The interface, which is communicatively coupled to the aforementioned processor, The first media file is transmitted to the first user's device, and the first media file is configured to present a first set of choices, each having at least two options relating to the story of the digital event. The system receives a first selection result in response to the first choice, and each option in the first set, which has at least two options, is assigned a score related to a category of the first personality trait. The aforementioned processor further, In response to receiving the first selection result from the first user, Based on the first selection result, a first score for the first personality trait of the first user is determined. Based on the first selection result, a second media file is determined. The second media file is transmitted to the first user's device, and the second media file is configured to present a second set of choices, each having at least two options relating to the story of the digital event. Upon receiving a second selection result in response to the second choice, each option in the second set having at least two options is assigned a score related to the category of the second personality trait. Based on the second selection result, a second score for the second personality trait of the first user is determined. The recommendation engine determines a second user based on the first selection result, the second selection result, the first score, and the second score. The system is configured to display information about the second user to the first user. system.

2. A first weight is assigned to the first selection result, A second weight is assigned to the second selection result. The system according to claim 1, wherein determining the second user is based on the first weight and the second weight.

3. The aforementioned interface further, The first media file is sent to the third user's device. If, in response to the first choice, a third choice result different from the first choice result is received from the third user, The processor further responds to receiving the third selection result from the third user, Based on the above third selection result, a third media file is determined, The third media file is transmitted to the third user's device, and the third media file is configured to present a third choice consisting of at least two options. Upon receiving the fourth selection result in response to the third option, Based on the results of the third and fourth selections, a fourth user is determined. The system according to claim 1, configured to display information about the fourth user to the third user.

4. The system according to claim 1, wherein the interface is further configured to receive a declaration of participation in the digital event from the first user.

5. The aforementioned processor further, Based on the first selection result described above, determine the attributes, The system according to claim 1, configured to add the attribute to the profile of the first user.

6. The system according to claim 1, wherein the processor is further configured to add the first selection result to the profile of a first user in response to receiving the first selection result and the second selection result, and the first selection result is visible to other users.

7. A non-temporary computer-readable storage medium coded with logic, wherein the logic, when executed, Determine whether the first user is within a specified time interval for the story of the digital event, In response to determining that the first user is within the specified time interval for the digital event, the first media file is sent to the first user's device. The first media file is transmitted to the first user's device, and the first media file is configured to present a first set of choices, each having at least two options relating to the story of the digital event. Upon receiving a first selection result in response to the first choice, each option in the first set having at least two options is assigned a score related to the category of the first personality trait. In response to receiving the first selection result from the first user, Based on the first selection result, a first score for the first personality trait of the first user is determined. Based on the first selection result, a second media file is determined. The second media file is transmitted to the first user's device, and the second media file is configured to present a second set of choices, each having at least two options relating to the story of the digital event. Upon receiving a second selection result in response to the second choice, each option in the second set having at least two options is assigned a score related to the category of the second personality trait. Based on the second selection result, a second score for the second personality trait of the first user is determined. The recommendation engine determines a second user based on the first selection result, the second selection result, the first score, and the second score. The system is configured to display information about the second user to the first user. A non-temporary computer-readable storage medium.

8. A first weight is assigned to the first selection result, A second weight is assigned to the second selection result. Determining the second user is based on the first weight and the second weight, the non-temporary computer-readable storage medium according to claim 7.

9. The aforementioned logic further states that The first media file is sent to the third user's device. If, in response to the first choice, a third choice result different from the first choice result is received from the third user, In response to receiving the third selection result from the third user, Based on the above third selection result, a third media file is determined, The third media file is transmitted to the third user's device, and the third media file is configured to present a third choice consisting of at least two options. Upon receiving the fourth selection result in response to the third option, Based on the results of the third and fourth selections, a fourth user is determined. A non-temporary computer-readable storage medium according to claim 7, configured to display information relating to the fourth user to the third user.

10. The non-temporary computer-readable storage medium according to claim 7, wherein the logic is further configured to receive a choice from the first user to participate in the digital event.

11. The aforementioned logic further states that Based on the first selection result described above, determine the attributes, A non-temporary computer-readable storage medium according to claim 7, configured to add the attribute to the profile of the first user.

12. The non-temporary computer-readable storage medium according to claim 7, wherein the logic is further configured to add the first selection result to the profile of the first user in response to receiving the first selection result and the second selection result, and the first selection result is visible to other users.

13. It is a system, The processor, Determine whether the first user is within a specified time interval for the story of the digital event, The system is configured to send a first media file to the first user's device in response to the determination that the first user is within the specified time interval for the digital event. The interface, which is communicatively coupled to the aforementioned processor, The first media file is transmitted to the first user's device, and the first media file is configured to present a first set of choices, each having at least two options relating to the story of the digital event. The system receives a first selection result in response to the first choice, and each option in the first set, which has at least two options, is assigned a score related to a category of the first personality trait. The aforementioned processor further, In response to receiving the first selection result from the first user, Based on the first selection result, a first score for the first personality trait of the first user is determined. Based on the first selection result, a second media file is determined. The second media file is transmitted to the first user's device, and the second media file is configured to present a second set of choices, each having at least two options relating to the story of the digital event. Upon receiving a second selection result in response to the second choice, each option in the second set having at least two options is assigned a score related to the category of the second personality trait. Based on the second selection result, a second score for the second personality trait of the first user is determined. The recommendation engine determines a second user based on the first selection result, the second selection result, the first score, and the second score. The first user's profile is configured to add attributes, system.

14. A first weight is assigned to the first selection result, A second weight is assigned to the second selection result. The system according to claim 13, wherein determining the attribute is based on the first weight and the second weight.

15. The system according to claim 13, wherein the interface is further configured to display the profile of the first user to the second user, and the attributes are visible to the second user.

16. The system according to claim 13, wherein the interface is further configured to receive a selection from the first user to participate in the digital event.

17. The system according to claim 13, wherein the processor is further configured to add the first selection result to the profile of a first user in response to receiving the first selection result and the second selection result, and the first selection result is visible to other users.