ESOA
From CasGroup
for
ESOA
Jump to:
navigation
,
search
'''Engineering Self-Organizing Applications''' (ESOA) is the attempt to apply the concept of [[Self-Organization|self-organization]] to engineering, esp. software engineering. Wether this is possible or not is still controversial. The goal (or hope) is to achieve complex collective tasks with relatively simple individual elements, units and behaviors. The name ESOA is sometimes also used as an abbreviation for "Enterprise [[Service-Oriented_Architecture|SOA]]", i.e. to describe a "Service-Oriented Architecture for Enterprises". == A Name for a Problem == EOSA is like [[AOSE]] more a name for a problem than its solution. It is closely related to the problem of "engineering [[Emergence|emergence]]". Engineering is at odds with [[Emergence|emergence]], a phenomenon which usually accompanies self-organization, and planned organization as it is found in engineering contradicts more or less the concept of self-organization. It is obviously difficult to organize a system which is able to organize itself. == Demands == Why do we need [[Self-Organization|self-organization]] at all? A demand for self-organization exists for instance in the following systems: *highly distributed systems without central control *open systems embedded in fast changing dynamic environments *pervasive or [[Ubiquitous_Computing|ubiquitous computing]] where computers become invisible In short, self-organization is needed if the system is (or becomes) very large, very distributed or very complex. Here is already the first problem: such systems are not easy to create. == Problems == Many systems in nature demonstrate that self-organization is indeed possible. These natural system are of course quite different from traditional software applications, they are more like [[Agent|agent]]-based systems and [[Multi-Agent System|multi-agent systems]] (MASs). There is also no clear or precise definition of [[Self-Organization|self-organization]] which makes an easy application to any domain difficult. Another problem with [[Organic Computing|biologically inspired systems]] is that there number is limited. There is certainly not a countless number of techniques used in natural self-organizing systems. A concrete application often boils down to the use of pheromones, [[Stigmergy|stigmergy]] and [[Ant-Based_Systems|ant-based systems]]. The core problem of ESOA is to create a system with a certain macroscopic global behavior by specifying only local behavior and microscopic interactions. It is the old contradiction or antagonism between forced engineering and spontaneous [[Emergence|emergence]], imposed purpose and independent autonomy, planned organization and self-organization. All these items pairs are more or less contrary to each other. In traditional engineering, the structure, function and organization of the systems is carefully planned and impressed from the outside on the system. If a situation occurs which has not been anticipated or tested before, the system usually crashes. The system is predictable, reliable and comprehensible, but it is not always robust, adaptive and scalable. In ESOA and [[Multi-Agent System|MASs]], the systems are partly able to organize themselves, and the tolerance for unpredictable properties and situations is a bit higher. If a situation occurs which has not been anticipated before the system is expected to handle it. A self-organizing system is robust, adaptive and scalable, but usually less predictable, reliable and comprehensible. == A possible solution == A possible solution to the fundamental ESOA problem is the application of the scientific method by the engineer, the step-by-step investigation of hypotheses with experiments and simulations. The scientific method is an iterative process that is the basis for any scientific inquiry, and it can also be used to examine artificial systems and simulated worlds (for instance synthetic societies of multi-agent systems). The scientific method follows a series of steps: (1) identify a problem you would like to solve, (2) formulate a hypothesis, (3) test the hypothesis, (4) collect and analyze the data, (5) make conclusions and restart with (1) (see also the paper preprint [http://arxiv.org/abs/nlin.AO/0601002 On Engineering and Emergence]). == References == ESOA 2003 workshop (from the AAMAS 2003 conference): * Giovanna Di Marzo Serugendo et al., ''Engineering Self-Organizing Systems'', Springer LNAI 2977, 2004 ESOA 2004 workshop (from the AAMAS 2004 conference): * Sven A. Brueckner et al., ''Engineering Self-Organizing Systems'', Springer LNAI 3464, 2005
Return to
ESOA
.
Views
Page
Discussion
View source
History
Personal tools
Log in
Navigation
Main page
Community portal
Current events
Recent changes
Random page
Help
Search
Toolbox
What links here
Related changes
Special pages