![]() |
poker - man vs machine - Druckversion +- raise.ch (http://raise.ch/forum) +-- Forum: Poker Allgemein (/forumdisplay.php?fid=3) +--- Forum: Poker Allgemein (/forumdisplay.php?fid=39) +--- Thema: poker - man vs machine (/showthread.php?tid=223) |
- basco - 11-30-2006 01:36 PM was natürlich quatsch ist. die karten sind extrem wichtig, aber es gehört schon noch ein bisschen mehr dazu als nur das. - Paxinor - 11-30-2006 01:51 PM Märchy schrieb:Hat zwar nicht wirklich was damit zu tun, doch hier ein Zitat aus dem neusten Spiegel-Artikel, um zu zeigen, wie intensiv sich die Jungs da mit der Materie beschäftigen: wobei man zur verteidiung des spiegels sagen muss, das es genügend spieler gibt die genau das glauben, aber bei denen entscheiden wirklich nur die richtigen karten - Grandmaster Flush - 11-30-2006 03:12 PM Paxinor schrieb:nun ich behaupte es ist wesentlich einfacher ein schachcomputer zu programmieren als ein pokercomputer... ok, ich sehe es ein, dass es wesentlich einfacher ist, einen schachcomputer zu programmieren als einen "optimalen" pokerbot. wie du ja schon gesagt hast, ist schach ein spiel mit kompletten informationen, ein computer mit unendlich rechenkapazität, wie wir das in der theoretischen informatik betrachten, kann somit alle züge in einem riesengrossen baum analysieren und dann auch pareto-optimal spielen. du hast auch recht, dass es im poker immer eine optimalere strategie gibt auf eine angewendete. nun spielt also das "multi level thinking" nun eine entscheidende rolle: wenn der bot ein level mehr als du denken kann, dann kann er gegen dich profit machen (siehe sklansky). angenommen du spielst immer spieltheoretisch optimal und der bot macht das ebenfalls. damit du aber nicht weisst, wie viele levels der bot in die tiefe geht, nehmen wir eine echte zufallszahl deren maximum unendlich sein kann (keine zahl von einem pseudo-random generator), die das level des multi thinking festlegt. nun hast du absolut keine ahnung, welche strategie der bot spielen wird und somit kannst du diese auch nicht ausnutzen. in the long run denke ich, dass der bot eben dank der KI und den daten, die er über dich gesammelt hat, einen positiven expected value haben kann. @pokerface: kannst du online einen spieler anhand des herzschlags usw. lesen? eher würde der bot mit deinem computer kommunizieren, auf welchem du gerade spielst und die karten requesten als dass du jemanden "lesen" könntest ![]() - Märchy - 11-30-2006 03:16 PM Um es - wie Bendaer so schön sagt - zu Nerd-Scheiss verkommen zu lassen: Der Bot kann ja unmöglich wissen, auf welchen Level DU denkst. Es nützt ihm ja nichts, wenn er auf Level 13 denkt, du auf Level 2. - Grandmaster Flush - 11-30-2006 03:19 PM Märchy schrieb:Um es - wie Bendaer so schön sagt - zu Nerd-Scheiss verkommen zu lassen: Der Bot kann ja unmöglich wissen, auf welchen Level DU denkst. Es nützt ihm ja nichts, wenn er auf Level 13 denkt, du auf Level 2. ich wollte nur damit sagen, dass es somit nicht mehr möglich wäre, die strategie des bots herauszufinden um ihn dann outzuplayen (wie es paxinor sagte). - Paxinor - 11-30-2006 03:28 PM ich sage nicht das es einen bot gibt der keinen postiven expectet value haben kann. mithilfe von datenbankanalysen etc. ist es möglich ein level zu scannen und ein pokerbot zu programmieren der dieses level schlägt, vorausgesetzt das level verändert sich nicht. sobald aber der gegenspieler merkt das ein bot spielt, wird er versuchen ihn auszutricksen, was in einem unendlichen kreislauf von anpassungen resultiert, wo der bot mit sicherheit verlieren wird, weil seine schwächen nicht kompensierbar sind gegenüber dem menschen, aufgrund fehlender kreativität. ein bot spielt im grunde nur so gut poker wie dessen programmierer (wohl sogar schlechter), die rechenleistung hilft einem bot nicht, einen vorteil gegenüber des menschen zu erlangen.... multilevel thinking ist nicht schwer, wenn die situation einfach ist, und ist logisch gesehen kein schwerer ablauf... es ist aber schwer die komplexe situation zu erkennen und aufgrund diesen tatsachen die logischen schlüsse zu ziehen... poker beruht aber eher auf der kunst der datenaufnahme und kreiren von datenzusammenhängen, der logische schluss für das richtige vorgehen ist dann ein einfaches... im gegensatz zum schach was genau umgekehrt ist... was ich sagen will ist: ein programmierer eines schachcomputer schlägt seinen eigenen computer nicht, aber ein programmierer eines pokerbots wird seinen eigenen pokerbot easy outplayen... das heisst es ist zwar möglich, dass man irgendwann gegen bots spielen wird, was aber nicht heisst, das sie einen unfairen vorteil haben... ihre voraussetzungen sind schlechter als unsere... im gegensatz zum schach... es wird also nicht schlimm sein wenns mal pokerbots gibt... eben gerade weil es keine pareto effizienz und kein nash gleichgewicht gibt... - Bendaer - 12-01-2006 09:53 AM ich bin der meinung paxinors (wieder keine mehrzeilenantwort märchy ![]() - tron - 12-02-2006 07:13 PM das hauptproblem ist, wie paxinor schon sagte, dass beim poker nicht alle informationen vorhanden sind, bei schach hingegen schon. das "irgendwann" in der OP-Frage stört mich. Irgendwann, bin ich überzeugt, wird ein computer-programm sicher besser poker als ein grossteil der pokerspieler... (weils z.b. ev. mal ECHTE KI gibt oder halt in hundert jahren die welt sicher ganz anders aussieht). in nächster zeit ist aber sicher nicht damit zu rechnen. persönlich glaube ich jedoch, dass es auch schon jetzt möglich wäre, mit genügend aufwand ein programm zu schreiben, welches wohl einen grossteil der spieler schlagen würde. schlussendlich liesse sich doch ein grossteil des pokerwissens in ein programm einbringen. (betting patterns, verhaltensweisen, "spieler sollte jetzt tilten, da er bad beat hatte" usw.); ist "nur" eine frage des aufwands. (ich sag nicht, dass es simpel wäre, ich glaube nur, dass es möglich ist). top-spieler werden hingegen kaum von nem programm geschlagen werden können. - Pokerface - 12-02-2006 07:39 PM also wenn eine maschine die schlussfolgerung "auf einen bad beat kommt ein tilt" macht, dann ist es eher eine miese maschine. ich glaube man kann nur programmieren, solange alles berechenbar ist. Leider ändert ein spieler im laufe des spiels ab und zu gerne seine taktik. hoff ich jedenfalls. und dann ist die maschine eh aufgeschmissen. meiner meinung nach ist es nicht möglich, das verhalten eines menschen einer maschine beizubringen. ist genau wie: ich bringe einem erwachsenen die ganze theorie in sache Wirtschaft& Management perfekt bei (gleichzustellen mit der programmierung). Wenn du ihn dann ohne Führungserfahrung ins berufsleben schickst wird er nur so gut sein wie die Theorie. Leider also nicht allzu brilliant. sprich die KI müsste während dem spiel dazurechnen. Das mit dem Emotionen lesen ist auch so eine Sache die ich eher als schwierig erachte. - Nimifluk - 12-03-2006 01:28 PM Pokerface schrieb:ist genau wie: ich bringe einem erwachsenen die ganze theorie in sache Wirtschaft& Management perfekt bei (gleichzustellen mit der programmierung). Wenn du ihn dann ohne Führungserfahrung ins berufsleben schickst wird er nur so gut sein wie die Theorie. Leider also nicht allzu brilliant. sprich die KI müsste während dem spiel dazurechnen. Das mit dem Emotionen lesen ist auch so eine Sache die ich eher als schwierig erachte. Teils, teils ... Dass programmieren eine rein theoretische Sache sein soll, bin ich gar nicht einverstanden und muss ich Dir ganz klar widersprechen (ist aus meiner Sicht identisch zu Deinem Führungsbeispiel, welches so richtig ist). Wer nur die Theorie kennt ist in allen Lebenslagen nicht wirklich erfolgreich. Die Theorie ist immer nur eine Ergänzung zu den gemachten Erfahrungen (dies ist ein wichtiger Punkt, welchen junge Leute oft unterschätzen :arrow: Theorie ist OK, Praxis ist besser). Zurück zum Thema Bot: Einen solchen müsste man nicht stur programmieren, sondern lernfähig. In der Robotik gibt es einige Beispiele die zeigen, dass dies erfolgreicher ist, als nur mit unserer beschränkten menschlichen Logik Vorgaben zu machen. Zum Beispiel gibt es achtbeinige Roboter welche selbst lernen wie sie sich am Besten mit diesen acht Beinen fortbewegen können (machen wir Menschen ja genau so, unsere Motorik ist nicht vorgegeben). Eine nicht simple durchschaubare Spielweise ist nicht komplex, im einfachsten Fall entscheidet man mit einer (technischen) Zufallszahl bei jedem Zug zwischen den drei Varianten (Fold/Bet/Check) und im Falle von Bet mit einer weiteren Zufallszahl wieviel gesetzt wird. Kombiniert mit der Stärke der Hand als weitere Gewichtung für obigen Entscheid (bei guten Karten eher Check/Bet aber auch mal ein Fold). Bis zu diesem Punkt sind noch keinerlei Poker-spezifischen Elemente integriert (abgesehen von den verfügbaren Spiel-Optionen). Um die Erfolgschancen zu erhöhen müsste man noch ein paar Regeln und Analysefunktionalitäten einbauen, z.B: - Analyse der eigenen Blätter und deren Erfolg - Analyse der anderen Blätter und deren Erfolg - Bietverhalten der Mitspieler und deren Hände/Erfolg - die üblichen Methoden und Regeln für odds, outs, Grösse der Stacks, .... Um dies zu programmieren muss man kein guter Pokerspieler sein, sondern lediglich in der Lage sein, die obigen Punkte zu implemetieren und selbst der Programmierer wird nicht vorhersehen können, was der Robi nun im Schilde führt bzw. was für Kareten er hat. Damit der Robi mit einem guten Erfahrungsschatz daherkommt, könnten man ihn mit seinen virtuellen Kumples alle Varianten (2 bis x Spieler) ein paar Mio. Hände spielen lassen (die Jungs würden kaum mehr als eine Woche dazu benötigen, da die Entscheidungslogik nicht rechenintensiv ist). Wer die Klappe aufmacht, muss im Normalfall auch den Beweis erbringen, daher meine Frage in die Runde, was denn von einem solchen Robi erwartet wird und gegen wen er wie oft gewinnen müsste, damit zumindest auf einer 'einfachen' Stufe gesagt werden kann, und es ist doch möglich, dass ein Compi pokern kann? |