Top Banner
Bioinspired Computing Overview & Biased History Lecture 1:
77
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Bioinspired Computing Overview & Biased History Lecture 1:

Bioinspired Computing

Overview & Biased History

Lecture 1:

Page 2: Bioinspired Computing Overview & Biased History Lecture 1:

2

ObjectivesOn completion of this module, students should be able to: •understand both the appeals and limitations of natural systems as the inspiration for artificially intelligent systems;

•understand of some of the many artificial intelligence techniques that have been inspired by natural systems (eg. artificial neural networks, evolutionary computing, ant-like systems);

•implement one or more of these systems to solve a particular problem (eg., using an artificial network to control a simple simulated robot).

Page 3: Bioinspired Computing Overview & Biased History Lecture 1:

3

Syllabus

Introduction, history and philosophy of bio-inspired computing; artificial neural networks for pattern recognition; artificial neural networks for

control; multi-agent systems and swarm intelligence; bio-inspired graphics and art;

evolutionary design; coevolutionary design; simulation modelling in biology and beyond;

applications of bio-inspired computing.

Page 4: Bioinspired Computing Overview & Biased History Lecture 1:

4

Today ….

Overview talkOutcome• Introduction to the module• Insight in why the field is attractive to many

people• First review of some of the characteristics that

bio-inspired approaches share

Page 5: Bioinspired Computing Overview & Biased History Lecture 1:

5

Lecturing Staff• Marc de Kamps ([email protected])

– Started in high energy physics– Postdoc in cognitive modelling

• Neural networks• Spiking neurons simulation• Vision, attention (in vision), neural representation of

language

• Slides based on last year’s lectures– A long string of original contributions over the years:

Seth Bullock, Jason Noble, Netta Cohen – Slides will be handed out– All slides currently available, but these will be updated

from last year’s version as the weeks progress (so don’t assume things will be exactly the same as last year!)

• Next year: third year module • prereq.: maths

Page 6: Bioinspired Computing Overview & Biased History Lecture 1:

6

Timetabling

This module has two consecutive lecture slotsMondays 12:00 – 14:00 Roger Stevens LT12

Demonstration slot allocated Thursday 15:00 – 16:00 Roger Stevens LT04

Demonstration sessions will only be given some weeks- notified in advance in lecture and/or newsgroup.

WATCH THE MODULE NEWSGROUP FOR UPDATES

Page 7: Bioinspired Computing Overview & Biased History Lecture 1:

7

Resources

• Course Website: http://www.comp.leeds.ac.uk/ai23– Lecture Slides– Module Outline– Reading Lists– Assignments– Useful Links

• Newsgroups: local.modules.ai23 and ...ai23.talk• Reading available in library, or via links on course page.• Each other

– Talk about the material.– Talk about the assignments.– Help each other; feel free to work together, but– Submit only you own personal original work.

Page 8: Bioinspired Computing Overview & Biased History Lecture 1:

8

What is this module all about?

Biological computation Artificial Intelligence

Bio-inspired computing

Page 9: Bioinspired Computing Overview & Biased History Lecture 1:

9

What is Bio-inspired computing?

• What is computing? • Answer can be given in some way: Universal Turing

Machine• Example: compute planet trajectories

Page 10: Bioinspired Computing Overview & Biased History Lecture 1:

10

1672

Page 11: Bioinspired Computing Overview & Biased History Lecture 1:

11

1672

Page 12: Bioinspired Computing Overview & Biased History Lecture 1:

12

1672

Page 13: Bioinspired Computing Overview & Biased History Lecture 1:

13

1673

Page 14: Bioinspired Computing Overview & Biased History Lecture 1:

14

1673

Page 15: Bioinspired Computing Overview & Biased History Lecture 1:

15

Page 16: Bioinspired Computing Overview & Biased History Lecture 1:

16

The Birth of AIIn the 1940s Alan Turing was already speculating on…

Artificial Intelligence is an attempt to simulate reasoning as:

abstract, formal, disembodied, symbol manipulation.

