Matrix Games Forums

Forums  Register  Login  Photo Gallery  Member List  Search  Calendars  FAQ 

My Profile  Inbox  Address Book  My Subscription  My Forums  Log Out

Armored Brigade Dev Diary #1 - Artificial Intelligence

 
View related threads: (in this forum | in all forums)

Logged in as: Guest
Users viewing this topic: none
  Printable Version
All Forums >> [Coming Soon] >> Armored Brigade >> Armored Brigade Dev Diary #1 - Artificial Intelligence Page: [1]
Login
Message << Older Topic   Newer Topic >>
Armored Brigade Dev Diary #1 - Artificial Intelligence - 7/16/2018 1:42:04 PM   
Daniele

 

Posts: 1295
Joined: 2/7/2015
Status: offline
By Veitikka Studios



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.




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.




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.






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.




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.




< Message edited by Daniele -- 7/23/2018 7:47:54 AM >
Post #: 1
RE: Armored Brigade Dev Diary #1 - Artificial Intelligence - 7/17/2018 11:04:07 PM   
calgar


Posts: 83
Joined: 1/5/2012
Status: offline
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

(in reply to Daniele)
Post #: 2
RE: Armored Brigade Dev Diary #1 - Artificial Intelligence - 7/20/2018 9:18:11 AM   
Para87

 

Posts: 4
Joined: 7/28/2017
Status: offline
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.

(in reply to calgar)
Post #: 3
RE: Armored Brigade Dev Diary #1 - Artificial Intelligence - 7/22/2018 9:59:41 PM   
Veitikka


Posts: 274
Joined: 6/25/2007
From: Finland
Status: offline
By the way, I wrote the article, even if I don't see my name mentioned anywhere.

quote:

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?

quote:



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.

quote:



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!

(in reply to calgar)
Post #: 4
RE: Armored Brigade Dev Diary #1 - Artificial Intelligence - 7/23/2018 5:10:06 PM   
[BSM]Roby7979


Posts: 58
Joined: 2/20/2018
From: Italy
Status: offline
very nice! ottimo lavoro daniele

(in reply to Veitikka)
Post #: 5
RE: Armored Brigade Dev Diary #1 - Artificial Intelligence - 7/24/2018 6:38:27 PM   
PN79

 

Posts: 66
Joined: 1/3/2015
Status: offline
I like this and wish you success.

(in reply to [BSM]Roby7979)
Post #: 6
RE: Armored Brigade Dev Diary #1 - Artificial Intelligence - 7/24/2018 9:46:37 PM   
calgar


Posts: 83
Joined: 1/5/2012
Status: offline

quote:

ORIGINAL: Veitikka



quote:

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.




(in reply to Veitikka)
Post #: 7
RE: Armored Brigade Dev Diary #1 - Artificial Intelligence - 7/28/2018 12:53:33 PM   
Veitikka


Posts: 274
Joined: 6/25/2007
From: Finland
Status: offline

quote:

ORIGINAL: calgar


quote:

ORIGINAL: Veitikka



quote:

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!

(in reply to calgar)
Post #: 8
RE: Armored Brigade Dev Diary #1 - Artificial Intelligence - 7/29/2018 3:54:32 AM   
Rosseau

 

Posts: 2163
Joined: 9/13/2009
Status: offline
We trust you know what you are doing, Veitikka. Even though they turned me down as a beta tester again. Ha!

(in reply to Veitikka)
Post #: 9
Page:   [1]
All Forums >> [Coming Soon] >> Armored Brigade >> Armored Brigade Dev Diary #1 - Artificial Intelligence Page: [1]
Jump to:





New Messages No New Messages
Hot Topic w/ New Messages Hot Topic w/o New Messages
Locked w/ New Messages Locked w/o New Messages
 Post New Thread
 Reply to Message
 Post New Poll
 Submit Vote
 Delete My Own Post
 Delete My Own Thread
 Rate Posts


Forum Software © ASPPlayground.NET Advanced Edition 2.4.5 ANSI

0.102