KR20060020004A - Game difficulty control method for user interacting using artificial intelligence technique - Google Patents

Game difficulty control method for user interacting using artificial intelligence technique Download PDF

Info

Publication number
KR20060020004A
KR20060020004A KR1020040068724A KR20040068724A KR20060020004A KR 20060020004 A KR20060020004 A KR 20060020004A KR 1020040068724 A KR1020040068724 A KR 1020040068724A KR 20040068724 A KR20040068724 A KR 20040068724A KR 20060020004 A KR20060020004 A KR 20060020004A
Authority
KR
South Korea
Prior art keywords
game
difficulty
user
applying
adaptability
Prior art date
Application number
KR1020040068724A
Other languages
Korean (ko)
Other versions
KR100718334B1 (en
Inventor
엄상원
김대현
김태용
최종수
Original Assignee
학교법인 중앙대학교
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 학교법인 중앙대학교 filed Critical 학교법인 중앙대학교
Priority to KR1020040068724A priority Critical patent/KR100718334B1/en
Publication of KR20060020004A publication Critical patent/KR20060020004A/en
Application granted granted Critical
Publication of KR100718334B1 publication Critical patent/KR100718334B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F11/00Game accessories of general use, e.g. score counters, boxes
    • A63F11/0074Game concepts, rules or strategies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F11/00Game accessories of general use, e.g. score counters, boxes
    • A63F11/0074Game concepts, rules or strategies
    • A63F2011/0076Game concepts, rules or strategies with means for changing the level of difficulty

Abstract

본 발명은 전자 정보 기술에 관한 것으로, 특히 게임 개발 분야에 관한 것이며, 더 자세히는 인공지능기법을 이용한 사용자 상호작용 게임 난이도 조절방법에 관한 것이다. 본 발명은 사용자의 게임 플레이 숙련도에 따라 효과적인 게임의 난이도 조절이 가능한 사용자 상호작용 게임 난이도 조절방법을 제공하는데 그 목적이 있다. 본 발명에서는 인공지능기법의 하나인 유전자 알고리즘(Genetic Algorithm)을 이용하여 게임을 진행하는 사용자의 성향 및 게임에 대한 적응도를 판단하고 그에 따라 실시간으로 사용자의 수준에 맞도록 게임의 난이도를 조절함으로써, 사용자 친화적으로 게임을 개발하여 초보자에게는 쉬운 난이도를, 숙련자에게는 보다 어려운 난이도를 제공할 수 있도록 한다. 이 경우, 사용자의 흥미를 높여 게임의 라이프 사이클 연장을 기대할 수 있다.TECHNICAL FIELD The present invention relates to electronic information technology, and more particularly, to the field of game development, and more particularly, to a method for controlling user interaction game difficulty using artificial intelligence. An object of the present invention is to provide a user interactive game difficulty control method that can effectively adjust the difficulty of the game according to the user's game play proficiency. In the present invention, by using the genetic algorithm (Genetic Algorithm) of the artificial intelligence technique to determine the user's propensity and adaptation to the game progress by adjusting the difficulty of the game to match the user's level in real time accordingly In addition, the game is developed in a user-friendly manner to provide easy difficulty for beginners and more difficult for experienced users. In this case, it is possible to increase the user's interest and extend the life cycle of the game.

게임, 난이도 조절, 인공지능기법, 사용자 상호작용, 유전자 알고리즘Game, Difficulty Control, Artificial Intelligence, User Interaction, Genetic Algorithm

Description

인공지능기법을 이용한 사용자 상호작용 게임 난이도 조절방법{GAME DIFFICULTY CONTROL METHOD FOR USER INTERACTING USING ARTIFICIAL INTELLIGENCE TECHNIQUE} GAME DIFFICULTY CONTROL METHOD FOR USER INTERACTING USING ARTIFICIAL INTELLIGENCE TECHNIQUE}             

도 1은 본 발명의 일 실시예에 따른 인공지능기법을 이용한 사용자 상호작용 게임 난이도 조절 과정을 나타낸 순서도.1 is a flow chart illustrating a process of adjusting a user difficulty game difficulty using an artificial intelligence technique according to an embodiment of the present invention.

도 2는 테트리스 게임에서 발생되는 조각의 순서를 예시한 도면.2 is a diagram illustrating the order of pieces generated in the Tetris game.

도 3은 테트리스 게임보드를 예시한 도면.3 illustrates a Tetris gameboard.

도 4는 적합도에 따른 B/T(조각 발생당 빈 블록의 수)의 그래프.4 is a graph of B / T (number of free blocks per piece occurrence) according to goodness of fit.

도 5a는 본 발명을 적용하여 무작위 사용자를 대상으로 한 실험에서, 사용자가 제거한 라인 수에 대한 결과를 나타낸 그래프.Figure 5a is a graph showing the results for the number of lines removed by the user in the experiment for the random users to apply the present invention.

도 5b는 본 발명을 적용하여 무작위 사용자를 대상으로 한 실험에서, 사용자가 플레이 하는 동안 발생한 총 조각의 수를 나타낸 그래프.5B is a graph showing the total number of pieces generated while a user plays in an experiment with a random user applying the present invention.

도 6a는 본 발명을 적용하여 초보 그룹과 숙련 그룹을 대상으로 한 실험에서, 사용자가 제거한 라인 수를 나타낸 그래프.Figure 6a is a graph showing the number of lines removed by the user in the experiments for the novice group and the skilled group applying the present invention.

도 6b는 본 발명을 적용하여 초보 그룹과 숙련 그룹을 대상으로 한 실험에서, 사용자가 플레이 하는 동안 발생한 총 조각의 수를 나타낸 그래프.FIG. 6B is a graph showing the total number of pieces generated while a user plays in an experiment involving a novice group and a skilled group applying the present invention. FIG.

도 7은 본 발명을 적용하여 돌연변이율을 변화시킨 실험에서, 사용자가 플레이 하는 동안 발생한 총 조각의 수를 나타낸 그래프.7 is a graph showing the total number of pieces generated while a user plays in an experiment in which the mutation rate is changed by applying the present invention.

본 발명은 전자 정보 기술에 관한 것으로, 특히 게임 개발 분야에 관한 것이며, 더 자세히는 인공지능기법을 이용한 사용자 상호작용 게임 난이도 조절방법에 관한 것이다.TECHNICAL FIELD The present invention relates to electronic information technology, and more particularly, to the field of game development, and more particularly, to a method for controlling user interaction game difficulty using artificial intelligence.

최근 규모면에서의 급격한 성장으로 각광을 받고 있는 게임산업은 고화질 그래픽과 네트워킹 개선을 위한 연구에 그 주안점을 두고 있다. 고화질 그래픽의 경우 처리능력이나 성능이 비약적으로 발전하여 이제는 기술 발전의 한계에 다다른 것으로 보여짐에 따라, 게임에 있어 또 하나의 중요 요소인 게임의 네트워킹에 관심이 모아지고 있다.Recently, the game industry, which has been in the spotlight due to the rapid growth in size, is focused on research for improving high definition graphics and networking. In the case of high-definition graphics, the processing power or performance has been greatly improved, and now it is seen that the limit of technological development is being reached. Therefore, attention is focused on the networking of the game, which is another important factor in the game.

