Lecture 2 Computational Complexity Time Complexity Space Complexity.
Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes
-
Upload
andrea-omicini -
Category
Technology
-
view
102 -
download
0
description
Transcript of Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes
![Page 1: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/1.jpg)
Autonomy, Interaction & Complexityin Computational Systems
Preliminary Notes
Andrea [email protected]
Dipartimento di Informatica: Scienza e Ingegneria (DISI)Alma Mater Studiorum—Universita di Bologna a Cesena
Law and Policy for Autonomous Military Systems WorkshopEuropean University Institute in Florence, Italy – 6 March 2013
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 1 / 48
![Page 2: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/2.jpg)
Outline
1 Autonomy in Programming Languages
2 Autonomy for Multi-Agent Systems
3 Autonomy in Complex Artificial Systems
4 Conclusion
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 2 / 48
![Page 3: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/3.jpg)
Autonomy in Programming Languages
Outline
1 Autonomy in Programming Languages
2 Autonomy for Multi-Agent Systems
3 Autonomy in Complex Artificial Systems
4 Conclusion
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 3 / 48
![Page 4: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/4.jpg)
Autonomy in Programming Languages
Evolution of Programming Languages: The Picture
[Odell, 2002]
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 4 / 48
![Page 5: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/5.jpg)
Autonomy in Programming Languages
Evolution of Programming Languages: Dimensions
Historical evolution
Monolithic programming
Modular programming
Object-oriented programming
Agent programming
Degree of modularity & encapsulation
Unit behaviour
Unit state
Unit invocation
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 5 / 48
![Page 6: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/6.jpg)
Autonomy in Programming Languages
Monolithic Programming
The basic unit of software is the whole program
Programmer has full control
Program’s state is responsibility of the programmer
Program invocation determined by system’s operator
Behaviour could not be invoked as a reusable unit under differentcircumstances
modularity does not apply to unit behaviour
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 6 / 48
![Page 7: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/7.jpg)
Autonomy in Programming Languages
Evolution of Programming Languages: The Picture
Monolithic Programming
Encapsulation? There is no encapsulation of anything, in the very end
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 7 / 48
![Page 8: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/8.jpg)
Autonomy in Programming Languages
The Prime Motor of Evolution
Motivations
Larger memory spaces and faster processor speed allowed program tobecame more complex
Results
Some degree of organisation in the code was required to deal with theincreased complexity
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 8 / 48
![Page 9: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/9.jpg)
Autonomy in Programming Languages
Modular Programming
The basic unit of software are structured loops / subroutines /procedures / . . .
this is the era of procedures as the primary unit of decomposition
Small units of code could actually be reused under a variety ofsituations
modularity applies to subroutine’s code
Program’s state is determined by externally supplied parameters
Program invocation determined by CALL statements and the likes
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 9 / 48
![Page 10: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/10.jpg)
Autonomy in Programming Languages
Evolution of Programming Languages: The Picture
Modular Programming
Encapsulation? Encapsulation applies to unit behaviour only
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 10 / 48
![Page 11: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/11.jpg)
Autonomy in Programming Languages
Object-Oriented Programming
The basic unit of software are objects & classes
Structured units of code could actually be reused under a variety ofsituations
Objects have local control over variables manipulated by their ownmethods
variable state is persistent through subsequent invocationsobject’s state is encapsulated
Object are passive—methods are invoked by external entities
modularity does not apply to unit invocationobject’s control is not encapsulated
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 11 / 48
![Page 12: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/12.jpg)
Autonomy in Programming Languages
Evolution of Programming Languages: The Picture
Object-Oriented Programming
Encapsulation? Encapsulation applies to unit behaviour & state
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 12 / 48
![Page 13: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/13.jpg)
Autonomy in Programming Languages
Agent-Oriented Programming
The basic unit of software are agentsencapsulating everything, in principle
by simply following the pattern of the evolution
whatever an agent is
we do not need to define them now, just to understand their desiredfeatures
Agents could in principle be reused under a variety of situations
Agents have control over their own state
Agents are active
they cannot be invokedagent’s control is encapsulated
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 13 / 48
![Page 14: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/14.jpg)
Autonomy in Programming Languages
Evolution of Programming Languages: The Picture
Agent-Oriented Programming
Encapsulation? Encapsulation applies to unit behaviour, state &invocation
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 14 / 48
![Page 15: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/15.jpg)
Autonomy in Programming Languages
Features of Agents
Before we define agents. . .
. . . agents are autonomous entities
encapsulating their thread of controlthey can say “Go!”
. . . agents cannot be invoked
they can say “No!”they do not have an interface, nor do they have methods
. . . agents need to encapsulate a criterion for their activity
to self-govern their own thread of control
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 15 / 48
![Page 16: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/16.jpg)
Autonomy in Programming Languages
Dimensions of Agent Autonomy
Dynamic autonomy
Agents are dynamic since they can exercise some degree of activity
they can say “Go!”
From passive through reactive to active
Unpredictable / non-deterministic autonomy
Agents are unpredictable since they can exercise some degree ofdeliberation
they can say “Go!”, they can say “No!”and also because they are “opaque”—may be unpredictable to externalobservation, not necessarily to design
From predictable through partially predictable to unpredictable
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 16 / 48
![Page 17: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/17.jpg)
Autonomy in Programming Languages
Objects vs. Agents: Interaction & Control
Message passing in object-oriented programming
Data flow along with control
data flow cannot be designed as separate from control flow
A too-rigid constraint for complex distributed systems. . .
Message passing in agent-oriented programming
Data flow through agents, control does not
data flow can be designed independently of control
Complex distributed systems can be designed by designinginformation flow
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 17 / 48
![Page 18: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/18.jpg)
Autonomy in Programming Languages
Philosophical Differences [Odell, 2002] I
Decentralisation
Object-based systems are completely pre-determined in control;control is centralised, and defined at design time
Agent-oriented systems are essentially decentralised in control
Small in impact
Losing an object in an object-oriented system makes the whole systemfail, or at least raise an exception
Losing an agent in a multi-agent system may lead to decreases inperformance, but agents are not necessarily single points of failure
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 18 / 48
![Page 19: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/19.jpg)
Autonomy in Programming Languages
Philosophical Differences [Odell, 2002] II
Emergence
Object-based systems are essentially predictable
Multi-agent systems are intrinsically unpredictable andnon-formalisable and typically give raise to emergent phenomena
Analogies from nature and society
Object-oriented systems have not an easy counterpart in nature
Multi-agent systems closely resembles existing natural and socialsystems
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 19 / 48
![Page 20: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/20.jpg)
Autonomy for Multi-Agent Systems
Outline
1 Autonomy in Programming Languages
2 Autonomy for Multi-Agent Systems
3 Autonomy in Complex Artificial Systems
4 Conclusion
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 20 / 48
![Page 21: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/21.jpg)
Autonomy for Multi-Agent Systems
Autonomy as the Foundation of the Definition of Agent
Lex Parsimoniae: Autonomy
Autonomy as the only fundamental and defining feature of agentsLet us see whether other typical agent features follow / descend fromthis somehow
Computational Autonomy
Agents are autonomous as they encapsulate (the thread of) controlControl does not pass through agent boundaries
only data (knowledge, information) crosses agent boundaries
Agents have no interface, cannot be controlled, nor can they beinvokedLooking at agents, MAS can be conceived as an aggregation ofmultiple distinct loci of control interacting with each other byexchanging information
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 21 / 48
![Page 22: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/22.jpg)
Autonomy for Multi-Agent Systems
(Autonomous) Agents (Pro-)Act
Action as the essence of agency
The etimology of the word agent is from the Latin agens
So, agent means “the one who acts”
Any coherent notion of agency should naturally come equipped with amodel for agent actions
Autonomous agents are pro-active
Agents are literally active
Autonomous agents encapsulate control, and the rule to govern it
→ Autonomous agents are pro-active by definition
where pro-activity means “making something happen”, rather thanwaiting for something to happen
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 22 / 48
![Page 23: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/23.jpg)
Autonomy for Multi-Agent Systems
Agents are Situated
The model of action depends on the context
Any “ground” model of action is strictly coupled with the contextwhere the action takes place
An agent comes with its own model of action
Any agent is then strictly coupled with the environment where it livesand (inter)acts
Agents are in this sense are intrinsically situated
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 23 / 48
![Page 24: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/24.jpg)
Autonomy for Multi-Agent Systems
Agents are Reactive I
Situatedness and reactivity come hand in hand
Any model of action is strictly coupled with the context where theaction takes place
Any action model requires an adequate representation of the world
Any effective representation of the world requires a suitable balancebetween environment perception and representation
→ Any effective action model requires a suitable balance betweenenvironment perception and representation
however, any non-trivial action model requires some form of perceptionof the environment—so as to check action pre-conditions, or to verifythe effects of actions on the environment
Agents in this sense are supposedly reactive to change
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 24 / 48
![Page 25: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/25.jpg)
Autonomy for Multi-Agent Systems
Agents are Reactive II
Reactivity as a (deliberate) reduction of proactivity
An autonomous agent could be built / choose to merely react toexternal events
It may just wait for something to happen, either as a permanentattitude, or as a temporary opportunistic choice
In this sense, autonomous agents may also be reactive
Reactivity to change
Reactivity to (environment) change is a different notion
This mainly comes from early AI failures, and from robotics
It stems from agency, rather than from autonomy
However, this issue will be even clearer when facing the issue ofartifacts and environment design
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 25 / 48
![Page 26: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/26.jpg)
Autonomy for Multi-Agent Systems
(Autonomous) Agents Change the World
Action, change & environment
Whatever the model, any model for action brings along the notion ofchange
an agent acts to change something around in the MAS
Two admissible targets for change by agent action
agent an agent could act to change the state of another agent
since agents are autonomous, and only data flow amongthem, the only way another agent can change their stateis by providing them with some informationchange to other agents essentially involvescommunication actions
environment an agent could act to change the state of theenvironment
change to the environment requires pragmatical actionswhich could be either physical or virtual depending onthe nature of the environment
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 26 / 48
![Page 27: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/27.jpg)
Autonomy for Multi-Agent Systems
Autonomous Agents are Social
From autonomy to society
From a philosophical viewpoint, autonomy only makes sense when anindividual is immersed in a society
autonomy does not make sense for an individual in isolationno individual alone could be properly said to be autonomous
This also straightforwardly explain why any program in any sequentialprogramming language is not an autonomous agent per se[Graesser, 1996, Odell, 2002]
Autonomous agents live in a MAS
Single-agent systems do not exist in principleAutonomous agents live and interact within agent societies & MASRoughly speaking, MAS are the only “legitimate containers” ofautonomous agents
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 27 / 48
![Page 28: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/28.jpg)
Autonomy for Multi-Agent Systems
Autonomous Agents are Interactive
Interactivity follows, too
Since agents are subsystems of a MAS, they interact within the globalsystem
by essence of systems in general, rather than of MAS
Since agents are autonomous, only data (knowledge, information)crosses agent boundaries
Information & knowledge is exchanged between agents
leading to more complex patterns than message passing betweenobjects
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 28 / 48
![Page 29: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/29.jpg)
Autonomy for Multi-Agent Systems
Autonomous Agents Do not Need a Goal
Agents govern MAS computation
By encapsulating control, agents are the main forces governing andpushing computation, and determining behaviour in a MASAlong with control, agent should then encapsulate the criterion forregulating the thread(s) of control
Autonomy as self-regulation
The term “autonomy”, at its very roots, means self-government,self-regulation, self-determination
“internal unit invocation” [Odell, 2002]
This does not imply in any way that agents needs to have a goal, or atask, to be such—to be an agent, thenHowever, this does imply that autonomy captures the cases ofgoal-oriented and task-oriented agents
where goals and tasks play the role of the criteria for governing control
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 29 / 48
![Page 30: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/30.jpg)
Autonomy for Multi-Agent Systems
Summing Up
Definition (Agent)
Agents are autonomous computational entities
genus agents are computational entitiesdifferentia agents are autonomous, in that they encapsulate control
along with a criterion to govern it
Agents are autonomous
From autonomy, many other features stem
autonomous agents are interactive, social, proactive, and situated;they might have goals or tasks, or be reactive, intelligent, mobilethey live within MAS, and interact with other agents throughcommunication actions, and with the environment with pragmaticalactions
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 30 / 48
![Page 31: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/31.jpg)
Autonomy in Complex Artificial Systems
Outline
1 Autonomy in Programming Languages
2 Autonomy for Multi-Agent Systems
3 Autonomy in Complex Artificial Systems
4 Conclusion
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 31 / 48
![Page 32: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/32.jpg)
Autonomy in Complex Artificial Systems
Complex Systems
. . . by a complex system I mean one made up of a large numberof parts that interact in a non simple way [Simon, 1962]
Which “parts” for complex systems?
is autonomy of “parts” a necessary precondition?
is it also sufficient?
Which kind of systems are we looking for?
what is autonomy for a system as a whole?
where could we find significant examples?
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 32 / 48
![Page 33: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/33.jpg)
Autonomy in Complex Artificial Systems
Nature-inspired Models
Complex natural systems
such as physical, chemical, biochemical, biological, social systems
natural system exhibit features
such as distribution, opennes, situation, fault tolerance, robustness,adaptiveness, . . .
which we would like to understand, capture, then bring tocomputational systems
Nature-Inspired Computing (NIC)
For instance, NIC [Liu and Tsui, 2006] summarises decades ofresearch activities
putting emphasis on
autonomy of componentsself-organisation of systems
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 33 / 48
![Page 34: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/34.jpg)
Autonomy in Complex Artificial Systems
Autonomy & Interaction I
Self-organisation
Autonomy of systems requires essentially the same features thatself-organising systems exhibit
. . . such as opennes, situation, fault tolerance, robustness,adaptiveness, . . .
(say it again)
. . . by a complex system I mean one made up of a large numberof parts that interact in a non simple way [Simon, 1962]
Autonomy & Interaction
“parts” should be autonomous
interaction is essential as well
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 34 / 48
![Page 35: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/35.jpg)
Autonomy in Complex Artificial Systems
MAS & Complexity I
Autonomy & Interaction
Multi-Agent Systems (MAS) are built around autonomouscomponents
How can MAS deal with self-organisation, properly handlinginteraction among components?
The observation of self-organising termite societies led to the followingobservation:
The coordination of tasks and the regulation of constructions arenot directly dependent from the workers, but from constructionsthemselves [Grasse, 1959]
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 35 / 48
![Page 36: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/36.jpg)
Autonomy in Complex Artificial Systems
MAS & Complexity II
Coordination as the key issue
many well-known examples of natural systems – and, more generally,of complex systems – seemingly rely on simple yet powerfulcoordination mechanisms for their key features—such asself-organisation
it makes sense to focus on coordination models as the core ofcomplex MAS
. . . since they are conceived to deal with the complexity ofinteraction [Omicini, 2013]
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 36 / 48
![Page 37: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/37.jpg)
Autonomy in Complex Artificial Systems
Basic Issues of Nature-inspired Coordination I
Environment
environment is essential in nature-inspired coordination
it works as a mediator for component interaction — through which thecomponents of a distributed system can communicate and coordinateindirectlyit is active — featuring autonomous dynamics, and affectingcomponent coordinationit has a structure — requiring a notion of locality, and allowingcomponents of any sort to move through a topology
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 37 / 48
![Page 38: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/38.jpg)
Autonomy in Complex Artificial Systems
Basic Issues of Nature-inspired Coordination II
Stochastic behaviour
complex systems typically require probabilistic models
don’t know / don’t care non-deterministic mechanisms are notexpressive enough to capture all the properties of complex systems suchas biochemical and social systemsprobabilistic mechanisms are required to fully capture the dynamics ofcoordination in nature-inspired systemscoordination models should feature (possibly simple yet) expressivemechanisms to provide coordinated systems with stochastic behaviours
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 38 / 48
![Page 39: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/39.jpg)
Autonomy in Complex Artificial Systems
Coordination Middleware I
Middleware
Coordination middleware to build complex software environment
Coordination abstractions to embed situatedness and stochasticbehaviours
Coordination abstractions to embed social rules–such as norms, andlaws
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 39 / 48
![Page 40: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/40.jpg)
Autonomy in Complex Artificial Systems
Coordination Middleware II
Nature-inspired middleware
starting from early chemical and stigmergic approaches,nature-inspired models of coordination evolved to become the core ofcomplex distributed systems—such as pervasive, knowledge-intensive,intelligent, and self-* systems
this particularly holds for tuple-based coordination models[Omicini and Viroli, 2011]
tuple-based middleware as a perspective technology for complexautonomous systems
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 40 / 48
![Page 41: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/41.jpg)
Conclusion
Outline
1 Autonomy in Programming Languages
2 Autonomy for Multi-Agent Systems
3 Autonomy in Complex Artificial Systems
4 Conclusion
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 41 / 48
![Page 42: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/42.jpg)
Conclusion
Conclusion I
Autonomy
Components should be autonomous in autonomous systems
Agent models and technologies are the most likely answers to theissues of autonomy of components
Interaction
Autonomous systems require self-organisation patterns
Interaction is another essential dimension of self-organisation
Coordination
Coordination models and technologies for governing interaction
. . . including social norms and laws
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 42 / 48
![Page 43: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/43.jpg)
Conclusion
Conclusion II
Nature-inspired coordination
Nature-inspired coordination models for autonomous systems
Tuple-based coordination models are the most likely candidates toface the issues of autonomy of complex systems
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 43 / 48
![Page 44: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/44.jpg)
Outline
1 Autonomy in Programming Languages
2 Autonomy for Multi-Agent Systems
3 Autonomy in Complex Artificial Systems
4 Conclusion
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 44 / 48
![Page 45: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/45.jpg)
Bibliography
Bibliography I
Graesser, S. F. A. (1996).Is it an agent, or just a program?: A taxonomy for autonomousagents.In Muller, J. P., Wooldridge, M. J., and Jennings, N. R., editors,Intelligent Agents III Agent Theories, Architectures, and Languages:ECAI’96 Workshop (ATAL) Budapest, Hungary, August 12–13, 1996Proceedings, volume 1193 of Lecture Notes In Computer Science,pages 21–35. Springer.
Grasse, P.-P. (1959).La reconstruction du nid et les coordinations interindividuelles chezBellicositermes natalensis et Cubitermes sp. la theorie de la stigmergie:Essai d’interpretation du comportement des termites constructeurs.Insectes Sociaux, 6(1):41–80.
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 45 / 48
![Page 46: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/46.jpg)
Bibliography
Bibliography II
Liu, J. and Tsui, K. C. (2006).Toward nature-inspired computing.Communications of the ACM, 49(10):59–64.
Odell, J. (2002).Objects and agents compared.Journal of Object Technologies, 1(1):41–53.
Omicini, A. (2013).Nature-inspired coordination models: Current status, future trends.ISRN Software Engineering, 2013.Article ID 384903, Review Article.
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 46 / 48
![Page 47: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/47.jpg)
Bibliography
Bibliography III
Omicini, A. and Viroli, M. (2011).Coordination models and languages: From parallel computing toself-organisation.The Knowledge Engineering Review, 26(1):53–59.Special Issue 01 (25th Anniversary Issue).
Simon, H. A. (1962).The architecture of complexity.Proceedings of the American Philosophical Society, 106(6):467–482.
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 47 / 48
![Page 48: Autonomy, Interaction & Complexity in Computational Systems. Preliminary Notes](https://reader037.fdocuments.in/reader037/viewer/2022110303/54c671964a7959e37d8b45d8/html5/thumbnails/48.jpg)
Autonomy, Interaction & Complexityin Computational Systems
Preliminary Notes
Andrea [email protected]
Dipartimento di Informatica: Scienza e Ingegneria (DISI)Alma Mater Studiorum—Universita di Bologna a Cesena
Law and Policy for Autonomous Military Systems WorkshopEuropean University Institute in Florence, Italy – 6 March 2013
Andrea Omicini (DISI, Univ. Bologna) Autonomy, Interaction & Complexity LaPfAMS – 6/3/2013 48 / 48