Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Vergleich 1-, 2-, 4-CPU
1 2 Previous Next  
Parent - By Benno Hartwig Date 2009-09-04 16:27
[quote="Peter Martan"]...ursprünglich ging die Diskussion ja darum, dass du meintest, die engines würden auch heute noch und das schon im Blitzen die erste 15 HZ ziemlich komplett durchrechnen. Dass das nicht so ist, bin ich nach wie vor seiner Meinung.[/quote]
Da magst du recht haben.
Mit alpha-beta und Zugumstellungen könnte ich auch nicht einen Verzweigungsfaktor im Mittelspiel um die 2 begründen, der ja tatsächlich immer wieder beobachtet wird. Da muss doch noch mehr beschnitten werden. Darin wirst du und Urs schon recht haben.
Nullfenster kommt ohne Informationsverlust hinzu, der bringt erfahrungsgemäß letztlich aber nur ca. 10% (einfach nachgeplappert)
Nullmove gehört dazu, aber ob das so viel bringt? Wieviel bringt das ggf?.
Da wird dann wohl, vielleicht ab einer Tiefe, noch mehr geprunt, wie ja auch Urs schrieb.
(Mal gucken, wo man sowas ggf. in Toga und Stockfish finden kann, ob die sowas auch machen)

Benno
Parent - - By Benno Hartwig Date 2009-09-04 09:00
[quote="Urs Maier"]frage: ist dieser ermittelte wert absolut zuverläßig/beweisbar korrekt?antwort: in der absoluten mehrzahl der fälle nicht...[/quote]
Zur Zuverlässigkeit einer Anlyse behauptete ich nichts.
Aber dass mit Gewissheit ein um alpha-beta erweitertes Minimax-Verfahren dieselben Züge und Bewertungen liefert wie ein reines Minimax, dass weiß ich und ich beschrieb es dir in Einklang mit wohl allen alpha-beta-Beschreibungen.
Um dies bei dieser Jahrzehnte alten Technik zu beurteilen, bin ich tatsächlich auch aus eigener Erfahrung und wie wohl die meisten hier Entwickler genug.

In deinem Posting von 2009-09-03 21:16 hast du sehr deutlich gemacht, dass das, wovon du sprichst, und was du alpha-beta nennst, recht wenig mit der in der Literatur beschriebenen alpha-beta-Methode zu tun hat.
Dein

  "die alpha-beta methode schneidet äste eines suchbaumes auf grund von wahrscheinlichkeiten ab. sie benutzt die stellungsbewertung,
  um "minderwertige" äste weniger tief zu verfolgen oder gleich abzuschneiden."


ist einfach falsch. Das macht alpha-beta eben nicht.
Deine Überlegungen mögen ja richtig sein, es ist aber eben nicht alpha-beta, sondern es sind darauf anschließend aufgepfropfte pruning-Techniken, die halt auch Gebrauch von diesen alpha-beta-Werten machen.
Ich denke, dies ist der Grund für unsere Diskussion, das Missverständnis.

Du solltest dir mein einfaches Beispiel vom 2009-09-03 21:33 noch mal ansehen.
und du solltest vielleicht einfach verifizieren, dass dies im Einklang steht zu wohl allen alpha-beta-Beschreibungen, die du findest.

Ansonsten sollten wir es belassen. Wir müssen ja nicht einer Meinung sein.

Benno

PS:
Bei alpha-beta bin ich mir sehr sicher.
Vielleicht nicht wirklich 100% sicher war ich mir bei der gängigen Nutzung der Bezeichnung 'brute force'.
In Veröffentlichungen wird mir aber bisweilen ausdrücklich zugestimmt, beispielsweise:
http://www.andreadrian.de/schach im Absatz 'Historie', wo steht

  "Die Computerschach Historie läßt sich nach den Anfängen bis 1958 in zwei Abschnitte gliedern. Einmal die Zeit 
  der "Brute Force" Programme und spezieller Schach-Hardware die nur mit backward pruning (Alpha-Beta Beschneidung)
  arbeiten. Dann in die Zeit der "selektiven" Programme die zusätzlich mit forward pruning (Null-Zug Suche) arbeiten."


Die von dir angeführten Mechanismen wären dieser zweiten Kathegorie der selektiven Programme zuzuordnen. Reines Alpha-Beta bleibt aber, weil mit Gewissheit die unverfälschten minimax-Ergebnisse geliefert werden, wohl doch ein Brute-Force-Algorithmus.
Parent - - By Urs Maier Date 2009-09-04 12:12
Zitat:
Diese Cuts erfolgen eben mit Gewissheit und ändern das Ergebnis nicht.
Ein totales Durchrechnen würde denselben Lösungszug und denselben Wert liefern.


Zitat:
Auch diese Cuts erfolgen mit logischer Gewissheit


zuerst schreibst du dies und nun:

Zitat:
Zur Zuverlässigkeit einer Anlyse behauptete ich nichts.


wie paßt das zusammen?

Zitat:
  "die alpha-beta methode schneidet äste eines suchbaumes auf grund von wahrscheinlichkeiten ab. sie benutzt die stellungsbewertung,
  um "minderwertige" äste weniger tief zu verfolgen oder gleich abzuschneiden."


ist einfach falsch. Das macht alpha-beta eben nicht.


doch bei einem schachprogramm macht alpha-beta genau das!

das ist einfache logik und da kann man nicht "anderer meinung" sein
Parent - - By Horst Wandersleben Date 2009-09-04 12:58
Kai Skibbe hat dich schon drauf hingewiesen, dass du den alpha-beta-algorithmus offensichtlich nicht verstanden hast.
Aber es ist dir natürlich unbenommen, deine inkompetenz hier weiter zur schau zu stellen.
Parent - - By Urs Maier Date 2009-09-04 13:12
wenn dem so ist, wäre es wirklich großartig, wenn mir jemand erklären würde wo ich von einer falschen annahme ausgehe oder wo mein logischer fehler liegt.
du scheinst alpha-beta offensichtlich verstanden zu haben. wo ist mein fehler?
Parent - - By Benno Hartwig Date 2009-09-04 13:28
[quote="Urs Maier"]wenn dem so ist, wäre es wirklich großartig, wenn mir jemand erklären würde wo ich von einer falschen annahme ausgehe oder wo mein logischer fehler liegt.du scheinst alpha-beta offensichtlich verstanden zu haben. wo ist mein fehler?[/quote]
das alpha-beta macht genau eines:
"Wenn ein Zug widerlegt ist, dann muss ich nicht nach noch stärkeren Widerlegungen suchen"
oder formaler:
- Ich habe Züge z1...z1 zur Auswahl und will große Werte erreichen
- Den Wert von z1 habe ich z.B. mit 5 bestimmt
- auf z2 hat der Gegner einen Antwortzug, der den Wert 3 liefert. Dann muss ich nicht prüfen, ob der Gegner noch stärkere Antwortzüge hat.
- Ich habe bereits als sicher erkannt, dass z2 für mich kein guter Zug ist.
- Und darum beginne ich die Prüfung von z3...
Dieses Prinzip wird für beide Seiten und auf allen Ebenen und auch ebenenübergreifend durchgezogen.
Und eben das ist der alpha-beta-Algorithmus.