현재 대부분의 청장년들은 상당히 게임에 익숙해 있으며, 게임의 라이프 사이클(Life cycle)은 점점 더 짧아져 가고 있는 실정이다. 이는 통상적으로 사용자가 게임에 쉽게 익숙해지면 보다 어려운 상대를 원하게 되지만, 게임에서는 사용자의 게임 숙련 정도를 고려하지 않은 채 기저장된 난이도 시나리오에 따라 일률적으로 조절된 난이도를 제공함으로써, 게임에 익숙한 사용자에게는 게임의 재미를 반감시키는데 기인하고 있다.Currently, most young adults are quite familiar with games, and the life cycle of games is getting shorter and shorter. This is usually the more difficult the user wants to be when they are used to the game, but the game provides users who are more familiar with the game by providing difficulty that is uniformly adjusted according to saved difficulty scenarios without considering the user's game skill. It is caused by halting the fun of the game.

이러한 게임의 라이프 사이클 축소를 보완하기 위하여 게임 개발 단계에서 인공지능기법이 응용되고 있다. 그러나, 종래에 게임에 적용된 인공지능기법은 대부분 보다 사실적인 상황을 설정하기 위해 사용되거나, 게임을 보다 실감나게 하기 위해 혹은 단순한 반복을 회피하기 위해 사용될 뿐, 인공지능기법이 게임 플레이(Game play)에 직접 관여하지는 않아 게임의 난이도를 효과적으로 조절하는데 기여하지는 못하고 있는 실정이다.Artificial intelligence techniques are applied in the game development stage to compensate for the reduction of game life cycle. However, most of the AI techniques used in games have been used to set more realistic situations, to make the game more realistic, or to avoid simple repetition, and AI techniques are used for game play. It does not directly contribute to controlling the difficulty of the game because it is not directly involved.

게임은 보다 쉽게 대중에게 다가갈 수 있어야 하며 보다 많은 사람들이 즐길 수 있는 방향으로 개발되어야 함에도, 기존의 게임의 난이도 조절의 방향은 사용자로 하여금 난해해 하는 방향으로만 진행되었기 때문에, 게임에 익숙하지 않은 사용자를 게임에서 소외시키거나 게임에 익숙해진 사용자는 곧 실증을 느끼는 결과를 초래하게 되었다. 또한 게임 개발자측면에서도 사용자의 게임 숙련도를 고려하여 숙련 정도에 따라 많은 시나리오를 작성하여 게임을 개발하여야 하므로, 난이도 조절에 많은 시간과 비용을 투자하여야만 하는 어려움이 따랐다.Although games should be easier to reach the public and should be developed in a way that can be enjoyed by more people, the difficulty of adjusting the difficulty of the existing game is only for users to understand, so they are not familiar with the game. A user who has been left out of the game or who has become accustomed to the game soon has a positive result. In addition, in terms of game developers, since many scenarios must be developed according to the user's skill level in consideration of the user's game skill level, the difficulty of investing a lot of time and money in difficulty control was entailed.

본 발명은 상기와 같은 종래기술의 문제점을 해결하기 위하여 제안된 것으로, 사용자의 게임 플레이 숙련도에 따라 효과적인 게임의 난이도 조절이 가능한 사용자 상호작용 게임 난이도 조절방법을 제공하는데 그 목적이 있다.
The present invention has been proposed to solve the above problems of the prior art, and an object of the present invention is to provide a user interaction game difficulty control method that can effectively control the difficulty of the game according to the user's game play proficiency.

상기의 기술적 과제를 달성하기 위한 본 발명의 일 측면에 따르면, 유전자 알고리즘을 이용하여 게임을 진행하는 사용자의 게임에 대한 적응도를 판단하는 단계와, 게임 종료 요구가 있기 전까지, 판단된 상기 사용자의 게임 적응도를 게임의 난이도에 적용하여 게임을 진행하는 단계를 포함하는 사용자 상호작용 게임 난이도 조절방법이 제공된다.According to an aspect of the present invention for achieving the above technical problem, the step of determining the adaptability to the game of the user proceeding the game by using a genetic algorithm, and until the game end request, the determined of the user There is provided a user interactive game difficulty adjustment method comprising the step of applying a game adaptability to the difficulty of the game to proceed with the game.

바람직하게, 상기 사용자의 게임에 대한 적응도를 판단하는 단계는, 초기 게임 난이도 설정을 위한 초기 유전자를 로딩하는 단계; 로딩된 상기 초기 유전자를 이용하여 초기 게임 난이도 조절 요소의 집합인 초기화 세대를 구성하는 단계; 구성된 세대를 적용하여 게임을 진행하는 단계; 및 게임을 진행하면서 적합도 함수에 따라 사용자의 적응도를 판단하는 단계를 포함한다.Preferably, determining the adaptability of the user to the game, the step of loading the initial gene for the initial game difficulty setting; Constructing an initialization generation that is a collection of initial game difficulty control elements using the loaded initial gene; Applying the configured generation to proceed with the game; And determining the fitness of the user according to the fitness function while the game is in progress.

바람직하게, 상기 사용자의 게임 적응도를 게임의 난이도에 적용하여 게임을 진행하는 단계는, 적응도 판단 결과에 응답하여 난이도 조절이 필요한지를 체크하는 단계; 적응도 판단 결과, 난이도 조절이 필요함에 따라 연산자를 적용하여 새로운 세대를 구성하는 단계; 및 상기 새로운 세대에 따라 게임의 난이도 조절을 위한 새로운 유전자를 로딩하는 단계를 포함한다.Preferably, the step of applying the game adaptability of the user to the difficulty of the game to proceed with the game, checking whether the difficulty adjustment is necessary in response to the result of the determination of the adaptability; Forming a new generation by applying an operator as a result of adjusting the degree of difficulty; And loading a new gene for controlling the difficulty of the game according to the new generation.

바람직하게, 상기 사용자의 게임 적응도를 게임의 난이도에 적용하여 게임을 진행하는 단계는, 게임 종료 요구가 있는지를 체크하는 단계와, 체크 결과, 게임 종료 요구가 없음에 따라 상기 구성된 세대를 적용하여 게임을 진행하는 단계로 돌아가는 단계를 더 포함한다.Preferably, the step of proceeding the game by applying the game adaptability of the user to the difficulty of the game, the step of checking whether there is a game end request, and as a result of the check, by applying the configured generation according to the absence of the game end request The method further includes returning to the step of proceeding with the game.

나아가, 상기 사용자의 게임 적응도를 게임의 난이도에 적용하여 게임을 진 행하는 단계는, 적응도 판단 결과, 난이도 조절이 필요하지 않음에 따라 게임 종료 요구가 있기 전까지 기존의 세대를 이용하여 적용하여 게임을 진행하는 단계를 더 포함한다.Further, the step of applying the game adaptability of the user to the difficulty of the game to play the game, the game is applied by using the existing generation until the end of the game request as the difficulty adjustment is not necessary, as a result of the determination of the adaptability Further comprising the step of proceeding.

