a computational economy for in load control using a multi-agent system

21
Journal of Network and Systems Management, Vol. 8, No. 3, 2000 1064-7570 / 00 / 0900-0397$18.00 / 0 2000 Plenum Publishing Corporation 397 A Computational Economy for IN Load Control Using a Multi-Agent System A. Patel, 1 K. Prouskas, 1 J. Barria, 1,2 and J. Pitt 1 Intelligent Networks (IN) are used in telecommunication networks to provide services that require a decision-making network element. The Service Control Point (SCP) can be overloaded when the number of service requests exceeds the SCPs designed capacity. Traditional IN load control algorithms assume a single service network model or use a centralized controller to find a solution. In this paper we propose and investigate a market-based model, in the form of a computational economy, for solving the distributed IN load control problem for a multi-service network. We investigate two algorithms, one price-oriented and the other resource-oriented, for finding the competitive equilibrium for this economy. We conclude that the price-oriented approach generally performs better and allows a greater level of distributed-decision making but suffers from an infeasible solution in real-time systems. Furthermore, we study a realization of this model as a multi-agent system (MAS) and investigate the communication overhead associated with running auctions for services. KEY WORDS: Intelligent network; congestion control; market-oriented program- ming; intelligent agents. 1. INTRODUCTION Technological advances have led to the increased usage of telecommunication networks which has been driven in part by the use of Intelligent Networks (IN). An IN is an overlay network to telecommunication systems that facilitates greater service sophistication and complexity. An example of an IN configuration can be seen in Fig. 1. Users access IN services through the Service Switching Point (SSP). The SSP establishes which Service Control Point (SCP) is capable of providing the service requested and then determine if it has the right to access 1 Department of Electrical and Electronic Engineering, Imperial College of Science Technology and Medicine, London, United Kingdom. E-mail: {a.patel1, k.prouskas, j.barria, j.pitt}@ic.ac.uk 2 To whom correspondence should be addressed.

Upload: a-patel

Post on 03-Aug-2016

216 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: A Computational Economy for IN Load Control Using a Multi-Agent System

Journal of Network and Systems Management, Vol. 8, No. 3, 2000

1064-7570/ 00/ 0900-0397$18.00/ 0 2000 Plenum Publishing Corporation

397

A Computational Economy for IN Load ControlUsing a Multi-Agent System

A. Patel,1 K. Prouskas,1 J. Barria,1,2 and J. Pitt1

Intelligent Networks (IN) are used in telecommunication networks to provide servicesthat require a decision-making network element. The Service Control Point (SCP)can be overloaded when the number of service requests exceeds the SCPs designedcapacity. Traditional IN load control algorithms assume a single service networkmodel or use a centralized controller to find a solution. In this paper we proposeand investigate a market-based model, in the form of a computational economy,for solving the distributed IN load control problem for a multi-service network.We investigate two algorithms, one price-oriented and the other resource-oriented,for finding the competitive equilibrium for this economy. We conclude that theprice-oriented approach generally performs better and allows a greater level ofdistributed-decision making but suffers from an infeasible solution in real-timesystems. Furthermore, we study a realization of this model as a multi-agent system(MAS) and investigate the communication overhead associated with running auctionsfor services.

KEY WORDS: Intelligent network; congestion control; market-oriented program-ming; intelligent agents.

1. INTRODUCTION

Technological advances have led to the increased usage of telecommunicationnetworks which has been driven in part by the use of Intelligent Networks (IN).An IN is an overlay network to telecommunication systems that facilitates greaterservice sophistication and complexity. An example of an IN configuration canbe seen in Fig. 1. Users access IN services through the Service Switching Point(SSP). The SSP establishes which Service Control Point (SCP) is capable ofproviding the service requested and then determine if it has the right to access

1 Department of Electrical and Electronic Engineering, Imperial College of Science Technology andMedicine, London, United Kingdom. E-mail: {a.patel1, k.prouskas, j.barria, j.pitt}@ic.ac.uk

2 To whom correspondence should be addressed.

Page 2: A Computational Economy for IN Load Control Using a Multi-Agent System

Patel, Prouskas, Barria, and Pitt398

Fig. 1. An example IN configuration.

that SCP. Once a link has been established, the SCP runs the Service Logic(SL) program code that represents the service requested. The SL code may makeuse of other IN resources, such as Service Data Points (SDP) and IntelligentPeripherals (IP). A Service Management System (SMS) is introduced to managethe IN services.

The increasing number and variety of services being offered has fueled thedemand for greater network capacity. During peak periods of resource usage, anIN can become overloaded with service requests which leads to a degradation inthe Quality-of-Service (QoS) provided by the IN. For example, user calls may bedropped due to buffer overruns, thus significantly reducing network throughput,and consequently increasing the call processing delay. An IN must use a loadcontrol algorithm to provide a high-level of QoS and protect the network frominstability.

