Self-Configuration of Network Services with ... - Semantic Scholar

3 downloads 147344 Views 918KB Size Report
Self-Configuration of Network Services with. Biologically Inspired Learning and Adaptation. Frank Chiang,1,2 Robin Braun,1 and Johnson I. Agbinya1.
c 2007) Journal of Network and Systems Management, Vol. 15, No. 1, March 2007 ( DOI: 10.1007/s10922-006-9056-3

Self-Configuration of Network Services with Biologically Inspired Learning and Adaptation Frank Chiang,1,2 Robin Braun,1 and Johnson I. Agbinya1 Published online: 14 February 2007 This paper proposes a self-organizing scheme based on ant metaheuristics to optimize the operation of multiple classes of managed elements on an Operations Support Systems (OSSs) for mobile pervasive communications. Ant metaheuristics are characterized by learning and adaptation capabilities against dynamic environment changes and uncertainties. As an important division of swarm agent intelligence, it distinguishes itself from centralized management schemes due to its features of robustness and scalability. We have successfully applied ant metaheuristics to the network service configuration process, which is simply redefined as: the managed elements represented as graphic nodes, and ants traverse by selecting nodes with the minimum cost constraints until the eligible network elements are located along near-optimal paths—the located elements are those needed for the configuration or activation of a particular product and service. Although the configuration process is non-transparent to end users, the negotiated SLAs between users and providers affect the overall process. This proposed self-organized learning and adaptation scheme using Ant Colony Optimization (ACO) is evaluated by simulation in Java. A performance comparison is also made with a class of Genetic Algorithm known as PBIL. Finally, the simulation results show the scalability and robustness capability of autonomous ant-like agents able to adapt to dynamic networks. KEY WORDS: Ant colony optimization (ACO); genetic algorithm (GA); operations support systems (OSSs); quality of service (QoS); pervasive computing environment (PCE); autonomic.

1. INTRODUCTION Network management operations will become autonomous, scalable, interoperable and adaptable to increasingly dynamic and widely distribution network 1 Faculty

of Engineering, University of Technology Sydney, NSW 2007, Australia. E-mail: [email protected], [email protected]. 2 To whom correspondence should be addressed at Faculty of Engineering, University of Technology Sydney, Broadway, NSW 2007, Australia. E-mail: [email protected]. 87 C 2007 Springer Science+Business Media, LLC 1064-7570/07/0300-0087/0 

88

Chiang, Braun, and Agbinya

demands. The emergence of distributed computing environments in the past decade is a major challenge on current services Operations Support System (OSS). Large-scale, unpredictability, uncertainty, complexity and changing environments are the main characteristics of distributed networks currently concerning OSS designers. Growth of such systems as P2P networks, pervasive computing networks, wireless sensor networks, ad-hoc networks, are changing the focus of network operational research from centralized control to distributed and parallel management. Wired and wireless network expansion are causing explosive growth in topology and functionality, presenting challenges to the OSS industry, setting the needs of future converged telecommunication networks to be capable of self-configuring, self-healing, self-optimizing and self-protecting [1]. The IBM vision describes a goal-oriented non-automatic process. It aims at a friendly user/operator environments, encapsulating the technical processes and hiding the low-level complexity from human view. Humans agents are freed of low-level operations to concentrate on higher-level business orientated objectives. Intensive research has been conducted in recent years on Autonomic Communication Networks (ACNs) [2, 3]. Self-management is the key vision described in IBM’s blueprint. However, the IBM redbook [1] does not present any detailed learning and adaptation strategies to achieve its self-management vision. It is proposed that ACNs can provide the solutions to the challenges in distributed networks such as pervasive/Nomadic computing [4], MANET [5], P2P networks and Wireless Ad-hoc Sensor Networks (WASNs). It is the authors’ belief that a successful ACN network should develop in two directions: • to have a sustainable and maintainable information retrieval model which collects all the related information. Including (1) the parameters describing the condition of devices (e.g., usage utility, capacity, bandwidth, CPU and memory consumption, current numbers of application running on it, etc.); (2) the Service Level Agreement (SLA) information from ISPs. (3) the customers’ preferences and providers’ concerns. • to have a scalable and adaptable decision-making capability on the basis of collected information. More specifically for our autonomic service configuration process, a scalable adaptation strategy is required for agents to autonomically manage themselves and adapt to ever-changing environments. The works on biological platforms by Suda [6] and Suzuki [7, 8] emphasize the evolutionary behavior of agents. Any internal state variations of agents are considered as a type of service, such as mutation, clone, reproduction, replication and even moving across platforms. They emphasize multi-agent roles with regards to software entities and middleware services. Our work is more on network management—application level with a focus on real telecommunication network

Self-Configuration of Network Services

89

services and products from business activation point of view. Suda and Suzuki’s work could help us understand agent behaviors and the coordination of agents across multiple software platforms. Further, Hershey [28] proposed that swarm behaviors could be applied into a collection of mobile platforms, and a set of metrics have been set and tested. Qoubutra [9] explores topological network design by employing an ACO principle. We distinguish our work by focusing on the internal relationships—dependency among the network components. Those components include not only physical parts but also virtual parts such as services and intellectual products. Future converged telecommunication networks, as complex dynamic systems, have many complex issues (e.g., resource allocation, load-balancing, decision-making in operation service management), many of these issues are combinatorial optimization problems (COPS) which are NP-hard or NP-complete. Service configuration issues can be formulated into discrete mathematical models aiming at finding near-optimal service configurations amongst multiple feasible configurations. As COPs, they are hard to be solved by “exact” analytic methods or linear programming due to the difficult termination in polynomial time [10]. Heuristics & metaheuristics provide more promising alternative solutions to (COPs). This, in turn, enables (a) highly distributed mobile devices (e.g., cell phones, notebooks, PDAs, etc.) to be networked and (b) heterogeneous network services & applications to be deployed seamlessly. In this paper, we propose an ant meta-heuristic which is based on ant adaptation strategy to configure service components. Inspired by both ant foraging behaviors and evolutionary population-based computation, we believe a biologically inspired optimization system naturally possesses robustness, reliability, rapidity, and scalability. In particular, we propose that complex network operations (e.g., scheduling, planning, selection, detection/discovery and priority-ranked management etc.) can then be formulated into a process of ant foraging transition through the searching space where some nodes are frequently visited and therefore the optimal paths are constructed under some constraints. The dependency of the nodes (classified by the classes of managed elements) in the operational domain are subsequently shown with the paths. Each founded path successfully uncovers what is needed in one configuration process. This paper is organized as follows: Section 2 provides a survey of the current state of the art related to this topic. Conventional ant colony optimization algorithms are included in Section 2. Section 3 presents the problem definition and the mathematical formulation of the problem. Section 4 illustrates the proposed ACO-based network configuration procedure. Section 5 describes a simulation of the application on the basis of proposed algorithm. Finally, we conclude with performance comparisons and future work trends.

90

Chiang, Braun, and Agbinya

2. STATE OF THE ART 2.1. Current Themes Network Domain Theme and Operational Domain Theme are two key themes in current network management system. The former theme emphasizes QoS requirements. The main concern in the latter theme is the overall operational cost, an important factor for network service selection, configuration and deployment, given to the customer preference, provider capability and the complexity of launching services over multiple networks. SLAs between customer and service provider play a key role for service management. Current network management structures are centralized, making them unsuitable for Autonomic Communications (AC). The challenge is to self-organize the multiple domains interacting among network elements in ACNs. Such a centralized control paradigm will fail due to exponentially increasing complexity and human capacity. AI techniques involving intelligent agents, multilayered neural network, machine learning, fuzzy logic, knowledge-based study and soft Computing have not yielded viable solutions. Therefore, a new distributed network management paradigm is urgently needed. In terms of the functionality, the key part of network operations can be essentially considered as a class of searching/assignment problems in such a way as to find managed components and assign operational tasks most efficiently. The most successful global search optimization techniques for discrete NP-hard optimization are: (1) Genetic Algorithm (GA) [11, 12]; (2) Simulated Annealing (SA) [13]; (3) Tabu Search (TS) [14]. Since GA, SA and TS are essentially centralized optimization, the scalability performance of those approaches is poor. In contrast, biological organisms, nerve systems and ecosystem are far more distributed, stochastic, and heterogeneous than mobile networks but they show remarkable robustness to environmental fluctuations and are tolerant of substantial component uncertainty. Table I shows the classes of searching methods and technologies, such as centralised/decentralised; stochastic-based et al.

Table I. Comparison of Available Algorithms Attributes\Algorithms

SA

GA-PBIL

TS

Heuristics

ACO

C(entralized)/D(ecentralized) Stochastic Population-based

C Y N

C Y Y

D Y N

D Y Y

D Y Y

Self-Configuration of Network Services

91

2.2. Ant Metaheuristics 2.2.1. Why Ant Colony Optimization Unexpected failures and active dynamics of telecommunication systems contribute to the complex patterns which emerge from these systems. Under such circumstances, the optimal solution from traditional optimization approaches may be not be the best. Some complex problems might be combinatorial NP-hard or NP-complete. Central control paradigms such as these cannot succeed. In contrast, ACO collective agents present inherent characteristics as follows—1) Adaptability: ant agents can quickly adapt to changes by establishing a new strategies. 2) Scalability: distributed ant agents can easily achieve scalability. 3) Robustness: ant agent communities still perform their tasks even if some individual agents fail. 4) Self-organized capability: top-down control structures are unnecessary. Bottom-up structures arise. Self-managed agents inspired by social insects require little supervision. These features are combined into a network management model in this paper. 2.2.2. Metaheuristics of Ant Colony Optimization This has been extensively reported by Dorigo [15] and Blum [16] amongst others. ACO algorithms have the following key steps: 1) Transition rules; 2) Updated pheromone rules (including online update and offline update); 3) Centralized DaemonActions (Optional); 4) Restarting/reinitialization. This is imitated by artificial ant-like software agents. To avoid repeated traversing, ants have memory of the paths that have already been searched. We have made some modifications to the ACO process, detailed in Section 4. ACO fulfills stages 1, 2, 4 and optionally 3. It introduces artificial pheromones and artificial ants into the search space. The ants sense the pheromone to guide their movement. If the termination condition is NOT satisfied, the above-mentioned main stages are repeated. Optional daemon actions deal with centralized control and cannot be performed by single ants. eg. to deposit, or not, additional pheromone along the paths in order to avoid local minima. There are several variants of the original ant algorithms of 1992. eg. (1) ACS, (2) Max— min Ant Algorithm, (3) Best-Worst Ant Colony System (BWACS) and (4) Hyper-cube ACO (HC-ACO). 3. PROBLEM DEFINITION AND REPRESENTATION 3.1. Proposed TMF-Entity Based Autonomic Architecture We have applied the idea of multiple classes of services and products to a TMF inspired architecture in our previous publications [17–20]. This architecture shows how the network operational system is logically classified into 4 functional layers (Product; Product Components; Services and Resources layer) and 2