한편, 본 발명의 다른 측면에 따르면, 게임을 실행하기 위한 프로세서를 구비한 시스템에, 초기 게임 난이도 설정을 위한 초기 유전자를 로딩하는 기능; 로딩된 상기 초기 유전자를 이용하여 초기 게임 난이도 조절 요소의 집합인 초기화 세대를 구성하는 기능; 구성된 세대를 적용하여 게임을 진행하는 기능; 게임을 진행하면서 적합도 함수에 따라 사용자의 적응도를 판단하는 기능; 적응도 판단 결과에 응답하여 난이도 조절이 필요한지를 체크하는 기능; 적응도 판단 결과, 난이도 조절이 필요함에 따라 연산자를 적용하여 새로운 세대를 구성하는 기능; 및 상기 새로운 세대에 따라 게임의 난이도 조절을 위한 새로운 유전자를 로딩하는 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체가 제공된다.On the other hand, according to another aspect of the invention, the system having a processor for executing a game, the function of loading the initial gene for setting the initial game difficulty; A function of constructing an initialization generation which is a set of initial game difficulty control elements using the loaded initial gene; Applying a configured generation to play the game; Determining the fitness of the user according to the fitness function while playing the game; Checking whether difficulty adjustment is necessary in response to the result of the fitness determination; As a result of the adaptability determination, a function of configuring a new generation by applying an operator as a difficulty adjustment is needed; And a computer-readable recording medium having recorded thereon a program for realizing a function of loading a new gene for controlling the difficulty of a game according to the new generation.

본 발명에서는 인공지능기법의 하나인 유전자 알고리즘(Genetic Algorithm)을 이용하여 게임을 진행하는 사용자의 성향 및 게임에 대한 적응도를 판단하고 그에 따라 실시간으로 사용자의 수준에 맞도록 게임의 난이도를 조절함으로써, 사용자 친화적으로 게임을 개발하여 초보자에게는 쉬운 난이도를, 숙련자에게는 보다 어려운 난이도를 제공할 수 있도록 한다. 이 경우, 사용자의 흥미를 높여 게임의 라이프 사이클 연장을 기대할 수 있다.In the present invention, by using the genetic algorithm (Genetic Algorithm) of the artificial intelligence technique to determine the user's propensity and adaptation to the game progress by adjusting the difficulty of the game to match the user's level in real time accordingly In addition, the game is developed in a user-friendly manner to provide easy difficulty for beginners and more difficult for experienced users. In this case, it is possible to increase the user's interest and extend the life cycle of the game.

이하, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자가 본 발명을 보 다 용이하게 실시할 수 있도록 하기 위하여 본 발명의 바람직한 실시예를 소개하기로 한다.Hereinafter, preferred embodiments of the present invention will be introduced in order to enable those skilled in the art to more easily implement the present invention.

도 1은 본 발명의 일 실시예에 따른 인공지능기법을 이용한 사용자 상호작용 게임 난이도 조절 과정을 나타낸 순서도이다.1 is a flowchart illustrating a process of adjusting a user interaction game difficulty using an artificial intelligence method according to an embodiment of the present invention.

도 1을 참조하면, 본 실시예에 따른 인공지능기법을 이용한 사용자 상호작용 게임 난이도 조절 과정은, 크게 유전자 알고리즘을 이용하여 게임을 진행하는 사용자의 게임에 대한 적응도를 판단하는 과정(A)과, 판단 결과에 따라 실시간으로 사용자의 수준에 맞도록 게임의 난이도를 조절하는 과정(B)을 포함한다.Referring to FIG. 1, the process of adjusting a user difficulty game difficulty using an artificial intelligence method according to the present embodiment includes a process (A) of determining an adaptability to a game of a user who proceeds a game using a genetic algorithm. According to the determination result, the process of adjusting the difficulty of the game to match the level of the user in real time (B).

이하, 게임 적응도 판단 과정(A)과 난이도 조절 과정(B)을 포함한 본 실시예에 따른 게임 난이도 조절 과정에 대해 보다 자세히 살펴본다.Hereinafter, the game difficulty adjustment process according to the present embodiment including the game adaptation determination process (A) and the difficulty adjustment process (B) will be described in more detail.

우선, 초기에 게임의 난이도 설정을 위한 초기 유전자를 로딩하고(S10), 로딩된 초기 유전자를 이용하여 초기 게임 난이도 조절 요소의 집합인 초기화 세대를 구성한다(S11).First, an initial gene for setting a difficulty level of a game is initially loaded (S10), and an initial generation that is a set of initial game difficulty control elements is configured using the loaded initial gene (S11).

이어서, 구성된 초기화 세대를 적용하여 게임을 진행하게 된다(S12). 이와 같이 게임을 진행함에 있어서 적합도 함수에 따라 사용자의 적응도를 판단한다(S13).Subsequently, the game proceeds by applying the configured initialization generation (S12). As described above, the adaptability of the user is determined according to the fitness function in the game (S13).

계속하여, 적응도 판단 결과에 응답하여 난이도 조절이 필요한지를 체크한다(S14).Subsequently, it is checked whether difficulty adjustment is necessary in response to the adaptation determination result (S14).

만일, 적응도 판단 결과 난이도 조절이 필요한 경우에는 연산자를 적용하여 새로운 세대를 구성하고(S15), 새로운 세대에 따라 게임의 난이도 조절을 위한 새 로운 유전자를 로딩한다(S16).If, as a result of adaptation determination, difficulty adjustment is necessary, a new generation is configured by applying an operator (S15), and a new gene for loading difficulty adjustment is loaded according to the new generation (S16).

이후, 게임 종료 요구가 있을 때까지 상기 게임 진행 단계(S12) 내지 새로운 유전자 로딩 단계(S16)를 반복적으로 수행하면서 게임을 진행한다. 즉, 게임 종료 요구가 있는지를 체크하여(S17) 게임 종료 요구가 없으면 게임 진행 단계(S12)로 돌아가고, 게임 종료 요구가 있으면 게임을 종료한다(S18).Thereafter, the game proceeds while repeatedly performing the game progress step (S12) to the new gene loading step (S16) until the game end request is made. That is, it is checked whether there is a game end request (S17), and if there is no game end request, the process returns to the game progress step S12, and if there is a game end request, the game ends (S18).

한편, 적응도 판단(S14) 결과, 난이도 조절이 필요하지 않은 경우에는 새로운 세대 구성 단계(S15) 및 새로운 유전자 로딩 단계(S16)를 스킵한다.On the other hand, as a result of the adaptation determination (S14), when difficulty control is not necessary, a new generation configuration step (S15) and a new gene loading step (S16) is skipped.

본 발명에 적용된 유전자 알고리즘은 자연계의 유전에서 하나의 개체(Individual)가 적응하고자 하는 환경 즉, 해결하고자 하는 문제로 대변될 수 있는 적합도(Fitness)와, 그 환경에 적응하려는 개체, 즉 주어진 문제의 해가 될 후보인 유전자(Gene), 그 해 후보들의 집합인 세대(Generation)를 기본 구성으로 한다.The genetic algorithm applied to the present invention has a fitness that can be represented as an environment to which one individual (Individual) wants to adapt, that is, a problem to be solved in the inheritance of nature, It is based on Gene, which is a candidate for year, and Generation, which is a collection of candidates for that year.

그리고, 유전자 알고리즘의 연산자로는 잘 적응한 해들은 살아남고 잘 적응 하지 못한 해들은 도태되도록 유도하는 선택(Selection), 높은 적합도로 선택되어진 부모에 의해서 혹은 유전되어질 가능성이 높은 주어진 모체에 의해서 향상된 해를 갖는 새로운 세대를 생산하는 재생산(Reproductions), 스팅 중에 무작위 위치를 선택하는 교배(Crossover), 임의적으로 발생하는 돌연변이(Mutation) 등이 있다.And, as operators of genetic algorithms, well-adapted solutions survive and poorly-adapted solutions can be eliminated, improved by either a parent selected with high fit, or by a given mother, which is likely to be inherited. Reproductions produce a new generation of genes, crossovers to select random positions during stinging, and random mutations.

