KR20200107743A - Method and apparatus for providing optimized game setting information, method and apparatus for optimizing game running - Google Patents

Method and apparatus for providing optimized game setting information, method and apparatus for optimizing game running Download PDF

Info

Publication number
KR20200107743A
KR20200107743A KR1020190130794A KR20190130794A KR20200107743A KR 20200107743 A KR20200107743 A KR 20200107743A KR 1020190130794 A KR1020190130794 A KR 1020190130794A KR 20190130794 A KR20190130794 A KR 20190130794A KR 20200107743 A KR20200107743 A KR 20200107743A
Authority
KR
South Korea
Prior art keywords
game
user terminal
information
optimization
setting information
Prior art date
Application number
KR1020190130794A
Other languages
Korean (ko)
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 KR1020190130794A priority Critical patent/KR20200107743A/en
Publication of KR20200107743A publication Critical patent/KR20200107743A/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/85Providing additional services to players
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/77Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/534Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for network load management, e.g. bandwidth optimization, latency reduction

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

A method and an apparatus for providing game setting information, and a method and an apparatus for optimizing game play are disclosed. The method of providing game setting information includes: a step of collecting device information of a user terminal; a step of determining game optimization setting information corresponding to the user terminal based on the device information of the user terminal; and a step of transmitting game optimization setting information to the user terminal.

Description

최적화된 게임 설정 정보 제공 방법 및 장치, 게임 실행 최적화 방법 및 장치{METHOD AND APPARATUS FOR PROVIDING OPTIMIZED GAME SETTING INFORMATION, METHOD AND APPARATUS FOR OPTIMIZING GAME RUNNING}Method and device for providing optimized game setting information, method and device for optimizing game execution {METHOD AND APPARATUS FOR PROVIDING OPTIMIZED GAME SETTING INFORMATION, METHOD AND APPARATUS FOR OPTIMIZING GAME RUNNING}

아래 실시예들은 최적화된 게임 설정 정보를 제공하는 기술과 게임 실행을 최적화하는 기술에 관한 것이다.The following embodiments relate to a technology for providing optimized game setting information and a technology for optimizing game execution.

현재 대다수의 모바일 게임의 설정 메뉴에서는 최적의 품질로 게임을 즐길 수 있도록 사용자가 선택할 수 있는 옵션들을 제공한다. 예를 들어, 사용자는 해당 설정 메뉴에서의 조작을 통해 그래픽 품질, 해상도 품질, 사운드 품질, 화면 재생 속도 등을 조정할 수 있다.Currently, the setting menu of most mobile games provides options that users can select so that they can enjoy the game in optimal quality. For example, the user can adjust the graphic quality, resolution quality, sound quality, screen playback speed, etc. through manipulation in the corresponding setting menu.

하지만, 사용자의 수동적인 설정을 통해 게임 플레이 시 영상 프레임 끊김이나 강제 종료 등의 문제가 발생할 수 있다. 이와 같은 문제가 발생한 경우, 사용자는 자신이 이용하는 기기에 맞는 최적화된 옵션을 찾기 위해 옵션 설정 과정을 여러 번 반복하여야 한다는 불편함이 있다. 이러한 불편함을 해소하기 위한 기술적 수단에 대한 연구가 필요한 실정이다.However, through the user's manual setting, a problem such as video frame interruption or forced termination may occur during game play. When such a problem occurs, the user has the inconvenience of having to repeat the option setting process several times in order to find an optimized option for the device he is using. There is a need for research on technical means to solve this inconvenience.

일 실시예에 따른 게임 설정 정보 제공 방법은, 사용자 단말의 기기 정보를 수집하는 단계; 상기 사용자 단말의 기기 정보에 기초하여 상기 사용자 단말에 대응하는 게임 최적화 설정 정보를 결정하는 단계; 및 상기 게임 최적화 설정 정보를 상기 사용자 단말에 전송하는 단계를 포함할 수 있다.A method of providing game setting information according to an embodiment includes the steps of collecting device information of a user terminal; Determining game optimization setting information corresponding to the user terminal based on device information of the user terminal; And transmitting the game optimization setting information to the user terminal.

상기 기기 정보를 수집하는 단계는, 상기 사용자 단말의 기기 모델에 대한 정보를 수집하는 단계를 포함할 수 있다.Collecting the device information may include collecting information on the device model of the user terminal.

상기 게임 최적화 설정 정보를 결정하는 단계는, 상기 사용자 단말의 기기 모델에 대응하는 미리 설정된 게임 설정 정보를 상기 게임 최적화 설정 정보로 결정하는 단계를 포함할 수 있다.The determining of the game optimization setting information may include determining preset game setting information corresponding to a device model of the user terminal as the game optimization setting information.

상기 게임 최적화 설정 정보를 결정하는 단계는, 미리 정의된 서로 다른 기기 모델들 중 상기 사용자 단말의 기기 모델의 기기 사양과 가장 유사한 기기 모델을 선택하는 단계; 및 상기 선택된 기기 모델에 대응하는 미리 설정된 게임 설정 정보를 상기 게임 최적화 설정 정보로 결정하는 단계를 포함할 수 있다.The determining of the game optimization setting information may include selecting a device model most similar to a device specification of a device model of the user terminal from among different device models defined in advance; And determining preset game setting information corresponding to the selected device model as the game optimization setting information.

상기 게임 최적화 설정 정보는, 상기 사용자 단말에서 상기 게임 프로그램을 실행하는데 적용되는 그래픽 품질 설정, 화면 재생 속도 설정, 오디오 설정, 진동 효과 설정 및 부가 정보 제공 설정 중 적어도 하나에 관한 설정 정보를 포함할 수 있다.The game optimization setting information may include setting information on at least one of a graphic quality setting applied to executing the game program in the user terminal, a screen playback speed setting, an audio setting, a vibration effect setting, and an additional information provision setting. have.

상기 기기 정보를 수집하는 단계는, 상기 사용자 단말의 프로세서, 메모리, 배터리, 네트워크 사양, 디스플레이 및 게임 엔진 중 적어도 하나에 관한 정보를 수집하는 단계를 포함할 수 있다.The collecting of the device information may include collecting information on at least one of a processor, a memory, a battery, a network specification, a display, and a game engine of the user terminal.

상기 게임 최적화 설정 정보를 결정하는 단계는, 상기 수집된 기기 정보에 기초하여, 미리 정의된 게임 최적화 설정들 중 상기 사용자 단말의 기기 모델에 대응되는 게임 최적화 설정을 선택하는 단계; 및 상기 선택된 게임 최적화 설정에 대한 정보를 상기 사용자 단말에 대응하는 상기 게임 최적화 설정 정보로 결정하는 단계를 포함할 수 있다.The determining of the game optimization setting information may include selecting a game optimization setting corresponding to a device model of the user terminal from among predefined game optimization settings based on the collected device information; And determining the information on the selected game optimization setting as the game optimization setting information corresponding to the user terminal.

일 실시예에 따른 게임 실행 최적화 방법은, 사용자 단말의 기기 정보를 수집하는 단계; 상기 사용자 단말의 기기 정보에 기초하여 상기 사용자 단말에서 게임 프로그램을 실행하는 중에 크래시가 발생할 확률에 대한 스코어를 결정하는 단계; 및 상기 스코어가 미리 설정된 조건을 만족시키는 경우, 미리 정의된 대응 조치를 실행하는 단계를 포함할 수 있다.A game execution optimization method according to an embodiment includes the steps of collecting device information of a user terminal; Determining a score for a probability of a crash occurring while executing a game program in the user terminal based on device information of the user terminal; And when the score satisfies a preset condition, executing a predefined response action.

상기 기기 정보를 수집하는 단계는, 실시간 또는 미리 설정된 시간 주기로 상기 사용자 단말의 기기 정보를 수집할 수 있다.In the step of collecting the device information, device information of the user terminal may be collected in real time or at a preset time period.

상기 기기 정보를 수집하는 단계는, 상기 사용자 단말의 프로세서, 메모리, 배터리, 네트워크 사양, 디스플레이 및 게임 엔진 중 적어도 하나에 관한 정보를 수집하는 단계를 포함할 수 있다.The collecting of the device information may include collecting information on at least one of a processor, a memory, a battery, a network specification, a display, and a game engine of the user terminal.

상기 스코어를 결정하는 단계는, 상기 수집된 기기 정보를 로지스틱 회귀 모델에 적용하여 상기 스코어를 추정하는 단계를 포함할 수 있다.The determining of the score may include estimating the score by applying the collected device information to a logistic regression model.

상기 대응 조치를 실행하는 단계는, 상기 스코어가 상기 조건을 만족시키는 경우, 상기 사용자 단말을 통해 크래시의 발생을 경고하기 위한 알림 정보가 출력되도록 상기 사용자 단말을 제어하기 위한 제어 신호를 생성하는 단계를 포함할 수 있다.The executing of the corresponding action includes generating a control signal for controlling the user terminal to output notification information for warning of the occurrence of a crash through the user terminal when the score satisfies the condition. Can include.

상기 대응 조치를 실행하는 단계는, 상기 스코어가 상기 조건을 만족시키는 경우, 상기 사용자 단말에서 실행되는 게임 프로그램의 설정을 조정하기 위한 제어 신호를 상기 사용자 단말에 전송하는 단계를 포함할 수 있다.Executing the corresponding action may include, when the score satisfies the condition, transmitting a control signal for adjusting a setting of a game program executed in the user terminal to the user terminal.

상기 대응 조치를 실행하는 단계는, 상기 스코어가 상기 조건을 만족시키는 경우, 상기 사용자 단말의 기기 동작을 제어하기 위한 제어 신호를 상기 사용자 단말에 전송하는 단계를 포함할 수 있다.Executing the corresponding action may include transmitting a control signal for controlling the operation of the device of the user terminal to the user terminal when the score satisfies the condition.

