US20110218037A1 - System and method for improving personalized search results through game interaction data - Google Patents

System and method for improving personalized search results through game interaction data Download PDF

Info

Publication number
US20110218037A1
US20110218037A1 US12/719,069 US71906910A US2011218037A1 US 20110218037 A1 US20110218037 A1 US 20110218037A1 US 71906910 A US71906910 A US 71906910A US 2011218037 A1 US2011218037 A1 US 2011218037A1
Authority
US
United States
Prior art keywords
user
game
interactive game
user profile
search
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.)
Abandoned
Application number
US12/719,069
Inventor
Vik Singh
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Excalibur IP LLC
Altaba Inc
Original Assignee
Yahoo Inc until 2017
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yahoo Inc until 2017 filed Critical Yahoo Inc until 2017
Priority to US12/719,069 priority Critical patent/US20110218037A1/en
Assigned to YAHOO! INC. reassignment YAHOO! INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SINGH, VIK
Publication of US20110218037A1 publication Critical patent/US20110218037A1/en
Assigned to EXCALIBUR IP, LLC reassignment EXCALIBUR IP, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: YAHOO! INC.
Assigned to YAHOO! INC. reassignment YAHOO! INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: EXCALIBUR IP, LLC
Assigned to EXCALIBUR IP, LLC reassignment EXCALIBUR IP, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: YAHOO! INC.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/67Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F9/00Games not otherwise provided for
    • A63F9/24Electric games; Games using electronic circuits not otherwise provided for
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5546Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history