92

Chiang, Braun, and Agbinya

administrative layers (e.g., management layer and information collection layer) with 1 system objectives layer. Our architecture has no implication as to the physical location of the network components, nor how communication between the objects is achieved. It merely acts as a logical structure indicating the relationships between the objects and the system structure in a decentralized environment. 3.2. Logic Nodes and Cluster Groups In our management domain, nodes represent heterogeneous network components (both physically and virtually). The algorithms (e.g., PBIL and ACO metaheuristic) are also applicable to a hierarchical topology structure. We define the logical node and cluster groups to fit into this structure. Logical nodes refer to those nodes with a physical connection or logical dependent relationship; Cluster groups are the groups of nodes which are believed to be clustered together to fulfill some tasks or functions; We identify the following requirements for our network management hierarchy: 1. Nodes are clustered together into groups according to functional dependency and internal relations. 2. The information of which cluster belongs to the higher level source node is stored and transparent to mobile agents beforehand. 3.3. Complete Nodes and Incomplete Nodes Due to the complexity of real networks, some nodes contain embedded resources or services to support their own functionality. Very often such resources have parameters that are not accessible to the system management functions. We call these nodes in our model complete nodes. This means that these components can be instantiated by their embedded services and relevant resources. For example, DNS server can be a Linux computer owning its own disk-storage, which has no parameters exposed for operational purposes. Another example is a mobile terminal, with limited computational ability, using its own limited memory as a resource, while still being able to store information onto online storage facility. Its own memory and its online storage facility can be abstracted into a complete node in terms of any relevant storage service. Therefore, this mobile terminal can be regarded as a complete node in this instance. Moreover, we also define all the nodes in the resource layer as either frequently-accessed shared managed elements or adjustable elements from the operators’ point of view. Incomplete nodes are the nodes without the capability of accomplishing a task independently. These nodes must depend on their next layer’s nodes in order to instantiate an application, a product or a service. This is the most common scenario.

Self-Configuration of Network Services

93

3.4. Mathematical Notation We suggest that the complex management problems in this scenario can be carefully reformulated into a discrete combinatorial optimization problem. We refer to Nahar’s use of the terminology of combinatorial optimization [21]. The objective function is to minimize the time-variant cost under the constraints. This is essentially a Constraint Satisfaction Problem (CSP) [22]. The classes of managed elements are graphically represented as nodes in a directed weighted graph G = (N, A) on the basis of a modified TMF entity-based hierarchical structure, where N is the set of nodes, A is the set of edges. The weights on the edges represent costs between possible parent-child relation nodes. The following notations will be used throughout the whole paper: R+ : set of all nonnegative real numbers Rn : n-dimensional space with the scalar product · · · · : Euclidean norm of a vector and its induced norm of a matrix ni : number of elements within aggregated cluster group i yi : number of nodes for cluster group i λj,k : general processing rate of ant searching for class k SLA ωn,i,k (t) : capacity at node n which is in cluster group i for class k SLA at time t ω¯ n : average capacity of node n Rn,i,k (t) : response time for class k SLA at node n in cluster group i at time t Cn,i (t) : cost at node n in cluster set i at time t.