Die von dir erwähnten Methoden sind ja durchaus in den Engines implementiert, sie sind aber nicht Bestandteil von Alpha-beta, sie sind lediglich außerdem eingebaut, von mir aus unter Berücksichtigung der alpha-beta-Basis.

Benno

PS:
Dass du das nicht wusstest, ist natürlich nicht schlimm, auch wenn es verwunderte.
Dass dein Ton bisweilen recht frech wurde, hat aber wohl vor allem dir selbst geschadet.
Parent - - By Urs Maier Date 2009-09-05 11:40
ich habe in einer antwort an Kai Skibbe mal einen baum aufgemalt.
da siehst du was ich meine. kannst du mal überprüfen, ob ich da einen fehler drin habe?
Parent - By Benno Hartwig Date 2009-09-05 23:08
[quote="Urs Maier"]ich habe in einer antwort an Kai Skibbe mal einen baum aufgemalt.
da siehst du was ich meine. kannst du mal überprüfen, ob ich da einen fehler drin habe?[/quote]Thanx. Ich habe dort diesem Baum kommentiert.
Benno
Parent - - By Benno Hartwig Date 2009-09-04 13:16
[quote="Urs Maier"]
Zitat:
Zur Zuverlässigkeit einer Anlyse behauptete ich nichts.
wie paßt das zusammen?

Ganz einfach:
Die Bewertung der Blätter des Baumes erfolgt mit Unsicherheiten. (Klar: Hat weder mit Minimax noch mit alpha-beta zu tun) Darum sagte ich zur 'Zuverlässigkeit der Analyse' nichts.
Minimax als auch bei alpha-beta sind aber lediglich Algorithmen, mit denen dann ausgehend von diesen ggf. fehlerhaften Blattbewertungen innere Knoten bewertet werden.
Und eben mit Gewissheit führen Minimax und alpha-beta zu einem gleichen Wurzel-Wert und der Bestimmung des Zuges, der dafür ausgeführt werden muss.
Ob die Analyse dann stimmt, hängt natürlich von der Qualität der Blattbewertungen ab.
So passt da zusammen.
Minimax nutzt alle Blätter und bewertet eben alle inneren Knoten, alpha-beta verzichtet auf die Bewertung der Knoten, die als sicher irrelevant erkannt werden, nutzt darum auch nur einen Teil der Blätter.
Und das bezeichnet man auch in der Schachprogrammierung als alpha-beta-Algorithmus, und das bereits seit 60 Jahren.
Nicht irgendein auf Abschätzungen beruhendes Zug-Ignorieren oder Suchtiefen-Reduzieren, was du erwähntest. Das gehört zum forward-pruning, was auf das alpha-beta dann ggf aufgepfropft ist. Das ist nicht alpha-beta, und außer dir kennen ich niemanden, der sowas je behauptete.
Wenn du es nicht glaubst, ließ bitte im Netz oder der Fachliteratur nach, es wird allenthalben so beschrieben. Du könntest auch einfach bei Wikipedia anfangen.

Je mehr du schreibst, um so deutlicher wird, dass du dich nie damit beschäftigt hast, was der alpha-beta-Algorithmus wirklich ist.
Du weißt vielleicht schon ganz gut, wie die Engines es insgesamt machen, kennst Aspekte der verwendeten Algorithmen, auch wie sie zusammenarbeiten. Das will ich dir gar nicht absprechen. Was davon aber zum Alpha-beta-Algorithmus gehört, ist dir unklar, und dabei hast du auch eine gewisse Dickköpfigkeit und unpassende Frechheit präsentiert.
Du nimmst hingegen diverse Techniken und Tricks, die die Entwickler auch im Sinne von forward-pruning auf die Alpha-beta-Programme aufgepfropft haben, und dann bezeichnest du die daraus resultierenden Phänomene als durch alpha-beta hervorgerufen. Urs, das geht so nicht.

Sicher mag mal irgendein Journalist mal fix geschrieben haben "Engine XYZ ist ein alpha-beta-Programm". Dann aber zu denken, dass jeder Aspekt der Realisierung der Suche zum alpha-beta-Algorithmus gehört, wäre schon sehr naiv.

Benno
Parent - - By Urs Maier Date 2009-09-04 13:38
Zitat:
Und eben mit Gewissheit führen Minimax und alpha-beta zu einem gleichen Wurzel-Wert


dagegen hab ich nie was gesagt. der ausgangspunkt unserer diskussion war aber, ob die qualität einer brute-force suche mit einer alpha-beta suche identisch ist (bei gleicher tiefe). und hier meine ich nachgewiesen zu haben, daß dies bei der grundlage von unsicheren stellungsbewertungen nicht der fall sein kann.

dem hast du mehrfach widersprochen.

leider gehst du auch nicht präzise auf meine argumentation ein.

nehmen wir z.B. diese beschreibung aus einem schachProgrammierungsWiki:

(ich denke ich darf den kurzen abschnitt schon mal kopieren):

Zitat:
Alpha-Beta (Alpha-Beta Pruning) is a significant enhancement to the minimax search algorithm that eliminates the need to search large portions of the game tree. Remarkably, it does this without any potential of overlooking a better move. If one already has found a quite good move and search for alternatives, one refutation is enough to avoid it. No need to look for even stronger refutations.


hier steht "without ANY potential of overlooking.." im nächsten satz haben wir einen "quite good move" - diesen ziemlich guten zug hat uns die stellungsbewertung angedreht, die, wie wir wissen, fehlerhaft sein kann.

ich kann obige beschreibung nur unterschreiben, wenn wir wissen, daß es wirklich ein "quite good move" ist. ist er es nicht, kann eben schon etwas übersehen werden.

