From
Ivan Kuvshinov
→
To
Aleksey Senilov
23 December 2003
The ideas now are: Arming ships with the enemy, make
using genetic algorithms. AI simulates the battle, times
three, with its previous prototype and, based on the results, accepts,
or not, into a series. Also, over time, everyone will be included there
enemy ships he encountered. Moreover,
attempts to make such ships from their parts will serve as optimal
tion and training of AI.
Fights. First, it is necessary to identify priority goals, that is,
what to destroy first. This is done based on the following calculation:
speed of liquidation, causing damage to enemy ships. Then
there are battles simulated according to a simplified scenario and evaluated
enemy ships: points for each killing shot, for
damage to systems and simply damage (everyone is different
coefficients). This is how the most dangerous ones are determined, but there may be
and weak in armor, but strong in impact, so additionally
battles are simulated with a head start of a couple of moves (do not shoot back),
to realize the capabilities of these assholes, it’s not even possible
battle, and a multi-move attack on a passive one by shots
build. Then the balance is assessed to see if it can be damaged.
the maximum number of the most dangerous ships in the first
minutes of battle.
The order of use of weapons and movement towards targets or
shooting from long range and preserving your key forces, notnot to mention the calculation of the consequences of explosions and ablation, like his
prevention - this is already aerobatics and must be decided with
using several heuristics and calculations in depth several
moves, like in chess. This is also feasible, but also the first option
will give significant intelligence to the computer. The second part is important when
developing tactics against original ships and capturing planets
and destruction of orbital bases.
When creating fleets to attack protected star systems,
or those favored by monsters, you will also have to carry out
virtual exercises to determine the size and composition of the fleet
coping with this task, with losses in percentage... This is the same,
can be used to decide whether to accept a fight.
Yes, the AI must calculate its design progress, in
human walking time. And, what’s typical, you can try it already
now, since we already have sets of weapons and game experience.
KIA
From
Ivan Kuvshinov
→
To
All
28 January 2004
IK> Ideas now are: Arming ships with the enemy
IK> done using genetic algorithms. AI models
There is such a gag here. Actually the genetic algorithm itself
simple and works, but only with ordinary genes, but here
the situation turns out to be different. Since the ship's weapons and systems
limited by its volume and take up different space, and even
some systems increase it, then in the process of crossing
genomes - this place of division may fall into the middle of some
or volumetric system, and in the general case, the boundaries of genes are not
will match. Of course, you can move it a little one or
the other side when crossing, but the remaining space will have to
fill with something, and this is a step towards the usual random
search, and even if the system ends up in the tail, it will most likely
will be trimmed down, freeing up a lot of space that will have to
fill in. Which makes the whole process similar to the deposition of sand and
protrusion of large stones, that is, all systems risk being damaged
included in the configuration of the ships, and be cut off if not
fit. Yes, and when passing through the crossing section on
in the middle of such a system, its shift deforms too much
correspondence of genes in the genome, which significantly worsenshereditary memory and makes the whole process less
deterministic. Any ideas?
KIA
From
Ivan Kuvshinov
→
To
Ivan Kuvshinov
1 February 2004
IK>>> Ideas now are: Armament of ships
IK>>> enemy, done using genetic algorithms.
IK>> the other side when crossing, but the remaining space
IK>> will have to be filled with something, and this is a step towards the usual
IK>> random search, and if the system ends up in the tail, then
IK> For now, I’m thinking of doing this: break all systems and
IK> weapons into elementary units and count an instance
IK> complete, with a sufficient number of units
IK> of the appropriate type. True, the ship will be full
In general, it might work, I’ll check it out in my spare time. For
This requires a battle model that takes into account efficiency, and not
just more weapons and crush it. That is, for example, when I
played with a man, he built very good ships with
auto-recovery, fortunately I don’t need experience, and so does mine
the enemy built similar ones, as a result, despite
that one such boat, on each side, could
we couldn't stop an entire computer fleet
damage to each other, sufficient for at least some visible
damage. And because of the penalty, in the properties of the race - Ialmost didn’t hit the enemy (he also, specifically
used technologies that enhance my negative effect).
Then I built ships with a plasma network that never
misses, and even adds up from move to move, which
capable of destroying even such sophisticated ships as
ours, and he is a bastard, he reduced the size of the ships by making
the use of my weapon is not effective, as it causes
the damage depends on the size of the ship, and the loss of one small
the boat can't compare with mine, and its systems
refocused on the high probability of hitting the compartment as well
with the increase in the number of sources, this led to
situations where my losses have a quadratic effect
decrease in combat effectiveness in defense - I had to retreat.
Here, such a complex weapon system, right away
Implementation is difficult. So I'll try to play
effectiveness of the ion cannon against those not protected by fields
ships, or on the effectiveness of the plasma gun, against
protected by fields, with the exception of wet fields, in both
cases. That is, I will substitute the enemy with the appropriate
well-equipped, and look at the effectiveness
chosen solution, I hope it will be found, and not some
some average guy, with laser systems, who will
a little stronger - on average.Now the most important thing is that such an approach, in implementation
genome, not suitable for Speccy due to the required
memory, namely: the Death Star has a capacity of 1200 units,
with cocoon 1800 and with megafluxer 2400, that is, 2500 bytes per
one genome, for 255 types of weapons, including systems, fields
and modifications, which may not be enough. A size
a large population is desirable, otherwise it will quickly
Of course, this memory will degenerate, it will be needed
short-term, but this does not fit into any framework - it is necessary
think further, but for now, I’ll still check the idea itself, how
there will be a mood.
KIA
From
Aleksey Senilov
→
To
Ivan Kuvshinov
2 February 2004
Hello, _/Ivan/_!
January 28, 2004 18:01, Ivan Kuvshinov wrote to All:
IK>> Ideas now are: Arming ships with the enemy
IK>> done using genetic algorithms. AI models
IK> There is such a gag here. Actually the genetic algorithm itself
IK> is simple and works, but only with ordinary genes, but here
IK> the situation turns out to be different. Since the ship's weapons and systems
IK> in the middle of such a system, its shift deforms too much
IK> correspondence of genes in the genome, which significantly worsens
IK> inherited memory and makes the whole process less
IK> deterministic. Any ideas?
This means that all genetic operations must be performed not at the bit level. Better
it’s probably like this: each ship system is one of its genes, and no matter how many
it takes up space, 1 bit or 100 bytes. In any case, based on the description of the ship, we
we see the absence or presence of systems, and what kind of systems, so with
Determining gene lengths should not be a problem.
The only problem is a competent evaluation function. How to select completelyunsuitable options, and better “parents” for the next generation.
All operations are realistic and relatively easy to do. Only in view
uncertainty of the total length of one individual requires a dynamic distribution
memory.
See you again! Best regards, Thann.
From
Ivan Kuvshinov
→
To
Aleksey Senilov
26 February 2004
AS> This means that all genetic operations must be performed not on
AS> bit level.
Yes, in general it is, but I still had to
divided into parts to account for volume.
AS> It’s probably best this way: each ship system is one
AS> its gene, and it doesn’t matter how much space it takes up, 1 bit or 100
AS> bytes. In any case, according to the description of the ship, we see the absence
AS> or the presence of systems, and what kind of systems, so
AS> there should be no problems determining gene lengths.
Stop, each gene is the number of a system or weapon, and
20 lasers is quite ordinary. And, most importantly,
it is not the presence or absence of systems, but the balance between them
and weapons, the boundary condition where is -
provided space. If we consider only
system, then you can make templates in advance, with excellent and
not by changing characteristics, but in the absence of some
systems to fill with weapons, but I want to do
an intelligent, human-like adversary who
can make mistakes and will show extraordinary flexibility and be able
play in very unusual conditions.
AS> The only problem is a competent evaluation function.The evaluation function is the result of simulated battles
(say, one on one, in defense), with known ones, in each
specific case, types of ships. That is, the player will
make ships effective against the enemy, and not at all,
exploiting the enemy's weaknesses.
AS> completely unsuitable options, and the best “parents” for
AS> next generation.
But here the question is subtle, since it will narrow the search field. Then
there is an unfit individual, this does not mean that there are bad people in it
genes. For example, population development occurs like this:
several elite options appear and immediately
a significant number of averages are eliminated, since
the likelihood of their exclusion increases, then as a result
long evolutions, accumulate in all other individuals
genes of the elite, although these individuals themselves are highly valued
bad. If at this stage a new genome is not found, then
literally within a few moments, those remaining
differences in “bad” individuals will be eliminated by any
by crossing and the population will degenerate - its own
a kind of cloning. This process can be slowed down in every possible way,
but the meaning remains the same.
KIA