Diskussion:Alpha-Beta-Suche

message: * Dafür: Sieht gut aus. -- Dishayloo [ +] 15:42, 19. Sep 2004 (CEST)
thread_title:  [[Alpha-Beta-Suche]], 19. September 

message: Bevor im in den Beispielimplementierungen noch 10mal zwischen "return wert" und "return alpha" bzw. "return beta" hin- und hergewechselt wird, wollte ich nur anmerken: Es macht für den Algorithmus und dessen Ergebnis absolut keinen Unterschied, ob es nun so oder so heisst.--Sgop 19:12, 14. Dez 2005 (CET)
thread_title:  Zu den Bearbeitungen des Quellcodes 

message: Die Alpha-Beta-Suche, auch Alpha-Beta-Cut genannt, ist eine optimierte Variante des Minimax-Suchverfahrens, also eines Algorithmus zur Bestimmung eines optimalen Zuges bei Spielen mit zwei gegnerischen Parteien. Während der Suche werden zwei Werte Alpha und Beta aktualisiert, die angeben, welches Ergebnis die Spieler bei optimaler Spielweise erzielen können. Mit Hilfe dieser Werte kann entschieden werden, welche Teile des Suchbaumes nicht untersucht werden müssen, weil sie das Ergebnis der Problemlösung nicht beeinflussen können.
* Antifaschist 666 21:01, 27. Feb 2006 (CET)
thread_title: Lesenswert-Diskussion

message: Der Artikel strotzt vor Anglizismen. Ich kann mir kaum vorstellen, dass man das nicht übersetzen kann. Hat jemand da Ahnung. Stern 23:21, 6. Mär 2006 (CET)
replies: text: Die meinte ich. Ich habe die Erfahrung gemacht, dass man für beinahe alle derartige Begriffe eine deutsche Entsprechung findet, die man bei geringer Verbreitung zumindest in Klammern nennen kann. Stern 00:45, 7. Mär 2006 (CET)
thread_title: Anglizismen

message: »Ähnlich verhält es sich beim minimierenden Knoten mit dem 3-Alpha-Cutoff. Obwohl dieser Teilbaum erst teilweise ausgewertet wurde, ist klar, dass der maximierende Wurzelknoten diese Variante niemals wählen würde, weil der minimierende Knoten mindestens das Ergebnis 3 erzwingen könnte, während aus dem mittleren Teilbaum das Ergebnis 12 sichergestellt ist.«
Ich würde behaupten, dass ein minimierender Knoten maximal ein bestimmtes Ergebnis erzielen könnte, daher würde ich mindestens mit höchstens ersetzen und den letzten Nebensatz streichen, dessen Sinn will sich mir nicht wirklich erschließen. --KEBA 10:14, 24. Mai 2009 (CEST)
thread_title:  minimieren != mindestens 

