25
TabiCan: Massive Mult i-Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous Agents ’99, Seattle 2001. 5. 31 Compiled by Rhee, Taik- heon

TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Embed Size (px)

Citation preview

Page 1: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

TabiCan: Massive Multi-Agent System

Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous Agents ’99, Seattle

2001. 5. 31 Compiled by Rhee, Taik-heon

Page 2: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Contents

IntroductionTabiCanOverview of e-Marketplace MiddlewareAgent Scheduling MechanismPerformance EvaluationConclusion

Page 3: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Multi-Agent System

studied for many yearsvarious types of systems

e.g) distributed artificial intelligent system

singleproblem

small problem

small problem

small problem

solveproblem

Introduction

Page 4: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Agent Technology

Applied to e-commerce areaExamplesAuctionBots(http://auction.eecs.umich.edu)

uses agents that have user prefenceWebCompass(http://www.quaterdeck.com)

uses a search agent to obtain info. from WWW

Not Multi-agent System!

Introduction

Page 5: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

TabiCan

Commercial service site providing airline tickets and package tours

Multi-agent system to obtain info. on internet different from DAI

independently developed agents interact with each other user and shops have their own agents on server

user agents obtains informationby interacting with all shop agents

Page 6: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous
Page 7: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Overview of TabiCan SystemTabiCan

WebBrowser

e-Marketplace A

e-Marketplace BShopAgent 2

ShopAgent 1

DirectoryService

ConsumerAgent

Matched with your request!Narita-Honolulu

Japanese AirLinesPrice = $900

Cheaper one!! Why don’t you buy?

Narita-HonoluluUnited AirLines

Price = $600E-Marketplace B is

another travel market.

ConsumerAgent Shop

Agent 3

We have a discount executive class ticket!

Narita-HonoluluNorth-West AirLines

Executive ClassPrice = $1200

Do you have..?Narita-Honolulu

Japanese AirLinesPrice <= $1000

Visit

Link

Page 8: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Role of Agents

Shop Agents live during server runs

Consumer Agents live for two days in serverremoved when lifetime is overmultiple access is available while

alive

TabiCan

Page 9: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

History

1st phase(Dec. 1997): for single servers2nd phase(Aug. 1998): for multiple servers3rd phase(Dec. 1998): for multiple sites

TabiCan

Page 10: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Overview of e-Maketplace Middleware

Aglet System Development Kit(ASDK)(http://aglets.trl.ibm.co.jp)developed atIBM’s

Tokyo Research Lab.provides

mobile agent fn.and multi-agent fn.

Page 11: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Agent Interaction(1/2)

Sessiona sequence of message

viewed as state transitionstate

state-1: initialstate-2~99: intermediatestate-100: final

link indicate transition

Overview of Middleware

Page 12: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Agent Interaction(2/2)

Message Monitor registers all interaction protocolsdelivers all msg. to agentsverifies every msg.

if invalid, remove the messagewatch for processing of agent’s msg.

if time-out, terminate interactionand ask “AgentSchduler” to stop processing

Overview of Middleware

Page 13: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Agent Control(1/2)

In TabiCan, 2000 consumer agents were created in server30KB * 2000 = 60 MB memory is required!Each agent has a thread

If too many threads, system overload may occur

Control mechanism for memory and threads is the key issues for server!

Overview of Middleware

Page 14: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Agent Control(2/2)

AgentSchedulercontrol the amount of memory

by keeping agents in secondary storagecontrol the number of thread

by scheduling activities of agents

Overview of Middleware

Page 15: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Agent Scheduling Mechanism

Controlled by AgentScheduler

Memory ControlThread ControlScheduling Policy

Page 16: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Memory Control(1/3)

Swap-in and swap-out mechanismSimilar with OSDeactivation if the number of agnets exceeds limits,

some agents are stored as memory imagesin secondary storage

Activation if an agent needs to process a job,

the agent is read from storage

Agent Scheduling Mechanism

Page 17: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Memory Control(2/3)

Sequence of msg. delivery

Agent Scheduling Mechanism

Page 18: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

State of agent execution State 1: processing a job State 2: waiting to move to another server

or to be removed State 3: not processing

but will soon receive msgs. State 4: not processing

and cannot predict next msg.Activation Priority state 1 > state 2 > state 3 > state 4

Deactivation Priority state 4 > state 3 > state 2

Agent Scheduling Mechanism

Memory Control(3/3)

Least Recently Usedalgorithm (LRU)

Page 19: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Thread Control

AgentScheduler queues requests for actions A thread fetch a request from the queue

Fetch priority Priority 1: in state 1, 2 and 3 Priority 2: in state 4 kept in main memory Priority 3: in state 4 kept in secondary storage Same priority: First Come First Served(FCFS)

Agent Scheduling Mechanism

Page 20: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Scheduling Policy(1/2)

boot.inispecifies the parameters for agentse.g: [CLASS_emplaceappl.tabican.Consumer]

indicates parameters needed by consumer agents whose class is “emplaceappl.tabican.Consumer”

Agent Scheduling Mechanism

Page 21: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Scheduling Policy(2/2)

schedule.confspecifies scheduling policiese.g: [CONSUMER]

limit # of consumer agents in memory is 200

limit # of threads for consumer agents is 10

Agent Scheduling Mechanism

Page 22: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Performance Evaluation

Desirable constant in relation to # of consumer agents inverse proportion to # of shop agents

Test 1: Single Server SystemTest 2: Two-Server System

Page 23: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Test 1: Single-Server System

Throughput of searches Turnaround time of searches Throughput of searchesagainst # of shops

Performance Evaluation

Page 24: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Test 2: Two-Server System

Throughput of searches

Performance Evaluation

Page 25: TabiCan: Massive Multi- Agent System Reference: Architecture and Performance Evaluation of a Massive Multi-Agent System, G. Yamamoto and Y. Nakamura, Autonomous

Conclusion

A mechanism for controlling memory and CPU in multi-agent systems where thousands of agents interact on a single server is described.

Throughput is kept to a constantto an increase in # of consumer agents