Armored Brigade Dev Diary #1 - Artificial Intelligence

Post Reply
Daniele
Posts: 1797
Joined: Sat Feb 07, 2015 2:27 am

Armored Brigade Dev Diary #1 - Artificial Intelligence

Post by Daniele »

[center]By Veitikka Studios[/center]


The Armored Brigade artificial intelligence (AI) is fully dynamic, which means that it can handle any scenario within the game parameters, without a need for any scripting from the scenario designer.

This approach has been the basic foundation of the game. I've always found the procedurally generated game content fascinating, and that can be seen in the design philosophy of Armored Brigade.

In Armored Brigade, there's an undefined number of maps, units, environmental conditions, and so on.
The system must build a readable representation, process the input and then produce output that creates a credible impression of intelligence that behaves in a realistic, unpredictable and challenging manner. That's quite a challenge indeed. A "chess AI", where you have a finite number of possible states, is out of the question.

Even if warfare of this era can be considered symmetric, the highly lethal long range weapon systems and the great variety of units in the game can make the battles very erratic.

The general rule is "if you can see it, you can kill it". There are no "front lines", and in the game it's common that a unit can hit another unit from the other side of the map.

Image


In Armored Brigade, there are three mission types: advance, defend and meeting engagement.

From the AI perspective, the advance and meeting engagement missions share the same basic characteristics, as the AI is trying to occupy objective locations it doesn't own in the beginning of the scenario.

In a meeting engagement the player has the same goal, and both sides are maneuvering their formations, whereas when one side is defending the situation is usually more static. To make the battles less predictable, Armored Brigade features "dummy objectives", that can appear in different locations for both sides. There's never a guarantee that the opposing side will be heading to that exact spot on the map.

This way the player is less tempted to stack his units on a single objective, and the AI plan becomes more a mystery.

Image


Obviously, computer software doesn't "see" or process information like we humans do. What we still have is 0 and 1 binaries. Armored Brigade uses a common technique called "influence mapping" to help the AI to construct a representation of the situation. The basic idea is quite close to image processing, and is easy to mimic in image editors. For example, we may have a game map and we want to know which areas are dangerous. We know locations of a few enemy units, and consider them to be dangerous, so we want to keep distance to them. If it was an image, we could mark the area around each enemy with the red color. When we combine the dangerous areas in a 2D grid we get an easy-to-read input data for the AI to use. If in one location we have several enemies and their zones of influence overlap, we can see that this area is especially dangerous and should be avoided.

The pathfinding algorithm can find the safest route around them, because we know (or think we know) which areas are perfectly safe, which ones are somewhat dangerous and which ones are the most dangerous areas. This is just a simple example, but this method allows us to combine a large amount of varied data. In Armored Brigade, if we want the AI to find a valley with closed terrain, e.g. forest, then we read the terrain elevation data and combine it with the terrain cover and concealment data.

We can identify high trafficability zones, open or closed terrain, forward or reverse slopes etc. The AI finds the best approaches to the objectives and the spots where it can ambush the player. When the AI is advancing, it organizes most of its units into "main efforts". They are sort of task forces that consist of different types of platoons, companies and sections. For example, such a group could have a mechanized infantry platoon, tank platoon, HQ, anti-air section and mortar section. The AI tries to distribute its assets evenly between the groups. One important element is the scenario "force type" setting. The available options are 'armored', 'mechanized' and 'infantry'. These function as behavior templates for the AI.

If the force type is 'infantry' then infantry units usually lead and tanks follow, supporting the advance. The infantry advances dismounted, even if they have transports available. This is very important for the scenario designer to consider. The infantry force favors closed and covered terrain. The other force types, 'armored' and 'mechanized', favor open terrain. Low elevation is generally considered good when advancing towards the objectives, even if it's common for water obstacles to be located in depressions. The main efforts advance in an organized and synchronized manner. When they meet bottlenecks, such as water and bridges, the AI knows to change the formation shape so it's easier to pass them.


Image



Most of the assets that are not included in the main efforts are assigned to "supporting efforts". They operate in a more autonomous way and flank or distract the player. They may be able to draw the player's attention from where the main efforts are coming. After capturing an objective, the AI may assign a formation to guard it against counterattacks. All units don't move even when the AI is advancing; for example the static anti-air and mortar units. This must be considered so that they're not easily detected by the player. Such units may be placed to a distance from the player, behind hills or hidden in covered terrain.

When defending, the AI conducts defence in depth. Terrain elevation plays an important role. The AI uses influence mapping to determine forward slopes and reverse slopes. Reverse slope defence is a common and very effective tactic, because when you cross a hill you may be spotted from far away, and if you try to go around the hill then you expose your weaker side armor. The AI recognizes closed terrain and open terrain and estimates which spots suit the different units best. It can be the best to place anti-tank units in closed terrain. The AI can conduct ambushes by letting the player come close and then opening fire simultaneously with all units in the formation. Recon, tank, anti-air and other units can benefit from having plenty of open space around them. When the player captures an objective, the AI may counterattack.

Image


The AI can use mechanized recon units to scout the player rear areas. Even when defending, the AI conducts counter-recon to harass the player's recon units and forward detachments, and to locate hidden units as targets for artillery and close air support aircraft. The AI synchronizes artillery smoke with the main efforts. In addition to using vehicle smoke generators to cover the advance, the artillery is used to create smoke screens. At night the AI uses illumination flares, and can concentrate them where muzzle flashes are detected. The flashes are easy to detect in low light conditions and can be seen from long distances. In some cases the AI can try to disturb obstacle breaching with artillery strikes and even to close the breach with artillery mines.

There's a 'developer mode' available for the scenario designers who want to test how the dynamic AI behaves. When the mode is enabled the designer can see all the AI units and main effort paths. An Armored Brigade scenario never plays the same twice, and this may be a challenge for the designer.

Image
User avatar
calgar
Posts: 122
Joined: Thu Jan 05, 2012 2:07 am

RE: Armored Brigade Dev Diary #1 - Artificial Intelligence

Post by calgar »

Great to see the Dev Diaries starting.

I like what I see, including Influence Mapping and the ideas laid out above.

Having said that, a few things that I find irritating.

I think the AI shouldn't distribute its assets equally, it should form one clear Main Effort.

How is AI dealing with obstacles? Probably not SOSRA drill?

Is the AI forming Follow-up forces/reserves?

Cheers,

A
Para87
Posts: 76
Joined: Fri Jul 28, 2017 12:37 pm

RE: Armored Brigade Dev Diary #1 - Artificial Intelligence

Post by Para87 »

Sounds fantastic. AI has been like a dark cloud over my many, otherwise enjoyable, years of wargaming.

Close combat inspired, cold war era with great AI is like the holy grail.[&o]
User avatar
Veitikka
Posts: 1335
Joined: Sun Jun 24, 2007 10:11 pm
Location: Finland
Contact:

RE: Armored Brigade Dev Diary #1 - Artificial Intelligence

Post by Veitikka »

By the way, I wrote the article, even if I don't see my name mentioned anywhere.
ORIGINAL: calgar

I think the AI shouldn't distribute its assets equally, it should form one clear Main Effort.

That's not always possible, because the map and the forces can be just about anything. Could you come up with some examples showing how it should work, for example using the maps in the screenshots?

How is AI dealing with obstacles? Probably not SOSRA drill?

The NATO side has hardly any breaching equipment in the game. The Soviet side has some mine plows in the tanks. So, in many cases the only option is to hope that the obstacles are seen before driving into them, and then try to bypass them.

Is the AI forming Follow-up forces/reserves?

Not really, but on long maps it can take even hours for the last units to reach the objectives. On the other hand, some maps don't have any extra space and can be overcrowded.
Know thyself!
User avatar
Roby7979
Posts: 1065
Joined: Tue Feb 20, 2018 4:12 pm
Location: Italy,Rome

RE: Armored Brigade Dev Diary #1 - Artificial Intelligence

Post by Roby7979 »

very nice![X(] ottimo lavoro daniele [;)]
PN79
Posts: 207
Joined: Sat Jan 03, 2015 7:14 am

RE: Armored Brigade Dev Diary #1 - Artificial Intelligence

Post by PN79 »

I like this and wish you success.
User avatar
calgar
Posts: 122
Joined: Thu Jan 05, 2012 2:07 am

RE: Armored Brigade Dev Diary #1 - Artificial Intelligence

Post by calgar »

ORIGINAL: Veitikka


ORIGINAL: calgar

I think the AI shouldn't distribute its assets equally, it should form one clear Main Effort.

That's not always possible, because the map and the forces can be just about anything. Could you come up with some examples showing how it should work, for example using the maps in the screenshots?

By for example giving the one effort a numerical advantage, higher priority in terms of Fire support and the benefit when it comes to allocating resources that are limited. That way you would have some sort of "Main" effort.



User avatar
Veitikka
Posts: 1335
Joined: Sun Jun 24, 2007 10:11 pm
Location: Finland
Contact:

RE: Armored Brigade Dev Diary #1 - Artificial Intelligence

Post by Veitikka »

ORIGINAL: calgar

ORIGINAL: Veitikka


ORIGINAL: calgar

I think the AI shouldn't distribute its assets equally, it should form one clear Main Effort.

That's not always possible, because the map and the forces can be just about anything. Could you come up with some examples showing how it should work, for example using the maps in the screenshots?

By for example giving the one effort a numerical advantage, higher priority in terms of Fire support and the benefit when it comes to allocating resources that are limited. That way you would have some sort of "Main" effort.




Perhaps 'main effort' is a bit misleading name. I think in the past I've called them 'main groups'. Together they form the 'main effort'. As you can see in the images, these groups move like convoys, and each of them has various kinds of equipment, so basically they can function as independent task forces. In the current system, if I give one of them more assets, that just makes the convoy longer.

If we think that all of them together are the main effort, then the convoy length is the effort length. The number of 'main groups' is the effort width. If I assign everything to a single blob, then it becomes pointlike, everything amassed in a tight, rigid mess. So, in the dynamic environment we need to have a way to make it flexible.
Know thyself!
Rosseau
Posts: 2931
Joined: Sun Sep 13, 2009 2:20 am

RE: Armored Brigade Dev Diary #1 - Artificial Intelligence

Post by Rosseau »

We trust you know what you are doing, Veitikka. Even though they turned me down as a beta tester again. Ha!
User avatar
erichswafford
Posts: 338
Joined: Wed May 14, 2008 7:20 pm

Re: Armored Brigade Dev Diary #1 - Artificial Intelligence

Post by erichswafford »

Well, this didn't work out. I sincerely hope that your next game uses scripting (or else ChatGPT!) with pre-made (handcrafted) scenarios, because the "dynamic AI" in AB is pretty bad. It does do a fine job of simulating Soviet ineptitude, but is otherwise pretty hopeless. Which is a shame, because I love everything else about the game.

Your core audience is coming over from traditional wargames. We are OK with just having great scenarios (like in a board game). All this dynamic stuff is great - but only if the AI can handle it. Which it assuredly cannot. It's a fantastic concept, but I fear you'll need a quantum computer to handle a fully dynamic AI that can handle whatever situation it's placed in.
"It is right to learn, even from the enemy."
- Ovid
User avatar
Perturabo
Posts: 2461
Joined: Sat Nov 17, 2007 5:32 pm
Contact:

Re: Armored Brigade Dev Diary #1 - Artificial Intelligence

Post by Perturabo »

erichswafford wrote: Thu Feb 16, 2023 4:51 amWell, this didn't work out. I sincerely hope that your next game uses scripting (or else ChatGPT!) with pre-made (handcrafted) scenarios, because the "dynamic AI" in AB is pretty bad. It does do a fine job of simulating Soviet ineptitude, but is otherwise pretty hopeless. Which is a shame, because I love everything else about the game.

Your core audience is coming over from traditional wargames. We are OK with just having great scenarios (like in a board game). All this dynamic stuff is great - but only if the AI can handle it. Which it assuredly cannot. It's a fantastic concept, but I fear you'll need a quantum computer to handle a fully dynamic AI that can handle whatever situation it's placed in.
Which somewhat simulationist modern tactical wargames would you consider to be examples of good scripted AI?
Post Reply

Return to “Armored Brigade - Dev Diaries”