Alphabeta karsiminen on hakualgoritmi, joka pyrkii vähentämään minimimax-algoritmin avulla arvioimien solmujen määrää hakupuussa . Suunniteltu vastakkaisiin peleihin ja käytetty konepeleihin ( tietokoneshakissa , tietokonepelissä ja muissa). Algoritmi perustuu ajatukseen, että hakupuun haaran arviointi voidaan lopettaa ennenaikaisesti (laskematta kaikkia arviointifunktion arvoja), jos havaitaan, että tämän haaran arviointifunktion arvo on joka tapauksessa huonompi kuin edelliselle haaralle laskettu. Alfa-beta-leikkaus on optimointi , koska se ei vaikuta algoritmin oikeellisuuteen.
Allen Newell ja Herbert Simon käyttivät sitä, mitä John McCarthy kutsui "likiarvoksi" [1] vuonna 1958, ja kirjoittivat, että alfa-beta-leikkaus " näyttää olevan keksitty toistuvasti " [2] . Arthur Samuel , Richards, Hart, Levin, Edwards ehdottivat itsenäisesti tämän algoritmin varhaisia versioita [3] . McCarthy esitti samanlaisia ajatuksia myös Dartmouthin seminaarissa vuonna 1956, ja sitten vuonna 1961 ehdotti ryhmälle MIT :n opiskelijoita , mukaan lukien Alan Kotok [4] , tutkimusta varten . Alexander Brudno löysi algoritmin itsenäisesti ja julkaisi tulokset vuonna 1963 [5] . Vuonna 1975 Donald Knuth ja Ronald Moore paransivat algoritmia lisäämällä "beta"-leikkauksen [6] [7] .
Alfa-beta-leikkauksen etuna on itse asiassa se, että osa hakupuun alitason haaroista voidaan sulkea pois sen jälkeen, kun ainakin yksi tasohaaroista on tarkasteltu kokonaisuudessaan. Koska leikkaaminen tapahtuu kaikilla sisäkkäisillä tasoilla (paitsi viimeisellä), vaikutus voi olla varsin merkittävä. Menetelmän tehokkuuteen vaikuttaa merkittävästi vaihtoehtojen alustava lajittelu (ilman luettelointia tai luetteloimalla pienempään syvyyteen) - lajittelussa huomioidaan alussa "hyviä" vaihtoehtoja, sitä enemmän "huonoja" oksia voidaan leikata. pois ilman kattavaa analyysiä.
Kaavion hakualgoritmit | ||
---|---|---|
Tietämättömät menetelmät | ||
Tietoon perustuvat menetelmät | ||
Pikanäppäimet | ||
Vähintään ulottuva puu | ||
Muut |