Parent - - By Benno Hartwig Date 2009-09-04 14:02
[quote="Urs Maier"]der ausgangspunkt unserer diskussion war aber, ob die qualität einer brute-force suche mit einer alpha-beta suche identisch ist (bei gleicher tiefe).
Stimmt. Um Missverständnissen vorzubeugen: ich sprach von minimax, was aus meiner Sicht eines der brute-force-Verfahren ist.

[quote="Urs Maier"]und hier meine ich nachgewiesen zu haben, daß dies bei der grundlage von unsicheren stellungsbewertungen nicht der fall sein kann.
dem hast du mehrfach widersprochen.

Du hast dies mehrmals behauptet. Und ich habe dir erklärt worain dein Falschverstehen besteht, dass du nicht weißt, was konkret der alpha-beta-Algorithmus ist.

[quote="Urs Maier"]
Zitat:

Alpha-Beta (Alpha-Beta Pruning) is a significant enhancement to the minimax search algorithm that eliminates the need to search large portions of the game tree. Remarkably, it does this without any potential of overlooking a better move. If one already has found a quite good move and search for alternatives, one refutation is enough to avoid it. No need to look for even stronger refutations.

hier steht "without ANY potential of overlooking.." im nächsten satz haben wir einen "quite good move" - diesen ziemlich guten zug hat uns die stellungsbewertung angedreht, die, wie wir wissen, fehlerhaft sein kann.

Klar. Weder minimax noch alpha-beta versuchen dir zu garantieren, dass der gefundene Zug gut oder fehlerfrei ist.
Diese Algorithmen bieten nur eine Methode, aus den Blattbewertungen (Stellungsbewertungen) eine Bewertung der anderen (oder eines Teils der) Baumknoten und der Züge abzuleiten.
Und die ist eben im Ergebnis zwingend gleich. So schreibt es auch der von dir zitierte Wiki-Text: Es kann kein besserer Zug übersehen werden. Wenn ein guter Zug gefunden wurde und dann nach Alternativen gesucht wird, dann genügt jeweils eine Widerlegung. Du wirst dich erinnern: genau dies postete ich nun bereits mehrmals. Thanx für das Zitat, das mich bestätigte.

[quote="Urs Maier"]ich kann obige beschreibung nur unterschreiben, wenn wir wissen, daß es wirklich ein "quite good move" ist. ist er es nicht, kann eben schon etwas übersehen werden.

Nein, weder minimax noch alpha-beta behaupten 'guter Zug', sie führen lediglich eine Bewertung innerer Baumknoten auf Basis der Blattwerte (Stellungsbewertungen) durch.
Wenn einzelne Stellungen falsch bewertet sind, dann werden minimax und alpha-beta in gleicher Weise ein 'falsches' Ergebnis liefern.
Du schreibst wieder 'brute-force', und ich vermute, du meinst damit minimax. Korrekt?

Benno
Parent - - By Urs Maier Date 2009-09-04 14:17
richtig brute-force entspricht für mich mini-max ohne alpha-beta abschneidungen.

insofern muß ich mich hier korrigieren:

Zitat:
Zitat:
Und eben mit Gewissheit führen Minimax und alpha-beta zu einem gleichen Wurzel-Wert

dagegen hab ich nie was gesagt.


da hab ich kurz gepennt.

wie die algorithmen funktionieren ist doch klar und einfach.

ABER die qualität/der wahrheitsgehalt der beiden techniken ist eben bei unsicherer datenbasis nicht die gleiche. bei gesicherter datenbasis schon.
eine brute-force suche hat eben die chance durch breitere bewertung knotenbewertungen näher an der wurzel zu korrigieren. bei gesicherten daten ist dies ja nicht nötig/möglich.

warum willst du das nicht verstehen?
Parent - By Benno Hartwig Date 2009-09-04 14:58
[quote="Urs Maier"]eine brute-force suche hat eben die chance durch breitere bewertung knotenbewertungen näher an der wurzel zu korrigieren. bei gesicherten daten ist dies ja nicht nötig/möglich.
warum willst du das nicht verstehen?[/quote]
Wann ganz konkret kommt bei 'ungesicherten Daten' bei minimax etwas anderes heraus als bei alpha-beta?
Versuche dies doch bitte mal durch einen ganz konkret aufgezeigten Baum hier in einem Posting darzulegen. (vielleicht reicht ja schon Tiefe 3 (oder 4) und ein Verzweigungsgrad von 2 (oder 3))  Einen Baum mit 'ungesicherten Daten' (vielleicht mit Konkretisierung, was 'ungesicherte Daten' sind), bei dem nach minimax etwas anderes herauskommt als bei alpha-beta.

Dann werden wir möglicherweise erkennen,
- ob ich etwas nicht verstand, was ich doch hätte verstehen sollen,
- oder ob du etwas falsch verstanden hast,
- oder ob wir uns immer noch komplett missverstehen

Da ich zu wissen meine, dass sowas nicht existieren kann, wäre es am einfachsten, du würdest ein ganz konkretes Beispiel hier zeigen, welches deine These stützt und meine damit widerlegt.

Ich befürchte halt, dass du eine Vorstellung vom Alpha-beta-Algorithmus hast, die der meiner Vorstellung und der einschlägigen Litaratur widerspricht.
Man könnte so konkret sehen, welche Cuts du gemäß alpha-beta für gerechtfertigt hältst.
Und dann konkret beurteilen, ob dies wirklich alpha-beta-Cuts sind.

Benno
Parent - By Horst Wandersleben Date 2009-09-04 17:21
wie die algorithmen funktionieren ist doch klar und einfach.

Das würde ich an deiner stelle jetzt auch behaupten. Dokumentiert hast du hier in diesem thread aber nur dein halbwissen.

ABER die qualität/der wahrheitsgehalt der beiden techniken ist eben bei unsicherer datenbasis nicht die gleiche. bei gesicherter datenbasis schon.
eine brute-force suche hat eben die chance durch breitere bewertung knotenbewertungen näher an der wurzel zu korrigieren. bei gesicherten daten ist dies ja nicht nötig/möglich.


