Master Of Orion - Speccy, Clon. ;)

ZXNet echo conference «spbzxnet.games»

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