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

Slides:



Advertisements
Similar presentations
 Basic Concepts  Scheduling Criteria  Scheduling Algorithms.
Advertisements

Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Chapter 5: CPU Scheduling.
CMPT 300: Operating Systems I Dr. Mohamed Hefeeda
Process Description and Control
Process Description and Control Module 1.0. Major Requirements of an Operating System Interleave the execution of several processes to maximize processor.
Process Description and Control Chapter 3. Major Requirements of an Operating System Interleave the execution of several processes to maximize processor.
1 School of Computing Science Simon Fraser University CMPT 300: Operating Systems I Dr. Mohamed Hefeeda.
A Grid Resource Broker Supporting Advance Reservations and Benchmark- Based Resource Selection Erik Elmroth and Johan Tordsson Reporter : S.Y.Chen.
Concurrent Processes Lecture 5. Introduction Modern operating systems can handle more than one process at a time System scheduler manages processes and.
Chapter 6: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Chapter 6: CPU Scheduling Basic.
Page 1 Processes and Threads Chapter Processes 2.2 Threads 2.3 Interprocess communication 2.4 Classical IPC problems 2.5 Scheduling.
1 Pertemuan 21 Software Agents for E-Commerce Matakuliah: M0284/Teknologi & Infrastruktur E-Business Tahun: 2005 Versi: >
Understanding Operating Systems 1 Overview Introduction Operating System Components Machine Hardware Types of Operating Systems Brief History of Operating.
CSCE 351: Operating System Kernels
Introduction  What is an Operating System  What Operating Systems Do  How is it filling our life 1-1 Lecture 1.
Chapter 1 and 2 Computer System and Operating System Overview
An Introduction to Internetworking. Why distributed systems - Share resources (devices & CPU) - Communicate people (by transmitting data)
Computer Organization and Architecture
The Architecture of Transaction Processing Systems
CS444/CS544 Operating Systems Threads Introduction to CPU Scheduling 2/02/2006 Prof. Searleman
Fundamentals of Python: From First Programs Through Data Structures
Process Description and Control Chapter 3. Major Requirements of an OS Interleave the execution of several processes to maximize processor utilization.
IT 210 The Internet & World Wide Web introduction.
Chapter 3 Operating Systems Introduction to CS 1 st Semester, 2015 Sanghyun Park.
CISC105 General Computer Science Class 1 – 6/5/2006.
Threads Many software packages are multi-threaded Web browser: one thread display images, another thread retrieves data from the network Word processor:
Scheduling Basic scheduling policies, for OS schedulers (threads, tasks, processes) or thread library schedulers Review of Context Switching overheads.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
Lecture 3 Process Concepts. What is a Process? A process is the dynamic execution context of an executing program. Several processes may run concurrently,
E-Marketplaces: Mechanisms, Tools, and Impacts of E-commerce.
CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling Multiple-Processor Scheduling Operating Systems Examples Algorithm.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 5: CPU Scheduling.
11/13/20151 Processes ICS 240: Operating Systems –William Albritton Information and Computer Sciences Department at Leeward Community College –Original.
A Method for Transparent Admission Control and Request Scheduling in E-Commerce Web Sites S. Elnikety, E. Nahum, J. Tracey and W. Zwaenpoel Presented By.
Architecture Models. Readings r Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 m Note: All figures from this book.
Client-Server Model of Interaction Chapter 20. We have looked at the details of TCP/IP Protocols Protocols Router architecture Router architecture Now.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 3: Process-Concept.
Measuring the Capacity of a Web Server USENIX Sympo. on Internet Tech. and Sys. ‘ Koo-Min Ahn.
1 Applets are small applications that are accessed on an Internet server, transported over the internet, automatically installed and run as a part of web.
Process Description and Control Chapter 3. Source Modified slides from Missouri U. of Science and Tech.
AMQP, Message Broker Babu Ram Dawadi. overview Why MOM architecture? Messaging broker like RabbitMQ in brief RabbitMQ AMQP – What is it ?
03/03/051 Performance Engineering of Software and Distributed Systems Research Activities at IIT Bombay Varsha Apte March 3 rd, 2005.
20 Copyright © 2008, Oracle. All rights reserved. Cache Management.
Introduction Contain two or more CPU share common memory and peripherals. Provide greater system throughput. Multiple processor executing simultaneous.
Process Control Management Prepared by: Dhason Operating Systems.
Silberschatz and Galvin  Operating System Concepts Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming.
Introduction to operating systems What is an operating system? An operating system is a program that, from a programmer’s perspective, adds a variety of.
A Web Based Job Submission System for a Physics Computing Cluster David Jones IOP Particle Physics 2004 Birmingham 1.
Processes and threads.
Chapter 6: CPU Scheduling
Advanced OS Concepts (For OCR)
Chapter 5a: CPU Scheduling
Intro to Processes CSSE 332 Operating Systems
AWS Batch Overview A highly-efficient, dynamically-scaled, batch computing service May 2017.
Threads & multithreading
Operating Systems CPU Scheduling.
Advanced Operating Systems
An example design for an Amadeus APIv2 Web Server Application
Operating Systems.
Operating systems Process scheduling.
Chapter 5: CPU Scheduling
Process Description and Control
Lecture Topics: 11/1 General Operating System Concepts Processes
Chapter 5: CPU Scheduling
An Introduction to Internetworking
Chapter 5: CPU Scheduling
Mr. M. D. Jamadar Assistant Professor
CPU Scheduling: Basic Concepts
Software Agent.
Presentation transcript:

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 Compiled by Rhee, Taik-heon

