Difference between revisions of "User:Shofixti"

From The Battle for Wesnoth Wiki
(Shofixti's GSOC Proposal: Smarter and more human recruitment algorithm)
 
 
(13 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{SoC2013Student}}
+
= Shofixti =
[[Category:SoC_Ideas_Your_Own_Ideas2013]]
+
I'm just a simple geek trying to make my way in the Universe.
  
=Description=
+
<h2>Google Summer of Code 2013</h2>
<h4>Shofixti - Smarter and more human recruitment algorithm</h4>
 
As I have come to understand it, the current RCA AI recruitment algorithm suffers from a few flaws and a general lack of complexity. Given the chance, i'd like to completely redo this algorithm to allow the AI to factor in more variables and generally behave more like a human opponent than it currently does.
 
  
= Project Ideas =
+
<h4>[[User:Shofixti/GSoC13/Proposal]]</h4>
All of these are broad ideas for the goal of a new re-factored AI, not implementation strategies.
+
<h4>[[User:Shofixti/GSoC13/Questionnaire]]</h4>
 
 
<h4>Purpose Driven Recruitment</h4>
 
In order to create the right tool for the right job, it's important the the AI be able to create units for a specific purpose. Scouts for capturing villages in early-game, Sea units for quickly accessing islands, Defensive specialists for when the pressure is on, and Support units when the need arises. The recruitment algorithm would need to assign each created unit a sort of purpose attribute, and perhaps one day down the road these purposes could be implemented by the AI in combat and movement phases.
 
 
 
<h4>Relevant Terrain Awareness</h4>
 
As far as I am aware currently the AI only factors in the typical terrain of the map as a whole. This  can lead to problems like the AI deciding to produce mermen as foot soldiers in a ground war, only because lots of water happens to exist on the map. I believe that having the AI know, at least in a really general sense, the type of terrain the unit will need to eventually traverse will greatly aid the recruitment decision making process.
 
 
 
<h4>Multiple Leader Support</h4>
 
In order to facilitate multiple leaders, it may be necessary to rewrite the recruitment stage to be subdivided between leaders. I imagine that this would be done using a similar Candidate Action Value system, in order to determine which leader should produce when. This approach would allow leaders to work in concert and adapt to each-other, as well as deciding where is physically the better place to recruit at a given time.
 
 
 
<h4>Adaptability</h4>
 
It is of the utmost importance that a newly written AI be able to analyze the battle as a whole up to this point and adjust recruitment based on:
 
 
 
1: Heavy losses of a unit type (The AI must know when to fill in missing ranks, and when to take a different approach)
 
 
 
2: The type of unit being favored by the opponent(s)
 
 
 
3: Current need for support units
 
 
 
<h4>Limiting the AI</h4>
 
A good AI implementation wouldn't aim to simply improve the AI strategically but also to increase the sense that the player is fighting against a human opponent, not a predictable machine. I would suggest that, if it has not already been done, that this newly re-factored AI would be capable of the following:
 
 
 
1: In fog of war maps, the AI should only be able to decide what counter-units to produce based off the opposing units it has encountered. Otherwise the AI would appear to be omniscient.
 
 
 
2: As mentioned in the list of requirements, the AI should be capable of entering a gold conservation mode, so that it doesn't simply spend everything each chance it gets.
 
 
 
3: Take into account scenario definable unit limits.
 
 
 
=IRC=
 
Shofixti
 
 
 
=== Questionnaire ===
 
Please see the following page for the questionnaire:
 
[[User:Shofixti/Questionnaire]]
 

Latest revision as of 18:09, 27 April 2013

This page was last edited on 27 April 2013, at 18:09.