Presentation is loading. Please wait.

Presentation is loading. Please wait.

Biologically Inspired AI (mostly GAs). Some Examples of Biologically Inspired Computation Neural networks Evolutionary computation (e.g., genetic algorithms)

Similar presentations


Presentation on theme: "Biologically Inspired AI (mostly GAs). Some Examples of Biologically Inspired Computation Neural networks Evolutionary computation (e.g., genetic algorithms)"— Presentation transcript:

1 Biologically Inspired AI (mostly GAs)

2 Some Examples of Biologically Inspired Computation Neural networks Evolutionary computation (e.g., genetic algorithms) Immune-system-inspired computer/network security Ant-colony optimization Swarm intelligence (e.g., decentralized robots) Molecular (DNA) computation

3 Evolutionary Computation A population of candidate solutions evolves over time, with the fittest at each generation contributing the most offspring to the next generation Offspring are produced via crossover between parents, along with random mutations and other “genetic” operations. A collection of computational methods inspired by biological evolution:

4 Evolution made simple Essentials of Darwinian evolution: –Organisms reproduce in proportion to their fitness in the environment –Offspring inherit traits from parents –Traits are inherited with some variation, via mutation and sexual recombination Charles Darwin 1809–1882

5 Evolution made simple Essentials of Darwinian evolution: –Organisms reproduce in proportion to their fitness in the environment –Offspring inherit traits from parents –Traits are inherited with some variation, via mutation and sexual recombination Essentials of evolutionary algorithms: –Computer “organisms” (e.g., programs) reproduce in proportion to their fitness in the environment (e.g., how well they perform a desired task) –Offspring inherit traits from their parents –Traits are inherited, with some variation, via mutation and “sexual recombination”

6 Appeal of ideas from evolution: Successful method of searching large spaces for good solutions (chromosomes / organisms) Massive parallelism Adaptation to environments, change Emergent complexity from simple rules

7 A Simple Genetic Algorithm 1. Start out with a randomly generated population of chromosomes (candidate solutions). 2. Calculate the fitness of each chromosome in the population. 3. Select pairs of parents with probability a function of fitness in the population. 4. Create new population: Cross over parents, mutate offspring, place in new population. 5. Go to step 2.

8 Create a random population of bit strings representing “candidate solutions” to a problem. string 1: 0010001100010010111100010100110111000... string 2: 0001100110101011111111000011101001010... string 3: 1111100010010101000000011100010010101.... string 100: 0010111010000001111100000101001011111...

9 string 1: 0010001100010010111100010100110111000... Fitness = 0.5 string 2: 0001100110101011111111000011101001010... Fitness = 0.2 string 3: 1111100010010101000000011100010010101... Fitness = 0.4. string 100:0010111010000001111100000101001011111... Fitness = 0.0 Calculate fitness of each individual in the population:

10 string 1: 0010001100010010111100010100110111000... string 3: 1111100010010101000000011100010010101... Select parents with probability proportional to fitness: Create new generation via crossover and mutation:

11 0010000010010101000000011100010010101... 1111100 100010010111100010100010111000... Children: mutate string 1: 0010001 100010010111100010100110111000... string 3: 1111100 010010101000000011100010010101...

12 Some Applications of Genetic Algorithms Optimization and design –numerical optimization, circuit design, airplane design, factory scheduling, drug design, network optimization Automatic programming –evolving computer programs (e.g., for image processing), evolving cellular automata Machine learning and adaptive control –robot navigation, evolution of rules for solving “expert” problems, evolution of neural networks, adaptive computer security, adaptive user interfaces

13 Some Applications of Genetic Algorithms Complex data analysis and time-series prediction –prediction of chaotic systems, financial-market prediction, protein-structure prediction Scientific models of complex systems –economics, immunology, ecology, population genetics, evolution, cancer

14 Genetic Programming (John Koza, 1992) “Genetic Programming”: Evolve populations of programs (rather than bit strings).

15 Any computer program can be expressed as a “parse tree”: (* PI (* R R))

16 1. Choose a set of functions and terminals for the program, e.g., {+, -, *, /, sqrt, sin, cos, abs, pow, R, PI, D, C, rand()} 2. Generate an initial population of random programs (trees), each up to some maximum depth. Koza’s genetic programming algorithm:

17

18 3. Run the GA: –Fitness: Run each program on “training data”. Fitness is how many training cases the program gets right (or how close it gets to correct answer). –Selection: Select parents probabilistically, based on fitness. –Crossover: Exchange subtrees of parents. –Mutation: Replace subtree with a random tree. Koza’s genetic programming algorithm:


Download ppt "Biologically Inspired AI (mostly GAs). Some Examples of Biologically Inspired Computation Neural networks Evolutionary computation (e.g., genetic algorithms)"

Similar presentations


Ads by Google