• 제목/요약/키워드: monte-carlo tree search

검색결과 13건 처리시간 0.024초

Convolutional Neural Network와 Monte Carlo Tree Search를 이용한 인공지능 바둑 프로그램의 구현 (Implementation of Artificial Intelligence Computer Go Program Using a Convolutional Neural Network and Monte Carlo Tree Search)

  • 기철민;조태훈
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2016년도 추계학술대회
    • /
    • pp.405-408
    • /
    • 2016
  • 바둑, 체스, 장기와 같은 게임은 사람들의 두뇌발달에 도움을 주어왔다. 이 게임들은 컴퓨터 프로그램으로도 개발되었으며, 혼자서도 게임을 즐길 수 있도록 많은 알고리즘들이 개발되었다. 사람을 이기는 체스 프로그램은 1990년대에 개발된 것에 비해 바둑은 경우의 수가 너무 많아서 프로 바둑기사를 이기기는 불가능한 것으로 여겨졌다. 하지만 MCTS(Monte Carlo Tree Search)와 CNN(Convolutional Neural Network)의 이용으로 바둑 알고리즘의 성능은 큰 향상을 이루었다. 본 논문에서는 CNN과 MCTS를 사용하여 바둑 알고리즘의 개발을 진행하였다. 바둑의 기보가 학습된 CNN을 이용하여 최적의 수를 찾고, MCTS를 이용하여 게임의 시뮬레이션을 진행하여 이길 확률을 계산한다. 또한 기존 기보를 이용하여 바둑의 패턴 정보를 추출하고, 이를 이용하여 속도와 성능 향상을 도모하였다. 이 방법은 일반적으로 사용되는 바둑 알고리즘들에 비해 성능 향상이 있었다. 또한 충분한 Computing Power가 제공되면 더욱 성능이 향상될 것으로 보인다.

  • PDF

Hyper-parameter Optimization for Monte Carlo Tree Search using Self-play

  • Lee, Jin-Seon;Oh, Il-Seok
    • 스마트미디어저널
    • /
    • 제9권4호
    • /
    • pp.36-43
    • /
    • 2020
  • The Monte Carlo tree search (MCTS) is a popular method for implementing an intelligent game program. It has several hyper-parameters that require an optimization for showing the best performance. Due to the stochastic nature of the MCTS, the hyper-parameter optimization is difficult to solve. This paper uses the self-playing capability of the MCTS-based game program for optimizing the hyper-parameters. It seeks a winner path over the hyper-parameter space while performing the self-play. The top-q longest winners in the winner path compete for the final winner. The experiment using the 15-15-5 game (Omok in Korean name) showed a promising result.

몬테카를로 트리탐색을 활용한 초소형 바둑에서의 최상의 수순과 덤의 크기 (The Best Sequence of Moves and the Size of Komi on a Very Small Go Board, using Monte-Carlo Tree Search)

  • 이병두
    • 한국게임학회 논문지
    • /
    • 제18권5호
    • /
    • pp.77-82
    • /
    • 2018
  • 바둑은 최상의 착점을 찾기 위해 컴퓨터가 완전탐색을 하여 모든 가능한 착점들을 탐색할 수 없는 가장 복잡한 보드게임이다. AlphaGo 이전에 모든 강력한 컴퓨터바둑 프로그램들은 게임트리 내 매우 큰 분기수와 국면평가에서의 어려움을 극복하기 위해 몬테카를로 트리탐색(Monte-Carlo Tree Search)을 사용해 왔다. 본 논문에서는 MCTS를 활용하여 초소형 바둑에서의 최상의 수순과 덤의 크기를 알고자 했다. 2줄바둑에서의 게임결과는 빅이 되었으며 덤의 크기는 0집, 반면에 3줄바둑에서는 흑이 항상 승리하고 덤의 크기는 9집이 되어야 함을 알아냈다.

순수 몬테카를로 트리탐색을 기반으로 한 소형 바둑판에서의 가장 유망한 첫 수들 (The most promising first moves on small Go boards, based on pure Monte-Carlo Tree Search)

  • 이병두
    • 한국게임학회 논문지
    • /
    • 제18권6호
    • /
    • pp.59-68
    • /
    • 2018
  • 간단한 규칙에도 불구하고 바둑은 인공지능 분야에서 가장 복잡한 전략적 보드게임 중의 하나이다. 몬테카를로 트리탐색(MCTS)은 최상우선 트리탐색 알고리즘으로 컴퓨터바둑 제작을 위해 사용되어 왔다. 저자는 9줄바둑판보다 작은 바둑판에서의 바둑게임 행위를 위해 MCTS를 활용하여 가장 유망한 첫 수를 찾고자 한다. 실험결과에 의하면 MCTS는 첫 수로 홀수형 바둑판에서는 정중앙, 짝수형 바둑판에서는 중앙 부근에 착수하기를 선호하는 것으로 나타났다.

