Digital Ecosystems: Optimisation by a Distributed …Digital Ecosystems: Optimisation by a...

12
Digital Ecosystems: Optimisation by a Distributed Intelligence Gerard Briscoe Digital Ecosystems Lab Department of Media and Communications London School of Economics and Political Science London, United Kingdom e-mail: [email protected] Philippe De Wilde Intelligent Systems Laboratory School of Mathematical and Computer Sciences Heriot-Watt University Edinburgh, United Kingdom e-mail: [email protected] Abstract— Can intelligence optimise Digital Ecosystems? How could a distributed intelligence interact with the ecosystem dynamics? Can the software components that are part of genetic selection be intelligent in themselves, as in an adaptive technology? We consider the effect of a distributed intelligence mechanism on the evolutionary and ecological dynamics of our Digital Ecosystem, which is the digital counterpart of a biological ecosystem for evolving software services in a distributed network. We investigate Neural Networks (NNs) and Support Vector Machine (SVM) for the learning based pattern recognition functionality of our distributed intelligence. Simulation results imply that the Digital Ecosystem performs better with the application of a distributed intelligence, marginally more effectively when powered by SVM than NNs, and suggest that it can contribute to optimising the operation of our Digital Ecosystem. Index Terms– evolution, ecosystem, migration, intelligence, distributed I. I NTRODUCTION With a Digital Ecosystem, being the digital counterpart of a biological ecosystem for evolving software services in a dis- tributed network, can we answer the following questions; Can intelligence optimise the evolutionary process? How could a distributed intelligence interact with the ecosystem dynamics? Can the software components that are part of genetic selection be intelligent in themselves, as in an adaptive technology? These are wide ranging questions, and we have started by considering a distributed intelligence based on a simple social interaction mechanism that leads to targeted migration. We will use a machine learning technique to power our distributed intelligence, considering both NNs and SVM. We will start with a brief reminder for our definition of Digital Ecosystems. Our Digital Ecosystem [1] is the digital counterpart of a natural ecosystem [2], [3], which automates the search for new algorithms in a scalable architecture, through the evolution of software services in a distributed network. In the Digital Ecosystem, local and global optimisations concurrently operate to determine solutions to satisfy different optimisation problems. The global optimisation here is not a decentralised super-peer based control mechanism [4], but the completely distributed peer-to-peer network of the interconnected habitats, Genetic Algorithm Agent Station H H H H H H H H H H H H H H H H H H Fig. 1. Digital Ecosystem: Optimisation architecture in which agents travel along the peer-to-peer connections; in every node (habitat) local optimisation is performed through an evolutionary algorithm, where the search space is determined by the agents present at the node. which are therefore not susceptible to the failure of super- peers. This is a novel optimisation technique inspired by bio- logical ecosystems, working at two levels: a first optimisation, migration of agents which are distributed in a peer-to-peer network, operating continuously in time; this process feeds a second optimisation, based on evolutionary combinatorial optimisation, operating locally on single peers and is aimed at finding solutions that satisfy locally relevant constraints. So, the local search is improved through this twofold process to yield better local optima faster, as the distributed optimisation provides prior sampling of the search space through computa- tions already performed in other peers with similar constraints [5]. The services consist of an executable component and a descriptive semantic component. Analogous to the way in which an agent is capable of execution and has an ontological description. So, if the services are modelled as software agents [6], then the Digital Ecosystem can be considered a Multi- Agent System (MAS) which uses distributed evolutionary computing to combine suitable agents available to meet user requests for applications. The motivation for using parallel or distributed evolutionary algorithms is twofold: first, improving the speed of evolu- tionary processes by conducting concurrent evaluations of individuals in a population; second, improving the problem- solving process by overcoming difficulties that face traditional evolutionary algorithms, such as maintaining diversity to avoid premature convergence [7], [8]. The fact that evolutionary arXiv:0712.4099v3 [cs.NE] 21 Sep 2009

Transcript of Digital Ecosystems: Optimisation by a Distributed …Digital Ecosystems: Optimisation by a...

Page 1: Digital Ecosystems: Optimisation by a Distributed …Digital Ecosystems: Optimisation by a Distributed Intelligence Gerard Briscoe Digital Ecosystems Lab Department of Media and Communications

Digital Ecosystems:Optimisation by a Distributed Intelligence

Gerard BriscoeDigital Ecosystems Lab

Department of Media and CommunicationsLondon School of Economics and Political Science

London, United Kingdome-mail: [email protected]

Philippe De WildeIntelligent Systems Laboratory

School of Mathematical and Computer SciencesHeriot-Watt University

Edinburgh, United Kingdome-mail: [email protected]

Abstract— Can intelligence optimise Digital Ecosystems? Howcould a distributed intelligence interact with the ecosystemdynamics? Can the software components that are part ofgenetic selection be intelligent in themselves, as in an adaptivetechnology? We consider the effect of a distributed intelligencemechanism on the evolutionary and ecological dynamics ofour Digital Ecosystem, which is the digital counterpart ofa biological ecosystem for evolving software services in adistributed network. We investigate Neural Networks (NNs)and Support Vector Machine (SVM) for the learning basedpattern recognition functionality of our distributed intelligence.Simulation results imply that the Digital Ecosystem performsbetter with the application of a distributed intelligence, marginallymore effectively when powered by SVM than NNs, and suggestthat it can contribute to optimising the operation of our DigitalEcosystem.

Index Terms– evolution, ecosystem, migration, intelligence,distributed

I. INTRODUCTION

With a Digital Ecosystem, being the digital counterpart ofa biological ecosystem for evolving software services in a dis-tributed network, can we answer the following questions; Canintelligence optimise the evolutionary process? How could adistributed intelligence interact with the ecosystem dynamics?Can the software components that are part of genetic selectionbe intelligent in themselves, as in an adaptive technology?These are wide ranging questions, and we have started byconsidering a distributed intelligence based on a simple socialinteraction mechanism that leads to targeted migration. Wewill use a machine learning technique to power our distributedintelligence, considering both NNs and SVM. We will startwith a brief reminder for our definition of Digital Ecosystems.

Our Digital Ecosystem [1] is the digital counterpart ofa natural ecosystem [2], [3], which automates the searchfor new algorithms in a scalable architecture, through theevolution of software services in a distributed network. In theDigital Ecosystem, local and global optimisations concurrentlyoperate to determine solutions to satisfy different optimisationproblems. The global optimisation here is not a decentralisedsuper-peer based control mechanism [4], but the completelydistributed peer-to-peer network of the interconnected habitats,

Genetic Algorithm

Agent StationH

HH

H

H

H

H

H

H

HH

H

H

H

H

HH

H

Fig. 1. Digital Ecosystem: Optimisation architecture in which agents travelalong the peer-to-peer connections; in every node (habitat) local optimisationis performed through an evolutionary algorithm, where the search space isdetermined by the agents present at the node.

which are therefore not susceptible to the failure of super-peers. This is a novel optimisation technique inspired by bio-logical ecosystems, working at two levels: a first optimisation,migration of agents which are distributed in a peer-to-peernetwork, operating continuously in time; this process feedsa second optimisation, based on evolutionary combinatorialoptimisation, operating locally on single peers and is aimed atfinding solutions that satisfy locally relevant constraints. So,the local search is improved through this twofold process toyield better local optima faster, as the distributed optimisationprovides prior sampling of the search space through computa-tions already performed in other peers with similar constraints[5]. The services consist of an executable component anda descriptive semantic component. Analogous to the way inwhich an agent is capable of execution and has an ontologicaldescription. So, if the services are modelled as software agents[6], then the Digital Ecosystem can be considered a Multi-Agent System (MAS) which uses distributed evolutionarycomputing to combine suitable agents available to meet userrequests for applications.

The motivation for using parallel or distributed evolutionaryalgorithms is twofold: first, improving the speed of evolu-tionary processes by conducting concurrent evaluations ofindividuals in a population; second, improving the problem-solving process by overcoming difficulties that face traditionalevolutionary algorithms, such as maintaining diversity to avoidpremature convergence [7], [8]. The fact that evolutionary

arX

iv:0

712.

4099

v3 [

cs.N

E]

21

Sep

2009

Page 2: Digital Ecosystems: Optimisation by a Distributed …Digital Ecosystems: Optimisation by a Distributed Intelligence Gerard Briscoe Digital Ecosystems Lab Department of Media and Communications

computing manipulates a population of independent solutionsactually makes it well suited for parallel and distributedcomputation architectures [9]. There are several variants ofdistributed evolutionary computing, leading some to proposea taxonomy for their classification [10], with there being twomain forms [9], [8]: multiple-population/coarse-grained migra-tion/island models [11], [9], and single-population/fine-graineddiffusion/neighbourhood models [12], [8]. Fine-grained dif-fusion models [12], [8] assign one individual per processor.A local neighbourhood topology is assumed, and individualsare allowed to mate only within their neighbourhood, called ademe1. The demes overlap by an amount that depends on theirshape and size, and in this way create an implicit migrationmechanism. Each processor runs an identical evolutionaryalgorithm which selects parents from the local neighbourhood,produces an offspring, and decides whether to replace thecurrent individual with an offspring. In the coarse-grainedisland models [11], [9], evolution occurs in multiple parallelsub-populations (islands), each running a local evolutionaryalgorithm, evolving independently with occasional migrationsof highly fit individuals among sub-populations. This modelhas also been used successfully in the determination of invest-ment strategies in the commercial sector, in a product knownas the Galapagos toolkit [14], [15]. However, all the islands inthis approach work on exactly the same problem, which makesit less analogous to biological ecosystems in which differentlocations can be environmentally different [16].

The landscape, in energy-centric biological ecosystems,defines the connectivity between habitats [16]. Connectivityof nodes in the digital world is generally not defined bygeography or spatial proximity, but by information or semanticproximity. For example, connectivity in a peer-to-peer networkis based primarily on bandwidth and information content, andnot geography. The island-models of distributed evolutionarycomputing use an information-centric model for the connec-tivity of nodes (islands) [11]. However, because it is generallydefined for one-time use (to evolve a solution to one problemand then stop) it usually has a fixed connectivity betweenthe nodes, and therefore a fixed topology [9]. So, supportingevolution in the Digital Ecosystem, with a dynamic multi-objective selection pressure (fitness landscape [17] with manypeaks), requires a re-configurable network topology, such thathabitat connectivity can be dynamically adapted based on theobserved migration paths of the agents between the userswithin the habitat network. So, based on the island-modelsof distributed evolutionary computing [11], each connectionbetween the habitats is bi-directional and there is a probabilityassociated with moving in either direction across the connec-tion, with the connection probabilities affecting the rate ofmigration of the agents. However, additionally, the connectionprobabilities will be updated by the success or failure ofagent migration using the concept of Hebbian learning [18]:the habitats which do not successfully exchange agents will

1In biology a deme is a term for a local population of organisms of onespecies that actively interbreed with one another and share a distinct genepool [13].

become less strongly connected, and the habitats which dosuccessfully exchange agents will achieve stronger connec-tions. This leads to a topology that adapts over time, resultingin a network that supports and resembles the connectivity ofthe user base, typically small-world networks [19], [20]. Theyhave many strongly connected clusters (communities), calledsub-networks (quasi-complete graphs), with a few connectionsbetween these clusters (communities) [21]. Graphs with thistopology have a very high clustering coefficient and smallcharacteristic path lengths [21], as visualised in Figure 1.The novelty comes from the creation of multiple evolvingpopulations in response to similar requests, whereas in theisland-models of distributed evolutionary computing thereare multiple evolving populations in response to only onerequest [11]. So, in our Digital Ecosystem different requestsare evaluated on separate islands (populations), with theirevolution accelerated by the sharing of solutions between theevolving populations (islands), because they are working tosolve similar requests (problems).

The users will formulate queries to the Digital Ecosystemby creating a request as a semantic description, like thosebeing used and developed in Service-Oriented Architectures[22], specifying an application they desire and submitting itto their habitat. This description enables the definition of ametric for evaluating the fitness of a composition of agents,as a distance function between the semantic description of therequest and the agents’ semantic descriptions. A population isthen instantiated in the user’s habitat in response to the user’srequest, seeded from the agents available at their habitat (i.e.its agent-pool). This allows the evolutionary optimisation tobe accelerated in the following three ways: first, the habitatnetwork provides a subset of the agents available globally,which is localised to the specific user it represents; second,making use of agent-sequences previously evolved in responseto the user’s earlier requests; and third, taking advantage ofrelevant agent-sequences evolved elsewhere in response tosimilar requests by other users. The population then proceedsto evolve the optimal agent-sequence(s) that fulfils the userrequest, and as the agents are the base unit for evolution, itsearches the available agent-sequence combination space. Foran evolved agent-sequence that is executed (instantiated) bythe user, it then migrates to other peers (habitats) becominghosted where it is useful, to combine with other agents in otherpopulations to assist in responding to other user requests forapplications.

II. DISTRIBUTED INTELLIGENCE

Potential exists to optimise the distribution of the agentswithin the habitat network, through additional targeted migra-tion of the agents, which will indirectly optimise the evolv-ing agent populations. The migration probabilities betweenthe habitats produces the existing passive agent migration,allowing the agents to spread in the correct general directionwithin the habitat network, based primarily upon success attheir current location. This augmentation will work in a moreactive manner, allowing the agents highly targeted migration to

Page 3: Digital Ecosystems: Optimisation by a Distributed …Digital Ecosystems: Optimisation by a Distributed Intelligence Gerard Briscoe Digital Ecosystems Lab Department of Media and Communications

Habitat

agent-pool

agent

request ?

solution user

Population

(Genetic Algorithm)

Population(GA)

Fig. 2. User Request to the Digital Ecosystem (modified from [23]): A userwill formulate queries to the Digital Ecosystem by creating a request as asemantic description, like those being used and developed in Service-OrientedArchitectures [22], specifying an application they desire and submitting it totheir habitat. A population is then instantiated in the user’s habitat in responseto the user’s request, seeded from the agents available at their habitat (agent-pool).

specific habitats, in addition to the generally directed passivemigration. It will help to optimise the agents found at theagent-pools of the habitats, which will in turn optimise theevolving agent populations as they make use of the agent-pools when determining applications (agent-sequences) to userrequests. So, accelerating the process of ecological succession[16], and therefore the responsiveness of the Digital Ecosystemto the user base.

The targeted migration will work by providing the agentswith the opportunity to interact inside the agent-pools, outsideof the evolutionary optimisation of the evolving agent popu-lations, to determine if they are functionally similar based ontheir semantic descriptions. Similar agents will compare theirmigration histories to determine habitats where they couldfind a niche (i.e. be valuable). This will lead to additionalhighly targeted migration of agents throughout the habitatnetwork, optimising the set of agents and agent-sequencesat the agent-pools, and therefore indirectly optimising andaccelerating the evolving agent populations within the DigitalEcosystem. As each evolving agent population within theDigital Ecosystem will be accelerated, the entire ecosystemwill operate more efficiently. The targeted migration willstrengthen the agent concept within the Ecosystem-OrientedArchitecture of Digital Ecosystems, endowing the individualagents with some intelligence and control over their behaviour.Interestingly, the effectiveness of this augmentation relies onthe local interactions of the agents, producing an emergent

migrating agent

Habitat

agent-pool

agent

temporary link for targeted migration

H

H

H

Population(GA)

Fig. 3. Targeted Migration: This augmentation will optimise the distributionof the agents within the habitat network, through additional targeted migrationof the agents, helping to optimise the agents found at the agent-pools ofthe habitats, which will in turn optimise the evolving agent populations.So, accelerating the process of ecological succession [16], and therefore theresponsiveness of the Digital Ecosystem to the user base.

global optimising effect on the evolving agent populations toaccelerate the ecological succession of a Digital Ecosystem.

The targeted migration will directly optimise the ecologicalmigration, and therefore indirectly complement the evolu-tionary self-organisation of the evolving agent populations,through the highly targeted migration of the agents to theirniche habitats. The migration probabilities between the habi-

Page 4: Digital Ecosystems: Optimisation by a Distributed …Digital Ecosystems: Optimisation by a Distributed Intelligence Gerard Briscoe Digital Ecosystems Lab Department of Media and Communications

evolving agent population for solution

(agent-sequence)

register solution at agent-pool of habitat

executeagent-sequence

user request

agent migration

deploy agent to agent-pool of habitat

agent to agentinteraction

Fig. 4. Agent Life-Cycle With Targeted Migration: The agent life-cyclewill change to support the targeted migration, as shown by the blue circle.Specifically, there will be more opportunities for agent migration, but moreimportantly these opportunities will be for targeted migration, which will helpto optimise the set of agents found at the habitats.

tats produces the existing passive agent migration, allowingthe agents to spread in the correct general direction withinthe habitat network, based primarily upon success at theircurrent location. The targeted migration will work in a moreactive manner, allowing the agents highly targeted migration tospecific habitats, based upon their interaction with one anotherto discover habitats where they could be valuable (i.e. find aniche).

The targeted migration will occur when users deploytheir services, specifically when deploying their representativeagents to their habitats within the Digital Ecosystem, and uponthe execution of applications (groups of services), specificallythe resulting passive migration of their representative agent-sequences between the habitats. The agent-sequences arrivingat habitats, with respect to the targeted migration, will betreated as individual agents arriving at the habitats. So, anagent arriving at a habitat interacts one-on-one with agentsalready present within the agent-pool of the habitat, and upondetermining functional similarity, based upon comparing theirsemantic descriptions, will share other habitats successfullyvisited from their respective migration histories. An agentmigration history is the migratory path of the agent throughthe habitat network, including its use at the habitats visited. So,similar agents can share their migration histories to discovernew habitats where they could be valuable, and then usetargeted migration (via a copy, and not a move) to explorethe most promising of the recently acquired habitats. This willallow successfully interacting agents to target specific habitatswhere they will potentially be useful, but risks potentiallyinfinite targeted migration, because targeted migration itselfcan lead to further targeted migration. So, each agent willrequire a dynamic targeted migrations counter, which definesthe number of permitted targeted migrations of the agent.This counter will be incremented upon an agent’s execution inresponse to a user request, and decremented upon performinga targeted migration.

The agent life-cycle will change to support the targeted

migration, as shown in Figure 4 by the blue circle. Specifically,there will be more opportunities for agent migration, but moreimportantly these opportunities will be for targeted migration,which will help to optimise the set of agents found at thehabitats, and therefore support the evolving agent populationscreated in response to user requests for applications. Thetargeted migration will essentially short-circuit the hierar-chical topology habitat network, which is what allows itto specialise and localise to communities, providing specificsolutions to specific requests from specific users. However, thetargeted migration will also reinforce the hierarchical topologyof the habitat network, because targeted migration betweenconnected habitats will accelerate the existing migration ofagents, while between unconnected habitats will assist theDigital Ecosystem in supporting emerging communities. So,the targeted migration will help strengthen and catalyse theformation of clusters within the habitat network, and will alsoassist in locating habitats within the correct clusters. Therefore,the optimisation of the Digital Ecosystem will be a globalemergent effect resulting from the local interactions of theagents, allowing for niches to be fulfilled faster and so ac-celerating the process of ecological succession [16]. Also, theDigital Ecosystem will adapt faster to changing environmentalconditions (e.g. changes in the request behaviour of user com-munities). In biological terms the targeted migration endowsthe agents with a form of reciprocal altruistic behaviour [24],consistent with the agent paradigm of the Ecosystem-OrientedArchitecture.

A. Similarity Recognition

For the targeted migration to work successfully an effec-tive technique will be required for the similarity recognitionbetween the semantic descriptions of two agents. Each agentwill have an embedded similarity recognition component tomaintain the consistency of the agent paradigm of Ecosystem-Oriented Architectures. So, the agents will interact one-on-oneto determine functional similarity based upon their semanticdescriptions, using their embedded similarity recognition com-ponents, with each of the two interacting agents determiningsimilarity for themselves. Again, this is to maintain the con-sistency of the agent paradigm. Similarity recognition betweenthe semantic descriptions of two agents will require some formof pattern recognition, because there is no single standard forthe semantic description of services [25], and we would notadopt any one over the others as it would be inconsistent withthe inclusive nature of Digital Ecosystems. So, we will nowconsider the field of pattern recognition to determine suitabletechniques for the similarity recognition components to beembedded within the agents.

Pattern recognition aims to classify data (patterns) basedon priori knowledge or on statistical information extractedfrom the data [26]. Pattern recognition requires a sensor orsensors for data acquisition, a pre-processing technique, a datarepresentation scheme, and a decision making model [27].Also, learning from a set of examples (training set) is animportant and desirable feature of most pattern recognition

Page 5: Digital Ecosystems: Optimisation by a Distributed …Digital Ecosystems: Optimisation by a Distributed Intelligence Gerard Briscoe Digital Ecosystems Lab Department of Media and Communications

systems [26]. The four best known approaches for patternrecognition are [27]:• Template Matching• Statistical Classification• Structural Matching• Neural Networks

These approaches are not necessarily independent, and some-times the same pattern recognition method exists with differentinterpretations [27]. For example, attempts have been made todesign hybrid systems involving multiple approaches, such asthe notion of attributed grammars which unifies structural andstatistical pattern recognition [28].

Template Matching is not suitable for the required patternrecognition of our targeted migration, because its effectiveuse is domain specific [27] and the similarity recognitionbetween the semantic descriptions of agents is very differentto the domains that it is typically applied [29]. StatisticalClassification is also not suitable, because the embeddedsimilarity recognition component of each agent would requirehuman intervention for variable selection and transformation[30]. Structural Matching is suitable theoretically, but im-plementations lead to many difficulties [27], including thesegmentation of noisy patterns (to detect primitives) and theinference of grammar from training data [27]. There can alsobe a combinatorial explosion of possibilities to be investigated,demanding large training sets and significant computationaleffort [31], neither of which is available. Neural Networksare suitable, given their low dependence on domain-specificknowledge and the availability of efficient learning algorithms[27]. Support Vector Machines, albeit a recent development[32], are also suitable [33], being primarily a binary classifier[27] for training generalisable nonlinear classifiers in high-dimensional spaces using small training sets [34]. So, wewill make use of both Neural Networks and Support VectorMachines for our targeted migration.

1) Neural Networks: In the first instance, we will leveragethe pattern recognition capabilities of Neural Networks (NNs)for the embedded similarity recognition components of theagents, allowing them to determine similarity to one anotherbased on the similarity of their semantic descriptions. Wewill use multilayer perceptrons (feed-forward artificial NNs)with backpropagation [35] to provide the required patternrecognition behaviour, because of their ability to solve prob-lems stochastically, which allows for approximate solutionsto extremely complex problems [35]. They are a modificationof the standard linear perceptron [36], using three or morelayers of neurons (nodes) with nonlinear activation functionsto distinguish data that is not linearly separable, or separableby a hyperplane [37]. The power of the multilayer perceptroncomes from its similarity to certain biological neural networksin the human brain, and because of their wide applicabilityhas become the standard algorithm for any supervised-learningpattern recognition process [35].

NNs can be viewed as massively parallel computing systemsconsisting of an extremely large number of simple processorswith many interconnections [26]. NN models attempt to use

certain organisational principles (such as learning, generalisa-tion, adaptivity, fault tolerance, distributed representation, andcomputation) in a network of weighted directed graphs, inwhich the nodes are artificial neurons, and the directed edges(with weights) are connections between the neuron outputsand inputs [26]. The main characteristics of NNs are theirability to learn complex nonlinear input-output relationships,use sequential training procedures, and adapt themselves to thedata [27]. The most commonly used family of NNs for patternclassification tasks is the feed-forward network, includingmultilayer perceptrons, which are organised into layers and hasunidirectional connections between the layers [27]. Anotherpopular network is the Self-Organising Map, or Kohonen-Network [38], which is often used for feature mapping [27].The increasing popularity of NN models to solve patternrecognition problems has been primarily because of theirlow dependence on domain-specific knowledge (relative tomodel-based and rule-based approaches) and the availabilityof efficient learning algorithms [27]. The learning processinvolves updating the network architecture and connectionweights so that a network can efficiently perform a specificclassification [26]. NNs provide a suite of nonlinear algorithmsfor feature extraction (using hidden layers) and classification(e.g. multilayer perceptrons) [27]. In addition, existing featureextraction and classification algorithms can be mapped ontoNN architectures for efficient (hardware) implementation [39].Despite the seemingly different underlying principles, mostof the well-known NN models are implicitly equivalent orsimilar to classical statistical pattern recognition methods [27].However, NNs offer several advantages, such as unified ap-proaches for feature extraction and classification, and flexibleprocedures for finding good, moderately nonlinear solutions[27].

A pre-processing [37] of agent semantic descriptions will berequired that is consistent across the entire Digital Ecosystem,requiring an alphabetical ordering of the attribute tuples withina semantic description, a standardisation of the length of theattributes, before finally making use of a binary encodingfor processing by a NN [37]. The assumption of informationstructured as tuples, including an attribute name and attributevalue, is accurate for our simulated semantic descriptions, butis also a reasonable assumption for any semantic descriptionof web services [40], [41], [42], [25]. To standardise the lengthof the attributes, after removing any white-space2, an averageword length of six characters will be used, because 5.39 isthe average word length for business English [44]. For thebinary encoding we propose using Unicode (UTF-8), whichis based on extending ASCII to provide multilingual support[45]. However, ASCII’s support of only English [45] will besufficient for our simulations. The size (number of neurons)of the input layer [35] will be proportional to the semanticdescription of the agent in which the NN is embedded, takingadvantage of the variation in length of different semantic de-

2A white-space is any single character or series of characters that representhorizontal or vertical space in typography [43].

Page 6: Digital Ecosystems: Optimisation by a Distributed …Digital Ecosystems: Optimisation by a Distributed Intelligence Gerard Briscoe Digital Ecosystems Lab Department of Media and Communications

Input

Hidden

Output

Fig. 5. Neural Network for the Similarity Recognition Component ofagents in Targeted Migration: Consisting of an input layer proportional to thesemantic description of the agent in which it is embedded. A single hiddenlayer, and an output layer consisting of a single neurone to provide a binaryresponse to the question of whether another agent’s semantic description issimilar.

scriptions, which will assist the NN-based pattern recognitionin determining dissimilarity.

We will use a single hidden layer, which is usually sufficientfor most tasks [37]. The size of which will be determinedthrough exploratory programming [46] in our simulations, be-cause of the difficulty in determining the optimal size withouttraining several networks and estimating the generalisationerror [47], evident by the range of inconsistent rules of thumb[48], [49], [50], [51] available to define the optimal size. Theoutput layer [37] will consist of a single neurone to providea binary (true or false) response to the question of whetheranother agent’s semantic description is similar to the agent’sown semantic description. We will use a threshold of 0.90on its output for the determination of similarity. The overallstructure of the Neural Network is visualised in Figure 5.

Multilayer perceptrons use nonlinear activation functions,which were developed to model the frequency of actionpotentials (firing) of biological neurons in the brain [35]. Themain activation function used in current applications is thesigmoid function [35], a hyperbolic tangent that is normalisedand in which the output y of a neurone is the sum of theweighted input values x [37],

y =1

(1 + e−x). (1)

The weights x between the neurons will be randomly ini-tialised, then trained to the real numbers that provide thedesired functionality, because learning occurs in the perceptronby changing the connection (synaptic) weights after each pieceof data is processed, based on the error of the output comparedto the expected result [37]. This is an example of super-vised learning and is carried out through backpropagation, ageneralisation of the least mean squares algorithm [35]. Thenetwork is therefore trained by providing it with input andcorresponding output patterns [37].

The NN-based embedded similarity recognition componentof an agent will be trained when the agent is deployed to ahabitat of the Digital Ecosystem. The initial training set willconsist of the semantic description of the agent as a positivematch, and variants created from its own semantic description.If the variant is less than 10% different it will be processedas a positive match, else it will be processed as a negativematch. The training set can be extended based on experience,making use of when an agent visits a habitat through targetedmigration (i.e. one acquired from an inter-agent interaction); ifvisiting the habitat proves successful the semantic descriptionof the interacting agent can be appended to the training set asa positive match, else as a negative match.

2) Support Vector Machines: In the second instance, wewill leverage the pattern recognition capabilities of SupportVector Machines (SVMs) for the embedded similarity recog-nition components of the agents, allowing them to determinesimilarity to one another based on the similarity of theirsemantic descriptions. As SVMs are closely related to NeuralNetworks, being a close cousin to classical multilayer percep-trons [52], we will make use of the pre-processing and thetraining sets defined in the previous subsection, which willalso ensure a fair comparison of the pattern recognition tech-niques in empowering the similarity recognition componentsof the agents.

One of the most interesting recent developments in clas-sifier design is the introduction of the SVM [32], which isprimarily a two-class classifier, and therefore highly suitablefor the required similarity recognition component of ourtargeted migration. It uses an optimisation criterion that isthe width of the margin between the classes, i.e. the emptyarea around the decision boundary defined by the distanceto the nearest training patterns [53]. These patterns, calledsupport vectors, define the classification function, and theirnumber is minimised by maximising the margin [53]. Thisis achieved through a kernel function K, which transposesthe data into a higher-dimensional space where a hyperplaneperforms the separation [53]. In its simplest form the kernelfunction is just a dot product between the input pattern and amember of the support set, resulting in a linear classifier, whilenonlinear kernel functions lead to a polynomial classifier [27].SVMs are closely related to Neural Networks, being a closecousin to classical multilayer perceptrons, with the use of asigmoid kernel function making them equivalent to two-layerperceptrons [52]. However, in the training of NNs, such asmulti-layer perceptrons, the weights of the network are foundby solving a non-convex unconstrained minimisation problem,while the use of a kernel function in SVMs solves a quadraticprogramming problem with linear constraints [54]. An im-portant advantage of SVMs is that they offer the possibilityto train generalisable nonlinear classifiers in high-dimensionalspaces using a small training set [34]. Furthermore, for largetraining sets a small support set is typically selected fordesigning the classifier, thereby minimising the computationalrequirements during training [34].

The selection of a suitable kernel function is important,

Page 7: Digital Ecosystems: Optimisation by a Distributed …Digital Ecosystems: Optimisation by a Distributed Intelligence Gerard Briscoe Digital Ecosystems Lab Department of Media and Communications

Feature SpaceInput Space

kernel function

Fig. 6. Support Vector Machine (modified from [57]): Visualisationshowing the training set in the Input Space, and its binary classification bya hyperplane in the higher dimensional Feature Space, achieved through thekernel function. A Radial Basis Functions (RBF) is recommended for textcategorisation [33], with the most common form of the RBF being Gaussian[56].

since it defines the feature space in which the training setis classified [55], operating as shown in Figure 6. A RadialBasis Functions (RBF) is recommended for text categorisation[33], with the most common form of the RBF being Gaussian[56].

Training a SVM requires solving a large quadraticprogramming (QP) optimisation problem, which SequentialMinimal Optimisation (SMO) breaks into a series of thesmallest possible QP problems. SMO solves these small QPproblems analytically, which avoids using a time-consumingnumerical QP optimisation. SMO scales between linear andquadratic time complexity, relative to the size of the trainingset, because it avoids matrix computation [58]. The alternative,a standard Projected Conjugate Gradient (PCG) chunkingalgorithm scales between linear and cubic time complexity,relative to the size of the training set [58]. So SMO is faster,up to a thousand times on real-world sparse data sets [58].

The issue of the learnt behaviour of the embedded similarityrecognition component of an agent, whether SVM or NNbased, being inherited when the agent reproduces is known asthe Baldwin effect [59]. The Baldwin effect has always beencontroversial within biological ecosystems [60], primarily be-cause of the problem of confirming it experimentally [61].Also, offspring in biological ecosystems can be geneticallydifferent to their parents [16], such that any learnt behaviourcould potentially be inappropriate. However, the offspring inour Digital Ecosystem are genetically identical to their parents(in terms of the individual agents), and so it makes little senseto force the loss of learnt behaviour. So, we doubt that theBaldwin effect will adversely affect our Digital Ecosystem,which we will confirm through our simulations.

Now that the targeted migration is theoretically complete,with two alternative pattern recognition techniques, we canconfirm its effect experimentally through simulations.

III. SIMULATION AND RESULTS

