Iteratív mélyítés

Más néven: Iteratív mélyítéses keresés

Stratégia, amely növekvő határokkal ismétli a keresést, így mindig rendelkezésre áll egy befejezett iteráció legjobb eredménye.

Magyarázat

Az iteratív mélyítés először kis határral keres egy , majd fokozatosan nagyobb határokkal megismétli az elemzést. A sakkban a mélységet rendszerint plyban mérik, ahol egy ply az egyik fél egyetlen lépése.

Első pillantásra pazarlónak tűnik, mert a kezdéshez közeli állásokat többször is meglátogatja. A korábbi iterációk azonban értékes információt adnak: egy ideiglenesen legjobbnak tartott lépést, a főváltozatot, vagyis az adott pillanatban legjobbnak ítélt vonalat, eltárolt eredményeket és adatokat a . Ha a következő iteráció előbb vizsgálja meg a biztató választásokat, több ág állhat le korán, ami ellensúlyozza az ismételt munka nagy részét.

Legvilágosabb gyakorlati előnye az időkezelés. Ha az óra egy mélyebb iteráció közben a keresés leállítására kényszeríti a motort, az előző iteráció teljes eredménye még mindig rendelkezésre áll. Nem kell mindent egy esetleg befejezetlenül maradó keresésre feltennie.

Az iteratív mélyítés nem azt jelenti, hogy csak egy kedvelt vonalat hosszabbít meg. Minden iteráció nagyobb határral újra megvizsgálja a kezdőállást, bár szelektív technikák eltérő helyi mélységeket rendelhetnek a fa részeihez. A is kifelé tolja, de nem szünteti meg.

Használat és szövegkörnyezet

A felületek gyakran az aktuális iteráció elért mélységét mutatják, de önmagában egy nagyobb szám nem bizonyítja, hogy két különböző motor összehasonlítható munkát végzett.

Gyakori félreértések

Értelmetlen ismétlés

A korábbi munka lépéssorrendet, főváltozatot és eltárolt keresési információt ad, ezért a következő iteráció valójában nem a semmiből indul.

Mélyítés és szelektív kiterjesztés

Az iteratív mélyítés a teljes határt növeli az egyes menetek között; a kiterjesztés bizonyos vonalakhoz helyi keresést ad.

Források

  1. 1.Depth-first iterative-deepening: An optimal admissible tree search, Artificial Intelligence / Elsevier
  2. 2.Iterative Deepening, Chess Programming Wiki
  3. 3.search.cpp, Stockfish

Kapcsolódó kifejezések

© 2026 MindZug