Kezdőoldal » Számítástechnika » Programozás » Min alapszik egy sakk bot?

Min alapszik egy sakk bot?

Figyelt kérdés
Azt tudom hogy rengeteg pozíciót néznek át és tudnak akár 28 lépésel előre "gondolkodni", de miből számítják ki, hogy az a legjobb lépés?
2023. jan. 10. 21:59
1 2
 1/13 anonim ***** válasza:
20%
Olyan lépések, amelyek elkerülik a jövőbeli kellemetlenségeket, illetve elkezdik felépíteni a megfelelő állást a következő támadáshoz.
2023. jan. 10. 22:18
Hasznos számodra ez a válasz?
 2/13 anonim ***** válasza:
17%

Köszönjükemese.

Volt ilyen reklám.

Tudtad?


Nemhogy elkerülik a kellemetlenségeket, de még a disszociatív konjuktív rezignáltságot is!

2023. jan. 10. 22:35
Hasznos számodra ez a válasz?
 3/13 anonim ***** válasza:
14%

"de miből számítják ki, hogy az a legjobb lépés?"


Nagyon egyszerű. Megszámolod a bábukat.

Sakkban a gyalog általában 1 egységet ér, egy futó vagy ló 3-at, egy bástya 5-öt, a vezér 9-et vagy 10-et.

Ezeket összeadod, nevezzük pontszámnak. Például, ha bizonyos lépéssorozat után a pontszám mondjuk 9-el csökkent, akkor nem az lesz a legjobb lépés.

Aztán azt is meglehet nézni, hogy a következő "n" lépésben lesz-e matt.

2023. jan. 10. 23:18
Hasznos számodra ez a válasz?
 4/13 anonim ***** válasza:
76%

" és tudnak akár 28 lépésel előre "gondolkodni"


Nem tudnak. Ez képtelenség és fölösleges is volna. A 28 lépés előre azt jelentené, hogy milliárdos nagyságrendű adathalmazzal gazdálkodik, amit lépésenként, legalább részben újra generál.


Rubik kocka - közelítőleg negyvenháromtrillió.

2023. jan. 11. 00:57
Hasznos számodra ez a válasz?
 5/13 anonim ***** válasza:
100%

Nézzél Code Bulletet a YouTube-on:

https://www.youtube.com/watch?v=DZfv0YgLJ2Q

2023. jan. 11. 01:08
Hasznos számodra ez a válasz?
 6/13 Thunderfairy ***** válasza:
22%

Kedves 4-es. Facebookm gondoltad volna oldaláról. A rubik kocka 17 mozdulatból kirakható akárhogy is keverik össze. Vannak belőle érdekes vílágrekordok is.


Szerintem egy ilyen programhóz egy sakkmester és egy programozó legalább kell. Vagy csinálnak egy mesterséges inteligenciát sakkhóz.

2023. jan. 11. 09:31
Hasznos számodra ez a válasz?
 7/13 anonim ***** válasza:
0%

Erre a kérdésre nincs egyszerű válasz.

Kb. mintha azt kérdeznéd, hogy "min alapszik a jármű".


Hát alapulhat lóval vontatáson is, meg benzinmotoron is, meg villanymotoron is.


Ez a helyzet a sakkbotokkal is, máshogyan működik egy Stockfish mint mondjuk egy AlphaZero.


Nem vagyok ugyan nagy szakértője a témának, de ha jól tudom, a Stockfish pl. egy óriási nagy játszma-adatbázisból dolgozik, amibe feltöltöttek iszonyat sok emberi sakkjátszmát, és abból számolgat valahogy statisztikai alapon.


Ezzel szemben viszont pl. az AlphaZero egy deep learning neurális háló, ami rengeteg játszmát "lejátszott" magában, és abból "tanult meg" sakkozni.

2023. jan. 11. 10:31
Hasznos számodra ez a válasz?
 8/13 anonim ***** válasza:
37%

Az első pár válasszal ne törődj, mert nettő f*szságokat írnak. Azaz évtizedekkel ezelőtt valahogy hasonlóan álltak a problémához, gráfokat használtak és valami ezen működő algoritmust ami bizonyos mélységig (lépésig) "látta" előre a kimeneteleket és tudott egy jó döntést hozni.

