RE: AI (general): location v. destruction of enemy (Full Version)

All Forums >> [New Releases from Matrix Games] >> World in Flames >> AI Opponent Discussion



Message


peskpesk -> RE: AI (general): location v. destruction of enemy (2/4/2008 11:12:50 PM)

If we focues only on the defenders choice.

When defending, default choose is assault because:
- Assault gives a higher chance of keeping the hex than Blitz
- Assault inflicts more casualties to attacker than Blitz.
- Assault disrupts the attacker more than Blitz.
- Assault does not give the attacker the chance of a breakthrough.

Possible exceptions are:
- The attacker does not having adequate casualties on hand (usually no divisions just, HQ-A, ARM, MECH).
- The defender needs units more than the hex (usually early war China (Russia sometimes) has ground to give but not units).
- The attacked unit(s) is an expensive or key unit (usually just a single, expensive unit, ex Chinese HQ attacked and the attacker has low cost units to scarify).
- There is a limited risk with a Blitz attack when:
* The effect of a breakthrough is small (usually in bad weather/terrain or the defender has defences in depth behind the hex being attacked or the attacker does not have adequate stack(s) to move into the break).
* The effect a retreat is small (usually all units have valid retreat path).
* The effect on the frontline is small (usually the hex being attacked is NOT a key part of the front).
* The effect of later, mop up attacks are limited (usually late in turn or risk of bad weather or attacker has high chances of being flipped and has a low reorganization capability).




Shannon V. OKeets -> RE: AI (general): location v. destruction of enemy (2/5/2008 12:53:07 AM)

Thanks.




npilgaard -> RE: AI (general): location v. destruction of enemy (2/23/2008 3:36:22 PM)

quote:

ORIGINAL: peskpesk

If we focues only on the attacker choice.

The default choose is Blitz, because:
- Blitz gives a higher chance of taking the hex than Assaults
- Blitz inflicts fewer casualties to attacker than Assault.
- Blitz disrupts the attacker less than Assault.
- Blitz gives a chance of a breakthrough.
- Defending units with no valid retreat path are killed.


Two important additions:

If playing with 2D10 CRT then blitz in the open in fine weather with lots af ARM/MECH is crucial to a successful offensive - the blitz-bonuses (e.g. 3 stacks each providing +3 means a +9 bonus - even against a max defended hex with a -5 modifier this still means a net +4 bonus).
So in Russia and late war western front, where there are lots of ARM/MECH blitz is the way to go imho (if nothing else, then because of the huge bonus from multiple blitz-stacks) - only major exceptions is when attacking cities or other non-blitzable hexes, or in non-fine weather. Much better to gather all available blitz-units for a single, high-bonus blitz attack (that will also mean enough units to exploit a breakthrough result) than doing multiple attacks with few blitz-units.

Second: in long summer-turns with expected good weather, breaching the enemy lines and thus forcing him to retreat and make a new line or to leave his units in a poorer defensive position (especially if the attacker manages to breakthrough at two points 2-3 hexes apart - then the defending units in between are unable to escape).
Also, if planning to or using land offensive chits such breakthroughs can be very useful.
Breakthroughs can lead to a somewhat vulnerable position for counterattacks for the attacker, though - especially if the defender has lots of ARM/MECH as well (e.g. in Russia). One way to counter this is to make ground strikes not only at the chosen target hex (or maybe even leaving that hex alone if having enough blitz+odds level bonuses for a unsuccessful attack), but instead ground strike the adjacent hexes. That will limit counterattack capability and leave those flipped units vulnerable to attack next impulse, from 3-4 sides (usually a breakthrough means an additional 1-2 sides on a defending stack if it doesn't retreat into a better position.)

So, imho blitz is by far the best way do attack, even if losing an occasional MECH (btw.imho it is not worth it to build MOTs to take the blitz casualty - better to pay that extra BP and then get a MECH, which provides a +1 blitz bonus).




Shannon V. OKeets -> RE: AI (general): location v. destruction of enemy (2/23/2008 8:51:40 PM)


quote:

ORIGINAL: npilgaard

quote:

ORIGINAL: peskpesk

If we focues only on the attacker choice.

The default choose is Blitz, because:
- Blitz gives a higher chance of taking the hex than Assaults
- Blitz inflicts fewer casualties to attacker than Assault.
- Blitz disrupts the attacker less than Assault.
- Blitz gives a chance of a breakthrough.
- Defending units with no valid retreat path are killed.


Two important additions:

If playing with 2D10 CRT then blitz in the open in fine weather with lots af ARM/MECH is crucial to a successful offensive - the blitz-bonuses (e.g. 3 stacks each providing +3 means a +9 bonus - even against a max defended hex with a -5 modifier this still means a net +4 bonus).
So in Russia and late war western front, where there are lots of ARM/MECH blitz is the way to go imho (if nothing else, then because of the huge bonus from multiple blitz-stacks) - only major exceptions is when attacking cities or other non-blitzable hexes, or in non-fine weather. Much better to gather all available blitz-units for a single, high-bonus blitz attack (that will also mean enough units to exploit a breakthrough result) than doing multiple attacks with few blitz-units.

Second: in long summer-turns with expected good weather, breaching the enemy lines and thus forcing him to retreat and make a new line or to leave his units in a poorer defensive position (especially if the attacker manages to breakthrough at two points 2-3 hexes apart - then the defending units in between are unable to escape).
Also, if planning to or using land offensive chits such breakthroughs can be very useful.
Breakthroughs can lead to a somewhat vulnerable position for counterattacks for the attacker, though - especially if the defender has lots of ARM/MECH as well (e.g. in Russia). One way to counter this is to make ground strikes not only at the chosen target hex (or maybe even leaving that hex alone if having enough blitz+odds level bonuses for a unsuccessful attack), but instead ground strike the adjacent hexes. That will limit counterattack capability and leave those flipped units vulnerable to attack next impulse, from 3-4 sides (usually a breakthrough means an additional 1-2 sides on a defending stack if it doesn't retreat into a better position.)

So, imho blitz is by far the best way do attack, even if losing an occasional MECH (btw.imho it is not worth it to build MOTs to take the blitz casualty - better to pay that extra BP and then get a MECH, which provides a +1 blitz bonus).

Ok.

What Peter and I are working on is answering the very narrow question of Blitz or Assault CRT, as posed every time, just before a land combat is about to be resolved. I have purposely take a very simple decision point so we can define the language for the AI opponent (LAIO). I expect before the end of the month, I will be able to post a mostly complete rule set for that decision, written in LAIO. By the way this is FM 33, the 33rd decision point in the list of decisions to be made by a Field Marshal (one of the AIO's 8 decision makers - DMs)




npilgaard -> RE: AI (general): location v. destruction of enemy (2/23/2008 9:49:10 PM)

33! - there sure is a lot of decisions to be taken at each and every action. The complexity of the AI is quite overwhelming - I am very impressed by the way you handle it.

Regarding the blitz/assault decision:
I think that decision has to be taken much earlier (or at least be considered much earlier). Often an attack in the open is only worth it if blitz can be chosen, otherwise one won't get all those blitz-bonuses, and then the attack will be to risky. So when deciding where to attack, before moving the units into position, the preferred attack-type (blitz or assault) should be determined. Also, if attacking e.g. a city, then those valuable ARM/MECH (/MOT) should not be moved there - leave that attack to MIL/GAR/INF if possible.
So maybe two rounds of combat table decision is required - at the start of the impulse, when deciding target hexes, and then just before the attack.




Shannon V. OKeets -> RE: AI (general): location v. destruction of enemy (3/3/2008 11:14:51 PM)

Here is the first rule that Peter and I put together for the AI Opponent. We are still feeling our way forward but this looks pretty complete.

I think you can figure out how this works without more details from me.

[image]local://upfiles/16701/E53EE0C7B19747F09D3BC0E8EB608F1D.jpg[/image]




Froonp -> RE: AI (general): location v. destruction of enemy (3/3/2008 11:45:40 PM)

quote:

ORIGINAL: Shannon V. OKeets

Here is the first rule that Peter and I put together for the AI Opponent. We are still feeling our way forward but this looks pretty complete.

I think you can figure out how this works without more details from me.

This looks good !!!




warspite1 -> RE: AI (general): location v. destruction of enemy (3/3/2008 11:50:56 PM)

Steve

How does the AI "know" to defend against attack?  For example when playing WIF and on the defensive I never wanted to commit my aircraft too early in the turn unless the hex was abolutely vital. 

However, if the weather was good for attacking and again I was on the defensive, I would try and counter as many ground strikes as possible to avoid the +1 modifier.

What is the process for the AI a) not defending, b) some aircraft defending or c) throwing the Kitchen sink at the enemy?
What is the process for choosing to defend Ground Strikes or waiting and choosing to provide air support in a battle?  