1. …the possibility of general computer intelligence –

abstract games: good initial tasks ‘requiring little contact with the outside world’…

2. …the potential for a computer chess player –

search algorithms to used to find good moves…

3. …a way of deciding whether a computer was intelligent – the Turing Test is a totally disembodied interrogation (but a somewhat situated one)…

Note that Turing was also interested in BiC – “The chemical basis of morphogenesis” (52)

Page 17: Bioinspired Computing Overview & Biased History Lecture 1:

17

What is Bio-inspired computing?

• What is computing? • Answer can be given in some way: Universal Turing

Machine• Example: compute planet trajectories• Fixed recipe

– Chop up state space– Define mapping– Write program– Run it -> Done

• Since ENIAC we’ve been upgrading the UTM• Strong AI

Page 18: Bioinspired Computing Overview & Biased History Lecture 1:

18

Criticism of AI

• Sometimes unfair: – "As soon as someone gets a computer to do it,

people say: 'That's not what we meant by intelligence.' People subconsciously are trying to preserve for themselves some special role in the universe."

– - Michael Kearns– The AI Effect: "The great practical benefits of AI applications and

even the existence of AI in many software products go largely unnoticed by many despite the already widespread use of AI techniques in software. This is the AI effect. Many marketing people don't use the term 'artificial intelligence' even when their company's products rely on some AI techniques. Why not?"

• See http://aaai.org/AITopics/html/aieffect.html

Page 19: Bioinspired Computing Overview & Biased History Lecture 1:

19

SHRDLUBy 1972, Terry Winograd’s invented a simulated robot arm surrounded by blocks of various shapes and colours on a table.

SHRDLU could…

In Winograd’s words, it was “a computer program which ‘understands’ language in a limited domain.”

SHRDLU’s algorithms carried out model building, search, planning and logical deduction.

• understand natural language instructions• ask questions to disambiguate these instructions• act & reason in a simulated “blocksworld” environment• answer questions about the world & its own reasoning

See for example: http://hci.stanford.edu/~winograd/shrdlu/

Page 20: Bioinspired Computing Overview & Biased History Lecture 1:

20

A Conversation with SHRDLU

(adapted from Dreyfus’ 1979 What Computers Can’t Do)

> Pick up a big red block.OKAY.> Grasp the pyramid.I DON’T KNOW WHICH PYRAMID YOU MEAN.> What does the box contain?THE BLUE PYRAMID AND THE BLUE BLOCK.> I own blocks which are not red, but I don’t own

anything which supports a pyramid.

I UNDERSTAND.> Do I own the box?NO.

Page 21: Bioinspired Computing Overview & Biased History Lecture 1:

21

Is that really how our brain works?

John Von Neumann, father of modern high-speed computers also thought about neuro-computation and tried, for the first time, to construct a meaningful comparison between brain and computer power.

Von Neumann argued that the brain must employ digital computation. Figuring in the number of neurons, connections, and estimates of computational speed and statistical noise in the brain, he then concluded that the brain could not be explained by logic alone.

In fact, he apparently postulated (and began writing) an alternative theory but died soon after.

Page 22: Bioinspired Computing Overview & Biased History Lecture 1:

22

“The Language of the Brain is Not the Language of Mathematics … whatever language the central nervous system is using, it is characterized by less logical and arithmetical depth than what we are normally used to … Consequently, there exist here different logical structures from the ones we are ordinarily used to... … whatever the system is, it cannot fail to differ considerably from what we consciously and explicitly consider as mathematics.”

(John Von Neumann, The Computer and the Brain, 1958.)

The manuscript (published post mortem) ends as follows:

“Von Neumann challenged the validity of the underlying conceptualizations we use to study the brain and compare it with computers. Yet, what is surprising, given the great esteem for John Von Neumann, is that no one has taken up on his argument and fully developed its consequences in the mind versus artificial intelligence arguments that had been waging the last few years.”

In a recent commentary, Harold Morowitz writes:

Page 23: Bioinspired Computing Overview & Biased History Lecture 1:

23

Criticism of AI

(see eg. Pfeifer, “Understanding Intelligence”)

• Frame problem• Symbol grounding problem

Page 24: Bioinspired Computing Overview & Biased History Lecture 1:

24

Frame Problem(McCarthy & Hayes, 1969)

Example Wikipedia• Predicates which can depend on time t are

called fluents• A situation where a door is closed, the light is

off and and the door is opened at t = 1 can be represented by:

┐open(0)┐on(0)

true →open(1)• Direct expression of what is known, but

insufficient to correctly draw consequences

Page 25: Bioinspired Computing Overview & Biased History Lecture 1:

25

Frame Problem• The following situation is logically consistent

with the known situation:┐open(0) open(1)

┐on(0) ┐on(1)• The following too:

┐open(0) open(1)┐on(0) on(1)

• This makes no sense causally, but perfect sense logically

• A superficial solution requires frame axioma’s:on(0) ≡ on(1)

Page 26: Bioinspired Computing Overview & Biased History Lecture 1:

26

Frame Problem

• To formulate frame axioms for every condition, action combination that must not change is not an option

• Solution possible but subtle, unlikely for living creatures

• “The frame problem in philosophy is therefore the problem of how a rational agent bounds the set of beliefs to change when an action is performed.” (Wikipedia)

• Biological creatures (including humans) seem not overly troubled by it …

Page 27: Bioinspired Computing Overview & Biased History Lecture 1:

27

Symbol Grounding Problem(Searle 1980; Harnard 1990)

• In AI rules are used to operate on symbols• The rules operate independent of the

meaning of symbols• This is not a problem as long as there is a

human around to make sense of the symbols

• Powerful formal reasoning• Difficulties with interpretation• Computer vision, speech recognition,

interpretation still difficult

Page 28: Bioinspired Computing Overview & Biased History Lecture 1:

28

Chess vs. Football

Chess

• Discrete

• Full Information

• Single Opponents

• Turn Taking

• Limited Options per Turn

• Intellectual, disembodied

• Optimal Strategy Exists?

• Demands General Intelligence?

• Formal, Analytical, Symbolic

•Can the problems faced by footballers be solved through symbol processing and heuristic search?•Commentary v. playing?

Football

• Continuous

• Partial Information

• Heterogeneous Teams

• Continuous Confrontation

• Unlimited Options

• Physical, embodied

• No Optimal Strategy?

• Demands Specialist Skills?

• Dynamic, Physical, Reactive

Page 29: Bioinspired Computing Overview & Biased History Lecture 1:

29

“Intelligence w/out Reason”

Rodney Brooks (“Intelligence Without Reason”): Critic of the AI approach & strong proponent of embodiment and situatedness in bioinspired computing (BIC).

AI, he claims, followed the abstract route due totechnological gaps in the 40s & 50s.

Today (1991), he says, it’s time to move on.

Brooks recognised that life-like systems are often intelligent to some degree, yet reasoning is primarily considered to be a human attribute. Rather than modelling complicated human behaviour, why not start simple?

Page 30: Bioinspired Computing Overview & Biased History Lecture 1:

30

“There are a number of key aspects characterizing this style of work

• [Situatedness] The robots are situated in the world - they do not deal with abstract descriptions but with the here and now of the world directly influencing the behavior of the system.

• [Embodiment] The robots have bodies and experience the world directly their actions are part of a dynamic with the world and have immediate feedback on their own sensations.

• [Intelligence] They are observed to be intelligent - but the source of intelligence is not limited to just the computational engine. It also comes from the situation in the world, the signal transformations within the sensors, and the physical coupling of the robot with the world.

• [Emergence] The intelligence of the system emerges from the system's interactions with the world and from sometimes indirect interactions between its components - it is sometimes hard to point to one event or place within the system and say that is why some external action was manifested.”

(Brooks 91)

Page 31: Bioinspired Computing Overview & Biased History Lecture 1:

31

Why Not The Whole Iguana?(Dennett 78)

• Traditional computing is task-oriented (vertical).• To survive, animals have to be good across the board!

