Jump to content

Improving the Naval AI in the Med


Recommended Posts

In my opinion the best way to help the Italian Naval AI in the Med would be to allow it to know how many Allied warships are in each section of the Med - East and West of Malta. The AI would not know exactly where enemy ships are and it would require a search for the AI to find them, but at least the AI can adopt its strategy and tactics to the level of the perceived balance of forces in each section of the Med Ocean.

Similarly if the Axis AI knows how many Allied warships are in the Med it should be able to deduce how many warships remain in the Atlantic and be able to use this information to guide its operations there.

Taking this perhaps a step too far, perhaps in the map editor players could create invisible AI Intelligence Zones (modeled after the weather zones). The AI (and only the AI) would have a chance to know how many warships are in each zone. This chance would be based on the Intelligence level of the AI - say 20% at Novice to 60% at Beginner, 80% Intermediate and 100% at Genius.

Possible Axis Naval AI Tactical Strategies in the Med

1. Search and Destroy - Moving as a fleet the AI aims to attack with all naval units on the same turn.

2. Locate - Locate Enemy Naval Forces in the Med

3. Defensive - Objective: Protect Naval Forces by stationing them in the Adriatic

4. Take Malta - Bombard/Conquer Malta

5. Blockade the Med - Keep Allied Naval Forces out of the Med

6. Interdict Merchant Shipping

7. Breakout into the Atlantic

Of course the strategy that the AI selects using Fuzzy Logic for the Med will depend upon 1) its Global Strategy and 2) the Relative Balance of forces in the Naval Sea Zones in the Med (ie Axis Naval Forces vs Allied Naval Forces)

For example - if the AI outnumbers the Allied Naval Forces in the Med then it should be more likely to select the 1) Search and Destroy Tractics or the 4) Take Malta Tactics.

If there are no Allied Naval forces in the Med then it should be more likely to 6) Interdict Merchant Shipping or 5) Blockade the Med or even 7) Breakout into the Atlantic

================================================

[ May 29, 2004, 04:27 PM: Message edited by: Edwin P. ]

Link to comment
Share on other sites

Optimal AI Responses to Human Strategies

Human Strategy #1 - Send all Allied Naval Forces (UK and French) to the Med to engage and sink the Italian Fleet before the French fleet disbands.

Current AI Actions - Italian AI engages Superior Allied Naval Forces and is destroyed after sinking 2 or 3 Allied (usually French which will disband when France falls) ships.

Proposed AI Action:

Trigger: Allied Naval Forces 1.5:1 Advantage over Italian Naval Forces in the Eastern Med Sea Zone.

Chance: 20% at Novice to 100% at Expert.

Effect: Italian Navy AI Adopts canned:Adriatic Defensive Stategy

Adriatic Defensive Strategy: Axis Navy Units in the Med move to the Adriatic Sea to present the smallest possible front to Allied Naval Units.

Any suggestions for improving this suggested AI response? Assume that AI has a percentage chance based on AI Level (20% at Novice AI, 60% Beginner, 100% Expert) to know number of Allied Warships in the Eastern Med and Western Med Sea Zones (east and west of Malta).

[ May 29, 2004, 04:24 PM: Message edited by: Edwin P. ]

Link to comment
Share on other sites

Optimal AI Response to Human Strategies

Human Strategy #2: Withdraw Allied Naval forces from the Med to the Atlantic

Current AI Actions: Italian Navy is Passive. When it attacks it does so in small groups of ships and allows itself to be destroyed in detail.

Proposed AI Actions:

Trigger: Italian Naval Forces have 2:1 Advantage over Italian Naval Forces in the Eastern Med Sea Zone and Western Med Sea Zone.

Chance: 20% at Novice to 100% at Expert.

Effect: Italian Navy AI Adopts canned: Naval Search and Destroy Strategy

Search and Destroy: AI Naval Units move carefully in massive group to locate and destroy Enemy naval units, first in the Eastern Med and then moving to the Western Med. Perhaps using a low cost corps transport/amphibious unit as a scout. The corps will move ahead of the fleet to locate the enemy so the entire Italian fleet can strike on the same turn for maximum effect.

Note: That the AI should change its operational tactics based on the current balance of forces. Switching between them as the situation changes.

Any suggestions for improving this suggested AI response? Assume that AI has a percentage chance based on AI Level (20% at Novice AI, 60% Beginner, 100% Expert) to know number of Allied Warships in the Eastern Med and Western Med Sea Zones (east and west of Malta).

[ May 29, 2004, 06:58 PM: Message edited by: Edwin P. ]

Link to comment
Share on other sites

Optimal AI Response to Human Strategies

Human Strategy #3: No Allied Naval Units in the Med

Current AI Actions: Italian AI is passive and does nothing even if they have sunk all Allied ships in the Med.

Proposed AI Actions:

Trigger: Italian Naval Forces have 3:1 Advantage over Allied Naval Forces in the Eastern Med Sea Zone AND Greece is Neutral.

Chance: 20% at Novice to 100% at Expert.

Effect:

1st) Italian AI Adopts canned: Greek Invasion Strategy THEN

2nd) Italian AI may adopt canned: Egypt Conquest Strategy OR

3rd) Italian AI may Adopt canned: Malta Conquest Strategy OR

4th) Italian AI Adopts canned: Vichy Conquest Strategy

Greek Invasion Strategy - 4 Ampibious transports to conquer Greece in 1 or 2 turns.

Vichy Conquest Strategy - Simulataneous attacks on Vichy France and Vichy Algeria

Any suggestions for improving this suggested AI response? Assume that AI has a percentage chance based on AI Level (20% at Novice AI, 60% Beginner, 100% Expert) to know number of Allied Warships in the Eastern Med and Western Med Sea Zones (east and west of Malta).

[ May 29, 2004, 07:15 PM: Message edited by: Edwin P. ]

Link to comment
Share on other sites

Will do, hopefully the scripting tools will allow for the development of most interesting and variable AI responses.

The key will be how HC allows one to incorporate AI knowledge of enemy deployments into the scripts - ie radius, zone, or some other method and whether the scripts can effect general unit actions or just economic and political events.

This this point in time the only items confirmed is that the scripts will be able to affect political actions, annexations, alliance % changes, unit movement and unit placement and resource activation.

Even with these limitations it should be possible to write scripts that will make taking on the AI much more of a challenage.

Imagine this: AI[Expert]IF Human[Axis] Occupies [Moscow] THEN (10%) Triggers [Turkey Joins Allies].

Imagine this: AI[Expert] IF Human[AXIS] AND IF Date=[6/6/1942] THEN (5%) Triggers BonusUnits [uSA: Carrier, Cruiser(2), Bomber(2)].

Imagine this: AI[Expert] IF Human[Allies} DOW Ireland THEN (5%) Triggers [Norway Joins Axis] AND [spain Joins Axis].

[ May 30, 2004, 04:04 PM: Message edited by: Edwin P. ]

Link to comment
Share on other sites

Hello Edwin,

I think that your opinions are vary valuable, and i read all your post because i like them a lot.

However, however... This time i would like to add one idea... You say many times:

"This chance would be based on the Intelligence level of the AI - say 20% at Novice to 60% at Beginner, 80% Intermediate and 100% at Genius."

In my opinion your idea is good but i don´t like that the probability was so high... Why??

Okay, let´s think about it: i want to attack Italy... What can i do: i send a lot of ships to Mediterranean area... and what does AI?? In a hight percentages of times It sends italian ships to Adriatic area... then... the way to Rome is free, without any hesitation, to conquer Italy...

I know that italian navy could be destroyed because of the superiority of Allied force... but i think that a chance must be done... and if you know that AI will do a strategy at 100% of probability... then... :(

This is the same case as in SC1: Germany AI never tries to make sealion until Russia is defeaten. So 100% probabilities are a bad thing... in my opinion, of course...

Hope this help to improve your idea.

Regards,

Link to comment
Share on other sites

DAK-Bin, thanks for the suggestions and your points are very true.

I agree that 100% proabilities for general strategy is a bad idea and your point with it leaving Rome open for invasion is a good one, so let's refine the AI rules that I suggested.

Perhaps reduce the percentage for Genius Level AI from 100% to 95% or 90%? Essentially, here I tried to make the AI more likely to fight smarter at higher AI levels and to use the strategies favored by the best players instead of relying on the general purpose AI built into the game engine.

The key as your pointed out is to define these circumstances very carefully and to understand its implications.

Now let's analyze he circumstances of where this strategyt might be used to see if it can be improved.

Case 1: Early Game - Turn of Italian Entry ino the War and allies have 1.5: 1 Superiority

Case 1.1 Allied Naval Units Only - Best Solution - Adriatic Defense - Preserves fleet until UK navy is needed elsewhere or reinforcments can be deployed - ie Airpower or building another sub.

Case 1.2 Allied Naval Units and Amphibious Transports - The question here is can the Allies take Rome AND if so can the Italian fleet stop them. If not then the Adriactic defense is probably the best choice. It should be noted that if the Allied can land to the east of Rome then it becomes very hard to take Rome on one turn, and the Germans can operate in reinforcements, perhaps an Armor unit to replace the Italian corps.

Case 1.3 Allied Naval Units with Carriers and Ampbious Transports. Is it best sacrificing the fleet to stop the invasion force or using it block the Adriatic from Allied transports?

The Adriatic Defense Strategy is probably a good idea at the start of the game and perhaps later in the game IF (the Allied forces are NOT accompanied by Amphibious transports) OR (the Italian Fleet can not interdict the amphibious transports before they can land troops AND the tiles next to Rome are undefended). It may also be a good strategy under these conditions if the objective is to prevent amphibious landings from the Adriatic Sea, thus securing the Eastern flank of Italy.

In addition, if the AI can sink a carrier or two with a high probability it might be worthwhile to forsake the Adriatic Defense. Notice how a simple AI rountine can become very complex.

Also, note that the routine as written did not take account of Axis airpower that could support the Italian Fleet or spot enemy vessels.

And note that the routine's pertains only to the balance of forces in the Eastern med and ignored the number of enemy ampibious transports in the Med. Perhaps a different routine is needed if X+ amphibious transports are in sea zone X or Y?

In fact, your bring up another point - How best to defend Italy against an Allied invasion, in the start, middle and end games, but that is another thread (which builds on a suggestion that the AI reclaim all Tech Chits for MPPs if the Capital is threatened, something that the AI in SC1 does not do, even when the UK is facing a sealion and London has fallen to the Axis.)

[ May 31, 2004, 03:07 PM: Message edited by: Edwin P. ]

Link to comment
Share on other sites

Hello Edwin,

There is no doubt that if AI is able to know how many ships, carriers and transport has the allied player in Med is possible to deploy a good defence of Italy (at least better than actually does...)

Your explanations like me and it sounds great. I will support specially one of them: if carriers and transports are in Med area it is needed the use of air spotting to search for allied activity (at least for Rome area, and sicily?).

Right, to write a good script is very difficult, but this threads help a lot (i hope so...) Thanks for your time!!!

See you!

Link to comment
Share on other sites

DAK_bpin

Question for the Italian AI: When should Italy purchase an air unit? Should that unit be a bomber or an Air Fleet and should it be kept in the Italy for Spotting, used in the Med for spotting or attacking or should it be used on other fronts -ie France, et al.

In my mind, the Italian AI should pick one of several strategies to guide its actions - 1) support German Europe Strategy (current strategy in SC1), 2) Conquer the Med Strategy (aim to conquer Greence, then Egypt, and then Iraq or Vichy & Spain and Perhaps Malta), 3) Breakout to the Atlantic Strategy or a 4) Defend the continent strategy where the AI builds an army to defeat any allied invasion of Europe amnd lets the Germans conquer Russia. It should also consider #5) the rarely used Turkish Invasion strategy.

IF the AI could select randomly one of these strategies to guide its actions it would make for a most interesting game.

For example

3) Breakout to the Med Strategy would have the AI research Gunlaying radar or advanced subs, perhaps building an additional sub or two and then breaking out into the Atlantic with a large fleet. The objective is to isolate America from Europe and sink the Allied naval fleet.

Parameters:

Research - Gun Laying Radar, Subs

Build

Conquest Objectives

4) Defend Europe - the AI focuses its expenditures on building a strong army to defeat any Invasion force.

Parameters:

Research - Infantry, Anti-Tank and possibly anti-air.

Build - Corps and Armies, maybe a bomber for spotting.

Geographic Limits - Italian Units are limited to Western Europe and the Med Zones. (this means that you will not see Italian units in Russia)

Conquest Objectives - Greece, if Egypt is weakly defended then Egypt otherwise Vichy for the production.

Italian AI Decision Tree

IS UK Navy Severely Weakened after the Fall of France and the Italian Navy Strong (Italian Navy 4 or more ships)

Yes

10% Support German in Europe Strategy

20% Conquer the Med Strategy

50% Breakout to the Med Strategy

10% Defend Europe

5% Turkish Feint

Is the British Navy Strong and the Italian Navy Strong after the Fall of France

25% Support German in Europe Strategy

30% Conquer the Med Strategy

10% Breakout to the Med Strategy

30% Defend Europe

5% Turkish Feint

Is the British Navy Strong and the Italian Navy Weak After the Fall of France (ie Italian Navy 2 or Fewer ships)

30% Support German in Europe Strategy

30% Conquer the Med Strategy

0% Breakout to the Med Strategy

30% Defend Europe

10% Turkish Feint

Note that as HC its best to have the AI do a few things well, so maybe, it would be best to reduce these 5 strategies to just 3 and leave out the Turkish Fient (which I think is way cool) and the Breakout to the Atlantic (which is also cool) which would take much more time to program well and be rarely used.

What is the Turkish Feint?

Italian Fleets builds up experience bombarding Malta while Italy builds HQ and lots of Corps. They Fleet sails for the Agean, when war is declared on Russia the fleet bombards the Turkish port to zero, and a corps lands to sieze the straits on turn 2, and then Italian transports sail through the straits heading for the Russian Oil Fields. Three warships follow them into the Black Sea to sink the Russian Navy. It forces the Russian player to weaken his front lines in order to guard his rear. Sparingly used it can be a most unpleasant surprise for the Allied player.

[ June 01, 2004, 12:31 PM: Message edited by: Edwin P. ]

Link to comment
Share on other sites

Optimal AI Response to Human Strategies

Originally posted by Curry:

Italian Navy goes back to pounding Malta. Slowly but surely building up experience for her undamaged Navy....and several turns later......Italian ships continue bombardment of Malta. Ships at 3 experience bars now as Malta holds out.

Human Strategy #3: Withdraw all Allied Naval forces from the Med to the Atlantic and stations a Corps in Malta.

Current AI Action: Some or no Italian warships bombard Malta, they stay near ports in Italy or Libya. The Italian sub does not interdict merchant shipping in the Med.

Proposed AI Action:

Trigger: No Allied Warships in the Med AND Allied Land Unit (Corps, Army, Armor or HQ) in Malta.

Chance: 20% at Novice to 90% at Expert.

Effect: Each turn all Italian surface warships, if assigned no other objective, with experience less than 4 bombard Matla and any Italian subs interdict merchant shipping routes in the Med to gain experience.

Any suggestions for improving this suggested AI response? Assume that AI has a percentage chance based on AI Level (20% at Novice AI, 60% Beginner, 100% Expert) to know number of Enemy Warships in the Eastern Med (East of Malta), Western Med (West of Malta), Baltic and Altantic Sea Zones.

[ June 02, 2004, 09:46 AM: Message edited by: Edwin P. ]

Link to comment
Share on other sites

Some thoughts on my proposed Sea Zone Intelligence System for the AI.

1. Its Simple - The AI needs only to know the number of warships in a Sea Zone to make a strategic decision. It does not need to know where the ships are, only the number of ships. It makes script writing easy if this number, or a ratio using this number, can be used to trigger AI actions.

2. Its Realistic - During WWII the Axis powers had a good idea of how many enemy warships were in the Med. They had observers in Egypt, Beruit, Turkey, Libya, Vichy Algeria, Morrocco, Spain, Sardnina, and Italy. They would count the number of warships that sailed through the Suez Canal and the Straits of Gibraltar and subtract the number of ships sunk.

3. Its Human - Many human players have a good idea of how many warships are in the Med. They look at the Reports to see how many US ships there are and if it says the US has 2 ships and those 2 ships are sighted in the Atlantic they know that those two are not in the Med.

4. Its Fair - It tells the AI only that there are human ships in this sea zone, but not where they are or what type they are. The human player can still launch surprise attacks on the AI and ambush the AI's units.

5. Its Intelligent - The AI has a chance, based on its level, Novice 20% thru Genius 100% to access this information. At Genius level you can count on the AI playing a much stronger game as it has access to more intelligence on which to base its actions.

[ June 01, 2004, 10:32 PM: Message edited by: Edwin P. ]

Link to comment
Share on other sites

If Edwin P doesn't some day down the gaming road... design, test and market a Division-level WW2 game, that has! :D

Everything! in it, to include what D.David Eisenhower liked on his Belgian waffles every fourth morning come June... AND!

How far and in what precise arc >>>> a sparrow flies once it has carom'd off that there Vulcan-wing of one of them ME-262 Jet things, as it is roaring off the runway, well,

I'll eat my old beloved Cleveland Indians baseball hat <<<< backwards. ;)

[ June 02, 2004, 12:02 AM: Message edited by: Desert Dave ]

Link to comment
Share on other sites

Desert Dave if I find the time I might take you up on that, this week I am in Chicago, next week Toronto and then its on to Atlanta.

But seriously, from all the comments I have read about SC2 its going to be a real blast of a game, a real old fashioned barn burner of a title.

[ June 02, 2004, 12:52 AM: Message edited by: Edwin P. ]

Link to comment
Share on other sites

Simplified Turkish Feint for the Italian AI

Trigger: No Allied Warships in the in the Med WHEN Russia reaches 70% readiness.

Chance: 0% beginner, 2% intermediate (1 in 50 games), 5% Genius (1 in 20 games)

Effect: Turkey remains neutral but, Axis Naval Units and Transports can move through the Turkish Port and Straits into the Black Sea. Italian AI builds a fleet of 3 to 5 Amphibious Transports that will sail through the straits to invade South Eastern Russia after Germany DOW Russia or Russia DOW Germany.

Just something to give the human Allied player an interesting surprise when he is employing his cookie cutter Russian defense against the Axis AI. Then he faces the prospect of weakening his front lines in order to protect his oil fields.

Of course, the same code could be used in reverse to allow the AI Russian fleet to enter the Med or the AI UK fleet to seek shelter in the Black Sea. Imagine the Surprise on the face of the Italian Admiralty with they hear that transports heading to Cairo were attacked by a Russian battlefleet!

In a script this could possibly be coded by reducing the value of the Turkish Port to zero and changing ownership of the hex that controls the straits. Any comments?

[ June 02, 2004, 04:39 PM: Message edited by: Edwin P. ]

Link to comment
Share on other sites

Hi,

I like too much your new ideas about AI in the Med. Just two questions...

Simplified Turkish Feint for the Italian AI
It´s amazing but is it real (historically i mean)? That is, it could really happend?

The other question is: you talk about AI strategies for Italy but you don´t consider the German situation... don´t you think that the algoritm must consider the situation of German (if war goes good for them or not)? At least for this two situations:

Support German in Europe Strategy
Defend Europe
For example, if war in Europe is bad for German... perhaps Italy could help... or perhaps not? But the % could change??? (in fact, i think that Italy (mainly) must support Germany instead of make war on its own...)

Answering to your question about when Italy must buy one air Fleet. i think that the first unit that Italy must buy (of course if Motherland is safe) is an air unit. Then, if there were allied transports in Med ---> air unit to spotting Med.

If there aren´t allied transports in Med, then air unit can be used there where it was useful.

Hope this help.

Sorry for my english.

;)

Link to comment
Share on other sites

1. RE: Turkish Feint - Not realistic, but a great game strategy, much like the Allies attacking Ireland or the Germans invading Canada. But who knows, perhaps think of this as German raiders landing in South Eastern Russia where the locals really didn't like the communists. The biggest problem that Germany had in the Black Sea was the presence of the Russian Fleet, Germany lacked any warships in this area and Turkey would not have allowed the Italian Navy to enter the Black Sea for fear of being drawn into the war.

2. Agreed that the Italian AI actions should depend upon overall German strategy and that later in the war the Italian AI should respond the the effects of the war in Europe. As for which unit the Italian AI should purchase first, an air unit OR a bomber OR a HQ would be my first choice in most situations.

[ June 02, 2004, 08:40 PM: Message edited by: Edwin P. ]

Link to comment
Share on other sites

  • 5 weeks later...

In the Med I think that the Allies have 3 basic Strategies for the opening game:

1. Withdraw the forces to the Atlantic

2. Mass Allied Naval forces in the Med in an attempt to sink the Italian Navy when it enters the war and withdraw them to the Atlantic after 2 or 3 rounds of combat.

3. Maintain a small force in the Eastern med to defend Egypt and the Middle East. (SC1 AI's Strategy)

From first looks it appears as if each of these strategies would be realatively easy to program when compared to programming an Axis invasion of the Nordic Countries or a Sea Lion or an Allied Invasion of Sicily and Italy.

The key issue is does the does the designer want to include map/scenario specific AI routines or more general routines that can be accessed no matter what the map design is.

In either case I suggest that the editor include the ability to define invisible Sea Zones (aka Weather Zones) that would be be used by the AI to guide its actions for the deployment and use of Naval Forces.

I also think that the AI needs to be able to access a core set of deployment tactics for its naval units - Blockade, Battle Group, Scout, Shelter, Ambush , Hide - switching from one to the other as the situation demands.

Battle Group - Concentration of Naval Units designed to engage and sink the enemy, no more piece meal attacks.

Hide - Units seek to hide, whether it be in the south atlantic, Red Sea or the Agean, Eastern Med

Blockade - Danish Straits, Gibraltar, Atlantic, etc. - a wall of ships

Scout - Locate enemy ships and units

Shelter - seek a hex area where units have the best defensive position

Ambush - stay out of spotting range while enemy advances into your trap, then attack. Unlike the current AI which attacks at the first opportunity.

[ July 02, 2004, 12:35 PM: Message edited by: Edwin P. ]

Link to comment
Share on other sites

×
×
  • Create New...