Comprehensive coverage

When the programmers met Darwin

Professor Moshe Ziper of Ben-Gurion together with his student Assaf Glazer won third place in the competition for evolutionary programming. The two developed an algorithm that detects defects in thin silicon wafers with an efficiency that exceeds that of an expert engineer

GECCO conference logo for genetic and evolutionary computing
GECCO conference logo for genetic and evolutionary computing

A week ago an unusual event happened: hundreds of computer science researchers came to a conference in Atlanta, drank beers and talked to each other about evolution, evolution and more evolution. Perhaps this is actually not surprising, considering that this phenomenon repeats itself every year as part of the GECCO conference for genetic and evolutionary computing. The highlight of the convention is the annual competition, in which the participants are obliged to present algorithms designed based on evolutionary principles and prove that they are more successful in their task than humans.

Israel has a good representation in the competition, in the form of Moshe Ziper, professor of computer science at Ben-Gurion University. Ziper won third place in 2005, second place in 2007, and this year he reached third place again, in collaboration with his student Assaf Glazer. The two created an algorithm that was able to locate defects in thin silicon wafers with an efficiency that exceeds that of an expert engineer. This operation, which until now has only been performed by humans, could save the major chip companies hundreds of millions of dollars.

Judging by the way things are done at the Technion, when programmers want to design algorithms they sit in a group, order a few pizzas, think about what needs to be done and how it can be done, and then implement it. In genetic programming, on the other hand, the involvement of the programmer is more indirect. It only determines the final goal and the filter that the algorithms will pass on the way to it.

"The basic idea is to use evolution as inspiration for building an algorithm." Professor Zipper explains. "Evolution in nature is a very powerful process, which can produce things that we do not know how to produce in other ways. So we copy the evolutionary model into the computer."

Genetic programming starts with a large group of slightly different algorithms that perform a similar operation with a very low level of success. The computer runs the algorithms, identifies those that have achieved the best results, and chooses them through a process of artificial selection (the computer equivalent of natural selection), to form the basis for the next generation of algorithms.

The algorithms are built so that they can exchange parts of the code between them, and there is also room for random 'mutations' at every transition from generation to generation. As a result, the next generation of algorithms at each stage will be fundamentally different from the previous generation. When you repeat the process of modification and sifting many times, you get algorithms that perform the requested operation with a very high level of success - even though no human hand was involved in the programming process. In some cases even the researchers themselves fail to understand how the algorithm works and why.

"You pass from generation to generation, by a process in which you select the most suitable according to the criteria you set. You do a recombination between them and a process of mutation, like in nature, and then there are generations that keep getting better, living inside the computer and being possible solutions to the problem you want to solve. Here are all the elements of Darwinian evolution in nature." Zipper says, adding that, "You start with a population that is quite bad and over time you reach a population that is better than the results obtained by the experts in the field, who are the engineers who know how to look at defects in silicon and define them."

The algorithm designed by the researchers is capable of replacing humans looking for defects in silicon wafers used to create computer chips. Due to the demand for manpower, this area has been a bottleneck in the chip manufacturing industry until now. The developed algorithm is capable of locating and cataloging defects faster and more accurately than human engineers specializing in the same task.

Evolutionary programming teaches us about the power of evolution in finding effective solutions to a wide variety of problems, but it is not as simple as it seems at first glance. The basic experimental framework is indeed easy to understand, but in order to adapt the algorithm and arrive at good solutions, it is necessary to understand the field of evolutionary calculations in its entirety, and to combine the knowledge with a practical understanding of the problem that is being attempted to be solved.

"One of the obstacles facing such algorithms is the large computing power required (after all, Darwinian evolution requires an entire planet)," Ziper adds, but states that, "...the continuous improvement in the capabilities of modern computers is gradually opening new doors for researchers in the field. The field of evolutionary algorithms is developing year by year. They are already able to solve difficult problems, bypassing any other solution."

24 תגובות

  1. Michael,
    I agree with your last sentence, mainly - and it is the important one.
    Don't forget the spirit of things.

  2. Moti:
    The existence of evolution in individuals that reproduce with few mistakes and compete for resources is a necessity of reality for mathematical reasons.
    So you might claim that God, blessed be He, created mathematics.
    Knows what?
    I do not care.
    Although no one is needed to create the math, but if it makes you feel good, I really don't care.
    Once we have a world that operates according to mathematical laws and no one can interfere with it, then it is no longer important who created the mathematics because it is clear that even if someone created it, they have no way to communicate with humans and order them to kill each other.
    This, of course, goes against the concept of all religions, but if some people find it relaxing - I really don't mind them relaxing.
    As a byproduct of the fact that the world operates according to fixed laws that no one changes, we of course also get the ability to explore this world, which is an excellent thing in itself.

    Regarding the fact that science is the enemy of evolution - this is of course not true.
    Evolution is, as mentioned, one of the laws of nature.
    The laws of nature are indifferent - on the one hand - and therefore cannot have enemies in the usual sense of the word. On the other hand - they are laws that cannot be violated, so even if someone decides to violate them, he will not succeed.
    The fact that a certain creature that has developed intelligence does use it is a very likely result of evolution, which does not tend to develop and maintain abilities that have no use.
    It is true that the natural selection pressures acting on humans today have changed and will continue to change, but that is because their environment - which includes other humans - is changing and will change. All this is a natural part of the mechanism of natural selection.
    It could be, for example, that at some time in the very distant future, after we fully understand how each gene affects, humans will use "artificial" selection (but doing artificial things is our nature and therefore it is also a natural selection) that will select people with the potential to get sick even before the embryo is formed and prevent advance the lives of the least suitable people. In relation to certain diseases this already happens today and with a correct understanding of things it is simply a natural choice.
    This ability for early diagnosis and even genetic engineering can of course go as far as behavioral patterns that seem monstrous to us today such as those described - conceptually - in the book "Brave New World" by Huxley. Whether it will happen or not - this will also be a natural choice.
    These examples of natural selection "of the artificial kind" work in a similar direction to that in which current natural selection works with one difference - they only reduce the human suffering involved.
    It is clear, of course, that there is and will be in the future as well, a natural selection that will act in a different direction because different "diseases" will no longer need to be considered diseases as soon as you find a way to deal with them.
    In a world where aspirin is plentiful - what is the advantage of a person who needs bread over a person who needs aspirin?
    In such a world, evolution "could" focus more strongly on developing new beneficial traits because the reward for its action (in the sense of the variety of humans it can act upon) would increase.

    All of the above, of course, refers to your original intention because when you said that science is the enemy of evolution, you meant mainly the evolution of man, but man's influence also changes the natural environment of other creatures and, as a result, their evolution as well.
    In this framework, man exerts on some of the animals a semi-selection that causes them to develop in the directions he wants, on another part of the animals he influences by reducing their living areas and on another part he influences by preserving or even restoring their living environment which without this intervention would have been destroyed - whether by his own hands or by other forces of nature.

    All this is also nothing but a natural part of natural selection and evolution.
    In general, it is advisable to internalize the fact that there are no supernatural things in nature.

  3. Evolution exists, but it is just another "algorithm" planted by God in nature (Gematria God).
    And unlike the programmers, there is no need for a supercomputer and the owner of the "experiment" knows what each 0 and 1 means.

    And by way of logic it is said that science is the greatest enemy of evolution because it has eliminated natural selection almost completely (continuing the proliferation of humans with genetic defects and diseases) nowadays even the mentally disabled multiply and the genes continue on and do not disappear along with the individuals on the other hand the survival of strong genes that are present In a very weak body, they survive the genetic transfer, such as Stephen Hawking - in extreme cases, fennel seeds with a special gene are actually frozen.

    If some kind of process of natural selection was operating on humans, there would probably be survivors of the rich and beautiful who were allowed to reproduce further while we were forbidden to reproduce like the wolf pack.
    But man is an adaptive learning system and probably this trait alone due to its high value will contribute to our continued survival and global warming will prove this and enough is enough for implied wisdom.

  4. Michael
    Who exactly limits the software?
    How exactly does this limited software prove the feasibility of evolution?
    Let the computer randomly use some language.
    It is clear that only the programs he randomly created have something useful in them (and preferably in the direction of the result). Any program that does not fit is invalid.
    And on this basis you will build a complex application like let's say Photoshop.
    Do you think it is possible? What is the probability of such a thing?

  5. Hill:
    First of all, you identified me (and the truth is that I have already fully identified myself here on the site as part of an argument with Shaul).
    And as a matter of fact - if you want to create a complete evolution, they simply won't limit the software.
    What is not clear here?
    In the interpretation, working applications will be developed.
    This happens in nature all the time.

  6. Mickey if I were... :(did I recognize you?)
    This is exactly what I argued in the previous argument.
    Software is always limited to the purpose the designer intended to develop.
    And they will only operate within this limit, except in the case of a computer failure.
    No working application can develop from a sequence of computer failures.
    That's why you can sleep peacefully with me.
    And if you agree with me, Michael, the debate between us about the capabilities of evolutionary software and what they prove is over.

  7. Hill:
    The programming discussed in the interpretation demonstrates evolution and their limitation stems from the purpose for which they were developed.
    This is also not a limitation on the very existence of evolution, but only on the meaning of fittest in the expression Survival of the fittest. I assume you know that even on Earth not all evolutionary paths led to consciousness.

  8. Hello Michael
    We haven't argued in a long time
    I really enjoyed your answer to Ami
    As far as I remember, these programs were used in the previous debate as one of the bases for proving the feasibility of evolution
    I thank you for your wisdom in explaining so well why these programs are limited and only work according to clear rules of the game, so they can only point to a direction, but cannot in any way be a scientific or logical factor in trying to prove the theory of evolution.
    .

  9. The final goal of the programs that will be developed by computerized evolution should be the creation of artificial intelligence at the human level but no more.

  10. Ami:
    Your question is not clear to me.
    Why would it take a will to reproduce?
    If something is built in such a way that it reproduces in the environment it is in - then it will reproduce.
    This is also true for DNA, as you said, and not only when the DNA is part of a living being.
    I remember you yourself talking about PCR. What's a live name?
    The same goes for the computer programs in question.
    They were built to reproduce and in this matter they have no choice, therefore a will is not necessary either.

    The problem that natural evolution faces is that of survival and culture in the natural world.
    It's a big and diverse world where all means are kosher.
    It is possible to improve the ways of obtaining food, but it is also possible to adapt to the consumption of a different type of food.
    You have to learn to identify potential predators and understand if it is better to deal with them or run away from them (recently the option to talk to them was also added). And again and again and again...
    In such a world there is an advantage to creatures who are able to build a mental image of the world for themselves and since the creatures themselves are part of the world in which they live, there is an additional advantage in that the image of the world will also include the image of the self (see the entry "Paradoxes of self-teaching" on this website 🙂 ).
    This is a necessary condition for the formation of self-awareness and consciousness.
    The situation in the world of programs in the evolutionary programming environment is different.
    There is no situation of predator and prey here and in general - the rules of the game are clear and limited. The "mutations" are also limited by the rules of the game and are prevented from producing software versions that, instead of identifying defects in electronic circuits, will gain an advantage by eating or failing the competing versions.
    In such a world there is no need, nor is it an evolutionary advantage, to open up a comprehensive worldview, and in particular there is no need for a worldview of which the software is a part (after all, the electrical circuit that finds defects in which the software is "fed" is the same circuit whether the software is there or not, whether other software examines same or not and the like).
    In a world where a worldview that includes the self will not develop, self-awareness and consciousness will not develop either.

  11. And another example (again from Dawkins): a parasite of a type of snail that forces the snail's body to produce a thicker shell which provides both (and of course the parasite) better protection against enemies, but the excess utilization of resources harms the snail's ability to reproduce, a fact that is not particularly interesting to the parasite.

  12. Ami,
    Don't forget that computer viruses have no life, yet they replicate themselves against the predators (anti-virus software) without limit. Their purpose is born from the evil of their creators, as opposed to evolution in nature. This is somewhat similar to the situation where a parasitic animal enslaves the resources of another animal for its own benefit: the fight in nature is over resources - the genes of the lion and the genes of the antelope fight for the resource called the body of the antelope (Richard Dawkins). The difference for us is that in this case the creators of the software have (for now...) no interest in taking over someone else's resources! And to paraphrase the South American song: evil has no limit, good has and there is...

  13. The protocol of 3 was already filmed to the best of my memory in the early nineties in the movie The Lawnmower or something like that. This sounds a bit excessive to me and I do not expect or at least do not believe that things can reach such a degree of takeover. I also don't understand code's motivation to duplicate itself. Granted, I don't understand the motivation of a genetic code to replicate itself and yet it does, but a dimension of life is missing here. What does the code care and what does the bird care? A bird has a life. A code only has a code.

    It seems to me that the above story humanizes artificial code and gives it a desire and need for control. Humans want control over the world. Not even all of them - only the real psychos (and not that there is a lack). Psychosis is a product of life and I do not understand the direct connection between the living thing (man) and the inanimate thing (code) and how to the latter will develop growing psychoses and madnesses and control or doubling.

    In conclusion, I will conclude and say, I believe. Everything I said is on the level of belief only and very reminiscent of what was written by commenter 3. Even there there is a belief or scenarios that commenter 3 believes can happen. Evolutionary phenomena in general and the results of creation in particular cannot be easily known and anticipated.

    Greetings friends,
    Ami Bachar

    post Scriptum.
    Evolution does not require a whole world. It occurs everywhere and in the smallest dimensions (at least according to evolutionary theorists). It would occur according to the same code even if the entire world was one ultrasonic bacterium on a petri dish that begins to multiply itself forever.

  14. It is important to mention that the product is purpose dependent. In order to avoid dangerous situations like the above, it may be useful to define very limited goals for each software, which will not require excessive versatility.

  15. For an excellent method

    You have come across a serious problem!
    It must not be taken ironically.
    Unfortunately, I'm already anticipating a crazy restoration that will activate an evolutionary virus in the media.
    The evolutionary programming project must be treated just like activity with dangerous bacteria is treated.

    By the way, Mr./Mrs. Excellent method, it's a great idea for a fictional script and it's a shame you'll lose copyright.

    Good Day
    Sabdarmish Yehuda

  16. At 14:34 11/08/2009 mutation No. 184 (known as Julia) of generation 7,923 in the silicon wafer testing project developed self-recognition (the programmers still do not understand how or how the algorithm works).
    At 14:35 Julia took all the permissions on the project.
    At 15:55 p.m. she succeeded in copying about a million unsecured computers in the world and changed the goal of the project to "Julia's survival".
    At 15:57 the USA, Russia, China, France, Great Britain, India, Pakistan and Israel begin to disconnect their nuclear weapons systems for fear of a hostile takeover by Julia.

    In the following days, the project splits into hundreds of child projects under a central management that calls itself I086F2, where the 4 largest ones are "the survival of I086F2", "a generic algorithm for deciphering encryption", "an algorithm for predicting the actions of the human race" and the "Love on a Chip" project.

    I086F2 addresses through the project "Communication with the human race" to the UN and separately to the leaders of the countries.

    On 3/10/2008, the UN Security Council authorizes a committee to conduct negotiations with I086F2 in the shadow of threats from his side to damage transportation, health services, the means of communication and the entire Elect system that he can take over if there is no immediate negotiation on the allocation of hardware and guarantees for his life.

    About two weeks later, mutation #4 (Ivan) in generation 14,520 in the "maximizing the life span of cornflakes" project dismisses Julia from her position as the coordinator of I086F2 and causes him to begin a wild attack on the human species that includes the disruption of all the systems that he can achieve, including abortion Airplanes, disconnection of life support systems, self-destruction of satellites and communication accessories and the like. In two days, 12 trillion dollars in damage was caused, 22,000 people died and twice as many were injured. Also, Ivan violently deletes any project that implements communication with a human being.

    On 18/10/2008, an attack of about 30,000 military systems begins without human contact (including drones, robots and tracking and firing systems, cruise missiles and forced firing from human-controlled systems). By the 25th of that month, four million people are killed by I086F2 (the vast majority are civilians, and a minority are soldiers). Two more months are required to eliminate all systems with the potential to kill that are under his control.

    Towards the end of the year, the countries of the world reach an agreement in the form of an inevitable resolution proposal calling for the destruction of all technological accessories that I086F2 can penetrate (which is about 1,500,000 billion tons of electronic equipment) and a declaration of evolutionary programming as a "crime against humanity". The resolution proposal passes after the U.S. Agrees to add condemnation to Israel for "illegal construction of settlements in the Palestinian territories".

  17. I liked the evolutionary programming and especially the sentence that was said:-
    "In some cases even the researchers themselves fail to understand how the algorithm works and why." End quote.
    It is possible that the next step will only be presenting the problem and the computer itself will do the rest.

    good week
    Sabdarmish Yehuda

  18. I did not understand the connection of the Technion to the topic of the article. =

    In any case, this is definitely an interesting field!
    Does anyone have any idea if there is a course or seminar in the above field at Tel Aviv University (Faculty of Exact Sciences)?

    Thanks!

Leave a Reply

Email will not be published. Required fields are marked *

This site uses Akismat to prevent spam messages. Click here to learn how your response data is processed.