Ant

Cricket

Iguana

Human

Walking Sex Memory Chess

Horizontal

Ver

tica

l

Rather than build parts of human intelligence, why not build an entire much simpler intelligence?

Page 32: Bioinspired Computing Overview & Biased History Lecture 1:

32

Performance without CPU

• Locomotion

• Examples of dynamic movers:http://mms.tudelft.nl/dbl/download/video/(museonside.mpg was shown in the lecture)

• Compare: http://world.honda.com/ASIMO/history/technology.html

Page 33: Bioinspired Computing Overview & Biased History Lecture 1:

33

• dynamic• flexible, adaptive• robust, noise/defect tolerant

Biological performance is

http://dictybase.org/Multimedia/index.html http://dictybase.org/Multimedia/motility/gerisch1.avi

How do biological systems deal with these issues?

Page 34: Bioinspired Computing Overview & Biased History Lecture 1:

34

Slime moulds

When food is plentiful, amoebae live & multiply independently. When food is scarce, they secrete a chemical signal that attracts amoebae towards each other. As cells aggregate they form a mound, then a slug, and eventually fruiting bodies. The slug can migrate to a more desirable location.

When a slug reaches an appropriate place, the cells differentiate to form spores and a stalk. The fruiting body consists of mature spore cells on top of dead stalk cells. These spore cells fall off, starting their own colonies.

Free-ranging amoebae

aggregationmigratory slugs

fruiting body

mound

Page 36: Bioinspired Computing Overview & Biased History Lecture 1:

36

Chemical waves in slime mould

Page 37: Bioinspired Computing Overview & Biased History Lecture 1:

37

DNA preserving fortunate accidents

Page 38: Bioinspired Computing Overview & Biased History Lecture 1:

38

Powerful idea

• Does not really depend on actual mechanism

• Can be used in artificial systems?

• Yes, evolve hardware, programs

• Good search technique!

Page 39: Bioinspired Computing Overview & Biased History Lecture 1:

39

The slime mould…

• Is no more than a collective manifestation of amoeba

• It self-organised in the face of duress (food deprivation, pressure for self-preservation/self-replication).

• It is completely decentralised/distributed: There is no leader.

• Each amoeba follows simple rules.

• Individual amoebas are not reliable.

• The amoeba is adaptive; its function is context-dependent.

• Interactions among different levels of organisation

• The solution is defined in terms of the system at large (slime mould and its survival, not individual amoeba).

Page 40: Bioinspired Computing Overview & Biased History Lecture 1:

40

Performance without CPU (2)

• EU project hydra

• http://hydra.mip.sdu.dk/home.html

• ATRON hardware videoshttp://hydra.mip.sdu.dk/Videos/atronHWvideos/s2c.avi

• Self-configuring BOEING:http://hydra.mip.sdu.dk/Videos/CA_videos/747_slow.mpg

Page 41: Bioinspired Computing Overview & Biased History Lecture 1:

41

Some unifying concepts/inspirations

• Eliminate pre-imposed hierarchies, eliminate leaders

• Allow a decentralised (distributed) approach and parallelism

• Allow simple rules for cooperation among components

• Allow interactions among different levels of organisation

• Define solutions in terms of system-wide variables

Computers need not be as complex as biological machines. By incorporating key principles we hope to

achieve much improved functionality.

Page 42: Bioinspired Computing Overview & Biased History Lecture 1:

42

What might computer scientistslearn from biological systems?

Some limitations of today’s computers:

• Computers crash! (OS usually to blame)

• The complexity of computer programs is limited. The biggest programs are less complicated than the simplest biological cell.

• Computers don’t self-replicate.

• They don’t self-organise.

• They don’t fix themselves.

• Computers are always right (i.e. they follow their programs correctly), but don’t always give the answers we want to know. Computers are unforgiving.

Page 43: Bioinspired Computing Overview & Biased History Lecture 1:

43

Potential implications:

Pretty soon computers will miniaturise to molecular scales. This transition will require • noise/defect-tolerance• self-assembly/self-organisation at the hardware level