Current IN load control algorithms can be categorized in a number of ways.For example, algorithms can be categorized by the throttling mechanism theyuse. A throttling mechanism determines which calls the SSP should accept orreject. Potential throttling mechanisms include a window-based or a rate-basedmechanisms. For window-based mechanism, a limit is set on the maximum num-ber of calls that can be simultaneously accepted. Pham and Betts [1] define analgorithm where the SSPs monitor time-outs from the SCP to set the windowsize. For a rate-based mechanism, a limit is set on the number of new calls insome other time period. Smith [2] investigates a rate-based algorithm known asAutomatic Call Gapping (ACG). This algorithm forces a minimum time sepa-ration between call requests.

Load control algorithms may also be categorized by their triggering mecha-

Page 3: A Computational Economy for IN Load Control Using a Multi-Agent System

Computational Economy for IN Load Control Using a MAS 399

nism. Bedoy et al. [3] suggest that the SSP can monitor the time interval betweensending a service request and an acknowledgment from the SCP. Hac and Gao[4] use a mechanism that is always-on. An always-on algorithm requires con-tinuous periodic updates from the SCP specifying which throttling parametersto use which means that it may be able to respond to sudden overloads quicker.The ACG algorithm monitors the SCP processor utilization or dropped messagesbefore activating the throttling mechanism. This mechanism requires less pro-cessing time than the others but may be slower to respond to a sudden overload.

Algorithms may also be categorized by the way the parameters required bythe throttling mechanism are obtained. Pham and Betts [1] and Smith [2] suggestusing a dynamic search in which the parameters are adjusted incrementally untilan appropriate value is found. Kihl and Nyberg [6] and Lodge et al. [5] useoptimization techniques to find the solution to the problems that require morecomplex information exchange between SSPs and SCPs. Further comparison ofthese algorithms may be found in [1] and [6].

Many of these algorithms are limited to an architecture where a single ser-vice can only be provided by a single SCP. During overload periods this archi-tecture limits the availability of bandwidth and can lead to loss of revenue forthe network. Future INs may use a multi-service architecture to offer greaterbandwidth availability and flexibility. Kawamura and Sano [7] and Arvidssonet al. [8] investigate advanced INs with this feature. However, these algorithmsuse a centralized controller which reduces the reliability and limits the scope fordistributed decision making.

Contemporary increases in IN network complexity and information vol-umes suggest that approaches to the management of telecommunications sys-tems, services and networks will need to be more responsive, adaptive, proac-tive, and less centralized [9]. These are properties of agents and multi-agent sys-tems; many in the telecommunications research community have recognized thatagent-based technology appears to offer a timely solution to the growing prob-lem of designing efficient and flexible network management strategies. Agentshave been shown to be an effective tool in the field of distributed resource allo-cation in general and network traffic control in particular in numerous instances[9–12].

In this paper we develop a resource allocation framework that representsthe IN load control problem and describe a competitive market-based modelfor solving this problem. The solution to this model may be found using manydifferent algorithms. We investigate and compare the use of a price-oriented anda resource-oriented algorithm for finding the solution to the market model, interms of their performance, overhead and other issues related to the practicalrealization of market-based schemes.

In Section 2 we present the problem of IN load control. In Section 3 wediscuss agents and their applicability to IN load control. In Section 4 we present

Page 4: A Computational Economy for IN Load Control Using a Multi-Agent System

Patel, Prouskas, Barria, and Pitt400

some background on market-based systems and present the computational econ-omy to be investigated. Following this we present the agent architecture in Sec-tion 5. In Section 6 we discuss the realization of the system, including real-timeissues. In Section 7 we present results and evaluation of the algorithms investi-gated. Finally, we conclude in Section 8.

2. LOAD CONTROL OF AN INTELLIGENT NETWORK

The QoS provided by an IN is affected by the utilization of the SCP pro-cessors. Queuing theory shows that, as the SCP processor utilization approachesits capacity, processing delays increase significantly and buffer overruns areinevitable. An IN load control algorithm tries to limit SCP processor utilizationbelow some predefined maximum, rlimit.

In our problem formulation, each service type is defined by a single parame-ter sj which represents the average processing requirement for the service. Thisparameter may be estimated by executing the service a number of times andobtaining the time required, by the SCP, to perform the service. This value canthen be normalized with respect to the known time of a particular service. Thissimplified service requirement may lead any load control algorithm to believethat processor utilization will change faster than would actually be the case.However, this simplification allows us to minimize the information required todefine a service.

We can control the processor utilization by using an input rate selectionthrottling mechanism. This is a rate-based mechanism that uses a parameter xijk,which specifies the maximum number of call requests of SL type j that SSP k isallowed send to SCP i. The SSPs decide exactly which calls to accept or throttle.We can then estimate the SCP processor utilization as the total expected use ofthe SCP divided its capacity, Ci:

ri c

�J

∑j c 1

K

∑k c 1

sjxijk�Ci

(2.1)

We can then formalize the problem as the maximization of the expected revenuegenerated by the network per second:

maxxijk

E

J

∑j c 1

K

∑k c 1

RjAjk

(2.2)

Page 5: A Computational Economy for IN Load Control Using a Multi-Agent System

Computational Economy for IN Load Control Using a MAS 401

Such that

J

∑j c 1

K

∑k c 1

sjxijk ≤ rlimitCi for 1 ≤ i ≤ I