유전자 알고리즘을 적용하여 게임의 난이도를 조절하는 경우, 유전자 알고리즘에서는 게임 중에서 적의 수가 증가하거나 게임의 속도가 증가하는 등 게임의 난이도 조절 요소를 유전자로 사용하고, 사용자가 얻은 점수나 게임 시간 등 게임에서의 사용자 적응도 평가 요소를 적합도 함수로 사용한다. If you apply the genetic algorithm to adjust the difficulty of the game, the genetic algorithm uses the difficulty control elements of the game as a gene, such as increasing the number of enemies in the game or increasing the speed of the game. The user adaptability evaluation factor of is used as the fitness function.

그리고, 유전자는 통상적으로 게임의 제작 초기에 어떤 요소를 통하여 전체적인 난이도를 조절할지가 결정되고, 상기 적합도 함수는 주로 게임의 기획자 혹은 제작자의 의도를 반영하여 결정된다In general, genes are used to determine which factors control overall difficulty at the beginning of game production, and the fitness function is mainly determined by reflecting the intention of the creator or producer of the game.

앞서 기술한 바와 같이, 본 발명에 따른 유전자 및 적합도 함수는 비행 슈팅 게임, 액션 게임, 롤플레잉 게임, 퍼즐 게임 등 대부분의 장르에 적용할 수 있는데, 각 장르별로 본 발명을 적용하는 예를 설명하면 다음과 같다. As described above, the gene and the fitness function according to the present invention can be applied to most genres such as flight shooting games, action games, role-playing games, puzzle games, and the like. As follows.

먼저, 비행 슈팅 게임에서 게임의 난이도를 조절하는 요소는 적의 속도 혹 은 게임의 속도를 증가시키거나 적의 수를 증가시키는 것이므로, 대표적인 비행 슈팅 게임인 갤러그(Galag)의 경우 유전인자는 C=[속도, 미사일]이며, 유전자는 10 단위 시간당 유전인자의 변화가 되어 G(t) = {C0, C1, C2, ... , C9}로 나타내고, 적합도 함수는 일정 시간 동안 플레이어가 획득한 점수 변화량 혹은, 단위 시간당 적 개체수 변화량(적의 밀도)가 된다.First, in the flying shooting game, the factor controlling the difficulty level of the game is to increase the speed of the enemy, the speed of the game, or increase the number of enemies. Therefore, in the case of the gallag, a typical flight shooting game, the genetic factor is C = [speed , Missile], and the gene is the change of the genetic factor per 10 units of time, represented by G (t) = {C0, C1, C2, ..., C9}, and the fitness function is the amount of change in the score obtained by the player over time This results in a change in enemy population per unit time (density of the enemy).

그 다음, 대표적인 액션 게임의 일종인 은행강도(Bank Panic)의 경우, 게임 중 방문객의 방문 순서가 정해져 있어 사용자가 영리하고 게임을 수 차례 반복한다면 방문객의 방문 순서를 외우게 되어 게임의 재미가 떨어지므로, 액션 게임의 유전인자는 3개의 문(Door)에 등장하는 등장인물(강도 혹은 손님) 즉, C = [Pl, Pc, Pr]이 되고, 유전자는 10 단위 시간당 유전인자의 변화가 되어 G(t) = {C0, C1, C2, ... , C9}로 나타내며, 적합도 함수는 일정 시간 동안 사용자가 획득한 점수 변화량 혹은, 방문한 등장인물 중 강도의 비율이 된다.Next, in the case of Bank Panic, a typical action game, the visitor's visit order is determined during the game, so if the user is smart and repeats the game several times, the visitor's visit order is memorized. The genetic factor of the action game is the character (strength or guest) appearing in the three doors, that is, C = [Pl, Pc, Pr], and the gene becomes the change of the genetic factor per 10 units of time. (t) = {C0, C1, C2, ..., C9}, and the fitness function is a change in score obtained by a user for a predetermined time or a ratio of intensity among characters visited.

한편, 대표적인 롤플레잉 게임의 하나인 디아블로(Diablo)는 적이 특정의 스 테이지에서 일정한 수로 출현하는데, 이때 일정하게 제한된 수의 적이 있을 경우 그들이 근접해 있는 정도 즉, 적의 응집도에 따라 게임의 난이도가 달라질 수 있으므로, 롤플레잉 게임의 경우 유전인자는 없이, 유전자는 적 상호간의 평균 거리, 즉 적의 응집도가 되고, 적합도 함수는 단위시간당 플 레이어가 획득한 경험(점수)의 변화량 혹은 단위 시간당 적의 개체수 변화량이 된다.On the other hand, Diablo, one of the representative role-playing games, appears at a certain number of enemies on a certain stage. If there is a limited number of enemies, the difficulty of the game may vary depending on how close they are, that is, the cohesion of the enemies. Therefore, in role-playing games, there are no genetic factors, and the gene is the average distance between the enemies, that is, the cohesion of the enemies, and the fitness function is the variation in the experience (score) acquired by the player per unit time or the variation in the number of enemies per unit time. .

마지막으로, 게임 역사상 가장 오래된 퍼즐 게임의 일종인 테트리스(Tetris) 의 경우, 게임 중에 등장하는 조각(Piece)들의 순열에 따라 사람마다 각기 어렵고 쉬워하는 정도를 달리하므로, 퍼즐 게임의 경우에도 유전인자는 없으며, 유전자는 각 조각들이 발생하는 순서가 되고, 적합도 함수는 이미 제거 라인(Cleared Line)을 고려한 전체의 빈 블록(Blank Block)의 밀도가 사용된다. Finally, in the case of Tetris, the oldest puzzle game in the game's history, each person has a different level of difficulty and ease depending on the sequence of pieces that appear in the game. The gene is in the order in which each fragment occurs, and the fitness function uses the density of the entire blank block, taking into account the clean line.

이하, 상기 각 장르의 게임 중에서 가장 명백하다고 생각되는 게임인 테트 리스에 본 발명을 적용한 예를 보다 자세히 설명하기로 한다. Hereinafter, an example in which the present invention is applied to Tetris, which is considered to be the most apparent game among the genres, will be described in more detail.

테트리스는 난수함수를 통해 발생된 각 모양의 조각을 조합하여 라인을 많 이 생성할수록 점수를 획득하는 게임으로서, 발생되는 조각의 순서에 따라 게임의 난이도가 달라지므로, 도 2에 도시된 바와 같이 조각의 아래 부분의 놓이는 면이 평평(Plate)해야 평이한 조각의 순열이 된다. Tetris is a game in which a score is obtained by combining pieces of each shape generated through a random number function to generate more lines. The difficulty of the game varies according to the order of the generated pieces. The underlying side of the plate must be flat to form a permutation of flat pieces.

여기서, 조각의 순열의 어려운 정도는 상당히 가변적이고 전적으로 상황과 사용자에 따라서 달라지게 되는데, 같은 사용자라 하더라도 숙련 정도에 따라서 매우 다르게 되므로, 본 발명에서는 유전인자로 발생되는 조각의 순열을 사용한다. Here, the degree of difficulty of permutation of the pieces is quite variable and entirely depends on the situation and the user, even the same user is very different depending on the level of skill, the present invention uses the permutation of the fragments generated by the genetic factor.