Mein tipp: Du solltest eine ordentliche schreibpause einlegen und dich erst auf basis eines erweiterten wissenstand weiter zu diesem thema äußern.
Sonst wird die blamage immer größer.
Der alpha-beta-algorithmus ist eine suchmethode und hat überhaupt nichts mit der qualität der bewertungsfunktion zu tun. Alpha-beta und Minimax ergeben selbst bei einer vollkommen falsch eingestellten bewertung - du nennst es unsichere datenbasis - für jeden untersuchten knoten EXAKT den gleichen wert.
Den begriff "alpha-beta" kann man nicht einfach umdefinieren, man kann ihn lediglich unsauber benutzen.
Parent - By Michael Scheidl Date 2009-09-04 14:19
Wenn wir eine konkrete Bewertungsfunktion haben, die zwar wie Du festhältst manchmal falsch liegen kann, wieso soll dann irgendwas dadurch besser werden daß - mit ein- und derselben Bewertungsfunktion - alles brute force durchgerechnet wird? Soweit ich glaube verstanden zu haben: Alpha/Beta stellt doch nur fest, was Minimax unnötigerweise (und zwar innerhalb der gegebenen Erkenntnismöglichkeiten, also mit derselben Bewertungsfunktion wie wir bereits festhielten) abarbeitet, erspart sich das, und kommt sämtlichen Quellen zufolge zum selben Ergebnis (= Zug).

Also z.B., wenn ein Ast abgeschnitten würde weil einer der bis jetzt geprüften Gegenzüge ihn bereits widerlegt, wird ein Abarbeiten sämtlicher restlichen Gegenzüge ihn kaum wiederaufleben lassen können. Entweder widerlegen sie den Zug "stärker", was aber wurscht ist denn mehr als verwerfen kann man den Ast nicht, oder sie widerlegen ihn nicht (weil sie schlecht sind), dann ändert das auch nichts, weil eben der eine widerlegende Zug vorhanden ist und über das Schicksal des Astes entscheidet.

(Die ganze Betrachtung bezieht sich natürlich immer nur auf eine bestimmte Rechentiefe bzw. "Iteration", wie das glaube ich genannt wird.)

Soweit mein bescheidenes Verständnis der Sache.

Ich glaube hier nach wie vor an irgendein Mißverständnis, oder ich verstehe selber etwas prinzipielles nicht...
Parent - - By Kai Skibbe (PocketGrandmaster) Date 2009-09-03 21:58
Zitat:
du kannst deine sturheit auch damit besiegen, einfach mal kurz zu googeln und dir endlich die definition der entsprechenden begriffe aneignen.


Mit diesem Satz hast du dich wirklich schön ins Abseits gestellt. Selber Alpha/Beta nicht begriffen und dann sowas schreiben. 
Parent - - By Olaf Jenkner Date 2009-09-03 23:13
Leider sind die Dummen in diesem Forum von solcher Borniertheit besessen,
daß es zwecklos ist, denen was erklären zu wollen. Ich will hier niemanden
persönlich angreifen, aber die Dummen merken es sowieso nicht, da sie ja
ohnehin glauben, die einzigen Bescheidwisser zu sein.
Ich habe es schon bereut, einen Beitrag zur Aufklärung geschrieben zu haben.

  Je
Parent - By Urs Maier Date 2009-09-04 12:01
du bist aber selbstkritisch.
Parent - - By Michael Scheidl Date 2009-09-04 06:51
Sehe ich das richtig, daß man bei einem sinnvollen Vergleich Brute Force vs. Alpha/Beta von einer identischen Bewertungsfunktion in beiden Fällen ausgehen sollte? Ich fürchte ich habe zwar Alpha/Beta noch nie so ganz "vollinhaltlich" verstanden, aber unter dieser Bedingung habe ich bisher geglaubt, beides muß zur selben Zugentscheidung führen.

Ok, jetzt hab ich kurz nachgelesen und auf Wikipedia steht ausdrücklich:

"Die einfache (nicht optimierte) Alpha-Beta-Suche liefert exakt dasselbe Ergebnis wie die Minimax-Suche."

(Es ist mir nicht ganz klar ob Brute Force hier jetzt als Synonym für Minimax verwendet wurde.)

Ich glaube hier in der Diskussion kam es zu Mißverständnissen, weil Urs' Überlegungen zusätzlich auch von unterschiedlichen Stellungsbewertungen (offenbar von einer quasi absoluten bei Brute Force, und von einer "üblichen" bei Alpha/Beta) ausgehen. So gesehen finde ich seine Einwände nachvollziehbar, aber vermutlich sollte man so keine Suchalgorithmen an sich vergleichen, weil ja dann Auswirkungen der Unterschiede beider Elemente vermischt werden...
Parent - By Urs Maier Date 2009-09-04 11:58
Zitat:
Ich glaube hier in der Diskussion kam es zu Mißverständnissen, weil Urs' Überlegungen zusätzlich auch von unterschiedlichen Stellungsbewertungen (offenbar von einer quasi absoluten bei Brute Force, und von einer "üblichen" bei Alpha/Beta) ausgehen.


nee, ich meine schon die gleiche bewertungsfunktion. es soll ja nur brute-force mit apha-beta verglichen werden.

stelle dir vor alpha-beta scheindet einen ast relativ weit unten im baum ab. an diesem knoten hätte brute-force den gleichen wert, würde aber die nächsten verzweigung auch berechnen müssen und dort durch tiefere suche entdecken, daß der nämliche knoten falsch bewertet wurde.

das ist natürlich nur so, weil die bewertungen der einzelnen knoten in der regel nicht sbsolut sein können, weil eine stellungsbewertung einfach einer wahrscheinlichkeit entspricht.

Vas liefert gleich noch eine formel für die umrechnung der bewertung rybkas in eine wahrscheinlichkeit: centipawns/3 + 50% = siegwahrscheinlichkeit für die seite am zug.
Parent - By Urs Maier Date 2009-09-03 21:26
du hast natürlich recht, wenn du dich auf ein spiel beziehst, in dem man jeder knoten mit absoluter sicherheit bewertet werden kann - z.B. wenn nur spielsteine gezählt werden müssen.

aber du sprichst ja selber von schach und das war auch der ausgangpunkt der diskussion und hier können knoten nicht absolut sicher bewertet werden.
Parent - - By Urs Maier Date 2009-09-04 12:28
stimmen wir überein, daß in der alpha-beta suche eines schachprogramms zum großteil nicht gesicherte werte verwendet werden?
Parent - - By Kai Skibbe (PocketGrandmaster) Date 2009-09-04 18:21
Ok, Horst und Benno haben es schon versucht, aber offensichtlich ist dir immer noch nicht klar was Alpha/Beta bedeutet.

Grundannahme beim Vergleichen von BruteForce, Minimax, AlphaBeta ist natürlich, dass die Bewertungsfunktion zu einer Stellung immer den gleichen Wert ausspuckt. Dieser kann richtig oder falsch sein. Es ist nur wichtig, dass immer derselbe Wert rauskommt, wenn die Bewertungsfunktion mit ein und derselben Stellung aufgerufen wird. Ob das gesicherte Werte sind oder nicht spielt keine Rolle. Es dürfen halt nur nicht zufällige Werte sein.