3.5. Analysis of Our TMF Entity-Based Model Our analysis is on the basis of Object-Oriented Principle (OOP). We consider a TMF entity-based network operation system with np product instances for cp classes of products; nc product component instances for cc classes of product components; ns service instances for cs classes of services; and nr resource instances for cr classes of resources. The cost elements between instances of (np × nc ), (nc × ns ), (ns × nr ) construct link cost matrices, which are assumed to be constant only during one iteration search and vary independently from one iteration to another. We denote the followings: c

p ; P1{1,...,np } , . . . , P{1,...,n p}

c C1{1,...,nc } , . . . , Cc{1,...,n ; c}

s S1{1,...,ns } , . . . , Sc{1,...,n ; s}

cr . R1{1,...,nr } , . . . , R{1,...,n r}

where C can be regarded as the “terminal” of “concentrator” P; S is the “terminal” of “Concentrator” C; and R is the “terminal” of “Concentrator” S, and np , nc , ns , nr ∈ R+ , and subscript numbers {1, . . . , np }, {1, . . . , nc }, {1, . . . , ns }

94

Chiang, Braun, and Agbinya

and {1, . . . , nr } represent various instances of network components belonging to the particular class out of cp , cc , cs , cr respectively. The Connectivity function is defined as: ⎧ ⎨ 1, product instance i from one class is logically  connected to product component instancej Pi Cj = ⎩ 0, not connected



C j Sk =



Sk R l =

⎧ ⎨ 1, ⎩

0,

⎧ ⎨ 1, ⎩

0,

product component instance j from one class is logically connected to service instance k not connected

(1)

service instance k from one class is logically connected to resource instance l not connected

Let M cp denote the np × nc connectivity matrix for one particular class example from product to product component (i.e., P i C j ), the connectivity binary string is stored into a matrix, for example, ⎡ ⎤cp m11 m12 ··· m1nc ⎢ m21 m22 ··· m2nc ⎥  c c c  ⎢ ⎥ M cp = m1p , m2p , . . . , mnpc = ⎢ (2) ⎥ . . ⎣ ··· . ··· ··· ⎦ mnp 1 mnp 2 · · · mnp nc np ×nc where cp refers to the number of class variants. It can be seen that i-th row are the link connections from instance i of product; the j-th column are the link connections from instance j of product component. Let M denote the connectivity space spanned between all classes of products and their product components and therefore M = [M 1 , M 2 , . . . , M cp ]

(3)

Let NCC be the total number of connections among classes NCC = CP × CC + CC × CS + CS × CR

(4)

Let CIBV be the dimension of binary vector for connection instances given as CIBV = CP · CC · ceil(log2 nc ) + CC · CS · ceil(log2 ns ) + CS · CR · ceil(log2 nr )

(5)

Self-Configuration of Network Services

95

where CP , CC and CR are the total number of classes respectively; ceil(·) is the function of rounding the elements of (·) towards the nearest integers towards infinity. The same matrix construction principle can be applied to the connectivity matrix N for nc × ns , and connectivity matrix O for ns × nr . Let L denote the overall connectivity matrix. Hence: L = [M|N|O]T(np +nc +ns )×max{cp nc ,cc ns ,cs nr }

(6)

In addition, cost flows between instances of classes play a very important role in minimizing the cost of operations. We consider the Total Cost of Ownership (TCO) as the main cost model in our paper, with some modification. TCO has been used in companies since 1987. The further work from Bill Kirwin on desktop systems has since extended the model into LANs, client/server software, distributed computing, telecommunications, mainframe data centers and most recently in Windows CE and Palm OS handhold computers [23]. TCO has become the most common model in IT enterprises. Let Cost(·) be the total cost, which is associated with three main kinds of costs: (1) the cost via the link (e.g., transmission cost via wireless channel; traffic condition influenced cost due to finite link capacity etc) and (2) the Total Cost of Ownership (TCO). TCO includes tangible base cost of CO (Cost of Ownership) and intangible costs, according to [23]: • Tangible Base Cost (BC) of CO includes: purchasing prices of the hardware; servicing and supporting cost; maintenance cost; scalability cost, etc. • Intangible Various Cost (VC) of CO includes: various “soft” costs such as conversion cost or operational costs during the whole life of usage (3) Cost of goal-driven Service-Composition (CSC): the activation of a SLAdefined service usually involve many decomposed subservices to work together, subservices that may need to use the services of others are integrated and assembled together. Goal-driven autonomic element-based service activation requires the component-based service to be able to self-assembled. An important portal of cost is involved into this process too. ⎧ V C + CSC Logically connected ⎪ ⎨ f (·) = BC +

  + ϕ ωn,i,k (t), Rn,i,k (t), Cn,i (t), λj,k Cost(·) = ⎪ ⎩ inf. Not connected (7)

96

Chiang, Braun, and Agbinya

where ϕ(ωn,i,k (t), Rn,i,k (t), Cn,i (t), λj,k ) ∈ Rn are the link costs relating only to the components in the resource layer. CPU/Memory usage, bandwidth, capacity are all factors required for the calculation of cost. Considering one particular class c, we can get the cost matrix for all nodes in all 4 layers (including product layer, component layer, service layer and resource layer) as follows: ⎡

fP1 C1 (·) .. .

···

fSns R1 (·)

···

fP1 Cnc (·) .. .



⎢ ⎥ ⎢ ⎥ fPi Cj (·) ⎢ ⎥ ⎢ fPn C1 (·) ⎥ · · · f (·) P C np nc p ⎢ ⎥ ⎢− − − − − − − − − − − − − − −⎥ ⎢ ⎥ ⎢ fC1 S1 (·) ··· fC1 Sns (·) ⎥ ⎢ ⎥ ⎢ ⎥ .. .. Costs(c) = ⎢ ⎥ . . fCj Sk (·) ⎢ ⎥ ⎢ fC S (·) ··· fCnc Sns (·) ⎥ nc 1 ⎢ ⎥ ⎢− − − − − − − − − − − − − − −⎥ ⎢ ⎥ ⎢ ⎥ ··· fS1 Rnr (·) fS1 R1 (·) ⎢ ⎥ ⎢ ⎥ . . . . ⎣ ⎦ . . fS R (·) k

l

fSns Rnr (·)



⎤ ⎡ ⎤ Cost( P i , C j ) Cost(M i ) = ⎣ Cost(C j , Sk ) ⎦ = ⎣ Cost(N i ) ⎦ Cost(Sk , Rl ) Cost(O i ) (np +nc +ns )×max{nc ,ns ,nr }

(8)

It is obvious that the link cost is dependent on the connectivity function. The cost matrix plays an important role in guiding the optimization process in order to minimize the cost for managing distributed network elements. For example, in Fig. 1, there are 3 product classes; 4 component classes; 8 service classes and 8 resource classes dispersed in the search space. The arc between two classes indicates the dependency relationship. The dependency between classes in two adjacent layers could be “one to one”, “one to many” or “many to one”.

3.6. Objective Function The objective function is the central optimization rule for the system, and can be developed as follows: ⎡ ⎤ n˜ s n˜ c n˜ r  mij f P i C j (·)   ⎣ + nj,k fC j Sk (·) ⎦ min Z = (9) + ok,z f Sk Rl (·) z=1 k=1 i∈Np ,j =1

Self-Configuration of Network Services

97

R1 R1

S8

S1

R1

R1 C4

C1 S2

P1

S7 P3

S6

P2

C3

S3

C2

R1

R1

S5

S4 R1

R1

Fig. 1. Network components.

subject to (1) The sum of the costs along one class of connectivity path should be no more than the capacity of its subnodes. a).

np 

f P i C j (·) ≤

c).

nc 

fC j Sk (·) ≤

ns 

j =1

k=1

ns 

nr 

k=1

ω¯ nj ;

j =1

i=1

b).

nc 

f Sk Rl (·) ≤

ω¯ nk ;

ω¯ nl

l=1

(2) Within one group of objects, there are connections between higher-layer component and lower-layer component and all components should be connected.

98

Chiang, Braun, and Agbinya

a). b). c).

n˜ c  j =1 n˜ s 

P i C j = n˜ c (for

i=1,...,n˜ p

C j Sk = n˜ s (for

i=1,...,n˜ c

k=1 n˜ r 

Sk Rl = n˜ r (for

);

);

i=1,...,n˜ s

)

l=1

where n˜ r (≤ nr ), n˜ s (≤ ns ), n˜ c (≤ nc ) represent the maximum number of nodes for the possible connectivity cluster group which is the subset of connectivity set defined by nr , ns and nc . 4. CACS: CONSTRAINED ANT COLONY SYSTEM FOR NETWORK CONFIGURATION PROCESS The proposed approach to ant-based configuration tries to combine a network domain theme with an operational domain theme. A network domain theme takes into account the QoS metrics of the service hosts along the routing path matching user requirements. An operational domain theme desires to find a near optimal configuration for a product/service with minimum operational cost. The particular algorithm we describe in this paper concentrates on the assumption that minimum operational cost is the main concern. A “constrained” ACS-based algorithmic model describe a network configuration process where the ant agents are not transversing randomly through search space as in the TSP problem, rather, they follow a deterministic “candidate list” as suggested in Dorigo [15]. This “candidate list” provides possible paths as roughlyknown directions for the ants. Ant agents behave randomly within those possible candidate clusters, such that, the dimensions of the search space are further reduced as well as the computational time being kept within reasonable limits. The candidate list is determined by the following three preliminary parameters: 1. Dependency String (DependsOn): Denoted as D, this is a binary string. A “1” represents the dependency relationship existing between the classes of this layer and the next adjacent layer. A “0” indicates no logical dependency between those classes in these two layers. 2. Connectivity Binary String: This shows connection status between individual objects. That is, the decimal conversion of certain groups of binary string can easily locate the pre-indexed object. This connectivity information is not revealed to ant agents, but it is used to determine the effective cost. 3. Cost of Usage: shows the raw cost value before considering dependency and connection instances for real-world scenarios, as well as taking into

Self-Configuration of Network Services

99

consideration the Base Cost (BC), Variable Cost (VC), and link cost ϕ(ωn,i,k (t), Rn,i,k (t), Cn,i (t), λj,k ) as defined in Eq. (7). The details are given in the next two paragraphs. In this paper, we are going to explore minimum configuration management cost on the basis of individual cost of usage. Before the “ants” start traversing through the graph, these preliminary parameters are introduced for generating effective costs, which provide important “candidate paths” for the ants’ probabilistic searching process. The connectivity binary string in this table is generated randomly in this case. Effective cost is calculated by the Eq. (12). The problem we address is that of assigning proper network configuration to satisfy a particular class of SLA in such a way that the minimum operational cost is achieved. A “colony of ants” is applied to create a network configuration for a particular SLA as specified for a particular “product” instantiated for a customer. Our task is to formulate the network configuration issue into a graphical network nodes selection issue. We associate a node in our graph with each element of network operational domain. We then associate an arc a(i, j ) with the cost of linking for each pair of node i and node j (see Fig. 5 for email example). This term cost in our paper has a more general meaning, reflecting many factors, e.g., terminal connection cost; installation cost and even delay time, etc. Only effective cost EC(i, j), which describes the real cost from node i to node j, will be applied. Then applying ACO optimization into the minimum network cost problem is relatively straight forward when the network operational structure is represented by a node graph. Each edge in the graph, representing possible path that ants could traverse. Possible object elements or network components must be already instantiated in order to activate products and services. A simple summary of the model is as follows: • Nodes are representations of network products, components, services and resources in 4 layers • The weights on the arcs describe the cost • Information allocators reside on nodes and guide the ants to traverse only into the relevant groups of clusters • Multiple ant colonies are applied to achieve parallelism. The activation of each individual class of a product is fulfilled by one ant colony. Therefore, introduction of multiple ant colonies will be needed for multiple classes of products. The cost values are determined in three parts. The first part considering mainly link cost consists of the parameters in Table II. The second part is determined by TCO which is a function of BC and VC as shown in Eq. (11). The third part is decided by service composition processes.

100

Chiang, Braun, and Agbinya Table II. Costs and Determined Parameters Parameters Traffic intensity condition ↑ Node capacity level and link capacity level ↓ Delay time ↑

Cost ↑ ↑ ↑

In addition, the utility factor reveals the usage of the network, and therefore affects the cost. It is also determined by the parameters listed in Table II. Let  U sage(i) denote the utility variable of the i-th network φ(i) = MaxCapacity(i)+capOverMax(i) component, where φ ∈ [0, 1]. The Cap Over Max(i) plays an important role when the current usage exceeds the capacity limitation. To simplify the cost calculation for the second part, we adopt the number of served users as one of the important factors for usage evaluation: φ(i) =

CU (i) CurrentUsers(i)  = MaxUsers(i) + CapUserOverMax(i) M(i) − C(i)

Cost(i) = BC(i) + = BC(i) +

(10)

φ(i) × V C(i) 1 − φ(i) CU (i) × V C(i) M(i) + C(i) − CU (i)

(11)

where BC(i) is the base cost for the i-th component; VC(i) is the variable cost for the i-th component. The information Effective Costs (EC) is stored into a local information allocator which is described in the following part. The calculation EC is illustrated in Eq. (12): EC(i)=D × Cost(i)

(12)

4.1. Information Model Implemented in XML Given the user requirements for a class of product or service, ant agents complete multiple sessions to fulfill the configuration search on the basis of the suitable description of the session characteristics. The session information is described in XML (extensible Markup Language), containing data values about the nodes. XML is widely used to describe hierarchically structured information. It also fits in well with the object-oriented principles we wish to use. The effective cost changes over time during configuration and management process. The cost is calculated using the information provided in XML file. In this paper, we

Self-Configuration of Network Services

101