Contents Introduction TabiCan Overview of e-Marketplace Middleware Agent Scheduling Mechanism Performance Evaluation Conclusion

Multi-Agent System studied for many years various types of systems  e.g) distributed artificial intelligent system single problem small problem solve problem Introduction

Agent Technology Applied to e-commerce area Examples AuctionBots ( uses agents that have user prefence WebCompass ( uses a search agent to obtain info. from WWW  Not Multi-agent System! Introduction

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 information by interacting with all shop agents

Overview of TabiCan System TabiCan Web Browser e-Marketplace A e-Marketplace B Shop Agent 2 Shop Agent 1 Directory Service Consumer Agent Matched with your request! Narita-Honolulu Japanese AirLines Price = $900 Cheaper one!! Why don’t you buy? Narita-Honolulu United AirLines Price = $600 E-Marketplace B is another travel market. Consumer Agent Shop Agent 3 We have a discount executive class ticket! Narita-Honolulu North-West AirLines Executive Class Price = $1200 Do you have..? Narita-Honolulu Japanese AirLines Price <= $1000 Visit Link

Role of Agents Shop Agents live during server runs Consumer Agents live for two days in server removed when lifetime is over multiple access is available while alive TabiCan

History 1 st phase(Dec. 1997): for single servers 2 nd phase(Aug. 1998): for multiple servers 3 rd phase(Dec. 1998): for multiple sites TabiCan

Overview of e-Maketplace Middleware Aglet System Development Kit(ASDK) ( developed atIBM ’ s Tokyo Research Lab. provides mobile agent fn. and multi-agent fn.

Agent Interaction(1/2) Session a sequence of message viewed as state transition state state-1: initial state-2~99: intermediate state-100: final link indicate transition Overview of Middleware

Agent Interaction(2/2) Message Monitor registers all interaction protocols delivers all msg. to agents verifies every msg. if invalid, remove the message watch for processing of agent ’ s msg. if time-out, terminate interaction and ask “ AgentSchduler ” to stop processing Overview of Middleware

Agent Control(1/2) In TabiCan, 2000 consumer agents were created in server 30KB * 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

Agent Control(2/2) AgentScheduler control the amount of memory by keeping agents in secondary storage control the number of thread by scheduling activities of agents Overview of Middleware

Agent Scheduling Mechanism Controlled by AgentScheduler Memory Control Thread Control Scheduling Policy

Memory Control(1/3) Swap-in and swap-out mechanism Similar with OS Deactivation if the number of agnets exceeds limits, some agents are stored as memory images in secondary storage Activation if an agent needs to process a job, the agent is read from storage Agent Scheduling Mechanism

Memory Control(2/3) Sequence of msg. delivery Agent Scheduling Mechanism

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 Used algorithm (LRU)

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

Scheduling Policy(1/2) boot.ini specifies the parameters for agents e.g: [CLASS_emplaceappl.tabican.Consumer] indicates parameters needed by consumer agents whose class is “ emplaceappl.tabican.Consumer ” Agent Scheduling Mechanism

Scheduling Policy(2/2) schedule.conf specifies scheduling policies e.g: [CONSUMER] limit # of consumer agents in memory is 200 limit # of threads for consumer agents is 10 Agent Scheduling Mechanism

Performance Evaluation Desirable constant in relation to # of consumer agents inverse proportion to # of shop agents Test 1: Single Server System Test 2: Two-Server System

Test 1: Single-Server System Throughput of searchesTurnaround time of searchesThroughput of searches against # of shops Performance Evaluation

Test 2: Two-Server System Throughput of searches Performance Evaluation

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 constant to an increase in # of consumer agents