상기 대응 조치를 실행하는 단계는, 상기 스코어가 기준 값에 해당하는 경우 또는 상기 스코어가 임계 값 이상인 경우, 상기 대응 조치를 실행하는 단계를 포함할 수 있다.Executing the response action may include executing the response action when the score corresponds to a reference value or when the score is greater than or equal to a threshold value.

일 실시예에 따른 게임 실행 최적화 장치는, 사용자 단말의 기기 정보를 수집하는 수집부; 상기 사용자 단말의 기기 정보에 기초하여 상기 사용자 단말에 대응하는 게임 최적화 설정 정보를 결정하는 결정부; 및 상기 게임 최적화 설정 정보를 상기 사용자 단말에 전송하는 통신부를 포함할 수 있다.According to an embodiment, an apparatus for optimizing game execution includes: a collection unit for collecting device information of a user terminal; A determination unit for determining game optimization setting information corresponding to the user terminal based on device information of the user terminal; And a communication unit for transmitting the game optimization setting information to the user terminal.

상기 수집부는, 상기 사용자 단말의 기기 모델에 대한 정보를 수집하고, 상기 결정부는, 상기 사용자 단말의 기기 모델에 대응하는 미리 설정된 게임 설정 정보를 상기 게임 최적화 설정 정보로 결정할 수 있다.The collection unit may collect information on a device model of the user terminal, and the determination unit may determine preset game setting information corresponding to the device model of the user terminal as the game optimization setting information.

상기 결정부는, 미리 정의된 서로 다른 기기 모델들 중 상기 사용자 단말의 기기 모델의 기기 사양과 가장 유사한 기기 모델을 선택하고, 상기 선택된 기기 모델에 대응하는 미리 설정된 게임 설정 정보를 상기 게임 최적화 설정 정보로 결정할 수 있다.The determination unit selects a device model most similar to a device specification of the device model of the user terminal from among predefined different device models, and uses preset game setting information corresponding to the selected device model as the game optimization setting information. You can decide.

상기 수집부는, 상기 사용자 단말의 프로세서, 메모리, 배터리, 네트워크 사양, 디스플레이 및 게임 엔진 중 적어도 하나에 관한 정보를 수집할 수 있다.The collection unit may collect information on at least one of a processor, a memory, a battery, a network specification, a display, and a game engine of the user terminal.

상기 결정부는, 상기 수집된 기기 정보에 기초하여, 미리 정의된 게임 최적화 설정들 중 상기 사용자 단말의 기기 모델에 대응되는 게임 최적화 설정을 선택하고, 상기 선택된 게임 최적화 설정에 대한 정보를 상기 사용자 단말에 대응하는 상기 게임 최적화 설정 정보로 결정할 수 있다.The determining unit selects a game optimization setting corresponding to the device model of the user terminal from among predefined game optimization settings, based on the collected device information, and provides information on the selected game optimization setting to the user terminal. It can be determined from the corresponding game optimization setting information.

다른 실시예에 따른 게임 실행 최적화 장치는, 사용자 단말의 기기 정보를 수집하는 수집부; 상기 사용자 단말의 기기 정보에 기초하여 상기 사용자 단말에서 게임 프로그램을 실행하는 중에 크래시가 발생할 확률에 대한 스코어를 결정하는 결정부; 및 상기 스코어가 미리 설정된 조건을 만족시키는 경우, 미리 정의된 대응 조치를 실행하는 제어부를 포함할 수 있다.An apparatus for optimizing game execution according to another embodiment includes: a collection unit for collecting device information of a user terminal; A determination unit that determines a score for a probability of a crash occurring while executing a game program in the user terminal based on device information of the user terminal; And a controller that executes a predefined response action when the score satisfies a preset condition.

상기 수집부는, 상기 사용자 단말의 프로세서, 메모리, 배터리, 네트워크 사양, 디스플레이 및 게임 엔진 중 적어도 하나에 관한 정보를 수집할 수 있다.The collection unit may collect information on at least one of a processor, a memory, a battery, a network specification, a display, and a game engine of the user terminal.

상기 결정부는, 상기 수집된 기기 정보를 로지스틱 회귀 모델에 적용하여 상기 스코어를 추정할 수 있다.The determiner may estimate the score by applying the collected device information to a logistic regression model.

상기 제어부는, 상기 스코어가 상기 조건을 만족시키는 경우, 상기 사용자 단말을 통해 크래시의 발생을 경고하기 위한 알림 정보가 출력되도록 상기 사용자 단말을 제어하기 위한 제어 신호를 생성할 수 있다.When the score satisfies the condition, the controller may generate a control signal for controlling the user terminal so that notification information for warning of the occurrence of a crash is output through the user terminal.

상기 제어부는, 상기 스코어가 상기 조건을 만족시키는 경우, 상기 사용자 단말에서 실행되는 게임 프로그램의 설정을 조정하기 위한 제어 신호를 생성할 수 있다.When the score satisfies the condition, the control unit may generate a control signal for adjusting a setting of a game program executed in the user terminal.

상기 제어부는, 상기 스코어가 상기 조건을 만족시키는 경우, 상기 사용자 단말의 기기 동작을 제어하기 위한 제어 신호를 생성할 수 있다.When the score satisfies the condition, the controller may generate a control signal for controlling the operation of the device of the user terminal.

다른 실시예에 따른 게임 실행 최적화 장치는, 상기 제어 신호를 상기 사용자 단말에 전송하는 통신부를 더 포함할 수 있다.The game execution optimization apparatus according to another embodiment may further include a communication unit for transmitting the control signal to the user terminal.

도 1은 일 실시예에 따른 게임 실행 최적화 시스템의 전체적인 개요(overview)를 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 게임 실행 최적화 장치의 구성을 도시한 도면이다.
도 3a 및 도 3b는 게임 프로그램에서 그래픽 설정 화면의 일례를 도시하는 도면들이다.
도 4는 일 실시예에 따른 게임 설정 정보 제공 방법의 동작을 설명하기 위한 흐름도이다.
도 5는 일 실시예에 따른 게임 실행 최적화 방법의 동작을 설명하기 위한 흐름도이다.
도 6은 일 실시예에 따른 크래시 발생 경고를 사용자에게 알리는 일례를 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 게임 실행 최적화 장치의 구성을 도시하는 도면이다.
도 8은 일 실시예에 따른 사용자 단말의 구성을 도시하는 도면이다.
1 is a diagram for explaining an overview of a game execution optimization system according to an exemplary embodiment.
2 is a diagram illustrating a configuration of an apparatus for optimizing game execution according to an exemplary embodiment.
3A and 3B are diagrams showing an example of a graphic setting screen in a game program.
4 is a flowchart illustrating an operation of a method of providing game setting information according to an exemplary embodiment.
5 is a flowchart illustrating an operation of a game execution optimization method according to an exemplary embodiment.
6 is a diagram illustrating an example of informing a user of a crash occurrence warning according to an exemplary embodiment.
7 is a diagram illustrating a configuration of an apparatus for optimizing game execution according to an exemplary embodiment.
8 is a diagram illustrating a configuration of a user terminal according to an embodiment.

이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.Hereinafter, exemplary embodiments will be described in detail with reference to the accompanying drawings. However, since various changes may be made to the embodiments, the scope of the rights of the patent application is not limited or limited by these embodiments. It should be understood that all changes, equivalents, or substitutes to the embodiments are included in the scope of the rights.

실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the examples are used for illustrative purposes only and should not be interpreted as limiting. Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present specification, terms such as "comprise" or "have" are intended to designate the presence of features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, but one or more other features. It is to be understood that the presence or addition of elements or numbers, steps, actions, components, parts, or combinations thereof, does not preclude in advance.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the embodiment belongs. Terms as defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related technology, and should not be interpreted as an ideal or excessively formal meaning unless explicitly defined in this application. Does not.

또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, in the description with reference to the accompanying drawings, the same reference numerals are assigned to the same components regardless of the reference numerals, and redundant descriptions thereof will be omitted. In describing the embodiments, when it is determined that a detailed description of related known technologies may unnecessarily obscure the subject matter of the embodiments, the detailed description thereof will be omitted.

도 1은 일 실시예에 따른 게임 실행 최적화 시스템의 전체적인 개요를 설명하기 위한 도면이다.1 is a diagram for explaining an overall overview of a game execution optimization system according to an exemplary embodiment.

도 1을 참조하면, 게임 실행 최적화 시스템은 게임 프로그램을 실행할 수 있는 사용자 단말(120)과 사용자 단말(120)에서의 게임 프로그램 실행을 최적화하기 위한 기능들을 수행하는 게임 실행 최적화 장치(110)를 포함할 수 있다. 게임 실행 최적화 장치(110)는 사용자 단말(120)의 게임 프로그램 실행 최적화를 위한 최적의 게임 환경 설정 정보를 찾아서 사용자 단말(120)에 제공할 수 있다.Referring to FIG. 1, the game execution optimization system includes a user terminal 120 capable of executing a game program and a game execution optimization device 110 performing functions for optimizing the execution of a game program in the user terminal 120. can do. The game execution optimization device 110 may find and provide information on an optimal game environment setting for optimizing the execution of a game program of the user terminal 120 to the user terminal 120.

게임 실행 최적화 장치(110)와 사용자 단말(120)은 네트워크(예를 들어, 인터넷 통신망, 유무선의 근거리 통신망 또는 광역 데이터 통신망 등)를 통해 서로 통신할 수 있다. 실시예에 따라, 게임 실행 최적화 장치(110)는 게임 서버(미도시)에 포함되어 동작할 수 있다.The game execution optimization device 110 and the user terminal 120 may communicate with each other through a network (eg, an Internet communication network, a wired or wireless local area communication network, or a wide area data communication network). Depending on the embodiment, the game execution optimization device 110 may be included in a game server (not shown) to operate.