Although agent-based modelling solutions, like Repast (Re-cursive Porous Agent Simulation Toolkit) [62] and MASON(Multi-Agent Simulator Of Neighbourhoods) [63], and evolu-tionary computing libraries, like ECJ (Evolutionary Comput-

ing in Java) [64] and the JCLEC (Java Computing Libraryfor Evolutionary Computing) [65], are available, it was ev-ident that it would take as much effort to adapt one, or acombination, of these to simulate the Digital Ecosystem, as itwould to create our own simulation of the Digital Ecosys-tem, because the required ecological dynamics are largelyabsent from these and other available technologies. So, wecreated our own simulation, following the Ecosystem-OrientedArchitecture from section I, using the business ecosystem ofSmall and Medium sized Enterprises from Digital BusinessEcosystems [66] as an example user base, adding the classesand methods necessary to implement the proposed targetedmigration augmentation. Each experimental scenario was runten thousand times for statistical significance of the means andstandard deviations calculated. We implemented the targetedmigration as defined in section II, using both Neural Network(NN) and Support Vector Machine (SVM) based similarityrecognition components embedded within the agents.

A. Agents: Semantic Descriptions

A = {(1,25), (2,35), (3,55), (4,6), (5,37), (6,12)}Fig. 7. Agent Semantic Descriptions: Each simulated agent had a semanticdescription with an abstract representation consisting of a set of between threeand six numeric tuples; each tuple representing an attribute of the semanticdescription, one integer for the attribute identifier and one for the attributevalue, with both ranging between one and a hundred.

An agent represents a user’s service, including the semanticdescription of the business process involved, and is based onexisting and emerging technologies for semantically capableService-Oriented Architectures [22], such as the OWL-S se-mantic markup for web services [67]. We simulated a service’ssemantic description with an abstract representation consistingof a set of numeric tuples, to simulate the properties of asemantic description. Each tuple representing an attribute ofthe semantic description, one integer for the attribute identifierand one for the attribute value, with both ranging betweenone and a hundred. Each simulated agent had a semanticdescription, with between three and six tuples, as shown inFigure 7.

B. User Base

R = [{(1,23),(2,45),(3,33),(4,6),(5,8),(6,16)},{(1,84),(2,48),(3,53),(4,11),(5,16)}]

Fig. 8. User Request: A simulated user request consisted of an abstractsemantic description, as a list of sets of numeric tuples to represent theproperties of a desired business application; each tuple representing anattribute of the semantic description, one integer for the attribute identifierand one for the attribute value, with both ranging between one and a hundred.

Throughout the simulations we assumed a hundred users,which meant that at any time the number of users joiningthe network equalled those leaving. The habitats of the userswere randomly connected at the start, to simulate the usersgoing online for the first time. The users then produced agents(services) and requests for business applications. Initially,

Page 8: Digital Ecosystems: Optimisation by a Distributed …Digital Ecosystems: Optimisation by a Distributed Intelligence Gerard Briscoe Digital Ecosystems Lab Department of Media and Communications

the users each deployed five agents to their habitats, formigration (distribution) to any habitats connected to theirs(i.e. their community within the business ecosystem). Userswere simulated to deploy a new agent after the submissionof three requests for business applications, and were chosenat random to submit their requests. A simulated user requestconsisted of an abstract semantic description, as a list of sets ofnumeric tuples to represent the properties of a desired businessapplication. The use of the numeric tuples made it comparableto the semantic descriptions of the services represented by theagents; while the list of sets (two level hierarchy) and a muchlonger length provided sufficient complexity to support thesophistication of business applications. An example is shownin Figure 8.

The user requests were handled by the habitats instantiatingevolving populations, which used evolutionary computing tofind the optimal solution(s), agent-sequence(s). It was assumedthat the users made their requests for business applicationsaccurately, and always used the response (agent-sequence)provided.

C. Populations: Evolution

Populations of agents, [A1, A1, A2, ...], were evolved tosolve user requests, seeded with agents and agent-sequencesfrom the agent-pool of the habitats in which they wereinstantiated. A dynamic population size was used to en-sure exploration of the available combinatorial search space,which increased with the average length of the population’sagent-sequences. The optimal combination of agents (agent-sequence) was evolved to the user request R, by an artificialselection pressure created by a fitness function generated fromthe user request R. An individual (agent-sequence) of thepopulation consisted of a set of attributes, a1, a2, ..., and auser request essentially consisted of a set of required attributes,r1, r2, .... So, the fitness function for evaluating an individualagent-sequence A, relative to a user request R, was

fitness(A, R) =1

1 +∑

r∈R |r − a|, (2)

where a is the member of A such that the difference to therequired attribute r was minimised. Equation 2 was used toassign fitness values between 0.0 and 1.0 to each individual ofthe current generation of the population, directly affecting theirability to replicate into the next generation. The evolutionarycomputing process was encoded with a low mutation rate, afixed selection pressure and a non-trapping fitness function(i.e. did not get trapped at local optima). The type of selectionused fitness-proportional and non-elitist, fitness-proportionalmeaning that the fitter the individual the higher its probabilityof surviving to the next generation [68]. Non-elitist means thatthe best individual from one generation was not guaranteed tosurvive to the next generation; it had a high probability ofsurviving into the next generation, but it was not guaranteedas it might have been mutated [69]. Crossover (recombination)was then applied to a randomly chosen 10% of the survivingpopulation, a one-point crossover, by aligning two parent

individuals and picking a random point along their length,and at that point exchanging their tails to create two offspring[69]. Mutations were then applied to a randomly chosen 10%of the surviving population; point mutations were randomlylocated, consisting of insertions (an agent was inserted intoan agent-sequence), replacements (an agent was replaced inan agent-sequence), and deletions (an agent was deleted froman agent-sequence) [70]. The issue of bloat was controlled byaugmenting the fitness function with a parsimony pressure [71]which biased the search to shorter agent-sequences, evaluatinglonger than average length agent-sequences with a reducedfitness, and thereby providing a dynamic control limit whichadapted to the average length of the ever-changing evolvingagent populations.

D. Semantic Filter

Agent’s semantic description:{(1,25), (2,35), (3,55), (4,6), (5,37), (6,12)}

(with semantic filter):{(Business, Airline), (Company, British

Midland), (Quality, Economy), (Cost, 60),(Depart, Edinburgh), (Arrive, London)}

user request:[{(1,23), (2,45), (3,33), (4,6), (5,8), (6,16)}, {(1,84),(2,48), (3,53), (4,11), (7,16), (8,34)}, {(1,23), (2,45),(3,53), (4,6), (5,16)(6,53)}, {(1,86), (2,48), (3,33),(4,25), (7,55)(8,23)}, {(1,25), (2,52), (3,53), (4,5),(5,55), (6,37)}, {(1,86), (2,48), (3,43), (4,25), (7,37),(8,40)}, {(1,22), (2,77), (3,82), (4,9), (5,35), (6,8)}]

(with semantic filter):[{(Business, Airline), (Company, Air France),(Quality, Economy), (Cost, 60), (Depart, Ed-inburgh), (Arrive, Paris)}, {(Business, Hotel),(Company, Continental), (Quality, 3*), (Cost,110), (Location, Paris), (Nights, 3)}, {(Business,Airline), (Company, Air France), (Quality, Econ-omy),(Cost,60),(Depart, Paris), (Arrive, MonteCarlo)}, {(Business, Hotel), (Company, Conti-nental), (Quality, 2*), (Cost, 250), (Location,Monte Carlo), (Nights, 2)}, {(Business, Air-line), (Company, KLM), (Quality, Economy),(Cost, 50), (Depart, Monte Carlo), (Arrive, Lon-don)}, {(Business, Hotel), (Company, Continen-tal), (Quality, 3*), (Cost, 250), (Location, Lon-don), (Nights, 4)}, {(Business, Airline), (Com-pany, Air Espana), (Quality, First), (Cost, 90),(Depart, London), (Arrive, Edinburgh)}]

Fig. 9. Semantic Filter: Shows the numerical semantic descriptions, of thesimulated services (agents) and user requests, in a human readable form. Thesemantic filter translates numerical semantic descriptions for one communitywithin the user base, showing it in the context of the travel industry. Thesimulation still operated on the numerical representation for operationalefficiency, but the semantic filter essentially assigns meaning to the numbers.

Page 9: Digital Ecosystems: Optimisation by a Distributed …Digital Ecosystems: Optimisation by a Distributed Intelligence Gerard Briscoe Digital Ecosystems Lab Department of Media and Communications