npilgaard -> RE: AI (general): location v. destruction of enemy (3/4/2008 12:02:22 AM)

Looks very good!
Good rules of thumb you are using.

A few comments:
I assume that ACV is an overall value of the AC (how is the ACV defined?)

I think maybe some kind of 'how-important-is-success-of-the-mission'-variable, and a 'high-importance-AC'-flag is needed.
With low mission importance it can be worthwhile to abort if things start looking bad. In such case, it is often better to have the best AC (ACV value-wise or if 'important') in the back, to avoid it being shot down (especially if playing without the bounce optional rule).
E.g.: carrying out an escorted not-to-important bombing mission on land having both LNDs and a single long range NAV with few land bombing factors which doesn't have anything better to do atm, but which will be needed for ASW next turn - in that case it might be better to place the important NAV in the back to protect it (even though it has only a few factors), and then just abort if things look bad.

Other 'important' ACs could be (assuming playing with relevant options):
7-range CVP (if playing with the search bonus option, and only a few 7-range are available)
white-circle bombers
long range NAV if needed against fx ASW
red-circled AC if facing lots of ARM/MECH
Late game: LND capable of carrying A-bomb
Long range FTR if needed to reach high sea box
LBA FTR in naval air battles if plenty of CVPs (to maintain the +1 bonus) - especially if plenty of CVPs are in reserve
Night fighters if risking enemy night missions in the near future
Long range FTR is facing a large front and has little air cover
FTR with naval air factor if required to maintain supply

If more than one or two of one of the above is available, then their 'importance' decline, since losing one of them is not a crucial blow, and their special abilities are probably included in the ACV anyway (?).

Night missions:
Night fighters always in front, except if much poorer than other FTR

Btw - what does difficulty 4 mean?




Norman42 -> RE: AI (general): location v. destruction of enemy (3/4/2008 12:02:30 AM)

I'm not sure what the term ACV stands for ...Air Combat Value? Is it a production cost value? 

Bombing factors wouldn't be the only variable in the choice of front bomber.  Since a 4 engine bomber costs 2x more and takes 2x longer to produce then a 1 engine bomber it might be worth protecting even at a potentially slight downgrade in bomb factors getting through.  In sorting out these front bombers you might choose a (2) cost bomber as front aircraft instead of a (4) cost bomber depending on the situation, even if the (2) cost aircraft had superior bomb factors.

An example:

The Commonwealth has 2 bombers going on a Ground Support Mission: one 1937 Fairey Battle (2 tac factors, 2 cost), and one 1940 Halifax Mk1 at extended range (1 tac factor, 4 cost).

You would very likely put the cheap 2 cost bomber front and have a better chance of surviving with the 4 engine bomber, especially if you only need 1 bomber to get through to achieve your goals. As well the Halifax bombers values are being artificailly deflated due to extended range in this particular fight, further pushing the potential risk of a superior aircraft.

Perhaps use something like (Modified Bomb Value + Aircraft Cost)/2 to represent the comparative values for choosing front aircraft.

In the above example that would make the 1 engine Fairy Battle have a 2 value, and the 4 engine Halifax have a 2.5 value, putting the better aircraft (the Halifax) in the rear (safer) position.





peskpesk -> RE: AI (general): location v. destruction of enemy (3/4/2008 12:26:23 AM)

Combat Values
The combat value of any land unit on the map is measured in CVs.
Conceptually, the CV cost of losing a unit on the map measures the unit’s combat worth.
The simplest case is setting the value for a 6-4 infantry unit. It’s strength is 6 and that gives it an CV of 6.

Air Unit Combat Values
For an air unit, its CVs (ACVs) depend on its primary purpose: air-to-air factor for fighters,
and tactical, strategic, and naval factors for bombers. Air transport units (ATRs) are handled differently.

/Peter




Shannon V. OKeets -> RE: AI (general): location v. destruction of enemy (3/4/2008 12:39:30 AM)

CV is Land combat value; ACV is an Air combat value; and NCV is a Naval combat value. The last two can be converted to CVs when necessary.

Calculation of these is very dependent on the situation. So the unit's factors, range, and cost are only part of the story. The current circumstances in the theater of operations (e.g., whether air to sea factors are crucial because it is the MED early in the war, even if the unit is currently flying a tactical mission) drives the relataive worth of the various factors (tactical, strategic, air to sea, and air to air). If there is a scarcity of fighters, then the air to air rating for a bomber might be worth a lot, or ignored if in the future escorting fighters can be practically guaranteed or there are no enemy fighters.

I expect to have to tweak the parameters for determining ACV and NCV as part of the AIO development/refinement process.

For every example I gave for ACV, a comparable one can be said about NCV as well.
------------
This rule set for AM 05 is narrowly focused. It does not know how the units became engaged in air to air combat. Its awareness of the mission is indirect, in that the overall value of the bombers accomplishing the mission is all that it is concerned with.

Whether to stay for another round or not, which casualties to take/inflict, etc. are all separate decisions. Just as they are for human players.




npilgaard -> RE: AI (general): location v. destruction of enemy (3/4/2008 1:10:23 AM)


quote:

ORIGINAL: Shannon V. OKeets
Calculation of these is very dependent on the situation. So the unit's factors, range, and cost are only part of the story. The current circumstances in the theater of operations (e.g., whether air to sea factors are crucial because it is the MED early in the war, even if the unit is currently flying a tactical mission) drives the relataive worth of the various factors (tactical, strategic, air to sea, and air to air). If there is a scarcity of fighters, then the air to air rating for a bomber might be worth a lot, or ignored if in the future escorting fighters can be practically guaranteed or there are no enemy fighters.


Sounds very good indeed! Looking forward to face such a well-thought-out AI [:)]




composer99 -> RE: AI (general): location v. destruction of enemy (3/4/2008 7:46:21 PM)

Wouldn't you have a provision for sorting bombers by air-to-air rating (highest first) if there are no fighters? I do not see one in the code - I do see a call to sort the bombers by a2a rating; just not under those specific circumstances.




Shannon V. OKeets -> RE: AI (general): location v. destruction of enemy (3/4/2008 8:29:08 PM)


quote:

ORIGINAL: composer99

Wouldn't you have a provision for sorting bombers by air-to-air rating (highest first) if there are no fighters? I do not see one in the code - I do see a call to sort the bombers by a2a rating; just not under those specific circumstances.

You're right. I'll fix that so there is a check for no fighters as the first condition to check for sorting bombers.




Shannon V. OKeets -> RE: AI (general): location v. destruction of enemy (3/4/2008 8:47:31 PM)

Here is the revised rule set.

Rule Set
// ****************************************************************************
// This rule set uses the following variables:
// FFighters = friendly fighters
// FBombers = friendly bombers
// TestPhase = phase of the game for which the rule is being executed. Typically this is
// equal to Phase, but the rule can also be used to evaluate hypothetical situations.
FighterList := FFighters
BomberList := FBombers
TestPhase := Phase
// ****************************************************************************
// Primary rule
// ****************************************************************************
// If there is none or one fighter and none or one bomber, there is no decision to make.
// ****************************************************************************
IF FighterList^Count > 1
THEN R.SortFighters

IF BomberList^Count > 1
THEN R.SortBombers
// ****************************************************************************
// There is more than one fighter, either intercepting or flying escort.
// Sort fighters in descending order by air-to-air factor, break ties by ACV.
// ****************************************************************************
R.SortFighters
SORT (FighterList, Air2Air, DESC, ACV, ASC)
// ****************************************************************************
// There is more than one bomber/air transport.
// ****************************************************************************
R.SortBombers
IF FighterList^Count = 0
// ****************************************************************************
// There are no fighters; sort so the bomber with the best air-to-air is in front, break ties by ACV.
// ****************************************************************************
THEN SORT (BomberList, Air2Air, DESC, ACV, ASC)
ELSE IF TestPhase IN (pGroundSupport, pGroundStrike)
// ****************************************************************************
// Sort so least capable bomber is in front, break ties by ACV.
// ****************************************************************************
THEN SORT (BomberList, Tactical, ASC, ACV, ASC)
ELSE IF TestPhase IN (pAirSupply)
// ****************************************************************************
// Sort least capable bomber is in front, break ties by ACV.
// ****************************************************************************
THEN SORT (BomberList, AirTransport, ASC, ACV, ASC)
ELSE IF TestPhase IN (Air transport, pParadrop)
// ****************************************************************************
// Sort so bomber with least valuable cargo is in front, break ties by transport’s ACV.
// ****************************************************************************
THEN SORT (BomberList, TransportedBy^CV, ASC, ACV, ASC)
ELSE IF TestPhase IN (pStrategicBombardment, pCarpetBombing)
// ****************************************************************************
// Sort so least capable bomber is in front, break ties by ACV.
// ****************************************************************************
THEN SORT (BomberList, Strategic, ASC, ACV, ASC)
ELSE IF TestPhase IN (pPortAttack)
// ****************************************************************************
// Sort so least capable bomber is in front, break ties by ACV.
// ****************************************************************************
THEN SORT (BomberList, AirSea, ASC, ACV, ASC)
// ****************************************************************************
// Sort so the least valuable bomber is in front.
// ****************************************************************************
ELSE SORT (BomberList ACV, ASC)