Definitions

  • the invention described herein generally relates to improving personalized search results. More specifically, the invention is directed towards systems and methods for utilizing interactive user games to increase the relevancy of personalized search results based on collected game interaction data.
  • a primary economical and functional objective of a search engine is to increase the relevancy of search results for a given query. Displaying the most relevant search results first, followed by search results in descending relevancy, can maximize the user experience, increase a user base, and increase advertisement revenue.
  • various techniques involving personalization of search results have been implemented.
  • the primary method of increasing personalized results has been to incorporate user relevancy feedback into the result listings.
  • One common technique includes user-ranking of search results, either directly through a gaming interface or the binary designation of whether a search result was relevant.
  • An example of a binary search option may give the user an option to “like” or “dislike” a result presented with a search query.
  • Another technique is to actively monitor user activity in a general search log, such as to detect if the user re-enters a search using a different search term, examines further search result pages aside from just the first page, or for example if the user selects a particular link and thereby terminates the search session, as this can imply the search result is what the user was looking for.
  • techniques can either be directed to the search engine and/or the search engine data, or can be directed to the user or a group of users. For example, it is common to provide a search interface where a user maintains an account, and hence a user profile. It is common to augment search results based on the user profile.
  • a first technique is user-entered information that the user voluntarily enters when generating the account, such as for example, gender, age, likes, dislikes, etc.
  • a second technique is tracking user activities. For example, when the user is logged in, an engine may track user search activities and formulate this activity for profile information. It is also noted based on user security preferences, tracking information may further include cookies or other types of monitoring elements.
  • the present invention is directed towards systems and methods for using gaming operations to determine personalized content.
  • the system and method includes presenting an interactive game to a user, wherein the user is associated with a user profile and while the user interacts with the interactive game, monitoring user interactions relating to the interactive game.
  • the system and method further includes determining user profile information based on the user interactions, the user interactions including user activities associated with the interactive game and updating the associated user profile with the determined user profile information. Therefore, in response to a user content request, the system and method adjusts content presented to the user, wherein the filtering is based on the user profile information including user profile information from the user interaction with the interactive game.
  • the system and method allows for the collection of user information via gaming applications/gaming interfaces. From this gaming information, user profile information is collected. This profile information is then usable to further personalize electronic search activity.
  • FIG. 1 presents a block diagram depicting a system for improving personalized search results based on game interaction data according to one embodiment of the present invention
  • FIG. 2 presents a block diagram depicting a system for analyzing game interaction data according to one embodiment of the present invention
  • FIG. 3 presents a flow diagram illustrating a method for collecting game interaction data according to one embodiment of the present invention.
  • FIG. 4 presents a flow diagram illustrating a method for processing game interaction data according to one embodiment of the present invention.
  • FIG. 1 presents a block diagram depicting a system for analyzing game data according to one embodiment of the present invention.
  • a plurality of client devices 102 a , 102 b , 102 c are connected to a search engine 106 through network 104 .
  • the search engine 106 is in communication with a game server 108 having a game storage device 110 , the search engine including a game processor 112 , a user database 114 , a web server 116 , and a search database 118 .
  • the search engine 106 may be any suitable physical processing device performing processing operations as described herein, in response to executable instructions.
  • search engine 106 and its components, may comprise a plurality of redundant server devices.
  • the storage elements 110 , 114 , and 118 may be any suitable type of storage device operative to electronically store data therein.
  • storage element 110 , 114 , and 118 may comprise a RAID storage system comprising a plurality of hard disks.
  • the client devices 102 are operative to transmit and receive data from both web server 116 and game server 108 via the search engine 106 .
  • Game server 108 and search engine 106 may comprise a plurality of hardware and software devices operative to handle requests such as HTTP requests or various requests following other protocols.
  • the client device 102 may transmit a request to begin a game to the game server 108 over the network 104 .
  • a request to begin a game may include a game selection via a menu or other type of gaming interface presented through the search engine 106 using any suitable game offering/selection technique recognized by one skilled in the art.
  • the initiation of a game may include the user registering or other activating a user account.
  • the user account may be a default account the user has with the search engine or in another embodiment may be associated with a more general account, such as a social network account by way of example.
  • the game server 108 receives the game request from client devices 102 through the search engine interface.
  • the search engine 106 then loads the appropriate game from game storage 110 .
  • Game storage device 110 may store a variety of types of data relating to games, include a variety of data structures describing a game, such as, game templates representing various game metrics including, but not limited to, game display format, game play rules and various other metrics.
  • game storage device 110 may store substantive game data, such as a variety of questions, puzzles, problems, or other substantive game data, as well as solutions or answers to the data.
  • game storage 110 may organize game data categorically; that is, game storage 110 may associate a topic for a given piece of game data.
  • game data and game metrics may be stored in discrete locations, such that modifications to each may be made independent of the other.
  • the game server 108 After retrieving game data and game metrics, the game server 108 builds the game.
  • the game selection for retrieval may be based on any number of factors, including a progression of types of games for users to play, random selection, user selection, for example.
  • the games are constructive programs that allow for user interaction, consistent with known techniques for games, which can include puzzles, quizzes, trivia, relationship determination, or any other suitable technique for presenting a question or query to a user and receiving a user-generated response.
  • building a game may comprise combining the game data and game metrics into a single, cohesive package for presentation to the user.
  • the game server 108 may build an HTML page containing presentation elements described by the game metrics and questions described by the game data. Additionally, the game server 108 may generate a plurality of interactive event handlers for handling user input; such event handlers may be implemented in JavaScript, ActionScript, VBScript, or various other client side scripting languages known in the art. After building the game, the game server 108 transmits the game to the client device 102 for display thereon.
  • Client device 102 displays a game to a user operating the client device 102 .
  • displaying a game may comprise displaying a webpage containing the game built by the game server 108 .
  • event handlers generated by game sever 108 operate on the client device 102 to handle user input.
  • User input may comprise, but should not be limited to, various input events such as mouse clicks, key presses, or the submission of answers.
  • the event handlers are operative to transmit interaction data back to the game sever 108 .
  • interaction data comprises an indication of a user's answer to a given game question, problem, or puzzle.
  • interaction data may indicate that user selected “true” to a true/false question, or “choice A” for a multiple choice question.
  • Interaction data may further include more complex data depending on the type of game data presented to a user.
  • the interaction data may comprise a feature vector indicating various interaction data such as, the length of time spent playing the game, successful mouse clicks, errant mouse clicks, various answers submitted, etc.
  • interaction data may vary depending on the type of game presented.
  • the game may comprise a complex role playing game (“RPG”) wherein the user answers multiple questions, navigates through a scenario, answers side-mission questions, etc.
  • RPG complex role playing game
  • such a game would gravitate around a predefined theme, previously discussed with respect to game data.
  • a user may be captivated by the game, while simultaneously providing useful input regarding his or her knowledge and search preferences.
  • the gaming data may be related to behavioral data.
  • the aspects of the game may be designated such that behavioral traits can be determined or inferred therefrom.
  • Behavioral data may include data regarding an person's expertise level as one or more topics,
  • client device 102 While a user plays a game, or after a user finishes a game, client device 102 is transmitting data back to the search engine 106 .
  • the interaction data may be provided to the game processor 112 , where this information may be raw user gaming data or can be filtered or otherwise processed data, such as by any suitable processing device including but not limited to the game server 108 or a processor embedded in the search engine 106 not expressly illustrated.
  • game server 108 or any other suitable device may apply various transformations to the interaction data.
  • the game server 108 or any other suitable device, may normalize the interaction data such that interaction data from a plurality of games may appear as identically structured data to game process 112 .
  • Game processor 112 analyzes the interaction data to determine information that can be added to a user-specific profile. In one embodiment, game processor 112 generates a user-specific profile based on the categorization of the associated game. For example, if a user plays a game related to technology, the game processor 112 may load a pre-defined algorithm to transform the interaction data into a meaningful analytic form.
  • game data may comprise a series of true/false questions regarding technology topics in a specific field (e.g., JavaScript programming)
  • the game processor 112 may load an algorithm that calculates the percentage of correct answers to gauge the user's proficiency in the language.
  • game data may comprise a series of questions wherein a user is presented with an image and asked to identify the individual (e.g., a celebrity, or other noted individual). Each image may be associated with a genre of celebrity (e.g., athlete, musician, actor, etc.).
  • the game processor 112 may load an algorithm that first identifies a user's strong knowledge of a genre; that is, the game processor 112 may determine that the user has a strong interest in musicians but not in athletes. The game processor 112 may then record in user database 114 that a user may prefer listings directed towards musical topics. While the preceding games are meant to be illustrative, they are by no means exhaustive. Various other game types represented in game storage 110 may have corresponding analytic algorithms associated with the game varying in complexity. Additionally, multiple algorithms may exist for a single game type, representing the depth of analytical data contained in a game.
  • game processor 112 writes analytical data based on interaction data to user database 114 .
  • user database may associate the analytic data with a given user via an associative relationship between a user (via a user ID) and the analytic data.
  • Search engine 106 further includes a web server 116 and search database 118 . While illustrated for simplicity purposes only as being disposed within the search engine 106 , it is readily understood that these components may be disposed external to the search engine and in operative communication therewith via any suitable networking technique.
  • Server 116 and database 118 may, alone, perform search results processing, as known in the art. However, web server 116 is further coupled to user database 114 . When the web server 116 receives a request for search results, the web server 116 may simultaneously retrieve a user profile (associated with analytic data) associated with the user submitting the request. In one embodiment, prior to retrieving search results from search database 118 , the web server 116 may modify the request sent to the search database 118 based on the retrieved analytic data. Modifying the request may comprise limiting or expanding the scope of the search database request based on the analytic data.
  • the web server 116 may modify a query for “tigers” to include various results specifically related to the Detroit Tigers and not to the animal. For example, the web server 116 may identify current scores, news, and other results geared primarily to the baseball team, not to the animal.
  • the web server 116 transmits this modified request to the search database 118 and receives a set of search results, wherein the web server 116 formats the results into a search results page and transmits the page to the user.
  • FIG. 2 presents a block diagram depicting a system for analyzing game interaction data according to one embodiment of the present invention.
  • a game system 200 comprises a plurality of hardware components including a game server 202 , game data storage 204 , game template storage 206 , game results cache 208 , game processor 210 , and user database 212 .
  • game system 200 may store both game data and game templates in discrete storage locations.
  • game data storage 204 may store a game data including, but not limited to, a variety of questions, puzzles, problems, or other substantive game data as well as solutions or answers to the data.
  • the system 200 comprises game template storage 206 operative to store a plurality of game templates.
  • a game template may comprise data that describes the presentation and/or functional aspects of a game, for example, the flow of a game.
  • Game server 202 is operative to retrieve both game data and game template data in response to receiving a request for a game.
  • game server 202 is further operative to generate a game based on the retrieved data. For example, game server 202 may select a retrieved game template and populate the game template with retrieved game data. The game server 202 transmits the game to a user.
  • interactions are transmitted to the game server 202 .
  • interactions may comprise indications of choices made by a user, such as the input of text answers, the selection of answer choices or objects, etc.
  • the game server 202 functions to manage the incoming stream of interaction data from a user.
  • a stream of interaction data may comprise a plurality of datagrams including, but not limited to, a user ID, interaction data, timestamp, game ID, question ID, etc.
  • Game server 202 may store these incoming interaction streams in game results cache 208 .
  • game server 202 may utilize game results cache 208 as a temporary staging ground for incoming data.
  • game server 202 may act as a pass through device wherein incoming streams are directed to game results cache 208 . Subsequently, the game server 202 may access the game results cache 208 and forward the interaction data to game processor 210 for processing.
  • game processor 210 analyzes the interaction data to determine a user-specific profile. In one embodiment, game processor 210 generates a user-specific profile based on the categorization of the associated game.
  • FIG. 3 presents a flow diagram illustrating a method for collecting game interaction data according to one embodiment of the present invention.
  • the method 300 receives a game request, step 302 .
  • the method 300 may receive a game request via an HTTP or similar request from a client device, such as through a search engine interface or any other suitable interface. Such a request may be received via an HTML or similar interface provided to a user.
  • the system can also know or track the identity of the user, such as being associated with a user identifier or user profile.
  • the method 300 selects game and template data, step 304 .
  • the method 300 may identify the game type from the game request and select the appropriate template and game data.
  • the method 300 may automatically select a game template and data based on predetermined characteristics. For example, the method 300 may identify a game template and game data based on the requesting user's profile.
  • the method 300 then provides the game to a user, step 306 .
  • This step includes presenting an interactive game to the user, where the user is associated with a user profile.
  • providing a game may comprise transmitting the game via HTTP or similar protocols to a user.
  • the user device may then parse the received game to display the game on the user device.
  • step 308 includes monitoring the user interactions relating to the interactive game.
  • the method 300 may provide executable code within the generated game operative to monitor user input.
  • the generated game may comprise JavaScript or similar code operative to detect and handle user input. If the method 300 detects user interaction, the method 300 processes the interaction, step 310 . This step includes determining user profile information based on the user interactions, the user interactions including the user activities associated with the interactive game. In one embodiment, processing an interaction may comprise a plurality of operations including, but not limited to, normalizing the interaction data or performing various pre-parsing operations on the interaction data.
  • the method 300 may process interaction data in response to a user submitting an answer to a game question; for example, the user may enter an answer and submit the answer to a game server.
  • the method 300 may monitor more complex game interactions such as mouse position, mouse clicks, or combinations of mouse and keyboard events.
  • the method 300 determines if the game is over, step 312 .
  • the method 300 may determine a game is over by receiving an indication from the user that he or she wishes to end the game.
  • the method 300 may automatically determine that the game is over. For example, the method 300 may utilize a timer to determine the end of a game based on a pre-defined time limit. If the method 300 determines that the game is not over, the method 300 continues to display the game and monitor for user interaction.
  • the method 300 parses the game interaction data, step 314 .
  • the method 300 may analyze the interaction data to determine a user-specific profile.
  • the method 300 generates a user-specific profile based on the categorization of the associated game. For example, if a user plays a game related to technology, the method 300 may load a pre-defined algorithm to transform the interaction data into a meaningful analytic form.
  • the method 300 may load an algorithm that calculates the percentage of correct answers to gauge the user's proficiency in the language.
  • game data may comprise a series of questions wherein a user is presented with an image and asked to identify the individual (presumably a celebrity, or other noted individual). Each image may be associated with a genre of celebrity (e.g., athlete, musician, actor, etc.).
  • the method 300 may load an algorithm that first identifies a user's strong genre; that is, the method 300 may determine that the user has a strong interest in musicians but not in athletes. The method 300 may then record in a user database that a user may prefer listings directed towards musical topics.
  • the method 300 After generating the analytic data based on the parsed interaction data, the method 300 stores the parsed analytic data to a user profile, step 316 . This step includes updating the associated user profile with the determined user profile information from step 314 . As previously mentioned, the method 300 writes analytical data based on interaction data to a user database.
  • a user database may associate the analytic data with a given user via an associative relationship between a user (via a user ID) and the analytic data.
  • FIG. 4 presents a flow diagram illustrating a method for processing game interaction data according to one embodiment of the present invention.
  • a method 400 receives a search request from a user, step 402 .
  • receiving a search request may comprise receiving an HTTP request containing a search query comprising a plurality of search terms.
  • the method 400 retrieves a plurality of search results, step 404 , and profile data, step 406 .
  • the method 400 may retrieve a plurality of search results according to various methods known in the art for retrieving search results, such as querying a search index and identifying a plurality of search results.
  • the method 400 retrieves profile data corresponding to analytical data gathered in FIG. 3 .
  • analytical data may comprise an indication of a user's interest or proficiency with respect to a given topic or category of information.
  • the method 400 may identify profile data based on user identification contained within the search request. For example, the method 400 may identify a cookie contained within the search request and extracted a user ID from the cookie. Such a user ID allows the method 400 to identify the relevant profile data.
  • the method 400 determines if the results are related to profile data associated with the querying user, step 408 .
  • the method 400 may compare the search query or results with a list of topics or categories associated with a user profile. For example, if a user previously plays a game that identifies that he or she is a fan of Major League Baseball, and specifically a fan of the Detroit Tigers, the user profile may store an indication that the user is a baseball fan, that the user is a Tigers fan, and that the user is interested in sports in general.
  • a user profile may contain a plurality of explicit analytic information (e.g., a user is a fan of the Tigers) as well as implicit analytic data (e.g., a Tigers fan is implicitly interested in baseball and sports, generally).
  • explicit analytic information e.g., a user is a fan of the Tigers
  • implicit analytic data e.g., a Tigers fan is implicitly interested in baseball and sports, generally.
  • the method 400 may modify the search results to reflect the presence of profile data.
  • the method 400 may modify the previously discussed query for “tigers” to include various results specifically related to the Detroit Tigers and not to the animal.
  • the method 400 may identify current scores, news, and other results geared primarily to the baseball team, not to the animal.
  • the method 400 may simply prune the previously retrieved search results based on the profile data.
  • the method 400 may supplement or replace the search results with new, refined search results based on the profile data.
  • the method 400 may re-arrange or re-format the search results based on the retrieved profile data.
  • the user profile information may include behavioral information
  • this information can be used for a variety of different uses, including modifying the search results, as well as modifying the search interface itself. For example, if the gaming information infers a high degree of a proficiency or expertise in an area, the user can be presented with special or modified searching options that would not be readily available or usable by a non-expertise.
  • the method 400 provides the search results to a user, step 410 .
  • the search results provided to a user may comprise modified search results if the method 400 determines that the original results are related to user profile data in step 408 . Alternatively, if the method 400 does not identify user profile data, the method 400 may provide the original search results.
  • modifying the search results may include filtering search results based user profile information and/or re-ranking search result content items based on this profile information.
  • the present system and method allows for improving user profile information based on gaming activities. These gaming activities are then usable for improving search result activities.
  • the gaming operations are interpreted to indicate user characteristics, and then those characteristics are usable by a search engine to refine searching operations.
  • the user is present with the opportunity to play game, where the search engine can then use this information for improving searching activities.
  • FIGS. 1 through 4 are conceptual illustrations allowing for an explanation of the present invention. It should be understood that various aspects of the embodiments of the present invention could be implemented in hardware, firmware, software, or combinations thereof. In such embodiments, the various components and/or steps would be implemented in hardware, firmware, and/or software to perform the functions of the present invention. That is, the same piece of hardware, firmware, or module of software could perform one or more of the illustrated blocks (e.g., components or steps).
  • computer software e.g., programs or other instructions
  • data is stored on a machine readable medium as part of a computer program product, and is loaded into a computer system or other device or machine via a removable storage drive, hard drive, or communications interface.
  • Computer programs also called computer control logic or computer readable program code
  • processors controllers, or the like
  • machine readable medium “computer program medium” and “computer usable medium” are used to generally refer to media such as a random access memory (RAM); a read only memory (ROM); a removable storage unit (e.g., a magnetic or optical disc, flash memory device, or the like); a hard disk; or the like.
  • RAM random access memory
  • ROM read only memory
  • removable storage unit e.g., a magnetic or optical disc, flash memory device, or the like
  • hard disk or the like.

Abstract

The present invention is directed towards systems and methods for using gaming operations to determine personalized content. The system and method includes presenting an interactive game to a user, wherein the user is associated with a user profile and while the user interacts with the interactive game, monitoring user interactions relating to the interactive game. The system and method further includes determining user profile information based on the user interactions, the user interactions including user activities associated with the interactive game and updating the associated user profile with the determined user profile information. Therefore, in response to a user content request, the system and method adjusts content presented to the user, wherein the filtering is based on the user profile information including user profile information from the user interaction with the interactive game.

Description

    COPYRIGHT NOTICE
  • A portion of the disclosure of this patent document contains material, which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever.
  • FIELD OF THE INVENTION
  • The invention described herein generally relates to improving personalized search results. More specifically, the invention is directed towards systems and methods for utilizing interactive user games to increase the relevancy of personalized search results based on collected game interaction data.
  • BACKGROUND OF THE INVENTION
  • As the Internet continues to expand exponentially, the role of search engines has dramatically increased. The use of search engine technology has become a vital tool in the increasing the usefulness of the Internet.
  • A primary economical and functional objective of a search engine is to increase the relevancy of search results for a given query. Displaying the most relevant search results first, followed by search results in descending relevancy, can maximize the user experience, increase a user base, and increase advertisement revenue. As relevancy is of great importance to a search engine, various techniques involving personalization of search results have been implemented. The primary method of increasing personalized results has been to incorporate user relevancy feedback into the result listings. One common technique includes user-ranking of search results, either directly through a gaming interface or the binary designation of whether a search result was relevant. An example of a binary search option may give the user an option to “like” or “dislike” a result presented with a search query. Another technique is to actively monitor user activity in a general search log, such as to detect if the user re-enters a search using a different search term, examines further search result pages aside from just the first page, or for example if the user selects a particular link and thereby terminates the search session, as this can imply the search result is what the user was looking for.
  • In efforts to further advance personalization, techniques can either be directed to the search engine and/or the search engine data, or can be directed to the user or a group of users. For example, it is common to provide a search interface where a user maintains an account, and hence a user profile. It is common to augment search results based on the user profile.
  • Current techniques for populating user profiles are based on two possible techniques. A first technique is user-entered information that the user voluntarily enters when generating the account, such as for example, gender, age, likes, dislikes, etc. A second technique is tracking user activities. For example, when the user is logged in, an engine may track user search activities and formulate this activity for profile information. It is also noted based on user security preferences, tracking information may further include cookies or other types of monitoring elements.
  • While there is a growth in the use of games to improve search engine analytical techniques, there is no technique for utilizing games for updating user profile information, where this profile information is usable for personalizing search. As such, there exists a need for techniques to improve search result personalization through user-gaming activities.
  • SUMMARY OF THE INVENTION
  • The present invention is directed towards systems and methods for using gaming operations to determine personalized content. The system and method includes presenting an interactive game to a user, wherein the user is associated with a user profile and while the user interacts with the interactive game, monitoring user interactions relating to the interactive game. The system and method further includes determining user profile information based on the user interactions, the user interactions including user activities associated with the interactive game and updating the associated user profile with the determined user profile information. Therefore, in response to a user content request, the system and method adjusts content presented to the user, wherein the filtering is based on the user profile information including user profile information from the user interaction with the interactive game.
  • As such, the system and method allows for the collection of user information via gaming applications/gaming interfaces. From this gaming information, user profile information is collected. This profile information is then usable to further personalize electronic search activity.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The invention is illustrated in the figures of the accompanying drawings which are meant to be exemplary and not limiting, in which like references are intended to refer to like or corresponding parts, and in which:
  • FIG. 1 presents a block diagram depicting a system for improving personalized search results based on game interaction data according to one embodiment of the present invention;
  • FIG. 2 presents a block diagram depicting a system for analyzing game interaction data according to one embodiment of the present invention;
  • FIG. 3 presents a flow diagram illustrating a method for collecting game interaction data according to one embodiment of the present invention; and
  • FIG. 4 presents a flow diagram illustrating a method for processing game interaction data according to one embodiment of the present invention.
  • DETAILED DESCRIPTION OF THE EMBODIMENTS
  • In the following description, reference is made to the accompanying drawings that form a part hereof, and in which is shown by way of illustration specific embodiments in which the invention may be practiced. It is to be understood that other embodiments may be utilized and structural changes may be made without departing from the scope of the present invention.
  • FIG. 1 presents a block diagram depicting a system for analyzing game data according to one embodiment of the present invention. As the embodiment of FIG. 1 illustrates, a plurality of client devices 102 a, 102 b, 102 c (collectively referred to as 102) are connected to a search engine 106 through network 104. The search engine 106 is in communication with a game server 108 having a game storage device 110, the search engine including a game processor 112, a user database 114, a web server 116, and a search database 118.
  • Although illustrated as single, discrete components, alternative embodiments exist wherein the illustrated devices may be integrated and/or distributed across multiple hardware devices. Additionally, the devices may be distributed geographically in addition to physically. The search engine 106, and its components, may be any suitable physical processing device performing processing operations as described herein, in response to executable instructions. For example, search engine 106, and its components, may comprise a plurality of redundant server devices. The storage elements 110, 114, and 118 may be any suitable type of storage device operative to electronically store data therein. For example, storage element 110, 114, and 118 may comprise a RAID storage system comprising a plurality of hard disks.
  • In the illustrated embodiment, the client devices 102 are operative to transmit and receive data from both web server 116 and game server 108 via the search engine 106. Game server 108 and search engine 106 may comprise a plurality of hardware and software devices operative to handle requests such as HTTP requests or various requests following other protocols. In the illustrated embodiment, the client device 102 may transmit a request to begin a game to the game server 108 over the network 104. A request to begin a game may include a game selection via a menu or other type of gaming interface presented through the search engine 106 using any suitable game offering/selection technique recognized by one skilled in the art.
  • As discussed in further detail below, the initiation of a game may include the user registering or other activating a user account. For example, the user account may be a default account the user has with the search engine or in another embodiment may be associated with a more general account, such as a social network account by way of example.
  • In one embodiment, the game server 108 receives the game request from client devices 102 through the search engine interface. The search engine 106 then loads the appropriate game from game storage 110.
  • In the illustrated embodiment, various techniques may be used to identify an appropriate game for the client device 102 exemplary techniques are discussed more fully with respect to FIG. 3. Game storage device 110 may store a variety of types of data relating to games, include a variety of data structures describing a game, such as, game templates representing various game metrics including, but not limited to, game display format, game play rules and various other metrics.
  • Additionally, the game storage device 110 may store substantive game data, such as a variety of questions, puzzles, problems, or other substantive game data, as well as solutions or answers to the data. In the illustrated embodiment, game storage 110 may organize game data categorically; that is, game storage 110 may associate a topic for a given piece of game data. Although illustrated as a single component, in alternative embodiments, game data and game metrics may be stored in discrete locations, such that modifications to each may be made independent of the other.
  • After retrieving game data and game metrics, the game server 108 builds the game. The game selection for retrieval may be based on any number of factors, including a progression of types of games for users to play, random selection, user selection, for example. The games are constructive programs that allow for user interaction, consistent with known techniques for games, which can include puzzles, quizzes, trivia, relationship determination, or any other suitable technique for presenting a question or query to a user and receiving a user-generated response.
  • In one embodiment, building a game may comprise combining the game data and game metrics into a single, cohesive package for presentation to the user. For example, the game server 108 may build an HTML page containing presentation elements described by the game metrics and questions described by the game data. Additionally, the game server 108 may generate a plurality of interactive event handlers for handling user input; such event handlers may be implemented in JavaScript, ActionScript, VBScript, or various other client side scripting languages known in the art. After building the game, the game server 108 transmits the game to the client device 102 for display thereon.
  • Client device 102 displays a game to a user operating the client device 102. In one embodiment, displaying a game may comprise displaying a webpage containing the game built by the game server 108. Additionally, event handlers generated by game sever 108 operate on the client device 102 to handle user input. User input may comprise, but should not be limited to, various input events such as mouse clicks, key presses, or the submission of answers. The event handlers are operative to transmit interaction data back to the game sever 108. In the illustrated embodiment, interaction data comprises an indication of a user's answer to a given game question, problem, or puzzle. For example, interaction data may indicate that user selected “true” to a true/false question, or “choice A” for a multiple choice question.
  • Interaction data may further include more complex data depending on the type of game data presented to a user. For example, if the game data comprises an interactive Flash game, the interaction data may comprise a feature vector indicating various interaction data such as, the length of time spent playing the game, successful mouse clicks, errant mouse clicks, various answers submitted, etc. Thus, interaction data may vary depending on the type of game presented. In the preceding example, the game may comprise a complex role playing game (“RPG”) wherein the user answers multiple questions, navigates through a scenario, answers side-mission questions, etc. In one embodiment, such a game would gravitate around a predefined theme, previously discussed with respect to game data. In this example, a user may be captivated by the game, while simultaneously providing useful input regarding his or her knowledge and search preferences.
  • In another embodiment, the gaming data may be related to behavioral data. The aspects of the game may be designated such that behavioral traits can be determined or inferred therefrom. Behavioral data may include data regarding an person's expertise level as one or more topics,
  • While a user plays a game, or after a user finishes a game, client device 102 is transmitting data back to the search engine 106. The interaction data may be provided to the game processor 112, where this information may be raw user gaming data or can be filtered or otherwise processed data, such as by any suitable processing device including but not limited to the game server 108 or a processor embedded in the search engine 106 not expressly illustrated.
  • In one embodiment, game server 108 or any other suitable device, may apply various transformations to the interaction data. For example, the game server 108, or any other suitable device, may normalize the interaction data such that interaction data from a plurality of games may appear as identically structured data to game process 112.
  • Game processor 112 analyzes the interaction data to determine information that can be added to a user-specific profile. In one embodiment, game processor 112 generates a user-specific profile based on the categorization of the associated game. For example, if a user plays a game related to technology, the game processor 112 may load a pre-defined algorithm to transform the interaction data into a meaningful analytic form.
  • For example, if the game data comprises a series of true/false questions regarding technology topics in a specific field (e.g., JavaScript programming), the game processor 112 may load an algorithm that calculates the percentage of correct answers to gauge the user's proficiency in the language. In a more complex example, game data may comprise a series of questions wherein a user is presented with an image and asked to identify the individual (e.g., a celebrity, or other noted individual). Each image may be associated with a genre of celebrity (e.g., athlete, musician, actor, etc.). In this scenario, the game processor 112 may load an algorithm that first identifies a user's strong knowledge of a genre; that is, the game processor 112 may determine that the user has a strong interest in musicians but not in athletes. The game processor 112 may then record in user database 114 that a user may prefer listings directed towards musical topics. While the preceding games are meant to be illustrative, they are by no means exhaustive. Various other game types represented in game storage 110 may have corresponding analytic algorithms associated with the game varying in complexity. Additionally, multiple algorithms may exist for a single game type, representing the depth of analytical data contained in a game.
  • As previously mentioned, game processor 112 writes analytical data based on interaction data to user database 114. In the illustrated embodiment, user database may associate the analytic data with a given user via an associative relationship between a user (via a user ID) and the analytic data.
  • Search engine 106 further includes a web server 116 and search database 118. While illustrated for simplicity purposes only as being disposed within the search engine 106, it is readily understood that these components may be disposed external to the search engine and in operative communication therewith via any suitable networking technique.
  • Server 116 and database 118 may, alone, perform search results processing, as known in the art. However, web server 116 is further coupled to user database 114. When the web server 116 receives a request for search results, the web server 116 may simultaneously retrieve a user profile (associated with analytic data) associated with the user submitting the request. In one embodiment, prior to retrieving search results from search database 118, the web server 116 may modify the request sent to the search database 118 based on the retrieved analytic data. Modifying the request may comprise limiting or expanding the scope of the search database request based on the analytic data.
  • For example, if a user previously plays a game that identifies that he or she is a fan of Major League Baseball, and specifically a fan of the Detroit Tigers, the web server 116 may modify a query for “tigers” to include various results specifically related to the Detroit Tigers and not to the animal. For example, the web server 116 may identify current scores, news, and other results geared primarily to the baseball team, not to the animal. The web server 116 transmits this modified request to the search database 118 and receives a set of search results, wherein the web server 116 formats the results into a search results page and transmits the page to the user.
  • FIG. 2 presents a block diagram depicting a system for analyzing game interaction data according to one embodiment of the present invention. As the embodiment of FIG. 2 illustrates, a game system 200 comprises a plurality of hardware components including a game server 202, game data storage 204, game template storage 206, game results cache 208, game processor 210, and user database 212.
  • As previously discussed, a user may request a game from game server 202. As briefly mentioned, game system 200 may store both game data and game templates in discrete storage locations. As previously discussed, game data storage 204 may store a game data including, but not limited to, a variety of questions, puzzles, problems, or other substantive game data as well as solutions or answers to the data. Additionally, the system 200 comprises game template storage 206 operative to store a plurality of game templates. In the illustrated embodiment, a game template may comprise data that describes the presentation and/or functional aspects of a game, for example, the flow of a game.
  • Game server 202 is operative to retrieve both game data and game template data in response to receiving a request for a game. In the illustrated embodiment, game server 202 is further operative to generate a game based on the retrieved data. For example, game server 202 may select a retrieved game template and populate the game template with retrieved game data. The game server 202 transmits the game to a user.
  • As the user interacts with the game, user interactions are transmitted to the game server 202. As previously discussed, interactions may comprise indications of choices made by a user, such as the input of text answers, the selection of answer choices or objects, etc. The game server 202 functions to manage the incoming stream of interaction data from a user. In one embodiment, a stream of interaction data may comprise a plurality of datagrams including, but not limited to, a user ID, interaction data, timestamp, game ID, question ID, etc. Game server 202 may store these incoming interaction streams in game results cache 208. In the illustrated embodiment, game server 202 may utilize game results cache 208 as a temporary staging ground for incoming data. For example, game server 202 may act as a pass through device wherein incoming streams are directed to game results cache 208. Subsequently, the game server 202 may access the game results cache 208 and forward the interaction data to game processor 210 for processing.
  • As previously discussed, game processor 210 analyzes the interaction data to determine a user-specific profile. In one embodiment, game processor 210 generates a user-specific profile based on the categorization of the associated game.
  • FIG. 3 presents a flow diagram illustrating a method for collecting game interaction data according to one embodiment of the present invention. According to the embodiment that FIG. 3 illustrates, the method 300 receives a game request, step 302. In the illustrated embodiment, the method 300 may receive a game request via an HTTP or similar request from a client device, such as through a search engine interface or any other suitable interface. Such a request may be received via an HTML or similar interface provided to a user. It is also noted that consistent with the game request, the system can also know or track the identity of the user, such as being associated with a user identifier or user profile.
  • The method 300 then selects game and template data, step 304. In one embodiment, the method 300 may identify the game type from the game request and select the appropriate template and game data. In alternative embodiments, the method 300 may automatically select a game template and data based on predetermined characteristics. For example, the method 300 may identify a game template and game data based on the requesting user's profile.
  • The method 300 then provides the game to a user, step 306. This step includes presenting an interactive game to the user, where the user is associated with a user profile. In the illustrated embodiment, providing a game may comprise transmitting the game via HTTP or similar protocols to a user. The user device may then parse the received game to display the game on the user device.
  • After displaying the game and while the user interacts with the interactive game, step 308 includes monitoring the user interactions relating to the interactive game. In one embodiment, the method 300 may provide executable code within the generated game operative to monitor user input. For example, the generated game may comprise JavaScript or similar code operative to detect and handle user input. If the method 300 detects user interaction, the method 300 processes the interaction, step 310. This step includes determining user profile information based on the user interactions, the user interactions including the user activities associated with the interactive game. In one embodiment, processing an interaction may comprise a plurality of operations including, but not limited to, normalizing the interaction data or performing various pre-parsing operations on the interaction data. In the illustrated embodiment, the method 300 may process interaction data in response to a user submitting an answer to a game question; for example, the user may enter an answer and submit the answer to a game server. In alternative embodiments, the method 300 may monitor more complex game interactions such as mouse position, mouse clicks, or combinations of mouse and keyboard events.
  • If the method 300 does not detect user interaction, or after the method 300 processes received interactions, the method 300 determines if the game is over, step 312. In one embodiment, the method 300 may determine a game is over by receiving an indication from the user that he or she wishes to end the game. In alternative embodiments, the method 300 may automatically determine that the game is over. For example, the method 300 may utilize a timer to determine the end of a game based on a pre-defined time limit. If the method 300 determines that the game is not over, the method 300 continues to display the game and monitor for user interaction.
  • If the method 300 determines that the game is over, the method 300 parses the game interaction data, step 314. In one embodiment, the method 300 may analyze the interaction data to determine a user-specific profile. In one embodiment, the method 300 generates a user-specific profile based on the categorization of the associated game. For example, if a user plays a game related to technology, the method 300 may load a pre-defined algorithm to transform the interaction data into a meaningful analytic form.
  • For example, if the game data comprises a series of true/false questions regarding technology topics in a specific field (e.g., JavaScript programming), the method 300 may load an algorithm that calculates the percentage of correct answers to gauge the user's proficiency in the language. In a more complex example, game data may comprise a series of questions wherein a user is presented with an image and asked to identify the individual (presumably a celebrity, or other noted individual). Each image may be associated with a genre of celebrity (e.g., athlete, musician, actor, etc.). In this scenario, the method 300 may load an algorithm that first identifies a user's strong genre; that is, the method 300 may determine that the user has a strong interest in musicians but not in athletes. The method 300 may then record in a user database that a user may prefer listings directed towards musical topics.
  • While the preceding games are meant to be illustrative, they are by no means exhaustive. Various other game types may have corresponding analytic algorithms associated with the game varying in complexity. Additionally, multiple algorithms may exist for a single game type, representing the depth of analytical data contained in a game.
  • After generating the analytic data based on the parsed interaction data, the method 300 stores the parsed analytic data to a user profile, step 316. This step includes updating the associated user profile with the determined user profile information from step 314. As previously mentioned, the method 300 writes analytical data based on interaction data to a user database. In the illustrated embodiment, a user database may associate the analytic data with a given user via an associative relationship between a user (via a user ID) and the analytic data.
  • FIG. 4 presents a flow diagram illustrating a method for processing game interaction data according to one embodiment of the present invention. According to the embodiment FIG. 4 illustrates, a method 400 receives a search request from a user, step 402. In the illustrated embodiment, receiving a search request may comprise receiving an HTTP request containing a search query comprising a plurality of search terms.
  • In response to a search query, the method 400 retrieves a plurality of search results, step 404, and profile data, step 406. In the illustrated embodiment, the method 400 may retrieve a plurality of search results according to various methods known in the art for retrieving search results, such as querying a search index and identifying a plurality of search results. In addition to retrieving search results, the method 400 retrieves profile data corresponding to analytical data gathered in FIG. 3. As previously discussed, analytical data may comprise an indication of a user's interest or proficiency with respect to a given topic or category of information. In the illustrated embodiment, the method 400 may identify profile data based on user identification contained within the search request. For example, the method 400 may identify a cookie contained within the search request and extracted a user ID from the cookie. Such a user ID allows the method 400 to identify the relevant profile data.
  • The method 400 then determines if the results are related to profile data associated with the querying user, step 408. In the illustrated embodiment, the method 400 may compare the search query or results with a list of topics or categories associated with a user profile. For example, if a user previously plays a game that identifies that he or she is a fan of Major League Baseball, and specifically a fan of the Detroit Tigers, the user profile may store an indication that the user is a baseball fan, that the user is a Tigers fan, and that the user is interested in sports in general. As can be seen, a user profile may contain a plurality of explicit analytic information (e.g., a user is a fan of the Tigers) as well as implicit analytic data (e.g., a Tigers fan is implicitly interested in baseball and sports, generally). Although illustrated as occurring after the retrieval of both profile data and search results, alternative embodiments exist wherein the method 400 may first identify search results and query a profile data for relevant analytical data, in contrast to retrieving an entire user profile.
  • If the method 400 determines that the retrieved results are related to the user query, the method 400 may modify the search results to reflect the presence of profile data. In one embodiment, the method 400 may modify the previously discussed query for “tigers” to include various results specifically related to the Detroit Tigers and not to the animal. For example, the method 400 may identify current scores, news, and other results geared primarily to the baseball team, not to the animal. In one embodiment, the method 400 may simply prune the previously retrieved search results based on the profile data. In an alternative embodiment, the method 400 may supplement or replace the search results with new, refined search results based on the profile data. In yet another alternative, the method 400 may re-arrange or re-format the search results based on the retrieved profile data.
  • Where the user profile information may include behavioral information, this information can be used for a variety of different uses, including modifying the search results, as well as modifying the search interface itself. For example, if the gaming information infers a high degree of a proficiency or expertise in an area, the user can be presented with special or modified searching options that would not be readily available or usable by a non-expertise.
  • Finally, the method 400 provides the search results to a user, step 410. The search results provided to a user may comprise modified search results if the method 400 determines that the original results are related to user profile data in step 408. Alternatively, if the method 400 does not identify user profile data, the method 400 may provide the original search results. In one embodiment, modifying the search results may include filtering search results based user profile information and/or re-ranking search result content items based on this profile information.
  • Therefore, the present system and method allows for improving user profile information based on gaming activities. These gaming activities are then usable for improving search result activities. The gaming operations are interpreted to indicate user characteristics, and then those characteristics are usable by a search engine to refine searching operations. The user is present with the opportunity to play game, where the search engine can then use this information for improving searching activities.
  • FIGS. 1 through 4 are conceptual illustrations allowing for an explanation of the present invention. It should be understood that various aspects of the embodiments of the present invention could be implemented in hardware, firmware, software, or combinations thereof. In such embodiments, the various components and/or steps would be implemented in hardware, firmware, and/or software to perform the functions of the present invention. That is, the same piece of hardware, firmware, or module of software could perform one or more of the illustrated blocks (e.g., components or steps).
  • In software implementations, computer software (e.g., programs or other instructions) and/or data is stored on a machine readable medium as part of a computer program product, and is loaded into a computer system or other device or machine via a removable storage drive, hard drive, or communications interface. Computer programs (also called computer control logic or computer readable program code) are stored in a main and/or secondary memory, and executed by one or more processors (controllers, or the like) to cause the one or more processors to perform the functions of the invention as described herein. In this document, the terms “machine readable medium,” “computer program medium” and “computer usable medium” are used to generally refer to media such as a random access memory (RAM); a read only memory (ROM); a removable storage unit (e.g., a magnetic or optical disc, flash memory device, or the like); a hard disk; or the like.
  • Notably, the figures and examples above are not meant to limit the scope of the present invention to a single embodiment, as other embodiments are possible by way of interchange of some or all of the described or illustrated elements. Moreover, where certain elements of the present invention can be partially or fully implemented using known components, only those portions of such known components that are necessary for an understanding of the present invention are described, and detailed descriptions of other portions of such known components are omitted so as not to obscure the invention. In the present specification, an embodiment showing a singular component should not necessarily be limited to other embodiments including a plurality of the same component, and vice-versa, unless explicitly stated otherwise herein. Moreover, applicants do not intend for any term in the specification or claims to be ascribed an uncommon or special meaning unless explicitly set forth as such. Further, the present invention encompasses present and future known equivalents to the known components referred to herein by way of illustration.
  • The foregoing description of the specific embodiments so fully reveals the general nature of the invention that others can, by applying knowledge within the skill of the relevant art(s) (including the contents of the documents cited and incorporated by reference herein), readily modify and/or adapt for various applications such specific embodiments, without undue experimentation, without departing from the general concept of the present invention. Such adaptations and modifications are therefore intended to be within the meaning and range of equivalents of the disclosed embodiments, based on the teaching and guidance presented herein. While various embodiments of the present invention have been described above, it should be understood that they have been presented by way of example, and not limitation. It would be apparent to one skilled in the relevant art(s) that various changes in form and detail could be made therein without departing from the spirit and scope of the invention. Thus, the present invention should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.

Claims (20)

1. A method for using gaming operations to determine personalized content, the method comprising:
presenting an interactive game to a user, wherein the user is associated with a user profile;
while the user interacts with the interactive game, monitoring user interactions relating to the interactive game;
determining user profile information based on the user interactions, the user interactions including user activities associated with the interactive game;
updating the associated user profile with the determined user profile information; and
in response to a user content request, adjusting content presented to the user, wherein the filtering is based on the user profile information including user profile information from the user interaction with the interactive game.
2. The method of claim 1 further comprising:
receiving a user login request prior to presenting the interactive game.
3. The method of claim 1, wherein adjusting the content presented to the user includes at least one of: filtering and re-ranking search result content items.
4. The method of claim 1 further comprising:
associating the user profile with a search engine.
5. The method of claim 4 further comprising:
receiving a search request including a plurality of search terms;
conducting a search operation using the search engine based on the received search request; and
adjusting a search results listing of search result items based on the user profile information that includes the user profile information from the user interaction with the interactive game.
6. The method of claim 1, wherein the interactive game includes gaming activities that indicate topical preferences for the user.
7. The method of claim 6, wherein the topical preferences include degrees of proficiencies regarding a plurality of content topics.
8. A system for using gaming operations to determine personalized content, the system comprising:
a memory device having executable instructions stored thereon; and
a processing device, in response to the executable instructions, operative to:
present an interactive game to a user, wherein the user is associated with a user profile;
while the user interacts with the interactive game, monitor user interactions relating to the interactive game;
determine user profile information based on the user interactions, the user interactions including user activities associated with the interactive game;
update the associated user profile with the determined user profile information; and
in response to a user content request, adjust content presented to the user, wherein the filtering is based on the user profile information including user profile information from the user interaction with the interactive game.
9. The system of claim 8, the processing device, in response to executable instructions, further operative to:
receive a user login request prior to presenting the interactive game.
10. The system of claim 8, wherein adjusting the content presented to the user includes at least one of: filtering and re-ranking search result content items.
11. The system of claim 8, the processing device, in response to executable instructions, further operative to:
associate the user profile with a search engine.
12. The system of claim 11, the processing device, in response to executable instructions, further operative to:
receive a search request including a plurality of search terms;
conduct a search operation using the search engine based on the received search request; and
adjust a search results listing of search result items based on the user profile information that includes the user profile information from the user interaction with the interactive game.
13. The system of claim 8, wherein the interactive game includes gaming activities that indicate topical preferences for the user.
14. The system of claim 13, wherein the topical preferences include degrees of proficiencies regarding a plurality of content topics.
15. Computer readable media comprising program code that when executed by a programmable processor causes execution of a method for using gaming operations to determine personalized content, the media comprising:
computer program code for presenting an interactive game to a user, wherein the user is associated with a user profile;
computer program code for, while the user interacts with the interactive game, monitoring user interactions relating to the interactive game;
computer program code for determining user profile information based on the user interactions, the user interactions including user activities associated with the interactive game;
computer program code for updating the associated user profile with the determined user profile information; and
computer program code for, in response to a user content request, adjusting content presented to the user, wherein the filtering is based on the user profile information including user profile information from the user interaction with the interactive game.
16. The computer readable media of claim 15 further comprising:
computer program code for receiving a user login request prior to presenting the interactive game.
17. The computer readable media of claim 15, wherein adjusting the content presented to the user includes at least one of: filtering and re-ranking search result content items.
18. The computer readable media of claim 15 further comprising:
computer program code for associating the user profile with a search engine.
19. The computer readable media of claim 18 further comprising:
computer program code for receiving a search request including a plurality of search terms;
computer program code for conducting a search operation using the search engine based on the received search request; and
computer program code for adjusting a search results listing of search result items based on the user profile information that includes the user profile information from the user interaction with the interactive game.
20. The computer readable media of claim 15, wherein the interactive game includes gaming activities that indicate topical preferences for the user and the topical preferences include degrees of proficiencies regarding a plurality of content topics.
US12/719,069 2010-03-08 2010-03-08 System and method for improving personalized search results through game interaction data Abandoned US20110218037A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/719,069 US20110218037A1 (en) 2010-03-08 2010-03-08 System and method for improving personalized search results through game interaction data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/719,069 US20110218037A1 (en) 2010-03-08 2010-03-08 System and method for improving personalized search results through game interaction data

Publications (1)

Publication Number Publication Date
US20110218037A1 true US20110218037A1 (en) 2011-09-08

Family

ID=44531799

Family Applications (1)

Application Number Title Priority Date Filing Date
US12/719,069 Abandoned US20110218037A1 (en) 2010-03-08 2010-03-08 System and method for improving personalized search results through game interaction data

Country Status (1)

Country Link
US (1) US20110218037A1 (en)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120310928A1 (en) * 2011-06-01 2012-12-06 Microsoft Corporation Discovering expertise using document metadata in part to rank authors
US20140032545A1 (en) * 2012-04-03 2014-01-30 Python4Fun Identifying web pages of the world wide web relevant to a first file using search terms that reproduce its citations
WO2014052206A1 (en) * 2012-09-28 2014-04-03 Sony Computer Entertainment Inc. Replay and resumption of suspended game
US20150019553A1 (en) * 2013-07-11 2015-01-15 Neura, Inc. Data consolidation mechanisms for internet of things integration platform
US9248374B2 (en) 2012-06-29 2016-02-02 Sony Computer Entertainment Inc. Replay and resumption of suspended game
US9258012B2 (en) 2013-03-15 2016-02-09 Sony Computer Entertainment Inc. Compression of state information for data transfer over cloud-based networks
US9623327B2 (en) 2012-06-29 2017-04-18 Sony Interactive Entertainment Inc. Determining triggers for cloud-based emulated games
US9656163B2 (en) 2012-06-29 2017-05-23 Sony Interactive Entertainment Inc. Haptic enhancements for emulated video game not originally designed with haptic capabilities
US9694276B2 (en) 2012-06-29 2017-07-04 Sony Interactive Entertainment Inc. Pre-loading translated code in cloud based emulated applications
US9707476B2 (en) 2012-09-28 2017-07-18 Sony Interactive Entertainment Inc. Method for creating a mini-game
US9849372B2 (en) 2012-09-28 2017-12-26 Sony Interactive Entertainment Inc. Method and apparatus for improving efficiency without increasing latency in emulation of a legacy application title
US9871865B2 (en) 2013-07-11 2018-01-16 Neura, Inc. Physical environment profiling through internet of things integration platform
US20180025089A1 (en) * 2016-07-25 2018-01-25 Microsoft Technology Licensing, Llc Profile-based search results modification
US9925468B2 (en) 2012-06-29 2018-03-27 Sony Interactive Entertainment Inc. Suspending state of cloud-based legacy applications
US10354443B2 (en) 2012-09-28 2019-07-16 Sony Interactive Entertainment Inc. Adaptive load balancing in software emulation of GPU hardware
US10406429B2 (en) 2012-08-29 2019-09-10 Sony Interactive Entertainment, LLC User-based mini-game generation and distribution
US10990894B2 (en) 2013-07-11 2021-04-27 Neura, Inc. Situation forecast mechanisms for internet of things integration platform
US11013993B2 (en) 2012-09-28 2021-05-25 Sony Interactive Entertainment Inc. Pre-loading translated code in cloud based emulated applications
WO2023088006A1 (en) * 2021-11-17 2023-05-25 北京字节跳动网络技术有限公司 Cloud game interaction method and apparatus, readable medium, and electronic device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020142815A1 (en) * 2000-12-08 2002-10-03 Brant Candelore Method for creating a user profile through game play
US20030216961A1 (en) * 2002-05-16 2003-11-20 Douglas Barry Personalized gaming and demographic collection method and apparatus
US20050216434A1 (en) * 2004-03-29 2005-09-29 Haveliwala Taher H Variable personalization of search results in a search engine
US20080039210A1 (en) * 2006-08-10 2008-02-14 Itv Entertainment Llc Interactive system
US20110218035A1 (en) * 2008-11-14 2011-09-08 Wms Gaming, Inc. Normalizing skill-based wagering games

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020142815A1 (en) * 2000-12-08 2002-10-03 Brant Candelore Method for creating a user profile through game play
US20030216961A1 (en) * 2002-05-16 2003-11-20 Douglas Barry Personalized gaming and demographic collection method and apparatus
US20050216434A1 (en) * 2004-03-29 2005-09-29 Haveliwala Taher H Variable personalization of search results in a search engine
US20080039210A1 (en) * 2006-08-10 2008-02-14 Itv Entertainment Llc Interactive system
US20110218035A1 (en) * 2008-11-14 2011-09-08 Wms Gaming, Inc. Normalizing skill-based wagering games

Cited By (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120310928A1 (en) * 2011-06-01 2012-12-06 Microsoft Corporation Discovering expertise using document metadata in part to rank authors
US9589072B2 (en) * 2011-06-01 2017-03-07 Microsoft Technology Licensing, Llc Discovering expertise using document metadata in part to rank authors
US9110901B2 (en) * 2012-04-03 2015-08-18 Python4Fun, Inc. Identifying web pages of the world wide web having relevance to a first file by comparing responses from its multiple authors
US20140032545A1 (en) * 2012-04-03 2014-01-30 Python4Fun Identifying web pages of the world wide web relevant to a first file using search terms that reproduce its citations
US20140032542A1 (en) * 2012-04-03 2014-01-30 Python4Fun Identifying web pages of the world wide web relevant to a first file based on a relationship tag
US20140040254A1 (en) * 2012-04-03 2014-02-06 Python4Fun Identifying web pages of the world wide web having relevance to a first file by comparing responses from its multiple authors
US20140040253A1 (en) * 2012-04-03 2014-02-06 Python4Fun Identifying and ranking web pages of the world wide web based on relationships identified by authors
US9002833B2 (en) * 2012-04-03 2015-04-07 Python4Fun, Inc. Identifying web pages of the world wide web relevant to a first file based on a relationship tag
US9002834B2 (en) * 2012-04-03 2015-04-07 Python4Fun, Inc. Identifying web pages of the world wide web relevant to a first file using search terms that reproduce its citations
US9081774B2 (en) * 2012-04-03 2015-07-14 Python4Fun, Inc. Identifying and ranking web pages of the world wide web based on relationships identified by authors
US11724205B2 (en) 2012-06-29 2023-08-15 Sony Computer Entertainment Inc. Suspending state of cloud-based legacy applications
US9248374B2 (en) 2012-06-29 2016-02-02 Sony Computer Entertainment Inc. Replay and resumption of suspended game
US10668390B2 (en) 2012-06-29 2020-06-02 Sony Interactive Entertainment Inc. Suspending state of cloud-based legacy applications
US10293251B2 (en) 2012-06-29 2019-05-21 Sony Interactive Entertainment Inc. Pre-loading translated code in cloud based emulated applications
US9623327B2 (en) 2012-06-29 2017-04-18 Sony Interactive Entertainment Inc. Determining triggers for cloud-based emulated games
US9925468B2 (en) 2012-06-29 2018-03-27 Sony Interactive Entertainment Inc. Suspending state of cloud-based legacy applications
US9656163B2 (en) 2012-06-29 2017-05-23 Sony Interactive Entertainment Inc. Haptic enhancements for emulated video game not originally designed with haptic capabilities
US9694276B2 (en) 2012-06-29 2017-07-04 Sony Interactive Entertainment Inc. Pre-loading translated code in cloud based emulated applications
US9717989B2 (en) 2012-06-29 2017-08-01 Sony Interactive Entertainment Inc. Adding triggers to cloud-based emulated games
US10406429B2 (en) 2012-08-29 2019-09-10 Sony Interactive Entertainment, LLC User-based mini-game generation and distribution
US11058947B2 (en) 2012-08-29 2021-07-13 Sony Interactive Entertainment LLC User-based mini-game generation and distribution
US9707476B2 (en) 2012-09-28 2017-07-18 Sony Interactive Entertainment Inc. Method for creating a mini-game
US11013993B2 (en) 2012-09-28 2021-05-25 Sony Interactive Entertainment Inc. Pre-loading translated code in cloud based emulated applications
US11904233B2 (en) 2012-09-28 2024-02-20 Sony Interactive Entertainment Inc. Method and apparatus for improving efficiency without increasing latency in graphics processing
WO2014052206A1 (en) * 2012-09-28 2014-04-03 Sony Computer Entertainment Inc. Replay and resumption of suspended game
US11660534B2 (en) 2012-09-28 2023-05-30 Sony Interactive Entertainment Inc. Pre-loading translated code in cloud based emulated applications
US9849372B2 (en) 2012-09-28 2017-12-26 Sony Interactive Entertainment Inc. Method and apparatus for improving efficiency without increasing latency in emulation of a legacy application title
US10953316B2 (en) 2012-09-28 2021-03-23 Sony Interactive Entertainment Inc. Method and apparatus for improving efficiency without increasing latency in graphics processing
US10350485B2 (en) 2012-09-28 2019-07-16 Sony Interactive Entertainment Inc. Method and apparatus for improving efficiency without increasing latency in emulation of a legacy application title
US10354443B2 (en) 2012-09-28 2019-07-16 Sony Interactive Entertainment Inc. Adaptive load balancing in software emulation of GPU hardware
US10525359B2 (en) 2012-09-28 2020-01-07 Sony Interactive Entertainment Inc. Method for creating a mini-game
US10518182B2 (en) 2012-09-28 2019-12-31 Sony Interactive Entertainment Inc. Method for creating a mini-game
US9258012B2 (en) 2013-03-15 2016-02-09 Sony Computer Entertainment Inc. Compression of state information for data transfer over cloud-based networks
US9658776B2 (en) 2013-03-15 2017-05-23 Sony Interactive Entertainment Inc. Compression of state information for data transfer over cloud-based networks
US9372922B2 (en) * 2013-07-11 2016-06-21 Neura, Inc. Data consolidation mechanisms for internet of things integration platform
US10353939B2 (en) 2013-07-11 2019-07-16 Neura, Inc. Interoperability mechanisms for internet of things integration platform
US9600571B2 (en) 2013-07-11 2017-03-21 Neura, Inc. Interoperability mechanisms for internet of things integration platform
US10990894B2 (en) 2013-07-11 2021-04-27 Neura, Inc. Situation forecast mechanisms for internet of things integration platform
US10171586B2 (en) 2013-07-11 2019-01-01 Neura, Inc. Physical environment profiling through Internet of Things integration platform
US20150019553A1 (en) * 2013-07-11 2015-01-15 Neura, Inc. Data consolidation mechanisms for internet of things integration platform
US9871865B2 (en) 2013-07-11 2018-01-16 Neura, Inc. Physical environment profiling through internet of things integration platform
US20180025089A1 (en) * 2016-07-25 2018-01-25 Microsoft Technology Licensing, Llc Profile-based search results modification
WO2023088006A1 (en) * 2021-11-17 2023-05-25 北京字节跳动网络技术有限公司 Cloud game interaction method and apparatus, readable medium, and electronic device

Similar Documents

Publication Publication Date Title
US20110218037A1 (en) System and method for improving personalized search results through game interaction data
US8612424B2 (en) System and method for optimizing search results ranking through collaborative gaming
US10846461B2 (en) System and method for providing content to users based on interactions by similar other users
US11539992B2 (en) Auto-adjust playback speed and contextual information
US8095582B2 (en) Dynamic search engine results employing user behavior
US20160350428A1 (en) Real time implicit user modeling for personalized search
US9679027B1 (en) Generating related questions for search queries
US20020083179A1 (en) System and method of personalizing communication sessions based on user behavior
US6074299A (en) Internet based search contest
US20160259822A1 (en) Internet based method and system for ranking artists using a popularity profile
US20140372250A1 (en) System and method for providing recommended content
US20050240580A1 (en) Personalization of placed content ordering in search results
US20070073651A1 (en) System and method for responding to a user query
US20070292826A1 (en) System and method for matching readers with books
US8095419B1 (en) Search score for the determination of search quality
US20130024813A1 (en) Method, system, and means for expressing relative sentiments towards subjects and objects in an online environment
US20170153903A1 (en) Computerized system and method for analyzing user interactions with digital content and providing an optimized content presentation of such digital content
WO2010119379A1 (en) A method and system for providing customized content using emotional preference
US11195221B2 (en) System rendering personalized outfit recommendations
US20130332479A1 (en) Inline Discussions in Search Results Around Real-Time Clusterings
US8832083B1 (en) Combining user feedback
Menczer et al. Adaptive assistants for customized e-shopping
WO2009156753A1 (en) Document access monitoring
CN111104583A (en) Live broadcast room recommendation method, storage medium, electronic device and system
US20180047052A1 (en) Systems and methods for delivering relevant content and advertisements

Legal Events

Date Code Title Description
AS Assignment

Owner name: YAHOO| INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SINGH, VIK;REEL/FRAME:024041/0422

Effective date: 20100305

AS Assignment

Owner name: EXCALIBUR IP, LLC, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:YAHOO| INC.;REEL/FRAME:038383/0466

Effective date: 20160418

AS Assignment

Owner name: YAHOO| INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:EXCALIBUR IP, LLC;REEL/FRAME:038951/0295

Effective date: 20160531

AS Assignment

Owner name: EXCALIBUR IP, LLC, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:YAHOO| INC.;REEL/FRAME:038950/0592

Effective date: 20160531

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION