KI (Künstliche Intelligenz): Unterschied zwischen den Versionen
(AI: terraforming and colonizing) |
(added: english textes) |
||
Zeile 1: | Zeile 1: | ||
− | + | {| class="prettytable" Width="100%" | |
+ | | align="right" | click [http://translate.google.de/translate?hl=de&sl=de&tl=en&u=http%3A%2F%2Fbirth-of-the-empires.de%2Fwiki%2Findex.php%3Ftitle%3DKI_(Künstliche_Intelligenz) here] for other languages http://birth-of-the-empires.de/wiki_files/Bilder/Russland-Symbol.gif | ||
+ | |} | ||
− | = | + | = Intro = |
+ | {|width="100%" bgcolor="#dadada" style="border:2px solid #000000;padding:1em;padding-top:0.5em;" | ||
+ | | bgcolor="#dadada" width="51%" - valign="top" align="center"| http://birth-of-the-empires.de/wiki_files/Bilder/Deutsch-Symbol.jpg | ||
+ | | bgcolor="#dadada" width="46%" - valign="top" align="center"| http://birth-of-the-empires.de/wiki_files/Bilder/Englisch-Symbol.jpg | ||
+ | |- | ||
+ | | bgcolor="#fafafa" valign="top"| | ||
Die '''KI (Künstliche Intelligenz)''' steuert die anderen [[Imperien Übersicht|Imperien]] sowie die [[Kleine Völker|kleinen Völker]]. | Die '''KI (Künstliche Intelligenz)''' steuert die anderen [[Imperien Übersicht|Imperien]] sowie die [[Kleine Völker|kleinen Völker]]. | ||
Zeile 12: | Zeile 19: | ||
*(internal) KI-Vorgaben http://forum.birth-of-the-empires.de/viewtopic.php?f=16&t=1076 (search entry t=1076) | *(internal) KI-Vorgaben http://forum.birth-of-the-empires.de/viewtopic.php?f=16&t=1076 (search entry t=1076) | ||
+ | | bgcolor="#fafaba" valign="top"| | ||
− | + | |} | |
+ | |||
+ | = Building Queue = | ||
+ | |||
+ | {|width="100%" bgcolor="#dadada" style="border:2px solid #000000;padding:1em;padding-top:0.5em;" | ||
+ | | bgcolor="#dadada" width="51%" - valign="top" align="center"| http://birth-of-the-empires.de/wiki_files/Bilder/Deutsch-Symbol.jpg | ||
+ | | bgcolor="#dadada" width="46%" - valign="top" align="center"| http://birth-of-the-empires.de/wiki_files/Bilder/Englisch-Symbol.jpg | ||
+ | |- | ||
+ | | bgcolor="#fafafa" valign="top"| | ||
*Die KI hat keine festen Baualgorithmen. Sie berechnet immer, was sie gerade braucht und sucht sich dann ein passendes Gebäude. Kriterien sind u.a. Industriekosten, Ressourcenkosten, aber auch vorhandene Vorräte und die aktuelle Moral. | *Die KI hat keine festen Baualgorithmen. Sie berechnet immer, was sie gerade braucht und sucht sich dann ein passendes Gebäude. Kriterien sind u.a. Industriekosten, Ressourcenkosten, aber auch vorhandene Vorräte und die aktuelle Moral. | ||
Zeile 22: | Zeile 38: | ||
*Die KI baut derzeit keine Gebäude, die eine negative Moral besitzen. Es ist schwierig programmatisch vorauszusehen, ob das irgendwann nicht mal in einer Rebellion enden könnte. Da besteht noch Verbesserungsbedarf für die Bau-KI. | *Die KI baut derzeit keine Gebäude, die eine negative Moral besitzen. Es ist schwierig programmatisch vorauszusehen, ob das irgendwann nicht mal in einer Rebellion enden könnte. Da besteht noch Verbesserungsbedarf für die Bau-KI. | ||
+ | | bgcolor="#fafaba" valign="top"| | ||
+ | |||
+ | |} | ||
+ | |||
− | = | + | =Resources = |
== Deritium == | == Deritium == | ||
+ | {|width="100%" bgcolor="#dadada" style="border:2px solid #000000;padding:1em;padding-top:0.5em;" | ||
+ | | bgcolor="#dadada" width="51%" - valign="top" align="center"| http://birth-of-the-empires.de/wiki_files/Bilder/Deutsch-Symbol.jpg | ||
+ | | bgcolor="#dadada" width="46%" - valign="top" align="center"| http://birth-of-the-empires.de/wiki_files/Bilder/Englisch-Symbol.jpg | ||
+ | |- | ||
+ | | bgcolor="#fafafa" valign="top"| | ||
Die KI bekommt in jeder Runde etwas Deritium "geschenkt" und zwar je höher der Schwierigkeitsgrad, desto mehr. | Die KI bekommt in jeder Runde etwas Deritium "geschenkt" und zwar je höher der Schwierigkeitsgrad, desto mehr. | ||
Quelle: Code Build 58548 botf2Doc.cpp: int temp = rand()%((int)(m_fDifficultyLevel * 7.5)); | Quelle: Code Build 58548 botf2Doc.cpp: int temp = rand()%((int)(m_fDifficultyLevel * 7.5)); | ||
+ | | bgcolor="#fafaba" valign="top"| | ||
+ | Each turn AI gets some Deritium (totally free = cheated), and the higher the difficulty level the more it gets. | ||
+ | |||
+ | Source: Code Build 58548 botf2Doc.cpp: int temp = rand()%((int)(m_fDifficultyLevel * 7.5)); | ||
+ | |} | ||
− | |||
− | + | = Research = | |
+ | |||
+ | {|width="100%" bgcolor="#dadada" style="border:2px solid #000000;padding:1em;padding-top:0.5em;" | ||
+ | | bgcolor="#dadada" width="51%" - valign="top" align="center"| http://birth-of-the-empires.de/wiki_files/Bilder/Deutsch-Symbol.jpg KI: Forschung | ||
+ | | bgcolor="#dadada" width="46%" - valign="top" align="center"| http://birth-of-the-empires.de/wiki_files/Bilder/Englisch-Symbol.jpg AI: Research | ||
+ | |- | ||
+ | | bgcolor="#fafafa" valign="top"| | ||
+ | Seit Version Alpha6.1 (V0.81) erforscht die KI auch [[Spezialforschung]]en (siehe [[Programm-Code|ResearchAI.cpp]]). | ||
+ | | bgcolor="#fafaba" valign="top"| | ||
+ | Since Version Alpha6.1 (V0.81) AI also does [[Spezialforschung|special research]] (see [[Programm-Code|ResearchAI.cpp]]) | ||
+ | |} | ||
+ | |||
− | = | + | = Intelligence = |
+ | {|width="100%" bgcolor="#dadada" style="border:2px solid #000000;padding:1em;padding-top:0.5em;" | ||
+ | | bgcolor="#dadada" width="51%" - valign="top" align="center"| http://birth-of-the-empires.de/wiki_files/Bilder/Deutsch-Symbol.jpg | ||
+ | | bgcolor="#dadada" width="46%" - valign="top" align="center"| http://birth-of-the-empires.de/wiki_files/Bilder/Englisch-Symbol.jpg | ||
+ | |- | ||
+ | | bgcolor="#fafafa" valign="top"| | ||
Die KI verwendet nur Sabotage. Eine Geheimdiensaktion wird gestartet, wenn die Geheimdienstpunkte + Punkte aus Depot größer sind als die gegnerische Innere Sicherheit + deren Inneres Depot. (Quelle+Details: [[Programm-Code|IntelAI.cpp]]) | Die KI verwendet nur Sabotage. Eine Geheimdiensaktion wird gestartet, wenn die Geheimdienstpunkte + Punkte aus Depot größer sind als die gegnerische Innere Sicherheit + deren Inneres Depot. (Quelle+Details: [[Programm-Code|IntelAI.cpp]]) | ||
Zeile 53: | Zeile 98: | ||
Zufall spielt eine Rolle. Als grobe Formel kann man sich aber bei Sabotage merken, Angriff größer Verteidigung + X ist erfolgreich. Anzahl Aktionen = Angriff / (Verteidigung + X). X ist innerhalb bestimmter Parameter zufällig. X hängt auch von der Aggressivität und von der Art (Spionage/Sabotage) ab. Viel mehr will ich jetzt aber nicht verraten. | Zufall spielt eine Rolle. Als grobe Formel kann man sich aber bei Sabotage merken, Angriff größer Verteidigung + X ist erfolgreich. Anzahl Aktionen = Angriff / (Verteidigung + X). X ist innerhalb bestimmter Parameter zufällig. X hängt auch von der Aggressivität und von der Art (Spionage/Sabotage) ab. Viel mehr will ich jetzt aber nicht verraten. | ||
+ | | bgcolor="#fafaba" valign="top"| | ||
+ | |||
+ | |} | ||
+ | |||
= Ships = | = Ships = | ||
Zeile 58: | Zeile 107: | ||
== AI: terraforming and colonizing == | == AI: terraforming and colonizing == | ||
+ | {|width="100%" bgcolor="#dadada" style="border:2px solid #000000;padding:1em;padding-top:0.5em;" | ||
+ | | bgcolor="#dadada" width="51%" - valign="top" align="center"| http://birth-of-the-empires.de/wiki_files/Bilder/Deutsch-Symbol.jpg | ||
+ | | bgcolor="#dadada" width="46%" - valign="top" align="center"| http://birth-of-the-empires.de/wiki_files/Bilder/Englisch-Symbol.jpg | ||
+ | |- | ||
+ | | bgcolor="#fafafa" valign="top"| | ||
+ | Seit Alpha7 V0.90 terraformt die KI alle Planeten mit weniger als 8 Terraform-Punkten. Nur wenn kein anderer '''kolonisier'''barer Planet in diesem System gefunden wird und kein Planet mit weniger als 8 nötigen '''Terraform'''-Punkten -> nur dann werden Planeten mit mehr als 8 Punkten terrageformt. (Quelle: CShipAI::DoTerraform). | ||
+ | |||
+ | Bis Version 0.81 war es noch so, dass die KI immer erst ein System komplett terraformte und erst dann kolonisierte. Das war teilweise schlecht für die KI. | ||
+ | | bgcolor="#fafaba" valign="top"| | ||
From Alpha7 V0.90 on AI terraforms all planets with needed terraform-points less than 8 will get terraformed. Only if no other planet is found which be can '''colonized''' in this system and no planet with less terraform-points than 8 -> than a planet with more than 8 terraform-points will be terraformed. (Source: CShipAI::DoTerraform) | From Alpha7 V0.90 on AI terraforms all planets with needed terraform-points less than 8 will get terraformed. Only if no other planet is found which be can '''colonized''' in this system and no planet with less terraform-points than 8 -> than a planet with more than 8 terraform-points will be terraformed. (Source: CShipAI::DoTerraform) | ||
− | + | Until version 0.81 AI firstly terraformed '''all''' planets before colonizing. This wasn't good for AI. | |
+ | |} | ||
+ | |||
== Attacking systems == | == Attacking systems == | ||
Zeile 76: | Zeile 136: | ||
= Troops = | = Troops = | ||
− | + | {|width="100%" bgcolor="#dadada" style="border:2px solid #000000;padding:1em;padding-top:0.5em;" | |
− | At the | + | | bgcolor="#dadada" width="51%" - valign="top" align="center"| http://birth-of-the-empires.de/wiki_files/Bilder/Deutsch-Symbol.jpg |
+ | | bgcolor="#dadada" width="46%" - valign="top" align="center"| http://birth-of-the-empires.de/wiki_files/Bilder/Englisch-Symbol.jpg | ||
+ | |- | ||
+ | | bgcolor="#fafafa" valign="top"| | ||
+ | Momentan kann die KI noch nicht mit Truppen umgehen. Deshalb entsorgt die KI ihre Truppen gleich zu Beginn, auch weil einige Truppen ja auch Moralwerte haben, die sich in manchen Situationen hinderlich auswirken könnten. | ||
+ | | bgcolor="#fafaba" valign="top"| | ||
+ | At the moment (Alpha7 V0.90) BotE's AI can not handle troops. So AI scraps troops at the beginning, also because some troops have morale values which could be destructively in some case. | ||
+ | |} |
Version vom 31. August 2013, 13:49 Uhr
click here for other languages |
Intro
Die KI (Künstliche Intelligenz) steuert die anderen Imperien sowie die kleinen Völker.
Threads:
|
Building Queue
|
Resources
Deritium
Die KI bekommt in jeder Runde etwas Deritium "geschenkt" und zwar je höher der Schwierigkeitsgrad, desto mehr. Quelle: Code Build 58548 botf2Doc.cpp: int temp = rand()%((int)(m_fDifficultyLevel * 7.5)); |
Each turn AI gets some Deritium (totally free = cheated), and the higher the difficulty level the more it gets. Source: Code Build 58548 botf2Doc.cpp: int temp = rand()%((int)(m_fDifficultyLevel * 7.5)); |
Research
KI: Forschung | AI: Research |
Seit Version Alpha6.1 (V0.81) erforscht die KI auch Spezialforschungen (siehe ResearchAI.cpp). |
Since Version Alpha6.1 (V0.81) AI also does special research (see ResearchAI.cpp) |
Intelligence
Die KI verwendet nur Sabotage. Eine Geheimdiensaktion wird gestartet, wenn die Geheimdienstpunkte + Punkte aus Depot größer sind als die gegnerische Innere Sicherheit + deren Inneres Depot. (Quelle+Details: IntelAI.cpp)
Wonach aber richtet sich die Anzahl erfolgreicher Aktionen pro Runde? Manchmal wird nur 1 Ziel erfolgreich sabotiert, in der nächsten Runde aber 3. Zufall, oder wird für jedes erneute punktemässige Überwinden der inneren Sicherheit in der selben Runde 1 Aktion durchgeführt?
Zufall spielt eine Rolle. Als grobe Formel kann man sich aber bei Sabotage merken, Angriff größer Verteidigung + X ist erfolgreich. Anzahl Aktionen = Angriff / (Verteidigung + X). X ist innerhalb bestimmter Parameter zufällig. X hängt auch von der Aggressivität und von der Art (Spionage/Sabotage) ab. Viel mehr will ich jetzt aber nicht verraten. |
Ships
AI: terraforming and colonizing
Seit Alpha7 V0.90 terraformt die KI alle Planeten mit weniger als 8 Terraform-Punkten. Nur wenn kein anderer kolonisierbarer Planet in diesem System gefunden wird und kein Planet mit weniger als 8 nötigen Terraform-Punkten -> nur dann werden Planeten mit mehr als 8 Punkten terrageformt. (Quelle: CShipAI::DoTerraform). Bis Version 0.81 war es noch so, dass die KI immer erst ein System komplett terraformte und erst dann kolonisierte. Das war teilweise schlecht für die KI. |
From Alpha7 V0.90 on AI terraforms all planets with needed terraform-points less than 8 will get terraformed. Only if no other planet is found which be can colonized in this system and no planet with less terraform-points than 8 -> than a planet with more than 8 terraform-points will be terraformed. (Source: CShipAI::DoTerraform) Until version 0.81 AI firstly terraformed all planets before colonizing. This wasn't good for AI. |
Attacking systems
In der derzeitigen Version 0.90 ist immer noch so, dass die KI ausschließlich Systeme bombardiert (also nicht erobert!). Anschließend kolonisiert die KI dann das leergebombte Systeme. |
It's still so (V0.90) that AI only bombards systems (no conquering). After eliminating all population AI does a fresh colonization. |
Troops
Momentan kann die KI noch nicht mit Truppen umgehen. Deshalb entsorgt die KI ihre Truppen gleich zu Beginn, auch weil einige Truppen ja auch Moralwerte haben, die sich in manchen Situationen hinderlich auswirken könnten. |
At the moment (Alpha7 V0.90) BotE's AI can not handle troops. So AI scraps troops at the beginning, also because some troops have morale values which could be destructively in some case. |