warspite1 -> RE: AI (general): location v. destruction of enemy (3/4/2008 10:08:20 PM)

Steve: Re my questions in post 68, how will the AI decide what aircraft to fly to a given hex whether in attack or defense?  




Shannon V. OKeets -> RE: AI (general): location v. destruction of enemy (3/4/2008 10:25:54 PM)

quote:

ORIGINAL: warspite1

Steve: Re my questions in post 68, how will the AI decide what aircraft to fly to a given hex whether in attack or defense?  

A very difficult question.

Where to begin?

Air units are built by the Manufacturing Council as a trade off of how to spend the available BPs. There are several DMs (decision makers) providing input to that: MC wants fighters and AA to defend against strategic bombing and convoys to build/maintain the convoy pipelines, Foreign Liaison wants to send BPs to allies, Grand Strategist wants strategic bombers and fighter escorts for strategic bombing missions against the enemy, JCS potentially wants all combat unit types to fulfil requests by the Air Marshal, Admiralty, and Field Marshals. What to build is one of the hardest decisions.

Once the air units arrive as reinforcements, the Air Marshal assigns them to theaters of operations, which may put them under the control of the MC, GS, AD, or FM, for the purposes described above.

Those DMs get to use their air units as they see fit. Bascially, they have made the case to the AM that the value of each air unit for their air missions is higher that the value for other air missions. So, the Admiralty might have a fighter to fly on a naval air mission, and the MC is not going to have it available to defned against Strategic bombing. I might put in emergency exceptions, but they would be just that.

Therefore, a Field Marshal knows which air units are his to use during the turn. It is up to him to make the trade-offs between offense and defense. Note that each air unit has an ACV that can be translated into a CV (land combat value), so the FM can decide whether the risk to the air unit flying a mission is justified by how it will lower the risk to a land unit.

The squishy area is how to incorporate the value of a hex (e.g., losing Paris/Leningrad/London) into this mix.




warspite1 -> RE: AI (general): location v. destruction of enemy (3/5/2008 8:24:05 AM)

Also - just a few random thoughts at present:
- Re-basing after an attack or defense.  If Germans say in Russia in 41 or 42 for example, need to rebase fighters as far forward as possible.  If on the defensive, need to ensure they are not on the front line in case the hex is lost while they are flipped.
- Needs to have a random element to avoid the human knowing what the AI will do.  E.g the attack on Poland.  Sometime the Polish aircraft fight and sometimes not (to save the pilot for the CW).
- Early in the turn as a general rule do not commit all aircraft too soon.
- On key hexes make defence of ground strikes a goal to avoid the + 1, other wise better off taking the hit and providing defensive bombing factors.
- I think all options should have a % based randomness to avoid predictability. For example despite the comment on defending against ground strikes above, the AI should sometimes defend non-key hexes anyway so the human cannot confidantly know the hex won`t be defended.
- Finally can the AI scan to check who has air superiority in a given hex and again have its decision partly influenced by that?

Thats all I can think of for now and am just thankful I do not have to try and program this!!




Shannon V. OKeets -> RE: AI (general): location v. destruction of enemy (3/5/2008 10:10:31 AM)


quote:

ORIGINAL: warspite1

Also - just a few random thoughts at present:
- Re-basing after an attack or defense.  If Germans say in Russia in 41 or 42 for example, need to rebase fighters as far forward as possible.  If on the defensive, need to ensure they are not on the front line in case the hex is lost while they are flipped.
- Needs to have a random element to avoid the human knowing what the AI will do.  E.g the attack on Poland.  Sometime the Polish aircraft fight and sometimes not (to save the pilot for the CW).
- Early in the turn as a general rule do not commit all aircraft too soon.
- On key hexes make defence of ground strikes a goal to avoid the + 1, other wise better off taking the hit and providing defensive bombing factors.
- I think all options should have a % based randomness to avoid predictability. For example despite the comment on defending against ground strikes above, the AI should sometimes defend non-key hexes anyway so the human cannot confidantly know the hex won`t be defended.
- Finally can the AI scan to check who has air superiority in a given hex and again have its decision partly influenced by that?

Thats all I can think of for now and am just thankful I do not have to try and program this!!

Yes, I have these items listed. For randomness I prefer 3 categories: always do good stuff, never do bad stuff, and only randomize stuff in between.




brian brian -> RE: AI (general): location v. destruction of enemy (3/10/2008 6:03:25 AM)

I can't remember, but will the AI play using fractional odds? With fractional odds, the value of flying in a 1 ground support point fighter-bomber on defense is only 1 point of combat factors. Without fractionals, a 1 point plane can change odds levels completely and that air mission is far more valuable. Playing with fractionals, more air is used for ground strikes than for ground support.




Shannon V. OKeets -> RE: AI (general): location v. destruction of enemy (3/10/2008 12:18:03 PM)


quote:

ORIGINAL: brian brian

I can't remember, but will the AI play using fractional odds? With fractional odds, the value of flying in a 1 ground support point fighter-bomber on defense is only 1 point of combat factors. Without fractionals, a 1 point plane can change odds levels completely and that air mission is far more valuable. Playing with fractionals, more air is used for ground strikes than for ground support.

It's an optional rule, so the AIO will play whatever the player selects. The AIO looks at probabilities of combat outcomes, and there is no branching logic related to optional rules in use. The calculations for results check for optional rules, just as during game play, but the AIO simply looks at what is likely to happen (probable outcomes).




Mitchellvitch -> RE: AI (general): location v. destruction of enemy (3/10/2008 2:17:30 PM)

One other possibility for the AI to consider when flying air missions (I don't think it has been mentioned...):

Fly two air missions into areas with only one FTR providing cover, especially useful for strategic bombing, or a combination of strategic bombing and port attack.




Sewerlobster -> RE: AI (general): location v. destruction of enemy (3/30/2008 5:20:08 PM)

Some threads are gems because of their topics, but for me this one transcends because it just fills me with the competetive desire to play this game. Deciding when to go for objectives and when to attack units is at the heart of the strategic process.

I guess the question is: Will the AI (as say the Axis) be able to handle an objective oriented nation, say Japan, who needs resources; while being able to have the Russian steppe brawl that Germany can end up in?

As a non-programmer I'd also love a layman's thread on how AI works in a wargame beyond assigning values to hexes. <But certainly not at the cost of delaying our beloved programmers from finishing WiF [&o]>






gregtherobot -> RE: AI (general): location v. destruction of enemy (4/2/2008 10:13:40 PM)

Hi there
this is my first post on this forum. Gotta say: I greatly
appreciate your effort on making the greatest strategy game I know playable on
a computer. Thanks for that!

I want to try and chip in with my thoughts about the AI. I read the forum
and I am impressed with the combined WIF expertise shown here. But I don't
really know by now how you constructed the AI in general terms - that kinda
hinders me to give (maybe stupid) advice how the AI could work. If it is
not too time consuming for you, would you be able to give a short description?
Questions I have would be (no need to answer all of them, just for you to
know what information I am missing):

1) What is the nature of the interaction between the different DM?
2) How is grand strategy implemented - say how does the german AI decide
when to build a hydrogenation plant? I realize that there are different
threads for each major power AI. Does this imply that you programmed (may be
many) fixed grand strategies from which to choose or between which to change?
3) What is the connection between the tactical decision or tactical
developments and the strategy?

Sorry for posting such open questions - to which the answers could be
dozens of pages - but I tried to come up with simple examples (say a list of
Variables influencing the decision between Blitz and assault table) which you
could then explain to me.... But...hm... I failed / ran out of time. Very
complex and not really doable without a layout of the total AI. I thought:
Better ask then!

Different approach: Do you have any document which states (in a
qualitative manner) which processes, interdependencies, decision branches etc. you
have already implemented/taken into account? That would allow me to figure
out stuff that you haven't thought of yet - not implying that you missed
something, but... you know what I mean.

Bye the way, if I am off topic with this post tell me - I can take it.


Cheers

Bot




Shannon V. OKeets -> RE: AI (general): location v. destruction of enemy (4/2/2008 11:06:03 PM)

quote:

ORIGINAL: gregtherobot

Hi there
this is my first post on this forum. Gotta say: I greatly
appreciate your effort on making the greatest strategy game I know playable on
a computer. Thanks for that!

I want to try and chip in with my thoughts about the AI. I read the forum
and I am impressed with the combined WIF expertise shown here. But I don't
really know by now how you constructed the AI in general terms - that kinda
hinders me to give (maybe stupid) advice how the AI could work. If it is
not too time consuming for you, would you be able to give a short description?
Questions I have would be (no need to answer all of them, just for you to
know what information I am missing):

1) What is the nature of the interaction between the different DM?
2) How is grand strategy implemented - say how does the german AI decide
when to build a hydrogenation plant? I realize that there are different
threads for each major power AI. Does this imply that you programmed (may be
many) fixed grand strategies from which to choose or between which to change?
3) What is the connection between the tactical decision or tactical
developments and the strategy?

Sorry for posting such open questions - to which the answers could be
dozens of pages - but I tried to come up with simple examples (say a list of
Variables influencing the decision between Blitz and assault table) which you
could then explain to me.... But...hm... I failed / ran out of time. Very
complex and not really doable without a layout of the total AI. I thought:
Better ask then!

Different approach: Do you have any document which states (in a
qualitative manner) which processes, interdependencies, decision branches etc. you
have already implemented/taken into account? That would allow me to figure
out stuff that you haven't thought of yet - not implying that you missed
something, but... you know what I mean.

Bye the way, if I am off topic with this post tell me - I can take it.


Cheers

Bot

Welcome.

Here is a portion of the AI Opponent design document. CVs are a metric for measuring the worth of a unit. If this doesn't answer all your questions let me know which ones it doesn't.
===========
.
.
.
.
3.1 Overview and Purpose
There are 8 distinct Decision Makers (DMs) but conceptually they are the same. Each DM has a jurisdiction either by role and/or geography, a superior (except for the Grand Strategist) to whom they report, and subordinates (except for units) for whom they set missions. At the lowest level are the units. Each DM evaluates all possible goals in its rule sets and prioritizes them based on expected outcomes. He then defines missions for his subordinates. Each DM has a memory of recent inputs and outputs to prevent cycling amongst different plans. DMs are somewhat generic with the capacity to be given personality and national characteristics using a ‘profile of weights’.

DMs assess the current game position within their defined area of interest and report that assessment to their superiors. In doing so, DMs orient their analysis by filtering observations based on their current objectives. When making decisions, DMs run through their list of rule sets and evaluate the associated CV risk and reward for each rule set in light of the current objectives. The chosen rule set determines the DM’s immediate goal(s). Goals are decomposed into a list of subordinate goals whenever possible. Goals which cannot be decomposed are processed until they are complete or have failed.

3.2 Responsibilities
3.2.1 Grand Strategist
The primary purpose of the Grand Strategist (GS) is to choose/design a long range strategic plan and keep the other decision makers focused on tasks that implement that plan. At the beginning of every turn, the GS reviews and updates his master plan. The GS authorizes all US entry choices and actions, though the subordinate DMs may decide some of the finer details. For example, the GS may decide to risk a US entry choice or action with a 50% chance of changing the US entry status. Subordinate DMs would decide which specific US entry choice or action to take. Because of its critical importance when looking many turns ahead, the GS decides on the initiative choices: which side goes first and whether to reroll.

More mundane decisions that are the responsibility of the GS are placing markers: in the US entry pool, offensive and defensive markers on the borders of neutrality pact countries, and as USSR reserve build points. The GS also chooses a new home country when, as a major power, his home country is conquered (e.g., France), and makes all decisions relating to the optional rules on intelligence. One final task the GS decides is factory destruction.

The GS has no superior and his direct subordinates are the Manufacturing Council, the Commander in Chief, and Foreign Liaison.

3.2.2 Manufacturing Council
The Manufacturing Council (MC) is primarily concerned with which units should be built. To that end, the MC monitors the factories, resources, convoys, and rail lines that culminate in production points and ultimately, build points. Working from the priorities set by the Grand Strategist and the requests the MC receives from the Joint Chiefs of Staff, the MC generates a master production plan. This production plan runs from the current turn through to the end of the game. The production plan estimates the available build points, the requested unit types, the units in the force pool, and gearing limits. From this source data, the MC decides which units to build for every turn remaining in the game. Obviously, the master production plan is revised each turn based on new estimates.

The MC advises the GS on US entry options related to production. The MC controls the force pools by deciding which units to scrap and whether to build units ahead. Moving, creating, and repairing factories are decisions made by the MC.

Determining routes for resources from their source hex to a factory is also handled by the MC. The MC places requirements upon the Admiralty, the Air Marshal, and the Field Marshals, respectively, to protect against attacks on convoys, strategic bombing, and land attacks whose purpose is to cut rail lines. The defense of factories and resources is built into the CV value of their hexes and therefore requires no special orders from the MC.

The Manufacturing Council has no direct subordinates and reports to the Grand Strategist.

3.2.3 Commander in Chief
The Commander in Chief (CC) is responsible for deciding when and on whom to declare war, which minor countries to align, whether to surrender, liberation details, the spoils of war, neutrality pacts, and proposing peace. The CC decides who controls minor countries, choices regarding Vichy France, Soviet border claims, whether to create the Ukraine, and Germany’s political stance in the Balkans. Most of these decisions require at least guiding principles and sometimes specific directions from the Grand Strategist, with the CC primarily concerned with timing and other minor aspects of these decisions.

One of the critical responsibilities of the CC is monitoring the balance of power on borders where neutrality pacts exist, with an eye on whether to create or break those pacts. This requires close coordination with the Grand Strategist, who decides placement of offensive and defensive markers on those borders.

The CC takes the strategic goals set by the Grand Strategist and passes them through the prism of the existing and future states of war between nations. The results are sent to the Joint Chiefs of Staff as tasks with more immediacy than the goals set by the GS.

Because the CC is focused on current and future enemies, he evaluates and recommends US entry options and actions regarding Japan and the Americas to the GS. The Commander in Chief reports to the Grand Strategist and has the Joint Chiefs of Staff as its sole subordinate.

3.2.4 Foreign Liaison
The Foreign Liaison (FL) is charged with the responsibility of coordinating with allies on: (1) the strategic allocation of resources, and (2) operational and tactical deployment of units in the field. One way of thinking about the separation of powers between the Commander in Chief and the Foreign Liaison is the CC deals with countries that are enemies and the FL deals with those that are allies.

Lend lease and trade agreements are the purview of the FL. Making sure that necessary actions are accomplished but not performed redundantly are also part of the FL’s job. Mostly, the Foreign Liaisons of two friendly counties act as the linkage between their respective Admiralties, Air Marshals, and Field Marshals. This frequently comes up for joining naval forces, protecting convoys, transporting units and resources, and working side by side along a common front line. Joint air operations are another area that requires the FL’s gentle touch.

Arguably the most important task the FL performs is making recommendations to the Grand Strategist about US entry choices concerning: China, the Commonwealth and France, Atlantic convoys, and the USSR. These recommendations require the FL to assess how well the war is going for all current and potentially future combatants. Since those assessments cover the entire globe, all units of all branches of service, all national production capacities, and the territorial holdings of every major power, this is both an enormous and very detailed task. It is essential information for the Grand Strategist when reviewing and choosing the grand strategic plan.

The Foreign Liaison has no direct subordinates and reports to the Grand Strategist.

3.2.5 Joint Chiefs of Staff
First on the list of tasks for the Joints Chiefs of Staff (JCS) is deciding which action to take each impulse. This requires estimating the number of impulses in the turn and heeding the requests from the Admiralty, the Air Marshal, and the Field Marshals. The JCS handles force deployments: placing reinforcements, calling out the reserves, and replacing units with Siberians, heavy weapons units, and Guard Banner Armies. Along these same lines, the JCS allocates rail moves for land and air units and deploys supply depots, supply units, oil points, and naval supply units. One additional strategic task for the JCS is to decide on strategic bombing missions.

At the intersection between operational and tactical decision making, the JCS identifies attack opportunities and allocates limited activities (e.g., air missions) among its subordinates. Another critical decision the JCS makes is the use of offensive chits. This decision has to be approved by the Grand Strategist, which bypasses the normal chain of command. At the most tactical level, the JCS coordinates forces for invasions.

The Joint Chiefs of Staff report to the Commander in Chief and have as subordinates the Admiralty, the Air Marshal, and the Field Marshals.

3.2.6 Admiralty
The Admiralty (AD) is responsible for almost all aspect of naval units throughout the globe. Most of his directives are received from the Joint Chiefs of Staff. Requests for assistance come from the Manufacturing Council, to create and protect convoys, and the Air Marshal and Field Marshals, to transport units and keep them in supply. Within these broad outlines of what to do, the Admiralty has great latitude in the deployment of expensive naval resources to accomplish both offensive and defensive objectives operationally and tactically.

Reporting to Joint Chiefs of Staff, the Admiralty has no direct subordinates other than individual units.

3.2.7 Air Marshal
The Air Marshal (AM) is responsible for all the air units throughout the globe. Most of his directives originate with the JCS and he serves as a central clearing house for allocating air units. There are multiple demands for air units coming from the Admiralty, the Field Marshals, and even the JCS (for strategic bombers). For all air operations the AM decides on the need for fighter protection and allocates them to individual missions. Like the Admiralty, the AM has to address both offensive and defensive needs and make operational and tactical decisions.

Reporting to Joint Chiefs of Staff, the Air Marshal has no direct subordinates other than units.