사용자 단말(120)은 사용자의 게임 플레이를 가능하게 하는 컴퓨팅 장치로서, 예를 들어 셀룰러 폰, 스마트 폰, 퍼스널 컴퓨터, 랩탑, 노트북, 넷북, 태블릿 또는 휴대 정보 단말기(personal digital assistant; PDA)일 수 있다. 본 명세서에서 ‘사용자’는 게임 유저 또는 게이머로도 지칭될 수 있고, ‘사용자 단말(120)’은 게임 클라이언트로도 지칭될 수 있다.The user terminal 120 is a computing device that enables a user to play a game, and may be, for example, a cellular phone, a smart phone, a personal computer, a laptop, a notebook, a netbook, a tablet, or a personal digital assistant (PDA). have. In this specification, the'user' may also be referred to as a game user or a gamer, and the'user terminal 120' may also be referred to as a game client.

게임 실행 최적화 장치(110)는 사용자 단말(120)로부터 사용자 단말(130)의 기기 정보를 수신하고, 수신한 기기 정보를 데이터베이스(115)에 저장할 수 있다. 예를 들어, 게임 실행 최적화 장치(110)는 사용자 단말(120)의 기기 모델에 대한 정보(예, 기기 모델명, 기기 타입 식별 정보 등)나 사용자 단말(120)의 기기 스펙(spec), 성능 및 시스템 환경에 대한 정보(예, 프로세서, 메모리, 배터리, 네트워크 사양, 디스플레이 및 게임 엔진 등에 관한 정보) 중 적어도 하나를 수집할 수 있다.The game execution optimization apparatus 110 may receive device information of the user terminal 130 from the user terminal 120 and store the received device information in the database 115. For example, the game execution optimization device 110 may include information on a device model of the user terminal 120 (eg, device model name, device type identification information, etc.) or a device specification, performance, and performance of the user terminal 120. At least one of information on the system environment (eg, information on a processor, memory, battery, network specification, display, and game engine) may be collected.

일 실시예에서, 게임 실행 최적화 장치(110)는 사용자 단말(120)에 게임 최적화 설정 정보를 제공할 수 있다. 게임 실행 최적화 장치(110)는 게임 서비스를 플레이하고자 하는 사용자 단말(120) 기기 정보에 기초하여 사용자 단말(120)에 대응하는 게임 최적화 설정 정보를 사용자 단말(120)에 제공할 수 있다. 사용자 단말(120)의 기기 모델, 성능, 시스템 환경 등에 대응되는 게임 최적화 설정이 미리 설정되어 있고, 이러한 게임 최적화 설정에 대한 정보는 데이터베이스(115)에 저장되어 있을 수 있다. 게임 최적화 설정 정보는, 예를 들어 사전에 여러 테스트 기기들을 이용하여 도출(또는 학습)된 각 기기 모델에 최적화된 게임 최적화 설정 정보일 수 있다. In one embodiment, the game execution optimization device 110 may provide game optimization setting information to the user terminal 120. The game execution optimization apparatus 110 may provide game optimization setting information corresponding to the user terminal 120 to the user terminal 120 based on the device information of the user terminal 120 to play the game service. Game optimization settings corresponding to the device model, performance, and system environment of the user terminal 120 are previously set, and information on such game optimization settings may be stored in the database 115. The game optimization setting information may be, for example, game optimization setting information optimized for each device model derived (or learned) using several test devices in advance.

일 실시예에서, 게임 실행 최적화 장치(110)는 사용자 단말(120)의 기기 특성에 따른 최적의 게임 설정 정보를 결정하기 위해 수동으로 게임 설정들을 다양하게 바꿔 보면서 게임 프로그램의 실행 성능을 테스트할 수 있다. 예를 들어, 게임 실행 최적화 장치(110)는 게임 프로그램의 그래픽 품질(예, 텍스쳐 품질, 그림자 품질, 이펙트 품질 등), 화면 해상도, 화면 재생 속도, 화면 내 최대 인원 표시 정도, 배경 가시거리, 안티 앨리어싱(anti-aliasing) 여부, 블룸(bloom) 여부, 그림자 표시, 이펙트 표시 등을 조정해 가며 게임 프로그램의 실행 성능을 테스트할 수 있다.In one embodiment, the game execution optimization device 110 may test execution performance of a game program while manually changing game settings in various ways in order to determine optimal game setting information according to device characteristics of the user terminal 120. have. For example, the game execution optimizing device 110 is the game program's graphic quality (eg, texture quality, shadow quality, effect quality, etc.), screen resolution, screen playback speed, maximum number of people in the screen, background visibility, anti- You can test the execution performance of a game program by adjusting whether it is anti-aliasing, whether it blooms, shadows, effects, etc.

게임 실행 최적화 장치(110)는 위와 같은 게임 설정 정보들을 다양한 조합으로 바꿔보면서 게임 프로그램 실행 중의 나쁜 상황에 강한 설정 조합을 찾을 수 있다. 여기서, 나쁜 상황은, 예를 들어 잦은 크래시, 높은 배터리 소진율 및 높은 발열의 항목들 중에서 하나 이상을 고려하여 판단될 수 있다. 복수 개가 고려되는 경우, 각 항목들에 가중치가 적용된 결과 값에 기초하여 나쁜 상황인지 여부가 판단될 수 있다. 강한 설정 조합을 찾는 것은 가성비 내지 효율이 가장 뛰어난 조합을 찾는 것을 의미한다. 예를 들어, 가성비가 가장 뛰어난 조합은 위 나쁜 상황이 일어나는 빈도에 대한 그래프의 기울기가 갑자기 높아지는 지점의 직전 지점에 대응되는 조합일 수 있다.The game execution optimization device 110 may find a setting combination that is strong in a bad situation during execution of a game program while changing the above game setting information into various combinations. Here, the bad situation may be determined by considering one or more of items of, for example, frequent crashes, high battery consumption, and high heat generation. When a plurality of items are considered, it may be determined whether or not a bad situation is based on a result value to which a weight is applied to each item. Finding a strong combination of settings means finding the best cost-effective or efficient combination. For example, the combination with the best cost-effectiveness may be a combination corresponding to a point just before the point where the slope of the graph for the frequency at which the bad situation occurs suddenly increases.

사용자 단말(120)의 기기 모델명이 'A(예, 갤럭X S9)'라고 가정하면, 게임 실행 최적화 장치(110)는 A에 대응하는 미리 설정된 게임 최적화 설정 정보를 사용자 단말(120)에 제공할 수 있다. 예를 들어, 그래픽 최적 설정의 경우, 게임 실행 최적화 장치(110)는 사용자 단말(120)의 기기 스펙(spec) 정보나 기기 모델 정보를 수집하고, 사용자 단말(120)의 기기 스펙이나 기기 모델에 따른 그래픽 최적 설정 정보를 사용자 단말(120)에 제공할 수 있다. 사용자 단말(120)은 게임 실행 최적화 장치(110)로부터 수신한 게임 최적화 설정 정보를 토대로 게임 프로그램의 게임 환경(예, 그래픽 해상도, 특수 효과 처리 설정 등)을 설정함으로써 별도의 번거로운 조작 없이 최적화된 게임 환경으로 게임 프로그램을 실행시킬 수 있다.Assuming that the device model name of the user terminal 120 is'A (e.g., Galaxy X S9)', the game execution optimization device 110 may provide preset game optimization setting information corresponding to A to the user terminal 120. I can. For example, in the case of the optimal graphic setting, the game execution optimization device 110 collects device spec information or device model information of the user terminal 120, and the device specification or device model of the user terminal 120 Accordingly, the optimal graphic setting information may be provided to the user terminal 120. The user terminal 120 sets the game environment (eg, graphic resolution, special effect processing settings, etc.) of the game program based on the game optimization setting information received from the game execution optimization device 110 to optimize the game without additional cumbersome operation. You can run game programs in the environment.

이전까지는 사용자가 사용자 단말을 통해 게임 프로그램을 실행하고, 해당 게임 프로그램에서 제공하는 설정 옵션을 통해 게임 그래픽 등과 같은 게임 환경 설정을 조정할 수 있다. 사용자는 자신이 이용하는 사용자 단말의 기기 사양에 맞는 최적의 게임 환경 설정을 찾아내기 위해 설정 옵션에서 제공되는 여러 설정 항목들을 조정해 가면서 여러 번 반복하여 테스트해봐야 한다는 불편함이 있다. 하지만, 본 발명에 따르면, 사용자는 게임 실행 최적화 장치(110)가 제공하는 게임 최적화 설정 정보를 토대로 별도의 번거로운 과정 없이 자신이 이용하는 사용자 단말에 최적화된 게임 환경 설정에 대한 정보를 제공받을 수 있다. 이와 같이, 게임 실행 최적화 장치(110)는 사용자에게 사용자 단말(120)에서 게임 프로그램을 실행시키는데 있어 최적의 게임 품질 설정을 제안할 수 있다.Until before, a user can run a game program through a user terminal and adjust game environment settings such as game graphics through setting options provided by the game program. The user is inconvenient in having to repeatedly test several times while adjusting various setting items provided in the setting option in order to find the optimum game environment setting that meets the device specifications of the user terminal he is using. However, according to the present invention, a user may be provided with information on a game environment setting optimized for a user terminal used by the user without a separate cumbersome process based on game optimization setting information provided by the game execution optimization device 110. In this way, the game execution optimization device 110 may propose an optimal game quality setting for executing a game program in the user terminal 120 to the user.