Software will need to cope with ever-increasing complexity. Can software self-organise? Self-evolving software is already in use both in traditional computing & robotics.

Computer systems are networked in massive complex and dynamic architectures. Distributed approaches to managing networks/grids are being implemented. Specifically, ant algorithms are used in re-organising internet connectivity in the face of node failures.

Page 44: Bioinspired Computing Overview & Biased History Lecture 1:

44

• Collective behaviour

• self-organisation, self-assembly and self-repair

• self-replication/reproduction

Properties of biological systems

Emergence: Organisation of structure & function is achieved by the system as a coherent, organic and autonomous entity, even though this whole consists of components which are themselves autonomous.

The whole is greater than the sum of the parts.

Page 45: Bioinspired Computing Overview & Biased History Lecture 1:

45

Collective computations finds reasonable solutions

• Biological creatures are sometimes faced with very hard problems

• Solution does exist, but takes impossible time to solve

• Collective action sometimes produces a solution that is reasonable in short time

Page 46: Bioinspired Computing Overview & Biased History Lecture 1:

46

The problem: Directed Hamiltonian Path• Given a graph with directed edges, find a Hamiltonian Path, i.e. a path which starts at one node, finishes at another, and goes through all other nodes exactly once.

• Variant of the travelling salesman problem where all roads are the same length:

• A salesman wants to travel over a fixed set of roads between N different towns without ever coming back to a town he has already visited.

Find a sequence of fights which goes from Fresno to Boston landing at all other airports exactly once.

Page 47: Bioinspired Computing Overview & Biased History Lecture 1:

47

A P problem is one which can be solved in polynomial time, basically at a rate which is some fixed power of N, where N is the size of the problem. An NP hard problem is one for which no one knows an algorithm which does not take exponential time (2 or some other power of a number > 1).

Methods taking exponential operations can work out whether or not such a route exists and report it if it does, but even for small problems they take too much time to be practical.

How hard is it?

Any NP problem can be transformed to another in P time – so solve one efficiently and can solve any NP problem efficiently!

Page 48: Bioinspired Computing Overview & Biased History Lecture 1:

48

Emergent solutions

• We will look at solutions that emerge from systems of interacting basic components in:– Neural Networks (2x; different!)– Swarm Intelligence– DNA computing

Page 49: Bioinspired Computing Overview & Biased History Lecture 1:

49

Open questions

• Can human cognition be understood this way?

• Is human cognition a dynamical process, which self-organizes, is emergent, …?

• Does the brain have executive modules?• There are manifest differences: e.g. symbols

can not be copied

Page 50: Bioinspired Computing Overview & Biased History Lecture 1:

50

• Collective behaviour

• self-organisation, self-assembly and self-repair

• self-replication/reproduction

• emergence

Examples

What are the underlying principles that give rise to this behaviour?

Page 51: Bioinspired Computing Overview & Biased History Lecture 1:

51

Pattern formation in nature

Page 52: Bioinspired Computing Overview & Biased History Lecture 1:

52

From Pattern Formation to Computing?

Conjecture:

If principles of pattern formation underlie the development of a foetus, why not the development of program or an electronic circuit?

Computers need not be as complex as biological machines. Maybe by incorporating key principles from biology we can already achieve much improved functionality.

First baby steps:

Pattern formation could be useful if…• We can extract minimal principles to mimic it.• We can harness the patterns for useful computation.

Page 53: Bioinspired Computing Overview & Biased History Lecture 1:

53

Why do we care?

• Computer hardware is “hard”, but must it be?

• What about ad-hoc configurations of computer and communications networks?

• Pattern formation is an example of parallel processing that is highly versatile, adaptive, and robust. Can we simplify existing algorithms using similar concepts?

• Simulations of natural pattern formation processes are a growing industry for art, movies, and even music.

Page 54: Bioinspired Computing Overview & Biased History Lecture 1:

54

Lindenmayer SystemsL-systems define sets of local rules for making patterns.

Requirements: an initial term and a set of rules.

A simple rewriting system:

Rule: A AB

would develop as follows:

A … AB … ABB … ABBB…

Adding rule B BA, gives:

A … AB … ABBA …

ABBA BAAB …

ABBA BAAB BAAB ABBA …

ABBA BAAB BAAB ABBA BAAB ABBA ABBA BAAB …

ABBA BAAB BAAB ABBA BAAB ABBA ABBA BAAB BAAB ABBA ABBA BAAB ABBA BAAB BAAB ABBA …

Notice: early strings are sub-components of later strings. Also, strings are self similar at all levels.

Page 55: Bioinspired Computing Overview & Biased History Lecture 1:

55

Geometric Rewriting SystemsReplace letters with geometries: Grow pictures, not sentences…

Turtle graphics approach: Imagine a turtle that can only understand three commands: F (move forward a distance d, drawing a line); + (turn left through ao), - (turn right through ao).

Set d=1, a=90. Give turtle initial string of commands (say F-F-F-F). Then, apply set of rewrite rules again and again and again…

(The resulting patterns will be examples of quadratic Koch islands)

Example rewrite rule:F F-F+F+FF-F-F+F

Page 56: Bioinspired Computing Overview & Biased History Lecture 1:

56

From lines to treesTo generate more life-like shapes…

First, we need a way of representing branches. To do this, Lindenmayer employs a bracketing notation:

[ Before carrying on, push the current state of the turtle onto the top of a pushdown stack (i.e., remember the current position and orientation of the turtle for later).

] Before carrying on, pop the state from the top of the stack and make it the current state of the turtle. This will often move the turtle to a different (earlier) part of the shape, or rotate it, or perhaps alter its state in some other way.

How does stack system affect L-system’s behaviour?

Page 57: Bioinspired Computing Overview & Biased History Lecture 1:

57

Branching structures & self-similarityImagine a simple L-System featuring brackets…

Initiator:F Rewrite Rules:F F [+F] [-F] F ; a=30o

0: F

Tree-like structures and other shapes that look the same on every scale, are called self-similar systems. These self-similar structures are simple examples of fractals.

2: F[+F][-F]F

[+F[+F]-F]F]

[-F[+F]-F]F]

F[+F][-F]F

1: F[+F][-F]F

Recursion + branching = tree-like structures

3: etc.

Note rescaling

Page 58: Bioinspired Computing Overview & Biased History Lecture 1:

58

Exploring Simple L-SystemsIt isn’t hard to discover initial states, rules, and constants which produce recognisably plant-like structures.

However, when generalised to three dimensions, coupled with appropriate textures and colouration, and altered to include leaves, flowers, etc., L-systems have been used to generate some truly remarkable life-like images.

Image courtesy M. MasseImages authored by V. Nový

Page 59: Bioinspired Computing Overview & Biased History Lecture 1:

59

Overview of next weeks

Page 60: Bioinspired Computing Overview & Biased History Lecture 1:

60

Topics in bio-inspired computing

• Multi-agent systems and Swarm Intelligence • Artificial neural networks• Evolutionary design and genetic algorithms• Co-evolutionary design • Artificial life• Robotics and control• Interfacing biology with silicon

Page 61: Bioinspired Computing Overview & Biased History Lecture 1:

61

Food foraging in Ant colonies

http://education.mit.edu/starlogo/ http://education.mit.edu/starlogo/samples/ants.htm

A computer simulation of an ant colony performing an efficient search: Blue spot in the middle is an ant nest; other 3 spots represent food sources. Ants (red dots) use chemical signals (green) to find the shortest path to the food and alter their signals as the food is depleted.

Ant algorithms are implemented in many real-world systems.

Page 62: Bioinspired Computing Overview & Biased History Lecture 1:

62

System wide variables(Felleman & van Essen, 1991)

Page 63: Bioinspired Computing Overview & Biased History Lecture 1:

63

Interaction between hierachies(Felleman & van Essen, 1991)

Page 64: Bioinspired Computing Overview & Biased History Lecture 1:

64

Self-organisation and interaction with environment

• Orientation columns human cortex

Page 65: Bioinspired Computing Overview & Biased History Lecture 1:

65

Emergence

Page 66: Bioinspired Computing Overview & Biased History Lecture 1:

66

Extraction essential principles

• Feedforward perceptron networks

Page 67: Bioinspired Computing Overview & Biased History Lecture 1:

67

Extraction essential principles

• Working memory

Page 68: Bioinspired Computing Overview & Biased History Lecture 1:

68

Overview end

Page 69: Bioinspired Computing Overview & Biased History Lecture 1:

69

Biological computation

ArtificialIntelligence

Bio-inspiredcomputing or

What is BIC and what does it want to achieve?

Page 70: Bioinspired Computing Overview & Biased History Lecture 1:

70

Bioinspired programming

Some of the best bioinspired applications to computing are the ones we would never associate with biology.

Perhaps the most successful and pervasive bioinspired application is…

Object-Oriented Programming

Page 71: Bioinspired Computing Overview & Biased History Lecture 1:

71

Alan Kayby Scott Gasch

While studying at the University of Utah he learned about the innovative Sketchpad program developed by Ivan Sutherland and began programming in Simula. Borrowing ideas from this and other systems, as well as from his background in biology and mathematics, he formulated his "biological and algebraic analogy.“

Kay postulated that the ideal computer would function like a living organism; each "cell" would behave in accord with others to accomplish an end goal but would also be able to function autonomously. Cells could also regroup themselves in order to attack another problem or handle another function.

http://ei.cs.vt.edu/~history/GASCH.KAY.HTML

Page 72: Bioinspired Computing Overview & Biased History Lecture 1:

72

How it works• Autonomous cells• Messages (data, sender & receiver addresses)• Operations (contained in message) • Cell differentiation (context-dependent functionality)

What good is this?

‘Building’ programs the way civil engineers design buildings. programmers can create objects to mimic generic conceptual building blocks: No need for a new language with each application.

Inspiration & technical basis for the MacIntosh OS and subsequent windowing based systems (NextStep, Microsoft Windows, X-Windows, Motif, etc.).

Page 73: Bioinspired Computing Overview & Biased History Lecture 1:

73

Consider

No biological creature:

• Developed the wheel

• Flew to the moon

• Communications via radio

Much of engineering is not bio-inspired

Page 74: Bioinspired Computing Overview & Biased History Lecture 1:

74

Human level cognition

Seems to combine much of both worlds• Symbol processing, reasoning,

exploration• Use of tools• Locomotion• Adaptation, genetic variation,

reproduction• Social structures (like ants, termites)

Page 75: Bioinspired Computing Overview & Biased History Lecture 1:

75

Required Reading (at home)

• “Intelligence without reason” – Brooks (1991).

Popular Reading

• “John McCarthy: The uncommon logician of common sense”, in Shasha & Lazere (1995).

• “Alan Kay: A clear romantic vision”, ibid.• “Computers and Brains”, in Morowitz (1997).

Page 76: Bioinspired Computing Overview & Biased History Lecture 1:

76

Some basics• This module is for you. Think, read, ask questions,

tinker, and have fun!

• Warning: Some of the material covered is, or recently was, cutting edge.

• There will be programming, some biology, some philosophy.

• There is a lot of material to cover in lectures, but… lecture slides will not tell the whole story. You must attend lectures and demo sessions

• The module courseware – BEAST – will be introduced over the coming weeks. Help with C++, installation etc. will be given in demo sessions.

• Originality and innovation will be rewarded. Show enthusiasm, play, contribute original code.

Page 77: Bioinspired Computing Overview & Biased History Lecture 1:

77

• 2-Hour Exam (60%) - answer 3 questions of 4• 2 assignments (40%) of which • 1st assignment (15%) will be announced shortly• 2nd assignment includes BEAST analysis &

programming project. (25%) will be announced shortly.

• Additional exercises may be given in demo sessions.• Assignments & exam must be passed to pass module.

Assessment