그리고, 본 발명에서는 사용자의 게임에 대한 적응도를 평가할 요소로, 이미 제거된 라인을 포함한 최종라인까지의 빈 블록의 밀도를 사용자의 적응도로 사용한다. In the present invention, as an element to evaluate the adaptability of the user to the game, the density of the empty blocks up to the last line including the already removed line is used as the adaptability of the user.

또한, 도 3에 도시된 바와 같이, 유전자는 앞으로 발생될 4개의 조각들의 순 열과 그 적응도로 인코딩하고, 한 세대는 8개의 인코딩된 유전자로 구성하며, 선택 방법은 개발자가 원하는 적응도 값에 근접한 적합도 값의 유전자를 2개 선택하는 것으로 한다.In addition, as shown in Figure 3, the gene encodes a sequence of four fragments to be generated and its adaptability, one generation consists of eight encoded genes, and the selection method is close to the desired adaptability value of the developer. Two genes of goodness-of-fit values are selected.

따라서, 게임이 시작되면, 게임을 실행하기 위해 구동되는 모듈에서는 초기 에 게임의 난이도 설정을 위한 초기 유전자를 로딩하고(S10), 로딩된 초기 유전자를 이용하여 초기 게임 난이도 조절 요소의 집합인 초기화 세대를 구성한 후(S11), 구성된 초기화 세대를 적용하여 게임을 진행한다(S12).Therefore, when the game starts, the module driven to execute the game initially loads the initial gene for setting the difficulty of the game (S10), and initializes generation, which is a set of initial game difficulty control elements using the loaded initial gene. After configuring (S11), the game proceeds by applying the configured initialization generation (S12).

일반적으로, 테트리스 게임은 도 3과 같이, 0∼6까지의 정수를 난수함수를 통해 발생시켜 그에 해당하는 조각을 발생시키는데, 적합도 함수는 다음의 수학식과 같으며, 이는 일정한 값을 나타낸다.In general, the Tetris game generates an integer from 0 to 6 through a random function to generate a corresponding fragment, as shown in FIG. 3, and the fitness function is represented by the following equation, which represents a constant value.

Figure 112004039189480-PAT00001
Figure 112004039189480-PAT00001

여기서 'B'는 화면 상에 보여지는 빈 블록(Blank Block)의 수, 'C'는 이미 라인을 형성 하여 지워진 제거 라인의 수, 'L'은 현재 게임보드에 쌓여진 조각의 최종 라인수를 나타낸다.Where 'B' is the number of blank blocks shown on the screen, 'C' is the number of removed lines already removed by forming a line, and 'L' is the number of final lines of pieces currently stacked on the game board. .

상기 도 3에서, 블록과 조각은 테트리스의 게임보드를 구성하는 기본 단위가 되며, 전체 게임보드는 12*23개의 블록으로 구성되어 있다. 그리고, 조각의 발생회수를 'T'라고 할 경우, 상기 수학식 1을 사용하여 하기의 수학식 2와 같은 관계가 성립함을 알 수 있다.In FIG. 3, blocks and pieces become a basic unit constituting the game board of Tetris, and the entire game board is composed of 12 * 23 blocks. When the number of occurrences of a piece is 'T', it can be seen that the relationship shown in Equation 2 below is established using Equation 1 above.

Figure 112004039189480-PAT00002
Figure 112004039189480-PAT00002

여기서, 'F'는 상수인 적합도 함수를 나타낸다.  Here, 'F' represents a goodness-of-fit function that is a constant.

도 4는 적합도에 따른 B/T(조각 발생당 빈 블록의 수)의 그래프로서, 적합도 함수가 고정되어 있으므로, B/T는 하나의 상수(C, Constant)로 수렴하게 된다. 4 is a graph of B / T (number of empty blocks per piece generation) according to the goodness of fit, and since the goodness-of-fit function is fixed, B / T converges to one constant (C, Constant).

따라서, 상기 그래프가 나타내는 테트리스 게임은 조각 발생 수당 빈 블록 의 수를 일정하게 유지하는 방향으로 진행하는 것임을 알 수 있으며, 해당 게임은 사용자가 게임을 하는 동안 발생된 블록의 수에 대하여 게임 보드 내의 빈 블록의 수를 일정하게 유지하는 방향으로 진행하게 된다.Accordingly, it can be seen that the Tetris game represented by the graph proceeds in a direction of keeping the number of empty blocks per piece generation allowance constant, and the game is based on the number of blocks generated during the game by the user. The number of blocks is kept constant.

그리고, 본 발명에서는 기존의 테트리스 게임에서 사용하던 난수 발생함수 인 'rand()'를 대치할 함수 'GA(I)'를 구현하여 조각을 발생시키며, 상기 함수 'GA(I)'의 입력 인자는 현재의 최종 라인(Last Lines), 제거 라인(Cleared Lines), 빈 블록(Blank Blocks)이며, 이것을 이용하여 적합도를 구하고 사용자 수준을 가늠하여 그에 해당하는 조각들을 출력하게 된다.In the present invention, a fragment is generated by implementing a function 'GA (I)' to replace 'rand ()', which is a random number generation function used in a conventional Tetris game, and generates an input parameter of the function 'GA (I)'. Are the last lines, the clean lines, and the blank blocks, which are used to find the goodness of fit and to determine the user level and output the corresponding pieces.

따라서, 게임의 진행 중 게임을 실행하기 위해 구동되는 모듈은, 적합도 함수에 따라 이미 제거된 라인을 포함한 최종라인까지의 빈 블록의 밀도를 기준으로 소정의 기준 밀도 이하에 해당하는지 여부로 사용자의 적응도를 판단하게 되며, 상기 판단 결과 난이도 조절이 필요한 경우 선택, 교배, 돌연변이 등의 연산자를 적용하여 사용자가 게임을 하는 동안 발생된 블록의 수에 대하여 게임 보드 내의 빈 블록의 수를 일정하게 유지하는 방향으로 새로운 세대를 구성한다. 그리고, 새로운 세대에 따라 게임 종료 요구가 있기까지 게임의 난이도 조절을 위한 새로운 유전자를 로딩하고 적용하여 게임을 진행한다.Accordingly, the module driven to execute the game while the game is in progress adapts the user to whether it is equal to or less than a predetermined reference density based on the density of empty blocks up to the last line including the line already removed according to the fitness function. If the difficulty is necessary, the operator may select a selection, cross, mutation, etc. to maintain a constant number of empty blocks in the game board with respect to the number of blocks generated during the game. To form a new generation. In addition, according to a new generation, the game proceeds by loading and applying a new gene for controlling the difficulty of the game until the end of the game is required.

그러면, 게임을 진행하기 위해 구동되는 모듈은 사용자의 수준에 맞는 유전자인 난이도 조절 요소를 이용하여 게임을 구현하게 되며, 이때 게임의 로직 부분에 상기 난이도 조절 요소를 삽입하여 게임의 진행 동안 지속적으로 사용자의 상태와 게임의 난이도를 조절하게 되므로, 기제작된 게임에도 적용 가능하다.Then, the module driven to progress the game implements the game by using a difficulty control element which is a gene suitable for the user's level, wherein the difficulty control element is inserted into the logic part of the game to continuously maintain the user during the game. Since the state of the game and the difficulty of the game is adjusted, it is also applicable to pre-made games.