다른 실시예에서, 게임 실행 최적화 장치(110)는 사용자 단말(120)이 게임 프로그램을 실행하는 중에 크래시(crash)가 발생할 가능성을 추정하고, 추정된 가능성에 따라 크래시가 발생할 가능성을 낮추기 위한 대응 조치를 실행시킬 수 있다. 여기서, 크래시는 게임 프로그램 실행 중에 발생하는 비정상적인 동작(예, 게임 프로그램의 비정상적인 종료, 느려짐 또는 멈춤 등)을 의미한다. In another embodiment, the game execution optimization device 110 estimates the likelihood of a crash occurring while the user terminal 120 is executing a game program, and takes countermeasures to reduce the likelihood of a crash occurring according to the estimated likelihood. Can be executed. Here, the crash refers to an abnormal operation (eg, abnormal termination, slowness, or stopping of the game program) occurring during execution of the game program.

게임 실행 최적화 장치(110)는 학습 과정을 통해 생성된 크래시 발생 예측 모델을 이용하여 크래시의 발생 가능성을 실시간으로 추정하고, 추정한 발생 가능성에 기초하여 크래시가 발생할 것으로 예상되는 상황에서 다양한 대응 조치를 수행할 수 있다. 예를 들어, 게임 실행 최적화 장치(110)는 크래시 발생이 예상되는 상황에서 소프트웨어 레벨의 리소스 확보나 사용자에게 크래시 발생 경고 알림, 게임 프로그램 게임 설정 변경 등의 대응 조치를 수행할 수 있다.The game execution optimization device 110 estimates the probability of a crash in real time using a crash prediction model generated through the learning process, and takes various countermeasures in a situation where a crash is expected to occur based on the estimated probability of occurrence. Can be done. For example, when a crash is expected, the game execution optimization device 110 may secure a software-level resource, notify a user of a crash occurrence warning, or change a game program game setting in a situation where a crash is expected.

게임 프로그램의 실행 중 크래시가 발생하기 직전의 상황에 대한 데이터를 학습 데이터로 이용하여, 크래시 발생 예측 모델이 학습될 수 있다. 이렇게 학습된 크래시 발생 예측 모델은, 예를 들어 크래시가 발생하기 직전의 사용자 단말의 시스템 상황 및 사용자 단말(120)의 기기 사양에 대한 정보에 기초하여 앞으로 크래시가 발생할 가능성을 수치화된 값으로 출력할 수 있다. A crash occurrence prediction model may be trained by using data on a situation immediately before a crash occurs during execution of a game program as training data. The crash occurrence prediction model learned in this way outputs the possibility of a crash in the future as a numerical value based on information on the system status of the user terminal immediately before the crash and the device specifications of the user terminal 120. I can.

게임 실행 최적화 장치(110)는 게임 프로그램 실행 상황을 모니터링하고, 모니터링 결과를 기초로 크래시 발생 예측 모델을 통해 크래시 발생 가능성을 예측할 수 있다. 게임 실행 최적화 장치(110)는 크래시가 발생할 것으로 예상되는 상황에서는 상황에 맞는 적절한 대응 조치를 수행함으로써 사용자 단말(120)에서 게임 프로그램이 문제 없이 안정적으로 실행될 수 있도록 한다. 예를 들어, 사용자 단말(120)의 메모리 부족으로 크래시가 발생할 가능성이 높다고 예상되는 상황인 경우, 게임 실행 최적화 장치(110)는 메모리를 사용하고 있는 다른 애플리케이션이나 프로그램을 종료시킴으로써 게임 프로그램의 실행에 필요한 메모리를 확보할 수 있다.The game execution optimization device 110 may monitor a game program execution state and predict a crash occurrence probability through a crash occurrence prediction model based on the monitoring result. In a situation where a crash is expected to occur, the game execution optimization device 110 performs appropriate countermeasures according to the situation so that the game program can be stably executed in the user terminal 120 without problems. For example, in a situation where it is expected that a crash is likely to occur due to insufficient memory of the user terminal 120, the game execution optimization device 110 terminates other applications or programs using the memory to prevent the execution of the game program. You can reserve the necessary memory.

이하에서는, 게임 실행 최적화 장치와 게임 실행 최적화 장치에 의해 수행되는 동작들을 보다 자세히 설명한다. Hereinafter, operations performed by the game execution optimization device and the game execution optimization device will be described in more detail.

도 2는 일 실시예에 따른 게임 실행 최적화 장치의 구성을 도시한 도면이다.2 is a diagram illustrating a configuration of an apparatus for optimizing game execution according to an exemplary embodiment.

도 2를 참조하면, 게임 실행 최적화 장치(200)는 수집부(210), 결정부(220), 제어부(230), 저장부(240) 및 통신부(250)를 포함한다. 수집부(210), 결정부(220), 제어부(230), 저장부(240) 및 통신부(250)는 버스(bus)의 통신 시스템을 통해 서로 간에 통신할 수 있다.Referring to FIG. 2, the game execution optimization apparatus 200 includes a collection unit 210, a determination unit 220, a control unit 230, a storage unit 240, and a communication unit 250. The collection unit 210, the determination unit 220, the control unit 230, the storage unit 240, and the communication unit 250 may communicate with each other through a communication system of a bus.

수집부(210)는 게임 프로그램을 실행하거나 실행하고자 하는 사용자 단말의 기기 정보를 수집할 수 있다. 예를 들어, 수집부(210)는 사용자 단말의 기기 모델에 대한 정보, 사용자 단말의 기기 사양(예, 프로세서 사양, 메모리 여유, 배터리 잔존량, 네트워크 사양, 디스플레이 등), 그래픽 설정(예, 해상도, 프레임 레이트(frame rate) 등), 게임 엔진 등에 관한 정보를 수집할 수 있다. 여기서, 게임 엔진에 대한 정보는 게임 화면의 렌더링과 관련하여 텍스쳐(texture), 메쉬(mesh), 드로우 콜(draw call), 리소스 등에 관한 정보를 포함한다. 수집부(210)는 통신부(250)를 통해 기기 정보의 수집을 위해 사용자 단말에 기기 정보의 제공 요청을 전송할 수 있고, 사용자 단말은 해당 제공 요청에 응답하여 사용자 단말의 기기 정보를 게임 실행 최적화 장치(200)에 전송할 수 있다.The collection unit 210 may execute a game program or collect device information of a user terminal to be executed. For example, the collection unit 210 includes information on the device model of the user terminal, device specifications of the user terminal (eg, processor specifications, memory space, remaining battery capacity, network specifications, display, etc.), and graphic settings (eg, resolution). , Frame rate, etc.), game engines, etc. can be collected. Here, the information on the game engine includes information on a texture, a mesh, a draw call, and a resource in relation to the rendering of the game screen. The collection unit 210 may transmit a request to provide device information to the user terminal to collect device information through the communication unit 250, and the user terminal responds to the request to provide device information of the user terminal to the game execution optimization device. It can be sent to 200.

또한, 수집부(210)는 사용자 단말의 게임 프로그램 동작과 관련하여 성능 문제가 발생하였는지 여부에 대한 정보를 수집할 수 있다. 예를 들어, 수집부(210)는 게임 프로그램 실행 중에 영상 프레임의 끊김, 게임 프로그램에서의 크래시 발생 여부에 대한 정보를 수집할 수 있다.In addition, the collection unit 210 may collect information on whether a performance problem has occurred in relation to the operation of the game program of the user terminal. For example, the collection unit 210 may collect information on whether an image frame is cut off or a crash occurs in the game program during execution of the game program.

제어부(230)는 게임 실행 최적화 장치(200)의 전체적인 동작을 제어한다.The controller 230 controls the overall operation of the game execution optimization apparatus 200.

일 실시예에서, 결정부(220)는 사용자 단말의 기기 정보에 기초하여 사용자 단말에 대응하는 게임 최적화 설정 정보를 결정할 수 있다. 예를 들어, 결정부(220)는 사용자 단말의 기기 모델에 대응하는 미리 설정된 게임 설정 정보를 게임 최적화 설정 정보로 결정할 수 있다. 결정부(220)는 수집된 사용자 단말의 기기 정보에 기초하여, 미리 정의된 게임 최적화 설정들 중 사용자 단말의 기기 모델에 대응되는 게임 최적화 설정을 선택하고, 선택된 게임 최적화 설정에 대한 정보를 사용자 단말에 대응하는 게임 최적화 설정 정보로 결정할 수 있다. 만약, 기기 모델에 정확히 대응되는 게임 설정 정보가 등록되어 있지 않은 경우, 결정부(220)는 미리 정의된 서로 다른 기기 모델들 중 사용자 단말의 기기 모델의 기기 사양과 가장 유사한 기기 모델을 선택하고, 해당 선택된 기기 모델에 대응하는 미리 설정된 게임 설정 정보를 게임 최적화 설정 정보로 결정할 수 있다.In an embodiment, the determination unit 220 may determine game optimization setting information corresponding to the user terminal based on device information of the user terminal. For example, the determination unit 220 may determine preset game setting information corresponding to the device model of the user terminal as game optimization setting information. Based on the collected device information of the user terminal, the determination unit 220 selects a game optimization setting corresponding to the device model of the user terminal from among predefined game optimization settings, and provides information on the selected game optimization setting to the user terminal. It can be determined by game optimization setting information corresponding to. If game setting information exactly corresponding to the device model is not registered, the determination unit 220 selects a device model that is most similar to the device specification of the device model of the user terminal from among different device models defined in advance, Pre-set game setting information corresponding to the selected device model may be determined as game optimization setting information.

