Privacy Policy Cookie Policy Terms and Conditions Diskussion:Minimax-Algorithmus - Wikipedia

Diskussion:Minimax-Algorithmus

aus Wikipedia, der freien Enzyklopädie

Hm. Dieser Artikel ist etwas ungenau, und beschreibt überhaupt nicht, wie Minimax überhaupt funktioniert, obwohl dies denkbar einfach ist. Außerdem wird mittels Minimax weder für Reversi (Othello), noch für Schach oder gar Go eine optimale Lösung gefunden.

"Hier kann heute noch nicht schon von der Anfangsstellung aus eine optimale Strategie berechnet werden."

"Noch nicht" ist etwas schmeichelhaft - es wird nie möglich sein! Rechner werden nicht sooo schnell werden, um den kompletten Spielbaum von Go aufzuspannen, nicht in diesem Universum ...

--zeno 19:19, 7. Jun 2003 (CEST)

Inhaltsverzeichnis

[Bearbeiten] Weitere Suchstrategien

Gibt es bereits Artikel ueber andere Suchtechniken? Ich denke da an Alpha-Beta, Principal Variation Search, Forward Pruning, Quiescent Search und solche Dinge.

stw am 23. nagut 24.11.2004

[Bearbeiten] Fehler im Pseudocode?

[Bearbeiten] Fehler 1

Es geht mir um folgende Stelle des Pseudocodes:

   if zugWert > ermittelt then begin
     ermittelt := zugWert
     doNext := nummer des Zuges  /* für das Hauptprogramm */
   end

Soweit ich das richtig verstanden habe, werden nur die Stellungen der maximalsten Tiefe bewertet und dann jeweils die maximalste bzw. minimalste Bewertung dem Mutterknoten zugeschrieben. Die Variable doNext ist hierbei eine globale Variable, das bedeutet sie verändert sich auch, wenn innerhalb der Rekursion maxWert aufgerufen wird. Beispiel: Angenommen es gibt 3 Züge, der erste wird mit 100, der zweite mit 150 und der dritte mit 50 bewertet. Beim zweiten Durchlauf wird die Variable doNext auf den Zug gesetzt, der mit 150 bewertet wurde. Nun besteht aber das Problem, dass zwischen dem 2. und dem 3. Zug noch weitere Rekursionen folgen, die doNext verändern. Da am Ende jedoch die Zahl 50 nicht größer ist als 150 wird doNext nicht mehr neu gesetzt und doNext besitzt einen Wert, der irgendwann mal in der Rekursion aufgetreten ist. Berichtigt mich bitte, wenn ICH falsch liege, ansonsten sollte das geändert werden, bei meinem Programm kam jedenfalls nach dem genannten Pseudecode nichts gutes bei raus!

Lösungvorschlag, wenn maxTiefe eine globale Variable wäre, könnte man bei der Funktion maxWert dann folgendes schreiben:

   if zugWert > ermittelt then begin
     ermittelt := zugWert
     if restTiefe = maxTiefe then doNext := nummer des Zuges  /* für das Hauptprogramm */
   end

[Bearbeiten] Fehler 2

kann es sein, dass die Rekursion im Pseudocode nicht korrekt ist? die maxWert-Funktion ruft minwert der Kinder auf und umgekehrt?!

--Lollipop 18:43, 17. Jun 2006 (CEST)

Das ist ja gerade der Hauptbestandteil des minimax-Algorithmus. Die Funktionen minWert und maxWert rufen sich gegenseitig auf, bis eine bestimmte Tiefe erreicht ist und dann wird dieser letzte Knoten bewertet. Die Bewertungen der anderen Knoten erfolgt dann einfach durch die Auswahl der größten bzw. kleinsten Bewertung des Mutterknotens.

Krasno 21:32, 18. Jun 2006 (CEST)

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -