Slashdot Mirror


Breeding Race Cars With Genetic Algorithms

smack-pot writes "Wired News has an article about how the Digital Biology Interest Group at University College, London is using genetic algorithms to breed superfast Formula-One race cars. 68 design parameters were configurable in the cars, and the generated designs were tested using the racing simulation software developed by the game developer Electronic Arts. According to the research it is possible to shave off 88/100th of a second per lap by using genetic algorithms to tune the cars. In an industry where a tiny fraction of a second matters, that's significant."

14 of 187 comments (clear)

  1. how to do it. by gadget+junkie · · Score: 3, Insightful

    ..For example, by:

    1. computer-modeling an actual car;
    2. Spawn a neat million cars, differing only in their electronics (fuel injection parameters, ABS, traction control,etc.)
    3. select for desired caracteristic;
    4."mix genetics"
    5. respawn.

    I guess that if you can access your car's electronics, you can do that yourself, but I think it will void any warranty. BTW, i know that here in Italy some outfits offer on the sly to change the electronic parameters of a car, especially turbo diesel, to increase max power and torque.

    --
    "If a boss demands loyalty, give him integrity. But if he demands integrity, give him loyalty." (John Boyd, 1927-1997)
  2. Difference between simulation and reality by Minimind · · Score: 5, Insightful
    There is a large difference in evolved behaviour between physical things and models of those same things. GAs using physics simulators are very good at exploiting inaccuracies and subtle features of the simulation, making the transfer between the simulation to reality very difficult without the use of specialised techniques such as Minimal Simulations and Incremental Evolution.

    This means you have to be skeptical with experiments performed just in simulation without testing the same model in reality.

    1. Re:Difference between simulation and reality by pclminion · · Score: 2, Insightful
      Surely that just means your physical model of the real world is not correct?

      Whether it's correct or not is irrelevant, if the machine you are using to do the simulation cannot carry out the calculations with sufficient precision to avoid exponentially diverging from reality (otherwise known as "chaos").

      Perfectly simulating reality is impossible. This statement has not been proven, but I firmly believe it, along with a multitude of other people who are quite adept at simulation methods.

      Hence, the original poster's comment still applies: A GA will quickly learn to exploit the mathematical oddities inherent in the imperfect physical simulation to its advantage. This makes the "solutions" very unfit for survival in the real world, which does not possess these simulated quirks.

      As an example, I remember reading some research where they were using a "manual GA" to optimize a certain oscillator circuit. They arrived at an extremely good solution, which was a very stable, pure frequency oscillator. However, when they took the circuit to a new location and ran it again, the performance was terrible. It turned out that the circuit had been optimized to take advantage of some peculiar radio frequency signal that was being generated by another piece of equipment in the lab. Without this external signal, the circuit did not function correctly.

      This is very typical of genetic algorithms. They "learn" to take advantage of local oddities in the simulation environment.

  3. Re:Slow moving by pubjames · · Score: 3, Insightful

    Mr Anonymous

    if I read your post correctly, you are basically saying that evolution is often not a good method to use because humans can do better without it.

    I say, take a look at a whale, a swallow, a spider, a virus. Can human engineers do better than these self-replicating, self-healing machines that are perfectly optimised to their environments?

  4. Re:Slow moving by Pooua · · Score: 3, Insightful
    The really frustrating thing about this field is how slow moving it is and how little it is taken seriously.

    It is difficult to take seriously a field that is advocated by people possessing more of an idealistic agenda than a pragmatic demonstration of benefits. AI in general suffers from this problem. In the case of GA, some people insist on using the technique as an argument advocating biological evolution, even though 1) it bears only a vague relationship to biological evolution and 2) is just another tool out of many tools, not the be-all-end-all that proponents want to present.

    --
    Taking stuff apart since 1969 (TM)
  5. what it shows ... by curator_thew · · Score: 5, Insightful


    Is that genetic algorithms are nice for parametric optimisation, but not for breakthrough innovation.

  6. Re:Slow moving by KieranElby · · Score: 2, Insightful
    If I read your post correctly, you are basically saying that evolution is often not a good method to use because humans can do better without it. I say, take a look at a whale, a swallow, a spider, a virus. Can human engineers do better than these self-replicating, self-healing machines that are perfectly optimised to their environments?
    Er, I think the point was that evolution is quite a slow process, especially if evaluating the fitness of a candidate solution takes a long time. A whale may indeed be optimised to it's environment rather better than a submarine, but the whale is the product of a evolutionary process that's taken 100s of millions of years ...
  7. Re:Slow moving by Anonymous Coward · · Score: 1, Insightful
    Its a difference between artificial evolution and computer simulated evolution. What I meant was if it takes a lot of computing time to evaluate A SINGLE SOLUTION, simulated evolution is often not the correct problem solving technique . Imagine if you need a big population and several thounsand of generations to find an acceptable solution.. The GA itself with some crossovers and mutation, would only require a small fraction of computing time, compared to calculating the fitness of each solution.

    Natural evolution is different,- there are about 6 billion humans on this planet, and we are a result of a process lasting for several million years. Compare this with a computer simulated evolution, where you only have population sizes of about 100(!). So, the evolutionary process you find in nature is vastly more parallell.

    Then you got the problem of representation of the problem. We got far more cells in our body than genes. Its not a one-to-one translation from genes to actual cells. Currently, in genetic algorithm research, its popular to use a one-to-one representation. Imagine if the evolution had to reinvent a neural cell each time the cell is used in your brain? It would be a very very difficult search problem. Instead, real evolution use some sort of grammar, making it simple to duplicate usefull basic units.

  8. Re:Human Error by achurch · · Score: 3, Insightful

    88/100th of a second per lap? Isn't that well within the margin of error that the human drivers would introduce?

    Yes, but that doesn't negate its value (assuming the measurement is viable on the physical racetrack and not just in simulations). If you have a normal die A with sides labeled from 1 to 6 and another die B with sides labeled from 2 to 7, then there will certainly be rolls where A is higher than B, but on average, B will roll higher than A. In racing, this would translate to a slightly greater chance of winning--and while that may not be a breakthrough improvement, it's certainly better than none at all.

  9. Re:Slow moving by Dr.+GeneMachine · · Score: 3, Insightful
    So you're saying that the methods we use to do evolution on computers isn't good. I agree. That's why we need more research.

    More research won't alleviate the fact that the evaluation of the fitness function is the critical point of every genetic/evolutionary optimization strategy. The fitness function has to be calculated for every individual in the population once in every generation. If this function is rather complex, it soon becomes the single most important factor determining the calculation cost of the algorithm.
    While in many cases genetic algorithms can be a very efficient method to sample a large phase space, there are other cases where the evaluation of the fitness function is simply to costly in terms of computation time. GAs can be very efficient, but they will never be a general solution for every optimization problem.

    --
    This comment does not exist.
  10. Not very practical... by Goonie · · Score: 4, Insightful
    I've seen this story floating round, and colour me unimpressed.

    Genetic algorithms are terribly clever, and are useful for many purposes, but to make them work you need a "fitness function" - the ability to check how good a solution is. And, seeing you're going to need to apply it to every member of the population in each generation, it better be pretty bloody low-overhead, and be a pretty close approximation of the real-world fitness of a solution. In fact, in my admittedly limited experience with them I found that 99.9% of the difficulty in applying genetic algorithms to a problem is finding an appropriate fitness function.

    The fitness function these guys have used is to use a racing simulation game and run the race electronically. That's good if you're trying to set up a car to win that game, but if you're actually trying to win a real car race with a real car, if the only fitness function you have is sending your driver out for a few million trial laps it's just not going to cut it.

    If, on the other hand, they had built software that allowed them to specify the car settings and tell them what lap time the car would achieve, that would be really impressive, and then you could bolt on the GA optmizer to find the killer setup. But using GA's like they have done is just a party trick - cute, but not that impressive.

    --

    Any sufficiently advanced technology is indistinguishable from a rigged demo
    --Andy Finkel (J. Klass?)
  11. Re:Slow moving by hopews · · Score: 2, Insightful

    I believe by "advocating biological evolution", he means show evidence that evolution is the driving force behind the biosphere on earth. There are still many who contend that evolution is not sufficient to produce all of the creatures we share this rock with. To renouce this, some say that if digital evolution can make strange digital creatures suited to their digital ecosystems, evolution can do so in the world as well. I don't think its a very strong argument though.

  12. Already done in practice... by Telcontar · · Score: 3, Insightful

    This is already done in practice to optimize individual *parts* of a car. Certain desired/required parameters are given (dimensions as far as prescribed by regulations, necessary stiffness to survive race distance etc.). Others are variable (detailed geometry of individual parts). However, 70 parameters are just enough to model a single part, such as the shape of the nose.

    The insight of the design at large still has to come from an engineer. Genetic algorithms are then used to fine-tune that design. Applying the algorithm is still hard because it requires a lot of knowledge of the physics involved. Once you have this, you can be quite successful because everyone is craving to optimize a few percent.

  13. Re:It should be noted that... by Anonymous Coward · · Score: 1, Insightful

    I'll second this. I've done alot of work with GA's, and if your fitness function has a loophole, a GA will find it! I've had some converge to some really bizarre & interesting (but completely infeasible) corner cases.