Printer Friendly

Mobile agent optimization analysis of Least Time approach Versus V-agent.


Computational architectural design models for distributed systems have been categorized into three design architectures: repository model, client/server model, and layered model (5). Data is processed between different resources that incorporate multiple machines and numerous computing stages. Challenges of design models include performance, security, and flexibility.

Mobility model (1) (2) is developed a massive model to overcome aforementioned models shortcomings. Several features were proposed to adhere mobile agents including: reduce network traffic, their ability to operate asynchronously and autonomously of the process they created them, and assist to construct more robust systems (6) (8).

Mobile agent patterns (4) are emerging in the design of Agent Oriented Software Engineering (AOSE), and several of these patterns were given intuitive meaningful names such as messenger, notifier, and master-slave pattern. Master-slave pattern is a common task design model incorporated in a broad domain of parallel applications. This model is based on a divides and conquers fashion in which a master agent delegates tasks to one or more slaves that in turn are distributed throughout the system and work in parallel. Our proposed work is focused to develop a new approach that utilizes a computational model called, [MBM.sup.1]. This approach carries out computational algorithm of master delivery messages and slave responses.

Furthermore, Least Time approach is implemented throughout choosing the least slave message response time and then computes the total time for number of messages to be delivered by master agents working on clients to slave agents carrying out tasks on servers. This technique is compared with other approaches that used in the analyses of performance optimization for computing total time which uses V-agent algorithm. This approach gives the basis for analysis of performance and flexibility of mobile agent systems.

Related Work

Performance analysis is the foundation of performance debugging and optimization, comparison of systems, and extrapolation of properties of future systems (10). Several authors have presented several techniques of performance optimization analysis for mobile agent systems and performance of mobile agent applications. (9) developed a methodology for improving the performance of mobile agent systems through controlling of the optimum visited sequence of mobile agents to the target machines. The optimization of the visited sequence is based on the latency of the underlying network. A management task such as the configuration of a Differentiated Services domain could be used to test and evaluate the proposed methodology. In particular, it is demonstrated that when a mobile agent should act on a set of targets, the time required to perform a task is decreased if the visited sequence is decided based on the network latency. (9) developed a computing model, called Mobile Agent Parallel Processing Computing (MAPPC) that uses a family of mobile agents. MAPPC uses a Matrix multiplication task and is divided on row wise basis. Based on a number of available servers and dimension of block size is assigned to each mobile agent. The MAPPC model experiment an implementation where small amount of data (matrix of size less than 100) was processed on remote servers (less than 3) gives little performance than large matrices on large number of servers.

MAPPC model uses master-slave pattern for mobile agents in which a slave agent does a given task using CPU resource of remote server. A slave agent constructs the message and embeds the result into it and sends it to the master agents proxy. The master agent is waiting results from slave agent that receives the message, extracts the results and combines all results together, it calculates the turnaround time for the computation which will be used to analyze performance optimization. (12) proposed V-agent that utilizes master-slave pattern of mobile agents, which carries out an MBM algorithm to optimize the total time between set of master agents delivered tasks to slave agents that carry out some tasks based on slave agents broadcast time.

The main focus of this paper is to analyze the performance optimization using Least Time approach that utilizes MBM and set of master agents send messages to slave agents which respond and carry out tasks. This approach introduces an advanced technique which overcomes Free Area Mechanism (FAM) approach (7). Furthermore, our approach supports performance optimization perspective compared Decision Tree Learning (DTL) approach (13). This paper uses samples of two data sets for Least time approach and V-agent.

Research Objectives and Motivations

Communication is the base mechanism for coordination and collaboration in mobile agent systems. However current mobile agent systems focus on content of messages, delivery and response, and time allocating, implying difficulties in activity coordination and performance.

To enhance message performance communication (11) demonstrates an approach for mobile agent communication which can improve performance content filtering system and can unify several messages in a single one using D'agents.

The main objectives of this research are: study performance issues of mobile agent based systems and discover potential performance approaches. This paper addresses message performance optimization through coordination in mobile agent systems using different techniques and mathematical models founded earlier in operational research techniques. This approach proved advanced solutions to some basic mathematical models in optimization and reliability system measurements. Such approaches can be used to improve performance optimization in mobility systems.

Master Slave Task Pattern

