+ All Categories
Home > Documents > Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X...

Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X...

Date post: 29-Dec-2015
Category:
Upload: bonnie-shelton
View: 217 times
Download: 2 times
Share this document with a friend
27
Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by
Transcript
Page 1: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

Jackal for Practitioners

R. Scott Cost

CADIP Joint Symposium

September 9-10, 1999

C I I M P L E X

Jackal and related technologies developed by

Page 2: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 2

Overview• Jackal is a Java-based communications infrastructure

for multi-agent systems that supports the abstract specification of agent behavior through high-level protocols.

• Jackal supports the missions of CADIP and UMBC’s LAIT by facilitating the development of distributed, heterogeneous systems of clients, servers and middle-ware. Jackal allows these components to interact in a structured way through high-level agent communication languages.

Page 3: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 3

Outline

Jackal– Architecture

– Components

– Samples

– Highlights

– Field Trip

– KNS

– Application domains

• Conversations– Colored Petri nets

– Examples of use

– CPN-based MAS

• Lessons Learned• Future work• Publications

Page 4: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 4

Jackal

A java communications infrastructure:• Presents a simple yet powerful API.• Situates messages within conversations. • Flexible, blackboard interface to messages.• Easily integrated into existing/legacy code.• Plug n’ play communication protocols.• Implements the proposed KNS specification.• 100% pure java.

Page 5: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 5

Jackal Architecture

• All messages routed through conversations and made available through distributor.

• Routing component implements KNS.

• Plug-and-play protocol handlers for transport.

• Comprehensive API.

DistributionComponent

ConversationComponent

API

Agent Components/Threads

Agent

Jackal TransportComponent

Cache

RoutingComponent

Page 6: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 6

Jackal: Conversation Management

• All messages, inbound and outbound, are first processed in jackal’s ‘conversation space’.

• Conversations managed by multiple independent threads.

• Context is maintained in local store.

Page 7: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 7

Jackal: Message Distribution

• Distributor provides flexible interface between conversations and agent.

• Requests may bind one or multiple messages.

• Message may be specified by reference, form or association.

• Supports blocking and nonblocking queries.

Page 8: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 8

Sample Agentpackage Agents.Demo;import java.lang.*;import J3.*;

class broker extends Thread { // Main Broker agent class Intercom intercom;

public static void main (String[] argv) { new broker(); }

broker() { start(); } // Broker constructor

public void run() { intercom = new Intercom("broker", // Get Jackal instance "ftp://cs.umbc.edu/common.kqmlrc"); intercom.stderr("Agent broker started."); // Start services BrokerServ brokerServ = new BrokerServ(intercom); AdvertServ advertServ = new AdvertServ(intercom); }

Page 9: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 9

Sample Configuration File(config (debug (print (console true))) // enable Jackal console (runtime (path (bypass_conversations false) // bypass conversation space (bypass_distributor false)) // bypass distributor (network (protocols // transport modules to be loaded (_1 (name "J3.TcpipService") // standard kqml tcpip (param (config (preferred_port "5500")))) (preferred_protocol tcpip) // default transport module (vmd_enabled false) // allow shared memory message passing (preferred_subdomain ans) // default ANS (agents // table of known hosts (_1 (name ans) (protocol tcpip2) (address "freckles.cs.umbc.edu:5501")))) (rom_enabled true) // enable internal object reuse (ans_enabled true) // enable agent naming services (conversations // conversations to be loaded at startup ”ftp://jackal.cs.umbc.edu/conversations/c.kqml-ask-one” "ftp://jackal.cs.umbc.edu/conversations/c.kqml-register”)))

Page 10: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 10

Jackal-based Agent

• Agent implemented as (collection of) thread(s) which communicate via the distributor.

• Control jackal instance through API; J3.Intercom class.

JackalIntercom Distributor

Thread

AgentThread

ThreadThread

Transport InterfaceGlobal

Resources

Page 11: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 11

Jackal Highlights Conversation space/distributor Intelligent object handling

– Items handled in flat or object form Delivery algorithm

– KNS-compliant no-fault message delivery Address cache

– Multi-tiered, concurrent access, fetch-on-miss User-defined transport modules

Page 12: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 12

Jackal Highlights (2) Onboard ANS

– Complete KNS naming service Jif content language

– Powerful, integrated, Kif-like language Object/thread reuse

– Reduces garbage collection overhead Flexible resource naming

– All external resources identified by URLs

Page 13: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 13

There’s No Place Like Home…

PressPress

An excursion into the Jackal distribution and API documentation.

Page 14: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 14

Development Effort

SynchronizationDistributionConnection MgmtOther

Page 15: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 15

KNS Naming and Addressing

• An agent naming and addressing scheme which supports persistent, distributed identity.– Names are DNS-like, incorporating URLs.– Hierarchical scheme, supporting multiple names

per agent/agents per name (virtual domain).– Agent identity is associated with the set of current

names/domain memberships.– Constant time solution for no-fault agent location.

Page 16: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 16

Application Domains

• Manufacturing integration (CIIMPLEX)– Supply chain exception event monitoring

• Electronic commerce (EECOMS)– Automated negotiation

• Information retrieval (CADIP)– IR among distributed, heterogeneous systems

Page 17: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 17

Conversations

• Allow more intuitive and convenient method for handling messages in context.

• Through conversation composition, scale to varying levels of granularity.

• Provide conversation management independent of agent implementation.

• Facilitate communication through conversation sharing.

Page 18: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 18

Underlying Formal Models

• The benefits of modeling in formal systems include interoperability, reuse and verification

• Specifications are:– Concise, unambiguous, verifiable– Potentially executable

• We are investigating the use of colored Petri nets as a model for conversation specifications

Page 19: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 19

Colored Petri Nets

• Benefits of modeling in a formal system.• CPNs are a relatively simple formalism.• CPNs have an intuitive graphical

representation.• CPNs support the modeling of concurrency,

essential in sophisticated agent interaction.• Petri nets are a well understood formalism,

with many tools for design and analysis.

CPN-Guy

Page 20: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 20

CIIMPLEX Scenario in CPN

AskOne RecommendOne

SubscribeOneAdvertise

Register

NIC

ANS

Monitor

SCA

BrokerPRA

Gateway

Agents

Components

Conversations

NetworkNetwork

Page 21: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 21

Design/CPN and PRA

Page 22: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 22

Notes on CIIMPLEX Model

• 5 conversation policies, 6 agents

• 18 pages/40 page instances

• 154/281 places, 65/131 transitions

• 54 messages total

• Executes in 373 transition firings

Page 23: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 23

Results

• We have developed Jackal, a framework/tool for building software agents organized around conversation policies, and have tested this approach against a number of real world scenarios.

• Additionally, we are currently developing a methodology for using CPNs to create concise, executable specifications for defining cps that drive agents.

Page 24: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 24

Lessons Learned

• Size does matter.

• Too many threads spoil the cloth.

• Good synchronization is hard to find.

• Multiple views – good, translation bad.

• Wash your dirty laundry at home.

• Rose colored glasses do improve the view.

• Users hate choices.

Page 25: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 25

Conclusions

• Jackal has proven to be a useful too in developing multi-agent systems for various problem domains.

• In order to make Jackal more useful to the community, it must be made to work with other communication languages and more advanced protocol specification systems.

Page 26: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 26

Future Work

• Incorporation of certificate-based encryption/authentication

• JINI resource discovery mechanisms

• Extension to FIPA/multiple languages

• Support for advanced protocol specifications, such as Protolingua

• Multi-user Jackal

Page 27: Jackal for Practitioners R. Scott Cost CADIP Joint Symposium September 9-10, 1999 C I I M P L E X Jackal and related technologies developed by.

September 9-10, 1999 R. Scott Cost - CADIP Joint Symposium 27

Relevant Publications• Peng et al., An agent based approach for manufacturing integration, IJAAI, 1999.

• Cost et al., An agent-based infrastructure for enterprise integration, ASA, 1999.

• Cost et al., Using colored Petri nets for conversation modeling, IJCAI ACL wk., 1999.

• Peng et al., An agent system for application initialization in an integrated manufacturing environment, SCI/ISAS, 1999.

• Cost et al., Modeling agent conversations with colored Petri nets, AA wk., 1999.

• Cost et al., Agent development with jackal, AA abstract, 1999.

• Chen et al., A negotiation-based multi-agent system for supply chain management, AA wk., 1999.

• Cost et al., Jackal: A java-based tool for agent development, AAAI wk., 1998.

• Cost et al., A naming and addressing protocol for multi-agent systems, FIPA CFP, 1999.


Recommended