일반 비디오 게임 플레이 인공지능을 위한 GreedyUCB1기반 몬테카를로 트리 탐색 (GreedyUCB1 based Monte-Carlo Tree Search for General Video Game Playing Artificial Intelligence)

  • 박현수;김현태;김경중
    • 정보과학회 컴퓨팅의 실제 논문지
    • /
    • 제21권8호
    • /
    • pp.572-577
    • /
    • 2015
  • 보통의 인공지능 시스템은 특정 작업을 수행하기 위해 설계되며, 해당 작업만을 수행하는 능력을 가진다. 그에 반해 인공 일반지능이란 설계 당시 목표로 한 작업만이 아니라 새로 접하는 다양한 문제에도 대응할 수 있는 인공지능을 의미한다. 최근 게임 인공지능 분야의 일반지능 문제인 General Video Game Playing에 대한 관심이 높아지고 있다. 비디오 게임으로 범위가 제한되었지만, 다양한 형태의 비디오 게임을 플레이 할 수 있는 단일 인공지능을 설계하는 것은 상당히 도전적인 문제이다. 본 논문에서는 Monte-Carlo Tree Search를 이용하는 기존 비디오 게임을 위한 인공 일반지능을 개선하는 방법에 대해 기술한다. 여기서는 UCB1 알고리즘을 문제에 적합하도록 개선한 GreedyUCB1과 게임 분석을 통해 얻은 지식을 활용한 Rollout 방법을 제안한다. 제안한 방법으로 개발된 인공지능은 국제 학술대회인 IEEE Computational Intelligence in Games의 2014년 인공지능 경진 대회에 출전하여 4위의 성적을 보였다.

삼목 게임에 적용된 몬테카를로 트리탐색 (Monte-Carlo Tree Search Applied to the Game of Tic-Tac-Toe)

  • 이병두
    • 한국게임학회 논문지
    • /
    • 제14권3호
    • /
    • pp.47-54
    • /
    • 2014
  • 바둑 게임은 가장 오래된 게임 중의 하나이며 적어도 2,500년 전에 기원되었다. 게임프로그래밍에서 대부분의 성공적인 접근법은 평가함수를 활용한 게임트리 탐색을 사용하는 것이다. 그러나 컴퓨터바둑에서 그럴싸한 평가함수를 구축한다는 것은 매우 어렵다. 몬테카를로 트리탐색(MCTS)은 9줄 바둑에서 프로기사를 제압한 MoGo와 CrazyStone과 같은 강력한 컴퓨터바둑프로그램을 만들어 내었다. 몬테카를로 트리탐색은 몬테카를로 시뮬레이션에 의해 계산된 승률을 근간으로 한다. 몬테카를로 트리탐색을 컴퓨터바둑에 구현하기에 앞서 삼목에서 최상의 첫 수로 중앙, 귀, 변의 세 수에 대한 각각의 승률을 측정하려고 했다. 실험 결과로 최상의 첫 수는 중앙이 우선하고, 다음은 귀, 마지막으로는 변이라는 사실이 밝혀졌다.

MCTS 기법을 활용한 불완전 정보 카드 게임에서의 인공지능 에이전트 생성 : 하스스톤을 중심으로 (Generation of AI Agent in Imperfect Information Card Games Using MCTS Algorithm: Focused on Hearthstone)

  • 오평;김지민;김선정;홍석민
    • 한국게임학회 논문지
    • /
    • 제16권6호
    • /
    • pp.79-90
    • /
    • 2016
  • 최근 게임분야에서 수준 높은 인공지능 에이전트의 구현은 많은 주목을 받고 있다. 그 중 Monte-Carlo Tree Search(MCTS)는 완전 정보를 가진 게임에서 무작위 탐색을 통해 최적의 해를 구할 수 있는 알고리즘으로, 수식으로 표현되지 않는 경우에 근사치를 계산하는 용도로 적합하다. 하스스톤과 같은 Trading Card Game(TCG) 장르의 게임은 상대방의 카드와 플레이를 예측할 수 없기 때문에 불완전 정보를 가지고 있다. 본 논문에서는 불완전 정보 카드 게임에서 인공지능 에이전트를 생성하기 위해 MCTS 알고리즘을 응용하는 방법을 제안하고, 현재 서비스되는 하스스톤 게임에 적용하여 봄으로써 MCTS 알고리즘의 실용성을 검증한다.