도 3a 및 도 3b를 참조하면, 게임 프로그램에서 그래픽 설정 화면의 일례들이 도시되어 있다. 예를 들어, 게임 프로그램의 옵션에서는 그래픽 품질의 정도, 게임 효과에 대한 이펙트 품질, 텍스쳐 품질, 그림자 품질, 화면 해상도, 화면 재생 속도 및 그림자 표시 여부 등을 조정할 수 있다. 이러한 다양한 항목의 설정 값에 따라 게임 프로그램의 렌더링 화면 품질이나 처리 속도가 달라질 수 있다. 사용자 단말의 기기 사양과 게임 프로그램 실행 환경에 따라 최적의 설정 값들이 달라질 수 있기 때문에, 게임 실행 최적화 장치(200)와 같이 최적의 설정 값들을 자동으로 찾아 이를 게임 최적화 설정 정보의 형태로 사용자 단말에 제공해 준다면 사용자는 보다 편하면서 최적의 환경에서 게임 플레이를 즐길 수 있게 된다.3A and 3B, examples of a graphic setting screen in a game program are shown. For example, in the options of the game program, you can adjust the degree of graphic quality, effect quality for game effects, texture quality, shadow quality, screen resolution, screen playback speed, and whether or not to display shadows. Depending on the setting values of these various items, the rendering screen quality or processing speed of the game program may vary. Since the optimal setting values may vary according to the device specifications of the user terminal and the game program execution environment, the optimal setting values are automatically found, such as the game execution optimization device 200, to the user terminal in the form of game optimization setting information. If provided, users will be able to enjoy game play in a more comfortable and optimal environment.

다시 도 2로 돌아오면, 다른 실시예에서 결정부(220)는 사용자 단말의 기기 정보에 기초하여 사용자 단말에서 게임 프로그램을 실행하는 중에 크래시가 발생할 확률에 대한 스코어를 결정할 수 있다. 이를 위해, 결정부(220)는 로지스틱 회귀(logistic regression) 모델 등을 크래시 발생 예측 모델로 이용할 수 있다. 예를 들어, 선택 가능한 게임 최적화 설정의 개수에 기초하여 로지스틱 회귀 모델이 학습되고, 결정부(220)는 학습된 로지스틱 회귀 모델을 이용하여 크래시의 발생 확률을 예측할 수 있다. 로지스틱 회귀 모델의 학습 과정은 다양한 기기 모델에서의 테스트 결과 정보와 사용자 단말로부터 수집한 실제 크래시 발생 정보에 기초하여 수행될 수 있다.Returning to FIG. 2 again, in another embodiment, the determination unit 220 may determine a score for a probability of a crash occurring while executing a game program in the user terminal based on device information of the user terminal. To this end, the determination unit 220 may use a logistic regression model or the like as a crash occurrence prediction model. For example, a logistic regression model is trained based on the number of selectable game optimization settings, and the determiner 220 may predict a crash occurrence probability using the learned logistic regression model. The learning process of the logistic regression model may be performed based on test result information in various device models and actual crash occurrence information collected from a user terminal.

결정부(220)는 수집된 사용자 단말의 기기 정보를 로지스틱 회귀 모델에 적용하여 크래시가 발생한 확률에 대한 스코어를 추정할 수 있다. 로지스틱 회귀 모델은 입력된 기기 정보를 토대로 크래시가 발생할 확률에 대한 수치화된 값인 스코어를 출력할 수 있다. 결정부(220)는 해당 스코어에 기초하여 사용자 단말에 최적화된 게임 최적화 설정 정보를 결정할 수 있다.The determination unit 220 may estimate a score for a probability of a crash by applying the collected device information of the user terminal to the logistic regression model. The logistic regression model may output a score, which is a numerical value for the probability of a crash, based on input device information. The determination unit 220 may determine game optimization setting information optimized for the user terminal based on the corresponding score.

해당 스코어가 미리 설정된 조건을 만족시키는 경우, 제어부(230)는 미리 정의된 대응 조치를 실행할 수 있다. 일례로, 스코어가 위 조건을 만족시키는 경우, 제어부(230)는 사용자 단말을 통해 크래시의 발생을 경고하기 위한 알림 정보가 출력되도록 사용자 단말을 제어하기 위한 제어 신호나 사용자 단말에서 실행되는 게임 프로그램의 설정을 조정하기 위한 제어 신호를 생성할 수 있다. 다른 예로, 제어부(230)는 해당 스코어가 위 조건을 만족시키는 경우, 사용자 단말의 기기 동작을 제어하기 위한 제어 신호를 생성할 수도 있다.When the score satisfies a preset condition, the controller 230 may execute a predefined response action. For example, when the score satisfies the above condition, the controller 230 may output a control signal for controlling the user terminal or a game program executed in the user terminal so that notification information for warning of the occurrence of a crash is output through the user terminal. It can generate control signals to adjust settings. As another example, when the corresponding score satisfies the above condition, the controller 230 may generate a control signal for controlling the operation of the device of the user terminal.

저장부(240)는 수집부(210)에 의해 수집된 사용자 단말의 기기 정보, 게임 최적화 설정 정보 및 크래시 발생 예측 모델에 대한 정보를 저장할 수 있다.The storage unit 240 may store device information of a user terminal, game optimization setting information, and information on a crash occurrence prediction model collected by the collection unit 210.

통신부(250)는 게임 실행 최적화 장치(200)와 외부 장치 간의 통신을 수행하는 기능을 수행한다. 예를 들어, 통신부(250)는 사용자 단말로부터 사용자 단말의 기기 정보를 수신할 수 있고, 게임 최적화 설정 정보를 사용자 단말에 전송할 수 있다. 또한, 통신부(250)는 사용자 단말에 크래시 발생을 경고하기 위한 경고 알림 메시지나 제어부(230)에 의해 생성된 제어 신호를 전송할 수 있다.The communication unit 250 performs a function of performing communication between the game execution optimization device 200 and an external device. For example, the communication unit 250 may receive device information of the user terminal from the user terminal and transmit game optimization setting information to the user terminal. In addition, the communication unit 250 may transmit a warning notification message for warning of the occurrence of a crash to the user terminal or a control signal generated by the control unit 230.

위와 같은 게임 실행 최적화 장치(200)의 기능들로 인하여 사용자는 현재 자신의 사용자 단말에 맞는 최적의 게임 설정으로 게임 프로그램을 실행할 수 있고, 게임 프로그램의 동작과 관련하여 게임 설정의 부적합한 조정으로 인하여 성능 문제가 발생한 경우, 게임 실행 최적화 장치(200)는 데이터에 기초하여 성능 문제를 분석하고 이를 해결하기 위한 대응 조치를 제공할 수 있다. 이에 따라, 사용자 단말의 기기 성능 문제로 인하여 사용자가 게임 프로그램의 실행을 포기하고 게임 서비스에서 이탈되는 것이 방지될 수 있다.Due to the functions of the game execution optimization device 200 as described above, the user can run the game program with the optimal game setting suitable for the current user terminal, and performance due to inappropriate adjustment of the game setting in relation to the operation of the game program. When a problem occurs, the game execution optimization apparatus 200 may analyze a performance problem based on data and provide a response measure to solve the problem. Accordingly, it is possible to prevent the user from giving up the execution of the game program and leaving the game service due to the device performance problem of the user terminal.

도 4는 일 실시예에 따른 게임 설정 정보 제공 방법의 동작을 설명하기 위한 흐름도이다. 게임 설정 정보 제공 방법은 본 명세서에서 설명된 게임 실행 최적화 장치에 의해 수행될 수 있다.4 is a flowchart illustrating an operation of a method of providing game setting information according to an exemplary embodiment. The method of providing game setting information may be performed by the game execution optimization apparatus described herein.

도 4를 참조하면, 단계(410)에서 게임 실행 최적화 장치는 사용자 단말의 기기 정보를 수집한다. 예를 들어 게임 실행 최적화 장치는 사용자 단말의 기기 모델에 대한 정보, 사용자 단말의 기기 사양(예, 프로세서 사양, 메모리 여유, 배터리 잔존량, 네트워크 사양, 디스플레이 등), 그래픽 설정(예, 해상도, 프레임 레이트 등), 게임 엔진 등에 관한 정보를 수집할 수 있다.Referring to FIG. 4, in step 410, the game execution optimization apparatus collects device information of a user terminal. For example, the game execution optimization device includes information on the device model of the user terminal, device specifications of the user terminal (e.g., processor specifications, memory space, remaining battery capacity, network specifications, display, etc.), and graphic settings (e.g., resolution, frame). Rate, etc.), game engines, etc.

단계(420)에서, 게임 실행 최적화 장치는 사용자 단말의 기기 정보에 기초하여 사용자 단말에 대응하는 게임 최적화 설정 정보를 결정할 수 있다. 게임 실행 최적화 장치는 사용자 단말의 기기 모델에 대응하는 미리 설정된 게임 설정 정보를 게임 최적화 설정 정보로 결정할 수 있다. 예를 들어, 게임 실행 최적화 장치는 미리 정의된 서로 다른 기기 모델들 중 사용자 단말의 기기 모델의 기기 사양과 가장 유사한 기기 모델을 선택하고, 해당 선택된 기기 모델에 대응하는 미리 설정된 게임 설정 정보를 게임 최적화 설정 정보로 결정할 수 있다.In step 420, the apparatus for optimizing game execution may determine game optimization setting information corresponding to the user terminal based on device information of the user terminal. The game execution optimization apparatus may determine preset game setting information corresponding to the device model of the user terminal as game optimization setting information. For example, the game execution optimization device selects a device model that is most similar to the device specification of the device model of the user terminal among different predefined device models, and optimizes the game with preset game setting information corresponding to the selected device model. It can be determined by setting information.

다른 예로, 게임 실행 최적화 장치는 단계(410)에서 수집된 기기 정보(예, 기기 사양에 대한 정보)에 기초하여, 미리 정의된 게임 최적화 설정들 중 사용자 단말의 기기 모델에 대응되는 게임 최적화 설정을 선택하고, 선택된 게임 최적화 설정에 대한 정보를 사용자 단말에 대응하는 게임 최적화 설정 정보로 결정할 수도 있다.As another example, the game execution optimization device sets a game optimization setting corresponding to the device model of the user terminal from among predefined game optimization settings, based on the device information (eg, information on device specifications) collected in step 410. It is also possible to select and determine information on the selected game optimization setting as game optimization setting information corresponding to the user terminal.