The simulation of the Digital Ecosystem complies withthe Ecosystem-Oriented Architecture defined in the previoussection, but there was the possibility of model error in thebusiness ecosystems of the user base (Small and Medium sizedEnterprises from Digital Business Ecosystems [66]), becausewhile the abstract numerical definition for the simulated se-mantic descriptions, of the services and requests the usersprovide, makes it widely applicable, it was unclear that itcould accurately represent business services. So we createda semantic filter to show the numerical semantic descriptions,of the simulated services (agents) and user requests, in ahuman readable form. The basic properties of any businessprocess are cost, quality, and time [72]; so this was followedin the semantic filter. The semantic filter translates numericalsemantic descriptions for one community within the user base,showing it in the context of the travel industry, as shownin Figure 9. The simulation still operated on the numericalrepresentation for operational efficiency, but the semantic filteressentially assigns meaning to the numbers. The output fromthe semantic filter, in Figure 9, shows that the numericalsemantic descriptions are a reasonable modelling assumptionthat abstracts sufficiently rich textual descriptions of businessservices.

E. Controls

The targeted migration was dependent on additional agentmigration, which alone could have been responsible for anyobserved optimisation, because it led to greater distribution ofthe agents within the Digital Ecosystem, potentially improvingresponsiveness for the user base. So, we included a migrationcontrol in our experimental simulations for the additional agentmigration, being random instead of targeted. Furthermore, todetermine the contribution of the NNs and SVMs on the tar-geted migration we created a pattern recognition control, usinga rudimentary distance function adapted from our simulatedfitness function defined in section III-C.

In Figure 10 we graphed for the simulation runs the averageof the percentage response rate after a thousand time steps(user request events), for the Digital Ecosystem with themigration control, and the Digital Ecosystem with the pat-tern recognition control, compared to the Digital Ecosystemalone. The Digital Ecosystem alone averaged a 68.0% (3 s.f.)response rate with a standard deviation of 2.61 (2 d.p.), whilethe Digital Ecosystem with the migration control showed a sig-nificant degradation to 49.6% (3 s.f.) with a standard deviationof 1.96 (2 d.p.), and the Digital Ecosystem with the patternrecognition control showed only a small increase to 70.5% (3s.f.) with a standard deviation of 2.60 (2 d.p.). Therefore, anyobserved improvement from the targeted migration was notfrom the additional migration but its targeting, and that theeffectiveness of the pattern recognition functionality will besignificant if the targeted migration is to be effective.

In Figure 11 we graphed a typical run of the DigitalEcosystem with the migration control, and the Digital Ecosys-tem with the pattern recognition control, compared to theDigital Ecosystem alone [3]. The Digital Ecosystem alone

PatternRecognition

Control

MigrationControl

DigitalEcosystem

0 20 40 60 80 100Average Response Rate

Sce

nar

io

70.5%

49.6%

68.0%

Fig. 10. Graph of the Targeted Migration Controls and the DigitalEcosystem: The Digital Ecosystem alone averaged a 68.0% response rate,while the Digital Ecosystem with the migration control showed a significantdegradation to 49.6%, and the Digital Ecosystem with the pattern recognitioncontrol showed only a small increase to 70.5%.

0

20

40

60

80

100

200 400 600 800 1000Res

pon

seR

ate

(%m

atch

touse

rre

ques

t)

Time (user request events)

Digital EcosystemMigration Control

Pattern Recognition Control

Fig. 11. Graph of Typical Runs for the Targeted Migration Controlsand the Digital Ecosystem: The Digital Ecosystem alone performed asexpected, adapting and improving over time to reach a mature state. Themigration control with additional random migration ultimately decreased theresponsiveness, while the pattern recognition control performed only slightlybetter.

performed as expected, adapting and improving over timeto reach a mature state through the process of ecological

Page 10: Digital Ecosystems: Optimisation by a Distributed …Digital Ecosystems: Optimisation by a Distributed Intelligence Gerard Briscoe Digital Ecosystems Lab Department of Media and Communications

TargetedMigration

(SVM-based)

TargetedMigration

(NN-based)

DigitalEcosystem

0 20 40 60 80 100Average of Response Rate

Sce

nar

io

92.8%

92.1%

68.0%

Fig. 12. Graph of Neural Network and Support Vector Machine BasedTargeted Migration: The Digital Ecosystem with the SVM-based targetedmigration averaged a 92.8% (3 s.f.) response rate, slightly better than theNN-based targeted migration at 92.1% (3 s.f.), and so significantly betterthan the Digital Ecosystem alone at 68.0% (3 s.f.).

succession [16]. The Digital Ecosystem with the migrationcontrol, which included additional random migration, whileinitially beneficial, ultimately decreased the responsiveness ofthe Digital Ecosystem. Finally, the Digital Ecosystem with thepattern recognition control performed only marginally betterthan the Digital Ecosystem alone.

F. Neural Networks

We started with the NN-based targeted migration, as definedin section II-A.1. We made use of Joone (Java Object OrientedNeural Engine) [73] to implement the required NNs, andexploratory programming [46] to determine that a hidden layer1.5 times the size of the input layer was effective for the NN-based similarity recognition components.

In Figure 12 we graphed for the simulation runs the averageof the percentage response rate after a thousand time steps(user request events), for the Digital Ecosystem with the NN-based targeted migration, compared to the Digital Ecosystemalone. The Digital Ecosystem alone averaged a 68.0% (3 s.f.)response rate with a standard deviation of 2.61 (2 d.p.), whilethe Digital Ecosystem with the NN-based targeted migrationshowed a significant improvement to a 92.1% (3 s.f.) responserate with a standard deviation of 2.22 (2 d.p.).

G. Support Vector Machines

Next we considered the SVM-based targeted migration, asdefined in section II-A.2, making use of LIBSVM (Libraryfor Support Vector Machines) [74] to implement the requiredSVMs. In Figure 12 we graphed for the simulation runs the

0

20

40

60

80

100

200 400 600 800 1000

Res

pon

seR

ate

(%m

atch

)Time (user request events)

Digital EcosystemTargeted Migration (NN)

Targeted Migration (SVM)

Fig. 13. Graph of Typical Runs for the Digital Ecosystem and TargetedMigration: The Digital Ecosystem alone performed as expected, adaptingand improving over time to reach a mature state through the process ofecological succession [16] In comparison, the Digital Ecosystem with thetargeted migration, NN or SVM-based, showed a significant improvement.

average of the percentage response rate after a thousand timesteps (user request events), for the Digital Ecosystem withthe SVM-based targeted migration, compared to the DigitalEcosystem with the NN-based targeted migration, and theDigital Ecosystem alone. The Digital Ecosystem with theSVM-based targeted migration averaged a 92.8% (3 s.f.)response rate with a standard deviation of 2.09 (2 d.p.), slightlybetter than the NN-based targeted migration at 92.1% (3 s.f.)with a standard deviation of 2.22 (2 d.p.), and so significantlybetter than the Digital Ecosystem alone at 68.0% (3 s.f.) witha standard deviation of 2.61 (2 d.p.).

In Figure 13 we graphed typical runs of the Digital Ecosys-tem with the SVM-based targeted migration, the DigitalEcosystem with the NN-based targeted migration, and theDigital Ecosystem alone. The Digital Ecosystem alone per-formed as expected, adapting and improving over time to reacha mature state through the process of ecological succession[16], approaching 70% effectiveness for the user base. TheDigital Ecosystem with the targeted migration, NN or SVM-based, showed a significant improvement in the ecologicalsuccession, reaching the same performance in less than a fifthof the time, before reaching over 90% effectiveness for theuser base. To show more clearly the greater effectiveness ofthe SVM-based targeted migration, compared to the NN-basedtargeted migration, we graphed in Figure 14 the frequency ofpoor matches (<50%) every one hundred time steps, for theDigital Ecosystem with the SVM-based targeted migration,compared to the Digital Ecosystem with the NN-based tar-geted migration, and the Digital Ecosystem alone.

Page 11: Digital Ecosystems: Optimisation by a Distributed …Digital Ecosystems: Optimisation by a Distributed Intelligence Gerard Briscoe Digital Ecosystems Lab Department of Media and Communications

0

10

20

30

40

50

60

70

1 2 3 4 5 6 7 8 9 10

Fre

quen

cyof

Mat

ches

<50

%

Time x 100 (user request events)

Digital EcosystemTargeted Migration (NN)

Targeted Migration (SVM)

Fig. 14. Graph of Frequencies for the Targeted Migration: The frequencyof poor matches (<50%) every one hundred time steps, for the DigitalEcosystem with the SVM-based targeted migration, compared to the DigitalEcosystem with the NN-based targeted migration, and the Digital Ecosystemalone. It shows the greater effectiveness of the SVM-based targeted migration,compared to the NN-based targeted migration from the seven hundredthgeneration onwards.

IV. CONCLUSION

The results showed that the targeted migration optimisedand accelerated the ecological succession [16] of our DigitalEcosystem, constructively interacting with its ecological andevolutionary dynamics. The results also showed that it wasnot the additional migration, but its targeting that created theimprovement in the Digital Ecosystem, and that an effectivepattern recognition technique was required for the targetedmigration to operate effectively. Both NNs and SVMs provedto be effective, SVMs marginally more than NNs. The resultsalso showed that there were no adverse side-effects from theBaldwin effect [59], the inheritance of learnt behaviour in theagents from the embedded similarity recognition components,whether SVM or NN based. Finally, based on the experimentalresults, and our theoretical understanding, we would recom-mend SVMs for the pattern recognition functionality of thetargeted migration.

A partial reference implementation [75] for our DigitalEcosystem, which includes an implementation of the targetedmigration, was created by the Digital Business Ecosystem(DBE) project [76], and we expect that once completed will bedeployed as part of the software platform intended for the re-gional deployment of their Digital Ecosystems [77], [78]. Also,an open-source simulation framework for Digital Ecosystems[79] was created by the Digital Business Ecosystems project[76], and is currently supported by the Open Philosophiesfor Associative Autopoietic Digital Ecosystems (OPAALS)project [78] to assist further research into Digital Ecosystems,including the wider implications of interacting with social

systems, such as business ecosystems of Small and Mediumsized Enterprises (SMEs). This will provide the opportunityto investigate further the complex system that the DigitalEcosystem represents, and eventually collect real world data todetermine whether the Digital Ecosystem can perform usefullyin a natural setting.

REFERENCES

[1] G. Briscoe, M. Chli, and M. Vidal, “Creating a Digital Ecosystem:Service-oriented architectures with distributed evolutionary computing(BOF-0759),” in JavaOne Conference. Sun Microsystems, 2006.[Online]. Available: http://arxiv.org/0712.4159

[2] F. Nachira, A. Nicolai, P. Dini, M. Le Louarn, and L. Rivera Leon, Eds.,Digital Business Ecosystems. European Commission, 2007.

[3] G. Briscoe, S. Sadedin, and G. Paperin, “Biology of applied digitalecosystems,” in Digital Ecosystems and Technologies Conference.IEEE Press, 2007, pp. 458–463. [Online]. Available: http://arxiv.org/abs/0712.4153

[4] J. Risson and T. Moors, “Survey of research towards robust peer-to-peer networks: Search methods,” Computer Networks, vol. 50, pp. 3485–3521, 2006.

[5] G. Briscoe, “Digital Ecosystems: Evolving service-orientedarchitectures,” in Conference on Bio Inspired Models of Network,Information and Computing Systems. IEEE Press, 2006. [Online].Available: http://arxiv.org/abs/0712.4102

[6] G. Briscoe and P. P De Wilde, “D6.1 self-organisation in multi-agent sys-tems,” Digital Business Ecosystems Project, Contract no 507953, Tech.Rep., 2004, cr dbe:6.1. [Online]. Available: http://files.opaals.org/DBE/deliverables/Del 6.1 DBE Self-OrganisationInMulti-AgentSystems.pdf

[7] H. Muhlenbein, “Evolution in time and space - the parallel geneticalgorithm,” Foundations of Genetic Algorithms, vol. 1, pp. 316–337,1991.

[8] J. Stender, Parallel Genetic Algorithms: Theory and Applications. IOSPress, 1993.

[9] E. Cantu-Paz, “A survey of parallel genetic algorithms,” Reseaux etsystemes repartis, Calculateurs Paralleles, vol. 10, pp. 141–171, 1998.

[10] M. Nowostawski and R. Poli, “Parallel genetic algorithm taxonomy,” inInternational Conference on Knowledge-Based Intelligent InformationEngineering Systems, L. Jain, Ed. IEEE Press, 1999, pp. 88–92.

[11] S. Lin, W. Punch III, and E. Goodman, “Coarse-grain parallel geneticalgorithms: categorization and new approach,” in Symposium on Paralleland Distributed Processing. IEEE Press, 1994, pp. 28–37.

[12] B. Manderick and P. Spiessens, “Fine-grained parallel genetic algo-rithms,” in International Conference on Genetic Algorithms, J. Schaffer,Ed. Morgan Kaufmann Publishers, 1989, pp. 428–433.

[13] J. de Visser and S. Elena, “The evolution of sex: empirical insights intothe roles of epistasis and drift,” Nature Reviews Genetics, vol. 8, pp.139–49, 2007.

[14] M. Ward. (2004) Life offers lessons for business. [Online]. Available:http://news.bbc.co.uk/1/hi/technology/3752725.stm

[15] Codefarm Software Limited. (2008) Codefarm - technology forstructured credit. [Online]. Available: http://www.codefarm.com/

[16] M. Begon, J. Harper, and C. Townsend, Ecology: Individuals, Popula-tions and Communities. Blackwell Publishing, 1996.

[17] S. Wright, “The roles of mutation, inbreeding, crossbreeding and selec-tion in evolution,” in International Congress on Genetics, D. Jones, Ed.Brooklyn botanic garden, 1932, pp. 356–366.

[18] D. Hebb, The Organization of Behavior. Wiley, 1949.[19] D. White and M. Houseman, “The navigability of strong ties: Small

worlds, tie strength, and network topology,” Complexity, vol. 8, pp. 72–81, 2002.

[20] X. Yang, “Chaos in small-world networks,” Physical Review E, vol. 63,pp. 1–4, 2001.

[21] D. Watts and S. Strogatz, “Collective dynamics of ‘small-world’ net-works,” Nature, vol. 393, pp. 440–442, 1998.

[22] P. Rajasekaran, J. Miller, K. Verma, and A. Sheth, “Enhancing webservices description and discovery to facilitate composition,” in SemanticWeb Services and Web Process Composition, J. Cardoso and A. Sheth,Eds. Springer, 2004, pp. 55–68.

[23] T. Kurz and T. Heistracher, “Simulation of a self-optimising digitalecosystem,” in Digital Ecosystems and Technologies Conference. IEEEPress, 2007, pp. 165–170.

Page 12: Digital Ecosystems: Optimisation by a Distributed …Digital Ecosystems: Optimisation by a Distributed Intelligence Gerard Briscoe Digital Ecosystems Lab Department of Media and Communications

[24] R. Trivers, “The evolution of reciprocal altruism,” The Quarterly Reviewof Biology, vol. 46, p. 35, 1971.

[25] L. Cabral, J. Domingue, E. Motta, T. Payne, and F. Hakimpour, “Ap-proaches to semantic web services: an overview and comparisons,” inThe Semantic Web: Research and Applications. Springer, 2004, pp.225–239.

[26] B. Ripley, Pattern Recognition and Neural Networks. CambridgeUniversity Press, 1996, cr svm3.

[27] A. Jain, R. Duin, and J. Mao, “Statistical pattern recognition: A review,”IEEE Transactions On Pattern Analysis and Machine Intelligence,vol. 22, pp. 4–37, 2000.

[28] K. Fu, Syntactic pattern recognition and applications. Prentice Hall,1982.

[29] M. Nixon and A. Aguado, Feature Extraction & Image Processing.Newnes, 2007.

[30] D. Michie, D. Spiegelhalter, C. Taylor, and J. Campbell, Machinelearning, neural and statistical classification. Ellis Horwood, 1995.

[31] L. Perlovsky, “Conundrum of combinatorial complexity,” IEEE Trans-actions on Pattern Analysis and Machine Intelligence, vol. 20, pp. 666–670, 1998.

[32] V. Vapnik, Statistical learning theory. Wiley, 1998.[33] T. Joachims, “Text categorization with support vector machines: Learn-