xijk ≥ 0 for 1 ≤ i ≤ I, 1 ≤ j ≤ J, 1 ≤ k ≤ K

Where

I, J, K c The number of SCPs, SL types and SSPs respectively.

Rj c This is the revenue generated by a call of service j at SSP k.Ajk c The total number of accepted calls of SL type j at SSP k.

rlimit c The maximum desired SCP processor utilization.

We assume that the values of xijk are divisible such that an allocation of 1.5means that the SSP is allowed to send 3 call requests every 2 seconds.

3. AGENTS IN INTELLIGENT NETWORK LOAD CONTROL

Although it is a well-known fact within the agent research community thatthere is no single-valued, clear-cut definition of an agent, the intersection ofevery mainstream definition is generally accepted to contain the following char-acteristics of an agent: (i) autonomy, (ii) communication (with other software,agents, people), and (iii) social behavior in a community setting. In context, theseapply as:

• Autonomy: Each agent acts on behalf of its associated owner (networkelement)in a self-interested manner. The agent effectively represents andprotects the interests of its owner, albeit without continuous monitoringand direction. Each agent may be initially given a set of goals, which willtypically mirror the owner’s own goals and interests. The agent is thenable to intelligently make decisions which will bring it a step closer torealizing those goals.

• Communication: Communication is essential in a system such as the onewe are considering. Each agent has partial local information at its dis-posal. To solve the problem, it has to communicate with other agents andcombine information to build a (whole or partial) view of the overall sys-tem. In fact, communication and, more specifically, the communicationlanguage comprises a significant aspect of a multi-agent system, becauseit represents a limiting factor to the agents’ expressive abilities.

Page 6: A Computational Economy for IN Load Control Using a Multi-Agent System

Patel, Prouskas, Barria, and Pitt402

• Social behavior: Individual agents in a multi-agent system rarely functionindependently and ad hoc. It is typical for an underlying societal structureto be present, which defines agent roles, tasks and responsibilities. Eachagent has a certain role in the society and interacts with other agents withthe aim of maximizing a combination of its own and the society’s benefit.In context, this can be derived directly from the market analogy whichthe system is mirroring.

Agents have been successfully applied to the field of distributed resourceallocation in general and network traffic control in particular in numerousinstances [9–12]. The main advantages they offer include:

• Agents conceptually provide a higher-level entity which can take the over-load control algorithm out of the switching architecture. In this way, theSSPs, SCPs and all other components can be developed independent ofthe overload protection mechanism to be used.

• Agents can make use of network-level information in making their deci-sions. A traditional limitation of IN load control strategies is the limitedscope of the information available for decision making. Agent informa-tional views of the network, however, do not have this limitation and canrange from local to partial global to fully global. Hence, agents are capa-ble of introducing intelligence into the IN far beyond that of traditionalIN load control techniques.

• Agents allow different algorithms to be quickly applied as different archi-tectures are introduced without interfering with the lower network layers.

• Agents are owned by the network players, and therefore they can reflectthe real-life goals of their owners and hence provide a network solutionwhich is more acceptable for all stakeholders.

In an application such as the one we are considering, there are distinctadvantages of a multi-agent system as opposed to a single agent solution. Thereis always a danger of using multi-agent systems as a fashionable substitute fortraditional modularization techniques; that is, to enhance encapsulation or reduceoverall system complexity or simply to take advantages of decentralization (flexi-bility, redundancy, parallelism etc.) [13]. Nevertheless, the IN load control prob-lem domain presents the following characteristics [14], which make a multi-agent solution to be an attractive and, indeed, a desirable alternative to traditionalapproaches:

• The problem is inherently geographically distributed.• The existing infrastructure contains legacy components (SSPs, SCPs etc.),

which must be made to behave or interact in new ways.• The system can be easily thought of or can be naturally mapped into a

society of autonomous, cooperating components. In our case, this map-

Page 7: A Computational Economy for IN Load Control Using a Multi-Agent System

Computational Economy for IN Load Control Using a MAS 403

ping comes directly from the real-world market analogy (described indetail in the previous section) the system is modeling.

In summary, agent technology presents an attractive vehicle with which to realizeIN load control techniques.

4. MARKET-BASED SOLUTIONS FOR INTELLIGENT NETWORKS

4.1. A Comparison of Price and Resource Oriented Approaches

The problem defined by Eq. (2.2) can be converted into a market problemusing the market-oriented programming paradigm presented by Wellman [15]. Afictional or computational economy is created that represents the problem to besolved. This economy consists of commodities that represent real-life resourcesand agents that represent the individuals that trade these resources. Within aneconomy each commodity is associated with an auctioneer. The objective of theauctioneer is to perform trading of commodities between agents until the pref-erences of the agents in the network have been satisfied, when this has occurredthen the economy is said to have reached a competitive equilibrium.

Approaches to finding the equilibrium point of a computational economycan be divided into two broad categories, these are price-oriented and resource-oriented algorithms:

• In a price-oriented algorithm, commodities are associated with prices.Agents exchange commodities, using the price value, until the level ofsupply and demand is met each commodity. An auctioneer is used toadjust the price of commodities.

• In a resource-oriented algorithm; hence individual agents know how muchthey are prepared to pay for an additional unit of allocation. All the agentssend their bids to an auctioneer who adjusts the allocations to equalizethe price paid by all agents.

Some properties of price and resource-oriented alternatives are identified here.

• Allocations are iteratively adjusted; the allocations for price-orientedalgorithms may not be feasible until an equilibrium is reached. For theresource-oriented case, it is possible to find a feasible at each iterationsolution.

• Auctioneers, in a resource-oriented algorithm, adjust the allocations foragents. This reduces the scope for distributed decision making. In theprice-oriented case, the auctioneer is very simple and the demand bidsare generated by the agents.

• Production is the process of converting one commodity into another. In aprice-oriented approach, production is possible. For the resource-oriented

Page 8: A Computational Economy for IN Load Control Using a Multi-Agent System

Patel, Prouskas, Barria, and Pitt404

Fig. 2. Market model for IN load control algorithm.

case, ensuring feasibility at every iteration is more difficult than for a pureexchange economy.

4.2. The Computational Economy to Solve the IN Load Control Problem

The computational economy that can be used to solve the problem givenby Eq. (2.2) is shown in Fig. 2.

In Fig. 2, the circles represent agents and the rectangles represent marketswhere commodities may be traded. The directed edges show which agents areactive in which markets and the flow of goods within the economy. There aretwo types of commodities in this economy:

• The first are the SL commodities. In the market labeled SLi, j , the agentscan buy or sell the right to access SL type j from SCP i. This can berelated to Eqs. (2.1) and (2.2) by noting that SSP k’s allocation of thecommodity SLi, j is given by xijk.

• The second is the M0 commodity. This represents the total cost of buyingan allocation of SL. If an SSP wants to obtain more service logic it mustdo so at the expense of “borrowing” more from the M0 market. This isreflected in a lower utility value. Using this economy, the unique paretooptimal solution is also the global system equilibrium [16].

The agents labeled SSPk represent the SSPs in the network. Their objectiveis to “buy” allocations of SL from different SCPs given their incoming demandlevel and the price of the SL commodities. The behavior of these agents is similarto a consumer in classical economic theory. Their preferences for a particularset of goods, x, is determined by a utility function, U(x). The consumers tryto maximize this utility given the prices of all of the commodities. The utilityfunction used in our algorithm is:

Page 9: A Computational Economy for IN Load Control Using a Multi-Agent System

Computational Economy for IN Load Control Using a MAS 405

Uk(x1k , . . . , xjk) cJ

∑j c 1

Rjljk(1 − B(ljk, xjk)) + m0k (4.1)

Where xjk c ∑Ii c 1 xijk c The total allocation of SL type j available to SSP k.

ljk c The incoming rate of SL type j at SSP k.

B(ljk, xjk) c The probability the call is blocked due of insufficient resources.

m0k c SSP k’s allocation of the commodity M0.

This utility function represents the expected revenue that will be generated persecond given an incoming call rate of ljk for SL type j and a total allocationof xjk.

The agents labeled SCPi try to “sell” services in the various markets basedon the demand level for different services in the network. The behavior of theseagents is similar to that of a supplier since this agent initially starts with all ofthe commodities and then tries to sell them against a cost function. This behavioris implied when the following utility function is used:

Ui(xi1, . . . , xij) c ai log�J

∑j c 1

cjxij� + m0i (4.2)

Where

xij c ∑Kk c 1 xijk c The total number of calls of SL type j not allocated

to any SSP.

m0i c SCP i’s allocation of the commodity M0.

ai c A gain parameter.

This utility function reflects the increasing cost of buying SL from SCP i as theSCP utilization approaches its capacity.

The competitive equilibrium of the proposed computational economy maybe found in many different ways, we investigate and compare two such algo-rithm, namely WALRAS auction protocol for price-oriented approaches [15],named after Leon Walras who first investigated these types of approaches to find-

Page 10: A Computational Economy for IN Load Control Using a Multi-Agent System

Patel, Prouskas, Barria, and Pitt406

ing a solution to computational economies, and the Newton-method for resource-oriented approaches [17].

In the WALRAS protocol [15], agents send demand bids to the auction-eers who updates the price of the commodity such that supply and demand aresatisfied, that is, the aggregate excess demand is zero. In the Newton-methodproposed by Ygge and Akkermans [17] agents send price and price-derivativesto auctioneers, who use a Newton-Raphson like gradient project algorithm toadjust the allocation for the agents in such a way so that the new set of alloca-tion are feasible.

Ygge and Akkerman [17] made simplified comparison between the WAL-RAS and Network-method. However since price-oriented algorithms do not pro-vide feasible solutions at every iterations, a direct comparison in a real-timesystem would be unfair and flawed. In order to provide a fairer comparison, analgorithm called Proportion [17] is introduced to provide a feasible solution atevery iteration for the price-oriented algorithm. This algorithm effectively scalesall the allocations of any commodity whose current allocation is infeasible suchthat they are feasible.

5. MULTI-AGENT ARCHITECTURE

Given the computational economy defined in the previous section, the taskof ‘agentifying’ the system now comes into focus [Note that in some texts ‘agen-tification’ is used differently to refer to the process of encapsulating an existinglegacy software system in an agent shell]. This involves a mapping between thealgorithmic view and the agent entity view of the system; in other words, viewingthe system in terms of software agents. This is a loosely constrained process andto a certain degree subject to the designer’s goals and objectives.

On one hand, we can have the entire system represented by a single, mono-lithic agent. However, this method, apart from harboring problems associatedwith centralizing an intrinsically distributed system, works against the princi-ples we laid forth in Section 3 concerning multi-agent systems.

On the other hand, we can model each component, however simple andminute, by an autonomous agent. This approach complicates most solutions andintroduces communication costs beyond what is strictly necessary. Additionally,we must bear in mind that, if the resultant system comprises autonomous andintelligent agents in any sense, then too simplistic agents tend to make manifes-tation of such characteristics difficult.

The agent ‘granularity’ we have chosen is shown in Fig. 3. We have groupedSCPs and their respective SL markets into the Supplier agents and the SSPsinto the Consumer agents. This approach gives us the best of both worlds whilesimultaneously being intuitive with respect to the underlying theoretical marketconcept.

Page 11: A Computational Economy for IN Load Control Using a Multi-Agent System

Computational Economy for IN Load Control Using a MAS 407

Fig. 3. Multi-agent system architecture.

The system incorporates three distinct types of agents: (i) Supplier agents,associated with and acting on behalf of SCPs, (ii) Consumer agents, associatedwith and acting on behalf of SSPs and (iii) a Co-ordinator agent, which maintainsan overview of the market and has global information regarding ongoing auctionsand their participants.

It is worth noting here that the Co-ordinator does not function as a centraliz-ing point of the auctions and consequently does not run the danger of becominga bottleneck. The auctions are performed in a purely distributed fashion. TheCo-ordinator simply offers services similar to those found in the Agent Man-agement System (AMS) and the Directory Facilitator (DF) [18] of a Foundationfor Intelligent Physical Agents (FIPA)-compliant agent platform. It is envisagedthat in different realizations of this agent system on practical systems, it will bepossible for the Co-ordinator to be implicit in the system, with its functionalityprovided by the underlying layers, be they part of an agent platform or existingnetwork services and facilities.

A single agent conceptually comprises two distinct parts: (i) the algorith-mic or computational part, which follows the steps dictated by the algorithmand (ii) the agent part, which deals with the participation in the agent society,communication with other agents, maintenance of historical and statistical dataand which, in general, performs tasks more characteristic of an agent at a higherlevel. The algorithmic part is controlled by the agent part and its computationalfunctionality is executed on request.

The agent’s algorithmic part is implemented in C++ to give the benefitsof increased speed of execution. The agent part is implemented as an APRIL

Page 12: A Computational Economy for IN Load Control Using a Multi-Agent System

Patel, Prouskas, Barria, and Pitt408

(Agent PRocess Interaction Language)3 process, whose symbolic and higher-level messaging features make it better suited to agent applications. Communi-cation between these two parts is via the TCP/ IP protocol and is virtually freewhen, as is typical, both parts are run on the same host.

6. SYSTEM REALIZATION

Agents participating in auctions behave along the lines given in Section4. In formalizing this behavior, we have defined a series of Message SequenceCharts (MSC), which detail the ‘conversations’ each agent engages in, as wellas the interactions and dependencies between agents.

We have defined MSCs for the following:

(i) At the platform level, interactions between Suppliers/ Consumers and theCo-ordinator. These are concerned more with the logistics of the systemrather than its functionality, so they are not described in detail in thispaper. However, after these interactions have taken place each agent hasits own unique identifier (address) and is tied to a specific network ele-ment (SCP or SSP), and each agent has knowledge of every other agentthat participates in the same auction and with which it needs to commu-nicate to carry that auction out successfully.

(ii) At the auction level, interactions between Suppliers and Consumers tocarry out the auction algorithm itself. The MSC for the price-orientedalgorithm is shown in Fig. 4. An equivalent algorithm is also used forthe resource-oriented case.

Agents communicate with one another in a manner compliant with the FIPAstandard. Message headers are realized in FIPA Agent Communication Language(ACL) [19] format, using the language SL1. For comparison purposes, the con-tent of the messages is also realized in the same language.

There are also several facets of the algorithm in which real-time constraintshave to be observed. These particularly relate to (i) The auction interval usedby the Suppliers; (ii) The time interval between successive iterations within thesame auction at the Suppliers; and (iii) The periodic and iterative nature of thebids sent in by the Consumers. More specifically:

• Auctions are periodic and an auction must finish within a specified periodof time.

• Having received a bit, Suppliers only accept additional bids for a specifiedperiod of time before updating and sending out the new allocations.

• Having sent a bid, the new allocation must be received within a specified

3http:/ / quimby.fla.com/ Activities/ Programming/ APRIL/ april.html

Page 13: A Computational Economy for IN Load Control Using a Multi-Agent System

Computational Economy for IN Load Control Using a MAS 409

Fig. 4. Auction MSC.

period of time before the Consumer engages in preemptive behavior andsubmits a new (not necessarily identical to the old one) bid.

These impose real-time constraints on both Suppliers and Consumers. Forthe price-oriented case, the auctions in all Suppliers are assumed to have lock-step synchronization, i.e., all auctions start aligned in time to one another. Nofurther assumptions are made about the time of delivery of a message or, indeed,its delivery itself. Periodic synchronization between Suppliers and Consumersin only implicitly maintained in the MB StartBidding message of the Suppliers,which serves as a temporal checkpoint for every auction participant.

For the resource-oriented algorithm, we have found a far greater need syn-chronization than with the price-oriented case. While the agents are still free tochoose in which Suppliers they wish to bid in, the algorithm defined by Ygge andAkkermans [17] requires the use of a step size value in the auctioneer algorithm.An inappropriate choice of this parameter can lead to instability, and hence feed-back is required at every iteration between Consumers and Suppliers concerning

Page 14: A Computational Economy for IN Load Control Using a Multi-Agent System

Patel, Prouskas, Barria, and Pitt410

an appropriate step-size value. This means synchronization is required at everyiteration rather than at every auction as in the price-oriented case.

7. RESULTS AND EVALUATION

In this section we evaluate the performance of the proposed schemes, usingthe two introduced algorithms for finding the solution, that is, the price-orientedWALRAS algorithm [15] and the resource-oriented Newton method [17]. Weinitially investigate a system with 8 SSPs, 4 SCPs and 3 service types. The ser-vices used are a Virtual Private Networking service, a Ringback service and aCall Forwarding service which are assigned a revenue of 5, 10 and 3 units respec-tively. These services can be provided by any of the SCPs. We set an auctioninterval of 10 seconds, this means that every 10 seconds an auction starts basedon quasi-static preferences. Agent preferences do not change during an auction.At the end of an auction, agents are given new values of xijk that are used toaccept calls during the next auction interval. From the MSC chart for an auction,defined by Fig. 4, define the expiry time of Timer 3 to be 2 seconds, this setsthe time for a single iteration to be 2 seconds.

In Fig. 5, we investigate the dynamic behavior of the resource and price-

Fig. 5. Average SCP processor utilization for short overload periods.

Page 15: A Computational Economy for IN Load Control Using a Multi-Agent System

Computational Economy for IN Load Control Using a MAS 411

Fig. 6. Average network revenue generated per second by algorithms.

oriented algorithms when a variable input load is placed upon the system. Weinitially set a normal input load of 35% of system capacity. This is increasedto 150% during two periods lasting 600 seconds. We target a maximum SCPprocessor utilization of 90%. The figure shows that the price-oriented algorithmappears to perform better than the resource-oriented algorithm, both in termsof the overall SCP utilization and in terms of the speed of response to a sharpincrease in input load. This is because the resource-oriented algorithm requiresa larger number of iterations to converge, in this case the utility function gainparameter for the SCP, ai, needs to be tuned to find an efficient trade off betweenan efficient allocation, that is, maximize the utilization of available SCP proces-sor bandwidth, and the time needed to converge to a solution.

In Fig. 6 we examine the performance of the algorithms in steady stateconditions, that is, for sustained period of constant load. During this period wemeasure and compare the algorithms in terms of the average network revenuegenerated per second for different levels of load, while an ACG algorithm isincluded as a benchmark. We can see that all the algorithms perform identicallywhile in underload conditions, but as the load increases the ACG under performsdue to oscillation in the ACG algorithm [2].

Since we use a single computational economy for both algorithms we wouldexpect the solution to be identical for the methods. However, the time requiredto converge for the two algorithms is highly sensitive to the ai gain parameters.

Page 16: A Computational Economy for IN Load Control Using a Multi-Agent System

Patel, Prouskas, Barria, and Pitt412

Fig. 7. Number of iterations required to converge as a function of ai .

In Fig. 7, we investigate the trade off between the efficiency and the convergetime. Inefficiency is measured as the percentage of SCP processor bandwidth notallocated to the Consumer agents. The inefficiency curve applies to the compu-tational model and hence a single curve is shown to compare against both algo-rithms. Figure 7 shows that the resource-oriented algorithm is particularly influ-enced by the value of ai and the number of iterations required to converge canbecome extremely large. However, this does not paint the true picture since theresource-oriented algorithm allocations are in the vicinity of the optimal solutionmany iterations before the actual solution is found. Since the algorithm is fea-sible at every iteration, the resource allocation may be made before the solutionis found, for example if a real-time deadline has passed. For the price-orientedcase, the solution may be infeasible at every iteration before a solution is found,for this reason if the real-time deadline for the auction (i.e., 10 seconds) haspassed we could use a heuristic algorithm, e.g., the one proposed (Ygge andAkkermans [17], to obtain a feasible allocation of resources.

Next we investigate the affect of load level on convergence time for thetwo algorithms. With an initial load of 35%, the input load is increased instanta-neously to a higher level. Figure 8 shows how the number of iterations requiredto converge to the new optimal values. Again the price-oriented algorithm outperforms the resource-oriented approach, this is particularly true at higher loadlevels. However, the real-time performance of both algorithms is not too differ-

Page 17: A Computational Economy for IN Load Control Using a Multi-Agent System

Computational Economy for IN Load Control Using a MAS 413

Fig. 8. The affect of load on the speed of convergence.

ent which suggests that the majority of the gain made by the resource-orientedalgorithm is made within the first 20 iterations, which is equivalent to approxi-mately 4–5 auction intervals. Another interesting point is that although the price-oriented algorithm uses a heuristic algorithm to find a feasible solution at the endof each auction it does not degrade the real-time performance too much. This ispartly because the majority of the gain, in terms of how close the allocations areto their optimal values, is made within the first few iterations and the heuristicalgorithm only results in minor changes in the allocations made. It is fair to saythat there may be scenarios in which this is not the case and the resource-ori-ented algorithm will outperform the price-oriented algorithm in such cases. Thiscan occur when the size of the network, in terms of the number of componentswithin it, increases. As the size of the network increases, both of the algorithmspresented start to perform less effectively and for very large networks it maybe necessary to fragment the network into multiple domains in order for moreeffective performance of the algorithm.

We investigate the scalability of the algorithms in terms of the traffic gen-erated for different numbers of auction participants in Fig. 9. It can be seen thatthe system performs linearly with increasing numbers of Consumers for both theresource-oriented and price-oriented systems. While the price-oriented algorithmperforms better than the resource-oriented one, the communication overhead issignificant for both algorithms.

Page 18: A Computational Economy for IN Load Control Using a Multi-Agent System

Patel, Prouskas, Barria, and Pitt414

Fig. 9. Communication overhead versus number of auction participants.

The process of agentification comes with an associated overhead. There isa minimal amount of start-up overhead (within 8.5% of the generated traffic perauction), the messaging traffic generated (40% increase in the average messagesize by inclusion of agent headers), and also an increase in the processing time topack and unpack the messages (an effective 18% increase in the average messagedelay).

Part of this ‘agent overhead’ lies in adopting the FIPA ACL standard forinter-agent communications. FIPA ACL is structured in a flexible and expand-able way that is easier to read for humans and is supported by virtually everyubiquitous network transport protocol. However, this flexibility comes at a sig-nificant cost when it comes to assembling, transporting and parsing messages.

It is worth emphasizing here that the agent layer is based on a fully-fledged,general-purpose agent platform, and therefore carries a disproportionate per-formance overhead. This can be to a great degree recovered by using a cus-tomized implementation. Some services provided by the agent platform may beperformed much faster directly by the lower-level network layers. Additionally,by using a data representation tailored to the actual network transport used, thetraffic overhead can be reduced greatly. At this stage, however, our intention isto provide a fully generalized solution that can be mapped later on to differentinfrastructures on an independent case-by-case basis.

Page 19: A Computational Economy for IN Load Control Using a Multi-Agent System

Computational Economy for IN Load Control Using a MAS 415

8. CONCLUSIONS

An IN load control algorithm forms an integral part in the provisioning of ahigh-level of QoS to users of IN services. Previous approaches to this problem havebeen restricted to a single service architecture, where only one SCP provides a ser-vice, or they require a centralized controller to solve the global problem.

Recently, market-based schemes for distributed resource allocation havebeen proposed in the public literature [9–11]. In this paper we have proposedand investigated a computation economy for solving a distributed IN load controlproblem. We have investigated the use of two different algorithms for findingthe solution to this problem, one price-oriented algorithm known as WALRAS[15] and the other is a resource-oriented algorithm known as the Newton-method[17]. We presented simulation results for these algorithms which suggest thatusing a market-based algorithm can perform better than the benchmark ACGalgorithm under overload conditions. From a pure algorithmic point of view, wehave shown that the price-oriented approach has better convergence properties,which allows us to produce better SCP utilization and an overall lower commu-nication overhead. However, the price-oriented algorithm suffers from infeasibleallocations and occasionally needs to make use of a heuristic allocation algorithmat the expense of optimality.

Benefits brought into the system by agents (such as decentralized decisionmaking, autonomy and intelligence) have come at an added cost. In the currentstate of the art, the added overhead is significant enough so that, for all practicalpurposes, the agent system must be considered separately and superimposed ontorather than embedded into the IN system. Nevertheless, the question of whetherthe added benefit of an agent system is greater than the overhead is still largelyan open issue and depends on many parameters, like the underlying networkstructure, the particular algorithm used and the specific agent system implemen-tation, among others. What our experience suggests, however, and what we havepointed towards in this paper, is that agents can be a powerful paradigm as wellas a valuable tool when applied to the domain of IN load control.

ACKNOWLEDGMENTS

This work was partially supported by the EC-funded ACTS project AC333MARINER. The authors wish to acknowledge the valuable contribution that theircolleagues in MARINER have made in this paper.

REFERENCES

1. X. H. Pham and R. Betts, Congestion control in Intelligent Networks, Computer Networks andISDN Systems, Vol. 26, No. 5, pp. 511–524, 1994.

2. D. E. Smith, Ensuring robust call throughput and fairness for SCP overload controls, IEEE/ ACMTransactions on Networking, Vol. 3, No. 5, pp. 538–548, 1995.

Page 20: A Computational Economy for IN Load Control Using a Multi-Agent System

Patel, Prouskas, Barria, and Pitt416

3. J. Bedoy, L. O. Barbosa, and E. Quiroz, Study of control mechanisms for the effective deliv-ery of IN services, IEEE International Communication Conference (ICC’98), pp. 1738–1742,1998.

4. A. Hac and L. Gao, Congestion control in Intelligent Networks, IEEE International Perfor-mance, Computing and Communications Conference, pp. 279–283, 1998.

5. F. Lodge, D. Botvich, and T. Curran, A fair algorithm for throttling combined IN and non-INtraffic at the SSP of the intelligent network, Proceedings of Intelligence in Service and Networks(IS&N’98), Antwerp, Belgium, 1998.

6. M. Kihl and C. Nyberg, Investigation of overload control algorithms for SCPsin the IntelligentNetwork, IEEE Proceedings-Communications, Vol. 144, No. 6, pp. 419–424, 1997.

7. H. Kawamura, and E. Sano, A congestion control system for an advanced Intelligent Network,Proceedings of NOMS ’96—IEEE Network Operations and Management Symposium, Kyoto,pp. 628–631, 1996.

8. A. Arvidsson, B. Jennings, and L. Angelin, On the use of agent technology for load control,with an example Intelligent Network (IN) ‘market-based’ mechanism, Proceedings of ITC-16,1999.

9. B. Jennings, R. Brennan, R. Gustavsson, R. Feldt, J. Pitt, K. Prouskas, J. Quantz, FIPA-compli-ant agents for real-time control of intelligent network traffic, Computer Networks Vol. 31, pp.2017–2036, 1999.

10. H. Yamaki, M. P. Wellman, and T. Ishida, A market-based approach to allocating QoS for multi-media applications, Proceedings of the Second International Conference on Multiagent Systems(ICMAS), Kyoto, pp. 385–392, December 1996.

11. M. A. Gibney and N. R. Jennings, Market based multi-agent systems for ATM network manage-ment, Proceedings of the 4th Communications Network Symposium, Manchester, United King-ton, 1997.

12. A. Chavez and M. Moukas, Challenger: A multi-agent system for distributed resource allocation,Proceedings of the First International Conference on the Practical Application of IntelligentAgents and Multi Agent Technology, London, United Kingdom, 1996.

13. H. S. Nwana and D. T. Ndumu, A perspective on software agents research, Knowledge Engi-neering Review, Vol. 14, No. 2, pp. 1–18, 1999.

14. N. R. Jennings and W. J. Wooldridge, Applications of intelligent agents. In N. R. Jenningsand Michael J. Wooldridge (eds.), Agent Technology Foundations, Applications, and Markets,Springer-Verlag, 1998.

15. M. P. Wellman, A market-oriented programming environment and its application to distributedmulticommodity flow problems, Journal of Artificial Intelligence Research, Vol. 1, No. 1, pp.1–22, 1993.

16. S. Bikhchandani and J. W. Maner, Competitive equilibrium in an exchange economy with indi-visabilities, Journal of Economic Theory, Vol. 74, pp. 385–413, 1997.

17. F. Ygge and H. Akkermans, Duality in multi-commodity market computations, C. Zhang andD. Lukose, (eds.), Proceeding of the Third Australian Workshop on Distributed Artificial Intel-ligence, Perth, Australia, pp. 65–78, 1997.

18. FIPA’97 specification Part 1: Agent Management, http:/ / www.fipa.org, 1997.19. FIPA’97 specification Part 2: Agent Communication Language, http:/ / www.fipa.org, 1997.

Akhilesh Patel received his M.Eng. in Electrical and Electronic Engineering from ImperialCollege, London, in 1997. Since then he has been actively pursuing a Ph.D. in the Communicationsand Signal Processing group at Imperial College in the field of distributed resource management oncommunication networks.

Page 21: A Computational Economy for IN Load Control Using a Multi-Agent System

Computational Economy for IN Load Control Using a MAS 417

Konstantinos Prouskas is a Research Assistant in the Intelligent and Interactive Systems Groupof the Imperial College of Science, Technology and Medicine, University of London. He is alsocurrently working towards his Ph.D. in the field of real-time multi-agent systems. He has an M.Eng.degree in Information Systems Engineering from Imperial College.

Javier Barria is a lecturer in the Communications and Signal Processing Group in the Depart-ment of Electrical and Electronic Engineering at Imperial College, London. His research is primarilyfocused on next generation of network technologies, heterogeneous networks and new services. He isco-investigator on the EU-funded MARINER project (Multi-Agent Architecture for Distributed-INLoad Control and Overload Protection).

Jeremy Pitt is a lecturer in the Intelligent and Interactive Systems Group in the Department ofElectrical and Electronic Engineering at Imperial College, London. His research is primarily focusedon the intersection of Human-Computer Interaction, Artificial Intelligence and Digital Communi-cation Services. He is principal investigator on the UK EPSRC/ Nortel Networks funded projectCASBAh, developing a common agent service brokering architecture and the EU-funded projectsMARINER and MAPPA, which is developing a multi-agent architecture for persistent personalisedaccess to multimedia services.