"Monte-Carlo 검색"은 어떻게 작동합니까?


16

Alpha Go에 관한 Reddit 게시물에서이 개념에 대해 들었습니다. 나는 논문과 기사를 살펴 보았지만 실제로 알고리즘을 이해할 수는 없었습니다.

그렇다면 누군가 Monte-Carlo 검색 알고리즘의 작동 방식과 게임 재생 AI 봇 구축에 어떻게 사용되는지에 대해 쉽게 이해할 수 있습니까?


MCTS 알고리즘에 대한 자세한 설명은 https://towardsdatascience.com/monte-carlo-tree-search-in-reinforcement-learning-b97d3e743d0f 에서 확인할 수 있습니다 .
nbro

답변:


13

Monte Carlo 방법 은 많은 수의 임의의 값 또는 시뮬레이션을 생성하고 평균 및 분산과 같은 일반적인 패턴을 기반으로 일종의 결론을 형성하는 접근 방식입니다.

예를 들어 일기 예보에 사용할 수 있습니다 . 작은 날씨 변화가 매우 다른 결과를 초래할 수있는 혼란스러운 시스템이기 때문에 장기 날씨를 예측하는 것은 매우 어렵습니다. Monte Carlo 방법을 사용하면 각각 약간의 대기 변화가있는 수많은 시뮬레이션을 실행할 수 있습니다. 그런 다음 결과를 분석하고, 예를 들어 비가 오는 시뮬레이션 수를 기반으로 주어진 날의 비가 올 확률을 계산할 수 있습니다.

Alpha Go에서 Monte Carlo를 사용하는 경우 소위 Monte Carlo Tree Search를 사용하는 것으로 보입니다 . 이 접근 방식에서는 가능한 이동 트리를 만들고 몇 번은 미래로 바꾼 다음 최상의 순서를 찾아보십시오. 그러나 이동 게임에서 가능한 이동 수가 매우 많으므로 훨씬 더 멀리 탐색 할 수 없습니다. 이것은 지금 좋아 보이는 움직임 중 일부가 나중에 나빠질 수 있음을 의미합니다.

따라서 Monte Carlo Tree Search에서 유망한 동작 시퀀스를 선택하고 해당 지점에서 게임이 진행되는 방식에 대한 하나 이상의 시뮬레이션을 실행합니다. 그런 다음 해당 시뮬레이션의 결과를 사용하여 특정 이동 순서가 실제로 얼마나 좋은지 더 잘 알 수 있으며 그에 따라 트리를 업데이트 할 수 있습니다. 좋은 움직임을 찾을 때까지 필요에 따라 반복하십시오.

더 많은 정보를 원하거나 일부 그림을 보려면 C. Browne et al., Monte Carlo Tree Search Methods의 조사 ( 개방 저장소 / 영구 링크 (paywalled) ) 에 관한 흥미로운 논문을 발견했습니다.


몬테 카를로가 알파 고에서 기본적으로하는 일은 다른 방법 대신에 다른 이동 조합을 고려하여 장기 전략을 만드는 것입니다 (전략을 선택한 다음이를 달성하기위한 움직임)?
Diego Antonio Rosario Palomino

Monte Carlo 접근법의 핵심 요소는 언급되지 않았는데, 이는 조사 할 수있는 이동 선택에 통합 된 확률 적 요소입니다. 더 적은 처리를 달성하기위한 정확성의 절충도 언급되지 않았습니다. 이것들은 가장 중요한 두 가지 측면이며 대답이 없습니다. 대신, 몬테카를로 수렴의 특징 인 의사 난수 요소 (보다 철저하지 않은 검색)로부터 적은 수의 시뮬레이션 일 때 "많은 수의 임의 값 또는 시뮬레이션"이 언급되었습니다.
FauChristian
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.