Namd Jürgen,

Zitat von
LocutusOfPenguin
Was mich bei diesem UCI nervt, ist...wenn ich die Zeit schon schicken muss, bei Start des User-Nachdenkens..führt das dazu das die Nachdenkzeit des Users für die Engine mitgerechnet wird. Daher zieht die Engine viel zu früh.
Möglicherweise sieht der Algorithmus der Engines so aus, daß sie die Zeit bestimmen, die sie in Anbetracht der Gesamtsituation für den Zug gerne aufwenden möchten und dies dann auch tun. Dann würde bei einem Ponderhit die zuvor auf Nutzerzeit geponderte Zeit natürlich von der Zeit abgezogen, die die Engine auf eigene Uhr rechnet, und die Bedenkzeit wäre immer noch die ausgangsmäßig gewollte.
Der Sinn eines Ponderhits wäre damit nicht eine tiefere Rechnung bei selbem Zeitverbrauch, sondern bei gleicher Rechentiefe Zeit zu sparen. Die gesparte Zeit würde dann auf die anderen Züge verteilt, wo kein Treffer ist.
Kannst Du mal eine der Opensource-Engines verlinken, die sich so verhält und in C geschrieben ist?
Zitieren:
Laut UCI Spezi müssen die Engines dazu ein "ponder" flag besitzen.
Ja, weil sie sonst mit der Kombi aus go ponder / ponderhit nicht klarkämen. Wobei ich das bei meiner Engine so eingebaut habe, daß sie kein Ponderflag angibt, aber wenn die GUI das ignoriert, funktioniert es trotzdem. Die tatsächliche Berechnung wird jedoch erst bei ponderhit bzw. wenn kein Treffer ist beim nächsten normalen go gestartet.