ing with many relevant features,” in European Conference on MachineLearning, J. Carbonell and J. Siekmann, Eds. Springer, 1997.

[34] F. Valafar, “Pattern recognition techniques in microarray data analysis:A survey,” in Techniques in Bioinformatics and Medical Informatics,F. Valafar, Ed. New York Academy of Sciences, 2002, pp. 41–64.

[35] S. Haykin, Neural Networks: A Comprehensive Foundation. PrenticeHall, 1998.

[36] R. Rojas, Neural Networks: A Systematic Introduction. Springer, 1996.[37] C. Bishop, Neural Networks for Pattern Recognition. Oxford University

Press, 1995.[38] T. Kohonen, Self-Organizing Maps. Springer, 2001.[39] N. Botros and M. Abdul-Aziz, “Hardware implementation of an artificial

neural network using field programmable gate arrays,” IEEE Transac-tions on Industrial Electronics, vol. 41, pp. 665–667, 1994.

[40] S. Dustdar and W. Schreiner, “A survey on web services composition,”International Journal of Web and Grid Services, vol. 1, pp. 1–30, 2005.

[41] B. Medjahed, A. Bouguettaya, and A. Elmagarmid, “Composing webservices on the semantic web,” The International Journal on Very LargeData Bases, vol. 12, pp. 333–351, 2003.

[42] J. de Bruijn, H. Lausen, A. Polleres, and D. Fensel, “The web servicemodeling language WSML: An overview,” The Semantic Web: Researchand Applications, vol. 4011, pp. 590–604, 2006.

[43] J. Friedl, Mastering Regular Expressions. O’Reilly, 2006.[44] R. Fox, “The social identity of management ergolect,” English for

Specific Purposes, vol. 18, pp. 261–278, 1999.[45] R. Gillam, Unicode Demystified: A Practical Programmer’s Guide to

the Encoding Standard. Addison-Wesley, 2002.[46] I. Sommerville, Software Engineering. Addison-Wesley, 1992.[47] W. Sarle, “How many hidden units should i use?” Internet FAQ

Archives, Tech. Rep., 2008. [Online]. Available: http://www.faqs.org/faqs/ai-faq/neural-nets/part3/section-10.html

[48] A. Blum, Neural networks in C++: an object-oriented framework forbuilding connectionist systems. Wiley, 1992.

[49] K. Swingler, Applying Neural Networks: A Practical Guide. MorganKaufmann Publishers, 1996.

[50] M. Berry and G. Linoff, Data Mining Techniques: For Marketing, Sales,and Customer Support. Wiley, 1997.

[51] Z. Boger and H. Guterman, “Knowledge extraction from artificial neuralnetwork models,” in International Conference on Systems, Man, andCybernetics: Computational Cybernetics and Simulation, J. Tien, Ed.,vol. 4. IEEE Press, 1997.

[52] S. Abe, Support Vector Machines for Pattern Classification. Springer,2005.

[53] C. Burges, “A tutorial on support vector machines for pattern recog-nition,” Data Mining and Knowledge Discovery, vol. 2, pp. 121–167,1998.

[54] B. Scholkopf, K. Sung, C. Burges, F. Girosi, P. Niyogi, T. Poggio,and V. Vapnik, “Comparing support vector machines with gaussiankernels to radial basis function classifiers,” IEEE Transactions on SignalProcessing, vol. 45, pp. 2758–2765, 1997.

[55] N. Cristianini and J. Shawe-Taylor, An Introduction to Support VectorMachines and Other Kernel-based Learning Methods. CambridgeUniversity Press, March 2000.

[56] S. Gunn, “Support vector machines for classification and regression,”University of Southampton, Tech. Rep., 1998.

[57] N. Takahashi, “Stability analysis of nonlinear dynamical systems relatedto neural networks,” Kyushu University, Tech. Rep., 2008. [Online].Available: http://www-kairo.csce.kyushu-u.ac.jp/∼norikazu/research.en.html

[58] J. Platt, “Fast training of support vector machines using sequentialminimal optimization,” in Advances in kernel methods: support vectorlearning, B. Scholkopf, C. Burges, and A. Smola, Eds. MIT Press,1999, pp. 185–208, cr svm8.

[59] J. Baldwin, “A new factor in evolution,” American Naturalist, vol. 30,pp. 441–451, 1896.

[60] B. Weber and D. Depew, Evolution and Learning: The Baldwin EffectReconsidered. Bradford Books, 2003.

[61] K. Sterelny, “A review of evolution and learning: the baldwin effectreconsidered,” Evolution & Development, vol. 6, pp. 295–300, 2004.

[62] N. Collier, “Repast: An extensible framework for agent simulation,”University of Chicago, Tech. Rep., 2003. [Online]. Available:http://www.econ.iastate.edu/tesfatsi/RePastTutorial.Collier.pdf

[63] S. Luke, C. Cioffi-Revilla, L. Panait, and K. Sullivan, “MASON: A newmulti-agent simulation toolkit,” in SwarmFest. University of Michigan,2004.

[64] S. Luke, L. Panait, G. Balan, S. Paus, Z. Skolicki, E. Popovici,K. Sullivan, J. Harrison, J. Bassett, R. Hubley, and A. Chircop. ECJ:A Java-based evolutionary computation research system. Cr luke:02.[Online]. Available: http://cs.gmu.edu/∼eclab/projects/ecj/

[65] S. Ventura, C. Romero, A. Zafra, J. Delgado, and C. Hervas, “JCLEC:a Java framework for evolutionary computation,” Soft Computing - AFusion of Foundations, Methodologies and Applications, vol. 12, pp.381–392, 2008.

[66] F. Nachira, P. Dini, and A. Nicolai, “A network of digital businessecosystems for europe: Roots, processes and perspectives,” in DigitalBusiness Ecosystems, F. Nachira, A. Nicolai, P. Dini, M. Le Louarn,and L. Rivera Leon, Eds. European Commission, 2007, pp. 1–20.

[67] D. Martin, M. Paolucci, S. McIlraith, M. Burstein, D. McDermott,D. McGuinness, B. Parsia, T. Payne, M. Sabou, M. Solanki, N. Srini-vasan, and K. Sycara, “Bringing semantics to web services: The OWL-S approach,” in Semantic Web Services and Web Process Composition,J. Cardoso and A. Sheth, Eds. Springer, 2004, pp. 6–9.

[68] T. Blickle and L. Thiele, “A comparison of selection schemes used inevolutionary algorithms,” Evolutionary Computation, vol. 4, pp. 361–394, 1996.

[69] A. Eiben and J. Smith, Introduction to Evolutionary Computing.Springer, 2003.

[70] E. Lawrence, Henderson’s dictionary of biological terms. PearsonEducation, 2005.

[71] T. Soule and J. Foster, “Effects of code growth and parsimony pressureon populations in genetic programming,” Evolutionary Computation,vol. 6, pp. 293–309, 1998.

[72] T. Davenport and J. Short, “The new industrial engineering: Informationtechnology and business process redesign,” Sloan Management Review,vol. 31, pp. 11–27, 1990.

[73] P. Marrone, “Java object oriented neural engine: The completeguide,” joone.org, Tech. Rep., 2007. [Online]. Available: http://prdownloads.sourceforge.net/joone/JooneCompleteGuide.pdf

[74] C. Chang and C. Lin, “LIBSVM: A library for support vectormachines,” National Taiwan University, Tech. Rep., 2008. [Online].Available: http://www.csie.ntu.edu.tw/∼cjlin/papers/libsvm.pdf

[75] C. Masuch. (2008) Evolutionary environment network. [Online].Available: http://evenet.sourceforge.net/

[76] A. English. Digital Business Ecosystems (DBE). [Online]. Available:http://www.digital-ecosystem.org/DBE Main/about

[77] L. Rivera Leon. Digital Ecosystems Network of Regions forDissemination and Knowledge Deployment (DEN4DEK). [Online].Available: http://www.den4dek.org

[78] N. Rathbone. Open Philosophies for Associative Autopoietic DigitalEcosystems (OPAALS). [Online]. Available: http://www.opaals.org/research.php

[79] T. Kurz. (2008) EvE simulator. [Online]. Available: http://evesim.sourceforge.net/