message: Im Artikel steht: "Die einfache (nicht optimierte) Alpha-Beta-Suche liefert exakt dasselbe Ergebnis wie die Minimax-Suche."
Dieser Satz ist irreführend. Von den hier vorgeschlagenen Optimierungen liefern nur Null-Move und die Ruhesuche abweichende Ergebnisse. Diese beiden Erweiterungen sollten aber gar nicht als Optimierungen aufgeführt werden.
- Die Ruhesuche ist eine für viele Spiele notwendige bzw. sinnvolle Erweiterung mit radikal reduzierten Zuglisten sowohl von der Alpha-beta-Suche als auch der mimimax-Suche.
- Die Nullmove-Suche ermöglicht einen spekulativen Cut, der z.B. bei Schach oft hilfreich ist, der aber letztlich wie alle anderen spekulativen Cuts ("Ach jetzt habe ich schon soviel Material verloren, dies verfolge ich nun nicht tiefer!") zu behandeln ist, die hilfreich oder auch nicht sein können und mit der alpha-beta-Methode (den durch sie definierten Cuts) aber sicher nichts zu tun haben.
Ich würde auf beide Erweiterungen hinweisen, vielleicht zusammen mit Hinweisen auf Tablebases und Hashtabellen und ggf. weiteres. Ich würde sie aber sicher nicht als 'Optimierungen von alpha-beta' bezeichnen.
Dann könnte der oben kritisierte Satz auch geändert werden auf:
"Die Alpha-Beta-Suche liefert, auch mit allen Optimierungen, exakt dasselbe Ergebnis wie die Minimax-Suche."
Benno, 7.9.2009 (nicht signierter Beitrag von 89.27.201.94 (Diskussion | Beiträge) 22:56, 7. Sep. 2009 (CEST)
thread_title:  Optimierungen von alpha-beta 

message: Hallo, ich finde den Artikel eigentlich sehr gut, aber ich habe einen kleinen Verbesserungsvorschlag: Man könnte noch zu diesem Pseudocode eine Hauptfunktion hinzufügen, in der dann beschrieben ist, wie man mit der Alpha-Beta-Suche dann tatsächlich den besten Zug findet, der jetzige Pseudocode beschreibt ja erst die Bewertung für die Züge. Bis jetzt muss man sich noch ziemlich etwas selbst überlegen, z.B. was man jetzt für Startwerte von Alpha und Beta nimmt und da kann man natürlich schnell versehentlich etwas verwechseln, wenn man sich nicht auskennt (und ich denke vor allem solche Leute, die sich nicht im Voraus schon gut mit Alpha-Beta-Suche auskennen, lesen diesen Artikel), also denke ich, dass es um der Vollständigkeit willen schon Sinn macht, das hinzuzufügen. Meinetwegen kann ich das auch versuchen, ich hab halt noch nie etwas geschrieben und bin auch nicht so der Pseudocode-Spezialist, drum wollte ich das mal zuerst hier vorschlagen, bevor ich wild auf eigene Faust drauflosschreibe. -- Lykos42 23:00, 14. Feb. 2010 (CET)
thread_title:  Verbesserungsvorschlag 

message: Ich kann mich dem Vorredner Lykos42 nur anschließen. Ohne die Hauptfunktion ist das schwer zu verstehen. Im im Pseudo-Code von "Minimax-Algorithmus" (http://de.wikipedia.org/wiki/Minimax-Algorithmus#Pseudocode) steht ja eine Hauptfunktion.
Insbesondere gibt Max ja an die Hauptfunktion auch nur
      return alpha;
zurück. Das ist aber ein Wert wie -33 und keine Zugnummer. Daher müsste man in die globale Liste der möglichen Züge jeweils den Wert einschreiben und die Hauptfunktion die Liste nochmal durchgehen, bis er alpha findet. Oder, eleganter, wie im Pseudo-Code von "Minimax-Algorithmus" (http://de.wikipedia.org/wiki/Minimax-Algorithmus#Pseudocode) die globale Var doNext noch in Max setzen. Also 
   doNext := ZugNummer (WertVonWhileZuegeUebrigVariable)
Würde ein Aufruf in der Hauptfunktion funktionieren mit:
   Dummy := Max (3,-9999,9999)
   ZieheDenZug doNext
? 
Also, lieber Lykos42, ich wäre dankbar für die Ergänzung der Hauptfunktion. Ich gehöre zu solchen Leuten, die sich nicht im Voraus schon gut mit Alpha-Beta-Suche auskennen. ;-)
(Ich beziehe mich hiermit auf den Abschnitt: Implementierung.) (nicht signierter Beitrag von 79.223.64.19 (Diskussion) 12:27, 9. Okt. 2011 (CEST)
thread_title:  Implementierung schwer verständlich 

message: In der Implementierung gibt es zwei subtile Fehler mit großer Auswirkung:
In der Max-Funktion:
if (wert >= beta)             
sollte sein:
if (wert > beta)
In der Min-Funktion:
if (wert <= alpha)
sollte sein:
if (wert < alpha)
Ansonsten wirkt sich eine höhere Suchtiefe nicht auf bessere Suchergebnisse aus.
Möge es ein Admin editieren. Ich rühre keinen Artikel mehr an, wird sowieso alles rückgängig gemacht. (nicht signierter Beitrag von 82.113.106.36 (Diskussion) 23:15, 5. Apr. 2012 (CEST)
thread_title:  Fehler in der Implementierung 

message: Hallo,
ich persönlich habe relativ lange benötigt, um die Alpha-Beta-Suche zu verstehen. Daher habe ich ein Mini-Tutorial (pdf) geschrieben, was ich hier hochgeladen habe: http://www.sendspace.com/file/scdahp . Die Ausführung vom Tutorial ist sicherlich grottig.
Vielleicht hilft es aber trotzdem jemandem direkt oder inspiriert Leute, um das ganze noch besser zu erklären?!
-- Christian (nicht signierter Beitrag von Gebbissimo (Diskussion | Beiträge) 20:55, 12. Jun. 2012 (CEST)
thread_title:  Ergänzung?