assume the fundamental information (e.g., specific field values) about all the network components in MIB (Management Information Base) and Service MIB have already been updated into XML elements automatically, and consequently cost information, interdependency information and connectivity information have been updated with the local information allocator. Actually, this can be done via the centralized daemonAction of ACO. Our previous work [24] proposed the model and theory for low-level information synchronization, which is beyond the scope of this paper. Moreover, based on the analysis of ACO, our model associates with two kinds of information to achieve the management goal: 1. Local Information Allocator (LIA): is used to provide heuristic information (HI) to the ants. HI is essential to the final generation of good solutions. Ants get additional problem-dependent information (candidate list) from LIA as hints for their decisions. At the beginning of searching process, “ants” conduct searches for any target randomly and the node’s connectivity information is not available to all the ants. The main purpose of HI is to provide maximum information and to allow diverse behavior allowing the “creativity” of the ants to emerge so that they can build up reasonable and good solutions. In the proposed algorithm, the HI information includes dependsOn local information which describes the dependency among managed elements, effective cost and other elements. 2. Stigmergic Communication Channel (SCC): is used to get enough local information and reserve memory traces, we propose the idea of a stigmergic communication channel, which transmits information to the ants. This could be for the localization of next available nodes within a limited radius distance. In addition, this channel has some functions like preserving the memory of former ants and real-time information synchronization. The following section presents both the learning and adaptation stages implemented by ant agents during the searching process. 4.2. Proposed ACO-NC Procedure Only the nodes from the product layer can be source nodes, and the destination nodes are those nodes either from resource nodes or from any complete nodes. The complete nodes could be from the service layer or the component layer (see above section for definition). Figure 2 depicts the object nodes as the instantiation from classes in our four layer model. This model is suitable for a distributed computing scenario from both network devices level and application level. For the purpose of

102

Chiang, Braun, and Agbinya Class 1

Objects in Product Layer

h Class 1

Objects in Compone Layer

a( h

Class 2

Class 3

Class 4

i a(

Objects in Service Layer

Objects in Resource Layer

,i)

i,

j)

j

k

l

p

Fig. 2. Graphical representation for managed elements.

presentation, we assume each layer has 4 classes (except product layer), and each class has 4 object instantiations. In addition, as an example, node j is one complete node, so one of the ant metaheuristic-based configuration process could stop here. The edge weights a(i, j) between them denote the effective cost that the configuration process needed. The optimal configuration process is then transformed into an ant traversing through the graphical network where a certain number of nodes are visited until the stopping criteria are reached. Moreover, each node is assumed to be traversed once at most. Suppose the ant is randomly placed on node i, the probability of an ant k choosing the next adjacent node j as denoted in [25] is: ⎧ [τi,j ]α [ηi,j ]β if j ∈ U and l = j ⎨ α β (13) Pk (i, j ) = l∈U [τi,l ] [ηi,l ] ⎩ 0 otherwise where ηi,j is called visibility and represents the heuristic desirability; U is the set of neighbor nodes of node i that has not transpassed, and U is the set of feasible components which can be potentially selected to fulfill a successful configuration process. In our present method, cost information from LIA contributes to the main  1 , which is the reciprocal of the effective cost part of ηi,j , denoted as ηi,j = EC(j ) from node i to node j. The parameter ηi,j is used not only to calculate the selecting probability but also as a measure to determine the goodness of the selection of configuration components. The pair parameters α and β indicate the trade-off of affective importance between heuristic information and pheromone trail density. The parameter τi,j is the pheromone density on the path (i, j) from node i to node j.

Self-Configuration of Network Services

103

The main steps of our proposed method for the configuration process of one product class are summarized as follows: Step 1) Initialize cost values and ACO parameters, such as predefined iteration times t, initial pheromone values τi,j (t) and stagnation conditions, etc. • Create M artificial ant agents for one ant colony, where M is usually set to be equal to the number of nodes; Each ant colony is used to instantiate one product instance. • Set initial iteration variable t0 = 0; set predefined iteration times t = 500; and set the initial pheromone value in all trails equal to a constant initial value τi,j (0) = C. C should not be zero because a non-zero finite constant could delay the process of evaporation into zero pheromone density so as to further avoid an earlier local optima. • Dispatch each ant in this ant colony from one product node. The ant retrieves heuristic information, e.g., cost information, depends on information list, connectivity information.

Step 2) Build the Solution M ants start to follow the transition rule to build solutions asynchronously. Meanwhile, heuristic information, as a transition constraint, ensures ants should only traverse the feasible nodes in our problem domain before making a decision of a move. In order to be comparable with the simulation of PBIL, we take the same number of classes (1 product class; 4 product component classes; 4 service classes; 4 resources classes) and the same number of objects (each class has 4 instantiations only, the total number of objects should be 4 × (1 + 4 + 4 + 4) = 52) for components—represented by 52 nodes. Each node corresponds to one of the network instances of one class. Effective Cost is calculated by Eq. (12). Until now, all the heuristic information and Effective Cost values are determinate. This seems to lead our algorithm always to a fixed configuration path. However, the current minimum cost value for each iteration is dependent on a combination of randomly generated binary strings. This randomness makes sure our algorithm will not be determinate at each run. The probability of selecting next configuration component nodes at one iteration step is recorded into a table as shown in Fig. 3, where the object index starts from No. 5 because the selection of the first 4 objects from product layer depends on the SLA. We do not need to include them into the probability calculation process. When the complete nodes or resource nodes are traversed by all M ants, we consider it as the completion of one round of iterations.

104

Chiang, Braun, and Agbinya

Fig. 3. Probability table and configuration paths for all ants during each iteration.

There are 3 possibly successful ant traversing scenarios: 1. Ant traverses through possible nodes until it reaches complete node i and sleep there. The path of the first ant in Fig. 3 shows this scenario. 2. Ant reaches the nodes in resource layer and sleep there. The path of the first ant in Fig. 3 also shows this scenario. 3. Suppose some node goes faulty, the ants will wake up on this node to find an alternative node from the same class of nodes as the faulty nodes, or the next available ant will find an alternative node. The path of the 3rd ant in Fig. 3 shows this scenario. • “X” illustrates that a particular node is NOT possibly to be visited by the related ant because it is not connected or logically dependant. This

Self-Configuration of Network Services

105

can happen anywhere according to the LIA. The position of “X” in Fig. 3 is only for demonstration purpose. • There are 4 object instances for each class, we assume there are 13 classes in our design: 1 denotes P00 , 2 denotes P01 , 3 denotes P02 , 4 denotes P03 , 5 denotes C00 , 6 denotes C01 , 7 denotes C02 , 8 denotes C03 , and the rest can be deduced by analogy until 52. • Pr(n-th Ant) shows the probability of being selected by the n-th ant; the n-th ant in node i will select the next node j to visit with probability Eq. (13). The new algorithm is shown in the following pseudocode:

Not all ants are able to finish a complete traverse path from product to resources. For ants which are able to finish traverse paths during this iteration, we match the components with the nodes on paths and record the cost value for each path; The value of the objective function for each completed paths, for example, the completed paths are demonstrated in Fig. 3 for 1st ant and 2nd ant. In addition, there are two modifications of the conventional ACO process for our method:

106

Chiang, Braun, and Agbinya

1. Stopping criteria: Whenever ants reach resources components, they will stop searching and sleep there (No need to go back to source node) 2. Random factors: a. In the early phase of our algorithm, each ant will not be randomly located onto each node as what traditional ant algorithm has described. Instead, each ant starts traversing only from source nodes; b. After receiving heuristic information from LIA, ants travel randomly among the feasible objects without the knowledge of the existence of the real-world connection. Step 3) Update pheromone trails Only the pheromone along our successfully recorded paths (usually more than one) is intensified, instead, pheromone in those incomplete paths evaporates. The pheromone increases and reductions will influence the searching process in next iteration. We adopt the conventional ACO pheromone update rule as: k > 0 is • Intensify pheromone: an absolute amount of pheromone τi,j added to the existing pheromone values on the paths completed by k-th ant  Q if(i, j ) ∈ Tk k τi,j = Zmin(k) (14) 0 if ∈ / Tk

where Tk are the paths having been traversed by k-th ant. Q is a constant. More research on Q value have been done in Dorigo [15]. • Evaporate pheromone: pheromone on the edges of incomplete traversing paths is reduced in order to minimize the chances of being selected by other ants. τi,j = (1 − ρ) × τi,j

∀i, j ∈ [1 : 52]

(15)

where ρ ∈ [0, 1) is the pheromone evaporation rate. τi,j is the current pheromone density on the trail a(i, j ). • Mutate pheromone update process: In order to increase the convergence speed of the algorithm, we combine the mutation parameter into our pheromone update rules, where the concept of threshold is also involved. This mutation parameter involved into our algorithm are partly based on Best-worst Ant Colony Algorithm (BWACA) as well as Max-min Ant system.

Fig. 4. Schematic of ACO-based self-optimized network operations model.

Self-Configuration of Network Services 107

108

Chiang, Braun, and Agbinya

Step 4) Start another round of iterations Before the predefined iteration time is reached, another round of iterations always starts again, immediately after the previous round of iterations ends. Meanwhile, the predefined iteration times t is increased by 1: t = t + 1. Go to step 2). This process will continue till t reaches its limit. Moreover, the pheromone information from previous iteration is utilized in the new iteration, and being kept updated. Step 5) Restart/Reinitialize When the maximum iteration time is reached or stagnation condition is satisfied, there is a need to restart the algorithm by going to step 1). The whole process of ACO based network configuration is described in Fig. 4. 5. APPLICATION SCENARIO We take the well-known email process as an evaluation application. The simulation design is to evaluate the proposed self-organized service configuration model inspired by ant foraging behaviors in a dynamic network environment. The following describes the simulation model and performance improvement of the proposed nature-inspired adaptation strategy when compared with Management Layer - Contains colonies of management agents who is responsible for mngt objective realization This area is where Autonomic behaviour can be applied

Product Layer - (Instantiated product) Email(User)

MCA

Components (of the product) Basic_Email_Box(User)

MTA

Premium_Email_Box(User)

Services POP/IMAP

Switch Resources

DNS

SMTP

TCP/IP

Router

Backoffice_Store

MailBox allocated autonomically to Servers

Fig. 5. Analysis of email application scenario.

SpamFiltering

Bandwidth

Self-Configuration of Network Services

109

Fig. 6. Cost results for different pairs (α, β).

PBIL. The tests on effectiveness, robustness and scalability of the proposed agent approach are described in the simulation model. Figure 5 shows the email configuration process with regards to our analysis in the previous section. This matches with what we discussed previously in the algorithm part, we assume the same number of classes and the same number of objects instantiated from corresponding class. That is, • In the product layer, there is a class of product—Email(User), under this class, there are 4 objects — (1) P0 —Golden Email Account, (2) P1 —Silver Email Account, (3) P2 —Bronze Email Account, and (4) P3 —Iron Email Account • In the component layer, there are four classes of components— (1) C0 —Basic− Email− Box(users); (2) C1 —Dial-up Internet (3) C2 — Premium Email− Box(User); (4) C3 —Broadband Connection. Each one of the classes also contains 4 objects and denoted as C00 , C01 , C02 , C03 , and so do service and resource objects • In the service layer, there are mainly 4 classes of services—(1) S0 — Transport (its objects are, for example, POP/IMAP, TCP/IP, SMTP, DNS) (2) S1 —Authentication (e.g., SpamFiltering et al.) (3) S2 —Anti-Virus (e.g., VirusFiltering et al.) (4) S3 —Billing Service • In the resource layer, there are mainly 4 classes of resources — R0 — Router, R1 —Switch, R2 —Backoffice Storage Servers, R3 —Bandwidth To simplify the computational complexity, we assume each class has only 4 instantiated objects with regards to different users as above. Therefore, the total

110

Chiang, Braun, and Agbinya

number of objects is 52. The data used to calculate effective cost are derived from our university campus network based on monthly throughput. 5.1. Why Compare PBIL and Proposed ACO-NC PBIL, is a type of centralized genetic algorithm (GA) searching strategy. It has been applied in many fields. In contrast, our proposed ACO-NC, is a type of distributed learning and adaptation approach, that has only recently gained prominence. As we know a lot about how to use PBIL, and it is fairly easy to obtain performance information using it, it seems appropriate to use it as our benchmark in evaluating the ACO-NC. It is insightful to see how these two approaches compare in solving network configuration problems. Moreover, as indicated in the literatures, they share similarities in some other ways. We intend to use this PBIL benchmark to evaluate such aspects as robustness and scalability. 5.2. Simulation Model The simulation model evaluates how the ant-like agents can learn and be adaptable to the dynamic environment with their ant evolutionary adaptation strategy in order to fulfilling our configuration task. We expect to achieve a level of robustness, reliability and scalability, that can indicate a possible future path for the management of next-generation networks. However, in this paper we do not address scalability. The dynamic network environment (i.e., email process) in our simulation is evaluated in terms of the following four scenarios: (1) Network costs are varying; (2) Network workloads are varying; (3) Network nodes are dynamically added in or removed; (4) Failures happen in some network nodes. The simulation is designed as “non-batch” runs in the agent simulator— RePast, which means that the simulation process can be controlled by users to change parameters through the GUI during the runtime, instead of a fixed starting/ending simulation time being used by “batch” runs. In order to simulate user’s requests, an event-generator generates service requests in the simulation. The service request will be forwarded to one ant colony with ant agents, whose colony is not busy (i.e. this colony is not in the usage of other service or is within the tolerable service capacity of the agents). The other service request should be forwarded to another colony of ants. If all the ant colonies are busy, the service request remains in the queue until an ant colony becomes available. In addition, Q, α, β, MaxCycles as the key parameters for ACO, have various values and have been reported in the literature [15, 26]. In our simulation, the following values in Table III was found perform better in our experiments. The network workloads are mainly evaluated by measuring the following two parameters in Table IV.

Self-Configuration of Network Services

111

Table III. Key Parameters for Our Experiment Parameters

Values

α β Q MaxCycles

3 2 9 100

The scenario in Fig. 5 is simulated with the agent modeling toolkit—RePast J [27], the simulation IDE is JBuilder 2005 with Java SDK 1.4. The following simulation results in 7–9 are our main findings, Fig. 7 lists the finally converged cost results according to different parameter setup for parameter pairs (α, β). 5.2.1. Effectiveness Test To test the effectiveness of our CACS system, we randomly choose 6 running results comparing with the results from our benchmarks—the centralized Genetic Algorithm (GA)—PBIL. We put those results in a single plot with the view of average and bounds of the converged cost obtained in Fig. 7. As we see, there is only minor differences between both approaches. The differences vary within 5 cost units which can be technically ignored. The centralized Genetic Algorithm (GA)—PBIL, as the benchmark for our problem, essentially shows acceptable performance. The decentralized CACS can achieve a similar performance not worse than the centralized Genetic Algorithm (GA)—PBIL. Moreover, the Java code length for the CACS system is much smaller than the code length of PBIL. This means a smaller memory usage and possibly shortened CPU utilization time in the ant metaheuristic operations. Figure 8 shows our six experiments by selecting different values for adjustable parameter pairs (α, β). The performance of ant metaheuristic is affected by the varied parameters α and β. By referring to Eq. (13), we know α and β are a pair of tradeoff parameters, where α controls the relative weight of pheromone intensity. If Table IV. Varied Workload of Users’ Service Requests Users

Service-req/s

50 500 5000 50000 500000

0.05 0.5 5 50 500

112

Chiang, Braun, and Agbinya Title: ACS-Based Metaheuristic Learning and Adaptation Scheme Searching for Minimum Cost

100 ACS-based scheme PBIL scheme

Minimum Cost for Each Iteration Basedon Cost Function

95

90

85

80

75

70

65

60

55

0

100

200

300

400

500

600

Iteration Times

Fig. 7. Converged cost averages when α = 3, β = 2.

β = 0, and α = 0, this scenario leads to a fast convergence of the optimal selection process although the selected object may not be optimal; whereas β reflects the influences of heuristic information (in our case, this information is about effective cost). If α = 0, and β = 0, the guidance of heuristic information is amplified and therefore, most likely, only the neighbor area can be searched while no pheromone information is utilized. It is obvious that the extreme scenarios are not desirable cases that we are looking for. From Fig. 8, we can see when α β (e.g., α = 2000, β = 3), the pheromone information is utilized completely. Therefore, the iteration times for ants equals to 38 which is much less than the iteration times required by PBIL—49. However, when α β (e.g., α = 2, and β = 3000), in the sub-figure (f) of Fig. 8, our CACS algorithm has a larger increase for both iteration times and minimum cost values. This is not a desirable parameter pair (α, β). In the end, although our CACS algorithm has major differences to a traditional ant colony system, the simulation results show α = 3, β = 2 is still in scope of feasible parameter pairs. 5.2.2. Robustness Test Figure 9 shows the robustness test on our CACS system. Four nodes become faulty on the 60th cycle of iterations. The distributed nature of our CACS system

Self-Configuration of Network Services

113

Title: CACS Scheme: Performance Influences by varied alpha and beta value

100

100 ACS-based scheme PBIL scheme

90 80

70

60

60

50

0

20

40

60

80

100

Iteration Times

A lpha= 0. 2 bet a=3; A nt ->59(43); P BIL-> 60(35)

100

ACS-based scheme PBIL scheme

90 80

(d)

70 60 50

0

20

40

60

80

100

Iteration Times

A lpha= 300, bet a= 3, Ant-> 60(48); PB IL->59(45)

120

ACS-based scheme PBIL scheme

100 (e)

80

(b)

70

Minimum Cost for Each Iteration Basedon Cost Function

(c)

Minimum Cost for Each Iteration Basedon Cost Function

(a)

ACS-based scheme PBIL scheme

90

50

0

20

40

60

80

100

Iteration Times

A lpha= 20, bet a=0. 3, Ant-> 59(39); PB IL->59(45)

100

ACS-based scheme PBIL scheme

90 80 70 60 50

0

20

40

60

80

100

Iteration Times

A lpha= 3, beta=300, Ant-> 60(48); PB IL->59(36)

100

ACS-based scheme PBIL scheme

90 80

80

(f) 70

60 40

60 0

20

40

60

80

Iteration Times

Alpha=3000, beta=2, Ant->59(38); PBIL->59(49)

100

50

0

20

40

60

80

100

Iteration Times

Alpha=2, beta=3000, Ant->68(52); PBIL->59(36)

Fig. 8. Performance comparison for varied parameters α and β.

instinctively presents better robustness performance in comparison with centralized PBIL. We know PBIL algorithm needs to reset all the parameters and have to rerun the program whenever faulty nodes occur. PBIL appears to take more time to reset in this robustness test. However, the whole CACS system still functions very well by locally recalculating the cost and finding an alternative node whenever nodes go faulty. In addition, because the cost of the replacement nodes usually is higher than the previous faulty nodes, the final cost has a higher trend as shown in Fig. 9. Actually, this robustness also presents self-healing ability from the view of the macrosystem-level. The self-healing process runs fast enough during one cycle of iterations. On the contrary, PBIL algorithm has to finish all the predefined cycles to achieve similar performance. a) Configuration Path Analysis: The complete nodes are involved in this test. As shown in Fig. 9. All four nodes in component classes are faulty; however, the configuration process still maintains its smoothness in such a way that another four nodes, according to their relevant attributes to the faulty nodes, are selected. The recovered configuration paths are shown in the following figure.

114

Chiang, Braun, and Agbinya Title: ACS-Based Metaheuristic Learning and Adaptation Scheme Searching for Minimum Cost

95 Without Error Nodes With 4 Error Nodes ( Failure nodes in the classes of C0,C1,C2,C3) 90

Minimum Cost for Each Iteration Basedon Cost Function

85

80

Paths before errors:

Paths after errors:

p->c00 p->c31->s00->r02 p->c31->s00->r22 p->c11->s20->r01 p->c22->s23->r01 p->c11->s20->r23 p->c22->s23->r23 p->c31->s30->r12 p->c31->s30->r20

p->c02 p->c30->s00->r02 p->c30->s00->r22 p->c10->s20->r03 p->c21->s23->r03 p->c10->s20->r23 p->c21->s23->r23 p->c30->s30->r12 p->c30->s30->r20

75

70

65

60

55

0

20

40

60

80

100

120

140

160

180

200

Iteration Times

Fig. 9. Robustness performance comparison between no error nodes and error nodes.

6. CONCLUSION AND FUTURE WORK We have shown autonomic service configuration process under multiple classes of SLA in dynamic network can be nearly-optimized through one distributed learning and adaptation strategy inspired by ant metaheuristics. The properties of self-configuration, self-healing and self-optimization for an autonomic system have been covered and tested in this paper. Multiple colonies of ants are applied to help solve combinatorial optimization problems. We believe that our proposed constrained CACS approach can also be applied to other areas with more constraint factors: vehicle routing problem, placement and assignment problem in wireless sensor networks and ad hoc networks. It is worth pointing out that ant path building is a result affected by multiple factors. This result involves both deterministic processes and uncertain processes. On one hand, ant traverses on the basis of deterministic pheromone and heuristic information; On the other hand, ants could randomly find new nodes under uncertain circumstances, and this behavior, viewed from macroscopical level presents diverse ways with regards to their survivability and creativity. This diversity is the key to enable artificial ant agents (AAA) to find nearly optimal solution in a complex world without exhaustively searching the whole searching space.