그리고, 상기 도 1에 나타난 바와 같이 유전자 알고리즘이 적용된 게임에서는 사용자가 게임 종료를 요구하기 전에는 별도의 게임 종료 조건이 존재하지 않는다.As shown in FIG. 1, in the game to which the genetic algorithm is applied, a separate game end condition does not exist until the user requests the end of the game.

이하에서는 본 발명이 적용된 게임에 대해 게임 숙련도가 다른 각 사용자를 대상으로 모의 실험을 수행한 결과를 설명하기로 한다.Hereinafter, a result of performing a simulation on each user having a different game skill level for the game to which the present invention is applied will be described.

모의 실험은 3가지 방법으로 나눠, 첫째는 무작위 사용자에 대한 실험으로 원본 게임과 본 발명을 적용한 게임의 결과를 비교한 실험, 둘째는 사용자를 초보 그룹과 숙련 그룹으로 나눠 결과의 차이를 비교한 실험, 마지막으로는 본 발명의 유전자 알고리즘의 성능을 좌우하는 요인 가운데 돌연 변이율을 변화시켜 실험을 진행한 것이다.The simulation is divided into three methods, the first is the experiment for random users and the result of comparing the original game and the game to which the present invention is applied, and the second is the experiment comparing the difference between the results by dividing the user into a novice group and a skilled group. Finally, the experiment was carried out by changing the mutation rate among factors that influence the performance of the genetic algorithm of the present invention.

먼저, 무작위 사용자를 대상으로 한 실험의 경우, 무작위의 8명을 대상으로 원본 게임과 본 발명을 적용한 게임에 대하여 직접 게임을 진행하는 방식으로 진행하였는데, 실험에서 사용된 적합도 값은 발생된 블록의 수에 대해 3.8%와 5.7%의 비율로 빈 블록을 유지하도록 게임을 설계한 것이다. First, in the case of experiments involving random users, the original game and the game to which the present invention was applied were directly conducted for eight random persons. The game is designed to keep empty blocks at a ratio of 3.8% and 5.7% of the numbers.

도 5a는 본 발명을 적용하여 무작위 사용자를 대상으로 한 실험에서, 사용자가 제거한 라인 수에 대한 결과를 나타낸 그래프이며, 도 5b는 본 발명을 적용하여 무작위 사용자를 대상으로 한 실험에서, 사용자가 플레이 하는 동안 발생한 총 조각의 수를 나타낸 그래프이다.Figure 5a is a graph showing the results of the number of lines removed by the user in the experiment for the random user applying the present invention, Figure 5b is a user play in the experiment for the random user applying the present invention This is a graph showing the total number of fragments that occurred during the process.

도면에서 막대 그래프의 좌측은 원본 게임을 나타내고 중간과 우측은 각기 적합도가 3.8%, 5.7%인 게임에 대한 게임 결과를 나타낸 것으로, 사용자가 제거한 라인 수나 사용자가 플레이 하는 동안 발생한 총 조각의 수는 모두 사용자의 수준을 가늠할 척도로 사용 가능하다.In the drawing, the left side of the bar graph represents the original game, and the middle and the right side represent the game results for games with 3.8% and 5.7% respectively, with the number of lines removed by the user or the total number of pieces generated during the user's play. Can be used as a measure of the level of the user.

도 5a 및 도 5b의 각 그래프 모두에서 평균을 비교해 보면, 원본 게임에 비해 보다 낮아진 결과를 얻었으며 3.8% 보다는 5.7%의 적합도로 적용된 게임을 진행 할 때 사용자가 보다 어려워 하고 있음을 알 수 있다. Comparing the averages in each of the graphs of FIGS. 5A and 5B, the results are lower than those of the original game, and it can be seen that the user is more difficult when the game is applied with a suitability of 5.7% rather than 3.8%.

그리고, 두 그래프에서 우측의 분산을 보면, 유전자 알고리즘을 적용한 게임에 사용자 간의 분산이 점차 작아지는 것을 알 수 있는데, 이는 사용자 간의 실력 격차가 다소 줄어 들었음을 의미한다.In addition, if you look at the variance on the right side of the two graphs, it can be seen that the variance between users gradually decreases in the game to which the genetic algorithm is applied, which means that the skill gap between users is somewhat reduced.

그리고, 분산의 결과를 통해 사용자의 수준은 특정의 난이도로 수렴되었으 며, 그 결과는 적합도에 의해 점차 낮아지는 방향으로 진행됨을 알 수 있다.In addition, it can be seen that the user's level is converged to a specific difficulty level through the result of the dispersion, and the result proceeds in the direction of gradually decreasing by the goodness of fit.

도 6a는 본 발명을 적용하여 초보 그룹과 숙련 그룹을 대상으로 한 실험에서, 사용자가 제거한 라인 수에 대한 결과를 나타낸 그래프이며, 도 6b는 본 발명을 적용하여 초보 그룹과 숙련 그룹을 대상으로 한 실험에서, 사용자가 플레이 하는 동안 발생한 총 조각의 수를 나타낸 그래프이다.Figure 6a is a graph showing the results of the number of lines removed by the user in the experiment for the novice group and the skilled group applying the present invention, Figure 6b is applied to the novice group and skilled group applying the present invention In the experiment, it is a graph showing the total number of pieces that occurred while the user played.

여기서, 원본 게임에 대하여 '사용자 A, B, C'는 제거 라인(Cleared Line)이 35개 미만이고 총 조각(Total Pieces)이 150개 미만인 사용자로 초보로 판단할 수 있는 사용자들이며, '사용자 D, E, F, G'는 제거 라인이 55개 이상, 총 조각이 200개 이상인 숙련 사용자이다.Here, for the original game, 'users A, B, and C' are users who can be judged as novices with less than 35 clean lines and less than 150 total pieces. , E, F, G 'are skilled users with more than 55 removal lines and more than 200 total pieces.

두 그래프에서 총 조각에 대한 평균값을 보면 초보 그룹의 결과는 본 발명이 적용된 게임에서 서서히 증가하는 추세에 있으며, 숙련 그룹은 서서히 감소하는 추세에 있다는 것을 알 수 있다. 결과적으로, 5.7%의 적합도를 갖는 게임의 결과에서는, 초보 그룹과 숙련 그룹의 결과가 거의 비슷한 수치를 나타내고 있음을 볼 수 있다.Looking at the average value of the total pieces in the two graphs, it can be seen that the results of the novice group tend to increase gradually in the game to which the present invention is applied, and the skilled group tend to decrease gradually. As a result, in the results of the game having a goodness of fit of 5.7%, it can be seen that the results of the novice group and the skilled group show almost similar values.

여기서, 각 그래프는 제거 라인과 총 조각의 두 관점에서 작성되었으나, 총 조각 보다는 제거 라인의 결과가 더 신뢰성이 있다. 왜냐하면, 제거 라인은 게임의 스코어와 직결되며 총 조각의 수는 플레이 시간과 관련이 있기 때문이다.Here, each graph is drawn from two perspectives, the removal line and the total piece, but the result of the removal line is more reliable than the total piece. This is because the elimination line is directly related to the score of the game and the total number of pieces is related to the play time.

마지막으로, 유전자 알고리즘의 성능 좌우 인자 중 돌연변이율을 변화시킨 실험의 경우를 설명한다. Finally, the case of an experiment in which the mutation rate is changed among the performance left and right factors of the genetic algorithm is described.

