Newsgroups: comp.ai.alife
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!news.mathworks.com!europa.chnt.gtegsc.com!news.sprintlink.net!simtel!harbinger.cc.monash.edu.au!lugb!latcs1!latcs1.lat.oz.au!agapow
From: agapow@latcs2.lat.oz.au (p-m agapow)
Subject: Re: What's going on?
X-Nntp-Posting-Host: latcs2.lat.oz.au
Message-ID: <agapow.803362346@latcs1.lat.oz.au>
Sender: news@latcs1.lat.oz.au (news)
Organization: Comp Sci, La Trobe Uni, Australia
References: <3r6klu$jnk@seralph9.essex.ac.uk> <1995Jun9.112723.17763@zippy.dct.ac.uk>
Date: Sat, 17 Jun 1995 04:12:26 GMT
Lines: 55

colinj@iris.maths.napier.ac.uk (Colin Johnson) writes:
>Withers K J (kjwith@essex.ac.uk) wrote:
>: I have been taught that small programs can make agents exibit 
>: emergent behavior, I dissagree, if your not expecting the behavior 
>: to appear and it does then it's
>: just very bad programming technique, if we take the termite program 
>: for instance,
>: where is the emergent behavior in this as I would expect the agents 
>: to make such large piles, its commen sense.

>Erm . . . to say that it is "bad programming technique" would imply that the
>programs are written with a defined purpose, and that the emergent behavior
>is a side effect. This is not the case, the idea is that you write a program
>with some minimal set of rules, and see what behavior emerges from that. It 
>is a procedure closer to experimental science than computer programming in 
>the traditional sense.

"Bad technique" is not what i'd call it, but Withers has happened upon an
important issue : emergence. As it is used most often in AL this means
"emergence-from-a-model" meaning the system diverges from the observers
model of it. This has a few important implications :

1) it's always possible to find a point-of-view such that emergence is
	not occurring. For example watching fluctuations of memory consumption
	is unlikely to show anything astounding even if the animats have
	evolved a sophisticated ecosystem.
2) You can get into a large number of arguments over what is/isn't
	emergent. There are a number of ecosystems that demonstrate "emergent"
	behaviour (because they do something their creators didn't expect) but
	other people looking at them can say "Of course that was going to
	happen - it's an inevitable consequence of how your system was
	programmed ..." 
3) And then we get on to semantic and syntactic emergence (being the
	advent of new interactions with the environments and new computations).
	While most Al models have a lot of syntactic emergence, there's little
	or no semantic emergence because that's very diffuclt to express.
4) And let's no mention what happens when emergence-to-a-moldel gets mixed
	up with thermodynamic and/or computational emergence (which it does
	with regularity).

In conventional programming we don't want emergent properties (usually)
since we want programs that have clearly defined behaviour. Of course it
does sometimes happen, especially with parallel or network applications
(like say Ethernet storms or that fault that punched out part of the US
phone network a while back). Now that would be called "bad programming
technique".

cheers

p-m

paul-michael agapow (agapow@latcs1.oz.au), LaTrobe Uni

"There is no adventure, there is no romance, there is just trouble and desire"

