gomoku의 경우 신경망이나 유전자 알고리즘을 사용하는 것은 다소 시간이 걸리고 자주 걸리지 않으므로 원하는 방식으로 진행하지 마십시오. 고모 쿠 게임 트리는 다소 크지 만 미니 맥스, 게임 트리 가지 치기 및 매핑과는 달리 절반과 전체 2, 3, 4 등을 포함하여 우수한 휴리스틱 기능을 통해 적절한 AI를 얻을 수 있습니다. 전체 공간을 밖으로.
알파 베타 가지 치기 및 minimax에 익숙하지 않은 경우 https://www.cs.cornell.edu/courses/cs312/2002sp/lectures/rec21.htm을 참조 하십시오.
신경망이나 유전자 알고리즘을 실제로 사용하려면 학습 경험을 쌓을 수 있습니다. 신경망과 관련하여 한 가지 방법은 다음과 같습니다.
- 보드 상태 입력 (빈, 검정, 흰색의 경우 0,1,2 순서)을 수신하고 보드 상태의 '양호'값을 출력하는 휴리스틱 함수를 정의하십시오. 신경망은 휴리스틱 기능입니다.
- 이 게임의 움직임이 최적이라고 가정하면 현재의 가장 좋은 움직임 (현재 매개 변수 별)과 데이터의 움직임이 가장 좋은 것의 차이를 극복하십시오. 이것이 에러 함수를 정의하는 방법입니다! 따라서 신경 네트워크를 움직이는 것이 가장 강하다고 말하는 것이 이상적으로는 게임 데이터가 가장 강한 것입니다 (이 오류 함수의 최적화는 역 전파 또는 유전자 알고리즘을 통해 수행 할 수 있음).
- 이상적으로는이 시점에서 하드 코딩 된 휴리스틱 대신 게임 트리 이동 평가에 ( '강한') 신경망 기반 평가 기능을 사용할 수 있습니다.
물론 이것은 한 가지 방법 일 뿐이므로 게임 데이터를 먼저 찾아야합니다.
유전자 알고리즘을 적용하는 참고 사항은 위에서 언급 한 신경망의 매개 변수 최적화 또는 게임 트리 검색과 같은 몇 가지 방식으로 발생할 수 있으므로 문제 설정을 정의하는 방법을 명확하게 확인하십시오! 신경망을 적용하는 다른 방법도 마찬가지입니다.
마지막으로 gomuku가 해결되었음을 아는 것이 도움이됩니다. 다른 사람들의 생각과 아이디어는 /programming/6952607/ai-strategy-for-gomoku-a-variation-of-tic-tac-toe 를 참조
하십시오 .