도 7은 본 발명을 적용하여 돌연변이율을 변화시킨 실험에서, 사용자가 플레이 하는 동안 발생한 총 조각의 수를 나타낸 그래프이다.7 is a graph showing the total number of pieces generated while the user plays in an experiment in which the mutation rate is changed by applying the present invention.

일반적 유전자 알고리즘에서 독립적으로 교배와 돌연변이 연산이 이루어지 는 것과는 구별되게, 본 발명의 유전자 알고리즘은 게임의 특성상 종료 조건이 없으며 교배와 돌연변이가 일정 비율로 수행되는 특징이 있다.The genetic algorithm of the present invention has no termination condition due to the characteristics of the game, and is distinguished from the general genetic algorithm independently of the hybridization and mutation operations.

본 실험에서는 총 6명의 사용자를 대상으로 각각 5%, 10%, 그리고 15%의 비율로 돌연변이가 발생하도록 하였는데, 도 7에 도시된 바와 같이 총 조각 에 대한 평균에 있어서 10%의 결과 값이 가장 낮은 수치를 보이고 있는데, 이는 10%의 적합도의 경우가 가장 적합한 돌연변이율이라는 여타 논문의 결과를 확인하는 것이다. In this experiment, mutations were generated at 5%, 10%, and 15% of the total 6 users, respectively, and as shown in FIG. This is low, confirming the findings of other papers that a good fit of 10% is the best mutation rate.

본 발명의 기술 사상은 상기 바람직한 실시예에 따라 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술 분야의 통상의 전문가라면 본 발명의 기술 사상의 범위 내에서 다양한 실시예가 가능함을 이해할 수 있을 것이다.Although the technical idea of the present invention has been described in detail according to the above preferred embodiment, it should be noted that the above-described embodiment is for the purpose of description and not of limitation. In addition, those skilled in the art will understand that various embodiments are possible within the scope of the technical idea of the present invention.

예컨대, 전술한 실시예에서는 대표적인 퍼즐 게임이라 할 수 있는 테트리스를 일례로 들어 설명하였으나, 본 발명은 비행 슈팅 게임, 액션 게임, 롤플레잉 게 임 등 다른 장르의 게임에도 적용된다. For example, the above-described embodiment has been described using Tetris, which is a representative puzzle game, as an example. However, the present invention also applies to games of other genres such as flight shooting games, action games, and role-playing games.

전술한 본 발명은 인공지능기법의 하나인 유전자 알고리즘을 이용하여, 게임을 진행하는 사용자의 성향 및 게임에 대한 적응도에 따라 실시간으로 사용자의 수준에 맞는 게임의 난이도를 조절함으로써, 사용자 친화적으로 게임을 개발하여 초보자에게는 쉬운 난이도를, 숙련자에게는 보다 어려운 난이도를 제공하고, 그에 따라 사용자에게 게임의 흥미를 증대시키는 효과가 있으며, 이로 인하여 게임의 라이프 사이클 증대를 기대할 수 있다. The present invention described above uses a genetic algorithm, which is one of artificial intelligence techniques, to adjust a game's difficulty level to a user's level in real time according to a user's propensity and adaptability to a game, thereby making the game user-friendly. By developing this, easy difficulty for beginners, more difficult difficulty for experienced users, and thus increase the interest of the game for the user, thereby increasing the life cycle of the game.

Claims (6)

유전자 알고리즘을 이용하여 게임을 진행하는 사용자의 게임에 대한 적응도를 판단하는 단계와,Determining the adaptability of the user to the game using the genetic algorithm, 게임 종료 요구가 있기 전까지, 판단된 상기 사용자의 게임 적응도를 게임의 난이도에 적용하여 게임을 진행하는 단계Proceeding to the game by applying the determined game adaptability of the user to the difficulty of the game until a game end request is made; 를 포함하는 사용자 상호작용 게임 난이도 조절방법.User interaction game difficulty adjustment method comprising a. 제1항에 있어서,The method of claim 1, 상기 사용자의 게임에 대한 적응도를 판단하는 단계는,The determining of the adaptability to the game of the user, 초기 게임 난이도 설정을 위한 초기 유전자를 로딩하는 단계;Loading an initial gene for initial game difficulty setting; 로딩된 상기 초기 유전자를 이용하여 초기 게임 난이도 조절 요소의 집합인 초기화 세대를 구성하는 단계;Constructing an initialization generation that is a collection of initial game difficulty control elements using the loaded initial gene; 구성된 세대를 적용하여 게임을 진행하는 단계; 및Applying the configured generation to proceed with the game; And 게임을 진행하면서 적합도 함수에 따라 사용자의 적응도를 판단하는 단계를 포함하는 것을 특징으로 하는 사용자 상호작용 게임 난이도 조절방법.Determining the degree of adaptability of the user according to the fitness function as the game progresses. 제2항에 있어서,The method of claim 2, 상기 사용자의 게임 적응도를 게임의 난이도에 적용하여 게임을 진행하는 단계는,The process of applying the game adaptability of the user to the difficulty of the game proceeds, 적응도 판단 결과에 응답하여 난이도 조절이 필요한지를 체크하는 단계;Checking whether difficulty adjustment is necessary in response to the result of the fitness determination; 적응도 판단 결과, 난이도 조절이 필요함에 따라 연산자를 적용하여 새로운 세대를 구성하는 단계; 및Forming a new generation by applying an operator as a result of adjusting the degree of difficulty; And 상기 새로운 세대에 따라 게임의 난이도 조절을 위한 새로운 유전자를 로딩하는 단계를 포함하는 것을 특징으로 하는 사용자 상호작용 게임 난이도 조절방법.And loading a new gene for controlling a difficulty level of the game according to the new generation. 제3항에 있어서,The method of claim 3, 상기 사용자의 게임 적응도를 게임의 난이도에 적용하여 게임을 진행하는 단계는,The process of applying the game adaptability of the user to the difficulty of the game proceeds, 게임 종료 요구가 있는지를 체크하는 단계와,Checking if there is a game end request, 체크 결과, 게임 종료 요구가 없음에 따라 상기 구성된 세대를 적용하여 게임을 진행하는 단계로 돌아가는 단계를 더 포함하는 것을 특징으로 하는 사용자 상호작용 게임 난이도 조절방법.The method of claim 1, further comprising the step of returning to the step of proceeding the game by applying the configured generation in accordance with the request for no end of the game. 제3항에 있어서,The method of claim 3, 상기 사용자의 게임 적응도를 게임의 난이도에 적용하여 게임을 진행하는 단 계는,The step of applying the game adaptability of the user to the difficulty of the game to proceed with the game, 적응도 판단 결과, 난이도 조절이 필요하지 않음에 따라 게임 종료 요구가 있기 전까지 기존의 세대를 이용하여 적용하여 게임을 진행하는 단계를 더 포함하는 것을 특징으로 하는 사용자 상호작용 게임 난이도 조절방법.As a result of the determination of the degree of adaptation, the difficulty adjustment is further required, and further comprising the step of proceeding the game by using the existing generation until the end of the game request. 게임을 실행하기 위한 프로세서를 구비한 시스템에,In a system having a processor for running a game, 초기 게임 난이도 설정을 위한 초기 유전자를 로딩하는 기능;Loading initial genes for initial game difficulty setting; 로딩된 상기 초기 유전자를 이용하여 초기 게임 난이도 조절 요소의 집합인 초기화 세대를 구성하는 기능;A function of constructing an initialization generation which is a set of initial game difficulty control elements using the loaded initial gene; 구성된 세대를 적용하여 게임을 진행하는 기능;Applying a configured generation to play the game; 게임을 진행하면서 적합도 함수에 따라 사용자의 적응도를 판단하는 기능;Determining the fitness of the user according to the fitness function while playing the game; 적응도 판단 결과에 응답하여 난이도 조절이 필요한지를 체크하는 기능;Checking whether difficulty adjustment is necessary in response to the result of the fitness determination; 적응도 판단 결과, 난이도 조절이 필요함에 따라 연산자를 적용하여 새로운 세대를 구성하는 기능; 및As a result of the adaptability determination, a function of configuring a new generation by applying an operator as a difficulty adjustment is needed; And 상기 새로운 세대에 따라 게임의 난이도 조절을 위한 새로운 유전자를 로딩하는 기능Loading a new gene for controlling the difficulty of the game according to the new generation 을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for realizing this.
KR1020040068724A 2004-08-30 2004-08-30 Game difficulty control method for user interacting using artificial intelligence technique KR100718334B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040068724A KR100718334B1 (en) 2004-08-30 2004-08-30 Game difficulty control method for user interacting using artificial intelligence technique

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040068724A KR100718334B1 (en) 2004-08-30 2004-08-30 Game difficulty control method for user interacting using artificial intelligence technique

