Biomorphic Computing

Download Report

Transcript Biomorphic Computing

Biomorphic Computing
Professor: Bill Tomlinson
Tuesday 2:00-4:50pm
Winter 2004
CS 189
Week 1
•
•
•
•
•
•
Introductions
Syllabus
Biology
Biomorphic Computing
Game of Life
Lab Time
Introductions
• Name
• Program
• How much biology and computer science
experience / relevant classes taken.
• (note cards)
Syllabus
• Hand out
• Go over
• Questions?
Breaks
• I’ll try to remember to take breaks each
class (every 1-1.5 hours), but if I forget,
please remind me!
Reading/work for the whole
week
• Spread it out over the whole week.
• Leave time to ask questions.
Assignments
• I am interested that you understand why code works, rather
than simply that it works. Therefore, please comment your
code thoroughly on the assignments.
• Many code samples similar to the assignments can be
found online. You are welcome to use these as reference,
but please don’t cut-and-paste them.
Final Projects
• Innovative computational implementation based
on some aspect of a biological phenomenon that
has never before been explored.
• Readings - We’ll go over search tools. You find
the readings.
• Three presentations - proposal, prototype, final.
• Keep your eye out (both in our class work and in
the rest of your life) for biological phenomena that
interest you.
Assignment for next week
• Game of Life programming assignment
(handed out later in class)
• Read: Sims, K. 1991. Artificial Evolution
for Computer Graphics. Computer
Graphics, 25(4), pp. 319-328. (See syllabus
for link.)
Questions
• Any questions now?
• Throughout the quarter, please come to my
office hours (Thurs 3-5) or email
[email protected] if you have any questions or
just feel like chatting.
Introduction to biology
Merriam Webster:
• 1 : a branch of knowledge that deals with living
organisms and vital processes
Definitions of life
• Break up into pairs
• Each group come up with
three distinct definitions of life.
• Take 10 minutes.
Compare definitions
• Come up with ways to break each counter-examples, false positives.
Merriam-Webster’s
• 1 a : the quality that distinguishes a vital and
functional being from a dead body b : a principle
or force that is considered to underlie the
distinctive quality of animate beings -- compare
VITALISM 1 c : an organismic state characterized
by capacity for metabolism, growth, reaction to
stimuli, and reproduction
NASA
• There is no broadly accepted definition of 'life.' Suggested definitions
face problems, often in the form of robust counter-examples. Here we
use insights from philosophical investigations into language to argue
that defining 'life' currently poses a dilemma analogous to that faced by
those hoping to define 'water' before the existence of molecular theory.
In the absence of an analogous theory of the nature of living systems,
interminable controversy over the definition of life is inescapable.
--Cleland, Carol E.; Chyba, Christopher F., Origins of Life and Evolution of the
Biosphere, v. 32, Issue 4, p. 387-393 (2002).
NASA
(http://afc.gsfc.nasa.gov/tco/biology101_01.htm)
All life carry on a common set of processes:
• Reproduction - the production of new individuals of each kind of organism
• Growth - life grows in size
• Nutrition - activities involved in taking in food from the environment,
digesting the food and removal of wastes of digestion.
• Transport - the movement of material into the life form (cell) and the
distribution of material within the cell.
• Respiration - chemical activities that release energy from organic molecules
for the use of the organism.
• Excretion - the elimination of waste products from the organism.
• Synthesis - chemical reactions in which molecules combine.
• Regulation - the control and coordination of all functions (no wonder we are
such natural bureaucrats it is built into the meaning of life)
Biology topics
(from Campbell & Reece, 2001)
• Computational /
engineering
implementations
for each of these
topics?
The Chemistry of Life
•
•
•
•
The Chemical Context of Life
Water and the Fitness of the Environment
Carbon and the Molecular Diversity of Life
The Structure and Function of
Macromolecules
• An Introduction to Metabolism
The Cell
• A Tour of the Cell
• Membrane Structure and Function
• Cellular Respiration: Harvesting Chemical
Energy
• Photosynthesis
• Cell Communication
• The Cell Cycle
Genetics
•
•
•
•
•
•
•
•
•
Meiosis and Sexual Life Cycles
Mendel and the Gene Idea
The Chromosomal Basis of Inheritance
The Molecular Basis of Inheritance
From Gene to Protein
The Genetics of Viruses and Bacteria
Organization and Control of Eukaryotic Genomes
DNA Technology and Genomics
Genetic Basis of Development
Mechanisms of Evolution
• Descent with Modification: A Darwinian
View of Life
• The Evolution of Populations
• The Origin of Species
• Phylogeny and Systematics
The Evolutionary History of
Biological Diversity
•
•
•
•
•
•
•
•
•
Early Earth and the Origin of Life
Prokaryotes & the Origins of Metabolic Diversity
The Origins of Eukaryotic Diversity
Plant Diversity I: How Plants Colonized Land
Plant Diversity II: The Evolution of Seed Plants
Fungi
Introduction to Animal Evolution
Invertebrates
Vertebrate Evolution and Diversity
Plant Form and Function
•
•
•
•
•
Plant Structure and Growth
Transport in Plants
Plant Nutrition
Plant Reproduction and Biotechnology
Plant Responses to Internal and External
Signals
Animal Form and Function
•
•
•
•
•
•
•
•
•
•
Introduction to Animal Structure and Function
Animal Nutrition
Circulation and Gas Exchange
The Body’s Defenses
Regulating the Internal Environment
Chemical Signals in Animals
Animal Reproduction
Animal Development
Nervous Systems
Sensory and Motor Mechanisms
Ecology
• An Introduction to Ecology and the
Biosphere
• Behavioral Biology
• Population Ecology
• Community Ecology
• Ecosystems
• Conservation Biology
Summary of Biology
• Living things are successful at exploiting
their environments.
• They do so in a variety of ways, and on a
wide range of scales.
Biomorphic Computing
• Using biology to inform computational
systems.
Possible Dimensions of
Biomorphic Computing
• Small (nanotechnology) to large (modeling global
ecosystems)
• Short (packet-switching based on ant foraging) to
long (evolving virtual creatures)
• Similar to humans (social HCI) to different from
humans (simulating the running motion of the
Death’s Head cockroach)
Things that move like living
things
• Robots (MIT Leg Lab, Stanford
PolyPEDAL Lab, etc.)
• Simulations (video games, movies)
Things that think like living
things
• Learning (speech recognition, pattern
matching)
• Coordinated/cooperative behavior (robot
soccer, flocking simulations)
Things that adapt to changing
circumstances like living things
• evolution
• distributed systems
Things that develop like living
things
• Some research, but underexplored…
Things that help us understand
how living things work
• Flocking Simulation
• Simulated evolution
• Computational biology
What’s the use?
• Living things are very successful. Harness
that success for computational systems.
• People are used to interacting with living
things. Make computational systems easy to
use.
Drawing the right lessons
• It’s the shape of the wing, rather than the
flapping, that enables controlled flight.
Break
Artificial Life
MIT CogNet:
• Artificial life (A-Life) uses informational concepts and computer
modeling to study life in general, and terrestrial life in particular. It
aims to explain particular vital phenomena, ranging from the origin of
biochemical metabolisms to the coevolution of behavioral strategies,
and also the abstract properties of life as such ("life as it could be").
• Focus on self-organization
Ninth International Conference on the Simulation
and Synthesis of Living Systems:
• Artificial Life is the study of life as an organizational principle, rather
than as it exists on Earth as carbon-based.
Strong ALife vs. Weak ALife
Is it possible to make machines or computer
systems that are really alive?
Or does ALife just help us make functional
things and understand living things.
Take a vote.
References
• Chris Langton(1986)
• Steven Levy (popular press, 1992)
• SAB conference (1990 - present)
(From Animals to
Animats 1 through 8)
Cellular Automata
• Cellular automata are discrete dynamical systems whose behaviour is
completely specified in terms of a local relation. A cellular automaton
can be thought of as a stylised universe. Space is represented by a
uniform grid, with each cell containing a few bits of data; time
advances in discrete steps and the laws of the "universe" are expressed
in, say, a small look-up table, through which at each step each cell
computes its new state from that of its close neighbours. Thus, the
system's laws are local and uniform.
(http://www.brunel.ac.uk/depts/AI/alife/al-ca.htm)
References
•
•
•
•
John Von Neumann(1951, 1966)
Stanislaw Ulam (1950)
John Conway (via Gardner, 1970)
Stephen Wolfram (1982, 1983, 2002)
One-Dimensional
• One-D - time is the vertical axis.
• http://math.hws.edu/xJava/CA/CA.html
(Wolfram, 83)
Time
One-D
Cellular automata in nature?
(Wolfram, 83)
Two-D
• Entire 2D image is replaced each time step.
John Conway’s Game of Life
• 2D cellular automata system.
• Each cell has 8 neighbors - 4 adjacent
orthogonally, 4 adjacent diagonally. This is
called the Moore Neighborhood.
Simple rules, executed at each
time step:
– A live cell with 2 or 3 live neighbors survives
to the next round.
– A live cell with 4 or more neighbors dies of
overpopulation.
– A live cell with 1 or 0 neighbors dies of
isolation.
– An empty cell with exactly 3 neighbors
becomes a live cell in the next round.
Is it alive?
• http://www.bitstorm.org/gameoflife/
• Compare it to the definitions…
Game of Life Assignment
• Implement the central genetic laws of the
Game of Life.
Hand out assignment and source
code
•
http://www.ics.uci.edu/~wmt/courses/BiomoW04/BiomoW04Assignment
1.html
•
http://www.ics.uci.edu/~wmt/courses/BiomoW04/GameOfLife.java
Eclipse
• How many people have used it?
Lab Time
• Please begin working on your assignments.
I’ll come around and make sure everything
is going smoothly. Please let me know if
you have any questions.