Master slave pattern (8) is a parallel computing application in which master agents working on clients creates slave agents dispatch to remote servers. Slave agents visit specified server to perform the required task. Master agents connect with slave agents using master agents proxy and sends messages in a broadcast paradigm. A user, wishes to perform the task, submits it to master agents then divide it into subtasks and assigns it to individual slave agent.

Master slave pattern involves:

A. Master Agents

These are task handlers in the system. They are created on set of clients. The user uses Java Execution Environment (JEE) platform consists of Tahiti server and Java runtime of Aglet development Kit. After the user instantiates interface, it creates slave agents, reads the database for the list of servers, and checks the availability of servers it sends the slave agents to those servers.

B. Slave Agents

Slave agents migrate and functioning on servers. They respond to master messages, at remote site slave agents receives multiple messages for given tasks and sends results to master agents by embedding it into message handler. Each message registered with the handler which is responsible to record its time received by the slave, and the corresponding slave, which sends the message and forward results to the master agent.

Message Broadcast Model (MBM)

Consider set of clients [C.sub.k], involves set of master agents [M.sub.k], where [C.sub.k] = {[C.sub.1m1], [C.sub.2m2],.........., [C.sub.kmk]}, furthermore, consider a set of servers Sn are distributed across network involves a set of created slave agents, [S.sub.n] = {[S.sub.1s1], [S.sub.2s2],. ... ..., [S.sub.nsn]}. Suppose [MD.sub.mi] is the total number of messages to be delivered from the master agent ([m.sub.i]) to slave agents carrying out some tasks on server side, and suppose [] is the total number of response messages that a slave agent ([s.sub.j]) responds from all master agents in it's broadcast queue.

Furthermore, we proposed that total messages that to be delivered by all masters are equal to total response messages in broadcast messaging queue by slave agents as in (1), in other words

[k.summation over (i = 1)][MD.sub.mi] = [n.summation over (j = 1)][] (1)

Now, suppose that [t.sub.misj] is the estimated response time of a slave agent ([S.sub.j]) performing a task on the behalf of a master agent ([m.sub.i]) and [[lamba].sub.misj] are number of messages delivered by a master agent ([m.sub.i]) to a slave agent ([S.sub.j]). Based on these assumptions, we proposed the Message Broadcast Model (MBM) that is based on the Message Delivery/Response Matrix (MDRM). MDRM involves: master agents, slave agents, message delivered by master agents, message response by slave agents, and allocation time of each slave agent. MDRM is shown in Table 1.


Now, the MBM model follows a linear programming model (12) with set of equations:

* Determine the objective function.

* Set out model constraints.

* Validate model non negative values.

The objective function is given by equation (2), constraints given by equation (3) and (4) respectively, and non negativity condition is given by equation (4) as follows:

mint(t) = [k.summation over (i = 1)][n.summation over (j = 1)][[lambda].sub.misj][t.sub.ij] (2)

[n.summation over (j = 1)][[lambda].sub.misj] = M[D.sub.mi]i = 1,2,.. ..., k (3)

[k.summation over (i = 1)][[lambda].sub.misj] = M[] j = 1,2,. ... ...,n (4)

[[lambda].sub.misj] [greater than or equal to] 0 For all i and j

MBM Solving Using V-Agent Approach

We present V-agent approach as given by (12) for mobile agent performance optimization. V-agent utilizes VAM (3), which gives an initial solution. VAM steps are:

* Find Penalty Time (PT) between two successive time values in each row and column.

* Choose the larges PT among rows and columns.

* Fill the cell with master message delivery and slave message response.

* Repeat the process until to fill all cells.

* Calculate the optimum time using equation (2).

The optimal solution using VAM gives an initial solution. This measures the performance optimization between master agents and slave agents coordination mechanism.

MBM Solving Using Least Time Approach

We present an approach which gives an initial solution for message performance optimization among a set of master agents working on clients and corresponding slave agents working on a set of servers. This approach is based on the definition of MDRM of MBM model stated earlier. The Least Time approach for mobile agent performance optimization starts by assigning number of [messages.sub.[lambda]misj] according to the least time [t.sub.misj] allocated by a slave agent and a master agent among all rows and columns. If two slaves have the same response time [t.sub.misj], then we can choose any starting slave response time. The corresponding master agent on a client [C.sub.kmk] should assign all messages [] to slave agent on [S.sub.nsn] based on slave total message response []. We continue an iterative process to assign all messages by master agents based on choosing the next least time. Note that master agent should deliver exact number of messages according to slave agent capability. Finally, we calculate the total time with reference to equation (2) which gives the optimal performance time among all slaves. This is considered as an initial starting solution for performance optimization measurements between mater and slave agents.

