US10603594B2 - Online ecosystem-based resource recommendations - Google Patents
Online ecosystem-based resource recommendations Download PDFInfo
- Publication number
- US10603594B2 US10603594B2 US15/372,262 US201615372262A US10603594B2 US 10603594 B2 US10603594 B2 US 10603594B2 US 201615372262 A US201615372262 A US 201615372262A US 10603594 B2 US10603594 B2 US 10603594B2
- Authority
- US
- United States
- Prior art keywords
- users
- user
- computing system
- subset
- attributes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active, expires
Links
- 230000003993 interaction Effects 0.000 claims abstract description 109
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 35
- 230000004044 response Effects 0.000 claims description 24
- 238000000034 method Methods 0.000 claims description 22
- 230000002452 interceptive effect Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 230000001960 triggered effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 101000822695 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C1 Proteins 0.000 description 1
- 101000655262 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C2 Proteins 0.000 description 1
- 208000032041 Hearing impaired Diseases 0.000 description 1
- 101000655256 Paraclostridium bifermentans Small, acid-soluble spore protein alpha Proteins 0.000 description 1
- 101000655264 Paraclostridium bifermentans Small, acid-soluble spore protein beta Proteins 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000007177 brain activity Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000005684 electric field Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000026683 transduction Effects 0.000 description 1
- 238000010361 transduction Methods 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
- A63F13/795—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for finding other players; for building a team; for providing a buddy list
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/85—Providing additional services to players
- A63F13/87—Communicating with other players during game play, e.g. by e-mail or chat
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0282—Rating or review of business operators or products
-
- H04L67/22—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/535—Tracking the activity of the user
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
Definitions
- Matchmaking may be performed based upon various factors. For example, users may be matched with others of similar skill in the game and/or others with whom a user has previously established a relationship (e.g., friends and/or followers in the game).
- Examples are disclosed that relate to recommending resources accessible via an online ecosystem based upon ecosystem activities.
- One example provides a computing system comprising a logic machine and a storage machine holding instructions executable by the logic machine to, for each of a plurality of users of an online ecosystem, obtain and store interaction data regarding interactions of the user with one or more digital content items accessible via the online ecosystem.
- the instructions are further executable to receive a request associated with a selected user for a recommendation related to resources accessible via the online ecosystem, retrieve the interaction data for at least a subset of users of the plurality of users, apply a weighted matching algorithm to determine one or more similar users that are similar to the selected user, and output a recommendation for the selected user of one or more recommended resources accessible via the online ecosystem.
- FIGS. 1A-1B respectively show example user interfaces operable to receive resource recommendations in an online ecosystem.
- FIG. 2 shows an example computing environment in which resource recommendations may be provided.
- FIG. 3 shows a flow diagram depicting an example method of providing recommendations based upon interactions of users with resources of an ecosystem.
- FIG. 4 shows a block diagram of an example computing device.
- users are selectively matched to one another to facilitate multiplayer game sessions, as described above.
- users may be matched based upon skill level in the game and/or a previously established relationship.
- matchmaking may pose limitations. For example, matchmaking based upon a user's established social relationships and/or skill level may result in the user repeatedly being matched with a relatively small group of other players. This effect may be heightened based upon other factors used to prioritize matches, such as geographic proximity. Further, the data on which matchmaking for a particular game is based may be limited to users' interactions with that game specifically.
- an online ecosystem may include an online gaining service that implements a plurality of games.
- recommendations of other users with whom to play games, and/or other resources may be based upon interactions of users with multiple games in the ecosystem, rather than just d actions with a particular game for which a recommendation is sought.
- an ecosystem further may include other services, such as an application service, multimedia service, and/or productivity software service.
- recommendations may be provided for digital content item such as movies, TV shows, music, and applications, as examples.
- the disclosed examples for providing recommendations utilize data regarding interactions of users with the online ecosystem to identify similar users having similar interactions.
- interaction data collected across a variety of interaction contexts e.g., different devices, services, and/or types of content
- interaction contexts e.g., different devices, services, and/or types of content
- the use of such data in the gaming context to provide recommendations of other players for matchmaking may help to surface a different and/or more diverse set of recommended other players than matchmaking based upon skill at a particular game and/or based upon previously established relationships.
- interaction data reflects a user's up-to-date personal interaction patterns with the ecosystem
- recommendations determined based upon such data may adapt to changes in user interaction over time, and thus may provide more persona zed recommendations than matchmaking based on game skills and/or relationships.
- FIG. 1A shows an example user interface (UI) 100 operable to allow a user to request recommendations of resources.
- UI 100 is a dashboard presented by an operating system executed on a game console computing device that subscribes, or is otherwise communicatively coupled, to an online gaming service.
- user interfaces for requesting resource recommendations may be displayed in any other suitable context on any suitable computing device, including but not limited to desktop, laptop, tablet, mobile, and wearable computing devices.
- Example computing devices are described below with reference to FIGS. 2 and 4 .
- UI 100 includes a plurality of controls (e.g., control 102 ) selectable to effect computing device functions and various functions related to the online gaming service.
- the plurality of controls may be selectable to execute games and/or other applications, playback digital content items, display information regarding a user profile signed into the game console computing device, and/or display information regarding contacts of the user, among other potential functions.
- Additional control(s) may be provided at a menu 104 , which is shown in FIG. 1A in an expanded state (e.g., in response to user selection of a control to expand the menu).
- Menu 104 includes a control 106 selectable to send a request for a recommendation related to resources accessible via the online gaming service.
- control 106 is selectable to send requests for matchmaking with other users of the online gaming service with whom to participate in an online game.
- a user interface may include a control selectable to obtain recommendations of digital content or other items for consumption.
- FIG. 1B shows an example UI 108 that may be displayed in response to selection of control 106 of FIG. 1A or a similar control.
- UI 108 displays other users of the online gaming service who are recommended to the signed-in user in response to selection of control 106 .
- UI 108 may present recommended users in the form of groups, such as groups 110 and 112 , each of which may comprise one or more recommended users.
- UI 108 may present recommended users individually, such as users 114 , 116 , and 118 .
- the recommendations displayed in UI 108 may be determined by comparing interactions of the signed-in user with an ecosystem of the online g service to interactions of other users with the ecosystem.
- UI 108 may further include various controls for each group 110 and 112 .
- the UI 108 includes a control 120 selectable to request matchmaking with the group (e.g., for a game being played by one or more members of the group and/or the signed-in user, or a game selected by a user via suitable controls), a control 122 selectable to request membership in the group, and a control 124 selectable to send a message text, video, audio) to the group.
- UI 108 includes analogous controls for group 112 . Further, controls selectable to request matchmaking and to send a message may be provided for recommended individual other users 114 , 116 , and 118 , for example. While not depicted in FIG. 1B , UI 108 further may include one or more controls selectable to filter the recommendations displayed therein (e.g., to display results regarding a specific game).
- the request for resource recommendations entered by a signed-in user is sent to a remote computing system, such as a game platform or other content platform, which sends recommendations in response based upon user interactions with an ecosystem including the platform.
- a remote computing system such as a game platform or other content platform
- the ecosystem may be limited to the platform itself, or may include other components, such as an application platform, a multimedia content platform, and a productivity software platform.
- the recommendations obtained include groups 110 and 112 , and users 114 , 116 , and 118 .
- the computing system may determine that users 114 , 116 , and 118 are similar to the signed-in user based on interaction data indicating that the similar and signed-in users have played a common game as a preferred game—e.g., as a result of the interaction data indicating the game being played at a high frequency, having the highest time played relative to other games, and/or being the most recently played game.
- the computing system may determine group 110 to have one or more similar users to the signed-in user based on interaction data indicating that the similar and signed-in users prefer two or more common games.
- interaction data may be evaluated by the computing system. Examples of interaction data are described below with reference to FIG. 2 .
- group 110 is recommended based on interaction data indicating a shared interest between the group and the signed-in user in fantasy games.
- group 110 and the signed-in user may prefer two or more of the same fantasy games.
- UI 108 further displays one or more tags that indicate properties (e.g., preferences, interests, disinterests) of the recommended users and/or groups, which may help convey criteria with which the recommendations were made.
- tags 126 associated with group 110 include a “#FantasyGames” tag indicating the group's interest in fantasy games that is determined to be a similarity with the signed-in user.
- Non-gaming interaction data may be used to determine recommendations of resources.
- Non-gaming data may comprise data indicating user preferences, habits, accessibility options, and/or biographical information, among other potential data. This is illustrated in FIG. 1B as tags for groups 110 and 112 indicating non-gaming properties of the groups that are used to match with the signed-in user—a “#ControllersOnly” tag indicates both the groups' and user's preference for the use of a game controller for playing online games (e.g., as opposed to other input devices such as a mouse and keyboard), a “#MicsRequired” tag indicates the preference of group 112 and the signed-in user for usage of a microphone during online games, and a “#PacificTime” tag indicates both groups' and the user's location in the PST time zone.
- the user-specific non-gaming data may be based on user input specifying at least a portion of the non-gaming data (e.g., user preferences, biographical information), and/or may be based on observed interaction patterns be the online gaming service (e.g., by observing the absence of a microphone).
- the online gaming service to which the game console computing device is communicatively coupled may be part of an online ecosystem that includes other services.
- interaction data regarding users' interactions across multiple services may be leveraged to provide recommendations of other users with whom to play.
- This is illustrated in FIG. 1B as a “#FantasyFiction” tag for group 110 indicating a common interest between the group and the signed-in user in fantasy fiction multimedia content.
- this common interest may be derived from interaction data indicating consumption in the online ecosystem of fantasy fiction multimedia content provided by a multimedia service that provides video (e.g., television shows and/or movies), audio (e.g., music, audiobooks, and/or podcasts), and/or other forms.
- FIG. 1B shows a “#SportsFans” tag for group 112 indicating a common interest between the group and signed-in user in sports.
- the common interest in sports may be derived from interaction data indicating purchase, installation, and/or usage of a sports application provided by an application service in the online ecosystem, as well as consumption of sports-related television shows, sporting events, and/or sports-related movies.
- An example online ecosystem comprising various services is described below with reference to FIG. 2 .
- the computing system may recommend other types of resources accessible via the online ecosystem. For example, in response to a recommendation request associated with a selected user, the computing system may recommend one or more digital content items identified based upon interaction data of one or more users determined to be similar to the selected user. Depending on the services available in the online ecosystem, recommended digital content item(s) may comprise an application, game, video file, audio file, and/or other suitable item. In the example depicted in FIG. 1B , the computing system may recommend one or more games identified in the interaction data regarding the recommended users, alternatively or in addition to recommending those users.
- the types of resources recommended may be selected according to the context in which they are determined—for example, an application context may determine the types of resources that are recommended, such that digital audio content items are recommended for a music application, digital video content items are recommended for a TV and/or movie application, and games are recommended for a game application.
- recommendations may be for content to be consumed in other contexts.
- FIG. 1B illustrates the recommendation of similar users without regard to any particular game
- user recommendations are provided within a specific game as part of its matchmaking functionality.
- the game can use a recommendation service external to the game to determine recommendations, and then present the recommendations within the game. In this manner, the game may provide recommendations of other players that may not be found when the data for that game alone is considered.
- Such a recommendations service may likewise be utilized by a third party service provider, as described below with reference to FIG. 2 .
- the computing system may use interaction data to rank recommended groups and/or users in addition to selecting the groups and/or users for recommendation. For example, the computing system may rank group 110 higher than group 112 where interaction data regarding the signed-in user indicates a greater preference of the user for fantasy games and fantasy fiction multimedia content than for sports or usage of microphones during gameplay. Moreover, users 114 and 116 may be ranked higher than user 118 where interaction data indicates a greater similarity among users 114 and 116 and the signed-in user than between user 118 and the signed-in user. Still further, individual similarities and/or ranks of group members may be evaluated in any suitable manner to determine a collective similarity and/or rank of the group. As examples, the similarities and/or ranks of individual group members may be averaged, computed in a weighted average, and/or compared to thresholds.
- FIGS. 1A-1B illustrate the supply of recommendations in response to user selection of a control
- other triggers for generating recommendations also may be used.
- recommendations may be triggered upon boot-up of the game console computing device, upon sign-in of a user profile, upon opening an application configured to output resource recommendations, and/or automatically upon detection of a similarity between users that exceeds a threshold.
- a control may be provided (e.g., in UI 108 ) that is selectable to enable or disable non-user-triggered recommendations.
- FIG. 2 shows an example system 200 in which recommendations relating to resources accessible via an online ecosystem 202 may be supplied to users of the online ecosystem based upon interactions within the ecosystem.
- a plurality of users 204 may interact with ecosystem 202 via one or more respective computing devices—as examples, FIG. 2 shows computing devices 206 and 208 associated with a first user and communicatively coupled to the ecosystem, and computing device(s) 210 associated with an nth user also communicatively coupled to the ecosystem.
- the plurality of users 204 may have any suitable relationship(s) with ecosystem 202 .
- users 204 may subscribe to one or more services included in ecosystem 202 , examples of which are shown in FIG. 2 as an online gaming service 212 , a multimedia service 214 , an application service 216 , and a productivity software service 218 .
- Gaming service 212 may facilitate various functions, such as matchmaking for online game(s), hosting of online game(s), communication and social networking among users, provision of a digital storefront (e.g., for distributing games and game-related content), and/or other potential functions.
- Multimedia service 214 may facilitate various functions, such as hosting or otherwise providing digital content items in various forms, such as video (e.g., as a TV show and/or movie service), audio as a music, audiobook, and/or podcast service), and/or other forms for user consumption via streaming and/or download).
- Application service 216 may provide functions such as hosting (e.g., as a digital application storefront) or otherwise providing applications for user consumption (e.g., via execution on user computing devices), among other potential functions.
- Productivity service 218 may provide functions such as hosting (e.g., as a digital application storefront) or otherwise providing (e.g. via download) productivity-related applications for user consumption, providing digital productivity-related services (e.g., data storage, data processing), among other potential functions. Via these services and/or potentially others, a user may access a plurality of digital content items via ecosystem 202 , indicated by digital content 220 .
- Digital content 220 may be hosted on any suitable storage local to ecosystem 202 or external to the ecosystem 2
- Interaction data 222 may thus comprise, for a given user of the plurality of users 204 , data regarding the user's ecosystem interactions as carried out on one or more computing devices, and/or data regarding the user's interactions with one or more of gaming service multimedia service 214 , application service 216 , and productivity service 218 .
- the interaction data may comprise data regarding gaming-related habits and preferences of users.
- the gaming-related data may comprise device-specific data, such as data specific to a type of computing device (e.g. a game console, a mobile device, a wearable device, etc.).
- the gaming-related data may comprise, for a given user, a total time spent playing games (for all time or within a recent time period), times spent playing individual games, time spent playing games on specific devices, and a total score associated with the user (e.g., a score that numerically summarizes the user's achievements in his or her games played or otherwise relates to his or her gaming-related activity).
- the gaming-related data may comprise data regarding user accessibility settings or preferences—e.g., for a given user, whether or not the usage of a microphone is preferred during gameplay of an online game.
- Interaction data 222 may further comprise social-related data, which may or may not also be game-related.
- the social-related data may comprise, for a given user, a total number of contacts made within gaming service 212 and/or other service, a social graph, data relating to communication with the contacts e g., a number of messages sent by the user to contacts), and/or other social-related data, such as data regarding the user's profession.
- related data may be obtained from a social networking service in ecosystem 202 and/or remote from the ecosystem.
- Interaction data 222 may further comprise non-gaming data.
- the non-gaining data may regard user consumption of multimedia.
- the non-gaming data may comprise, for a given user, data relating to the user's preferred or favorite music. TV shows, and/or movies; data related to preferred or favorite musical, television, and/or movie genres; and data related to most consumed music, TV shows, and/or movies.
- Non-gaining data regarding multimedia consumption may be collected at multimedia service 214 , for example.
- the non-gaming data may comprise data regarding application usage, such as user application usage statistics.
- Non-gaming data regarding application usage may be collected at application service 216 , for example.
- Non-gaming data may comprise user-related data irrespective of interactions with ecosystem 202 .
- the user-related data may comprise, for a given user, his or her age or age group, gender, and region (e.g., ZIP code, IP address geolocation, country).
- interaction data 222 may provide a diverse dataset with which insight into users' preferences, habits, and the like may be obtained for providing recommendations of recourses available on the ecosystem.
- Recommendations may be identified based on interaction data 222 by determining other user similar user(s). This may help to identify recommendations of relevance to a requesting user, which may facilitate the provision of an enjoyable user experience and potentially the establishment of relationships with other users with whom a common interest is shared.
- System 200 comprises a recommendations service 224 that is generally operable to determine and output resource recommendations to ecosystem 202 for provision to the plurality of users 204 .
- recommendations service 224 may comprise one or more computing devices comprising logic and storage holding instructions executable via the logic to effect the approaches described herein. Example logic and storage devices are described below with reference to FIG. 4 . While shown separately from the ecosystem in FIG. 2 , the recommendations service 224 may be hosted by a same entity as ecosystem 202 , and may logically be incorporated into ecosystem 202 .
- Recommendations service 224 may comprise instructions executable to obtain and store, for each of the plurality of users 204 , interaction data 222 regarding interactions of that user with one or more digital content items of digital content 220 accessible via ecosystem 202 .
- stored interaction data 222 for a given user may be aggregated across two or more services and/or computing devices, as the user's interaction data may be distributed across multiple user profiles.
- Stored interaction data 222 may comprise, for each of the plurality of users 204 , a plurality of attributes regarding that user.
- Each attribute may relate to a specific aspect of the user's interaction with ecosystem. 202 , and may include one or more of the examples of gaming-related, social-related, non-gaming, and/or other user-related data described above, such as a preferred or favorite multimedia genre, content item, game, application, artist, accessibility setting, etc.
- the plurality of attributes for the plurality of users 204 may be arranged in any suitable data structure. As examples, the plurality of attributes may be arranged in a table or database with each row corresponding to a user and each column corresponding to an attribute.
- one or more attributes associated with a selected user may be compared with the same set of attributes of other users to identify similar users and to provide recommendations to the selected user based on interaction data 222 associated with the identified similar users.
- the instructions in recommendations service 224 may be further executable to receive a request associated with a selected user for a recommendation related to resources accessible via ecosystem 202 , and in response to receiving the request, retrieve interaction data 222 for at least a subset of users of the plurality of users 204 .
- the request may comprise an identifier of the selected user and/or a security token, one or both of which may be specific to ecosystem 202 and/or one or more of services 212 , 214 , 216 , and 218 .
- the subset of users may be selected in any suitable manner. In some examples, the subset of users may belong to a cluster of the plurality of users 204 that share an attribute with the selected user, such as a country and/or language.
- two or more attributes may be applied to select the subset of users, which may be chosen concurrently or successively.
- a first subset of users may be selected that reside in the same country as the selected user, and the first subset may be filtered to form a second subset of users by discarding users of the first subset who have been inactive in ecosystem 202 for more than seven days.
- Recommendations service 224 may comprise instructions executable to apply a weighted matching algorithm to determine one or more similar users of the subset of users that are similar to the selected user. Applying the weighted matching algorithm may comprise applying respective weights to at least a subset of the plurality of attributes to form a weighted subset of attributes, and comparing the weighted subset of attributes to the e subset of attributes associated with the selected user. In one example, the subset of attributes may be compared by performing substring matching. Substring matching may be implemented with any suitable algorithm.
- one or more of the following algorithms may be used to implement substring matching: the Knuth-Morris-Pratt algorithm (e.g., used for prefix-first matching), the Boyer-Moore algorithm, (e.g., used for postfix matching), and the Rabin-Karp algorithm.
- postfix matching e.g., implemented via the Boyer-Moore algorithm
- an initial set of strings may be similar for most users, while the latter portions of relatively large and concatenated strings may often differ among users.
- the weights employed by the weighted matching algorithm may be selected in any suitable manner.
- the weights may be selected or influenced by user input.
- the user input may indicate a set of attributes considered most important or relevant by a user for receiving recommendations.
- a suitable user interface may be provided (e.g., in menu 104 of FIG. 1B ) for receiving such user input.
- a user may indicate via user input that a set of preferred or favorite games, users in a common age group, and/or that usage of a microphone being not required (e.g., if the user is hearing-impaired) is most important for matching. Weights also may be applied based upon factors determined to lead to relevant matches.
- a higher weight may be applied to the games most played by a user, and a lower weight may be applied to the user's geographical location.
- the weighted matching algorithm may be applied such that similar users who share the three most played games are identified, and so that the algorithm preferentially selects users that share the same geographical location over those that do not, regardless of whether the users in the same geographical location share the three most played games.
- the weights employed by the weighted matching algorithm further may be adjusted, either manually or automatically over time, based on the outcome of recommendations performed using the weights.
- the weights may be adjusted in response to user input requesting or declining to access a recommended resource.
- selection of control 120 or 122 may be interpreted as a user input indicating an inclination of the signed-in user to access the recommended resource (e.g., group 110 ).
- highly weighted factors may be weighted even more highly, or otherwise not adjusted.
- a user input declining access to a recommended resource may lead to a reduction of weights of highly weighted factors.
- the outcomes of recommendations e.g., user requests to access or decline recommended resources
- Recommendations service 224 may be further executable to output a recommendation of one or more recommended resources accessible via ecosystem 202 , based at least in part on determining the one or more similar users via the weighted matching algorithm as described above.
- the one or more recommended resources may comprise one or more recommended other users with whom to participate in an online interactive activity (e.g., online game), such as groups 110 and 112 , and users 114 , 116 , and 118 of FIG. 1B .
- the one or more recommended resources may alternatively or additionally comprise one or more digital content items recommended for consumption, such as digital content items selected from digital content 220 .
- recommended digital content item(s) may be those identified in interaction data 222 with which the one or more similar users interacted.
- the output recommendation may be accompanied by information describing criteria on which the recommendation was determined.
- recommended groups 110 and 112 are accompanied by one or more tags that indicate criteria with which the recommendation of the groups was made.
- the output of the recommended resource(s) may comprise a ranking of the recommended resource(s).
- group 110 may be ranked higher than group 112
- user 114 may be ranked higher than users 116 and 118 , as the higher ranked group and user are determined to be of relatively greater similarity to the signed-in user.
- Recommendations service 224 may comprise instructions executable to obtain interaction data 222 from ecosystem 202 and to store the obtained interaction data at a data store 227 communicatively coupled to the recommendations service.
- Data store 227 may be hosted along with recommendations service 224 by a common entity or remote from the recommendations service.
- the interaction data 222 stored at data store 227 may be updated.
- recommendations service 224 may obtain from ecosystem 202 and store interaction data 222 at regular (e.g., daily, weekly, monthly) and/or random intervals, and/or in response to any suitable trigger, such as receiving a recommendation request associated with a user.
- recommendations service 224 may determine up-to-date recommendations that adapt to changing user interactions with ecosystem 202 as they are reflected in the interaction data
- the recommendations service 224 may provide recommendations for third party services.
- FIG. 2 shows a first third party service provider 232 and an mth third party service provider 234 communicatively coupled to recommendations service 224 .
- Third party service provider 232 is further illustrated as communicatively coupled to first user (e.g., via one or both of computing devices 206 and 208 ), for example via a network also used to communicatively couple to ecosystem 202 .
- third party service providers may comprise e-commerce websites, video/music/game providers, application providers, and/or any other suitable content provider outside of ecosystem 202 .
- third party service provider 232 being an e-commerce website
- user 1 may request recommendations for products offered by the third party service provider 232 .
- the third party service provider then may call the recommendations service 224 with the recommendation request, for example, where the third party service provider has information that user 1 uses ecosystem 202 (e.g. by information shared between ecosystem 202 and third party service provider 232 upon user authorization).
- Recommendations service 224 may determine other similar users to user 1 that are also users of third party service provider 1 , and return information on those users to third party service provider 232 .
- the third party service provider 232 then may determine products that the identified other users have bought, rated highly, or otherwise interacted with, and recommend those products to user 1 .
- FIG. 3 shows a flowchart illustrating a method 300 of outputting at a computing system resource recommendations for users of an online ecosystem.
- Method 300 may be implemented as instructions in recommendation module 226 and executed on computing system 224 , both of FIG. 2 , for example. As such, references to FIG. 2 are made throughout the description of method 300 .
- method 300 comprises, for each of a plurality of users of the online ecosystem, obtaining and storing interaction data regarding interactions of the user with one or more digital content items accessible via the online ecosystem.
- the plurality of users may be the plurality of users 204 of ecosystem 202 , for example, and the interaction data may be interaction data 222 regarding interactions with one or more digital content items of digital content 220 .
- the interaction data may comprise, for each of the plurality of users, a plurality of attributes.
- the plurality of attributes may comprise gaining-related data, social-related data, non-gaming data, and/or other suitable data.
- the plurality of attributes may comprise data indicating, for a given user, one or more preferred or favorite multimedia genres, content items, and/or artists.
- obtaining and storing the interaction data may comprise obtaining user-specific non-gaining data for each of the plurality of users as indicated at 306 .
- the non-gaming data may comprise user-related data such as location, age group, profession, and/or other suitable data, for example.
- method 300 comprises, receiving a request associated with a selected user for a recommendation related to resources accessible via the online ecosystem.
- the request may originate at a computing device (e.g., computing device 206 ) associated with the selected user (e.g., in response to user selection of a control selectable to send the request such as control 106 of FIGS. 1A-1B ), at the online ecosystem, at a third party service provider (e.g., service provider 232 ) communicatively coupled to the computing system issuing the request on behalf of the selected user, and/or at any other suitable location.
- a computing device e.g., computing device 206
- service provider 232 communicatively coupled to the computing system issuing the request on behalf of the selected user, and/or at any other suitable location.
- method 300 comprises retrieving, for at least a subset of users of the plurality of users, the interaction data.
- the subset of users may be selected in any suitable manner.
- the subset may be selected according to one or more attributes of the selected user and/or subset of users (e.g., by identifying attributes that are shared), and/or by clustering users of the plurality of users.
- method 300 comprises applying a weighted matching algorithm to determine one or more similar users of the subset of users that are similar to the selected user.
- applying the weighted matching algorithm may comprise applying respective weights to at least a subset of the plurality of attributes to form a weighted subset of attributes.
- the subset of the plurality of attributes and weights may be selected in any suitable manner.
- the subset of the plurality of attributes and/or weights may be selected or influenced by user input.
- the subset of the plurality of attributes and/or weights may be selected by the computing system and/or online ecosystem, and may potentially be selected according to the context of resource recommendation.
- applying the weighted matching algorithm may comprise comparing the weighted subset of attributes to a same subset of attributes associated with the selected user. Comparing the weighted subset of attributes to the same subset of attributes associated with the user may comprise performing substring comparisons between corresponding attribute pairs, for example.
- method 300 comprises, based at least in part on determining the one or more similar users via the weighted matching algorithm, outputting a recommendation for the selected user of one or more recommended resources accessible via the online ecosystem.
- the recommendation may comprise one or more recommended other users with whom to participate in an online interactive activity, which may be presented individually and/or in groups (e.g., as illustrated in FIG. 1B ),
- the recommendation may comprise one or more digital content items recommended for consumption (e.g., identified in interaction data associated with the one or more similar users).
- the recommendation may further comprise information indicating criteria on which the recommendation is based (e.g., in the form of tags 126 of FIG. 1B ), and/or other suitable information.
- the output of the recommendation may be based on criteria other than the determined one or more similar users.
- method 300 may optionally comprise receiving a user input associated with the selected user requesting to access a selected resource of the one or more recommended resources, and at 326 , adjust the respective weights in response.
- the user input may indicate an inclination of the selected user regarding the recommendation.
- the user input may comprise a request to associate with (e.g., match with, message, and/or befriend) one or more recommended other users, and/or consume a digital content item.
- Adjusting the respective weights may comprise increasing the values of the respective weights, and/or using the request to inform subsequent recommendations (e.g., by applying the respective weights with or without adjustment in subsequent recommendations).
- the methods and processes described herein may be tied to a computing system of one or more computing devices.
- such methods and processes may be implemented as a computer-application program or service, an application-programming interface (API), a library, and/or other computer-program product.
- API application-programming interface
- FIG. 4 schematically shows a non-limiting embodiment of a computing system 400 that can enact one or more of the methods and processes described above.
- Computing system 400 is shown in simplified form.
- Computing system 400 may take the form of one or more personal computers, server computers, tablet computers, home-entertainment computers, network computing devices, gaming devices, mobile computing devices, mobile communication devices (e.g., smart phone), and/or other computing devices.
- Computing system 400 includes a logic machine 402 and a storage machine 404 .
- Computing system 400 may optionally include a display subsystem 406 , input subsystem 408 , communication subsystem 410 , and/or other components not shown in FIG. 4 .
- Logic machine 402 includes one or more physical devices configured to execute instructions.
- the logic machine may be configured to execute instructions that are part of one or more applications, services, programs, routines, libraries, objects, components, data structures, or other logical constructs.
- Such instructions may be implemented to perform a task, implement a data type, transform the state of one or more components, achieve a technical effect, or otherwise arrive at a desired result.
- the logic machine may include one or more processors configured to execute software instructions. Additionally or alternatively, the logic machine may include one or more hardware or firmware logic machines configured to execute hardware or firmware instructions. Processors of the logic machine may be single-core or multi-core, and the instructions executed thereon may be configured for sequential, parallel, and/or distributed processing. Individual components of the logic machine optionally may be distributed among two or more separate devices, which may be remotely located and/or configured for coordinated processing. Aspects of the logic machine may be virtualized and executed by remotely accessible, networked computing devices configured in a cloud-computing configuration.
- Storage machine 404 includes one or more physical devices configured to hold instructions executable by the logic machine to implement the methods and processes described herein. When such methods and processes are implemented, the state of storage machine 404 may be transformed e.g., to hold different data.
- Storage machine 404 may include removable and/or built-in devices.
- Storage machine 404 may include optical memory (e.g., CD, DVD, HD-DVD, Blu-Ray Disc, etc.), semiconductor memory RAM, EPROM, EEPROM, etc.), and/or magnetic memory (e.g., hard-disk drive, floppy-disk drive, tape drive, MRAM, etc.), among others.
- Storage machine 404 may include volatile, nonvolatile, dynamic, static, read/write, read-only, random-access, sequential-access, location-addressable, file-addressable, and/or content-addressable devices.
- storage machine 404 includes one or more physical devices.
- aspects of the instructions described herein alternatively may be propagated by a communication medium (e.g., an electromagnetic signal, an optical signal, etc.) that is not held by a physical device for a finite duration.
- a communication medium e.g., an electromagnetic signal, an optical signal, etc.
- logic machine 402 and storage machine 404 may be integrated together into one or more hardware-logic components.
- Such hardware-logic components may include field-programmable gate arrays (FPGAs), program- and application-specific integrated circuits (PASIC/ASICs), program- and application-specific standard products (PSSP/ASSPs), system-on-a-chip (SOC), and complex programmable logic devices (CPLDs), for example.
- FPGAs field-programmable gate arrays
- PASIC/ASICs program- and application-specific integrated circuits
- PSSP/ASSPs program- and application-specific standard products
- SOC system-on-a-chip
- CPLDs complex programmable logic devices
- module may be used to describe an aspect of computing system 400 implemented to perform a particular function.
- a module, program, or engine may be instantiated via logic machine 402 executing instructions held by storage machine 404 . It will be understood that different modules, programs, and/or engines may be instantiated from the same application, service, code block, object, library, routine, API, function, etc. Likewise, the same module, program, and/or engine may be instantiated by different applications, services, code blocks, objects, routines, APIs, functions, etc.
- module may encompass individual or groups of executable files, data files, libraries, drivers, scripts, database records, etc.
- a “service”, as used herein, is an application program executable across multiple user sessions.
- a service may be available to one or more system components, programs, and/or other services.
- a service may run on one or more server-computing devices.
- display subsystem 406 may be used to present a visual representation of data held by storage machine 404 .
- This visual representation may take the form of a graphical user interface (GUI).
- GUI graphical user interface
- Display subsystem 406 may include one or more display devices utilizing virtually any type of technology. Such display devices may be combined with logic machine 402 and/or storage machine 404 in a shared enclosure, or such display devices may be peripheral display devices.
- input subsystem 408 may comprise or interface with one or more user-input devices such as a keyboard, mouse, touch screen, or game controller.
- the input subsystem may comprise or interface with selected natural user input (NUI) componentry.
- NUI natural user input
- Such componentry may be integrated or peripheral, and the transduction and/or processing of input actions may be handled on- or off-board.
- NUI componentry may include a microphone for speech and/or voice recognition; an infrared, color, stereoscopic, and/or depth camera for machine vision and/or gesture recognition; a head tracker, eye tracker, accelerometer, and/or gyroscope for motion detection and/or intent recognition; as well as electric-field sensing componentry for assessing brain activity.
- communication subsystem 410 may be configured to communicatively couple computing system 400 with one or more other computing devices.
- Communication subsystem 410 may include wired and/or wireless communication devices compatible with one or more different communication protocols.
- the communication subsystem may be configured for communication via a wireless telephone network, or a wired or wireless local- or wide-area network.
- the communication subsystem may allow computing system 400 to send and/or receive messages to and/or from other devices via a network such as the Internet.
- Another example provides a computing system comprising a logic machine and a storage machine holding instructions executable by the logic machine to, for each of a plurality of users of an online ecosystem, obtain and store interaction data regarding interactions of the user with one or more digital content items accessible via the online ecosystem, receive a request associated with a selected user for a recommendation related to resources accessible via the online ecosystem, in response to receiving the request, retrieve, for at least a subset of users of the plurality of users, the interaction data, apply a weighted matching algorithm to determine one or more similar users of the subset of users that are similar to the selected user, and based at least in part on determining the one or more similar users via the weighted matching algorithm, output a recommendation for the selected user of one or more recommended resources accessible via the online ecosystem.
- the one or more recommended resources alternatively or additionally may comprise one or more recommended other users of the one or more similar users with whom to participate in an online interactive activity.
- the one or more recommended resources alternatively or additionally may comprise one or more digital content items recommended for consumption.
- the interaction data alternatively or additionally may comprise, for each of the plurality of users, a plurality of attributes regarding the user, and the instructions alternatively or additionally may be executable to apply respective weights to at least a subset of the plurality of attributes to form a weighted subset of attributes, and compare the weighted subset of attributes to a same subset of attributes associated with the selected user.
- the respective weights alternatively or additionally may be selected based at least in part on a user input associated with the selected user.
- the instructions alternatively or additionally may be executable to receive a user input associated with the selected user requesting to access a selected resource of the one or more recommended resources, and in response adjust the respective weights.
- the instructions alternatively or additionally may be executable to update the interaction data.
- the subset of the plurality of users alternatively or additionally may belong to a cluster of the plurality of users that share an attribute with the selected user.
- the one or more digital content items alternatively or additionally may comprise a multimedia content item and/or an application.
- the instructions executable to obtain the interaction data alternatively or additionally may be executable to obtain user-specific non-gaming data for each of the plurality of users.
- Another example provides a computing system comprising a logic machine and a storage machine holding instructions executable by the logic machine to, for each of a plurality of users of an online gaming service, obtain and store interaction data regarding interactions of the user with one or more digital content items accessible via the online gaming service, receive a request associated with a selected user for a recommendation related to resources accessible via the online gaming service, in response to receiving the request, retrieve, for at least a subset of users of the plurality of users, the interaction data, apply a weighted matching algorithm to determine one or more similar users of the subset of users that are similar to the selected user, and based at least in part on determining the one or more similar users via the weighted matching algorithm, output a recommendation for the selected user of one or more recommended resources accessible via the online gaming service.
- the request associated with the selected user alternatively or additionally may be a request for matchmaking with one or more recommended other users of the one or more similar users, and the one or more recommended resources alternatively or additionally may comprise the one or more recommended other users with whom to participate in an online game.
- the one or more recommended resources alternatively or additionally may comprise one or more games.
- the interaction data alternatively or additionally may comprise, for each of the plurality of users, a plurality of attributes regarding the user, and the instructions alternatively or additionally may be executable to apply respective weights to at least a subset of attributes of the interaction data retrieved to form a weighted subset of attributes, and compare the weighted subset of attributes to a same subset of attributes associated with the selected user.
- the instructions alternatively or additionally may be executable to receive a user input associated with the selected user requesting to associate with one or more recommended other users of the one or more similar users, and in response adjust the respective weights.
- the instructions alternatively or additionally may be executable to update the interaction data.
- the subset of the plurality of users alternatively or additionally may belong to a cluster of the plurality of users that share an attribute with the selected user.
- the instructions executable to obtain the interaction data alternatively or additionally may be executable to obtain user-specific non-gaining data for each of the plurality of users.
- Another example provides, on a computing system, a method comprising for each of a plurality of users of an online ecosystem, obtaining and storing interaction data regarding interactions of the user with one or more digital content items accessible via the online ecosystem, receiving a request associated with a selected user for a recommendation related to resources accessible via the online ecosystem, in response to receiving the request, retrieving, for at least a subset of users of the plurality of users, the interaction data, applying a weighted matching algorithm to determine one or more similar users of the subset of users that are similar to the selected user, based at least in part on determining the one or more similar users via the weighted matching algorithm, outputting a recommendation for the selected user of one or more recommended resources accessible via the online ecosystem, and receive a user input associated with the selected user, the user input indicating an inclination of the selected user regarding the recommendation, and in response adjust one or more weights used to apply the weighted matching algorithm.
- the interaction data alternatively or additionally may comprise, for each of the plurality of users, a plurality of attributes regarding the user, and the instructions alternatively or additionally may be executable to apply respective weights to at least a subset of the plurality of attributes to form a weighted subset of attributes, and compare the weighted subset of attributes to a same subset of attributes associated with the selected user.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Data Mining & Analysis (AREA)
- Economics (AREA)
- General Engineering & Computer Science (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Computer Security & Cryptography (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/372,262 US10603594B2 (en) | 2016-12-07 | 2016-12-07 | Online ecosystem-based resource recommendations |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/372,262 US10603594B2 (en) | 2016-12-07 | 2016-12-07 | Online ecosystem-based resource recommendations |
Publications (2)
Publication Number | Publication Date |
---|---|
US20180157981A1 US20180157981A1 (en) | 2018-06-07 |
US10603594B2 true US10603594B2 (en) | 2020-03-31 |
Family
ID=62243257
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/372,262 Active 2038-08-27 US10603594B2 (en) | 2016-12-07 | 2016-12-07 | Online ecosystem-based resource recommendations |
Country Status (1)
Country | Link |
---|---|
US (1) | US10603594B2 (en) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11018949B2 (en) * | 2017-07-14 | 2021-05-25 | Accenture Global Solutions Limited | System for generating an architecture diagram |
US11715042B1 (en) | 2018-04-20 | 2023-08-01 | Meta Platforms Technologies, Llc | Interpretability of deep reinforcement learning models in assistant systems |
US11676220B2 (en) | 2018-04-20 | 2023-06-13 | Meta Platforms, Inc. | Processing multimodal user input for assistant systems |
US11307880B2 (en) | 2018-04-20 | 2022-04-19 | Meta Platforms, Inc. | Assisting users with personalized and contextual communication content |
US10963273B2 (en) | 2018-04-20 | 2021-03-30 | Facebook, Inc. | Generating personalized content summaries for users |
US11886473B2 (en) | 2018-04-20 | 2024-01-30 | Meta Platforms, Inc. | Intent identification for agent matching by assistant systems |
US11694278B2 (en) * | 2018-10-12 | 2023-07-04 | Yahoo Assets Llc | Automatic analysis of digital messaging content method and apparatus |
CN111355765B (en) * | 2018-12-21 | 2022-06-03 | 北京金山云网络技术有限公司 | A method and device for processing and sending network requests |
US11869037B2 (en) * | 2019-05-17 | 2024-01-09 | gStore LLC | Integrating content-delivery platforms into programmatic environments generated by executed applications |
US12067408B2 (en) * | 2019-12-23 | 2024-08-20 | Myplanet Internet Solutions Ltd. | Method and system for recognizing user intent and updating a graphical user interface |
US11260305B2 (en) * | 2020-03-16 | 2022-03-01 | International Business Machines Corporation | User matching based on active game time |
US12014029B2 (en) * | 2021-05-26 | 2024-06-18 | Intuit Inc. | Smart navigation |
GB202218177D0 (en) * | 2022-12-02 | 2023-01-18 | Thinkanalytics Ltd | Affinity profile system and method |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090075738A1 (en) | 2007-09-04 | 2009-03-19 | Sony Online Entertainment Llc | System and method for identifying compatible users |
US7614955B2 (en) | 2004-03-01 | 2009-11-10 | Microsoft Corporation | Method for online game matchmaking using play style information |
US20120072382A1 (en) | 2010-09-21 | 2012-03-22 | Gregory A. Pearson, Inc. | Systems and methods for matching people based on perceived activities |
US20120094762A1 (en) | 2010-10-13 | 2012-04-19 | Sony Computer Entertainment America Inc. | Online process for recommending friends based on game playing habits |
US8342967B2 (en) | 2011-05-24 | 2013-01-01 | Zynga Inc. | Online asynchronous game with player-matching mechanic based on chat characteristics |
US8425331B2 (en) | 2004-12-07 | 2013-04-23 | Microsoft Corporation | User interface for viewing aggregated game, system and personal information |
US8554640B1 (en) * | 2010-08-19 | 2013-10-08 | Amazon Technologies, Inc. | Content completion recommendations |
US20140274362A1 (en) | 2013-03-15 | 2014-09-18 | Anshul Dhawan | Player Recommendation For Playing Online Game |
US20140274404A1 (en) | 2013-03-15 | 2014-09-18 | Andrew Hoskins | Suggesting matches for players of an online multiplayer game based on skills and/or social proximity |
US8898252B2 (en) * | 2011-06-30 | 2014-11-25 | Zynga Inc. | Friend recommendation system based on a non-active social network |
US9011252B2 (en) | 2006-01-20 | 2015-04-21 | Microsoft Technology Licensing, Llc | Extended and editable gamer profile |
WO2016025449A1 (en) | 2014-08-11 | 2016-02-18 | Interdigital Technology Corporation | Dynamic adjustment of user profiles for bundled applications |
US20160184706A1 (en) | 2010-12-03 | 2016-06-30 | Solocron Entertainment, Llc | Collaborative electronic game play employing player classification and aggregation |
US9734453B2 (en) * | 2012-02-29 | 2017-08-15 | British Telecommunications Public Limited Company | Recommender control system, apparatus, method and related aspects |
US10286327B2 (en) * | 2016-10-21 | 2019-05-14 | Electronic Arts Inc. | Multiplayer video game matchmaking system and methods |
-
2016
- 2016-12-07 US US15/372,262 patent/US10603594B2/en active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7614955B2 (en) | 2004-03-01 | 2009-11-10 | Microsoft Corporation | Method for online game matchmaking using play style information |
US8425331B2 (en) | 2004-12-07 | 2013-04-23 | Microsoft Corporation | User interface for viewing aggregated game, system and personal information |
US9011252B2 (en) | 2006-01-20 | 2015-04-21 | Microsoft Technology Licensing, Llc | Extended and editable gamer profile |
US20090075738A1 (en) | 2007-09-04 | 2009-03-19 | Sony Online Entertainment Llc | System and method for identifying compatible users |
US8554640B1 (en) * | 2010-08-19 | 2013-10-08 | Amazon Technologies, Inc. | Content completion recommendations |
US20120072382A1 (en) | 2010-09-21 | 2012-03-22 | Gregory A. Pearson, Inc. | Systems and methods for matching people based on perceived activities |
US20120094762A1 (en) | 2010-10-13 | 2012-04-19 | Sony Computer Entertainment America Inc. | Online process for recommending friends based on game playing habits |
US20160184706A1 (en) | 2010-12-03 | 2016-06-30 | Solocron Entertainment, Llc | Collaborative electronic game play employing player classification and aggregation |
US8342967B2 (en) | 2011-05-24 | 2013-01-01 | Zynga Inc. | Online asynchronous game with player-matching mechanic based on chat characteristics |
US8898252B2 (en) * | 2011-06-30 | 2014-11-25 | Zynga Inc. | Friend recommendation system based on a non-active social network |
US9734453B2 (en) * | 2012-02-29 | 2017-08-15 | British Telecommunications Public Limited Company | Recommender control system, apparatus, method and related aspects |
US20140274362A1 (en) | 2013-03-15 | 2014-09-18 | Anshul Dhawan | Player Recommendation For Playing Online Game |
US20140274404A1 (en) | 2013-03-15 | 2014-09-18 | Andrew Hoskins | Suggesting matches for players of an online multiplayer game based on skills and/or social proximity |
WO2016025449A1 (en) | 2014-08-11 | 2016-02-18 | Interdigital Technology Corporation | Dynamic adjustment of user profiles for bundled applications |
US10286327B2 (en) * | 2016-10-21 | 2019-05-14 | Electronic Arts Inc. | Multiplayer video game matchmaking system and methods |
Non-Patent Citations (3)
Title |
---|
Deligkas, et al., "The Complexity of Weighted Greedy Matching", Retrieved on: Aug. 11, 2016 Available at: https://arxiv.org/pdf/1602.05909.pdf. |
Li, Abner, "Play Games will now use unique Gamer IDs to represent users, claim yours today", Published on: Feb. 18, 2016 Available at: https://9to5google.com/2016/02/18/gamer-id-play-games/. |
Schlup, Christian, "Automatic Game Matching", Retrieved on: Aug. 11, 2016 Available at: http://dcg.ethz.ch/theses/ws0203/OnlineMatching_abstract.pdf. |
Also Published As
Publication number | Publication date |
---|---|
US20180157981A1 (en) | 2018-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10603594B2 (en) | Online ecosystem-based resource recommendations | |
US10129596B2 (en) | Adaptive row selection | |
JP2022095765A (en) | Systems and methods for ranking of cloud-executed mini-games based on tag content and social network content | |
US20210209149A1 (en) | Systems and methods for enhancing search results by way of updating search indices | |
JP7273100B2 (en) | Generation of text tags from game communication transcripts | |
US9268866B2 (en) | System and method for providing rewards based on annotations | |
US9788071B2 (en) | Annotating and indexing broadcast video for searchability | |
US10366132B2 (en) | Delivering customized content using a first party portal service | |
JP6005716B2 (en) | Information processing system, server, program, and information processing method | |
EP3256931A1 (en) | Providing recommendations based on mood and behavioral information from multiple data sources | |
US20140115096A1 (en) | Recommending content based on content access tracking | |
US20170155737A1 (en) | Context-aware information discovery | |
US20240202251A1 (en) | Systems and methods for providing contextual information | |
EP2912820B1 (en) | Buffer ordering based on content access tracking | |
US11771999B2 (en) | Personalized game notifications | |
EP2912570B1 (en) | Multiple buffering orders for digital content item | |
US11122342B2 (en) | Systems and methods for providing contextual information | |
US20240104149A1 (en) | Social media platform with recommendation engine refresh | |
US20150120427A1 (en) | User contribution advertisement suppression | |
CN116761658A (en) | Method and system for dynamic summary queue generation and provisioning | |
JP2018153231A (en) | Server device and computer program used in the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ALBERTSON, DAVID;JENKINS, GUILLAUME;ROCHERS-JETTE, SAMUEL DES;REEL/FRAME:040594/0722 Effective date: 20161205 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT RECEIVED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |