U.S. Pat. No. 11,413,533
METHOD AND APPARATUS FOR RECOMMENDING GAME PLAY STRATEGY
AssigneeNetmarble Corp
Issue DateJanuary 15, 2020
Illustrative Figure
Abstract
Disclosed is a game play strategy recommendation method and apparatus. The game play strategy recommendation method includes recording game play data of a user playing a game, extracting a game play feature from the game play data, determining a pro player of the game corresponding to a game play style of the user from the extracted game play feature using a player recommendation model, and providing a game play strategy of the determined pro player to the user.
Description
DETAILED DESCRIPTION Hereinafter, example embodiments will be described in detail with reference to the accompanying drawings. It should be understood, however, that there is no intent to limit this disclosure to the particular example embodiments disclosed. On the contrary, example embodiments are to cover all modifications, equivalents, and alternatives falling within the scope of the example embodiments. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used herein, the singular forms “a,” “an,” and “the,” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises,” “comprising,” “includes,” and/or “including,” when used herein, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. Unless otherwise defined, all terms, including technical and scientific terms, used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure pertains. Terms, such as those defined in commonly used dictionaries, are to be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art, and are not to be interpreted in an idealized or overly formal sense unless expressly so defined herein. Regarding the reference numerals assigned to the elements in the drawings, it should be noted that the same elements will be designated by the same reference numerals, wherever possible, even though they are shown in different drawings. Also, in the description of embodiments, detailed description of well-known related structures or functions will be omitted when it is deemed that such description will cause ambiguous interpretation of the present ...
DETAILED DESCRIPTION
Hereinafter, example embodiments will be described in detail with reference to the accompanying drawings. It should be understood, however, that there is no intent to limit this disclosure to the particular example embodiments disclosed. On the contrary, example embodiments are to cover all modifications, equivalents, and alternatives falling within the scope of the example embodiments.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used herein, the singular forms “a,” “an,” and “the,” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises,” “comprising,” “includes,” and/or “including,” when used herein, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
Unless otherwise defined, all terms, including technical and scientific terms, used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure pertains. Terms, such as those defined in commonly used dictionaries, are to be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art, and are not to be interpreted in an idealized or overly formal sense unless expressly so defined herein.
Regarding the reference numerals assigned to the elements in the drawings, it should be noted that the same elements will be designated by the same reference numerals, wherever possible, even though they are shown in different drawings. Also, in the description of embodiments, detailed description of well-known related structures or functions will be omitted when it is deemed that such description will cause ambiguous interpretation of the present disclosure.
FIG. 1is a diagram providing an overview of a game system according to an example embodiment.
Referring toFIG. 1, a game system100provides a game service to a plurality of user terminals130through a game server110. The game system100includes the game server110, a network120, and the plurality of user terminals130. The game server110and the plurality of user terminals130may communicate through the network120, for example, an Internet communication network, a wired or wireless local-area communication network, or a wide area data network.
The game server110may perform an authentication process on the user terminal130requesting an access to execute a game program and provide the game service to the authenticated user terminal130. A user to play a game may execute a game program or a game application installed in the user terminal130and send an access request to the game server110. The user terminal130may be a computing device that enables a game play of the user and may be, for example, a cellular phone, a smartphone, a personal computer, a laptop, a notebook, a netbook, a tablet, or a personal digital assistant (PDA). In the present disclosure, the term “user” may be interchangeably used with the term “game user” or “gamer.” The user terminal130may also be referred to as a game client.
The user terminal130may stay connected with the game server110through the network120. The game program of the user terminal130may transmit game control information or game play information associated with a game play of the user to the game server110such that the game server110allows corresponding game play content to be applied to the user terminal130of another user. The game server110may receive various game control information or game play information from the user terminal130and store the received game control information or game play information in a database. Using the game control information, the game server110may provide a synchronized game service to users playing the same game simultaneously.
The game server110may include a game play strategy recommendation apparatus for recommending a game play strategy to a user. The game play strategy recommendation apparatus may analyze a game play style and a game play propensity of the user based on the game play information of the user and recommend a game play strategy corresponding to the game play style of the user to the user. For example, the game play strategy recommendation apparatus may determine a professional player (hereinafter, referred to as “pro player”) having a game play style similar to the game play style of the user and provide a game play strategy of the determined pro player to the user. Here, the pro player may be a pro player of a game played by the user and include both former and current pro players.
For example, when the user plays a chess game, the game play strategy recommendation apparatus may analyze the game play style of the user based on a chess game play of the user and recommend a chess opening of a pro player matching the game play style of the user. Here, the chess opening may indicate, for example, a game play section of about 10 turns including a first turn in an early stage of the chess game.
There are hundreds of chess opening strategies in the chess game, and it is not easy for a user who is new to chess to learn all of the chess opening strategies. The game play strategy recommendation apparatus may determine the game play style of the user and recommend a most suitable chess opening for the game play style, thereby increasing interest and immersion of the user in the game. Also, the game play strategy recommendation apparatus may recommend a game play strategy to the user, thereby effectively preventing the user from leaving the game due to a difficulty of game play or a tiredness of repetitive game play.
Hereinafter, a game play strategy recommendation method performed by the game play strategy recommendation apparatus will be described in detail. For ease of description, the following description will be given of the game play strategy recommendation apparatus and method based on a chess game, for example. However, it is obvious to those skilled in the art that the present disclosure is also applicable to other games such as Janggi, Go, Omok, Othello, Shogi, and the like, for example. Also, the present disclosure may be applied not only to the game system100based on the network120as illustrated inFIG. 1, but also to a personal computer-based game program or a video console-based game program.
FIG. 2is a flowchart illustrating an operation of a method of training a player recommendation model according to an example embodiment. The training method may be performed by a training apparatus described in the present disclosure.
A game play strategy recommendation apparatus may identify a pro player having a game play style similar to a game play style of a user using a player recommendation model. The player recommendation model may be based on a neural network in which parameter values are updated through a learning process of machine learning. The neural network of the player recommendation model may include a plurality of layers consisting of a plurality of artificial neurons. A feature value may be input to the player recommendation model. In response to the feature value being input, the player recommendation model may output an indicator or an index that indicates a pro player. As described above, the training apparatus may train the player recommendation model that identifies the pro player corresponding to the game play style of the user.
Referring toFIG. 2, in operation210, the training apparatus may extract a game play feature from learning data based on previous game play data of a pro player of a game. In terms of the chess game, the learning data may include previous game play data of chess pro players or masters of the chess game. The previous game play data may include an opening strategy recorded in an early stage of a chess game previously played by chess pro players.
The training apparatus may extract at least one feature for acquiring a game play style of the chess game from the learning data. An example of features to be extracted will be described as follows.
(1) The training apparatus may extract a feature representing a number of times that a chess piece of the pro player is caught within a preset number of turns, from the game play data of the pro player. For example, the training apparatus may extract, as the feature, the number of times that chess pieces (e.g., 0 to 5 pieces) are caught within 10 turns in the early stage of the chess game.
(2) The training apparatus may extract a feature representing a number of times that the pro player catches an opponent chess piece within a preset number of turns or a preset period of time, from the game play data of the pro player. Since there are 16 opponent chess pieces in the chess game, the extracted feature may have a value between 0 and 16.
(3) The training apparatus may extract a feature representing a chess piece selected by the pro player at a first turn of the chess game and a position to which the selected chess piece is moved, from the game play data of the pro player. In this instance, there are 20 kinds of possible cases as the first turn.
(4) The training apparatus may extract a feature representing a tie history of the pro player from the learning data including the game play data of the pro player. In this instance, the extracted feature may be designated as “1” in a case of a tie game and “0” in a case of a game other than the tie game.
(5) The training apparatus may extract a feature representing whether chess castling is used, from the game play data of the pro player. The chess castling may be a rule that a chess piece of a queen and a chess piece of a rook are moved simultaneously. In the feature, “1” may be designated when the pro player has used the chess castling and “0” may be designated when the pro player has not used the chess castling. In some cases, in addition to the chess castling, features may be extracted regarding the use of other chess rules such as En passant or promotion.
(6) The training apparatus may extract a feature representing a score based on chess pieces remaining on a chessboard when a preset number of turns elapses after the pro player starts the game, from the game play data of the pro player. For example, based on the game play data of the pro player the training apparatus may calculate, as a score, values of all chess pieces remaining on the chessboard at a 10thturn, a 20thturn, a 30thturn, a 40thturn, and a 50thturn after the pro player starts the game. In this example, the training apparatus may assign a weight of “9” to the chess piece of the queen, a weight of “5” to the chess piece of the rook, a weight of “4” to a chess piece of each of a bishop and a knight, and a weight of “1” to a chess piece of a pawn. As such, the training apparatus may apply weights to chess pieces remaining on the chessboard at a predetermined turn of the game and obtain a total score based on the weights, thereby calculating a score.
In operation220, the training apparatus may train the player recommendation model based on the game play feature extracted in operation210. The training apparatus may perform learning based on the at least one game play feature extracted in operation210. The extracted game feature may be input to the player recommendation model. The player recommendation model may output an indicator of a pro player corresponding to the input game play feature. For example, when the learning is performed on eight pro players, the player recommendation model may output an index indicating a specific pro player among the eight pro players.
When the a game play feature is extracted from game play data of the specific pro player used for learning and input to the player recommendation model, the training apparatus may perform machine learning including a process of adjusting parameter values included in the player recommendation model such that the player recommendation model outputs the index indicating the corresponding pro player. For example, a backpropagation algorithm may be used to adjust the parameter values, and related description will be omitted since the description is outside the scope of the present disclosure.
The training apparatus may perform the aforementioned learning process on game play data of numerous pro players. In this case, the player recommendation model may learn the corresponding pro players and provide a pro player corresponding to a game play of at least one user among the pro players to the user.
As described above, a feature of the chess play may be extracted based on previous chess play records (e.g., chess notation) of the pro players, so that the player recommendation model is trained based on the extracted feature. The trained player recommendation model may be used to analyze a game play style of the user after the user played the game and identify a pro player similar to the game play style of the user.
FIG. 3is a flowchart illustrating an operation of a game play strategy recommendation method according to an example embodiment. The game play strategy recommendation method may be performed by the game play strategy recommendation apparatus described in the present disclosure.
Referring toFIG. 3, in operation310, the game play strategy recommendation apparatus may record game play data of a user playing a game. The game play strategy recommendation apparatus may store game play data obtained, for example, within a preset number of turns or for a preset period of time from a start of the game. The game play strategy recommendation apparatus may track a game play pattern occurring in a game play of the user and store the game play pattern. In terms of a chess game, the game play strategy recommendation apparatus may track a chess opening strategy pattern used in a chess opening of the user and store the chess opening strategy pattern as the game play data.
In operation320, the game play strategy recommendation apparatus may extract a game play feature of the user from the game play data. The game play strategy recommendation apparatus may extract game play feature of the user from the game play data to analyze a game play style of the user. Examples of game play features extracted in a chess game will be described below. The game play strategy recommendation apparatus may extract at least one of the following features.
(1) The game play strategy recommendation apparatus may extract a feature representing a number of times that a chess piece of the user is caught within a preset number of turns, from the game play data of the user.
(2) The game play strategy recommendation apparatus may extract a feature representing a number of times that the user catches an opponent chess piece within a preset number of turns or a preset period of time, from the game play data of the user.
(3) The game play strategy recommendation apparatus may extract a feature representing a chess piece selected by the user at a first turn of the chess game and a position to which the selected chess piece is moved, from the game play data of the user.
(4) The game play strategy recommendation apparatus may extract a feature representing a tie history of the user, from the game play data of the user.
(5) The game play strategy recommendation apparatus may extract a feature representing whether a chess rule such as chess castling, En passant, and promotion is used, from the game play data of the user.
(6) The game play strategy recommendation apparatus may extract a feature representing a score based on chess pieces remaining on a chessboard when a preset number of turns elapses after the user starts the game, from the game play data of the user.
The features of (1) through (6) may respectively correspond to the features of (1) through (6) extracted in the learning process ofFIG. 2, and repeated description will be omitted.
In operation330, the game play strategy recommendation apparatus may determine a pro player of the game corresponding to a game play style of the user from the game play feature extracted in operation320using a player recommendation model. In the chess game, the game play strategy recommendation apparatus may determine a chess pro player corresponding to the game play style of the user using the player recommendation model.
The player recommendation model may be based on a neural network trained through a learning process based on previous game play data of the pro player. For example, the player recommendation model may be previously trained using the learning method as described with reference toFIG. 2.
The player recommendation model may receive the game play feature extracted in operation320as an input and output an indicator for a pro player corresponding to the received game play feature. The game play strategy recommendation apparatus may determine at least one of a first pro player of a game play strategy to be recommended in a case in which the user plays the game before an opponent and a second pro player of a game play strategy to be recommended in a case in which the user plays the game after the opponent, using the player recommendation model.
In operation340, the game play strategy recommendation apparatus may provide a game play strategy of the pro player determined in operation330to the user. When information on the pro player determined in operation330is provided to the user, the user may determine whether to receive the game play strategy of the corresponding pro player, through a user input. Also, information on a plurality of pro players having game play styles similar to the game play style of the user may be provided to the user. In this case, the user may select a desired pro player from the pro players to receive a game play strategy of the selected pro player.
The game play strategy recommendation apparatus may provide the user with a game play strategy up to a preset number of game play turns from a start of the game or a game play strategy for a preset period of time from the start of the game.
When the game is the chess game, a chess pro player corresponding to the game play of the user may be determined by the player recommendation model, so that the game play strategy recommendation apparatus provides a chess opening strategy of the determined chess pro player to the user. The game play strategy recommendation apparatus may provide the user with a name of the determined chess pro player and an opening title representing a chess opening strategy of the determined chess pro player after a chess match of the user and an opponent ends. In response to the user selecting a chess opening strategy of the determined chess pro player, the game play strategy recommendation apparatus may execute an interface for guiding the selected chess opening strategy to the user based on a game play record of the selected chess opening strategy.
As described above, the game play strategy recommendation apparatus may determine a pro player corresponding to the game play of the user based on game play data collected from the user, extract a game play strategy of the determined pro player from a database, and provide the extracted game play strategy to the user. The database may include game play strategy information of a plurality of pro players and also include information on a plurality of game play strategies of a single player.
According to the present disclosure, in the chess game or the like, the game play strategy recommendation apparatus may provide a chess opening strategy suitable for a chess game play propensity of the user, thereby guiding the user to play the chess game more fun and advantageous. Through this, the user may learn a game play strategy suitable for the game play style of the user among various game play strategies, which may increase the user's interest and fun with the game.
FIG. 4is a diagram illustrating a game play strategy recommendation method for a chess game according to an example embodiment.
FIG. 4illustrates a process of recommending a game play strategy matching a game play style of a user in a chess game. A training apparatus may extract a game play feature related to a chess opening of an early stage of the chess game from records410in operation420. Here, the records410may be previous game play data of pro chess players. For example, the training apparatus may extract at least one of the features (1) through (6) ofFIG. 2from the records410as the game play feature.
Thereafter, the training apparatus may train a player recommendation model450based on the extracted game play feature. The training apparatus may adjust parameter values of a neural network included in the player recommendation model450such that the player recommendation model450outputs an indicator indicating a specific pro chess player when the game play feature extracted from a record of the specific pro chess player is input to the player recommendation model450. The training apparatus may perform such learning process on each of a plurality of pro chess players.
When the learning of the player recommendation model450is completed, the game play strategy recommendation apparatus may recommend a game play strategy corresponding to a game play style of the user using the trained player recommendation model450. First, the game play strategy recommendation apparatus may record chess game play data430of the user. The game play strategy recommendation apparatus may extract a game play feature related to the chess opening of the early stage of the chess game from the chess game play data430in operation440. The game play strategy recommendation apparatus may extract at least one of the features of (1) through (6) described with reference toFIG. 3as the game play feature. In this example, a type of the extracted game play feature may be the same as that of the game play feature extracted in operation420.
Thereafter, the game play strategy recommendation apparatus may classify the game play style of the user the trained player recommendation model450in operation460. The game play strategy recommendation apparatus may determine a pro chess player corresponding to the game play style of the user by applying the game play feature extracted in operation440to the player recommendation model450. The game play feature extracted in operation440may be input to the player recommendation model450. The player recommendation model450may output an indictor indicating a specific pro chess player as an output corresponding to the input game play feature.
The game play strategy recommendation apparatus may recommend a chess opening strategy of the pro chess player determined using the player recommendation model450in operation470. When the user requests provision of the chess opening strategy, the game play strategy recommendation apparatus may execute an interface for guiding the corresponding chess opening. In this example, the game play strategy recommendation apparatus may provide a guide for the chess opening strategy to the user on a turn-by-turn basis such that the user learns a specific chess opening strategy of the corresponding pro chess player.
FIG. 5is a diagram illustrating an example of analyzing a game play style of a pro chess player according to an example embodiment.
A table ofFIG. 5shows a game play style analyzed in association with a chess opening strategy for each pro chess player. As shown in the table, a training apparatus may train a player recommendation model based on records which is previous game play data of pro chess players having different game play styles. According to the table, a game play style of Mikhail Tal is technical, aggressive, and intuitive. Also, a game play style of Wilhelm Steinitz is locational, defensive, and calculative.
FIG. 6is a diagram illustrating an example of a recommended chess opening corresponding to a game play style of a user according to an example embodiment.
A table ofFIG. 6shows examples of recommended chess opening strategies matching a game play style of a user. For example, the game play style of the user and game play styles of pro chess players may be classified into eight types [1] through [8]. In this example, a recommended chess opening strategy may be provided for each game play style corresponding to each of the types. The game play strategy recommendation apparatus may recommend, to the user, a chess opening strategy typically used by pro chess players having similar game play propensities to that of the user. Here, the recommended opening strategy may vary depending on whether the user plays first or second (white or black) in the chess game. In the table, encyclopedia of chess openings (ECO) may be an identifier for identifying each chess opening strategy.
FIGS. 7 and 8are diagrams illustrating examples of providing a chess opening strategy to a user according to an example embodiment.
FIG. 7illustrates an example of analyzing a game play style of a user in a chess game and providing a chess opening strategy to be recommended based on an analysis result. For example, a game play strategy recommendation apparatus may record game play data while the user plays a chess game match and suggests, to the user, a chess opening strategy of a pro chess player determined based on the game play data when the chess game match ends.
The game play strategy recommendation apparatus may extract a game play feature related to the chess game from the recorded game play data of the user and apply the extracted game play feature to the player recommendation model, thereby identifying a pro chess player having a most similar game play style to that of the user. The game play strategy recommendation apparatus may provide at least one chess opening strategy of an identified pro chess player to the user. In this example, the game play strategy recommendation apparatus may provide the user with a title of a chess opening strategy of the pro chess player along with a name of the pro chess player. The game play strategy recommendation apparatus may recommend the chess opening strategy for each chess game side (play first (black), play second (white)) for recommendation. In the example ofFIG. 7, “Wilhelm Steinitz” is a name of a pro chess player corresponding to the game play style of the user identified by the player recommendation model. Also, “Vienna Game”, “King's Gambit”, and “Ruy Lopez” are titles of chess openings of “Wilhelm Steinitz” to be recommended to the user.
The user may select a desired chess opening strategy from suggested recommended chess opening strategies, for example, Vienna Game, King's Gambit, and Ruy Lopez. When the user selects a specific chess opening strategy, as illustrated inFIG. 8, an interface for the user to learn the selected chess opening strategy may be executed. In some cases, the game play strategy recommendation apparatus may automatically select a chess opening strategy to be recommended to the user and execute a guide interface.
FIG. 8illustrates a game play screen changing in an order of (a)→(b)→(c)→(d) with time. Once the guide interface is executed, the game screen may be displayed as shown in a screen (a). Thereafter, a guide for a chess opening strategy of a specific pro chess player recommended to the user may be provided. For example, as shown in a screen (b), the recommended chess opening strategy may inform the user that a chess piece810of a pawn is moved to a position815. The position815may be, for example, indicated by an outline or blurred, but the scope of the embodiment is not limited thereto. For example, a guide “select the chess piece810and move to the position815” may be provided to the user.
A screen (c) may be a screen displaying a result obtained when the user moves the chess piece810to the position815at a user's turn according to the guide and an opponent plays a next turn in response thereto. Thereafter, as shown in a screen (d), the game play strategy recommendation apparatus may guide a chess piece manipulation at a second turn according to the chess opening strategy of the specific pro chess player recommended to the user. For example, the user may be guided to select a chess piece820and move the chess piece820to a position825. To learn the chess opening strategy, the user may move the chess piece820to the position825according to the guide. As such, the user may learn a chess piece manipulation flow indicated in the chess opening strategy recommended in sequence, thereby effectively learning an early stage opening strategy of the pro chess player having the most similar game play style to that of the user.
A name of the chess opening strategy provided according to the guide may be displayed in a portion of the screen on which the guide interface is provided. When the user does not play the game in accordance with the provided chess opening strategy, the game play strategy recommendation apparatus may analyze game play data on the game currently played by the user and search for another pro chess pro player corresponding to the game play style of the user. As a search result, when another pro chess pro player corresponding to the game play style of the user is present, the game play strategy recommendation apparatus may provide a chess opening strategy of the corresponding pro chess player to the user. The provided chess opening strategy may be immediately applied to the game play of the user even during the game play. The title of the previous the chess opening strategy on the screen may be changed to a title of the currently provided chess opening strategy.
In some cases, the game play strategy recommendation apparatus may provide ranking information related to a preference or a recommendation count for each chess opening strategy to the user.
FIG. 9is a diagram illustrating a training apparatus according to an example embodiment.
Referring toFIG. 9, a training apparatus900may include a processor910, a memory920, and a communication interface930. The training apparatus900may further include a database940. The training apparatus900may correspond to the training apparatus described in the present disclosure and operate in the game server110ofFIG. 1.
The memory920may be connected to the processor910and store instructions to be executed by the processor910, data to be computed by the processor910, or data processed by the processor910. The memory920may include a non-transitory computer-readable medium such as a fast random access memory and/or non-volatile computer-readable storage medium (e.g., one or more disk storage, flash memory devices, or other non-volatile solid state memory devices).
The communication interface930may provide an interface for communicating with an external device. The communication interface930may communicate with the external device through a wired or wireless network.
The database940may store learning data and information required to operate the training apparatus900. For example, the database940may include previous game play data of a pro player as learning data tor training a player recommendation model and game play data of users.
The processor910may execute functions and instructions to be performed in the training apparatus900and control an overall operation of the training apparatus900.
The processor910may be implemented by using a processing circuitry, for example, hardware/software combination such as a processor executing software, hardware components including logic circuits or a combination thereof. The processing circuitry may include, for example, a central processing unit (CPU), an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a system-on-chip (SoC), a programmable logic unit, a microprocessor, or an application-specific integrated circuit (ASIC), and it is construed as not limiting the scope of the present disclosure.
The processor910may provide a learning interface to a user. The processor910may perform one or more operations related to the operations of the training apparatus described with reference toFIGS. 2 and 4. For example, the processor910may train a player recommendation model that identifies a pro player corresponding to a game play style of the user. The processor910may extract a game play feature from learning data based on previous game play data of a pro player of a game and control the training apparatus900to train the player recommendation model based on the extracted game play feature.
FIG. 10is a diagram illustrating a game play strategy recommendation apparatus according to an example embodiment.
Referring toFIG. 10, a game play strategy recommendation apparatus1000may include a processor1010, a memory1020, and a communication interface1030. The game play strategy recommendation apparatus1000may further include a user input interface1040, a display1050, and a database (not shown). The game play strategy recommendation apparatus1000may correspond to the game play strategy recommendation apparatus described in the present disclosure and operate in the game server110ofFIG. 1.
The memory1020may be connected to the processor1010and store instructions to be executed by the processor1010, data to be computed by the processor1010, or data processed by the processor1010. The memory1020may include a non-transitory computer-readable medium, for example, a fast random access memory and/or non-volatile computer-readable storage medium.
The communication interface1030may provide an interface for communicating with an external device. The communication interface1030may communicate with the external device through a wired or wireless network.
The user input interface1040may receive a user input that is input by a user. In an example embodiment, the user input interface1040may receive a user input including a game play strategy provision request. The display1050may display a screen of a game play executed by the processor1010. For example, the display1050may be a monitor or a touchscreen display.
The processor1010may execute functions or instructions to be performed in the game play strategy recommendation apparatus1000and control an overall operation of the game play strategy recommendation apparatus1000. The processor1010may perform one or more operations related to the game play strategy recommendation method described herein. For example, the processor1010may record game play data of a user playing a game and control the game play strategy recommendation apparatus1000to extract a game play feature from the game play data. Thereafter, the processor1010may determine a pro player corresponding to a game play style of the user acquired from the extracted game play feature using a player recommendation model, and control the game play strategy recommendation apparatus1000to provide a game play strategy of the determined pro player to the user. The processor1010may retrieve game play strategy information of the determined pro player from a database and execute a guide interface for providing the game play strategy information of the pro player.
The processor1010may be implemented by using a processing circuitry, for example, hardware/software combination such as a processor executing software, hardware components including logic circuits or a combination thereof. The processing circuitry may include, for example, a CPU, an ALU, a digital signal processor, a microcomputer, a FPGA, a SoC, a programmable logic unit, a microprocessor, or an ASIC, and it is construed as not limiting the scope of the present disclosure.
The units described herein may be implemented using hardware components and software components. For example, the hardware components may include microphones, amplifiers, band-pass filters, audio to digital convertors, and processing devices. A processing device may be implemented using one or more general-purpose or special purpose computers, such as, for example, a processor, a controller and an arithmetic logic unit, a digital signal processor, a microcomputer, a field programmable array, a programmable logic unit, a microprocessor or any other device capable of responding to and executing instructions in a defined manner. The processing device may run an operating system (OS) and one or more software applications that run on the OS. The processing device also may access, store, manipulate, process, and create data in response to execution of the software. For purpose of simplicity, the description of a processing device is used as singular; however, one skilled in the art will appreciated that a processing device may include multiple processing elements and multiple types of processing elements. For example, a processing device may include multiple processors or a processor and a controller. In addition, different processing configurations are possible, such a parallel processors.
The software may include a computer program, a piece of code, an instruction, or some combination thereof, for independently or collectively instructing or configuring the processing device to operate as desired. Software and data may be embodied permanently or temporarily in any type of machine, component, physical or virtual equipment, computer storage medium or device, or in a propagated signal wave capable of providing instructions or data to or being interpreted by the processing device. The software also may be distributed over network coupled computer systems so that the software is stored and executed in a distributed fashion. In particular, the software and data may be stored by one or more computer readable recording mediums.
The methods according to the above-described embodiments may be recorded, stored, or fixed in one or more non-transitory computer-readable media that includes program instructions to be implemented by a computer to cause a processor to execute or perform the program instructions. The media may also include, alone or in combination with the program instructions, data files, data structures, and the like. The program instructions recorded on the media may be those specially designed and constructed, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of non-transitory computer-readable media include magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD ROM discs and DVDs; magneto-optical media such as optical discs; and hardware devices that are specially configured to store and perform program instructions, such as read-only memory (ROM), random access memory (RAM), flash memory, and the like. Examples of program instructions include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer using an interpreter. The described hardware devices may be configured to act as one or more software modules in order to perform the operations and methods described above, or vice versa.
A number of example embodiments have been described above. Nevertheless, it should be understood that various modifications may be made to these example embodiments. For example, suitable results may be achieved if the described techniques are performed in a different order and/or if components in a described system, architecture, device, or circuit are combined in a different manner and/or replaced or supplemented by other components or their equivalents.
Accordingly, other implementations are within the scope of the following claims.
Claims
- A game play strategy recommendation method performed by a game play strategy recommendation apparatus comprising a processor and a memory to recommend a game play strategy to a user terminal, the method comprising: the processor recording in the memory game play data of a user playing a game at the user terminal, the user terminal being one of a plurality of user terminals that communicate with a game server, the user terminal transmitting game control information and the game play data to the game server, the game server providing a synchronized game service to the plurality of user terminals;the processor controlling the game play strategy recommendation apparatus in extracting a game play feature from the game play data;the processor controlling the game play strategy recommendation apparatus in determining a pro player of the game corresponding to a game play style of the user from the extracted game play feature using a player recommendation model, the player recommendation model comprising a neural network that has been trained based on previous game play data of the pro player and by adjusting parameter values of the neural network based on the previous game play data, the determining comprising the neural network receiving the game play feature and outputting an indicator for the pro player corresponding to the received game play feature;the processor controlling the game play strategy recommendation apparatus in providing a game play strategy of the determined pro player to the user terminal;and wherein the game is a chess game, and the providing of the game play strategy comprises providing, to the user terminal, a name of the determined pro player and an opening title representing a chess opening strategy of the determined pro player after a chess match of the user and an opponent ends.
- The game play strategy recommendation method of claim 1, wherein the providing of the game play strategy comprises: providing, to the user terminal, the game play strategy up to a preset number of game play turns from a start of the game or the game play strategy for a preset period of time from the start of the game.
- The game play strategy recommendation method of claim 1, wherein the game is a chess game, and the providing of the game play strategy comprises: executing, in response to the user selecting a chess opening strategy of the determined pro player, an interface for guiding the selected chess opening strategy to the user based on a game play record of the selected chess opening strategy.
- The game play strategy recommendation method of claim 1, wherein the determining of the pro player comprises: determining at least one of a first pro player of the game play strategy to be recommended in a case in which the user plays the game before an opponent and a second pro player of the game play strategy to be recommended in a case in which the user plays the game after the opponent.
- The game play strategy recommendation method of claim 1, wherein the game is a chess game, the determining of the pro player comprises: determining a chess pro player corresponding to the game play style of the user, and the providing of the game play strategy comprises: providing a chess opening strategy of the determined chess pro player to the user.
- The game play strategy recommendation method of claim 1, wherein the game is a chess game, and the extracting of the game play feature comprises: extracting, from the game play data of the user, at least one of a feature representing a number of times that a chess piece of the user is caught within a preset number of turns, a feature representing a number of times that the user catches an opponent chess piece within a preset number of turns or a preset period of time, and a feature representing a chess piece selected by the user at a first turn of the chess game and a position to which the selected chess piece is moved.
- The game play strategy recommendation method of claim 1, wherein the game is a chess game, and the extracting of the game play feature comprises: extracting, from the game play data of the user, at least one of a feature representing a tie history of the user, a feature representing whether chess castling is used, and a feature representing a score based on chess pieces remaining on a chessboard when a preset number of turns elapses after the user starts the game.
- The game play strategy recommendation method of claim 1, wherein the player recommendation model receives the extracted game play feature as an input and outputs an indicator for the pro player corresponding to the received game play feature.
- The game play strategy recommendation method of claim 1, wherein the player recommendation model comprises a neural network trained through a learning process based on previous game play data of the pro player.
- A non-transitory computer-readable medium comprising a program for instructing a processor to perform a game play strategy recommendation method by: the processor recording in the memory game play data of a user playing a game at the user terminal, the user terminal being one of a plurality of user terminals that communicate with a game server, the user terminal transmitting game control information and the game play data to the game server, the game server providing a synchronized game service to the plurality of user terminals;the processor controlling the game play strategy recommendation apparatus in extracting a game play feature from the game play data;the processor controlling the game play strategy recommendation apparatus in determining a pro player of the game corresponding to a game play style of the user from the extracted game play feature using a player recommendation model, the player recommendation model comprising a neural network that has been trained based on previous game play data of the pro player and by adjusting parameter values of the neural network based on the previous game play data, the determining comprising the neural network receiving the game play feature and outputting an indicator for the pro player corresponding to the received game play feature;the processor controlling the game play strategy recommendation apparatus in providing a game play strategy of the determined pro player to the user terminal;and wherein the game is a chess game, and the providing of the game play strategy comprises providing, to the user terminal, a name of the determined pro player and an opening title representing a chess opening strategy of the determined pro player after a chess match of the user and an opponent ends.
- A game play strategy recommendation apparatus comprising: a memory;and a processor, wherein the memory comprises instructions to be executed by the processor, and when the instructions are executed by the processor, the processor is configured to: record in the memory game play data of a user playing a game at a user terminal, the user terminal being one of a plurality of user terminals that communicate with a game server, the user terminal transmitting game control information and the game play data to the game server, the game server providing a synchronized game service to the plurality of user terminals;control the game play strategy recommendation apparatus to extract a game play feature from the game play data;control the game play strategy recommendation apparatus to determine a pro player of the game corresponding to a game play style of the user from the extracted game play feature using a player recommendation model, the player recommendation model comprising a neural network that has been trained based on previous game play data of the pro player and by adjusting parameter values of the neural network based on the previous game play data, the determining comprising the neural network receiving the game play feature and outputting an indicator for the pro player corresponding to the received game play feature;control the game play strategy recommendation apparatus to control the game play strategy recommendation apparatus to provide a game play strategy of the determined pro player to the user;and wherein the game is a chess game, and the processor is configured to control the game play strategy recommendation apparatus to provide the user terminal with a name of the determined pro player and an opening title representing a chess opening strategy of the determined pro player after a chess match of the user and an opponent ends.
- The game play strategy recommendation apparatus of claim 11, wherein the game is a chess game, and the processor is configured to control the game play strategy recommendation apparatus to execute, in response to the user selecting a chess opening strategy of the determined pro player, an interface for guiding the selected chess opening strategy to the user terminal based on a game play record of the selected chess opening strategy.
- The game play strategy recommendation apparatus of claim 11, wherein the processor is configured to determine at least one of a first pro player of a game play strategy to be recommended in a case in which the user plays the game before an opponent and a second pro player of a game play strategy to be recommended in a case in which the user plays the game after the opponent.
Disclaimer: Data collected from the USPTO and may be malformed, incomplete, and/or otherwise inaccurate.