3.2.8 Field Marshals
Field Marshals have more tasks than any other decision maker. For that reason, multiple FMs frequently exist for each major power so an FM can focus on one theater of operations. Within his assigned theater of operations, the FM has broad latitude on how to use his forces operationally and tactically, offensively and defensively. It is the responsibility of the FM to keep his units in supply and reorganized at the end of each turn.

All of the tactical decisions about making land attacks and defending against same are made by FMs. To them falls the difficult task of making trade offs between preserving their units and occupying territory. Though given direction from the JCS, each FM decides tactical decisions based primarily on CV values for units and hexes.

At times an FM needs to be added or removed. Those decisions are made by the JCS.

Reporting to Joint Chiefs of Staff, each Field Marshal (FM) has no direct subordinates other than units.

3.2.8.1 German Field Marshals
In September of 1939 Germany has 1 Field Marshal (FM West). When Germany goes to war with the USSR, it adds a second Field Marshal (FM Russia). The second FM commands all units oriented towards the USSR. The first remains in command of all German land forces facing west. A third German FM (FM Med) might be created for operations in the Mediterranean (e.g., North Africa).

3.2.8.2 Italian Field Marshals
Italy has only 1 FM (FM Italy) for the entire war and his domain is the Mediterranean (including France, if a state of war exists with France)

3.2.8.3 Japanese Field Marshals
Japan has 1 Field Marshal (FM Asia) that handles both China and the USSR. When Japan goes to war with the Commonwealth or the US, it adds a second FM (FM Pacific). The second FM handles all land units that are not in China, Manchuria, and the USSR. Essentially, there is one FM for mainland Asia and a second for land masses in the Pacific Ocean. A third (FM China & FM USSR) or even fourth FM (FM India) may be created if (1) the war in the USSR goes so well that it becomes quite distinct from China, or (2) progress through southeast Asia leads to invasions in India or elsewhere from the Indian Ocean.

3.2.8.4 USSR Field Marshals
The USSR has 2 Field Marshals: one in the Pacific (FM Japan) and the other in Europe (FM Germany). A third FM (FM Middle East) may be created for attacking south into Iran, Iraq, and Turkey, but even that FM will probably only have a short tenure.

3.2.8.5 French Field Marshals
France has 1 Field Marshal (FM France).

3.2.8.6 Chinese Field Marshals
China has 2 Field Marshals: one for Nationalist China (FM Nationalist) and one for Communist China (FM Communist). Both report to the Chinese AIO though the communist FM must coordinate closely with the USSR FM Japan.

3.2.8.7 Commonwealth Field Marshals
The Commonwealth has 2 Field Marshals in 1939: one for Western Europe (FM Europe), including Scandinavia, and one for the Mediterranean and Africa (FM Africa). When the Commonwealth goes to war with Japan, a third FM is added for the Pacific (FM Japan). A fourth may eventually be necessary for India and points east (FM SE Asia).

3.2.8.8 US Field Marshals
The US has 2 Field Marshals: one for the Pacific (FM Pacific) and one for Europe (FM Europe). A third may be added (FM Med) to handle the Mediterranean separately from the rest of Europe.

3.3 Friendly Field Marshals Cooperation
When the geographical domains of friendly FMs overlap, they have to decide exactly where the line of separation occurs so the domains abut instead of overlap. This is especially true for France and CW in Europe and later, the US and CW. It is also true for the two Chinese FMs. This communication goes through the Foreign Liaison so that a long view is maintained of the relationship. For example, though the French and Commonwealth Field Marshals might want a certain deployment for tactical or operational reasons, it is crucial that the potential fall of France not strand the Commonwealth land units on the continent.

3.4 Task List
Tasks are grouped by DM and by strategic versus operational versus tactical. They are also classified by level of difficulty using a scale from 1 (easiest) to 5 (hardest). Task numbers in blue have written descriptions of how they are to be accomplished. If the task number is in bold, then it is closely associated with the major power’s strategic plan. Lastly, tasks are placed in one of the 6 categories described below.

(1) Structural (St) tasks lay the foundation for performing other tasks.
(2) Calculation (Ca) tasks perform a calculation using the current or a hypothetical situation. This usually involves combat tables or other fine grain details of the game.
(3) Responsive (Re) tasks answer direct requests from MWIF for a specific decision.
(4) Initiative (In) tasks are proactive in making something happen in the game. They are totally voluntary and can be taken whenever the AIO deems appropriate (and the rules of the game permit).
(5) Preparation (Pr) tasks prepare for specific, future, initiative tasks.
(6) Coordination (Co) tasks coordinate with other major powers on the same side or within the group of direct reports to the JCS.

As an example of the differences in the categories, here are 3 related tasks for the Commander in Chief:
#3.5 “Make USSR border claims”, is an initiative task, for the USSR player can choose it whenever he likes.
#3.6, “Respond to a USSR border claim”, is a responsive task, for the German player must answer the question immediately before the game can continue.
#3.7 “Make alignment decisions concerning the Balkans”, is a structural task, for it defines how the AIO wants to align the various countries in the Balkans.
.
.
.
.





gregtherobot -> RE: AI (general): location v. destruction of enemy (4/4/2008 11:59:04 PM)

Thank you very much for the instant reply. Looks like a very professional and sound layout to me, meaning I did not find any issues which are not covered by responsibilities. But, you never know...[;)]
I would like to challange it by examples / pick out some points if you don't mind (and if it is of any use to you), because any other way seems - given the advanced state of development - futile.

1) What is the setting that makes the AI realize that a target, may it be tactical or strategic in nature - is not achievable any more?
2) The resource routing is done by the MC - what is the mechanism of balancing this with the field marshal requirements?
3) Do I understand right: Algning minors is not part of the grand strategy? Is it then possible to have a, say, elaborate Balkans strategy for Germany/Italy in place?


4) Another possibility would be to go into more detail, for instance spelling out all the interdependencies for one example, say the decision what action type to choose. We could then discuss wether all relevant issues are taken into account when such a decision is made.

Example would be:
Urgency/value of strategic moves - fullfill strategic objective (take gibraltar, conquer china etc.), prevent strategic move by oponent, prepare future strategic move
urgency/value of tactical moves - choose good "valued" tactical move (exploit breakthrough, reach objective, exploit double turn in babarossa, move subs on bad weather roll, reinforce air power by rebase moves, attack naval force without sufficient air cover),
prevent good value strategic moves from oponent - (land move to prevent invasion, capture factory, resource etc.)
prevent good value tactical moves from oponent - ...
take future situation/possibilities into account
.
.

Anyway, simply stop me if I am running in the wrong direction.

cheers

greg




Shannon V. OKeets -> RE: AI (general): location v. destruction of enemy (4/5/2008 12:15:32 AM)


quote:

ORIGINAL: gregtherobot

Thank you very much for the instant reply. Looks like a very professional and sound layout to me, meaning I did not find any issues which are not covered by responsibilities. But, you never know...[;)]
I would like to challange it by examples / pick out some points if you don't mind (and if it is of any use to you), because any other way seems - given the advanced state of development - futile.

1) What is the setting that makes the AI realize that a target, may it be tactical or strategic in nature - is not achievable any more?
2) The resource routing is done by the MC - what is the mechanism of balancing this with the field marshal requirements?
3) Do I understand right: Algning minors is not part of the grand strategy? Is it then possible to have a, say, elaborate Balkans strategy for Germany/Italy in place?


4) Another possibility would be to go into more detail, for instance spelling out all the interdependencies for one example, say the decision what action type to choose. We could then discuss wether all relevant issues are taken into account when such a decision is made.

Example would be:
Urgency/value of strategic moves - fullfill strategic objective (take gibraltar, conquer china etc.), prevent strategic move by oponent, prepare future strategic move
urgency/value of tactical moves - choose good "valued" tactical move (exploit breakthrough, reach objective, exploit double turn in babarossa, move subs on bad weather roll, reinforce air power by rebase moves, attack naval force without sufficient air cover),
prevent good value strategic moves from oponent - (land move to prevent invasion, capture factory, resource etc.)
prevent good value tactical moves from oponent - ...
take future situation/possibilities into account
.
.

Anyway, simply stop me if I am running in the wrong direction.

cheers

greg

Strategic, operational, and tactical evaluations are done regualrly - when needed.
The AIO's strategic position is based on strength of arms world-wide: us versus them. That lets the AIO know whether it should be agressive or defensive.
Operational decisions are based the strength of forces in the theater of operations - with definition of same being somewhat flexible over time (e.g., Japanese holdings in the Pacific, the German-USSR front).
Tactical is very local: 1 center hex and the hexes within a radius of 4-6 from there (within land movement range). That's different ofr air operations and naval operations obviously.

I haven't thought about the trade-off between routing resources to factories versus keeping overseas units in supply. It seems like something the MC and JCS should resolve.

Aligning minors is part of the strategic plan. That includes decisions about the Balkans.

CVs pretty much drive everything. The strategic plan says: do this, do not do that. But after those boundaries are set, it is the value of the CVs which indicate which way to go. I collapse numbers with decimal precision into ratings of: Excellent/Very Good/Good/Fair/Poor/Awful. That avoids having 25.3 being always better than 25.1. If there are 'equal' ratings, then random numbers decide. Random numbers can be used even when ratings are not equal, but that depends on the script for the decision.
=============
How involved would you like to get in this?




Shannon V. OKeets -> RE: AI (general): location v. destruction of enemy (4/5/2008 12:20:28 AM)


quote:

ORIGINAL: gregtherobot

Thank you very much for the instant reply. Looks like a very professional and sound layout to me, meaning I did not find any issues which are not covered by responsibilities. But, you never know...[;)]
I would like to challange it by examples / pick out some points if you don't mind (and if it is of any use to you), because any other way seems - given the advanced state of development - futile.

1) What is the setting that makes the AI realize that a target, may it be tactical or strategic in nature - is not achievable any more?
2) The resource routing is done by the MC - what is the mechanism of balancing this with the field marshal requirements?
3) Do I understand right: Algning minors is not part of the grand strategy? Is it then possible to have a, say, elaborate Balkans strategy for Germany/Italy in place?


4) Another possibility would be to go into more detail, for instance spelling out all the interdependencies for one example, say the decision what action type to choose. We could then discuss wether all relevant issues are taken into account when such a decision is made.

Example would be:
Urgency/value of strategic moves - fullfill strategic objective (take gibraltar, conquer china etc.), prevent strategic move by oponent, prepare future strategic move
urgency/value of tactical moves - choose good "valued" tactical move (exploit breakthrough, reach objective, exploit double turn in babarossa, move subs on bad weather roll, reinforce air power by rebase moves, attack naval force without sufficient air cover),
prevent good value strategic moves from oponent - (land move to prevent invasion, capture factory, resource etc.)
prevent good value tactical moves from oponent - ...
take future situation/possibilities into account
.
.

Anyway, simply stop me if I am running in the wrong direction.

cheers

greg

I wrote a long reply but it was destroyed by the computer gods.[:@]

1 - Balance of power at 3 levels: strategic, operational, tactical.
2 - I haven't thought about it. Probably a joint decision by the MC and JCS.
3 - Part of strategic plan.
4 - Within the boundaries of the strategic plan, CVs drive pretty much everything. Decimal numbers are collapsed to Excellent/Very Good/Good/Fair/Poor/Awful. After collapsing ties are resolved using random numbers.

How involved would you like to get in this?




gregtherobot -> RE: AI (general): location v. destruction of enemy (4/5/2008 1:01:49 AM)

well,

sort of "a bit" - i have some serious time constraints in my real life [:(]. I would be happy to assist in certain specific questions, e.g. the example of choosing the action type. checking options and choices - if everything is covered, sort of playing the bad guy: what if this, what if that etc.

(kind of feels like letting you down on my 3rd post [&:] - not a good start!)

you have any examples of what could be in question?

greets

greg the robot




Page: <<   < prev  1 2 [3] 4 5   next >   >>

Valid CSS!




Forum Software © ASPPlayground.NET Advanced Edition 2.4.5 ANSI
1.078125