Unter dieser Annahme liefern BruteForce, Minimax, AlphaBeta alle denselben besten Zug mit gleicher Bewertung bei gleicher Tiefe. Es werden halt nur unterschiedlich viele Knoten dafür benötigt. Alpha/Beta benötigt am wenigsten.
Benno hat das im Grunde schon genau so erklärt, aber offensichtlich hast du es nur noch nicht verstanden. Ich hoffe es wurde jetzt klarer. Ansonsten kann ich nur empfehlen, sich im Netz mal richtig schlau zu machen.

Kai

PS: Jetzt ist mir auch klar warum du anonym hier schreibst.
Parent - By Roland Rösler Date 2009-09-04 19:16
[quote="Kai Skibbe (PocketGrandmaster)"]Unter dieser Annahme liefern BruteForce, Minimax, AlphaBeta alle denselben besten Zug mit gleicher Bewertung bei gleicher Tiefe. Es werden halt nur unterschiedlich viele Knoten dafür benötigt. Alpha/Beta benötigt am wenigsten.[/quote]
Das gilt zwar generell, man sollte aber auch den Grenzfall betrachten. Wird immer der beste Zug als letzter berechnet, spart man mit AlphaBeta gar nichts gegenüber BruteForce! Da gibts nichts abzuschneiden!
Am meisten spart man, wenn man immer den besten Zug als ersten berechnet. Die Unterschiede sind gewaltig und deshalb ist die Vorselektion auch so wichtig!
Parent - - By Urs Maier Date 2009-09-04 21:00
ist alpha-beta also immer als backward-pruning zu verstehen?

wenn dem so ist, hab ich meine suchbäume wohl immer falsch rum gehalten

nun ok. erweitern wir den wie auch immer gearteten aber bereits beschnittenen baum um eine tiefe und alpha-beta wird von neuem ausgeführt, richtig?
die alten werte werden durch neue erkenntnisse in der neuen tiefe überschrieben. die asymmetrische struktur des baumes wird an jedem endknoten um eine tiefe erweitert. nun könnte aber gerade einer der vormals abgeschnittenen knoten wieder interessant werden. durch die neuen werte der extratiefe können sich theoretisch ja alle bisherigen zahlen stark geändert haben. liege ich richtig, wenn an dem vorher abgeschnittenen knoten im vergleich zu einer gleichmäßig an jedem knoten vertieften brute-force suche eine tiefenebene fehlen würde?

vielleicht war ich wirklich nicht sehr präzise. also um das nochmal klar zu machen:
mir geht es um den vergleich des ergebnisses zweier suchalgorithmen. der eine verwendet brute-force minimax. der andere verwendet zusätzlich alpha-beta.
ich ging dabei aber von einer iterativen erweiterung des suchbaumes aus und habe das wohl nicht klar gemacht.
Parent - - By Horst Wandersleben Date 2009-09-05 00:29
ist alpha-beta also immer als backward-pruning zu verstehen?

wenn dem so ist, hab ich meine suchbäume wohl immer falsch rum gehalten

nun ok. erweitern wir den wie auch immer gearteten aber bereits beschnittenen baum um eine tiefe und alpha-beta wird von neuem ausgeführt, richtig?

die alten werte werden durch neue erkenntnisse in der neuen tiefe überschrieben. die asymmetrische struktur des baumes wird an jedem endknoten um eine tiefe erweitert. nun könnte aber gerade einer der vormals abgeschnittenen knoten wieder interessant werden. durch die neuen werte der extratiefe können sich theoretisch ja alle bisherigen zahlen stark geändert haben.

liege ich richtig, wenn an dem vorher abgeschnittenen knoten im vergleich zu einer gleichmäßig an jedem knoten vertieften brute-force suche eine tiefenebene fehlen würde?

vielleicht war ich wirklich nicht sehr präzise.

(Zitate von mir verkürzt      )

6 mal JA!

Es ist die entscheidende schwierigkeit im suchalgorithmus, beim vorwärts-abschneiden nur unwichtiges abzuschneiden. Aber das ist genau das risiko: Vorher ist man immer dümmer, hinterher immer schlauer!
Sind sie nicht irgendwie menschlich, diese schachprogramme!
Parent - - By Urs Maier Date 2009-09-05 01:52
na daß ich mal richtig liege ..
aber ist das nicht der springende punkt: mit jeder erweiterung des suchbaumes wird alpha-beta neu angewand und der suchbaum bekommt eine neue form durch beschneidungen. das ergebnis ist im effekt aber auch irgendwie ein forward-pruning.

zurück zum vergleich zu dem symmetrischen "vollständigen" baum der brute-force suche. bei der gleichen anzahl von iterationen schreiten beide ansätze unterschiedlich weit im suchbaum fort und in der einen iteration abgeschnittene äste können mit der nächsten iteration an gewicht gewinnen.

insofern gibt es also doch einen qualitativen unterschied zwischen reiner brute-force suche und alpha-beta.

oder bin ich jetzt wieder falsch?
Parent - - By Horst Wandersleben Date 2009-09-05 02:11
aber ist das nicht der springende punkt: mit jeder erweiterung des suchbaumes wird alpha-beta neu angewand und der suchbaum bekommt eine neue form durch beschneidungen. das ergebnis ist im effekt aber auch irgendwie ein forward-pruning.

Nein

zurück zum vergleich zu dem symmetrischen "vollständigen" baum der brute-force suche. bei der gleichen anzahl von iterationen schreiten beide ansätze unterschiedlich weit im suchbaum fort

Nein

und in der einen iteration abgeschnittene äste können mit der nächsten iteration an gewicht gewinnen.

Ja

insofern gibt es also doch einen qualitativen unterschied zwischen reiner brute-force suche und alpha-beta.

Nein

oder bin ich jetzt wieder falsch?

Ja
Parent - By Urs Maier Date 2009-09-05 02:26
Zitat:
aber ist das nicht der springende punkt: mit jeder erweiterung des suchbaumes wird alpha-beta neu angewand und der suchbaum bekommt eine neue form durch beschneidungen. das ergebnis ist im effekt aber auch irgendwie ein forward-pruning.

Nein


jede neue iteration baut auf der vorherigen und damit der gestalt des vorherigen baumes auf. anders geht es nicht. insofern beeinflußt jedes beschneiden des baumes die weitere suche = forward pruning.