삼목 게임을 위해 개선된 몬테카를로 트리탐색 알고리즘 (Enhanced strategic Monte-Carlo Tree Search algorithm to play the game of Tic-Tac-Toe)

  • 이병두
    • 한국게임학회 논문지
    • /
    • 제16권4호
    • /
    • pp.79-86
    • /
    • 2016
  • 몬테카를로 트리탐색은 최대우선탐색 알고리즘이며, 많은 게임 특히 바둑 게임에 성공적으로 적용되어 왔다. 삼목 게임에서 MCTS 간의 대국을 통해 성능을 평가하고자 했다. 첫 번째 대국자는 항상 두 번째 대국자에 비해 압도적인 우위를 보였으며, 최선의 게임 결과가 무승부가 됨에도 불구하고 첫 번째 대국자가 두 번째 대국자에 비해 우월한 이유를 찾고자 했다. MCTS는 반복적인 무작위 샘플링을 기반으로 하는 통계적 알고리즘이기 때문에, 특히 두 번째 대국자를 위해 전략을 요하는 시급한 문제를 적절히 대처하지 못한다. 이를 위해 전략적 MCTS(S-MCTS)를 제안하며, S-MCTS는 결코 삼목 게임에서 지지 않는다는 것을 보였다.

딥퍼플 : 딥러닝을 이용한 체스 엔진 (DeepPurple : Chess Engine using Deep Learning)

  • 김성환;김영웅
    • 한국인터넷방송통신학회논문지
    • /
    • 제17권5호
    • /
    • pp.119-124
    • /
    • 2017
  • 1997년 IBM의 딥블루가 세계 체스 챔피언인 카스파로프를 이기고, 최근 구글의 알파고가 중국의 커제에게 완승을 거두면서 딥러닝에 대한 관심이 급증하였다. 본 논문은 딥러닝에 기반을 둔 인고지능 체스엔진인 딥퍼플(DeepPurple) 개발에 대해 기술한다. 딥퍼플 체스엔진은 크게 몬테카를로 트리탐색과 컨볼루션 신경망으로 구현된 정책망 및 가치망으로 구성되어 있다. 딥러닝을 통해 구축된 정책망을 통해 다음 수를 예측하고, 가치망을 통해 주어진 상황에서의 판세를 계산한 후, 몬테카를로 트리탐색을 통해 가장 유리한 수를 선택하는 것이 기본 원리이다. 학습 결과, 정책망의 경우 정확도 43%, 손실함수 비용 1,9로 나타났으며, 가치망의 경우 정확도 50%, 손실함수 비용 1점대에서 진동하는 것으로 나타났다.

기계학습 알고리즘 기반의 인공지능 장기 게임 개발 (Development of Artificial Intelligence Janggi Game based on Machine Learning Algorithm)

  • 장명규;김영호;민동엽;박기현;이승수;우종우
    • 한국IT서비스학회지
    • /
    • 제16권4호
    • /
    • pp.137-148
    • /
    • 2017
  • Researches on the Artificial Intelligence has been explosively activated in various fields since the advent of AlphaGo. Particularly, researchers on the application of multi-layer neural network such as deep learning, and various machine learning algorithms are being focused actively. In this paper, we described a development of an artificial intelligence Janggi game based on reinforcement learning algorithm and MCTS (Monte Carlo Tree Search) algorithm with accumulated game data. The previous artificial intelligence games are mostly developed based on mini-max algorithm, which depends only on the results of the tree search algorithms. They cannot use of the real data from the games experts, nor cannot enhance the performance by learning. In this paper, we suggest our approach to overcome those limitations as follows. First, we collects Janggi expert's game data, which can reflect abundant real game results. Second, we create a graph structure by using the game data, which can remove redundant movement. And third, we apply the reinforcement learning algorithm and MCTS algorithm to select the best next move. In addition, the learned graph is stored by object serialization method to provide continuity of the game. The experiment of this study is done with two different types as follows. First, our system is confronted with other AI based system that is currently being served on the internet. Second, our system confronted with some Janggi experts who have winning records of more than 50%. Experimental results show that the rate of our system is significantly higher.