Evolving Creatures Flashcards

Evolving Creatures case study

1
Q

What are the four main areas of bio-inspired computing mentioned in the text?

A

Cybernetics, Connectionism, Artificial Life, and Genetic Algorithms

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Who is generally credited with inventing genetic algorithms?

A

John Holland from the University of Michigan in the 1960s

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is the definition of a genetic algorithm according to Goldberg and Holland?

A

Probabilistic search procedures designed to work on large spaces involving states that can be represented by strings

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are the three main components of a genetic algorithm?

A

Encoding (genotype), Expression (phenotype), and Selection (fitness function)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the purpose of the ‘fitness function’ in a genetic algorithm?

A

To evaluate and rank potential solutions based on how well they solve the given problem

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is ‘roulette wheel selection’ in genetic algorithms?

A

A selection method where individuals are chosen for breeding based on their fitness, with higher fitness individuals having a higher probability of being selected

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the two main steps in creating a new generation in genetic algorithms?

A
  1. Crossover (recombining parts of two parent solutions) and 2. Mutation (randomly altering bits of the new solution)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is ‘hyperplane sampling’ in genetic algorithms?

A

The ability to break a solution into components and test those components in multiple combinations with other components

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is ‘implicit parallelism’ in genetic algorithms?

A

Using a population model to maintain, optimize, and recombine multiple solutions simultaneously

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Who created the ‘Evolving Virtual Creatures’ system and what was its purpose?

A

Karl Sims; to create virtual creatures that move and behave in simulated three-dimensional physical worlds

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How does Karl Sims represent the morphology of his virtual creatures?

A

As a directed graph, where nodes represent body parts and connections represent joints

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is the ‘schema theorem’ in genetic algorithms?

A

A theorem that describes how certain patterns (schemata) in the genetic encoding are preserved and propagated through generations

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Name three potential applications of genetic algorithms mentioned in the text.

A

Finding the ideal shape of an airplane wing, optimizing data center settings to reduce power consumption, and developing efficient robot forms for walking

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

How does Karl Sims’ system represent the control system of virtual creatures?

A

As a neural network architecture mapping sensor inputs to actuator outputs

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is an example of a state-of-the-art application of evolutionary computing mentioned in the text?

A

Karl Sims’ evolving virtual creatures, which can develop complex behaviors like walking and swimming

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are the three main phases of a Genetic Algorithm (GA) for evolving creatures?

A

1) Varied population with heredity, 2) Selection test, 3) Variations of the most effective individuals

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What file format is used to specify robot morphologies in the simplified version of Sims’ system?

A

URDF (Unified Robot Description Format)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What simulation environment is used instead of Sims’ original CM-5 setup?

A

PyBullet

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What is typically used as a basic fitness function for evolving creatures?

A

How far the creature moves

20
Q

What selection method is mentioned for choosing individuals for breeding?

A

Roulette wheel selection

21
Q

What is PyBullet?

A

A Python interface for the Bullet physics engine, recommended for robotics and reinforcement learning

22
Q

What are the three main types of joints in PyBullet?

A

JOINT_REVOLUTE (rotate), JOINT_PRISMATIC (move along an axis), and JOINT_FIXED (does not move)

23
Q

What does URDF stand for?

A

Unified Robot Description Format

24
Q

What are the two main components described in a URDF file?

A

Links (body parts) and joints (connections between links)

25
How can you add gravity to a PyBullet simulation?
By using the setGravity() function in PyBullet
26
What is a common challenge when evolving creatures in simulations?
Creatures often exploit bugs in the simulation, such as wiggling in ways that cause them to fly or jump unnaturally far
27
What technology stack is mentioned for implementing the creature evolution system?
Python, PyBullet, and URDF format
28
How can you improve the speed of creature simulations?
By running the simulations in parallel
29
What are two steps involved in creating a basic world in PyBullet?
1) Put a floor in, 2) Put objects (like a cube) on the floor
30
How can you move joints in a URDF robot using PyBullet?
By using functions like setJointMotorControl2() after getting joint information
31
What are Genetic Algorithms?
A type of evolutionary computation inspired by natural selection, used to solve optimization problems by evolving a population of solutions over several generations
32
What is the representation or genetic encoding in GAs?
Candidate solutions encoded as chromosomes, typically represented by strings of binary numbers, real values, or permutations
33
What is an example of a chromosome in a robotic control policy?
A sequence of control signals or neural network weights
34
What is the purpose of the fitness function in GAs?
To evaluate how good each individual in the population is at solving the problem
35
What is Roulette Wheel Selection in GAs?
A selection method where individuals with higher fitness have a higher probability of being selected for reproduction, analogous to a roulette wheel with larger 'pie slices' for fitter individuals
36
What is crossover (recombination) in GAs?
A process where pairs of individuals combine to produce offspring by exchanging parts of their chromosomes, simulating sexual reproduction
37
What is Single-Point Crossover?
A crossover method where one point is selected, and genetic material is exchanged between parents at this point
38
What is the purpose of mutation in GAs?
To introduce random changes in the offspring's chromosomes, maintaining diversity in the population and preventing premature convergence to suboptimal solutions
39
How do GAs balance exploration and exploitation?
Mutation introduces new possibilities (exploration), while selection and crossover exploit the best solutions already found
40
Why are GAs useful for optimization problems?
They can handle solution spaces that are too large or complex for traditional algorithms, and are often used in problems like scheduling, design optimization, or evolving neural networks
41
What is an example of a fitness function in a robotic control task?
A function that measures the distance a robot can walk without falling
42
How do GAs converge towards optimal or near-optimal solutions?
By evolving the population through selection, crossover, and mutation over multiple generations
43
What is the main advantage of GAs in solving complex problems?
They can effectively search large solution spaces and find good solutions without needing to explore every possible solution
44
How does the fitness function guide the evolution in GAs?
It evaluates the quality of each individual solution, helping to direct the search towards better solutions
45
What role does the population play in GAs?
It represents a diverse set of potential solutions that evolve over time to produce increasingly better solutions to the problem