Skip to content

Agent vanilla MCTS#7

Merged
adamgracikowski merged 9 commits into
mainfrom
feature/mcts-agent
May 16, 2026
Merged

Agent vanilla MCTS#7
adamgracikowski merged 9 commits into
mainfrom
feature/mcts-agent

Conversation

@p10tr13

@p10tr13 p10tr13 commented May 14, 2026

Copy link
Copy Markdown
Collaborator

Opis PR

Dodałem podstawowego agenta mcts. Zintegrowałem go z istniejącym kodem.

Zmiany w UI

Do GUI dodałem kontrolki limitu iteracji lub limitu czasu. Obie skale są logarytmiczne, więc można sobie z dużego zakresu dogodnie wybrać.

Screenshot 2026-05-14 170942

Jakość gry agenta

Jest ona... rozczarowująca. Zrobiłem wielokrotne review kodu i nie jestem w stanie znaleźć oczywistego błędu, który mógłby wpływać na jego jakość gry. Nawet pomimo ustawienia limitów bardzo wysokich często przegrywa on z MiniMax-em. W agencie są operacje, które nie są jakoś mega wydajne (np. mieszanie wektorów), ale trzeba je wykonywać, aby nie preferować danej grupy ruchów.

Czego brakuje?

Statystyki, jakie zostały dla niego stworzone mogą być jeszcze nie pełne, ale w następnych fazach przed testami i pisaniem finalnego raportu uzupełnię je.

@p10tr13
p10tr13 requested a review from adamgracikowski May 14, 2026 15:46
@p10tr13 p10tr13 self-assigned this May 14, 2026

@adamgracikowski adamgracikowski left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Trochę pograłem i na mniejszych planszach (grałem kilka razy 6x7 xD) przy zwiększonej maksymalnej liczbie iteracji (10k) już przegrywałem z nim, więc chyba nie jest tak źle jak mówisz.

Mógłbyś sobie printować, ile iteracji wykonuje przy określonym limicie czasu i na tej podstawie dobrać default dla 2s, bo może nasza implementacja robi znacznie więcej iteracji w tym czasie niż jest defailt iterations, a fajnie gdyby mniej więcej domyślne ograniczenie czasowe odpowiadało domyślnej liczbie iteracji (wiadomo, że to się będzie zmieniało w zależności od rozmiaru planszy, ale dla 8x8 powiedzmy mogłoby to być dobrze dobrane.

Poza tym jak dla mnie wygląda w porządku.

Comment thread src/compute/src/agents/mcts/metrics.rs Outdated
Comment thread src/compute/src/agents/mcts/node.rs Outdated
Comment thread src/compute/src/agents/metrics.rs Outdated
Comment thread src/compute/src/gui/views/gameplay.rs Outdated
Comment thread src/compute/src/resources/configs/with_human/mcts_vs_human.toml
Comment thread src/compute/src/agents/mcts.rs Outdated
Comment thread src/compute/src/resources/configs/without_human/mcts_vs_minimax.toml Outdated
Comment thread src/compute/src/agents.rs Outdated
Comment thread src/compute/src/agents.rs
Comment thread src/compute/src/agents/mcts.rs Outdated
@adamgracikowski
adamgracikowski merged commit 9465a39 into main May 16, 2026
2 checks passed
@adamgracikowski
adamgracikowski deleted the feature/mcts-agent branch May 16, 2026 10:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants