Szachy

Bardzo dobry silnik szachowy respektujący oficjalne zasady tejże gry (łącznie z biciem w przelocie, roszadą i podobnymi). Świetnie napisany, wszystko w jednym obiekcie. Dla początkujących może być trudny do zrozumienia.

Autor: Jakim

Rozmiar
1 MB
Autor
Jakim
Ocena
9/10
13 głosów
Komentarze
Komentarze (łącznie 20, wyświetlam 1 - 15):
Platyna (Pią., 17 Cze. 11, 21:59)
#1

Podoba mnie się. Zastanawiam się tylko czy nie mija się to odrobinę z ideą przykładów, bo to pełen silnik, ale podoba mnie się. :)

Uzjel (Pią., 17 Cze. 11, 23:53)
#2

Super Jakim :)

DarkTeam (Sob., 18 Cze. 11, 07:14)
#3

Mi się podoba ;d szkoda że przykład jest w 8.1 a nie w 8.0 ^^ ale to i tak wersje lite można pobrać w sumie

DarkTeam (Sob., 18 Cze. 11, 07:15)
#4

EDIT: sry silnik ^^ nie przyklad

Borek (Sob., 18 Cze. 11, 09:52)
#5

Super! Podoba mi się :) Myślisz nad prostym AI ? Szczerze mówiąc nie wiedziałbym jak się do tego zabrać :D AI w szachach to chyba największe wyzwanie dla mnie :P

Jakim (Sob., 18 Cze. 11, 12:18)
#6

Na razie tworzę AI do prostszych gier planszowych - jedną na ligę - jak mi się uda, przeniosę to na szachy ;).

Muuuuczek567 (Sob., 18 Cze. 11, 12:24)
#7

Przy tworzeniu AI do gier typu szachy dobrze skorzystać ze sposobu działania algorytmów genetycznych.

Platyna (Sob., 18 Cze. 11, 15:09)
#8

Przy tworzeniu AI do gier typu szachy dobrze skorzystać z pomocy wybitnych szachistów i zaprogramować jakieś znane konkretne strategie, a nie całkowicie od zera. Dodatkowo myślę, że trzeba się raczej skupić na niekompletnym drzewie gry i jakimś programowaniu dynamicznym. Wyszukiwanie tzw. strategii wygrywającej, ale nie na całą rozgrywkę tylko do jakiegoś wcześniejszego celu jak zbicie określonej bierki.
To jest przynajmniej jak ja bym się do tego zabrał. Nie wiem, jakoś nie mam zaufania do genetyków.
A teraz mnie naszło takie pytanie czy takie fachowe AI szachowe pracuje w czasie gdy gracz myśli czy tylko podczas własnego ruchu. :)

Tymon (Sob., 18 Cze. 11, 16:11)
#9

Moża użuć sztucznych sieci neuronowych... ale nie na nasze komputery. Za duże by wyszły.

Jakim (Sob., 18 Cze. 11, 16:43)
#10

Teoretycznie, metody siłowe pozwalają na dzisiejszych komputerach przewidywać multum kombinacji, nie jest to jednak konieczne, a na moje oko - nawet wskazane. Nie wszystkie kombinacje ruchów należy badać (nazwijmy niektóre ruchy "błędnymi"), poza tym można zamiast typowego drzewka ruchów (typowa metoda sprawdzania) użyć schematu: wyznaczenie celu - obrona - przeprowadzenie: ze zdolnością płynnego wytyczania kolejnych celów na podstawie ruchów oponenta. Natomiast programista musiałby nie tyle przewidzieć możliwe reakcje, lecz stworzyć system oceny ruchu i zamiarów przeciwnika. To by mieściło się w wymienionym przez Platynę "tworzeniu strategii".

Uzjel (Sob., 18 Cze. 11, 16:46)
#11

Najlepsze silniki szachowe sprawdzają każdą możliwą kombinacje i wybierają dla siebie najkorzystniejszą. Wyprzedzają gracza kilka a czasem kilkanaście ruchów do przodu. Można zauważyć, że jak gra się na najwyższych poziomach trudności z komputerem, to "myślenie" przeciwnika komputerowego jest bardzo długie.

Platyna (Sob., 18 Cze. 11, 16:54)
#12

Bredzisz Uzjel aż się się przykro robi. Czas sprawdzania wszystkich kombinacji nawet koło 20 ruchów w przód liczyło by się we wiekach wszechświata. Drzewko gry rozrasta się wykładniczo. Nie ma prawa istnieć żaden zadowalający algorytm bezbłędnie wyznaczający tzw. pozycje wygrywające w szachach. Są tylko i wyłącznie odpowiednio dobre heurystyki. Jakim to w miarę dobrze wyjaśnił.

Uzjel (Sob., 18 Cze. 11, 17:49)
#13

OK sorry, już się nie znam :) Jednak jestem pewny, że spotkałem się z tą techniką jednak w trochę mniejszej skali.

Muuuuczek567 (Sob., 18 Cze. 11, 18:03)
#14

W warcabach to może by przeszło, a i to tylko na 10 ruchów do przodu.
Mówiąc o algorytmach genetycznych, miałem na myśli użycie funkcji przystosowania. Nie mówiłem, żeby od razu implementować jakieś mutujące się kolonie. Wydaje mi się po prostu, że jak w pewnym momencie (np. jakiś względny spokój na planszy) użyje się funkcji przystosowania dla, powiedzmy, 100 ruchów, to te mające najlepszą wartość mogą być dobrym punktem wyjścia dla następnych ruchów.

bedziom (Nie., 19 Cze. 11, 18:53)
#15

nic nie rozumiem z tego Waszego bełkotu, ale wiem jedno - przykład mi się podoba

Najnowsze wersje GameMakera:

Stabilna
2024.2.0.132 • 2024.2.0.163
wydana 15 dni temu
LTS
2022.0.2.51 • 2022.0.2.49
wydana 154 dni temu
Beta
2024.400.0.516 • 2024.400.0.537
wydana  5 dni temu
= IDE, = Runtime
Użytkownicy online
1 użytkownik aktywny:
gości: 1,
(~ostatnie 15 minut)
Discord
18 użytkowników online na discordzie:
Carl-bot, p..., Wielki Druid, Kowu, fervi, RogerDodg3r, YoungKrystian, PhysX ᴺⱽᴵᴰᴵᴬ, antek, Uzjel, Moldis, LeD, Dyno, LadyLush, bagno, l..., TobiasM (Morgo), xVANiLL
Shoutbox
I am Lord (19:15, 17.03.24)
6h mam na to hmmm
I am Lord (19:06, 17.03.24)
Ale temat fajny
gnysek (01:33, 13.03.24)
Powinno działać, jest w kodzie sortowanie wg. najbliższego startu :)
Uzjel (21:59, 11.03.24)
Nie, ale za pierwszym razem zrobiłem fuckup, że było "Tura testowa" X_X
I am Lord (16:58, 11.03.24)
A co Uzjel już masz nawymyślane 100 tematów? 😅
Uzjel (20:08, 10.03.24)
@gnysek a jak bym dodał kilka lig na raz to walnie?
Uzjel (20:08, 10.03.24)
Liga będzie zawsze od piątku 16:00 do poniedziałku 23:59, zawsze w środku miesiąca.
gnysek (08:48, 10.03.24)
Tak, to też jest do poprawy X_X
Adriann (18:22, 09.03.24)
Tylko myślę czy nie leiej gdyby mówiło że zostało tyle i tyle dni i ileś godzin a nie tylko w godzinach ;d Albo konkretna data obok, byłoby czytelniej
I am Lord (15:08, 08.03.24)
o super z tą ligą :)
Starsze wpisy znajdziesz w Archiwum.
Ankieta
Ile zarobiłeś do tej pory na grach stworzonych w GM?