Download presentation
Presentation is loading. Please wait.
Published byBetty Harrington Modified over 9 years ago
1
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-1 Using the Experimental Method to Produce Reliable Self-Organised Systems Bruce Edmonds Centre for Policy Modelling, Manchester Metropolitan University
2
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-2 Part 1: About the Engineering and Adaptive Approaches to System Production Getting away from an “engineering is preferable” mindset
3
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-3 Approaches for Obtaining Useful Systems – The Engineering Approach Focusses on specification, design and construction stages What can be done to help ensure system is good before the system is constructed May use a theory of system behaviour But also systematisations of past experiences – methods that have been found to work E.g. the processes by which a steel girder is made so it will have the desired characteristics (a certain torsion strength etc.)
4
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-4 Approaches for Obtaining Useful Systems – The Adaptive Approach Focusses on observation, hypothesising, experiment and adjustment What can be done to help ensure system is good after the system is constructed May develop theory of of system behaviour But also might be ad hoc (trial and error) E.g. one may train a dog so that it acquires the behaviours and habits that you need to guard your house (barking at strangers etc.)
5
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-5 The (Idealised) Engineering Approach the construction process Specification and/or Goals for System Construction Plan test & compare
6
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-6 The (Idealised) Adaptive Approach Specification and/or Goals for System test & compare Adaption Plan cycle 1 change system cycle 2 Etc.
7
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-7 Combining the Two Approaches For example one might: –engineer a mechanism to adapt some software; –train a human to engineer a compiler; –adapt a system by re-engineering a part; etc. But far too often they are used seperately! Why? –Split between AI/CS and ML/EC communities –The assumption in AI/CS that (somehow) the engineering approach is better/proper/more desirable than the adaptive approach!
8
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-8 The Insufficiency of Engineering for Self-Organising Software Systems The openness and connectedness of today’s systems (alien parts/agents/nodes) Unknown and unchangeable exising parts The necessary complexity and hence unpredictability of today’s systems The impossibility of any general systematic or effective method of relating specification and implementation (Edmonds & Bryson AAMAS 2004)
9
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-9 Part 2: An Illustration - GASP systems How the engineering approach can be insufficient even for very simple systems
10
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-10 Example: A “Simple” Class of MAS – “GASP” systems Giving Agent System with Plans Fixed number of agents: A 1, A 2, …A n Each agent, A x, has –a store, S x –a fixed number of plans: P x1, P x2, … Each Plan, P xy, composed of instructions: –A fixed number of “give one to” –And one test: If S i is zero then do plan j next, otherwise plan k next Each time click, all do: get 1 unit; use current plan to: [do giving (while they have); test others; note next plan].
11
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-11 Thus all that happens in GASP systems is: That agents have a fixed set of very simple plans/programs Their state is the amount in their store and the index of the current plan All they do is give fixed amounts to other agents accorind to their current plan All they can perceive is whether an other agent’s store is zero or not… …which determines the index of the next plan in a fixed way
12
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-12 An illustration of a GASP system Plan 1: G 3 G 2 JZ 2,1,3 Plan 2: JZ 1,2,3 Plan 3: G 2 JZ 2,3,3 Agent 1 123 Agent 2 123 Agent 3 Etc. Check if zero 4 27 Store:
13
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-13 Facts about GASP systems They are Turing Complete, that is they can simulate any computer program, hence: –Many questions about their behaviour are (in general) undecidable given their program –E.g. one will not (in general) be able to check which GASP systems satisfy specification from its code But one can adapt them to perform tasks. This can be effective, even given fairly stupid trial&error methods and the GASP structure (which is not well-suited for adaption)
14
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-14 Example (toy) Problem for a GASP: shoring up (artificial) avalances Input 8 Accumulators Avalances generated by self-organised critcal system which is inherently difficult to predict GASP 1111 1 111 GASP evolved to distribute units to equal units in avalance accumulators - it races the SOC Input position can be fixed or variable
15
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-15 Results of Evolution (31 runs of the evolution of GASP populations of 12)
16
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-16 Part 3: Discussion - Towards an Experimental Approach If engineering can not be 100% effective, how can we produce reliable software systems?
17
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-17 The Fundermental Problems Q. How are we to ensure that the systems we produce will perform satisfactorily when they are deployed in their operating context? A. By engineering them more carefully. Q. But what if this is not enough? A. By also adapting the systems once built. Q. But how does one know this will result in systems that will perform satisfactorily (etc)? A. By systematically applying the classic experimental method used in the natural sciences to validate (induced) theory.
18
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-18 The place of a system theory Specification and/or Goals for System test & compare Theory of System Construction Plan the construction process Engineering Adaption Plan change system Adaption
19
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-19 Such system theory… …will necessarily be to a large extent inductive rather than deductive. It may orginate from different sources (the design, analogies with natural systems, by observation of the system etc.) but it will need to be tested using the classic experimental methods involving repeated and independent attempts at disproving theories and explicitly recording/revising the conditions of application.
20
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-20 My suggestion: an extension of the open-source model, where: As well as the usuall specifications, version history etc. Code is annotated with a series of testable hypotheses about its behaviour Each hypothesis will have a series of conditions where it has found to hold Each condition will have the results of testing under these conditions (e.g. comments, statistics about the support)
21
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-21 So over time…. This database will be added to as people try the code under new and old conditions Code which repeatedly conforms to useful hypotheses under a range of conditions will be used more than other code People will be able to have growing confidence in successful code and known when they can use it and how they can rely on it (due to hypotheses) Successful code will spawn variations (new entries for the new code) Unsuccessful code will be avoided/ignored The whole system will evolve!
22
Using the Experimental Method to Produce Reliable Self-Organised Systems, B. Edmonds, ESOA 2004, New York, July 2004, http://cfpm.org/~bruce slide-22 The End Bruce Edmonds bruce.edmonds.name Centre for Policy Modelling cfpm.org
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.