I heard you guys like developer rants, so I thought I would share a change I worked on over this past weekend. If you have no idea what a neural network is, or how they are being used in PA, then I suggest you watch my GDC 2012 presentation: http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non. (Scroll on the left hand side until you see my neural network talk. If my talk didn't bore you I also get a lot of questions at the end during the Q&A session.) My presentation talks about my work on SupCom 2, but I use many the same techniques in PA, in addition to some new ones. The work I checked in this morning is an attempt to make the AI fully commit its units to a fight in situations where running away would leave the AI worse off. For example, if the AI has some infernos in your base and you bring in units to defend, odds are the AI will back off. This is because, up until now, there has been a static threshold for good decision versus bad decision. All neural network outputs are in a range between 0.0 and 1.0. Anything below 0.5 means taking that action will result in a less than favorable outcome. Currently, if all possible actions are below the 0.5 threshold, the platoon (AI grouping of units) runs away. However, this does not take into account the fact that the platoon may be dead already and is better off doing what damage it can before it dies. This is where the new stuff comes into play. Instead of treating running away as the absence of any valid action it is now an output of the neural network. It is trained just like all of the other possible actions so that the AI can learn what happens when a platoon runs away in various circumstances. In the actual game (not training) the run away output is ignored as an action. This is because, in many cases, running away will be seen as the best action due to the fact that neither the AI nor the enemy would take any damage. Instead of using the run away output directly we use the output to set a new run away threshold. This threshold will be the lower of 0.5 or the run away output. This allows the AI to make the judgment call of staying and fighting because running away would result in more losses for less gain. Running away is still the absence of any valid action, but the AI now has a way to dynamically lower the bar for what constitutes a valid action.