Beiträge von MetalPirate im Thema „[Milan Spiele/Fantasywelt] Star Realms ~ 5 €“

    Wenn du unter "brute force" das Ausprobieren und Bewerten sämtlicher möglicher Zugfortsetzungen der nächsten X Züge verstehst, dann setzen moderne AIs da kaum noch darauf, bei Schach genauso wenig wie bei Go.


    Wenn du mit "brute force" dagegen das Training neuronaler Netze mit teilweise immenser Rechenpower verstehen würdest, dann wär's du bei dem, was Google & Co machen, schön deutlich näher dran. Aber das betrifft dann nur nur das Training der Netze. Wenn das Netz einmal trainiert ist, kommt es in der Anwendung mit deutlich weniger Rechenpower aus. In den trainierten Koeffizienten steckt indirekt dann schon sowas wie Positionsverständnis drin. Das ist gar nicht mal so weit weg von dem, was der menschliche Spieler über viel Spielerfahrung gewinnt.


    es gibt aber auch genug Spiele auf dem PC, die tatsächlich "betrügen", sei es geringere Baukosten, schnellere Herstellung oder optimierte Bewegungsroutinen die auch Bewegung durch Gelände erlauben die dem Spieler verwehrt sind

    Das bestreitet niemand hier. Durch den technischen Fortschritt wird es aber immer einfacher, auch wirkliche KI zu nutzen -- wenn man es denn will, das ist die Voraussetzung. Erfahrungsgemäß verwenden die Computerspiel-Hersteller ihr Budget lieber anders. Aber aus der Erfahrung, dass bei Computerspiel-AIs gerne geschlampt wird, solltest du nun wirklich nicht schließen, dass da nicht mehr möglich wäre.


    Geh man davon aus, dass Google, Facebook, Amazon & Co nicht ohne Grund viel Geld in die KI-Forschung stecken. Spiele sind dabei oft gute Simulationen bzw. Beispielprobleme für andere Anwendungen, mit denen dann Geld verdient werden kann. Google hat sich nicht aus Spaß am Spielen DeepMind gekauft mit dem Ziel, den Go-Weltmeister mit einer AI zu schlagen...

    Der Computer betrügt, wenn er halbwegs gut spielen will immer

    Redest du hier von der Star Realms App oder allgemein? Letzteres wäre Blödsinn. Oder glaubst du, dass du betrogen worden bist, wenn du gegen einen Schachcomputer verlierst?


    (Und falls du jetzt mit Auswendiglernen von Eröffnungsbibliotheken bei Schach kommst: Spiele-AIs sind inzwischen auch in anderen Bereichen kompetitiv. Ist halt immer nur eine Frage des Aufwandes und der wird ganz schnell ziemlich erheblich, wenn es wirklich gut werden soll. Und dafür ist's dann den meisten Computerspielern zu sehr egal, um diesen zu rechtfertigen. Der Aufwand bzw. das Budget wird dann lieber in Grafik oder ähnliches gesteckt.)

    Zufallsgeneratoren sind nicht alle gleich gut. Je nach Spiel verwendet man vorgefertigte oder programmiert selber welche. Dann kommt noch hinzu ob der gleiche Zufallsgenerator für PvP oder gegen den Computer verwendet wird. Letzteres sollte man nicht machen, denn da ein Computergegner mangels echter Intelligenz immer etwas betrügen muss um gegen den Menschen eine Chance zu haben ist dessen Generator auch auf diesen ausgerichtet.

    Hier geht ein bisschen was durcheinander. Ein Zufallsgenerator (random number generator, RNG) erzeugt erstmal nur Zufallszahlen, idR Kommazahlen gleichverteilt und normiert auf den Bereich zwischen 0 (inklusive) und 1 (exklusive). Beliebige andere Verteilungen, z.B. Gauß-Verteilung, lassen sich davon dann ableiten. Alternativ kann man das Ergebnis z.B. mit 6 multiplizieren und abrunden, dann erhält man eine Simulation für das Würfeln mit einem D6.


    Ich kenne nicht jede Programmiersprache, aber Generatoren, die nach bestimmten mathematischen Kriterien in hohem Maße "zufällig" agieren, kann man heutzutage eigentlich immer recht einfach über freie Bibliotheken einbinden. Um etwas selbst zu programmieren, das mit den frei verfügbaren Sachen mithalten kann, müsste man schon erheblichen Aufwand treiben. Also freie Bibliothek einbinden und fertig.


    Den RNG kann man sich dabei als Black Box vorstellen: man drückt auf einen Knopf (Funktionsaufruf) und es kommt eine Zahl innerhalb vorgegebener Parameter (Wahrscheinlichkeitsverteilung) heraus. So ziemlich alle Zufallsgeneratoren sind schon mit relativ geringem Programmieraufwand gut in dem Sinne, dass 100% zuverlässig das passiert, was mathematisch passieren soll.


    Von dem Zufallsgenerator als solchem völlig unabhängig ist dann, ob der Computer bessere Karten zugeteilt bekommt oder höher würfelt als der menschliche Spieler. Das ist eine Sache der Nutzung des Generators, etwa indem der Programmierer bei einer 6 für den menschlichen Spieler in der höchsten "Schwierigkeitsstufe" einfach nochmal würfeln lässt und das zweite Ergebnis nimmt. Dann kann immer noch eine 6 rauskommen, aber eben mit deutlich reduzierter Wahrscheinlichkeit als beim Computer (bei dem man umkehrt bei einer 1 neu würfeln lassen könnte).



    tl;dr: Es ist richtig, dass in Computerspielen mit Zufallsentscheidungen getrickst wird und "höherer Schwierigkeitsgrad" ist allzuoft eben genau das ist (und eben nicht bzw. nicht nur eine besser spielende AI). Aber das ist kein Problem des Zufallsgenerators, sondern eine bewusste Entscheidung des Programmierers bei der Nutzung desselben.