обычная нейросеть с 1-2 скрытыми слоями, обучение обратным градиентным спуском, функция активации подойдет сигмоид, на выходе снимать максимальное значение. Например если у вас на выходе три нейрона атаковать/обороняться/отступать со значениями (0.4,0.2,0.6), то надо отступать.