De a mai sakk botok egyáltalán nem így működnek, amit #7 jól le is írt. Annyit fűznék csak hozzá, hogy nem egy adatbázist használ a Stockfish, hanem a régi gráfos módszeren alapszik és egy jobb minimax algoritmust használ, balami apha-beta algorithm és általában 30 körüli mélységik néz le jó lépés érdekében. Ez miatt pedig az AlphaZero 8-10 óra tanulás után sokkal jobb nála, mert már nem a régi algoritmuson alapszik.

Ahogy írta #7, neurális hálót használ. Most ennek a működéséről lehet nézni pár perces youtube videót, hogy valami elképzelésed legyen róla, de leírni hosszú lenne. Viszont azt kiemelném érdekességnek, hogy a tanítás alatt nem azt kell érteni, hogy sakk játszmákat mutattak neki, hanem saját maga ellen játszott. Szerintem ez érdekes infó, mert laikusként nem erre gondolna az ember.


Egyébként #5-el is nagyon egyetértek, egyik legjobb youtube csatorna ami ilyen témákat is érint:)

2023. jan. 11. 10:48
Hasznos számodra ez a válasz?
 9/13 anonim ***** válasza:
35%

"A rubik kocka 17 mozdulatból kirakható akárhogy is keverik össze."


21 az a 17, de mindegy. Permutáció, variáció-számítás. Ezeknek nézz utána.

2023. jan. 11. 11:33
Hasznos számodra ez a válasz?
 10/13 anonim ***** válasza:
90%

Megint látszik, hogy olyanok válaszolgatnak, akik nem értenek a témához.


De nézzük is:


"Nem vagyok ugyan nagy szakértője a témának, de ha jól tudom, a Stockfish pl. egy óriási nagy játszma-adatbázisból dolgozik, amibe feltöltöttek iszonyat sok emberi sakkjátszmát, és abból számolgat valahogy statisztikai alapon."


Sajnos nem így működik. Egy egyszerű kérdés: ha emberi sakkjátszmák alapján "tanul", hogyan lehetne jobb az embereknél? A válasz sehogy. Vannak példák ilyen sakk botokra, de ezek eléggé gyengék, például egy nagymester le tudja győzni őket.


"Azaz évtizedekkel ezelőtt valahogy hasonlóan álltak a problémához, gráfokat használtak és valami ezen működő algoritmust ami bizonyos mélységig (lépésig) "látta" előre a kimeneteleket és tudott egy jó döntést hozni."


Mai napig hasonlóan állnak a problémához. Az általad emlegetett neurális hálókat csak a kiértékelés fázisában használják. Ettől függetlenül továbbra is előre kell keresnie "n" lépésig, amelyhez egy gráfalgoritmust használnak. Ezt az "n" lépést nevezik mélységnek, amelyet meg kell adni, mielőtt bármilyen sakkprogramot elindítasz.


A kiértékelés fázisában pedig nem kötelező neurális hálókat használni. Az AlphaZero előtt általános sakk elvek alapján számolták ki. Sakk bábuk értéke, király helyzete, középjáték vagy végjáték stb. Az új neurális hálók tudtak előrelépést mutatni, körülbelül 100-200 pontszámot. Sakk botok között legyőzik egymást, de ez lényegtelen. Ember ellen az általános kiértékelő algoritmus is főlényes győzelmet arat minden esetben. Még a nagymesterek ellen is. Szóval nem, nem kell neurális hálókat használnod azért, ha nagymestereket akarsz legyőzni.


"Stockfish, hanem a régi gráfos módszeren alapszik és egy jobb minimax algoritmust használ, balami apha-beta algorithm és általában 30 körüli mélységik néz le jó lépés érdekében. Ez miatt pedig az AlphaZero 8-10 óra tanulás után sokkal jobb nála, mert már nem a régi algoritmuson alapszik."


Nem jobb nála. Inkább a te válaszod van évekkel lemaradva. Az AlphaZero csak egy kísérleti projekt volt, ami manapság elég gyengének számít. Az újabb Stockfish verziók legyőzik az AlphaZero-t.

2023. jan. 11. 15:43
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!