Self-Configuration of Network Services

115

ACKNOWLEDGEMENT The project of autonomic network operational management for the service discovery, selection, configuration, service activation and assurance requests for complex NGN applications is one of the key issues currently explored in Teleholonic R&D group (TSRG) at the University of Technology, Sydney. The first author would like to take this opportunity to thank Australian Government for providing financial support during his research. REFERENCES 1. IBM, The Redbook of Autonomic Computing, Tech. Rep., April 2003. 2. IBM, An Architectural Blueprint for Autonomic Computing, Tech. Rep., April 2003. 3. J. Kephart and D. Chess, The Vision of Autonomic Computing, Computer, Vol. 36, No. 1, pp. 41–50, 2003. 4. M. Avvenuti and A. Vecchio, An Agent-Based Framework for Nomadic Computing, in Proceedings of 7th IEEE Workshop on Future Trends of Distributed Computing Systems, pp. 213–218, 1999. 5. K. Chen and K. Nahrstedt, ipass: An Incentive Compatible Auction Scheme to Enable Packet Forwarding Service in Manet, in Proceedings of 24th International Conference on Distributed Computing Systems, pp. 534–542, 2004. 6. T. Nakano and T. Suda, Self-Organizing Network Services with Evolutionary Adaptation, IEEE Transactions on Neural Networks, Vol. 16, No. 5, pp. 1269–1278, 2005. 7. N. Makinae, H. Suzuki, and S. Minamoto, Communication Platform for Service Operations Systems in Advanced Intelligent Network, in 1997 IEEE International Conference on Communications, Vol. 2, pp. 872–877, 1997. 8. J. Suzuki and T. Suda, A Middleware Platform for a Biologically Inspired Network Architecture Supporting Autonomous and Adaptive Applications, IEEE Journal on Selected Areas in Communications, Vol. 23, No. 2, pp. 249–260, 2005. 9. P. Premprayoon and P. Wardkein, Topological Communication Network Design Using Ant Colony Optimization, in The 7th International Conference on Advanced Communication Technology, Vol. 2, pp. 1147–1151, 2005. 10. S. Kirkpatrick, C. D. G. Jr, and M. Vecchi, Optimization by Simulated Annealing, Science, p. 4598, 1983. 11. J. H. Holland, Adaptation in Natural and Artificial Systems, MIT Press, 1992. 12. J. H. Holland, Hidden Order: How Adaptation Builds Complexity, Cambidge, Massachusetts, Perseus Books, 1995. 13. D. Turgut, B. Turgut, R. Elmasri, and T. Le, Optimizing Clustering Algorithm in Mobile ad hoc Networks Using Simulated Annealing, IEEE Wireless Communications and Networking, Vol. 3, pp. 1492–1497, 2003. 14. R. Gallego, R. Romero, and A. Monticelli, Tabu Search Algorithm for Network Synthesis, IEEE Transactions on Power Systems, Vol. 15, No. 2, pp. 490–495, 2000. 15. M. Dorigo and T. Stuzle, Ant Colony Optimization, MIT Press, 2004. 16. C. Blum and A. A. Roli, Metaheuristics in Combinatorial Optimization: Overview and Conceptual Comparison, ACM Comput. Surv., Vol. 35, No. 3, pp. 268–308, 2003. 17. F. Chiang, R. Braun, and J. Hughes, A Biologically Inspired Multi-Agent Framework for Autonomic Service Management, Journal of Pervasive Computing and Communications, Vol 2, No. 3, pp. 261–275, 2006.

116

Chiang, Braun, and Agbinya

18. F. Chiang, R. Braun, S. Magrath, and S. Markovits, Autonomic Service Configuration in Telecommunication Mass with Extended Rolebased Gaia and Jadex, vol. 2 of Proceeding of 2005 IEEE International Conference on Service Systems and Service Management, pp. 1319–1324, 2005. 19. F. Chiang, R. Braun, and J. Hughes, A Nature Inspired Multi-Agent Architecture for SelfConfiguration of Network Services in Ubiquitous Computing Environments, in Seventh Annual International Working Conference on Active and Programmable Networks, IWAN 2005 (Nice, France), 2005. 20. S. Magrath, R. Braun, F. Chiang, S. Markovits, and F. Cuervo, Autonomic Telecommunications Service Activation, in 7th International Symposium on Autonomous Decentralized Systems, pp. 731–736, 2005. 21. S. Nahar, A. S. Sahni, and A. E. Shragowitz, Simulated Annealing and Combinatorial Optimization, in Proceedings of the 23rd ACM/IEEE conference on Design automation, pp. 293–299, 1986. 22. B. Chi-ho Lam and H.-f. Leung, Progressive Stochastic Search for Solving Constraint Satisfaction Problems, in Proceedings of 15th IEEE International Conference on Tools with Artificial Intelligence, pp. 487–491, 2003. 23. Y. A. Ghazizadeh, Total Cost of Ownership: Factors to Consider, Available in http://www. intel.com/cd/ids/developer/asmona/eng/43685.htm?prn = Y. 24. F. Chiang and R. Braun, Self-Organized Service Discovery in Mobile Pervasive Communication, Submitted to International Journal of Telecommunications, 2006. 25. E. Bonabeau, M. Dorigo, and G. Theraulaz, Swarm Intelligence: From Natural to Artificial Systems, Santa Fe Institute Studies in the Sciences of Complexity, Oxford University Press, 1999. 26. G. D. Caro and M. Dorigo, Antnet: Distributed Stigmergetic Control for Communications Networks, Journal of Artificial Intelligence Research, Vol. 9, pp. 317–365, 1998. 27. Technical report, Available at http://repast.sourceforge.net/. 28. J. E. Hershey, S. F. Bush, and R. T. Hoctor, Communications and Control – A Natural Linkage for SWARM, Journal of Network and Systems Management, Vol. 14, No. 1, 2006 Frank Chiang is a doctoral researcher in the faculty of engineering at University of Technology, Sydney (UTS), Australia. He received M.Sc. and B.Sc. degrees in Telecommunications and System Engineering in 1999 and 1997, respectively. His current research interests include Autonomic Communication Networks, Bio-inspired algorithms and metaheursitics for combinatorial optimization problems, Intelligent and mobile agents, Network Protocols and Mesh networks. Robin Braun is Director of the UTS Institute for Information and Communications Technology. He obtained the Ph.D. and M.Sc. from the University of Cape Town in 1982 and 1986, respectively, and the BSc(Hons) from Brighton University, UK, in 1980. He has active research interests in the areas of Autonomic Network Management, Teletraffic Engineering, QoS, Network Protocols and Mesh Networks. Johnson I. Agbinya received his Ph.D. in Electronic Engineering at La Trobe University in 1994. He is currently a Faculty of Engineering member at the University of Technology Sydney, an Adjunct Professor of Computer Science in the University of the Western Cape (UWC) and the Executive Editor of African Journal of Information and Communication Technology. His research interests are in wireless communications, sensor networks, digital identity management systems, networks on mobile platforms and in uncovered areas.

Suggest Documents