1. Technical Field
The present invention relates generally to an apparatus and method for providing an agent-based game service and, more particularly, to an apparatus and method for providing an agent-based game service, which create a Non Player Character (NPC)-type agent based on input data received from the terminal device of a user and apply the NPC-type agent to a game when providing a game service in which a plurality of artificial intelligence NPCs appear, thus allowing the agent to play the game instead of the user.
2. Description of the Related Art
With the advancements in Internet and game service technology, game services in which intellectual and complicated Artificial Intelligence (AI) Non Player Characters (NPCs) appear in games have been rapidly developed. Computer game services have been developed from a conventional form in which a game program is independently running on a Personal Computer (PC) into the form of an online game service or a server-side game service that allows a user to play the game together with other users over the Internet. However, typical game services have the problem of causing users to become addicted to games, so that the users become excessively attached to such a game, greatly reduce their usual activities, and get impatient and feel uneasy unless they can play the game. One fundamental reason for these problems is that a gamer desires to raise his level in a specific game over a short period of time when playing the game.
A conventional game service such as an online game service is also problematic in that when a game service including intellectual AI game characters is provided, it is difficult to prevent a user from becoming addicted to the game and to continuously switch the game service.
An object of the present invention is to provide an apparatus and method for providing an agent-based game service, which create an NPC-type agent based on input data received from the terminal device of a user and apply the NPC-type agent to a game when providing a game service in which a plurality of AI NPCs appear, thus allowing the agent to play the game instead of the user.
In order to accomplish the above object, the present invention provides an apparatus for providing an agent-based game service, including an input data management unit for collecting pieces of input data from a terminal device of at least one user; a data mining unit for analyzing patterns of the pieces of input data and then generating and updating mined data according to the result of the pattern analysis; and a game agent processing unit for creating, using the mined data, a game agent which will replace the user and play a game instead of the user, and evolving the game agent to correspond to the updated mined data.
Preferably, the apparatus for providing an agent-based game service may further include a management unit for managing game agents while classifying the game agents into user-based game agents which respectively correspond to a plurality of users and pattern-based game agents which are created by analyzing patterns of the user-based game agents and sorting the user-based game agents according to pattern.
Preferably, the management unit may allow a game agent to be created in a relevant game and to replace a relevant user and play the game instead of the user in response to a game agent replacement request received from the user, and allow the game agent to be deleted from the game in response to a game resumption request received from the user.
Further, the present invention provides a method of providing an agent-based game service, including collecting pieces of input data from a terminal device of at least one user; analyzing patterns of the pieces of input data and then generating and updating mined data according to the result of the pattern analysis; creating, using the mined data, a game agent which will replace the user and play a game instead of the user; and evolving the game agent to correspond to the updated mined data.
Preferably, the method for providing an agent-based game service may further include managing game agents while classifying the game agents into user-based game agents which respectively correspond to a plurality of users and pattern-based game agents which are created by analyzing patterns of the user-based game agents and sorting the user-based game agents according to pattern.
Preferably, the managing may further include allowing a game agent to be created in a relevant game and to replace a relevant user and play the game instead of the user in response to a game agent replacement request received from the user; and allowing the game agent to be deleted from the game in response to a game resumption request received from the user.
The above and other objects, features and advantages of the present invention will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings, in which:
The present invention will be described in detail below with reference to the accompanying drawings. In the following description, redundant descriptions and detailed descriptions of known functions and elements that may unnecessarily make the gist of the present invention obscure will be omitted. Embodiments of the present invention are provided to fully describe the present invention to those having ordinary knowledge in the art to which the present invention pertains. Accordingly, in the drawings, the shapes and sizes of elements may be exaggerated for the sake of clearer description.
Prior to describing an apparatus and method for providing an agent-based game service according to an embodiment of the present invention, it should be noted that the term “Non Player Character (NPC)” refers to a game object which operates by itself based on artificial intelligence (AI), rather than a character which operates in a game under the control of a user, and that an NPC may be configured to interact with a user character in the game. When such an NPC can be applied to the game in the form of an agent which operates based on data input by the user, addiction to the game can be prevented. In addition, the present invention can be combined with a new profit model such as the exchange and sale of agents instead of the exchange and sale of existing game items.
Meanwhile, owing to the development of cloud computing-related systems and service technology, technology allowing a server to process various types of software services has recently been activated. Therefore, there is required a service method in which the processing of learning, evolution and artificial intelligence of each agent, which require a large amount of computation, can be processed by the server using the computing technology of the server.
An apparatus 100 for providing an agent-based game service according to an embodiment of the present invention may receive input data from the terminal device 111 of each user over the Internet 112. Further, the apparatus 100 for providing an agent-based game service according to the embodiment of the present invention may be provided on a server side and may provide an agent-based game service using high-performance hardware on the server side. That is, the apparatus 100 for providing an agent-based game service according to the embodiment of the present invention does not perform the artificial intelligence processing and rendering of a game that uses the Central Processing Unit (CPU) and the Graphics Processing Unit (GPU) of the user terminal device 111, by means of a program installed on a separate terminal. Instead, the apparatus 100 for providing an agent-based game service may use a streaming-based game service method which executes game service components, such as the generation of animation and sound, the provision of AI system functionality, and the performance of physical simulation and rendering, by using hardware resources, such as a CPU and a GPU, that are present in the apparatus 100 for providing an agent-based game service provided on the server side, and which provides the resulting video of the relevant game to the user in the form of streams.
Referring to
The input data management unit 101 collects pieces of input data from the terminal devices 111 of respective users. The user terminal devices 111 may include all types of devices capable of running the game and receiving input from respective users, for example, a desktop computer, a laptop computer, a mobile terminal, etc. Each user can use the streaming-based game service provided by the apparatus 100 using his or her terminal device 111 over various types of communication networks such as the wired or wireless Internet. The pieces of input data received from the terminal devices 111 of the respective users may be collected over the various types of communication networks.
The data mining unit 102 analyzes the patterns of the pieces of input data collected by the input data management unit 101, and then generates and updates mined data according to the result of the pattern analysis. For example, the data mining unit 102 classifies and integrates the pieces of input data, and then analyzes the patterns of the input data. In an embodiment, the data mining unit 102 may perform a cleansing procedure for removing repeated or meaningless data from the collected input data. Next, the data mining unit 102 may convert pieces of cleansed data into pieces of data for game agents, classify the pieces of data for individual users, integrate the classified data, and analyze the patterns of the input data to generate mined data.
The game agent processing unit 103 creates a game agent, which will replace a relevant user and play the game instead of the user, using the mined data, and evolves the game agent to correspond to the updated mined data. The game agent processing unit 103 infers the mined data using an inference engine which is a part for performing processing related to artificial intelligence, learns using a well-known learning technique such as the machine learning, and then creates each game agent. Further, the game agent processing unit 103 can evolve the game agent to correspond to the minded data newly updated by the data mining unit 102. The detailed construction of the game agent processing unit 103 will be described in detail later with reference to the attached drawing.
The management unit 104 manages game agents created by the game agent processing unit 103 while classifying the game agents into user-based game agents 121 which respectively correspond to a plurality of users, and pattern-based game agents 122 which are created by analyzing the patterns of the user-based game agents 121 and sorting the user-based game agents 121 according to pattern. The user-based game agents 121 are game agents corresponding to the game sessions of the respective users. The pattern-based game agents 122 are game agents which are sorted according to pattern based on the actions, game score abilities and tactics of the plurality of user-based game agents 121. All of these game agents are managed by the management unit 104, wherein the management unit 104 may be a type of management database (DB).
Further, the management unit 104 may provide the function of allowing a game agent to be created in a game and to replace a relevant user and play the game instead of the user in response to a game agent replacement request received from the user, and allowing the game agent to be deleted from the game in response to a game resumption request received from the user. When the game agent replacement request is received from the user, the management unit 104 can play the game using any one of a user-based game agent 121 and a pattern-based game agent 122 depending on the user's selection.
Further, the management unit 104 can update the state information of the game agent with the progress of the game. The state information of the game agent denotes the state of the game agent that varies with the progress of the game, and may include the location, directionality, movement acceleration, items being held, game score, and the surrounding situation (e.g., safe, cautious, and dangerous situations) of the game agent.
The control unit 105 controls the game agent using the state information provided by the management unit 104. When a game agent replacement request is received from the user, the management unit 104 allows the game agent to be created in the game and to replace the user and play the game instead of the user in response to such a request. The control unit 105 functions to control the playing of the game agent when the game agent plays the game. The detailed construction of the control unit 105 will be described in detail with reference to the attached drawing.
The display unit 106 displays the situation of the progress of the game. The display unit 106 displays the situation of the progress of the game conducted by the game agent, thus allowing the user to monitor the situation of the progress of the game at any time. The situation of the progress of the game displayed on the display unit 106 may be displayed in the form of a streaming video.
Referring to
The movement prediction processing unit 201 predicts a subsequent location to move to on the basis of the location, directionality and acceleration of a relevant game agent in the game. The movement location is primarily predicted in this way, so that the surrounding situation in the game can be sensed and the operation of the game agent can be reflected in the game. Such prediction can be performed using a well-known Kalman filter or an extended Kalman filter.
The learning processing unit 202 causes the game agent to learn methods of coping with respective situations using the state information of the game agent and the historical information of the game. In this case, as the learning methods, a machine learning technique may be used.
The evolution processing unit 203 adds state information different from the state information of the game agent to the state information to update the methods of coping with respective situations, thus evolving the game agent. That is, the evolution processing unit 203 evolves the game agent by adding new state information which was not present previously, rather than using the existing state information of the game agent, thus allowing the game agent to more precisely decide upon its own intention in the game.
The control unit of the apparatus for providing an agent-based game service according to the embodiment of the present invention may process the function of allowing a game agent to spatially move in a game, processing a natural animation, and sensing a surrounding situation by using the internal state information of the game agent (the location, directionality, movement acceleration, items being held, game score and the surrounding situation of the game agent).
Referring to
The movement control unit 301 performs the spatial movement of a game agent using the maximum speed threshold for the movement of the game agent and the maximum conversion speed and an acceleration vector for animation.
The animation control unit 302 creates the motions of the game agent. The animation control unit 302 creates natural motions when the game agent performs motions such as running, jumping or brandishing a weapon.
The situation sensing control unit 303 senses the situation of the game agent using the discrimination of visibility of the game agent. The situation of the game agent may include the number of surrounding enemies, the danger level of an environment (e.g., the level of safety, caution or danger), etc.
Referring to
Next, the patterns of the pieces of input data are analyzed, and then mined data is generated and updated according to the result of the pattern analysis at step 5402.
If the mined data is generated at step S402, a game agent which will play a relevant game instead of the relevant user is created using the mined data at step S403. Further, the game agent is evolved to correspond to the updated mined data at step S404.
Thereafter, when a game agent replacement request is received from the user, the game agent is created in the relevant game, replaces the user and plays the game instead of the user in response to such a request at step S405.
While playing the game, the game agent can be controlled using the state information of the game agent at step 5406. Further, the situation of the progress of the game can be displayed so that it can be monitored by the user at step S407.
When a game resumption request is received from the user while the game is being played, the game agent is deleted from the game in response to such a request at step S408, and the playing of the game by the game agent is terminated.
Since the method for providing an agent-based game service according to the embodiment of the present invention performs a game service process in a manner similar to that of the apparatus for providing an agent-based game service of
Referring to
The agent creation procedure of
Referring to
Thereafter, when a game agent replacement request is received from the user 10 at step S606, the game service provision apparatus on the server side creates a game agent, in which the session information of the user at the time point of the reception of the request is reflected, in the game and duplicates the behavior of the game agent at step S607. Thereafter, when a game agent 20 plays the game at step S608 without the user 10 personally playing the game, the game service provision apparatus 30 provides a relevant game service at step S609. Here, the game agent will have the form of a Non Player Character (NPC). Game agent state information depending on the game played by the game agent 20, that is, information about the location, directionality, movement acceleration, items being held, game score, and the surrounding situation (e.g., safe, cautious and dangerous situations) of the game agent 20, is updated in the management unit. Video related to the game playing performed in the service provision procedure (step S609) may be displayed or not be displayed in the form of a streaming video according to the state of the user (connection or the termination of the connection). Thereafter, when the game resumption request received from the user 10 is input to the game service provision apparatus 30 at step S610, the state and behavior of the game agent being run are reflected in the user session at step S611. After the game agent 20 has been stored in the management unit, it is deleted from the game at step S612. Thereafter, in response to a game play request S613 received from the user 10, the game service provision apparatus 30 again provides the game service starting from step S602 in the same manner at step S614.
Referring to
If it is determined that the request corresponds to a request for replacement by a user-based game agent at step S702, the user is replaced by a user-based game agent, and thereafter the game agent plays the game at step S706. Thereafter, at the same time that the game is played at step S706, the processing of the learning and evolution of the user-based game agent is performed at step S707. Furthermore, in order to reflect data required to create pattern-based game agents, user-based game agents are sorted into pattern-based game agents at step S708.
The above-described agent-based game service provision method, the game agent creation procedure, the flow of the game service, and the processing procedure performed when a game agent replacement request is received from the user, have been described with reference to the flowcharts presented in the drawings. Although the method has been shown and described using a series of blocks to simplify the description, the present invention is not limited to the sequence of the blocks. Some blocks may be performed in a sequence different from that shown and described in the present specification with respect to other blocks, or may be simultaneously performed. Furthermore, various different branches, flow paths and block sequences that achieve the same or similar results can be implemented. Further, all blocks shown in the drawings to implement the method described in the present specification may not be necessarily required.
In accordance with an aspect of the present invention, there can be provided an apparatus and method for providing an agent-based game service, which create an NPC-type agent based on input data received from a user's terminal device and apply the NPC-type agent to a game when a game service in which a plurality of artificial intelligence NPCs appear is executed, so that the agent can play the game instead of the user, thus reducing the time that the user is actually required to play the game.
In accordance with another aspect of the present invention, there can be provided an apparatus and method for providing an agent-based game service, which can also be applied to the simulation of special disaster prevention or the simulation of fights, as well as games.
Although specific embodiments of the present invention have been illustrated and described, it is apparent to those skilled in the art that the technical spirit of the present invention is not limited by the attached drawings and the above description, and various modifications and changes are possible without departing from the spirit and scope of the present invention. It should be understood that these modifications are included in the claims of the present invention without departing from the spirit of the invention.
Number | Date | Country | Kind |
---|---|---|---|
10-2010-0116225 | Nov 2010 | KR | national |
This application claims the benefit of Korean Patent Application No. 10-2010-0116225, filed on Nov. 22, 2010, which is hereby incorporated by reference in its entirety into this application.