Sign in to follow this  
DWRoelands

AI Decision Making

Recommended Posts

I'm working on a turn-based single-player game where the player plays against the computer ("AI").

The tenets of the game are fairly simple:[list]
[*]You build bases on your map. Bases are one of four types: missiles, bombers, subs, and anti-missile/anti-aircraft.
[*]The AI builds bases on its map
[*]Each player's view of the other's map is limited
[*]Some limited discovery of the other player's map is possible through "spying".
[/list]
I'm looking for design suggestions on how the AI might decide to push the button an declare war. I'm less concerned with the implementation than I am with a design that is fun and doesn't always produce the same results.

Any thoughts would be greatly appreciated. :)

--Duane

Share this post


Link to post
Share on other sites
Who says the AI pushing the button to declare war is fun? I had a lot of fun in SMAC tweaking my thumb at the AI, skirting the boundaries of what would provoke it, boxing it into corners, so it would inevitably have to shrivel up and die.

Share this post


Link to post
Share on other sites
Not enough info. What is the goal condition? If it's just survival, and there's one AI, this is a zero sum game. Is there any strategic reason the computer would not declare war immediately - some disadvantage that comes from declaring first?

Share this post


Link to post
Share on other sites
[quote name='Stroppy Katamari' timestamp='1344427859' post='4967360']
Not enough info. What is the goal condition? If it's just survival, and there's one AI, this is a zero sum game. Is there any strategic reason the computer would not declare war immediately - some disadvantage that comes from declaring first?
[/quote]

Good points. :)

1. The game is played on two 8x8 grids, one is the human player, the other is the AI.
2. Each tile on the grid holds 1 million people
3. There are eight citiies on the grid, placed randomly. A city adds 10 million to the population of the tile.
4. If a missile/bomb hits a tile, its entire population is killed
5. Victory is awarded to the side with the most surviving people. The side that started the war gets a negative modifier (called "world opinion") to their score (the specific value to be determined).

So, there is a disincentive to start the war right away, because you may not have a large enough margin of survivors to overcome the world opinion penalty for starting the war in the first place.

Does this help? :)

Share this post


Link to post
Share on other sites
Let's look at a perfect infomation situation first. So we know what we have, and we know what the opponent has. We do a rough analysis of the aircraft vs AA capabilities (both ways) and missile vs anti-missile capabilities (both ways), which depending on the actual mechanics might work out e.g. just by summing up some constants and comparing the resultant capabilities. Then you use the disparities to estimate a final score. For instance, if there's such a disparity between missiles and anti-missiles that you'd expect 4 missiles to get through, estimate how many will hit cities, make those worth "11" and make the others worth "1". If the final summed-up score we get is favorable by more than "world opinion" (WO), we should launch before the opponent can balance their forces better.

Then we have to adjust this for imperfect knowledge; now we know what we have, and we know some of what the opponent has, and we can estimate how much the opponent has spent that we have not spied yet. A simple heuristic that comes to mind is that we assume the opponent's unscouted stuff is in the same ratio than what we have managed to scout, and make our score estimate based on that. Then, to make a "launch" decision, we demand the estimate to be more favorable for any uncertainty we have. For instance, if we knew exactly what the opponent has, we might consider 2x WO advantage sufficient to launch, whereas if we only knew 50% of what they have, we might require 4x WO.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this