단계(430)에서, 게임 실행 최적화 장치는 게임 최적화 설정 정보를 사용자 단말에 전송할 수 있다. 여기서, 게임 최적화 설정 정보는, 예를 들어 사용자 단말에서 게임 프로그램을 실행하는데 적용되는 그래픽 품질 설정, 화면 재생 속도 설정, 오디오 설정, 진동 효과 설정 및 부가 정보 제공 설정 중 적어도 하나에 관한 설정 정보를 포함할 수 있다. 사용자 단말은 게임 실행 최적화 장치로부터 게임 최적화 설정 정보를 수신하고, 수신한 게임 최적화 설정 정보로 게임 프로그램의 설정 정보를 조정할 수 있다. 이를 통해, 사용자 단말은 게임 최적화 설정 정보에 기반하여 게임 프로그램을 실행하게 되고, 사용자는 최적의 게임 설정에서 게임 프로그램을 즐길 수 있게 된다.In step 430, the game execution optimization apparatus may transmit game optimization setting information to the user terminal. Here, the game optimization setting information includes, for example, setting information on at least one of a graphic quality setting, a screen playback speed setting, an audio setting, a vibration effect setting, and an additional information provision setting applied to executing a game program in the user terminal. can do. The user terminal may receive game optimization setting information from the game execution optimization device, and adjust setting information of a game program with the received game optimization setting information. Through this, the user terminal executes the game program based on the game optimization setting information, and the user can enjoy the game program in the optimal game setting.

도 5는 일 실시예에 따른 게임 실행 최적화 방법의 동작을 설명하기 위한 흐름도이다. 게임 실행 최적화 방법은 본 명세서에서 설명된 게임 실행 최적화 장치에 의해 수행될 수 있다.5 is a flowchart illustrating an operation of a game execution optimization method according to an exemplary embodiment. The game execution optimization method may be performed by the game execution optimization apparatus described herein.

도 5를 참조하면, 단계(510)에서 게임 실행 최적화 장치는 사용자 단말의 기기 정보를 수집할 수 있다. 게임 실행 최적화 장치는 실시간 또는 미리 설정된 시간 주기로 사용자 단말의 기기 정보를 수집할 수 있다. 예를 들어, 게임 실행 최적화 장치는 사용자 단말의 프로세서, 메모리, 배터리, 네트워크 사양, 디스플레이 및 게임 엔진 중 적어도 하나에 관한 정보를 수집할 수 있다.Referring to FIG. 5, in step 510, the apparatus for optimizing game execution may collect device information of a user terminal. The game execution optimization device may collect device information of the user terminal in real time or at a preset time period. For example, the game execution optimization apparatus may collect information on at least one of a processor, a memory, a battery, a network specification, a display, and a game engine of the user terminal.

단계(520)에서, 게임 실행 최적화 장치는 사용자 단말의 기기 정보에 기초하여 사용자 단말에서 게임 프로그램을 실행하는 중에 크래시가 발생할 확률에 대한 스코어를 결정할 수 있다. 이 때, 게임 실행 최적화 장치는 학습된 크래시 발생 예측 모델을 이용하여 해당 스코어를 결정할 수 있다. 예를 들어, 게임 실행 최적화 장치는 수집된 사용자 단말의 기기 정보를 미리 학습된 로지스틱 회귀 모델에 적용하여 해당 스코어를 추정할 수 있다.In step 520, the apparatus for optimizing game execution may determine a score for a probability of occurrence of a crash while executing a game program in the user terminal based on the device information of the user terminal. In this case, the game execution optimization apparatus may determine the corresponding score using the learned crash occurrence prediction model. For example, the game execution optimization apparatus may estimate a corresponding score by applying the collected device information of the user terminal to a pre-learned logistic regression model.

게임 실행 최적화 장치는 게임 프로그램 실행 시에 기기 정보의 특징들을 로지스틱 회귀 모델에 입력으로 하여 크래시가 발생할 가능성이 높아지는 지점을 식별할 수 있다. 여기서, 기기 정보의 특징들은 사용자 단말의 기기 모델 정보, 사용자 단말의 현재 기기 상황(예, CPU, 메모리, 발열, 네트워크 사용률, 프레임 레이트 등)을 포함할 수 있다.The apparatus for optimizing game execution may identify a point at which a crash is likely to occur by inputting features of device information into a logistic regression model when a game program is executed. Here, the characteristics of the device information may include device model information of the user terminal, and current device status of the user terminal (eg, CPU, memory, heat generation, network usage rate, frame rate, etc.).

일 실시예에서, 스코어의 추정을 위해 다음의 수학식 1과 같은 로지스틱 회귀 모델이 이용될 수 있다. 아래 수학식 1에 따른 로지스틱 회귀 모델은 사용자 모델의 기기 정보에 기반하여 앞으로 크래시가 발생할지 여부에 대한 예측 값을 출력할 수 있다.In an embodiment, a logistic regression model such as Equation 1 below may be used to estimate the score. The logistic regression model according to Equation 1 below may output a predicted value for whether a crash will occur in the future based on device information of the user model.

Figure pat00001
Figure pat00001

여기서, y는 로지스틱 회귀 모델의 종속(또는 반응) 변수로서 크래시의 발생 여부를 나타내는 스코어이다. 일 실시예 따르면, 종속 변수 y는 2진형 범주로 확장될 수 있다. 예를 들어, 크래시가 발생할 것으로 예측된 경우는 종속 변수 y가 '1'로 결정되고, 크래시가 발생하지 않을 것으로 예측된 경우는 종속 변수 y가 '0'으로 결정될 수 있다. 여기서, '1' 및 '0'의 값이 스코어에 대응된다.Here, y is a dependent (or response) variable of the logistic regression model and is a score indicating whether a crash occurs. According to an embodiment, the dependent variable y may be extended to a binary category. For example, when a crash is predicted to occur, the dependent variable y may be determined as '1', and when a crash is predicted not to occur, the dependent variable y may be determined as '0'. Here, values of '1' and '0' correspond to the score.

x1, x2, …는 독립(또는 예측) 변수들로서, 예를 들어 CPU, 메모리, 배터리, 네트워크, 프레임 레이트, 게임 엔진에 관한 정보 중 하나 이상에 대응할 수 있다. 실시예에 따라, x1, x2, …에 정규화(normalization) 처리가 수행되고, 정규화 처리가 수행된 x1, x2, …가 수학식 1의 로지스틱 회귀 모델에 적용될 수도 있다. β0, β1, β2, …는 로지스틱 회귀 모델을 구성하는 파라미터들로서, 독립 변수들 각각에 적용되는 가중치에 대응한다.x 1 , x 2 ,… Is independent (or predicted) variables, and may correspond to one or more of information about a CPU, memory, battery, network, frame rate, and game engine, for example. According to an embodiment, x 1 , x 2 , ... Normalization processing is performed on and normalization processing is performed on x 1 , x 2 ,… May be applied to the logistic regression model of Equation 1. β 0 , β 1 , β 2 ,… Is parameters constituting the logistic regression model, and corresponds to a weight applied to each of the independent variables.

본 발명에서는 독립 변수 x가 [-∞, ∞] 범위에서 어떠한 값을 가지더라도 종속 변수 Y의 범위가 [0, 1]가 되도록 로지트 함수(logit function)를 이용할 수 있다. 수학식 1과 관련하여, 오즈(odds) 값, 로지트(logit) 값 및 로지트 함수를 이용한 확률 값은 다음의 수학식 2, 3 및 4와 같다.In the present invention, no matter what value the independent variable x has in the range of [-∞, ∞], a logit function can be used so that the range of the dependent variable Y is [0, 1]. Regarding Equation 1, an odds value, a logit value, and a probability value using a logit function are as shown in Equations 2, 3, and 4 below.

Figure pat00002
Figure pat00002

Figure pat00003
Figure pat00003

Figure pat00004
Figure pat00004

단계(530)에서, 게임 실행 최적화 장치는 단계(520)에서 결정된 스코어가 미리 설정된 조건을 만족시키는 경우, 미리 정의된 대응 조치를 실행할 수 있다. 일 실시예에서, 게임 실행 최적화 장치는 해당 스코어가 기준 값에 해당하는 경우 또는 스코어가 임계 값 이상인 경우, 대응 조치를 실행할 수 있다. 예를 들어, 게임 실행 최적화 장치는 수학식 4에서 크래시 발생 확률(스코어에 대응함)이 '1'로 결정되면, 대응 조치를 실행할 수 있다.In step 530, when the score determined in step 520 satisfies a preset condition, the apparatus for optimizing game execution may execute a predefined countermeasure. In an embodiment, the apparatus for optimizing game execution may execute a corresponding action when the score corresponds to a reference value or when the score is greater than or equal to a threshold value. For example, if the crash occurrence probability (corresponding to the score) in Equation 4 is determined to be '1', the game execution optimization apparatus may execute a corresponding action.

해당 스코어가 미리 설정된 조건을 만족시키는 경우, 게임 실행 최적화 장치는 사용자 단말을 통해 크래시의 발생을 경고하기 위한 알림 정보가 출력되도록 사용자 단말을 제어하기 위한 제어 신호를 생성할 수 있다. 이렇게 생성된 제어 신호는 사용자 단말에 전송되고, 사용자 단말은 크래시 발생 경고에 대한 알림 정보를 화면에 출력할 수 있다. 예를 들어, 도 6에 도시된 것과 같이, 사용자 단말의 화면에 “곧 크래시가 발생할 가능성이 높습니다”라는 내용을 전달하기 위한 메시지 또는 팝업 창을 출력하여 사용자에게 크래시 발생 경고를 알릴 수 있다.When the corresponding score satisfies a preset condition, the game execution optimization apparatus may generate a control signal for controlling the user terminal to output notification information for warning of the occurrence of a crash through the user terminal. The generated control signal is transmitted to the user terminal, and the user terminal may output notification information on a crash occurrence warning on the screen. For example, as illustrated in FIG. 6, a message or a pop-up window may be displayed on the screen of the user terminal to convey “a crash is likely to occur soon” to notify the user of a crash occurrence warning.