Publications (2)

Publication Number Publication Date
KR20060020004A true KR20060020004A (en) 2006-03-06
KR100718334B1 KR100718334B1 (en) 2007-05-14

Family

ID=37127216

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040068724A KR100718334B1 (en) 2004-08-30 2004-08-30 Game difficulty control method for user interacting using artificial intelligence technique

Country Status (1)

Country Link
KR (1) KR100718334B1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100948738B1 (en) * 2007-08-01 2010-03-22 중앙대학교 산학협력단 Game method and game system for dynamic difficulty
US8348733B2 (en) 2009-12-21 2013-01-08 Electronics And Telecommunications Research Institute Apparatus and method for analyzing characteristic of game player in real time
KR101231798B1 (en) * 2009-04-30 2013-02-08 한국전자통신연구원 Method and apparatus for controlling difficulty levels of game
WO2013180322A1 (en) * 2012-05-30 2013-12-05 주식회사 쏘그웨어 Method for providing npc ai according to the level of a game user
KR101372207B1 (en) * 2011-09-20 2014-03-14 주식회사 엔씨소프트 Apparatus and method of realtime-adjusting level of game difficulty
KR20190056726A (en) * 2017-11-17 2019-05-27 주식회사 넥슨코리아 Method, apparatus and computer program for determining difficulty level in game
KR20200013935A (en) * 2018-07-31 2020-02-10 한국과학기술원 Apparatus and method for eliciting optimal strategy of the humans in the interactive games using artificial intelligence
KR102195471B1 (en) * 2019-08-30 2020-12-28 주식회사 엔씨소프트 Method and apparatus for determining difficulty level of game

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107866069A (en) * 2016-09-27 2018-04-03 珠海格力智能装备有限公司 Play chess the processing method and processing device of grade of difficulty
CN107694093B (en) * 2017-10-26 2020-11-17 广州市雷军游乐设备有限公司 Method, device, equipment and storage medium for controlling grabbing of prop model in game
CN114618169A (en) * 2018-11-07 2022-06-14 成都方德尔科技有限公司 Information capturing system and method for entertainment interactive system
KR102594364B1 (en) * 2021-01-20 2023-10-25 동명대학교산학협력단 Simulation system for voyage and method thereof
KR102639535B1 (en) 2021-10-13 2024-02-22 주식회사 피벗게임즈 Dynamic difficulty application system for each user of the puzzle game

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020015907A (en) * 2000-08-23 2002-03-02 정병렬 A method and system of a fitness using a game control for a beating of the heart
KR20020017016A (en) * 2000-08-28 2002-03-07 노치성 Online golf game
KR100485810B1 (en) * 2003-02-04 2005-04-28 주식회사 안다미로 Shooting game machine and method for performing it
KR20040028081A (en) * 2002-09-28 2004-04-03 주식회사 케이티 Method of Data Sorting for efficient fitness function evaluation in genetic Algorithm

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100948738B1 (en) * 2007-08-01 2010-03-22 중앙대학교 산학협력단 Game method and game system for dynamic difficulty
KR101231798B1 (en) * 2009-04-30 2013-02-08 한국전자통신연구원 Method and apparatus for controlling difficulty levels of game
US8348733B2 (en) 2009-12-21 2013-01-08 Electronics And Telecommunications Research Institute Apparatus and method for analyzing characteristic of game player in real time
KR101372207B1 (en) * 2011-09-20 2014-03-14 주식회사 엔씨소프트 Apparatus and method of realtime-adjusting level of game difficulty
WO2013180322A1 (en) * 2012-05-30 2013-12-05 주식회사 쏘그웨어 Method for providing npc ai according to the level of a game user
KR20190056726A (en) * 2017-11-17 2019-05-27 주식회사 넥슨코리아 Method, apparatus and computer program for determining difficulty level in game
KR20200013935A (en) * 2018-07-31 2020-02-10 한국과학기술원 Apparatus and method for eliciting optimal strategy of the humans in the interactive games using artificial intelligence
KR102195471B1 (en) * 2019-08-30 2020-12-28 주식회사 엔씨소프트 Method and apparatus for determining difficulty level of game

Also Published As

Publication number Publication date
KR100718334B1 (en) 2007-05-14

Similar Documents

Publication Publication Date Title
KR100718334B1 (en) Game difficulty control method for user interacting using artificial intelligence technique
Shaker et al. The 2010 Mario AI championship: Level generation track
Togelius et al. What is procedural content generation? Mario on the borderline
US7636701B2 (en) Query controlled behavior models as components of intelligent agents
Nielsen et al. Towards generating arcade game rules with VGDL
JP2007527260A (en) Individual behavior of computer controlled avatars in a virtual reality environment
Togelius et al. The search-based approach
KR101265051B1 (en) Method for providing non player character artificial intelligence according to game user level
Justesen et al. Online evolution for multi-action adversarial games
JPH11114227A (en) Level parameter setting method and apparatus for enemy character
US6579176B2 (en) Computer-based growing simulation method and system
Nelson et al. Rules and mechanics
Angelides et al. Handbook of digital games
Susanto et al. Maze generation based on difficulty using genetic algorithm with gene pool
Carpenter Replaying colonialism: Indigenous National Sovereignty and its limits in strategic videogames
Norton et al. Monsters of Darwin: A strategic game based on artificial intelligence and genetic algorithms
Sturtevant Monte carlo tree search and related algorithms for games
Zhou et al. Discovering of game AIs’ characters using a neural network based AI imitator for AI clustering
Fernández-Ares et al. There can be only one: Evolving RTS bots via joust selection
Bakkes et al. Involving player experience in dynamically generated missions and game spaces
JP2020115957A (en) Information processing device, information processing program, and information processing method
Azmi et al. Perceptron Genetic to Recognize Openning Strategy Ruy Lopez
JP5879624B1 (en) TERMINAL DEVICE, TERMINAL DEVICE GAME EXECUTION METHOD, PROGRAM, PROGRAM RECORDING MEDIUM, AND GAME SERVER
JP7417451B2 (en) Electronic game information processing device and electronic game information processing program
Macleod Game design through self-play experiments

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
N231 Notification of change of applicant
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120404

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee