Seite 1 von 4

KI-Optimierung und Rundendauer

Verfasst: Dienstag 27. März 2007, 16:24
von Malle
CBot will den Netcode noch auf Schnelligkeit hin optimieren, da dürfte noch einiges an speed drinne sein, wenn ich das richtig mitgekriegt habe, also abwarten ;).

Verfasst: Dienstag 27. März 2007, 19:29
von Sir Pustekuchen
Da müssen wir mal schauen, aber zur Zeit baut die KI noch unbegrenzt Schiffe, da ja keine Unterhaltskosten eingebaut sind. Wenn dann jede Rasse ca. 500 Schiffe hat macht das ca. 3000 Schiffe im Spiel. Die müssen dann von der KI beachtet werden usw. Das dauert schon eine Weile. Ich denke aber bei insgesamt "nur" ca. 500 Schiffen sollte es viel schneller gehen. Die Berechnungszeit steigt nämlich nicht nur linear mit der Anzahl der Schiffe.

Verfasst: Dienstag 27. März 2007, 21:57
von Malle
na hoffentlich ;)

denke mal, man könnte die Berechnungszeit der KI auch schon im Spielerzug ansetzen, will heißen, ungenutzte CPU-Last auf die KI im Hintergrund verteilen. Bei menschlichen Mitspielern wird ja auch "parallel" gearbeitet. Sollte die KI irgendwas an Daten benötigen vom Rundenende zwecks evtl. Cheaten, kann man auch da versuchen, zu separieren und nur noch marginale Entscheidungen wie Flottenbewegungen in Reaktion auf die Bewegungen des Gegners zuzulassen..

Dazu noch ne "Optimierungsschleife", die die getroffenen Entscheidungen der KI gegentestet und bewertet und ggfs. einen neuen Satz von Entscheidungen im Hintergrund berechnet (der "Satz" ist wichtig, nicht dass die KI "halbe" Sachen macht ;)) und schon schwitzt der Mitspieler, wenn er mal wieder zu lange braucht, denn die KI schläft nicht! :)

KI-Verhalten

Verfasst: Dienstag 1. Januar 2008, 22:19
von master130686
Mir sind bei der KI ein paar Sachen aufgefallen, die bei Gelegenheit mal etwas angepasst werden könnten/sollten.

1. Die KI "weiß" wo gute Systeme und Minors sind
Die KI fliegt relativ zielstrebig auf gute Systeme und Minors zu. Schlechte Systeme werden dabei nur "erforscht" wenn sie zufällig auf dem Weg liegen.

Wenn man sich mal die erkundeten Systeme bzw. Sektoren der KI anschaut, so fällt auf, dass bestimmte Sektoren und Systeme einfach ignoriert werden. Überprüft man dann diese Sektoren/Systeme so stellt man meist fest, das diese Sektoren leer sind bzw. die Systeme nur wenig Bevölkerung haben.

Das sollte nich sein, da das der KI einen zusätzlichen Vorteil verschafft. Als menschlicher Spieler muss ich auch alle Sektoren und Systeme erforschen um zu wissen was "drin is".


2. Die KI ignoriert auch "eigene", gute Systeme
In mehreren Spielen hab ich festgestellt, dass die KI, warum auch immer, manchmal Systeme im eigenen Territorium "ignoriert".

In meinem aktuellen Multiplayer mit Alabor haben die Cartarer ein Top-System (40.8 Mrd, mit allen Ressourcen außer Iridium) in Ihrem Territorium (nahe meinem, aber wir ham Freundschaft) und es is noch nich mal ansatzweise terraformt. Und das System wäre, besonders für die KI, schnell "gemacht". Es hat "nur" 6 Planeten und insgesamt nur 32 Terraforming-Punkte.


3. Die KI terraformt manchmal nicht
In eigenen Systemen, speziell bei Minors, werden nicht-terraformte Planeten oft ignoriert.

In meinem aktuellen Multiplayer mit Alabor haben die Cartarer die Exomerianer als Minor. Das Exomerianische System hat eine Maximalbevölkerung von 40.2 Mrd.. In dem System sind seit mehreren Runden noch 2 Planeten unterraformt. Zusammen haben diese 2 Planeten eine Bevölkerung von 10.7 Mrd..


Speziell Zweitens und Drittens sind sich ja sehr ähnlich und haben vermutlich die selbe Ursache bzw. Lösung.
Im Prinzip freut mich zwar alles was die KI schwächt, aber diese 2 Sachen sind doch etwas unlogisch, oder? Besonders wenn man das mit Erstens Abgleicht. Denn was nützen der KI die guten Systeme, wenn sie diese dann, zumindest gelegentlich, ignoriert?!


4. Die KI übergibt "unlogische" Geschenke
Das is zwar nich ganz neu, aber dennoch nicht minder unlogisch.

Mir wurden schon mehrfach Geschenke von Kriegsgegnern übergeben. Speziell die Hanuhr sind da sehr spendabel. Und diese Geschenke sind relativ unabhängig vom Stärkeverhältnis. Einmal bekam ich sogar eine Kriegserklärung mit einem "kleinen Anreiz" von 5000 Credits.


Das war's erstmal. Aber ansonsten is die KI schon sehr gut.

Re: mögliche KI-Verbesserungen

Verfasst: Mittwoch 2. Januar 2008, 10:45
von Iver
Also, das mit dem Terraformen/Kolonisieren habe ich jetzt auf jeden Fall auch festgestellt, sollte auf jeden Fall verbessert werden. Punkte sind ja schon gut ausgearbeitet hierfür.
Ich spiele immer noch mein Roth Spiel in Runde 230, der Hanuhr hat 1/3 der Galaxie und ich habe nur Handelsvertrag mit ihm, die Beziehung ist: verärgert, weil der Depp ständig kleine Scharmützel gegen mich verliert. Aus heiterem Himmel schenkte er mir 5000 Credits, auf Forderungen ging er jedoch danach nicht ein.
Wie ist das btw, started die KI auch Invasionen?

Re: mögliche KI-Verbesserungen

Verfasst: Mittwoch 2. Januar 2008, 10:54
von Malle
klar invasiert er dich. Vorher bist du meist allerdings totgebombt aus dem Orbit ;).

Re: mögliche KI-Verbesserungen

Verfasst: Mittwoch 2. Januar 2008, 12:04
von master130686
Also ich hab es bisher noch nie erlebt, dass die KI invasiert. Vielleicht sollte man dem Invasieren eine höhere Priorität geben?! Denn es is doch auch für die KI günstiger, wenn sie ein relativ gut ausgebautes System mit ein paar Mrd. Bevölkerung bekommt, als wenn sie jedes System dann erst neu kolonisieren und aufbauen muss, oder?

Re: mögliche KI-Verbesserungen

Verfasst: Mittwoch 2. Januar 2008, 12:10
von Malle
gut, das mag sein, dass invasieren vll. noch gar nicht implementiert ist, ich dachte mich zu erinnern an einen Hinweis im changelog, dass puste es implementiert hat, kann das aber nicht mit Bestimmtheit sagen. Ich hab bisher auch nur das totbomben meiner Systeme erlebt. Mal sehen, was der Chef sagt.

Re: mögliche KI-Verbesserungen

Verfasst: Mittwoch 2. Januar 2008, 12:18
von Sir Pustekuchen
Zur kompletten Invasion fehlt noch der Truppenbau. Ohne Truppen und deren Transport gibts auch keine eroberten Systeme. Dies ist aber gar nicht so einfach zu implementieren, da mathematisch relativ schwierig zu beschreiben. Da reicht keine banale if-then-else Anweisung.

Ansonsten sind deine ganzen Beobachtungen richtig. Ich weiß auch von denen. Mal schauen ob und wann ich dies mal verbessere. Bis jetzt funktioniert es ja erstmal ganz gut.

Re: Kampagnenmodus

Verfasst: Mittwoch 28. Januar 2009, 01:54
von noviraht
Verzeiht wenn ich mich einmische aber Malle hab ich das richtig verstanden das die KI mehr überlegungen an stellt und somit immer schlauer wird wenn ich drann bin und zulange brauche?

Re: Kampagnenmodus

Verfasst: Mittwoch 28. Januar 2009, 13:27
von Malle
würden wir Näherungsverfahren in unseren KI-Algorithmen benutzen wäre es theoretisch möglich, die mehrmals mit verschiedenen stärkeren Parametern durchlaufen zu lassen und so im Modell genauere Werte zu bekommen. Ob die dann wiederum sinnvoller wären oder nicht hängt alles vom Modell ab, also das war nur theoretisches Geschwätz damals. Aber wäre sicher ne interessante Sache, da würd man als Spieler schon ins Schwitzen kommen ;).

Re: Kampagnenmodus

Verfasst: Mittwoch 28. Januar 2009, 16:05
von MTB
Sir Pustekuchen hat geschrieben:Da müssen wir mal schauen, aber zur Zeit baut die KI noch unbegrenzt Schiffe, da ja keine Unterhaltskosten eingebaut sind. Wenn dann jede Rasse ca. 500 Schiffe hat macht das ca. 3000 Schiffe im Spiel. Die müssen dann von der KI beachtet werden usw. Das dauert schon eine Weile. Ich denke aber bei insgesamt "nur" ca. 500 Schiffen sollte es viel schneller gehen. Die Berechnungszeit steigt nämlich nicht nur linear mit der Anzahl der Schiffe.
Wieso schläft nach ein paar Stunden dann die Maus so langsam ein, nach Neustart und Laden tut's aber wieder?

Re: KI-Optimierung und Rundendauer

Verfasst: Mittwoch 28. Januar 2009, 16:14
von Malle
das hängt sicher mit dem Grafikverschwindenbug irgendwie zusammen. Ich nehm an intern gibts Speicherbelegungsprobleme oder die GDI macht Mucken. Das hat aber nichts mit der KI zu tun, mehr mit dem game state nach ner Weile.

Re: KI-Optimierung und Rundendauer

Verfasst: Mittwoch 28. Januar 2009, 19:13
von Dennis0078
Ich hab auch mal ne Frage zum KI
Ich habe das Gefühl der KI kennt von Anfang an meine Position ohne zu forschen.
Denn egal wie oft ich schon gespielt habe und neu angefangen habe in Kürzester Zeit sind 4 KI in meinem Einzugsbereich
Wenn ich dann Verträge mit ihnen abschließe, dann sehe ich das ihr Heimatplanet am andern Ende der Karte ist.
Die Systeme und Außenposten wurden so gewählt das sie in kürzester Zeit bei dir sind.
Dadurch haben die KI auch keinen richtigen Terretorialen Raum sonder ehr auf der Karte zerklüftet.

Re: KI-Optimierung und Rundendauer

Verfasst: Mittwoch 28. Januar 2009, 19:31
von Malle
hehe, das liegt daran, dass sie die guten Systeme von Beginn an kennen. Sie wissen nicht dass du drauf lebst, aber sie wissen, dass dein Heimatsystem mit seinen um die 50 Mrd. Bevölkerung eins der besseren ist und wollen es kolonisieren. Kleiner Cheat der KI, aber zusammen mit dem +1 Deritium pro System geschenkt der einzige Cheat neben den Ressourcenproduktions- und Bauzeitcheats.