übrigens sind deine antworten sehr vielsagend - so vielsagend, daß man sie sich auch sparen könnte, nicht wahr?

Zitat:
zurück zum vergleich zu dem symmetrischen "vollständigen" baum der brute-force suche. bei der gleichen anzahl von iterationen schreiten beide ansätze unterschiedlich weit im suchbaum fort

Nein


warum?

Zitat:
insofern gibt es also doch einen qualitativen unterschied zwischen reiner brute-force suche und alpha-beta.

Nein


warum?
Parent - - By Urs Maier Date 2009-09-05 03:30 Edited 2009-09-05 03:36
ein beispiel für alpha-beta (wie ich es verstehe ):

         4 
 
           MIN 

     4        5

         MAX

  2`3 4    1 5 x

den wert von x brauchen wir nicht zu untersuchen, da wir wissen, daß
der minimierende spieler einen zug vorher den anderen ast wählen wird.
also wird bei x abgeschnitten.

erweitern wir den baum um eine tiefe, die uns theoretisch beliebige werte liefert.

          4 

         MIN 

     4             5

             MAX

2`  3   4       1   5   x

       MIN

_____________________________

78  67  89   12   45   

und wenden alpha-beta an. außerdem wird x mit einem neuen wert belegt, aber nicht weiter vertieft, weil ich annehme,
daß jeder knoten gleichmäßig vertieft wird (und Horst mir dies mit einem knappen ja bestätigt hat).

wir erhalten:

       7
      
      MIN

     8           7

      MAX

7   6   8    1    4    7

      MIN

78  6x  89   12   45   yy  

ohne alpha-beta wäre yy untersucht worden und vielleicht die werte 5 und 5 gefunden worden. nach mini-max hätten wir dann als routebewertung 5.
ergo: die ergebnisse einer reinen mixi-max suche und einer mit alpha-beta können sich unterscheiden.

so stell ich mir das vor, aber ich habe sicher einen fehler drin, nicht wahr?
Parent - - By Benno Hartwig Date 2009-09-05 22:42
Thanx, an den Beispielen kann man es erklären.

Dein erstes Beispiel mit Suchtiefe 2 ist korrekt.
Und wir sehen ja auch beide, wie minimax und alphabeta eine gleiche Lösung bringen.


Das zweite Beispiel mit Suchtiefe 3 ist fehlerhaft, da du einen Cut machst, der gemäß alphabeta nicht gerechtfertigt ist.
Dass die Verwaltung des Cuts danach auch fehlerhaft geschieht, sei dabei gleich miterwähnt.

Die linke Hälfte des Baumes bewertest du korrekt
Auch den alphabeta-Cut, der zu '6x' führt, erkanntest du korrekt.
Der erste Zug (gemeint: der erste in der Zugliste für den ersten tatsächlichen Zug) des Anziehenden bringt also den Wert 8, und er möchte schauen, ob ein anderer Zug aus der Liste noch einen kleineren Wert bringt. Dann würde er ja den nehmen wollen.

Die ersten beiden Antwortzüge auf seinen zweiten Zug bringen wirklich mit 1 und 4 kleinere Werte. Hier kann also sicher kein Cut gemacht werden, weil der Anziehende doch unbedingt prüfen will, ob auch der letzte Zug des Nachziehenden einen kleinen Wert bringt.

Alphabeta würde also sicher nicht in dieser Situation einen Cut machen.
Alphabeta würde hier nur einen Cut machen, wenn der Nachziehende einen für ihn guten (größer als 8) Antwortzug gefunden hätte. Der Anziehende würde

Wie kommst du auf diesen Cut?
Weil bei kleiner Suchtiefe an dieser Stelle ein Cut war?
Alphabeta erlaubt dir nicht, diesen Cut zu übernehmen. Du musst jeden Suchdurchgang mit einer Tiefe für sich betrachten. Hier können solche Cuts aber über mehrere Ebenen hinweg gelten.
Wenn du als Entwickler dies aber trotzdem tust, also einen Cut aus kleinerer Suchtiefe einfach bei der tieferen Suche übernimmst, so hast du einen deutlich abgewandelten und eben mutmaßenden Algorithmus. Sowas könnte sinnvoll sein. Dies zu Prüfen wäre dann deine Aufgabe. Das minimax-Ergebnis liefert dieser nicht-alphabeta-Algorithmus dann natürlich nicht.

Vollkommen unklar ist mir übrigens geblieben, wie du auf die Idee gekommen bis, der Ausgangsstellung für die yy den Wert 7 zu geben.
Wenn du keine Folgestellungen bewertest, dann muss auch die dazugehörende Ausgangsstellung undbewertet bleiben, und da ist nur dann legitim, wenn du gemäß Alhabeta erkannt hast, dass dieser Wert eh irrelevant ist.
Und dass du diesen unbegründetenWert dann noch weiter nach ober reichst, verfälscht das Ergebnis natürlich noch mehr.

Du hast also:
1) einen unerlaubten Cut durchgeführt, der das Ergebnis verfälscht
2) diesen Cut dann auch noch fehlerhaft verwaltet


Benno

PS:
Ich habe mit Toga mit irgendwie Ähnlichem mal herumprobiert.
Die Suche macht hier prinzipiell:
für den 1. ZUg aus der Liste eine (alpha,beta)-Analyse.
für die weiteren Züge dann jeweils (alpha,alpha+1)-Analysen.
Toga erkennt so zunächst nur, ob diese Züge besser oder schlechter als der erste sind.
Und wenn er als besser erkannt wird, bequemt sich Toga für diesen Zug, eine (alpha,beta)-Analyse nachzuholen und den ZUg wirklich zu bewerten.
Und ich ließ diese (alpha,alpha+1)-Analyse mal mit kleinerer Tiefe laufen.
War aber nichts. 'Mein' Toga wurde dadurch schlapper
Parent - - By Benno Hartwig Date 2009-09-05 23:02
Eine Ergänzung noch:
Alphabeta arbeitet dein Beispiel folgendermaßen ab;

Code:
            5
min
    8             5       
max
7  6    8      1  4  5
min
78 6(x) 89     12 45 55

Tatsächlich also nur dieser eine jämmerliche Cut.
Die Züge waren halt ungünstig sortiert.
Gelingt die Sugsortierung gut (vielleicht sehr oft den besten Zug an erster Stelle), kann aber auch passieren:

Code:
            5         
min
    5           8      <- mit der Bedeutung: 8 oder noch größer
max
5  4    1      8  () 
min
55 4(5) 1(2)   89 (78 6x)

Da zeigt alphabeta schon ein wenig seine Potenz (Stellungen, die nicht bewertet werden, habe ich eingeklammert)
Das Ergebnis ist aber natürlich gleich.
Und es ist gleich dem minimax-Ergebnis.

Benno
Parent - - By Urs Maier Date 2009-09-06 00:13
der sinn und die enorme effizienz von alpha-beta oder zugsortierung ist ja unbestritten.
darum gehts ja nicht.
Parent - By Benno Hartwig Date 2009-09-06 07:20
Stimmt darum geht es nicht.
Nachdem du alphabeta fehlerhaft vorführtest, wollte ich es hier einmal korrekt vorführen.
Und ich hatte einfach Lust es mit guter Zugsortierung auch zu machen, auch um zu zeigen, dass dies Einfluss auf den Aufwand, nicht aber auf das Ergebnis hat.
War nicht des Streitpunkt, klar. Fand ich in dem Zusammenhang aber trotzdem hilfreich.

Benno
Parent - - By Urs Maier Date 2009-09-06 00:09
hallo Benno,

Zitat:
Wie kommst du auf diesen Cut?
Weil bei kleiner Suchtiefe an dieser Stelle ein Cut war?
Alphabeta erlaubt dir nicht, diesen Cut zu übernehmen. Du musst jeden Suchdurchgang mit einer Tiefe für sich betrachten. Hier können solche Cuts aber über mehrere Ebenen hinweg gelten.
Wenn du als Entwickler dies aber trotzdem tust, also einen Cut aus kleinerer Suchtiefe einfach bei der tieferen Suche übernimmst, so hast du einen deutlich abgewandelten und eben mutmaßenden Algorithmus. Sowas könnte sinnvoll sein. Dies zu Prüfen wäre dann deine Aufgabe. Das minimax-Ergebnis liefert dieser nicht-alphabeta-Algorithmus dann natürlich nicht.


dies ist der springende punkt.
wir haben mit abschluß einer suchtiefe einen alpha-beta beschnittenen baum. du bist also der meinung, daß mit einer neuen um 1 erhöhten suchtiefe alle abgeschnittenen äste wieder KOMPLETT aufgefüllt werden? ich bin davon ausgegangen, daß dies nicht gemacht wird (wie in meinem bsp. dargestellt), weil alpha-beta in der praxis dann weit weniger effektiv ist. zumal du eingangs der diskussion von einem branchingfaktor um 3 ausgingst. wie willst du mit reiner alpha-beta suche jemals in die nähe von einem BF von 3 kommen? das auffüllen des baumes würde zumindest bei alpha-beta mit zugsortierung schon mehr rechenzeit erfordern als die bewertung aller blätter der neuen tiefe.

Zitat:
Vollkommen unklar ist mir übrigens geblieben, wie du auf die Idee gekommen bis, der Ausgangsstellung für die yy den Wert 7 zu geben.


ich habe den ersten suchbaum an jedem knoten um eine tiefe erweitert. in meinem bsp. gibt es für die 3. ebene halt 3 mögliche züge (analog zum ersten diagramm).
wenn jeder knoten bei der zuggenerierung prüft, ob alle möglichen antwortzüge erhalten sind, muß demnach der zug, der in der 3. ebene 7 ergibt, generiert werden. eine generierung der antwortzüge auf "7" hätte dann aber nicht der gleichmäßigen erweiterung des baumes entsprochen. jeder endknoten wird gleichermaßen behandelt. also wird 7 in meinem bsp. genauso wie alle anderen werte verarbeitet.
Parent - By Benno Hartwig Date 2009-09-06 07:29
[quote="Urs Maier"]ich habe den ersten suchbaum an jedem knoten um eine tiefe erweitert.[/quote]
Thanx für die Erleuterung.
Damit hast du einen neuen Algorithmus erfunden, dessen Qualität du ja erproben kannst.
Er ist aber eben in sehr erheblichem Maße nicht der alphabeta-Algorithmus, er enthält eben einige und z.T auch sehr spekulierende Ergänzungen.

Benno
Parent - - By Urs Maier Date 2009-09-06 00:25
Zitat:
Dein erstes Beispiel mit Suchtiefe 2 ist korrekt.
Und wir sehen ja auch beide, wie minimax und alphabeta eine gleiche Lösung bringen.


wenn man es nur an einer einzigen tiefe, für die alle endknoten generiert sind festmacht, habe ich nie bestritten, daß beides die gleiche lösung bringt. das ist ja klar.
mir ging es um eine suche, die mit oder ohne alpha-beta arbeitet. dabei ging ich davon aus, daß nicht mit jeder neuen tiefe der baum komplett aufgefüllt wird. auf diese idee bin ich gar nicht gekommen.
das ist wohl unser mißverständnis.
Parent - - By Benno Hartwig Date 2009-09-06 07:25
[quote="Urs Maier"]das ist wohl unser mißverständnis.[/quote]Stimmt, hier liegt der Hase im Pfeffer.
Allerding: Die Literatur beschreibt alhabeta eindeutig so, dass solche aus kleineren Suchen 'frech' übernommene Cuts nicht einfach durchgeführt werden.
Deshalb darf der Entwickler natürlich trotzdem sowas versuchen.
Er betreibt dann aber einen Algorithmus, der zwar aus alhabeta abgeleitet wurde, der sich aber von diesem sehr erheblich unterscheidet und recht spekulative Elemente enthält.

Benno
Parent - By Horst Wandersleben Date 2009-09-06 12:24
Hallo Benno,
ich bewundere deine geduld, mit der du dich Urs als nachhilfelehrer zur verfügung gestellt hast.
Meine geduld war, wie wohl sichtbar wurde, bereits vorgestern abend zuende.
Ich wünsche dir einen schönen sonntag.
Horst
Parent - - By Horst Wandersleben Date 2009-09-06 12:10
das ist wohl unser mißverständnis.

Du bist wirklich ein chamäleon ersten grades:
Das war nicht unser missverständnis, sondern deines.
Aber bloß keine fehler eingestehen!
Parent - By Kai Skibbe (PocketGrandmaster) Date 2009-09-06 12:19
Hallo Horst,

genau das war auch mein Gedanke. Ich weiss schon warum ich nichts mehr geschrieben habe.
Irgendwann hätte ich sonst Alpha/Beta auch nicht mehr verstanden

Viele Grüße,
Kai
Parent - - By Urs Maier Date 2009-09-06 12:59
ok, dann war das mein fehlendes wissen. ich hab aber in den artikeln über alpha-beta nirgends gesehen, wie es innerhalb einer suche angewand wird, die iterativ erweitert wird.
Parent - By Horst Wandersleben Date 2009-09-06 13:03
ich hab aber in den artikeln über alpha-beta nirgends gesehen, ....

Das kann jedem mal passieren.
Erstaunlich ist dein beharrungsvermögen, wenn sogar schachprogrammierer (Olaf Jenkner und Kai Skibbe) dich auf deinen irrtum hinweisen.
Parent - - By Urs Maier Date 2009-09-06 00:52
um zu meinem verständnis hier nochmal einzuhaken:

Zitat:
Vor Urzeiten las ich mal, dass wir bei (fast) optimaler Zugsortierung dann ca. mit einer mittleren Verzweigung von wurzel(echte_Verzweigung) rechnen können, also ca. wurzel(30)=5.5 (Sorry, ich habe keine Quelle, und hoffentlich täuscht da nicht meine Erinnerung)
Bei Tiefe 2 hast du z.B. nicht 30*30=900 Blätter sondern deren 30+29=59.


ist das nicht ein wiederspruch? 5,5*5,5 ist ungleich 59
Parent - By Benno Hartwig Date 2009-09-06 07:12
[quote="Urs Maier"]
Zitat:
Vor Urzeiten las ich mal, dass wir bei (fast) optimaler Zugsortierung dann ca. mit einer mittleren Verzweigung von wurzel(echte_Verzweigung) rechnen können, also ca. wurzel(30)=5.5 (Sorry, ich habe keine Quelle, und hoffentlich täuscht da nicht meine Erinnerung)
Bei Tiefe 2 hast du z.B. nicht 30*30=900 Blätter sondern deren 30+29=59.
ist das nicht ein wiederspruch? 5,5*5,5 ist ungleich 59
Nein. In der Informatik werden halt in dieser Weise gern die Komplexitäten (Kosten, Aufwand) von Algorithmen beschrieben. Dies ist dann eine Folge von Aufwänden (je einer für eine Problemgröße), und wenn man dann jeder Problemgröße den dazugehörigen effektivern Verzweigungsfaktor errechnet, dann bilden diese eine Folge, die gegen 5.5 konvergiert.  ("Der effektiver Verzweigungsfaktor nähert sich für große Analysetiefen dem Wert 5.5.")
http://de.wikipedia.org/wiki/Komplexit%C3%A4tstheorie
und konkreter
http://de.wikipedia.org/wiki/Landau-Notation

Ich habe es für einen Verzweigungsfaktor 30 und optimal greifendem alphabeta mal durchgespielt
Code:

                 effektive
Tiefe  Blattzahl Verzweigung
1            30       30
2            59        7,7
3           929        9,8   (ja, die Folge steigt auch immer mal wieder etwas)
4          2640        7,2
10     31997789        6,6
20      8.5e+15        6,3
30      4.5e+23        6,1
50      1.2e+39        6,0
99      7.7e+76        5,98
---
 
Dahinter steckt bei Verzweigungsgrad V halt der rekursive Zusammenhang:
Aufwand(0)=1 ("Bei Suchtiefe 0 bewerte ich nur die Ausgangsstellung.")
Aufwand(1)=v ("Bei Suchtiefe 1 muss ich 30 Stellungen bewerten.")
Aufwand(n)=Aufwand(n-1)+(v-1)*Aufwand(n-2))

OK, die Näherung läuft nicht wirklich schnell.
praktisch relevante Werte liegen wohl eher bei 'gut 6'

Benno
Parent - - By Ingo Bauer Date 2009-09-02 08:38
Hallo

[quote="Roland Rösler"]
...
Ich verstehe diesen Hinweis nicht! 40/4 auf single core ist 40/7 (1,75) auf dual core und 40/12 (3) auf quad und 40/20 (5) auf octo und ... Wenn Du also zwei Programme auf quad core mit 40/4 laufen lässt, kannst Du sie ebenso auf 1 core mit 40/12 laufen lassen.
...
[/quote]

Das stimmt so nicht!

Ich kenne inzwischen mindestens zwei Programme die ihre Bedenkzeiteinteilung nach der absoluten Zeit richten und ich vermute fast das das noch viel mehr so machen! Je kürzer die Restbedenkzeit desto eher zieht die Engine. Leider ist dieses "eher", im Gegensatz zur Geschwindigkeit der CPU, NICHT linear. (Ich frage mich woher diese Annahme kommt?)

Nätürlich KÖNNTE eine engine bei einer doppelt so schnellen CPU in halber Zeit gleich tief kommen aber (neben der Nichtllinearität der Zeiteinteilung) wie hier an Zahlen im Benchmarkthread vor ein paar Tage gezeigt wurde, sind die Geschwindigkeit einer CPU je nach Benchmark und Engine verschieden. Wer will den jetzt entscheiden welcher Benchmark gilt und ob der nicht Engine X benachteiligt oder Engine Y bevorteilt. Wenn jetzt auch noch von Single auf Dual auf Quad gesprungen wird (Wie in deinem Bsp oben), ist es noch schlimmer, da eben nicht alle Engines mit 1.75 skalieren, sondern manche vielleicht mit 1,5 und andere mit 1.85 ... jetzt noch eine kürzere Bedenkzeit dazu und du bist völlig aus jedem seriösen Rahmen raus.

Gruß
Ingo
Parent - By Benno Hartwig Date 2009-09-02 16:04
[quote="Ingo Bauer"]Leider ist dieses "eher", im Gegensatz zur Geschwindigkeit der CPU, NICHT linear. (Ich frage mich woher diese Annahme kommt?)[/quote]
Ich finde nicht erstaunlich, dass dies nicht linear ist, dass vielleicht versucht wird abzuschätzen, wie lange die Zeit noch reichen muss, ob es noch Fisher-mäßige Zeitzugaben gibt.
"5 Minuten auf der Uhr" ganz am Anfang der Partie treiben vielleicht mehr zu Eile an, als wenn diese Zeit in einer Endspielphase auftaucht.

Benno
Parent - By Gerhard Sonnabend Date 2009-09-18 19:45
Nur zur Info:
den aktuellen 1-, 2-, 4-CPU Vergleich gibts ab
sofort immer aktuell auf meiner Seite, allerdings
"nur" die CEGT-Blitz-Vergleiche.

http://www.pcschach.de Rubrik COMPUTERSCHACH

Viele Grüsse,
G.S.
Up Topic Hauptforen / CSS-Forum / Vergleich 1-, 2-, 4-CPU
1 2 Previous Next  

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill