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
Q

How can you add gravity to a PyBullet simulation?

A

By using the setGravity() function in PyBullet

26
Q

What is a common challenge when evolving creatures in simulations?

A

Creatures often exploit bugs in the simulation, such as wiggling in ways that cause them to fly or jump unnaturally far

27
Q

What technology stack is mentioned for implementing the creature evolution system?

A

Python, PyBullet, and URDF format

28
Q

How can you improve the speed of creature simulations?

A

By running the simulations in parallel

29
Q

What are two steps involved in creating a basic world in PyBullet?

A

1) Put a floor in, 2) Put objects (like a cube) on the floor

30
Q

How can you move joints in a URDF robot using PyBullet?

A

By using functions like setJointMotorControl2() after getting joint information

31
Q

What are Genetic Algorithms?

A

A type of evolutionary computation inspired by natural selection, used to solve optimization problems by evolving a population of solutions over several generations

32
Q

What is the representation or genetic encoding in GAs?

A

Candidate solutions encoded as chromosomes, typically represented by strings of binary numbers, real values, or permutations

33
Q

What is an example of a chromosome in a robotic control policy?

A

A sequence of control signals or neural network weights

34
Q

What is the purpose of the fitness function in GAs?

A

To evaluate how good each individual in the population is at solving the problem

35
Q

What is Roulette Wheel Selection in GAs?

A

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
Q

What is crossover (recombination) in GAs?

A

A process where pairs of individuals combine to produce offspring by exchanging parts of their chromosomes, simulating sexual reproduction

37
Q

What is Single-Point Crossover?

A

A crossover method where one point is selected, and genetic material is exchanged between parents at this point

38
Q

What is the purpose of mutation in GAs?

A

To introduce random changes in the offspring’s chromosomes, maintaining diversity in the population and preventing premature convergence to suboptimal solutions

39
Q

How do GAs balance exploration and exploitation?

A

Mutation introduces new possibilities (exploration), while selection and crossover exploit the best solutions already found

40
Q

Why are GAs useful for optimization problems?

A

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
Q

What is an example of a fitness function in a robotic control task?

A

A function that measures the distance a robot can walk without falling

42
Q

How do GAs converge towards optimal or near-optimal solutions?

A

By evolving the population through selection, crossover, and mutation over multiple generations

43
Q

What is the main advantage of GAs in solving complex problems?

A

They can effectively search large solution spaces and find good solutions without needing to explore every possible solution

44
Q

How does the fitness function guide the evolution in GAs?

A

It evaluates the quality of each individual solution, helping to direct the search towards better solutions

45
Q

What role does the population play in GAs?

A

It represents a diverse set of potential solutions that evolve over time to produce increasingly better solutions to the problem