• 제목/요약/키워드: 몬테카를로 트리탐색

검색결과 9건 처리시간 0.026초

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

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

삼목 게임을 위해 개선된 몬테카를로 트리탐색 알고리즘 (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는 결코 삼목 게임에서 지지 않는다는 것을 보였다.

몬테카를로 트리탐색을 활용한 초소형 바둑에서의 최상의 수순과 덤의 크기 (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는 첫 수로 홀수형 바둑판에서는 정중앙, 짝수형 바둑판에서는 중앙 부근에 착수하기를 선호하는 것으로 나타났다.

유전 알고리즘을 이용한 삼목 게임 전략 분석 (Analysis of Tic-Tac-Toe Game Strategies using Genetic Algorithm)

  • 이병두
    • 한국게임학회 논문지
    • /
    • 제14권6호
    • /
    • pp.39-48
    • /
    • 2014
  • 바둑은 단순한 규칙에도 불구하고 매우 복잡한 전략보드 게임이다. 몬테카를로 트리탐색을 이용하여 컴퓨터 바둑 프로그램들이 접바둑으로 프로기사를 제압해 왔다. 몬테카를로 트리탐색은 전략의 개념보다는 몬테카를로 시뮬레이션에 의해 계산된 승률에 근간을 한다. 반면에 적절한 적합도 함수로 된 유전 알고리즘은 게임 내 최적 해를 찾아낼 수 있다. 삼목 게임(또는 ${\bigcirc}{\times}$게임)은 가장 대중적인 게임 중의 하나이다. 저자는 삼목 게임에서의 최선의 전략을 찾고자 했다. 실험 결과로 유전 알고리즘은 효율적인 전략들을 찾을 수가 있으며, 바둑과 서양장기와 같은 여타 보드게임들에 적용할 수 있음을 보였다.

무전략 몬테카를로 트리탐색을 활용한 9줄바둑에서의 첫 수 (The first move in the game of 9⨯9 Go, using non-strategic Monte-Carlo Tree Search)

  • 이병두
    • 한국게임학회 논문지
    • /
    • 제17권3호
    • /
    • pp.63-70
    • /
    • 2017
  • 인공지능 연구에서 바둑은 위치평가의 어려움과 엄청난 분기수로 인해 가장 도전적인 보드게임으로 여겨지고 있다. 몬테카를로 트리탐색은 이러한 문제점을 극복할 수 있는 고무적인 돌파구이다. 알파고의 숨겨진 아이디어는 주어진 위치에서의 승률을 예상하여 깊은 탐색을 유도한 후 가장 고무적인 착수를 찾아내는 것이었다. 본 논문에서는 무전략 MCTS를 활용하여 9줄바둑에서 프로기사들이 최상의 첫수로 여기는 천원점이 옳다는 것을 확인했으며, 또한 가장 유행하는 첫 수들의 평균승률을 비교했다.

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

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

삼목 게임에서 최상의 첫 수를 구하기 위해 적용된 신뢰상한트리 알고리즘 (The UCT algorithm applied to find the best first move in the game of Tic-Tac-Toe)

  • 이병두;박동수;최영욱
    • 한국게임학회 논문지
    • /
    • 제15권5호
    • /
    • pp.109-118
    • /
    • 2015
  • 고대 중국에서 기원된 바둑은 인공지능 분야에서 가장 어려운 도전 중의 하나로 간주된다. 지난 수년에 걸쳐 MCTS를 기반으로 하는 정상급 컴퓨터바둑 프로그램이 놀랍게도 접바둑에서 프로기사를 물리쳤다. MCTS는 게임이 끝날 때까지 일련의 무작위 유효착수를 시뮬레이션 하는 접근법이며, 기존의 지식기반 접근법을 대체했다. 저자는 MCTS의 변형인 UCT 알고리즘을 삼목 게임에 적용하여 최선의 첫 수를 찾고자 했으며, 순수 MCTS의 결과와 비교를 했다. 아울러 UCB 이해를 위한 다중슬롯머신 문제를 풀기 위해 엡실론-탐욕 알고리즘과 UCB 알고리즘을 소개 및 성능을 비교하였다.

일반 비디오 게임 플레이 인공지능을 위한 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위의 성적을 보였다.