KR102379040B1 - 최적 대전 상대 탐색 방법 및 장치 - Google Patents
최적 대전 상대 탐색 방법 및 장치 Download PDFInfo
- Publication number
- KR102379040B1 KR102379040B1 KR1020200022172A KR20200022172A KR102379040B1 KR 102379040 B1 KR102379040 B1 KR 102379040B1 KR 1020200022172 A KR1020200022172 A KR 1020200022172A KR 20200022172 A KR20200022172 A KR 20200022172A KR 102379040 B1 KR102379040 B1 KR 102379040B1
- Authority
- KR
- South Korea
- Prior art keywords
- match
- gamer
- attribute information
- similarity
- candidate
- Prior art date
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
- A63F13/795—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for finding other players; for building a team; for providing a buddy list
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/45—Controlling the progress of the video game
- A63F13/48—Starting a game, e.g. activating a game device or waiting for other players to join a multiplayer session
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/55—Controlling game characters or game objects based on the game progress
- A63F13/58—Controlling game characters or game objects based on the game progress by computing conditions of game characters, e.g. stamina, strength, motivation or energy level
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
- A63F13/798—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for assessing skills or for ranking players, e.g. for generating a hall of fame
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/50—Features 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/55—Details of game data or player data management
- A63F2300/5546—Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
- A63F2300/5566—Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history by matching opponents or finding partners to build a team, e.g. by skill level, geographical area, background, play style
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명의 실시예에 따르면, 게이머의 사용자 단말과 연결되는 최적 대전 상대 탐색 장치에 있어서, 게임이 진행됨에 따라 상기 게이머와의 대전을 수행할 수 있으며 각각의 속성 정보를 가지는 하나 이상의 대전 후보를 탐색하고 상기 대전 후보의 상기 속성 정보를 수집하는 속성 정보 수집부; 상기 게이머와 상기 대전 후보 간 상기 속성 정보가 얼마나 유사한 값을 가지는지를 나타내는 유사도를 산출하는 유사도 산출부; 상기 게이머와 상기 대전 후보 간의 상기 속성 정보의 값의 크기를 대소 비교하여 대전 적합도를 분석하는 적합도 판별부; 및 상기 유사도 및 상기 대전 적합도를 기반으로 상기 대전 후보 중에서 추천 대전 상대를 도출하여, 상기 추천 대전 상대가 누구인지를 나타내는 대전 상대 추천 정보를 상기 게이머의 상기 사용자 단말로 제공하는 결과 출력부를 포함하는 최적 대전 상대 탐색 장치가 제공된다.
Description
본 발명은 최적 대전 상대 탐색 방법 및 장치에 관한 것으로, 보다 상세하게는, 게이머와 상대와의 유사도 분석을 통해 최적의 대전 상대를 탐색하여 선정할 수 있도록 하는 장치 및 방법에 관한 것이다.
온라인 게임은 GIS(Geographic Information System)와 모바일 기술의 발전으로 기존의 가상 공간에 대한 게임 맵(Map)뿐만 아니라 현실 공간의 지도를 이용한 공간 게임으로 발전하고 있다.
가상 공간에서는 게이머가 자신의 게임 스킬, 보유 무기, 파워나 아이템을 이용하여 다양한 적들과 대전을 하면서 승률을 높인다. 게이머가 주변 또는 전체 게임 객체에 대한 정보를 미리 안다면 적절한 상대와의 대전을 통해 자신의 승률을 높일 수 있다.
그러나 게이머가 직접 대전 상대에 대한 정보를 알기는 어렵다. 게이머와 대전 상대들은 게임 레벨, 스킬, 보유 무기, 파워 또는 아이템 등의 속성을 가지는데, 이러한 속성에 따라 게이머와의 대전 적합성이 다르게 평가될 수 있다.
한국출원특허 제2004-0037226호(2004.05.25)는 게임 도움 정보를 제공하는 게임 튜터 시스템 및 게임튜터 방법은 통신망 상에서 문자데이터와 정지영상데이터와 음성데이터 및 영상데이터를 주고 받는 멀티미디어통신서비스를 제공하는 웹서버와, 상기 웹서버가 제공하는 멀티미디어통신서비스를 제공받기 가입한 회원들이 사용하는 다수의 클라이언트들을 포함하며, 상기 웹서버는 상기 회원들의 가입정보를 하나 이상의 집단으로 구분하여 관리하는 데이터베이스를 포함하고, 각각의 클라이언트에는 상기 멀티미디어통신서비스를 이용하기 위한 통신프로그램이 설치되어 있으며, 각각의 회원집단에 속한 하나 이상의 클라이언트는 해당 회원집단에 속한 클라이언트들이 상기 멀티미디어통신서비스를 이용하는 상황을 통제할 수 있는 권한을 갖고, 각각의 클라이언트는 전자메일통신과, 인스턴트메신저통신과, 커뮤니티통신과, 단문메시지통신 및, 대화모드통신을 포함한 다양한 통신형식을 선택적으로 행할 수 있는 메뉴를 갖춘 상기 통신프로그램의 실행화면을 표시장치에 디스플레이하게 구성된 것을 특징으로 하는 멀티미디어통신시스템이다.
또한 한국출원특허 제2010-0065634호(2010.07.08)는 사용자에게 적합한 길드를 추천해주는 게임 서버 및 방법 는 단말기로부터 게임 실행 요청 신호를 수신하는 게임요청수신부; 상기 단말기의 사용자 정보를 사용자DB(Database)에서 추출하는 사용자정보추출부; 기설정된 기준에 따라서 기준별 코드값을 코드DB에 저장하는 코드저장부; 상기 코드DB를 이용하여 상기 단말기의 사용자 정보에 따른 기준별 코드값을 추출하여 기준별 단말기코드값을 생성하는 단말기코드생성부; 상기 코드DB를 이용하여 게임 길드별로 기준별 코드값을 추출하여 상기 게임 길드별로 기준별 길드코드값을 생성하는 길드코드생성부; 상기 기준별 단말기코드값과 상기 기준별 길드코드값을 이용하여 게임 길드별 적합수치를 계산하는 적합수치부; 및 상기 적합수치부의 게임 길드별 적합수치를 이용하여 상기 단말기의 사용자에게 적합한 길드를 추천해주는 길드추천부;를 포함하는 사용자에게 적합한 길드를 추천해주는 게임 서버이다.
본 발명은 유사도 분석을 통한 최적 대전 상대 탐색 방법, 장치 및 시스템에 관한 것이다. 본 발명의 실시예에 따른 최적 대전 상대 탐색 방법 및 장치에서는, 게임 서버가 게이머의 대전 상대을 탐색하고, 게이머와 대전 상대 간 서로의 속성을 비교함으로써 주변의 대전 가능한 상대를 알려주는 최적 대전객체 탐색 기법을 제안하고자 한다.
또한 게이머와 대등한 능력치를 가지거나 게이머보다 낮은 위험도를 갖는 대전 상대의 탐색에 중점을 두어, 게이머가 승률을 높일 수 있는 최적 대전객체 평가기법을 제공하고자 한다.
실시예들 중에서, 게이머의 사용자 단말과 연결되는 최적 대전 상대 탐색 장치에 의해 수행되는 최적 대전 상대 탐색 방법에 있어서, 게임이 진행됨에 따라 상기 게이머와의 대전을 수행할 수 있으며 각각의 속성 정보를 가지는 하나 이상의 대전 후보를 탐색하는 단계; 상기 대전 후보의 상기 속성 정보를 수집하는 단계; 상기 게이머와 상기 대전 후보 간 상기 속성 정보가 얼마나 유사한 값을 가지는지를 나타내는 유사도를 산출하는 단계; 상기 게이머와 상기 대전 후보 간의 상기 속성 정보의 값의 크기를 대소 비교하여 대전 적합도를 분석하는 단계; 상기 유사도 및 상기 대전 적합도를 기반으로 상기 대전 후보 중에서 추천 대전 상대를 도출하는 단계; 및 상기 추천 대전 상대가 누구인지를 나타내는 대전 상대 추천 정보를 상기 게이머의 상기 사용자 단말로 제공하는 단계를 포함하는 최적 대전 상대 탐색 방법이 제공된다.
여기서 상기 속성 정보는 상기 게이머 또는 상기 대전 후보의 게임 레벨 정보, 파워 잔량 정보, 보유 기술 정보, 아이템 정보 중 하나 이상의 세부 항목을 포함할 수 있다.
또한 상기 게이머와 상기 대전 후보의 속성 정보들 간 차의 절대값이 작을수록 상기 유사도는 큰 값을 가질 수 있다.
그리고 상기 유사도를 산출하는 단계는,
상기 게이머와 각각의 상기 대전 후보의 속성 정보들 간 차의 절대값을 이용하여 상기 게이머와 각각의 상기 대전 후보들 간의 비유사도를 산출하는 단계; 및 상기 비유사도의 역수를 취하여 상기 게이머와 각각의 상기 대전 후보들 간의 상기 유사도로 변환하는 단계를 포함할 수 있다.
그리고 상기 대전 적합도를 분석하는 단계는 상기 게이머의 상기 속성 정보의 총합과 상기 대전 후보의 상기 속성 정보의 총합을 비교하며,
비교 결과 상기 게이머의 상기 속성 정보의 총합이 더 큰 값을 가질수록 상기 대전 적합도도 더 큰 값을 가진다.
또한 상기 추천 대전 상대를 도출하는 단계는, 상기 유사도와 상기 대전 적합도가 모두 미리 설정된 값 이상의 값을 가지는 상기 대전 후보를 상기 추천 대전 후보로 선정할 수 있다.
또한 실시예들 중에서 게이머의 사용자 단말과 연결되는 최적 대전 상대 탐색 장치에 있어서, 게임이 진행됨에 따라 상기 게이머와의 대전을 수행할 수 있으며 각각의 속성 정보를 가지는 하나 이상의 대전 후보를 탐색하고 상기 대전 후보의 상기 속성 정보를 수집하는 속성 정보 수집부; 상기 게이머와 상기 대전 후보 간 상기 속성 정보가 얼마나 유사한 값을 가지는지를 나타내는 유사도를 산출하는 유사도 산출부; 상기 게이머와 상기 대전 후보 간의 상기 속성 정보의 값의 크기를 대소 비교하여 대전 적합도를 분석하는 적합도 판별부; 및 상기 유사도 및 상기 대전 적합도를 기반으로 상기 대전 후보 중에서 추천 대전 상대를 도출하여, 상기 추천 대전 상대가 누구인지를 나타내는 대전 상대 추천 정보를 상기 게이머의 상기 사용자 단말로 제공하는 결과 출력부를 포함하는 최적 대전 상대 탐색 장치가 제공될 수 있다.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
모바일과 GPS 기술이 발전하면서 현실의 지도나 가상의 게임 맵(Map)에서 진행하는 공간게임은 게이머들이 흩어져 대전을 하면서 게임의 승패를 가르게 된다. 게이머는 승률을 높이고자 약한 상대와 대전하기를 희망하지만 게이머가 약한 대전 상대를 선택하는 것은 제한되어 있다.
일반적으로는 게임 서버가 게이머의 주변에 있는 상대 게이머에 대한 게임 레벨, 파워잔량, 난이도 등의 속성을 계산하여 약한 대전 상대를 알려주며, 이를 통해 게이머는 적을 회피하거나 유리한 대전 상대를 선택할 수 있다.
본 발명의 실시예에 따른 최적 대전 상대 탐색 방법 및 장치에서는, 게임 서버가 게이머의 대전 상대을 탐색하고, 게이머와 대전 상대 간 서로의 속성을 비교함으로써 주변의 대전 가능한 상대를 알려주는 최적 대전객체 탐색 기법을 제안할 수 있다.
대전 가능 상대와의 비교는 게이머와 대전 상대들을 포함하는 게임 주체들의 속성을 평가함으로써 수행될 수 있다. 특히 본 발명의 실시예에 따르면 게이머와 대등한 능력치를 가지거나 게이머보다 낮은 위험도를 갖는 대전 상대의 탐색에 중점을 두어, 게이머가 승률을 높일 수 있는 최적 대전객체 평가기법을 제공할 수 있다. 또한 가상 데이터를 기반으로 게이머와 주변의 대전 상대들 간 유사도를 측정하여 게이머가 승률을 높일 수 있는 최적 대전객체 평가기법을 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 최적 대전 상대 탐색 시스템을 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 게이머 및 대전 대상들을 도시한 도면이다.
도 3은 거리 기반의 근접도 산출 방법을 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 최적 대전 상대 탐색 장치를 도시한 블록도이다.
도 5는 본 발명의 일 실시예에 따른 최적 대전 상대 탐색 방법을 도시한 흐름도이다.
도 6은 본 발명의 실시예에 따른 대전 후보와 게이머의 속성 차이를 수직선상에 도시한 도면이다.
도 7은 본 발명의 실시예에 따른 대전 대상의 속성 분포를 나타낸 그래프이다.
도 8은 본 발명의 실시예에 따라 유사도가 동일한 대전 대상 중 게이머보다 약한 대전 상대와 강한 대전 상대의 분포를 나타낸 그래프이다.
도 2는 본 발명의 일 실시예에 따른 게이머 및 대전 대상들을 도시한 도면이다.
도 3은 거리 기반의 근접도 산출 방법을 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 최적 대전 상대 탐색 장치를 도시한 블록도이다.
도 5는 본 발명의 일 실시예에 따른 최적 대전 상대 탐색 방법을 도시한 흐름도이다.
도 6은 본 발명의 실시예에 따른 대전 후보와 게이머의 속성 차이를 수직선상에 도시한 도면이다.
도 7은 본 발명의 실시예에 따른 대전 대상의 속성 분포를 나타낸 그래프이다.
도 8은 본 발명의 실시예에 따라 유사도가 동일한 대전 대상 중 게이머보다 약한 대전 상대와 강한 대전 상대의 분포를 나타낸 그래프이다.
본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니된다. 즉, 실시예는 다양한 변경이 가능하고 여러가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
도 1은 본 발명의 일 실시예에 따른 최적 대전 상대 탐색 시스템을 도시한 도면이다.
도 1을 참조하면, 최적 대전 상대 탐색 시스템(100)은 최적 대전 상대 탐색 장치(110) 및 하나 이상의 사용자 단말(120)을 포함한다.
최적 대전 상대 탐색 장치(110) 는 적어도 하나의 사용자 단말(120)과 네트워크를 통해 연결될 수 있는 컴퓨팅 장치에 해당하며, 게임 서버의 역할을 수행할 수 있다. 일 실시예에서, 최적 대전 상대 탐색 장치(110)는 사용자 단말(120)에 설치된 공유폴더 에이전트를 통해 사용자 단말(120)과 연결될 수 있고, 여기에서, 공유폴더 에이전트는 사용자 단말(120)에 설치되면 사용자 단말(120)의 승인 하에 사용자 단말(120)과 최적 대전 상대 탐색 장치(110)가 상호 연동되도록 할 수 있는 소프트웨어인 에이전트 프로그램에 해당하며, 예를 들어, 모바일 어플리케이션의 형태로 구현될 수 있다.
사용자 단말(120)은 최적 대전 상대 탐색 장치(110)와 네트워크를 통해 연결될 수 있는 컴퓨팅 장치에 해당하고, 예를 들어, 데스크톱, 노트북, 태블릿 PC 또는 스마트폰으로 구현된 각종 단말일 수 있다. 사용자 단말(120)은 하나 이상일 수 있으며, 게이머 단말(120a), 대전 상대 단말(120b)를 포함할 수 있다.
여기서 게이머는 본 발명의 실시예에 따라 게임을 수행하면서, 적합한 대전 상대에 대한 정보, 즉 추천 대전 상대 정보를 게임 서버, 즉 최적 대전 상대 탐색 장치(110)를 통해 제공받는 사용자 또는 그 사용자에 의해 조작되는 캐릭터를 의미할 수 있다.
그리고 대전 상대는 게이머의 게임 수행 상 대전, 대결, 전투, 결투 등의 상대방이 되는 캐릭터를 의미할 수 있다. 대전 상대에 상응하는 사용자가 존재하는 경우, 대전 상대에 상응하는 사용자 단말이 대전 상대 단말(120b)이다. 다만 실시예에 따라서는, 대전 상대에 해당되는 캐릭터가 실제 사용자에 의해 조작되는 캐릭터가 아닌, 게임 서버에 의해 만들어지고 조작되는 캐릭터인 경우, 대전 상대 단말(120b)은 따로 존재하지 않을 수 있다.
일 실시예에서, 게이머 단말(120a)는 모바일 단말에 해당할 수 있고, 서포터 기반의 컴퓨터 게임 장치(110)와 셀룰러 통신 또는 와이파이 통신을 통해 연결될 수 있다. 다른 일 실시예에서, 대전 상대 단말(120b)는 데스크톱 또는 노트북 컴퓨터일 수 있고, 서포터 기반의 컴퓨터 게임 장치(110)와 인터넷을 통해 연결될 수 있다.
도 2는 본 발명의 일 실시예에 따른 게이머 및 대전 대상들을 도시한 도면이다.
게이머(200)는 게임 공간 또는 실제 공간 상에서 도 2에 도시된 바와 같이 위치하고, 게이머(200)의 주위에 있는 캐릭터들은 대전 후보(210, 220, 230, 240, 250, 260)에 해당될 수 있다. 여기서 게이머(200)와 대전 후보(210, 220, 230, 240, 250, 260)들 사이에 도시된 거리는 일정 공간 내에 각 캐릭터가 존재하는 위치에 따른 물리적인 거리일 수도 있고, 캐릭터 속성의 유사도에 따른 추상적인 거리일 수도 있다. 따라서 도 2에 도시된 바를 참조하면, 캐릭터간의 근접도가 캐릭터 속성의 유사도로 연결될 수 있음을 추측할 수 있다.
일 실시예에 따르면, 게이머(200)의 주변에 검색되는 모든 캐릭터를 대전 후보(210, 220, 230, 240, 250, 260)로 인지할 수도 있고, 이들 캐릭터 중 게이머(200)와 일정 거리 내에 있는 캐릭터들(210 내지 240)만을 필터링하여, 실제 대전 대상이 될 가능성이 있는 후보로 한번 더 선별 후 선정할 수 있다.
도 3은 거리 기반의 근접도 산출 방법을 도시한 도면이다.
모바일과 GPS 기술이 발전하면서 현실의 지도나 가상의 게임 맵(Map)에서 진행하는 공간게임은 캐릭터들이 흩어져 대전을 하면서 게임의 승패를 가르게 된다. 각 게이머는 승률을 높이고자 약한 상대와 대전하기를 희망하지만 게이머가 약한 대전 상대를 선택하는 것은 제한되어 있는 경우가 많다.
일반적으로 게임 서버가 게이머의 주변에 있는 대전 후보들에 대한 게임 레벨, 파워잔량, 난이도 등의 속성 정보를 계산하여 약한 상대를 알려줌으로써 게이머가 강한 대전 후보를 회피하거나 약한 대전 후보를 선택하여 대전할 수 있다.
본 발명의 실시예에서는, 게임 서버의 적어도 일부인, 최적 대전 상대 탐색 장치(110)가 게이머의 적절한 대전 대상을 탐색하고 게이머와 대전 후보와의 속성을 비교함으로써 게이머 주변의 대전 가능한 대전 후보에 대한 정보를 알려주는 최적 대전 상대 탐색 기법을 제안한다.
대전 가능 객체에 대한 속성 정보의 비교를 위해, 본 발명의 실시예에서는 유클리드 거리 기반의 비유사도 기법을 적용하고자 한다.
앞서 설명한 바와 같이, 게이머와 대전 상대들은 게임 레벨, 스킬, 보유 무기, 파워 또는 아이템 등의 속성을 가지고 있으며 게이머의 각 속성 정보의 값이 대전 상대보다 높다면 게이머는 이길 확률이 높은 것으로 평가된다.
따라서 최적 대전 상대 탐색 장치(110)가 게임 캐릭터들 각각의 속성, 즉 게이머의 속성 정보와 대전 후보들의 속성 정보를 서로 비교하여 게이머가 대전 시 이길 수 있는 대상을 추천하는 정보를 제공한다면, 게이머는 해당 정보를 근거 삼아 대전 상대를 선택하게 된다.
또한 게임에서 비슷한 실력의 캐릭터들을 중심으로 팀을 구성하기 위해서는 각 캐릭터들의 속성에 대한 유사도 평가가 중요하다. 유사도 평가는 각 캐릭터들의 속성 정보를 빼거나, 이들 간 대소 비교를 통해 수행될 수 있다.
여기서 유사도 분석은, 객체 탐색이나 웹 페이지 탐색에서 주로 사용되는 데이터 마이닝의 주요 기법 중 하나이며, 두 점 사이의 거리를 측정하는 유클리드 거리(Euclidean Distance) 산출 기법을 응용하여 수행될 수 있다.
참고로 객체 탐색에서는 두 객체의 일차원 속성을 거리로 비교하여 결과가 0에 수렴하면 유사한 것으로 판단하며, 웹 페이지에서는 검색 단어의 수를 비교하여 찾는 페이지의 유사도를 평가한다. 본 발명의 실시예에서는 유클리드 거리의 위와 같은 특징을 이용하여 다중 속성을 갖는 게이머와 대전 후보들의 유사도를 도출함으로써, 공간 게임에서 이기기 쉬운 대전 대상을 선정하기 위한 최적의 대전 대상 탐색 기법을 제안한다.
게임 서버는 게임에 참여하는 게임 객체들의 다중속성을 게이머의 속성과 비교하고 순위를 부여함으로써 대전 대상을 추천한다.
그런데 여기서 게임 속성은 대전 상대와 비교 시 게이머가 높은 값일 수 있으나 반대로 낮은 값일 수도 있으므로 두 객체의 유사도 만으로는 승률이 높은 대상을 결정할 수 없다. 이에 대해서는 후술한 도 6을 참조하여 보다 상세히 설명하도록 한다.
이하에서는 캐릭터 간 유사도를 캐릭터의 속성 정보의 차이에 따라 결정하며, 특히 유클리드 거리 기법를 응용하여 두 캐릭터, 즉 게이머와 대전 후보 간 근접도를 계산하고, 거리 기반의 근접도를 유사도로 변환하는 구체적인 방법에 대해 설명한다.
일반적으로 두 객체 사이의 근접도는 한 객체의 위치를 기준으로 다른 객체의 상대적 차이로 측정한다. 근접도는 위치뿐만 아니라 문자의 빈도수, 선호도와 같이 수치로 표현되는 속성을 비교함으로써 두 객체의 닮은 정도를 유사도(s, Similarity)로 평가하기도 한다.
유사도는 일반적으로 일치 여부로 판단하며 두 객체의 속성이 일치하면 유사도 s=1, 일치하지 않는 경우에는 s=0으로 [0, 1]의 폐쇄 구간의 범위를 갖는다. 위치를 기준으로 두 점 사이의 거리는 유클리드 거리(Euclidean Distance)로 계산하며 차이가 클수록 기준으로부터 멀리 떨어진 것을 의미한다.
따라서 유사도가 높을수록 동일한 속성임을 나타내는 것과는 역방향의 표현이며 유사하지 않은 상태이므로 유클리드 거리(Euclidean Distance)는 비유사도(d, dissimilarity)를 나타낼 수 있다.
비유사도는 유사도와는 반대로, 두 객체 p, q가 동일한 위치에 있으면 d(p,q)=0 이며 거리가 멀수록 1 또는 그 이상의 값이 되므로 개방구간 [0, 1)로 나타낸다.
유클리드 거리는 도 3에 도시된 바와 같이 피타고라스의 정리에 근간을 두고 있으며 두 점 사이의 거리를 나타낸다. 피타고라스 정리에서 빗변의 길이는 c2 =a2 +b2 이므로 두 점 p, q 사이의 거리 d(p, q)는 아래의 <수식 1>과 같다. 이때, d는 distance의 약자이다.
<수식 1>
도 3에서 두 점 p, q는 이차원 공간에서 두 개의 속성 x, y를 각각 포함하며 두 점 사이의 거리 d(300)는 각 점에서 동일한 차원의 속성에 대한 차이의 제곱으로 계산된다.
점 p는 게이머, 점 q는 대전 후보로 치환될 수 있다. 그리고 x와 y는 게이머와 대전 후보 각 캐릭터의 속성 정보 또는 속성값을 의미할 수 있다.
일반적으로 객체는 다중속성을 가지며 속성의 개수에 따라 이차원, 삼차원 또는 그 이상의 차원으로 구분한다. 유클리드 거리(Euclidean Distance)를 이차원 이상의 속성으로 확장하면 <수식 2>와 같이 게이머 p와 대전 상대 q 간의 비유사도 d는 각 객체의 동일한 속성의 총합으로 계산될 수 있다.
<수식 2>
여기서 다중 속성에 의해 캐릭터들이 여러 가지 속성 정보를 가진다고 할 때, i는 속성 정보의 세부 항목 또는 속성 정보의 종류를 의미할 수 있다. 따라서 i가 동일하다면 pi 와 qi 는 동일한 종류 또는 동일한 세부 항목의 속성 정보를 의미할 수 있다. 다만, 속성 정보의 종류는 동일할지라도 pi 와 qi 의 값은 상이할 수 있음은 물론이다.
따라서 pi는 게이머 p가 가지는 i번째 속성 정보 또는 그 속성값을 의미할 수 있으며, qi는 대전 후보 q가 가지는 i번째 속성 정보 또는 그 속성값을 의미할 수 있다. 예컨대, p1 는 게이머 p의 파워 잔량 지수, q1 는 대전 후보 q의 파워 잔량 지수, p2 는 게이머 p의 보유 기술 지수, q2 는 대전 후보 q의 보유 기술 지수, p3 는 게이머 p의 게임 레벨 지수, q3 는 대전 후보 q의 게임 레벨 지수 등일 수 있다.
비유사도 d는 거리의 차이로 계산되어 큰 값이 산출되는 경우 유사도 계산의 대상이 된 두 객체 또는 두 캐릭터가 서로 유사하지 않다는 것을 의미한다 따라서 비유가도 d가 작은 값을 가진다면, 두 객체는 가까운 거리에 있거나, 속성 정보의 측면에서 닮은 꼴인 것, 즉 유사도가 높음을 의미할 수 있다.
유사도는 비유사도 보다 근접도를 기준으로 유사한 객체를 의미하기 때문에 비유사도보다 더 직관적으로 두 속성의 유사성을 이해할 수 있다. 비유사도는 유사도와 역수관계에 있으므로 다음의 <수식 3>과 같이 비유사도의 역수를 취하여 유사도를 계산할 수 있다.
<수식 3>
<수식 3>은 비유사도를 이용하여 유사도를 도출하는 많은 방법들 중 하나의 예시일 수 있다.
도 4는 본 발명의 일 실시예에 따른 최적 대전 상대 탐색 장치(110)를 도시한 도면이다.
본 발명의 실시예에 따른 최적 대전 상대 탐색 장치(110)는 속성 정보 수집부(410), 유사도 산출부(420), 적합도 판별부(430), 결과 출력부(440)를 포함할 수 있다.
다만, 본 발명의 실시예에 따른 최적 대전 상대 탐색 장치(110)가 위의 구성부를 동시에 모두 포함해야 하는 것은 아니며, 각각의 실시예에 따라 위의 구성부 중 일부는 생략될 수 있고, 최적 대전 상대 탐색 장치(110)는 상기의 구성부 중 일부 또는 전부를 선택적으로 포함할 수 있다.
도 4를 참조하여 설명하는 본 발명의 실시예에서는, 앞서 살펴본 유클리드 거리의 특징을 이용하여 다중 속성을 갖는 게이머와 대전 후보들의 유사도를 측정함으로써, 공간 게임에서 이기기 쉬운 대전 후보를 선별하기 위한 최적의 대전 대상 탐색 기법을 제안한다.
본 발명의 실시예에 따른 최적 대전 상대 탐색 장치(110)는 게임에 참여하는 캐릭터들 중 대전 후보들의 다중 속성을 게이머의 속성 정보와 비교하고 순위를 부여함으로써 적합한 대전 대상을 추천할 수 있다.
그러나 속성 정보는 대전 상대와 비교 시 게이머가 높은 값을 가질 수도 있고 반대로 낮은 값을 가질 수도 있다. 따라서 두 객체의 유사도만으로는 승률이 높은 대상을 결정할 수 없다. 본 발명의 실시예에서는 유사도에 이러한 특징을 반영하여 동일한 유사도를 가지더라도 대전 상대로 적합한 대전 후보와 게이머보다 강하므로 회피해야 할 대전 후보가 누구인지에 대한 분석도 함께 수행하는 것이 바람직하다. 이에 기반하여 도 4를 참조하여 본 발명의 실시예에 따른 최적 대전 상대 탐색 장치(110)를 설명하도록 한다.
속성 정보 수집부(410)는 게임이 진행됨에 따라 게이머와의 대전을 수행할 수 있으며 각각의 속성 정보를 가지는 하나 이상의 대전 후보를 여러 캐릭터들 중에서 탐색한다. 그리고 대전 후보가 탐색되었다면 속성 정보 수집부(410)는 해당 대전 후보의 속성 정보를 수집할 수 있다.
여기서 속성 정보는 게이머 또는 대전 후보를 포함하는 게임 캐릭터 각자의 게임 레벨 정보, 보유 기술 정보, 파워 잔량 정보, 아이템 정보 중 하나 이상의 세부 항목을 포함할 수 있다. 따라서 게이머와 대전 후보의 속성 정보를 비교할 때는 각각의 세부 항목끼리 비교하거나 그 속성값의 차를 구하게 된다. 예컨대 게이머의 게임 레벨 정보와 대전 후보의 게임 레벨 정보의 속성값의 차, 게이머의 파워 잔량 정보와 대전 후보의 파워 잔량 정보의 속성값의 차, 게이머의 보유 기술 정보와 대전 후보의 보유 기술 정보의 속성값의 차, 게이머의 아이템 정보와 대전 후보의 아이템 정보의 속성값의 차 등을 이용하여 게이머와 해당 대전 후보 간의 비유사도 또는 유사도를 구할 수 있다.
파워 잔량 정보는 게임을 수행하는 데에 필요하며, 해당 캐릭터가 가용 가능한 파워의 잔여량을 수치로 나타낸 정보일 수 있다. 게임 레벨 정보는 해당 케릭터의 능력치나 게임 수행 능력, 점수나 포인트 등을 수치화하여 나타낸 정보일 수 있다. 그리고 보유 기술 정보는 보유 기술의 가짓수나 난이도, 강도 등에 따라 해당 캐릭터가 보유하고 있는 게임 수행의 기술을 수치화하여 나타낸 정보일 수 있다. 또한 아이템 정보는 해당 캐릭터가 이미 획득하여, 게임의 수행을 위해 사용할 수 있는 아이템의 가짓수나 그 가치 등을 반영하여 수치화한 정보일 수 있다. 따라서 유사도 산출부(420) 등과 관련하여 후술할 유사도 등을 도출함에 있어 속성 정보를 비교하거나 속성 정보의 차를 구한다고 함은, 속성 정보의 속성값을 비교하거나 빼는 것을 의미할 수 있다.
유사도 산출부(420)는 게이머와 대전 후보 간 속성 정보가 얼마나 유사한 값을 가지는지를 나타내는 유사도를 산출할 수 있다. 유사도는 앞의 <수식 2>와 <수식 3>에서도 나타난 바와 같이, 게이머와 대전 후보 간 속성 정보들 간 차의 절대값에 의해 정해지는 값으로서, 해당 절대값이 작을수록 유사도는 큰 값을 가지게 된다.
여기서 유사도 산출부(420)는 비유사도 산출부(미도시)와 유사도 변환부(미도시)를 포함할 수 있다. 비유사도 산출부는 게이머와 각각의 대전 후보의 속성 정보들 간 차의 절대값을 이용하여 게이머와 각각의 대전 후보들 간의 비유사도를 산출할 수 있다. 그리고 유사도 변환부는 앞에서 산출된 비유사도의 역수를 취하여 게이머와 각각의 대전 후보들 간의 유사도로 변환함으로써 최종적으로 유사도 산출부(420)가 해당 대전 후보의 유사도를 산출할 수 있다.
여기서 비유사도 산출부는 유클리드 거리를 구하는 기법에 따라 비유사도를 산출할 수 있다. 유클리드 거리 기법에 따른 유사도 산출 방법은 앞의 <수식 2>에 의해 개시된 바 있다.
<수식 2>
여기서 d는 비유사도, p는 상기 게이머의 상기 속성 정보, p는 상기 대전 후보의 속성 정보에 해당된다.
적합도 판별부(430)는 게이머와 대전 후보 간의 전체적인 캐릭터의 강도를 비교하여, 게이머가 대전 시 승리할 확률이 높은지를 나타내는 대전 적합도를 평가할 수 있다. 캐릭터의 강도란, 해당 캐릭터가 보유하는 전체적인 능력치나 캐릭터의 강한 정도를 의미할 수 있다. 캐릭터의 강도는 속성 정보의 총합에 비례할 수 있다. 따라서 적합도 판별부(430)는 예컨대 게이머와 대전 후보 간 속성 정보 총합의 크기를 대소 비교하여 대전 적합도를 분석할 수 있다. 속성 정보 총합은 각 캐릭터가 공통으로 가지는 속성 정보들의 전부 또는 일부의 값을 모두 합산함으로써 산출될 수 있다.
적합도 판별부(430)는 게이머의 속성 정보의 총합과 대전 후보의 속성 정보의 총합을 비교한다. 비교 결과, 게이머의 속성 정보의 총합이 대전 후보의 속성 정보의 총합보다 더 큰 값을 가진다면 해당 대전 후보는 게이머보다 약한 상대로서, 대전 상대로서 적합한 것으로 판단될 수 있다.
반대로, 게이머의 속성 정보의 총합이 대전 후보의 속성 정보의 총합보다 더 작은 값을 가진다면 해당 대전 후보는 게이머보다 강한 상대로서, 대전 상대로서 적합하지 않다고 판단될 수 있다.
그리고 게이머의 속성 정보의 총합이 대전 후보의 속성 정보의 총합보다 더 큰 값을 가지는 경우, 그 차이가 클수록 대전 적합도도 더 큰 값을 가질 수 있다.
따라서 적합도 판별부(430) 및/또는 결과 출력부(440)는, 대전 후보들의 유사도와 대전 적합도를 모두 고려하여, 높은 유사도를 가지면서도, 대전 시 게이머의 승률을 높일 수 있는 대전 후보를 추천 대전 상대로 고를 수 있다. 이 경우, 결과 출력부(440)는 일정치 이상의 유사도 및 대전 적합도를 가지는 모든 대전 후보를 모두 추천 대전 상대로 도출하거나, 유사도와 대전 적합도가 높은 순으로 일정 숫자의 대전 후보를 추천 대전 상대로 지정할 수도 있으며, 또는 유사도와 대전 적합도가 가장 높은 하나의 대전 후보만을 추천 대전 상대로 지정할 수도 있다.
결과 출력부(440)는 유사도 및 대전 적합도를 기반으로 대전 후보 중에서 추천 대전 상대를 도출하여, 추천 대전 상대가 누구인지를 나타내는 대전 상대 추천 정보를 게이머의 사용자 단말로 제공할 수 있다. 앞서 설명한 바와 같이 추천 대전 상대를 선정하는 방법에 따라 추천 대전 상대는 하나 이상일 수 있으며, 2 이상의 추천 대전 상대가 도출되는 경우 추천 대전 상대는 리스트 형태로 제공될 수 있다.
도 5는 본 발명의 일 실시예에 따른 최적 대전 상대 탐색 방법을 도시한 흐름도이다.
최적 대전 상대 탐색 장치(110)는 게이머의 대전 상대가 될 수 있는 대전 후보를 탐색한다(S510). 그리고 최적 대전 상대 탐색 장치(110)는 탐색된 대전 후보들의 속성 정보를 수집한다(S520).
최적 대전 상대 탐색 장치(110)는 수집한 대전 후보들의 속성 정보를 이용하여, 게이머와 각각의 대전 후보들 간의 유사도를 산출한다(S530). 최적 대전 상대 탐색 장치(110)는 유사도 산출 시, 속성 정보가 2 이상의 세부 항목에 따른 속성값들을 가지는 경우, 동일한 세무 항목의 속성값들의 차이가 얼마인지에 따라 유사도를 산출할 수 있다. 유사도 산출을 위해 유클리드 기법에 따른 근접도 계산 방법이 응용될 수 있다.
예컨대 게이머와 특정 대전 후보에 있어서, 최적 대전 상대 탐색 장치(110)는 세부 항목 1에 해당하는 속성 정보 간의 차이값의 제곱, 세부 항목 2에 해당하는 속성 정보 간의 차이값의 제곱 등을 모두 합한 뒤 이것의 루트값을 산출한 뒤 이를 게이머와 해당 대전 후보 간의 비유사도로 파악할 수 있다. 그리고 유사도는 비유사도와 반비례 관계에 있으므로 최적 대전 상대 탐색 장치(110)는 비유사도 산출 후 역수를 취하는 등의 방법으로 유사도를 산출할 수 있다.
최적 대전 상대 탐색 장치(110)는 유사도 산출이 완료되면, 각각의 대전 후보들의 대전 적합도를 분석할 수 있다(S540). 도 5을 참조하여 설명하는 실시예에서는 유사도를 먼저 구한 뒤 대전 적합도를 분석하는데, 다른 실시예에서는 대전 적합도를 먼저 파악한 뒤 유사도를 산출할 수도 있다. 즉 각 단계간 순서는 다양하게 변형 또는 응용될 수 있으며, 반드시 도 5에 기재된 바에 구속되지 않는다.
대전 적합도는, 게이머가 특정 대전 후보와 대전하였을 경우에 승리할 가능성이 높은지 여부에 따라 판별된다. 즉, 게이머가 특정 대전 후보보다 전체적으로 강한 캐릭터여서 해당 대전 후보와의 대전 시 게이머가 승리할 확률이 높다면 해당 대전 후보는 대전 적합도가 높은 것으로 평가될 수 있다.
대전 적합도의 분석을 위한 각 캐릭터의 전체적인 강도를 판단하기 위해서는 그 캐릭터가 가지는 속성 정보의 총합을 구할 수 있다. 각 속성 정보에 상응하는 속성값의 총합이 클수록 해당 캐릭터는 강한 캐릭터라고 판단될 수 있기 때문이다.
따라서 게이머의 속성 정보 총합과 각각의 대전 후보들의 속성 정보 총합을 비교하여, 게이머보다 속성 정보 총합의 값이 더 작은 대전 후보가 높은 대전 적합도를 가지는 대전 후보라는 결론이 도출될 수 있다.
유사도와 대전 적합도가 모두 파악되었다면, 최적 대전 상대 탐색 장치(110)는 유사도 및 대전 적합도를 기반으로 대전 후보 중에서 추천 대전 상대를 도출할 수 있다(S550). 즉 최적 대전 상대 탐색 장치(110)는 유사도도 높고, 대전 적합도도 높은 대전 후보를 선별하여 추천 대전 상대로 지정할 수 있다.
추천 대전 상대가 누구인지 그 결과가 최종적으로 도출되면, 최적 대전 상대 탐색 장치(110)는 게이머에 상응하는 사용자 단말(120)로 대전 상대 추천 정보를 제공(S560)할 수 있다. 추천 대전 상대가 2 이상이라면 추천 대전 상대의 목록을 제공할 수 있으며, 각 추천 대전 상대에 대한 식별 정보, 간략한 캐릭터 정보(추천 대전 상대의 캐릭터명과 각 속성 정보들의 내역, 유사도와 대전 적합도 등)를 함께 제공할 수 있다. 이와 같은 추천 대전 상대에 대한 정보를 본 발명의 실시예에서는 대전 상대 추천 정보라 지칭할 수 있다.
그리고 최적 대전 상대 탐색 장치(110)는 일정치 이상의 유사도 및 대전 적합도를 가지는 모든 대전 후보를 모두 추천 대전 상대로 도출하거나, 유사도와 대전 적합도가 높은 순으로 일정 숫자의 대전 후보를 추천 대전 상대로 지정할 수도 있으며, 또는 유사도와 대전 적합도가 가장 높은 하나의 대전 후보만을 추천 대전 상대로 지정할 수도 있다. 또한 2 이상의 추천 대전 상대를 추천하고자 하는 경우, 대전 대상 추천 정보에는 추천 순위에 대한 정보가 더 포함될 수 있다. 예컨대 동일한 대전 적합도를 가지는 상대 중에서는 더 높은 유사도를 가지는 대전 후보가 더 높은 추천 순위의 추천 대전 대상이 될 수 있다.
추천 대전 대상을 선정하거나, 추천 대전 대상들의 추천 순위를 결정함에 있어서는 유사도와 대전 적합도를 모두 고려할 수 있으며, 이 때 유사도나 대전 적합도 간에 반영 우선 순위나 반영 비율은 상이하게 설정될 수 있다. 또한 유사도나 대전 적합도 이외에도 게이머에 상응하는 사용자가 평소에 입력한 캐릭터 선호나 게임 취향에 대한 정보가 있다면, 최적 대전 상대 탐색 장치(110)는 이를 추가적으로 반영하여 대전 대상 추천 정보를 작성할 수 있다.
도 6은 본 발명의 실시예에 따른 대전 후보와 게이머의 속성 정보 총합의 차이를 수직선상에 도시한 도면이다.
앞서 언급한 바와 같이, 게임 속성은 대전 상대와 비교 시 게이머가 높은 값일 수 있으나 반대로 낮은 값일 수도 있으므로 두 객체의 유사도 만으로는 승률이 높은 대상을 결정할 수 없다. 본 발명의 실시예에서는 유사도에 이러한 특징을 반영하여 동일한 유사도일 때 대전 대상과 회피해야 할 대상에 대한 분석도 함께 수행한다.
본 발명의 실시예를 통해 제안하는 유클리드 거리 기반의 최적 대전 대상 탐색 기법은 게임에서 응용의 필요성이 높음에도 불구하고 연구 사례는 찾아보기 어렵다. 따라서, 본 발명의 실시예를 통해 게임에서 새로운 연구분야를 개척하고 있으며 연구 및 실용적인 측면에서 다음과 같은 공헌을 한다.
1) 유사성 높은 대상 비교 및 탐색이 가능하다. 유클리드 거리는 데이터 마이닝과 인공지능에서 다양한 연구분야에 사용되고 있으며 본 발명의 실시예에서는 이를 게임분야에 적용함으로써 게이머의 속성을 비교할 수 있는 새로운 적용방법을 보였다. 2) 유클리드 거리 기법의 연구분야를 확장한다. 본 발명의 실시예에서는 최적의 대전객체를 탐색하기 위해 기존의 유클리드거리 기법을 적용함으로써 연구분야의 확장을 모색하였다. 3) 유사도의 방향 또는 대소 비교에 따른 승률 평가를 가능하게 한다. 유클리드 거리의 비유사도를 유사도로 변환하고 유사도가 동일한 경우에 속성의 합, 전체적인 캐릭터의 강도에 대한 차이를 분석하여 대전 대상에 대한 재평가 방법을 구현하였다.
앞서 언급한 바와 같이, 동일한 유사도의 승률은 어느 캐릭터가 더 강한지의 결과에 따라 다르므로, 즉 속성 정보에 전체적인 평가 및 대소 비교의 결과에 따라 승률이 달라진 수 있다. 즉 유사도가 높은 두 캐릭터, 즉 전체적인 속성값이 유사한 두 캐릭터일지라도 둘 중 더 강한 캐릭터와 더 약한 캐릭터는 존재할 수 있다. 유사도 높은 캐릭터 간의 전투 또는 대결은 사용자의 흥미는 높일 수 있으나 게이머가 더 약한 경우 게이머가 대전에서 패할 확률이 높다. 따라서 유사도 높은 대전 후보 중에서도 게이머의 승률을 높일 수 있는 대전 후보는 유사도와 대전 적합도가 모두 높은 대전 후보이다.
그런데 비유사도는 두 속성의 차이에 대한 절대값으로 계산하기 때문에 절대값이 같다면 유사도는 같다. 그러나 게이머와 대전 후보 간 속성 정보 총합의 차가 양수라면 게이머의 총 속성값이 대전 후보의 총 속성값보다 크다는 것으로, 게이머가 전체적으로 더 강한 캐릭터임을 의미할 수 있고 이 경우 대전 시 게이머의 승률이 높아진다. 반대로 게이머와 대전 후보 간 속성 정보 총합의 차가 음수라면 게이머의 총 속성값이 대전 후보의 총 속성값보다 작다는 것으로, 게이머가 전체적으로 더 약한 캐릭터임을 의미할 수 있고 이 경우 대전 시 게이머의 승률이 낮아진다.. 따라서 동일한 유사도에서 추천 대전 상대를 선정하기 위해서는 속성값 차이의 부호가 (+)인지 (-)인지도 함께 고려하여 판단해야 한다.
<표 2> 대전 후보들의 유사도와 비유사도
<표 2>에서는 6개의 대전 후보들의 유사도와 비유사도를 예시하여 표로 나타낸다. 표에서 obj1은 제1 대전 후보, obj2는 제2 대전 후보, obj 3은 제3 대전 후보, obj 4는 제4 대전 후보, obj5는 제5 대전 후보, obj6은 제6 대전 후보를 나타낸다. 제5 대전 후보와 제6 대전 후보의 게이머와의 유사도는 0.026으로 동일하며, 가장 높은 유사도를 가진다.
이러한 경우에, 제5 대전 후보와 제6 대전 후보 중 누가 더 대전 상대로서 적합한지를 판단하지 위해서는 유사도 이외에도 캐릭터의 강도를 고려할 수 있다. 즉, 속성의 총합에 대한 차이를 기준으로 게이머와 제5 대전 후보와 제6 대전 후보의 관계를 판단하면 대전에서 회피해야할 상대가 결정될 수 있다.
<표 3>은 게이머와 대전 상대들의 속성 정보 총합, 즉 총 속성값과, 게이머와의 차이값을 나타낸다.
제2 대전 후보와 제3 대전 후보 그리고 제5 대전 후보의 경우, 게이머의 속성 정보 총합에서 대전 후보의 속성 정보 총합을 뺀 값이 양수이므로, 게이머가 해당 대전 후보들보다 더 속성 정보의 전체적인 값이 크고, 즉 게이머가 해당 대전 후보들보다 더 강한 캐릭터임을 의미할 수 있다. 특히 속성 정보 총합 간의 차이값이 가장 큰 제5 대전 후보는 제일 약한 대전 상대이다.
그러나 제1 대전 후보, 제4 대전 후보, 제6 대전 후보의 경우, 게이머의 속성 정보 총합에서 대전 후보의 속성 정보 총합을 뺀 값이 음수이므로, 게이머가 해당 대전 후보들보다 더 속성 정보의 전체적인 값이 작고, 즉 게이머가 해당 대전 후보들보다 더 약한 캐릭터임을 의미할 수 있다. 특히, 제6 대전 후보는 큰 유사도를 가지나, 게이머보다 강한 캐릭터이므로 게이머가 제6 대전 후보와 대전할 경우 게이머가 패할 확률이 높다.
도 6을 참조하면 수직선 상에 각각의 대전 후보와 게이머의 속성 정보 총합이 도시되어 있다. 도 6에 도시된 수직선에는 속성 정보의 총합의 대소 비교, 즉 캐릭터들 간 강한 순서와 약한 순서, 그리고 강한 정도와 약한 정도가 직관적으로 인지 가능하게 표시되어 있다.
도 6을 참조하면, 게이머 g의 속성 정보 총합은 170이며, 제1 대전 후보의 속성 정보 총합은 212, 제2 대전 후보의 속성 정보 총합은 151, 제3 대전 후보의 속성 정보 총합은 163, 제4 대전 후보의 속성 정보 총합은 181, 제5 대전 후보의 속성 정보 총합은 95, 제6 대전 후보의 속성 정보 총합은 245이다.
즉 게이머의 위치에서 수직선을 가로지르는 점선의 왼쪽에 있는 대전 후보들, 제5 대전 후보, 제2 대전 후보, 제3 대전 후보가 대전 적합도가 있거나 좋은 대전 후보들이며, 제1 대전 후보, 제4 대전 후보, 제6 대전 후보는 게이머보다 강한 캐릭터들로서 대전 적합도가 없거나 나쁜 대전 후보들이다. 그리고 속성 정보 총합이 가장 낮으며 속성 정보 총합 수직선에서 게이머와 가장 멀리 떨어져 있는 제5 대전 후보가 가장 큰 대전 적합도를 가진다. 제5 대전 후보는 물론 유사도에 있어서도 대전 후보들 가운데 가장 큰 값을 가졌다. 따라서 본 발명의 실시예에서는 대전 후보들 가운데 제5 대전 후보가 추천 대전 상대로 선정될 수 있다.
도 7은 본 발명의 실시예에 따른 대전 대상의 속성 분포를 나타낸 그래프이다. 도 7의 (a)는 대전객체 500개의 속성 분포, 도 7의 (b)는 대전객체 10K의 속성 분포, 도 7의 (c)는 대전객체 100K의 속성 분포를 나타낸다.
본 발명의 실시예는 다중 속성을 갖는 게이머들 사이의 유사도를 평가하여 대전 가능한 상대를 탐색하는 기법이므로 도 7을 참조하여서는 속성의 차이를 중심으로 대전 객체들에 대한 평가 시뮬레이션을 수행하고 분석한 연구 결과를 설명하도록 한다.
가상 데이터와 실험 환경은 다음과 같다.
본 연구에서 게이머와 유사도를 평가하는 대전 후보는 100K개이며 가상 대전 후보 생성기를 설계하여 각 대전 후보의 속성 값을 무작위로 생성하였다. 대전 후보의 속성은 실제 게이머들이 가질 수 있는 게임 레벨, 파워 잔량, 기술의 수, 강도의 네 개이며 속성 정보의 값은 1-100 사이의 정수로 표준분포를 이룬다. 속성에 대한 유사도 비교에서 큰 값이 작은 값에 비해 우선권을 가진다. 게이머와 대전 후보는 리눅스 기반의 Jupyter notebook 환경에서 파이썬으로 구현하였으며 각 속성 정보를 리스트형 객체로 생성하였다. 실험을 위한 개발 환경은 아래의 <표4>와 같다.
<표4> 실험 환경
속성 값은 파이썬의 randrange() 함수를 사용하여 표준 분포로 생성하였으며 도 7은 게임 객체들의 분포를 나타낸다. 일차원 값으로 생성된 게임 속성의 분포를 시각화하기 위해 홀수 번째 객체들의 속성을 하나의 리스트로 통합하여 y축으로 사용하고 짝수 번째 객체들의 속성을 x축으로 하여 scatter 그래프로 나타냈다. 도 7의 (a), (b), (c)는 각각 대전 후보 500개, 10K, 100K에 대한 표준분포를 나타낸다.
도 8은 본 발명의 실시예에 따라 유사도가 동일한 대전 대상 중 게이머보다 약한 대전 후보와 강한 대전 후보의 분포를 나타낸 그래프이다.
유사도와 승률 본 연구에서 유사도는 대전 후보와 게이머가 대전 가능한 가를 나타내며 유사도가 1에 가까울수록 두 객체의 실력이 비슷한 것을 의미한다. 그러나 게이머와 대전 후보 사이의 유사도는 음의 방향과 양의 방향이 존재하며, 게이머의 속성 정보 총 합과 대전 후보의 속성 정보 총합에 대한 차이에 따라서 게이머의 대전 승리에 유리하거나 불리할 수 있다.
게이머의 속성 정보 총합에서 대전 후보의 속성 정보 총합을 뺀 수가 양수일 때는 게이머의 승률이 높고 음수일 때는 반대의 결과가 된다. 따라서 유사도가 1에 가깝다는 것이 반드시 게이머가 유리함을 의미하지 않는다. 즉, 유사도 만으로는 대전 시 게이머가 이길 수 있는 가능성을 판단하기 어렵다.
가상의 대전객체 100k 중 게이머 g보다 승률이 낮은 객체가 30,087개이며 높은 객체는 69,913개가 포함되어 있다. 도 8의 (a)와 (b)는 각각 게이머 보다 승률이 낮은 대전 후보와 높은 대전 후보에 대한 유사도 분포를 나타낸다.
도 8의 (a) 에서 승률이 0.025로 수렴할수록 속성의 합이 게이머보다 작고 유사도가 낮은 것을 의미하며 실제 대전 시 게이머의 승률이 높다. 유사도가 0.175에 근접할수록 네개의 속성에 대한 유사도가 높은 것이므로 레벨이나 파워가 게이머와 비슷하여 유사도가 0.025인 객체보다 대전에서 어려운 상대이다.
도 8의 (b) 는 유사도가 0.175보다 0.025일 때 게이머 g보다 속성 정보 총합이 큰 값을 갖기 때문에 대전 시 게이머의 승률이 매우 낮아진다. 즉, 속성의 차이가 음수에 해당하는 대전 후보들로서 게이머보다 강한 대전 후보에 해당하며, 실제 대전 시 위험한 상대들이다. 결론적으로, 게임 속성은 유사도가 높으면 1에 가까우므로 게이머와 대전 후보가 비슷한 실력을 갖는 것이며 유사도가 낮으면 게이머의 속성에 비해 대전 후보의 속성이 낮거나 높은 것이므로 이길 수 있는 대상 또는 이기기 어려운 회피해야 할 대상임을 의미한다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: 최적 대전 상대 탐색 시스템
110: 최적 대전 상대 탐색 장치
210: 속성 정보 수집부
220: 유사도 산출부
230: 적합도 판별부
240: 결과 출력부
110: 최적 대전 상대 탐색 장치
210: 속성 정보 수집부
220: 유사도 산출부
230: 적합도 판별부
240: 결과 출력부
Claims (14)
- 게이머의 사용자 단말과 연결되는 최적 대전 상대 탐색 장치에 의해 수행되는 최적 대전 상대 탐색 방법에 있어서,
게임이 진행됨에 따라 상기 게이머와의 대전을 수행할 수 있으며 각각의 속성 정보를 가지는 하나 이상의 대전 후보를 탐색하는 단계;
상기 대전 후보의 상기 속성 정보를 수집하는 단계;
상기 게이머와 상기 대전 후보 간 상기 속성 정보가 얼마나 유사한 값을 가지는지를 나타내는 유사도를 산출하는 단계;
상기 게이머와 상기 대전 후보 간의 상기 속성 정보의 값의 크기를 대소 비교하여 대전 적합도를 분석하는 단계;
상기 유사도 및 상기 대전 적합도를 기반으로 상기 대전 후보 중에서 추천 대전 상대를 도출하는 단계; 및
상기 추천 대전 상대가 누구인지를 나타내는 대전 상대 추천 정보를 상기 게이머의 상기 사용자 단말로 제공하는 단계를 포함하며,
상기 유사도를 산출하는 단계는 상기 게이머와 각각의 상기 대전 후보들간의 비유사도를 통해 상기 유사도를 산출하는 것을 특징으로 하고,
상기 비유사도는 유클리드 거리를 구하는 방법에 의해 산출되며,
아래의 수식에 의해 도출되는 것을 특징으로 하는 최적 대전 상대 탐색 방법.
(여기서 d는 비유사도, p는 상기 게이머의 상기 속성 정보, p는 상기 대전 후보의 속성 정보) - 제1항에 있어서,
상기 속성 정보는 상기 게이머 또는 상기 대전 후보의 게임 레벨 정보, 파워 잔량 정보, 보유 기술 정보, 아이템 정보 중 하나 이상의 세부 항목을 포함하는 것을 특징으로 하는 최적 대전 상대 탐색 방법. - 제1항에 있어서,
상기 게이머와 상기 대전 후보의 속성 정보들 간 차의 절대값이 작을수록 상기 유사도는 큰 값을 가지는 것을 특징으로 하는 최적 대전 상대 탐색 방법. - 제3항에 있어서,
상기 유사도를 산출하는 단계는,
상기 게이머와 각각의 상기 대전 후보의 속성 정보들 간 차의 절대값을 이용하여 상기 게이머와 각각의 상기 대전 후보들 간의 비유사도를 산출하는 단계; 및
상기 비유사도의 역수를 취하여 상기 게이머와 각각의 상기 대전 후보들 간의 상기 유사도로 변환하는 단계를 포함하는 것을 특징으로 하는 최적 대전 상대 탐색 방법. - 제1항에 있어서,
상기 대전 적합도를 분석하는 단계는
상기 게이머의 상기 속성 정보의 총합과 상기 대전 후보의 상기 속성 정보의 총합을 비교하며,
비교 결과 상기 게이머의 상기 속성 정보의 총합이 더 큰 값을 가질수록 상기 대전 적합도도 더 큰 값을 가지는 것을 특징으로 하는 최적 대전 상대 탐색 방법. - 제1항에 있어서,
상기 추천 대전 상대를 도출하는 단계는,
상기 유사도와 상기 대전 적합도가 모두 미리 설정된 값 이상의 값을 가지는 상기 대전 후보를 상기 추천 대전 후보로 선정하는 것을 특징으로 하는 최적 대전 상대 탐색 방법. - 게이머의 사용자 단말과 연결되는 최적 대전 상대 탐색 장치에 있어서,
게임이 진행됨에 따라 상기 게이머와의 대전을 수행할 수 있으며 각각의 속성 정보를 가지는 하나 이상의 대전 후보를 탐색하고 상기 대전 후보의 상기 속성 정보를 수집하는 속성 정보 수집부;
상기 게이머와 상기 대전 후보 간 상기 속성 정보가 얼마나 유사한 값을 가지는지를 나타내는 유사도를 산출하는 유사도 산출부;
상기 게이머와 상기 대전 후보 간의 상기 속성 정보의 값의 크기를 대소 비교하여 대전 적합도를 분석하는 적합도 판별부; 및
상기 유사도 및 상기 대전 적합도를 기반으로 상기 대전 후보 중에서 추천 대전 상대를 도출하여, 상기 추천 대전 상대가 누구인지를 나타내는 대전 상대 추천 정보를 상기 게이머의 상기 사용자 단말로 제공하는 결과 출력부를 포함하며,
상기 유사도 산출부는 상기 게이머와 각각의 상기 대전 후보들 간의 비유사도를 통해 상기 유사도를 산출하는 것을 특징으로 하고,
상기 비유사도는 유클리드 거리를 구하는 방법에 의해 산출되며,
아래의 수식에 의해 도출되는 것을 특징으로 하는 최적 대전 상대 탐색 장치.
(여기서 d는 비유사도, p는 상기 게이머의 상기 속성 정보, p는 상기 대전 후보의 속성 정보) - 제7항에 있어서,
상기 속성 정보는 상기 게이머 또는 상기 대전 후보의 게임 레벨 정보, 파워 잔량 정보, 보유 기술 정보, 파워 잔량 정보, 아이템 정보 중 하나 이상의 세부 항목을 포함하는 것을 특징으로 하는 최적 대전 상대 탐색 장치. - 제7항에 있어서,
상기 게이머와 상기 대전 후보의 속성 정보들 간 차의 절대값이 작을수록 상기 유사도는 큰 값을 가지는 것을 특징으로 하는 최적 대전 상대 탐색 장치. - 제9항에 있어서,
상기 유사도 산출부는,
상기 게이머와 각각의 상기 대전 후보의 속성 정보들 간 차의 절대값을 이용하여 상기 게이머와 각각의 상기 대전 후보들 간의 비유사도를 산출하는 비유사도 산출부; 및
상기 비유사도의 역수를 취하여 상기 게이머와 각각의 상기 대전 후보들 간의 상기 유사도로 변환하는 유사도 변환부를 포함하는 것을 특징으로 하는 최적 대전 상대 탐색 장치. - 제7항에 있어서,
상기 적합도 판별부는
상기 게이머의 상기 속성 정보의 총합과 상기 대전 후보의 상기 속성 정보의 총합을 비교하며,
비교 결과 상기 게이머의 상기 속성 정보의 총합이 더 큰 값을 가질수록 상기 대전 적합도도 더 큰 값을 가지는 것을 특징으로 하는 최적 대전 상대 탐색 장치. - 제7항에 있어서,
상기 결과 출력부는
상기 추천 대전 상대를 도출함에 있어서, 상기 유사도와 상기 대전 적합도가 모두 미리 설정된 값 이상의 값을 가지는 상기 대전 후보를 상기 추천 대전 후보로 선정하는 것을 특징으로 하는 최적 대전 상대 탐색 장치.
- 삭제
- 삭제
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200022172A KR102379040B1 (ko) | 2020-02-24 | 2020-02-24 | 최적 대전 상대 탐색 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200022172A KR102379040B1 (ko) | 2020-02-24 | 2020-02-24 | 최적 대전 상대 탐색 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210107337A KR20210107337A (ko) | 2021-09-01 |
KR102379040B1 true KR102379040B1 (ko) | 2022-03-25 |
Family
ID=77779902
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200022172A KR102379040B1 (ko) | 2020-02-24 | 2020-02-24 | 최적 대전 상대 탐색 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102379040B1 (ko) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018171252A (ja) * | 2017-03-31 | 2018-11-08 | 株式会社バンダイナムコエンターテインメント | プログラム及びゲームシステム |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6414365B1 (en) | 2001-10-01 | 2002-07-02 | Koninklijke Philips Electronics N.V. | Thin-layer silicon-on-insulator (SOI) high-voltage device structure |
KR101031435B1 (ko) | 2008-12-08 | 2011-04-26 | 한국항공우주연구원 | 가변형 입구유동왜곡 모사장치 |
KR101519992B1 (ko) * | 2013-07-24 | 2015-05-15 | (주)위메이드엔터테인먼트 | 게임 서버에서 온라인 대전형 게임의 PvP(Player versus Player) 모드의 대전 상대를 매칭하는 방법, 게임 서버 및 상기 방법을 기록한 컴퓨터 판독 가능 저장매체 |
-
2020
- 2020-02-24 KR KR1020200022172A patent/KR102379040B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018171252A (ja) * | 2017-03-31 | 2018-11-08 | 株式会社バンダイナムコエンターテインメント | プログラム及びゲームシステム |
Also Published As
Publication number | Publication date |
---|---|
KR20210107337A (ko) | 2021-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5550720B2 (ja) | マルチユーザコンピュータシミュレーションにおいてユーザをマッチングさせる方法と装置 | |
Drachen et al. | Game analytics–the basics | |
Fu et al. | User segmentation for retention management in online social games | |
Smith et al. | An inclusive taxonomy of player modeling | |
CN111111204B (zh) | 交互模型训练方法、装置、计算机设备和存储介质 | |
Nielsen et al. | General video game evaluation using relative algorithm performance profiles | |
KR101226305B1 (ko) | 순위가 매겨지고 사용자가 생성한 게임 플레이 조언의 실시간이고 정황적인 표시 | |
US10449454B2 (en) | System and method for determining events of interest in a multi-player online game | |
Wallner et al. | Visualizations for retrospective analysis of battles in team-based combat games: A user study | |
CN112685921B (zh) | 一种高效精确搜索的麻将智能决策方法、系统及设备 | |
CN107335220A (zh) | 一种消极用户的识别方法、装置及服务器 | |
Trammell et al. | A cultural approach to algorithmic bias in games | |
KR101962269B1 (ko) | 게임 평가 장치 및 방법 | |
CN116664013B (zh) | 协作学习模式的效果评估方法、泛在智慧学习系统及介质 | |
KR102095862B1 (ko) | 게임 정보 제공 시스템 | |
KR102379040B1 (ko) | 최적 대전 상대 탐색 방법 및 장치 | |
Paschali et al. | A metric suite for evaluating interactive scenarios in video games: an empirical validation | |
Moshfeghi et al. | A game-theory approach for effective crowdsource-based relevance assessment | |
KR20110081399A (ko) | 온라인 게임 내 사제 관리 시스템 및 그 제공방법 | |
Li et al. | Measuring diversity of game scenarios | |
JP2014161582A (ja) | ゲームサーバ、ゲーム制御方法、ゲームプログラム、ゲームプログラム記録媒体及びゲームシステム | |
KR102622300B1 (ko) | 게임 내에서의 아이템 패키지 제공 시스템 | |
Long | Search, inference and opponent modelling in an expert-caliber Skat player | |
KR20140049640A (ko) | 게임의 감성요소에 대한 게임 장르별 맞춤형 평가 방법 | |
Murray et al. | Something In The Way We Move: Quantifying patterns of exploration in virtual spaces. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |