Home World Forum
Stars! AutoHost web forums

Jump to Stars! AutoHost


 
 
Home » Stars! 2.6/7 » The Academy » Player assistant "AI"
Re: BattleSim with arbitrary tech Sun, 05 March 2006 06:18 Go to previous messageGo to previous message
wumpus

 
Master Chief Petty Officer
Stars! V.I.P
Created tools and utilities to help the Stars! community
Past Weekly Puzzle Master

Messages: 114
Registered: September 2004
m.a@stars wrote on Sun, 05 March 2006 10:40

Main automatable/boring tasks:


I think you underestimate the "human element" that goes into doing a stars! turn well Smile Plus, I think a lot of these problems are fairly difficult AI problems; consider that stars! has been around, more or less unchanged in all but (comparatively) minor details, for over a decade, and there are still a fair few different viable race designs and play styles - testimony, IMO, that the vast majority of situations in stars! have no simple, always-correct solution.

What I have been pondering is an X file analyzer which will warn of *possibly* strange orders or make suggestions; it might spot stuff like sending damaged ships through gates such that they have a vanishingly small chance of surviving (because the player forgot to take the existing damage into account), or targetting an enemy fleet 1LY away from a planet when you may have meant to target the planet itself, or chasing the MT at a speed which isn't going to work out, or setting a fleet to improbable orders (I've slipped up and set layers to "patrol" rather than "lay" a few times, ouch ;P). The scope for actually tampering with the players turn is fairly limited I fear :-/

Another thing that could be useful: an analyzer for finding out things about enemy races:
- Collects data on all the ship designs you've seen and tries to extrapolate tech levels from that
- Tries to guess enemy ship designs based on their weight and the guessed-at tech of their first production yea
- Tries to determine hab, PRT, LRTs, ...
- etc etc
There'd be a few potential snags to deal with - gifted ships being the most obvious - but this strikes me as a managable task.


But back to the matter at hand:

The MM in stars! is time consuming, but doing it "just right", taking all factors into account, is IMO one of the handful of points which can separate a so-so player from a really great one... emulating a so-so player might be doable (but far from trivial), emulating a really good one is probably very hard, if it is even viable at all without a direct tap to the player's brain Razz.

Having said all that... my AI programming experience is extremely limited; if someone feels they have can formally express algorithms for doing some of this stuff well, then I'm all ears Smile You know what kind of information is available to the AI (basically: anything visible normally in stars!, and very little else), so... Very Happy

In the mid-term, it may actually be easier to write a complete stars! AI, hopefully better than the existing ones, than to write a player assistant - since the AI then has complete control, and can plan and so on without having to take an unknown element - IE the player - into account.


Some specific thoughts on your suggestions:

Quote:

- Filling all your planetary Qs with your latest designs and/or removing old ones.


How does the proposed AI recognise an "old" design that you don't want anymore? How do you prevent it from removing intentionally "old tech" ships you're building? (EG contrast chaff, a cheap sweeper, and a state of the art weapons scrapper; depending on your general tech, these may all be scout/FFs with cheap engine and a single beam weapon...)

Quote:

- Mineral/pop balancing.


I can't even begin to see how to automate that without a lot of configuration possibility by the player. Having an AI doing it for itself could definitely be viable, but doing it for a human whose plans the AI can't evaluate easily at all, sounds Hard. Setting orders and letting the player change them *might* be viable, but I'm not entirely convinced this won't make more work then it saves.

Quote:

- Ensuring all your fleets get to their assigned destination at the correct speed and/or time.


How does the AI know what is "correct" other than by looking at your orders? Which stars! seems (to me) to be perfectly capable of showing and highlighting problems with all on its own. Granted, you could catch some of the "off-by-one" errors that crop up occasionally due to the integer rounding phenomena, but the cases where this makes a year difference are pretty rare.


Having said that, this is a point where something useful could potentially be done, namely some "optimisng" by an "AI"; the player sets the orders in stars!, and then run it through the optimiser which tries to save a year or two on some of the ship routes by changing that 129 LY trip at W8 (3 years) to a 1-year W9 leg and a 1 year W7 leg etc... But even this needs to allow for player intervention; sometimes you don't *want* fleets arriving early, sometimes the speeds you set are important due to planned fleet merges en route, or due to minefields (which may not be visible on your scanners, or not even exist yet, but you as a player expect one to be established right away), sometimes you need to arrive with lots of fuel to spare...

Quote:

Routing newly-built fleets...


Beyond the routing already available in stars!, what would you want? Different routing based on design? But then you have to configure it, and then the player will probably overrule it half the time because of exceptional situations, etc. When should you use a gate even if it's technically not quite safe? Should the AI shove that 112kT large freighter through the 100/250 gate? etc etc.

Quote:

Targeting all those 200 pesky skirmishers near your HW...


Unless you have 200 identical (including damage and fuel) skirmishers on your side and on theirs, how does the AI prioritise? Which fleets is it allowed to use for an attack? which fleets is it allowed to split up? Should it attack enemy fleets which might duck back to a heavily guarded enemy SB? What risks can it take regarding enemy minefields (including ones that you as a player might know or guess are there, but you haven't actually scanned yet)? or even "friendly" detonating ones? How fast shall it send the fleets (consider factors like fuel, minefields again, retreating to a planet again, merging enemy fleets, ...)?

Quote:

Upgrading starbases


How does it know when that's a good idea, and when you'd rather save the resources and mins for later? Plus, the existing stars! AIs ship design is notoriously iffy, one would first have to design an AI for that which is better (or at least a reliable way for the AI to recognise a "better" design).

Quote:

calculating packets


Even if you set the packet destination manually to tell the AI to throw a packet there, what does it need to take into account? Should it be calculating a packet to wipe out the planet? Or do you have bombers coming in the same time so the packet only needs to do a certain amount of defense damage? How about if you have a pop bomb coming in too? Or multiple planets to throw packets? Or multiple bomber fleets involved in the attack (some of which the AI may not even be able to see in the M file)? ... How do you account for the fact that as a player, you can second guess whether the enemy has defenses in their autoqueue? Or that you can guess what energy level the enemy has (effecting defense %... the value reported in the planet view for alien planets is pretty useless a lot of the time)? Or what driver(s) the planet has on it's starbase? Or even the enemy PRT? (special rules for IT)

Quote:

buiding minelayers at the borders...


Beyond the "borders" criterion, which is already tricky, although possibly not insurmountably so (how does the AI know which borders are "safe", where you might expect a sneak attack, where is about to get attacked so building layers is a waste of res/min, ...), how does the AI know where it should build layers, and where it should save the res/min? Or just contribute to research so that you can get that upgrade to W24 this year rather than missing by a few hundred res?



Michael "Wumpus" Zinn
» Apply magic glue here «

Report message to a moderator

 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Minerals - mining and depletion
Next Topic: Need a quick answer with detonating minefield question
Goto Forum:
  


Current Time: Sun Jul 07 03:27:08 EDT 2024