Wpis z mikrobloga

Hej, ostatnio zacząłem sobie pisać algorytm grający w kółko i krzyżyk 15x15 i nie wiem co mogę usprawnić, żeby program grał lepiej. Na razie zaimplementowałem MCTS z jakimiś swoimi małymi optymalizacjami, tj.:
- algorytm bierze pod uwagę to tylko te ruchy, które stykają się z aktualnymi zajętymi polami
- przed wyborem ruchu przez MCTS i po wyborze ruchu jest puszczany mini-max o głębokości 3, który analizuje czy na planszy jest wygrana w 3 ruchach przed moim ruchem lub czy po moim ruchu wybranym przez MCTS nie ma przegranej w 3 ruchach
- podczas fazy symulacji ruchy są rozgrywane zupełnie losowo aż do 30 ruchów, jeśli po 30 ruchach jest sytuacja nadal remisowa to zwracany jest wynik remisowy

Póki co algorytm działa na 1 wątku oraz pewnie są lekkie straty czasu na klonowaniu obiektów, ale poszukuje optymalizacji nie dotyczących tych 2 rzeczy. Wszelkie pomysły polepszenia algorytmu mile widziane :)

#programowanie #informatyka #sztucznainteligencja
  • 4
  • Odpowiedz