Implementation Scenario Using V-Agent

V-agent approach works on MDRM definition, which utilizes results from master agents to slave agents coordination tasks in message broadcast handler. Suppose we define set of four master agents {m1, m2, m3, m4} with set of total message to be delivered 4000 as {1000, 1000, 1000, 1000} to set of three slave agents {s1, s2, s3} with total message response {1000, 1200, 1800} respectively. The allocated slave message response time of one message in milliseconds is given in Table (2).


This table shows total master agent's messages to be delivered to slave agents based on response message time, and number of messages to be assigned from each master agent to slave agents. This can be done by calculating values of {[[lambda].sub.m1s1], [[lambda].sub.m1s2],......., [[lambda].sub.m4s3]} using V-agent. We start the process by computing PT amongst rows and columns leading to choose the largest PT, if more than one PT values are equal, then V-agent choose any PT. Therefore, the calculated PT is 3 in the second column is chosen. V-agent assigns messages between the third master and the second slave agent (m3, s2). Therefore, V-agent allocates 1000 messages from m3 to s2. The remaining messages in the queue of slave agent s2 are 200. Therefore, m3 completes the first process.

V-agent computes the second PT amongst rows and columns. Now, it picks the second column with PT value (3). V-agent will choose the smallest allocated time in that column (6), and it optimizes the total messages between (m2, s2). Therefore, V-agent assigns the remaining messages to s2 and m2 has 800 messages to be delivered in the next process. V-agent iterates the remaining values and comes to the conclusion that all master agents completed the messages to all slave agents as shown in Table (3).


The performance optimized time is computed according to equation (2) as follows:

t = 26400 milliseconds (ms)

The performance optimization time is given in Figure 1.


Implementation Scenario Using Least Time Approach

We carry out performance optimization (minimized time) using Least Time approach based on Table (2). Least Time approach starts the process by considering the least allocated time, which is (3 ms) assigned by slave agent (s2). The corresponding master agent (m3) assigns 1000 messages to s2. The remaining messages are reduced by slave agent (s2) to 200. The next least allocated time is (6 ms) and the master agent m2 assigns the remaining 200 messages to slave agent s2. Now s2 completed all messages. The process is an iterative process performs until all master agents deliver all messages to slave agents. Note that if two allocated times are equal, the master agent will choose any of slave agents randomly. This will be considered as a malfunction in this approach. The final calculations is given in Table (4).


The performance optimized time is computed using Least Time approach according to equation (2) as follows:

t = 28000 milliseconds (ms)

The performance optimization time is given in Figure 2.


Performance Optimization Analysis

We highlight results from two different data sets. The analysis approach is base on number of slave agents, master agents, and disparity of slave agents response time. We calculate the variance [[sigma].sup.2], which give messages disparity between two data sets. The first data set is given in Table 5, and indicates that V-agent performance optimization is better than Least Time approach when the variance [[sigma].sup.2] is small, while the second data set is given in Table 6 and indicates that V-agent performance optimization analysis is increased when [[sigma].sup.2] is quite larger than the first data set. Both data sets figure out that V-agent performance optimization is better than Least Time approach. Time is calculated in milliseconds (ms).
Table 5: First data set analysis.

Master x Slave  [[sigma].sub.2]   Least Time  V-Agent

7m x 4s              4.452          88000      87800
5m x 5s              4.240          51800      50800
4m x 7s              2.658          77500      75500

Table 6: Second data set analysis

Master x Slave  [[sigma].sub.2]  Least Time  V-Agent

7m x 4s              6.158         71400      66300
5m x 5s              6.681         48800      45100
4m x 7s              6.811         70000      65500

The p The performance optimization analysis between V-agent and Least Time approach for the two data sets is shown in Figure 3.


Conclusion and Future Work

IIn this paper, we have developed a computational model for mobile agents, namely the Message Broadcast Model (MBM). This model utilized a set of master agents working on clients deliver messages to set of slave agents carrying out tasks working on servers. We have reported two different approaches for MDRM solving namely: V-agent and Least Time approach. A comparison between these approaches comes to a conclusion that V-agent optimization gives better solution than Least Time Approach.

We comment some future trends based on MBM as follows:

* Analyze new approaches for mobile agents performance optimization using advanced approaches such as stepping stones (sinuous path) and coefficient of multipliers.

* Compare results of different approaches to V-agent approach.

* Build advanced design patterns namely Optimization Design Patterns for mobile agent systems.

However, optimization patterns are the next step for the communication that we should developed to support mobility concepts, thus providing more support for the development of distributed system applications that may benefit from code mobility.

We will extend this work to extract optimization design patterns. These patterns, and more significantly the skeletons, will be extracted to ensure the reliability and performance for mobile computing systems.


We would like to owe thanks to Applied Science University (ASU), Faculty of Information Technology and the department of Computer Science, Jordan for supporting this research.

Faiz Al-Shrouf (1) and Aiman Turani (2)

(1) Applied Science University, Department of Computer Science, Shafa Badran Road, Amman 11931, Jordan


(2) Applied Science University, Department of Software Engineering, Shafa Badran Road, Amman 11931, Jordan


(1) This research is sponsored by Applied Science University (ASU) and the Faculty of IT.


(1) P. Braun, W. Rossak, Mobile Agents: Basic Concepts and the Tracy Toolkit, Centre for Intelligent & Multi-Agent Systems, Morgan Kaufmann publishers, Australia, 2004.

(2) E. Cabri, L. Ferrari, L. Leonard. "Towards the Use of Mobile Agent Systems". Proceedings of 13th IEEE International Workshop, Enabling Technologies Infrastructure for Collaborative Enterprises, pp 27-32, 2004.

(3) S. Frederick, H. Lieberman, Introduction to Operations Research. 8th edition, McGraw-Hill Education, USA. 2005.

(4) Y. Aridor, D. Lange. "Agents design patterns: Elements of Agent application Design", proceedings of autonomous Agents, ACM press, 1998.

(5) I. Sommerville, Software Engineering 7th edition; Person Education Limited. USA, 2006.

(6) D. Lange. "Mobile Objects and Mobile Agents: The Future of Distributed Computing". Proceedings of ECOOP'98 Conference, Belgium, 1998.

(7) A. Tarig. "Increasing Mobile Agents Performance by Using Free Area Mechanism". Journal of Object Technology; JOT. Vol. 6; No. 4.; pp. 125-140, 2007.

(8) D. Lange, Oshima M. Programming and Deploying Java Mobile Agents with Aglets, Addison Wesley Inc. USA, 1998.

(9) K. Mandwake, G. Patl. "Performance Analysis of Parallel Server Versus Parallel Mobile Agent Model".

(10) D. Marios, S. George. "A Performance Analysis Framework for Mobile Agent Systems". Proceedings of the 4th International Conference on Autonomous Agents, Cyprus. 2000.

(11) S. Robert, C. George, D. Kotz, A. Ronald, R. Rus.. "D'Agent: Applications and Performance of Mobile Agent Systems", Report, School of Engineering, Dartmouth College, USA, 2001.

(12) F. AlShrouf, M. Eshtay, K. Hymdan. "Performance Optimization for Mobile Agent Broadcast Model Using V-Agent". International Journal of Computer Science and Network security, IJCSNS, Vol. 2, No. 2;pp. 285-290, 2008.

(13) K. Yasser, A. Hesham, N. Elmagdi, H. Ahmad, "Optimizing Mobile Agents Migration Based on Decision Tree Learning", Proceedings of World Academy of Science, PWASET, Vol.22, pp. 564-570, 2007.

(14) Proceeding of World Academy of Science Engineering and Technology. PWASET Vol. 28; pp 374-377, 2008.
COPYRIGHT 2009 Research India Publications
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2009 Gale, Cengage Learning. All rights reserved.

Article Details
Printer friendly Cite/link Email Feedback
Author:Al-Shrouf, Faiz; Turani, Aiman
Publication:International Journal of Computational Intelligence Research
Article Type:Report
Date:Apr 1, 2009
Previous Article:Effective detection of near duplicate web documents in web crawling.
Next Article:Performance analysis of MANET protocols in different mobility patterns.

Terms of use | Privacy policy | Copyright © 2021 Farlex, Inc. | Feedback | For webmasters |