Tarpits :: Deliberate threat matrix manipulation

Tarpits :: Deliberate threat matrix manipulation

Here is where ideas can be collected for the skirmish AI in development

Moderators: hoijui, Moderators

Post Reply
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Tarpits :: Deliberate threat matrix manipulation

Post by AF »

There are those of us who have been here and have gone our seperate ways, me and the rest who now go with my ai project,the new ones who havent really said much yet, and the plonkers who dont want me to get anywhere and are willing to drag everyone down to get there.

I post this for the rest, and maybe as an icnentive to talk about somethign mroe than who did what and when.

Tarpits Deliberate threat matrix manipulation & other stratagem

Threat matrixes are a reflection of the world as the player sees it represented as numerical values in binary form. Otherwise they still represent the same information in different forms and the same information can be derived from them, albeit in different ways with respect to the fundamental; differences in the nature of the data at hand. After all threat as we see it doesn´t need to be translated into a value as it does for the computer, and what we see as threatening to our forces is also what the enemy sees as heightened areas of an overlay.

And so we can derive new information on the enemy´s strategy based on how perceived threats behave and act.

So why not allow the AI to use basic deception tactics by letting it make unusual decisions that any ordinary AI would see as pointless by letting it look for patterns and when they´re found react to them in certain ways.

To do this I suggest an addition to the information pool the AI already has. Optional No Go zones. Units can go through these areas but not if they´re suspicious such as large numbers of units or a continuous stream of units. Patrol paths will thus bend around these areas randomly, and building grid sectors shall be marked as unbuildable unless specified anyway by an agent employing a tactic.

Such a zone could be used to create a false sense of security for the enemy or to make minefields less obvious.

As an opposite of this, I shall also define similar zones that do the opposite, where the AI is to intentionally raise the threat value of an area. This leads to possible deception tactics such as distraction and active camouflage.

These tactics could also be used to spread the apparent threat out across the AI base so that no one place has a higher value than any other, or as a means to reduce the threat of an area that shows too high a contrast to the rest unintentionally. Such a methodology would make it harder to determine where an enemy should attack, especially a rival AI using a threat matrix such as this.

Other prospective tactics could be attempting to draw an enemy into an area that will certainly cause conflict with a 3rd player, or creating rapid shifts of values within the threat matrix to confound rival AI, or simply change the strategic points of the map.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

Base Layouts/building positions/Designs


Basic layouts are based on sub sector grids. A base layout would be in a text file in a folder, and would contain a list of unit types and grid references, relative to the top left-hand corner of the layout grid. A grid square is one sub sector in size. A grid sector may contain another layout or a unit ref for a building or feature, it may also carry the Tag [MINE] to represent a minefield centred at that point. Minefields are not defined by the layout but are defined by the circumstances and effectiveness and the resources available at the time and place. When building the AI does not build a particular building at a particular place though it can do so, instead it relies primarily on rebuilt layouts. Thus a layout item will have a priority value. A layout item may also be of generic type such as [FACTORY] or [DEFENCE] or [ENERGY] for abstract layouts.

Further the AI may expand a layout so that a single grid sector is not equal to a sub sector but rather another entire layout.

Layouts do not have to be strictly adhered to unless specified by a grid item as void build or the layout is set as unchangeable. Such voided or locked items could be defences or spaces for which units walk along/through.

Grid sectors would be overridden for metal extractors or arbitrary minefields, or when a building allocated position is blocked by terrain/environmental problems such as too steep a slope or a need for water/land.

Perhaps in the future an agent could be written to automate the process of creating layouts by using highly abstracted layouts as a base and experimenting and adjusting to specialised circumstances as a form of learning.

Metal extractors aren├óÔé¼Ôäót subject to restraints of the layouts, and neither is radar, although a layout may explicitly define [RADAR] as an abstract content with high priority to overcome the construction of nearby radars or provide overlapping coverage.

Layouts may be abandoned due to heavy terrain deformation (deformation that can├óÔé¼Ôäót be fully reversed or has gotten to the stage where deep water has formed.

NOTE: Grid sector references start at (1,1); any references to 0 mean either an entire column or row
A possible definition could be

Code: Select all

[GRID5]
{
Terrain=land;
Type=Resource; //description to help with choosing a layout for the AI
Size=3,3;
Resizable=No;
[1,1]
{
Contents=[RESOURCE];
Priority=1;
		Changeable=No;
	}
	[2,0]// the entire row No.2
	{
		Contents=Void;
		Changeable=No;
}
[0,3] // Column 3
{
	Contents=[DEFENCE];
	Changeable=Yes;	
}
}
Terrain types are land, coast, sea, and mixed (maybe sea with a strip of land in the middle or land with a moat)
Grid names take the form [GRIDX], although the AI may define special names for reference.
A list of abstract tags I can think of would be
[RESOURCE]
[DEFENCE]
[WMD]
[FACTORY]
[SUPPORT]
[RADAR]
[JAMMERS]//Includes manipulation to show fewer or more units than there really are
[PICKUP] // pickup points for teleport buildings or transport units.
[DROPOFF] //The same as above but, for dropping off units.
[MEX]// in case a particular layout has been defined for placing a mex, such as a mex, then a moho mex then some m.towers.

Mines

Mines are to be laid out around a central point such that no mines explosion radii overlap, unless the aim of a strategy is for them to overlap (unit comes up to pass through, mines go boom, impassable water or bumpy ground appears slowing enemy down or stopping them completely). Mines are to be kept away from build layouts and the rest of the AI structures to prevent damage. Minefields are to be avoided by friendly units, thus mines create areas of low threat and thus enemy AI├óÔé¼Ôäós or spatially minded players will be lured towards them. The AI is to place mines around valuable resources that are not being used such as high metal areas near the enemy base that have to high a threat level to build metal extractors near, or strategic points of passage that lead directly to the AI├óÔé¼Ôäós base.

Defensive task forces thus lay mines; a specialised version of the defensive task group should be defined to suit this task of simply finding area that should be mined and laying minefields. The resource Agents are thus responsible for keeping energy maintained for mines being cloaked.
User avatar
munch
Posts: 311
Joined: 26 May 2005, 20:00

Predictability and learning

Post by munch »

Hi Al,

I like your idea!
Alantai Firestar wrote:Perhaps in the future an agent could be written to automate the process of creating layouts by using highly abstracted layouts as a base and experimenting and adjusting to specialised circumstances as a form of learning.
I think this has got to be key. It's pretty ambitious I know, but unless you have some sort of variation going on the AI is going to be un-fun to play I think. The problem is, us humans are just too good at spotting patterns. It would get that you knew exactly the best way to attack the AI base each time otherwise.

You really want the AI to be unpredictable and also if possible to learn maps, just like humans do. But that's another story!

The good news is you can run two copies of the game on a single machine - I just tried it, run one copy of spring.exe as server, using the commanders script. Then run a second copy and give it loopback (127.0.0.1) as the server address. That means if you interface the AI with the game at the network level you can let the game learn by playing against itself as well as playing against humans. Only thing is, it ran like glue on my machine - I'm guessing it uses too much RAM for two copies to be running side by side (I have 512), so maybe you'd need to run it on two separate boxes, but still acheivable.

Hope these are useful thoughts for ya

Munch
User avatar
Min3mat
Posts: 3455
Joined: 17 Nov 2004, 20:19

Post by Min3mat »

wow :shock: that loopback thing is pretty cool but yeah GLUE! shit man thats a understatement! 5-10 FPS!!! on 1 gig of RAM!!! :S
User avatar
Triaxx2
Posts: 422
Joined: 29 Aug 2004, 22:24

Post by Triaxx2 »

Mine laying could also be used to create the moats I discussed elsewhere. At the same time, they could also surround an enemy base, and create a moat, trapping them there until a Tactical change was made to cross. While the change was in progress, the base would be open to large arms pounding.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

As do the mechanics explained elsewhere help with mines, though I havent thought too much about moats yet.

Oh yah munch you wherent here with all the adaptive AI flames before the forums where wiped. Yah Sun Tzu dictates tht you must eb unpredictable and since Sun Tzu si my modelling for the AI I'm guessing it's a must.

Learning is somethigg I'll put in int he future though it'll be quite a while ebfore I do that, and not too much due to qualms about the system resources required for it.

Loopback?! I didnt know you could runt ehm on the same machine.....

I dont think it would be wise however to ahve 2 AI fight eachover like that to learn. I tried putting 2 chatbots I made against eachvoer on msna nd they compeltely garbled up their vocabulary
"tony blair sits for a planet"
"the winds orbit tony blair"
"orbit tony blair the"
"Acapulco runs blair"
...............

Sufficive to say the bots crashed along with msn and all who dared to look at the dreaded tony blair convo.
User avatar
Triaxx2
Posts: 422
Joined: 29 Aug 2004, 22:24

Post by Triaxx2 »

If we can get the Darkstar forums up again, you can see my original posts. Until then, I'll recreate them for the most part.

First of all, my AI bases focus on a concentric ring design, originating from the start point. The first ring, built by the commander, features the proper plant, and level one tech, such as Mexxes, and solars, or wind gens as needed. The next ring uses the next level, and so on. Defenses increase in level as well. When ring three is finished, and four starts construction, then Ring one starts upgrading, except the factory.

Moats are placed around the outside of the last ring, leaving only a single point of ground egress. Moats are one of AF's subsectors in width, and three of mine. It averages out, but that's not the point. That egress point, can be heavily defended with lasers, and missile turrets.

When multiple bases are in place, long canals can be blown between the moats, and troops shuttled in the stronger, and safer sea transports.
User avatar
Min3mat
Posts: 3455
Joined: 17 Nov 2004, 20:19

Post by Min3mat »

When multiple bases are in place, long canals can be blown between the moats, and troops shuttled in the stronger, and safer sea transports.
1 target instead of ten???
but omg this AI sounds slightly better than alantais ESPECIALLY for the first time period...i ALWAYS build v close to commie to get stuff done fast and unless i miss my guess this will do the same
and if you have multiple bases...sweet but blowing a canal! OMFG DO U KNOW HOW LONG THAT WOULD TAKE!!! then blowing a lake for the shipyard...units can walk can't they??? :roll: :roll: :roll: and by that time your army should be a mixture of lvl 1 + 2 with supporting timmy/2 with thunders used to help when defenses target units they can take out punisher etc. it may sound complex and a lot of micro but if you get a chance to do it it really works...like a blitzkrieg far better than spamming one unit. spam at least 2-3 :p i normally go for flashes rockos stumpies with thunders and later lvl2 tanks and air (i never bother with l2 k-bots)
And yes i play OTA i'm proud to be 'one of the few' that actually play it :S
Blitzkrieg is fun...espically vs noobs with a already crippled econ! :P
User avatar
Triaxx2
Posts: 422
Joined: 29 Aug 2004, 22:24

Post by Triaxx2 »

The still inaccessable post also went on to state, that such methods of transport would be used during military breaching attempts, while large numbers of fighters are flying around, where air transports would be in greater danger. Take into account as well, the partial protection afforded by the At the same time, the area between the three bases could be used as a mobile unit staging area.

Digging the moats themselves is a simple application of Guardians, and Punishers. The Canals are simple enough through the application of Nuclear mines in a concentrated area. The ship yard is only a nuke or some Merl's away. In any case, these bases are strictly defensive in nature. Defenses inside are primarily Anti-Air, except the prime rings, between each tech level of the rings comprising the base.
User avatar
Min3mat
Posts: 3455
Joined: 17 Nov 2004, 20:19

Post by Min3mat »

hmmm as long as you let the AI cheat it will build a decent base and later on will do some sicko stealth operations and terraforming but atm it seems impractical and dangerously porcey...i'll save any more comments for if (oh sorry i meant when :p) its released. btw it DOES sound very cool...but will probably be tarded and try to build bases in contested areas, terraform water etc (u can do it with invaders...they go underwater!) :twisted:
User avatar
Triaxx2
Posts: 422
Joined: 29 Aug 2004, 22:24

Post by Triaxx2 »

No, if it's a contested area, it'll only build Mexxes, and defenses. And our AI's are non cheating on the lower levels. At least mine is. Easy is non cheating, Medium will cheat some, and Hard will cheat with wild abandon.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

Ah well my AI stuff I sent you min3mat was designed to be implementable quickly, not theorized to look good.

Damn hosts at darkstars, well I'm gonna do soemthign about that now ym net access is up and running 1000%, heck I'll host it on my computer if I have to.

Oh and btw, to quickly place mines, transport loads minelayer, aircons guard minelayer, minel;ayer builds line of mines while in transport, thus giving it a faster speed and greater range.
User avatar
Triaxx2
Posts: 422
Joined: 29 Aug 2004, 22:24

Post by Triaxx2 »

Cool, you know, we really need to adapt some air borne minelayers.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

we dont need them, see previous statement.
User avatar
Triaxx2
Posts: 422
Joined: 29 Aug 2004, 22:24

Post by Triaxx2 »

Can Springs transports do that? If so, I didn't know, plus I didn't see that last bit.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

Yah, if you select any construction unit and a transport then the build menu still appears so if you load it into the trans and area drag to select or give it a group number then you can use the unit while it's being transported, same for any other unit, antimissile, radar, radar jamming, I'm guessing it'll do anythign as long as it doesnt involve firing weapons like lasers and missiles, which means I might be wrong abotu antinukes.
User avatar
Triaxx2
Posts: 422
Joined: 29 Aug 2004, 22:24

Post by Triaxx2 »

OTA required the Isairbase=1; line.
User avatar
Min3mat
Posts: 3455
Joined: 17 Nov 2004, 20:19

Post by Min3mat »

wow i'm giving that a try! :shock: can't wait! hell i think i'm gonna do that in sp :)
Post Reply

Return to “AI”