다른 예로, 게임 실행 최적화 장치는 해당 스코어가 미리 설정된 조건을 만족시키는 경우, 사용자 단말에서 실행되는 게임 프로그램의 설정을 조정하기 위한 제어 신호를 생성하고, 생성한 제어 신호를 사용자 단말에 전송할 수 있다. 예를 들어, 사용자 단말이 해당 제어 신호를 수신한 경우, 게임 프로그램의 그래픽 해상도, 텍스쳐/이펙트 품질, 화면 재생 속도, 배경 가시거리 등을 현재 설정 값보다 낮은 값으로 변경할 수 있다.As another example, when a corresponding score satisfies a preset condition, the apparatus for optimizing game execution may generate a control signal for adjusting a setting of a game program executed in the user terminal, and transmit the generated control signal to the user terminal. For example, when the user terminal receives the corresponding control signal, the graphic resolution, texture/effect quality, screen playback speed, and background viewing distance of the game program may be changed to a value lower than the current setting value.

다른 예로, 게임 실행 최적화 장치는 해당 스코어가 미리 설정된 조건을 만족시키는 경우, 사용자 단말의 기기 동작을 제어하기 위한 제어 신호를 생성하고, 생성된 제어 신호를 사용자 단말에 전송할 수 있다. 예를 들어, 제어 신호를 수신한 사용자 단말은 게임 프로그램 실행과 관련하여, 소프트웨어 레벨에서 사용자 단말을 조정할 수 있다. 예를 들어, 사용자 단말의 CPU 사용률을 조정(감소)되거나 다른 프로그램의 메모리 점유를 해제하는 조치가 수행될 수 있다. 또는, 게임 프로그램이 강제로 정지(pause)된 후 특정 리소스가 해제된 후 다시 게임 프로그램이 구동될 수 있다.As another example, when a corresponding score satisfies a preset condition, the apparatus for optimizing game execution may generate a control signal for controlling the operation of a device of the user terminal and transmit the generated control signal to the user terminal. For example, the user terminal receiving the control signal may adjust the user terminal at the software level in connection with the execution of the game program. For example, a measure of adjusting (decreasing) the CPU usage rate of the user terminal or releasing the memory occupancy of another program may be performed. Alternatively, the game program may be driven again after a specific resource is released after the game program is forcibly paused.

도 7은 일 실시예에 따른 게임 실행 최적화 장치의 구성을 도시하는 도면이다.7 is a diagram illustrating a configuration of an apparatus for optimizing game execution according to an exemplary embodiment.

도 7을 참조하면, 게임 실행 최적화 장치(700)는 프로세서(710), 메모리(720) 및 통신 인터페이스(730)를 포함할 수 있다. 실시예에 따라, 게임 실행 최적화 장치(700)는 데이터베이스(740)를 더 포함할 수도 있다. 게임 실행 최적화 장치(700)는 본 명세서에서 설명된 게임 실행 최적화 장치에 대응된다.Referring to FIG. 7, the game execution optimization apparatus 700 may include a processor 710, a memory 720, and a communication interface 730. According to an embodiment, the game execution optimization apparatus 700 may further include a database 740. The game execution optimizing device 700 corresponds to the game execution optimizing device described herein.

메모리(720)는 프로세서(710)에 연결되고, 프로세서(710)에 의해 실행가능한 인스트럭션들, 프로세서(710)가 연산할 데이터 또는 프로세서(710)에 의해 처리된 데이터를 저장할 수 있다. 메모리(720)는 비일시적인 컴퓨터 판독가능 매체, 예컨대 고속 랜덤 액세스 메모리 및/또는 비휘발성 컴퓨터 판독가능 저장 매체(예컨대, 하나 이상의 디스크 저장 장치, 플래쉬 메모리 장치, 또는 기타 비휘발성 솔리드 스테이트 메모리 장치)를 포함할 수 있다.The memory 720 is connected to the processor 710 and may store instructions executable by the processor 710, data to be calculated by the processor 710, or data processed by the processor 710. Memory 720 includes non-transitory computer readable media, such as high speed random access memory and/or non-volatile computer readable storage media (e.g., one or more disk storage devices, flash memory devices, or other non-volatile solid state memory devices). Can include.

통신 인터페이스(730)는 외부 장치(예를 들어, 사용자 단말)와 통신하기 위한 인터페이스를 제공한다. 통신 인터페이스(730)는 유선 또는 무선 네트워크를 통해 외부 장치와 통신할 수 있다.The communication interface 730 provides an interface for communicating with an external device (eg, a user terminal). The communication interface 730 may communicate with an external device through a wired or wireless network.

데이터베이스(740)는 게임 실행 최적화 장치(700)가 동작하는데 필요한 정보를 저장할 수 있다. 예를 들어, 데이터베이스(740)는 사용자 단말로부터 수집한 사용자 단말의 기기 정보, 사용자 단말의 게임 프로그램 동작과 관련하여 성능 문제가 발생하였는지 여부에 대한 정보, 게임 최적화 설정 정보 및 크래시 발생 예측 모델에 대한 정보를 저장할 수 있다.The database 740 may store information necessary for the game execution optimization device 700 to operate. For example, the database 740 includes information on the device information of the user terminal collected from the user terminal, information on whether a performance problem has occurred in relation to the operation of the game program of the user terminal, game optimization setting information, and a crash occurrence prediction model. Information can be saved.

프로세서(710)는 게임 실행 최적화 장치(700)내에서 실행하기 위한 기능 및 인스트럭션들을 실행하고, 게임 실행 최적화 장치(700)의 전체적인 동작을 제어한다. 프로세서(710)는 도 1 내지 도 6에서 설명된 게임 실행 최적화 장치의 동작과 관련된 하나 이상의 동작을 수행할 수 있다.The processor 710 executes functions and instructions for execution in the game execution optimizing device 700 and controls the overall operation of the game execution optimizing device 700. The processor 710 may perform one or more operations related to the operation of the game execution optimization apparatus described in FIGS. 1 to 6.

예를 들어, 프로세서(710)는 사용자 단말의 기기 정보를 수집하고, 사용자 단말의 기기 정보에 기초하여 사용자 단말에 대응하는 게임 최적화 설정 정보를 결정할 수 있다. 그 후, 프로세서(710)는 결정된 게임 최적화 설정 정보를 상기 사용자 단말에 전송하도록 통신 인터페이스(730)를 제어할 수 있다.For example, the processor 710 may collect device information of the user terminal and determine game optimization setting information corresponding to the user terminal based on the device information of the user terminal. Thereafter, the processor 710 may control the communication interface 730 to transmit the determined game optimization setting information to the user terminal.

다른 예로, 프로세서(710)는 사용자 단말의 기기 정보에 기초하여 사용자 단말에서 게임 프로그램을 실행하는 중에 크래시가 발생할 확률에 대한 스코어를 결정하고, 해당 스코어가 미리 설정된 조건을 만족시키는 경우(예, 스코어가 임계 값 이상인 경우) 미리 정의된 대응 조치를 실행하도록 제어할 수 있다. 예를 들어, 프로세서(710)는 사용자 단말의 기기 정보를 입력으로 하는 크래시 발생 예측 모델을 이용하여 스코어를 결정할 수 있다. 크래시의 발생을 경고하기 위한 알림 정보가 출력되도록 사용자 단말을 제어하기 위한 제어 신호, 사용자 단말에서 실행되는 게임 프로그램의 설정을 조정하기 위한 제어 신호 또는 사용자 단말의 기기 동작을 제어하기 위한 제어 신호를 생성할 수 있다. 생성된 제어 신호는 통신 인터페이스(730)를 통해 사용자 단말에 전달될 수 있다.As another example, the processor 710 determines a score for the probability of a crash occurring while executing a game program in the user terminal based on device information of the user terminal, and when the score satisfies a preset condition (eg, score Is greater than or equal to the threshold value) to execute a predefined response action. For example, the processor 710 may determine a score using a crash occurrence prediction model in which device information of a user terminal is input. Generates a control signal for controlling the user terminal so that notification information for warning of the occurrence of a crash is output, a control signal for adjusting the settings of a game program executed in the user terminal, or a control signal for controlling the device operation of the user terminal can do. The generated control signal may be transmitted to the user terminal through the communication interface 730.

도 8은 일 실시예에 따른 사용자 단말의 구성을 도시하는 도면이다.8 is a diagram illustrating a configuration of a user terminal according to an embodiment.

도 8을 참조하면, 사용자 단말(800)는 프로세서(810), 메모리(820) 및 통신 인터페이스(830)를 포함한다. 실시예에 따라, 사용자 단말(800)은 사용자 입력 인터페이스(840) 및 디스플레이(850) 를 더 포함할 수 있다. 사용자 단말(800)는 본 명세서에서 설명된 사용자 단말에 대응한다.Referring to FIG. 8, the user terminal 800 includes a processor 810, a memory 820 and a communication interface 830. Depending on the embodiment, the user terminal 800 may further include a user input interface 840 and a display 850. The user terminal 800 corresponds to the user terminal described herein.

메모리(820)는 프로세서(810)에 연결되고, 프로세서(810)에 의해 실행가능한 인스트럭션들, 프로세서(810)가 연산할 데이터 또는 프로세서(810)에 의해 처리된 데이터를 저장할 수 있다. 메모리(820)는 비일시적인 컴퓨터 판독가능 매체, 예컨대 고속 랜덤 액세스 메모리 및/또는 비휘발성 컴퓨터 판독가능 저장 매체를 포함할 수 있다.The memory 820 is connected to the processor 810 and may store instructions executable by the processor 810, data to be calculated by the processor 810, or data processed by the processor 810. Memory 820 may include non-transitory computer readable media, such as high speed random access memory and/or non-volatile computer readable storage media.

통신 인터페이스(830)는 외부 장치(예, 게임 실행 최적화 장치)와 통신하기 위한 인터페이스를 제공한다. 통신 인터페이스는 유선 또는 무선 네트워크를 통해 외부 장치와 통신할 수 있다. 통신 인터페이스(830)는 게임 실행 최적화 장치에 사용자 단말(800)의 기기 정보 및/또는 사용자 단말(800)의 게임 프로그램 동작과 관련하여 성능 문제가 발생하였는지 여부에 대한 정보를 전송할 수 있다. 예를 들어, 통신 인터페이스(830)는 사용자 단말(800)의 기기 모델에 대한 정보, 사용자 단말(800)의 기기 사양, 그래픽 설정, 게임 엔진 등에 관한 정보를 전송할 수 있다.The communication interface 830 provides an interface for communicating with an external device (eg, a game execution optimization device). The communication interface may communicate with an external device through a wired or wireless network. The communication interface 830 may transmit device information of the user terminal 800 and/or information on whether a performance problem has occurred in relation to the operation of a game program of the user terminal 800 to the game execution optimization apparatus. For example, the communication interface 830 may transmit information about a device model of the user terminal 800, a device specification of the user terminal 800, a graphic setting, a game engine, and the like.

사용자 입력 인터페이스(840)는 사용자에 의해 입력되는 사용자 입력을 수신한다. 일 실시예에서, 사용자 입력 인터페이스(840)는 게임 실행 최적화 장치에 게임 최적화 설정 정보의 요청을 포함하는 사용자 입력을 수신할 수 있다. 디스플레이(850)는 프로세서(810)에 의해 실행되는 게임 플레이 화면을 출력할 수 있다. 일 예에서, 디스플레이(850)는 모니터 또는 터치 스크린 디스플레이일 수 있다.The user input interface 840 receives a user input input by a user. In one embodiment, the user input interface 840 may receive a user input including a request for game optimization setting information to the game execution optimization device. The display 850 may output a game play screen executed by the processor 810. In one example, the display 850 may be a monitor or a touch screen display.

프로세서(810)는 사용자 단말(800) 내에서 실행하기 위한 기능 및 인스트럭션들을 실행하고, 사용자 단말(800)의 전체적인 동작을 제어한다. 프로세서(810)는 본 명세서에서 설명된 사용자 단말과 관련된 하나 이상의 동작을 수행할 수 있다. 프로세서(810)는 게임 실행 최적화 장치로부터 수신한 요청에 따라 기기 정보를 게임 실행 최적화 장치에 전송하도록 통신 인터페이스(830)를 제어할 수 있다. 일 실시예에서, 프로세서(810)는 게임 실행 최적화 장치로부터 수신한 게임 최적화 설정 정보에 따라 게임 프로그램의 게임 환경을 설정 내지 변경할 수 있다.The processor 810 executes functions and instructions for execution in the user terminal 800 and controls the overall operation of the user terminal 800. The processor 810 may perform one or more operations related to the user terminal described in this specification. The processor 810 may control the communication interface 830 to transmit device information to the game execution optimization device according to a request received from the game execution optimization device. In one embodiment, the processor 810 may set or change the game environment of the game program according to game optimization setting information received from the game execution optimization device.

다른 실시예에서, 프로세서(810)는 게임 실행 최적화 장치로부터 수신한 제어 신호를 실행할 수 있다. 제어 신호의 실행에 따라, 크래시의 발생을 경고하기 위한 알림 정보가 디스플레이(850)에 출력되거나 실행 중인 게임 프로그램의 설정이 변경될 수 있다. 또한, 제어 신호의 실행에 따라 사용자 단말(800)의 기기 동작이 제어될 수 있다. 예를 들어, 게임 프로그램 이외의 다른 프로그램의 실행이 종료 또는 정지되거나 또는 사용자 단말(800)의 특정한 기능이 수행 또는 해제될 수 있다.In another embodiment, the processor 810 may execute a control signal received from the game execution optimization device. Depending on the execution of the control signal, notification information for warning of the occurrence of a crash may be output to the display 850 or a setting of a running game program may be changed. Further, the operation of the device of the user terminal 800 may be controlled according to the execution of the control signal. For example, execution of a program other than a game program may be terminated or stopped, or a specific function of the user terminal 800 may be performed or canceled.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and/or a combination of a hardware component and a software component. For example, the devices and components described in the embodiments are, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA). , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, such as one or more general purpose computers or special purpose computers. The processing device may execute an operating system (OS) and one or more software applications executed on the operating system. In addition, the processing device may access, store, manipulate, process, and generate data in response to the execution of software. For the convenience of understanding, although it is sometimes described that one processing device is used, one of ordinary skill in the art, the processing device is a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it may include. For example, the processing device may include a plurality of processors or one processor and one controller. In addition, other processing configurations are possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of these, configuring the processing unit to behave as desired or processed independently or collectively. You can command the device. Software and/or data may be interpreted by a processing device or to provide instructions or data to a processing device, of any type of machine, component, physical device, virtual equipment, computer storage medium or device. , Or may be permanently or temporarily embodyed in a transmitted signal wave. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -A hardware device specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of the program instructions include not only machine language codes such as those produced by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by the limited embodiments and drawings, various modifications and variations are possible from the above description by those of ordinary skill in the art. For example, the described techniques are performed in a different order from the described method, and/or components such as a system, structure, device, circuit, etc. described are combined or combined in a form different from the described method, or other components Alternatively, even if substituted or substituted by an equivalent, an appropriate result can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims fall within the scope of the following claims.

110, 200, 700: 게임 실행 최적화 장치
115, 740: 데이터베이스 120, 800: 사용자 단말
210: 수집부 220: 결정부
230: 제어부 240: 저장부
250: 통신부 710, 810: 프로세서
720, 820: 메모리 730, 830: 통신 인터페이스
840: 사용자 입력 인터페이스 850: 디스플레이
110, 200, 700: game execution optimization device
115, 740: database 120, 800: user terminal
210: collection unit 220: decision unit
230: control unit 240: storage unit
250: communication unit 710, 810: processor
720, 820: memory 730, 830: communication interface
840: user input interface 850: display

Claims (1)

최적화된 게임 설정 정보를 제공하는 게임 설정 정보 제공 방법에 있어서,
사용자 단말의 기기 정보를 수집하는 단계;
상기 사용자 단말의 기기 정보에 기초하여 상기 사용자 단말에 대응하는 게임 최적화 설정 정보를 결정하는 단계; 및
상기 게임 최적화 설정 정보를 상기 사용자 단말에 전송하는 단계
를 포함하는,
게임 설정 정보 제공 방법.
In the game setting information providing method for providing optimized game setting information,
Collecting device information of the user terminal;
Determining game optimization setting information corresponding to the user terminal based on device information of the user terminal; And
Transmitting the game optimization setting information to the user terminal
Containing,
How to provide game setting information.
KR1020190130794A 2019-10-21 2019-10-21 Method and apparatus for providing optimized game setting information, method and apparatus for optimizing game running KR20200107743A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190130794A KR20200107743A (en) 2019-10-21 2019-10-21 Method and apparatus for providing optimized game setting information, method and apparatus for optimizing game running

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190130794A KR20200107743A (en) 2019-10-21 2019-10-21 Method and apparatus for providing optimized game setting information, method and apparatus for optimizing game running

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020190026689A Division KR102037479B1 (en) 2019-03-08 2019-03-08 Method and apparatus for providing optimized game setting information, method and apparatus for optimizing game running

Publications (1)

Publication Number Publication Date
KR20200107743A true KR20200107743A (en) 2020-09-16

Family

ID=72669541

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190130794A KR20200107743A (en) 2019-10-21 2019-10-21 Method and apparatus for providing optimized game setting information, method and apparatus for optimizing game running

Country Status (1)

Country Link
KR (1) KR20200107743A (en)

Similar Documents

Publication Publication Date Title
CN109240576B (en) Image processing method and device in game, electronic device and storage medium
US10628216B2 (en) I/O request scheduling method and apparatus by adjusting queue depth associated with storage device based on hige or low priority status
EP3125072B1 (en) Method of managing power and electronic device
EP3149502B1 (en) Adaptive battery life extension
CN109213539B (en) Memory recovery method and device
JP6689873B2 (en) Techniques for offloading and onloading data to processor / coprocessor configurations
CN107817995B (en) Background silent application starting method and device and terminal equipment
US9760413B2 (en) Power efficient brokered communication supporting notification blocking
KR20190097184A (en) Smart Assist for Repeated Actions
US20140082384A1 (en) Inferring user intent from battery usage level and charging trends
US10474507B2 (en) Terminal application process management method and apparatus
CN109783028A (en) Optimization method, device, storage medium and the intelligent terminal of I/O scheduling
KR102651874B1 (en) Method and apparatus for power management
KR20160089145A (en) Method and apparatus for speech recognition
CN112424799A (en) Electronic device and control method thereof
KR20130122737A (en) Displaying battery life resulting from setting changes
EP3629297A1 (en) Methods and apparatus to manage operation of variable-state computing devices using artificial intelligence
CN107835984B (en) Thermal mitigation user experience
CN107943570B (en) Application management method and device, storage medium and electronic equipment
US11216330B2 (en) Methods and systems for managing an electronic device
US9182875B2 (en) Information processing terminal and control method therefor
KR102037479B1 (en) Method and apparatus for providing optimized game setting information, method and apparatus for optimizing game running
CN114419229A (en) Image rendering method and device, computer equipment and storage medium
US11150913B2 (en) Method, device, and terminal for accelerating startup of application
CN110706691B (en) Voice verification method and device, electronic equipment and computer readable storage medium