Top Banner
1 Introduction to JADE presenter: Syuan-Hao Li
102

1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

Dec 20, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

1

Introduction to JADE

presenter: Syuan-Hao Li

Page 2: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

2

OutlineOutline

IntroductionJava Virtual Machine

Foundation for Intelligent Physical Agents (FIPA)

Java Agent Development Environment (JADE)

Running JADE PlatformInstall JDK 1.6

Install JADE Platform

Run JADE Platform

Run Agent on JADE Platform

Page 3: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

3

OutlineOutline

IntroductionJava Virtual Machine

Foundation for Intelligent Physical Agents (FIPA)

Java Agent Development Environment (JADE)

Running JADE PlatformInstall JDK 1.6

Install JADE Platform

Run JADE Platform

Run Agent on JADE Platform

Page 4: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

4

Java Virtual Machine

An abstract computing machine.

The JVM knows nothing of the Java PL, only of a particular binary format, the class file format.

A class file contains JVM instructions (or byte codes) and a symbol table, as well as other ancillary information.

Page 5: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

5

Java Byte Codes

Rather than generating an executable machine instructions, a Java compiler outputs what are known as Java byte codes.

Java byte codes are instructions written for a Java Virtual Machine that does not really exist.

Java interpreter executes the byte code by emulating the JVM on whatever platform you happen to be using.

Page 6: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

6

Comparison Java Virtual Machine

Page 7: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

7

Example

HelloWorld.java

import javax.swing.JOptionPane;

public class HelloWorld{ public static void Print() { JOptionPane.showMessageDialog(null, "Hello! World!"); }

public static void main(String[] args) { System.out.println("Hello! World!"); Print(); }}

Import library

Must be the same to the file name

Entry point

Page 8: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

8

Homework

Write a java programQuery the information of a web site (ex. Stock, Weather forecast ) by user input.

ReferenceJava API Docs http://java.sun.com/javase/6/docs/api/

良葛格 java 學習筆記http://caterpillar.onlyfun.net/Gossip/JavaGossip-V1/JavaGossip.htm

Page 9: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

9

OutlineOutline

IntroductionJava Virtual Machine

Foundation for Intelligent Physical Agents (FIPA)

Java Agent Development Environment (JADE)

Running JADE PlatformInstall JDK 1.6

Install JADE Platform

Run JADE Platform

Run Agent on JADE Platform

Page 10: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

10

Foundation for Intelligent Physical Agents (FIPA)Foundation for Intelligent Physical Agents (FIPA)

IEEE Computer Society standards organization A body for developing and setting computer software standards for heterogeneous and interacting agents and agent-based systems. Agent managementAgent communication language (ACL)Integration agent and other computer softwarehttp://www.fipa.org/

A software agentA piece of software that acts for a user or other program in a relationship of agency

Page 11: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

11

OutlineOutline

IntroductionJava Virtual Machine

Foundation for Intelligent Physical Agents (FIPA)

Java Agent Development Environment (JADE)

Running JADE PlatformInstall JDK 1.6

Install JADE Platform

Run JADE Platform

Run Agent on JADE Platform

Page 12: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

12

JADEJADEJADE (Java Agent Development Framework)

Framework aimed at developing multi-agent systems and applications conforming to FIPA standards for intelligent agents.

Page 13: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

13

JADEJADEThe agent platform can be split among several hosts. Only one Java application(Main container) is executed on each host.

Page 14: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

14

JADEJADE

Support to the execution of multiple, parallel and concurrent agent activities via the behaviour model.

Page 15: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

15

JADE platformJADE platform

JADE is a middleware that facilitates the development of Multi Agent Peer-to-Peer applications.

Full Java

Runs on all JVM from J2EE to J2ME MIDP1.0

Downloadable from http://jade.tilab.com

Page 16: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

16 16

Page 17: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

17

Containers and PlatformsContainers and Platforms

Page 18: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

18

Containers and PlatformsContainers and Platforms

Each running instance of the JADE runtime environment is called a Container as it can contain several agents.

Page 19: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

19

Containers and PlatformsContainers and Platforms

The set of active containers is called a Platform.

Page 20: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

20

Containers and PlatformsContainers and Platforms

A single special Main container must always be active in a platform and all other containers register with it as soon as they start.

Page 21: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

21

JADEJADE

Page 22: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

22

JADEJADE

Main container

Page 23: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

23

JADEJADE

AMS (Agent Management System) Provides the naming service and represents the authority in the platform.

DF (Directory Facilitator) Provides a Yellow Pages service by means of which an agent can find other agents providing the services he requires in order to achieve his goals.

RMA(Remote Management Agent)Acting as graphical console for platform management and control.

Page 24: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

24

Agent Management System (AMS)Agent Management System (AMS)

Page 25: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

25

Agent Management SystemAgent Management System

Provides the naming serviceEnsures that each agent in the platform has a unique name

Represents the authority in the platformTo create/kill agents on remote containers by requesting that to the AMS

Page 26: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

26

Directory FacilitatorDirectory Facilitator

Page 27: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

27

Directory FacilitatorDirectory Facilitator

Provides a Yellow Pages service by means of which an agent can find other agents providing the services he requires in order to achieve his goals.

Page 28: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

28

DF AgentDF Agent

Page 29: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

29

Remote Monitoring AgentRemote Monitoring Agent

Provide the GUI to control agents’ lifecycle

Page 30: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

30

Message Transport SystemMessage Transport System

Agent Communication Channel (ACC)

Agent to Agent

Agent Platform to Agent Platform

Page 31: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

31

JADEJADE

Page 32: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

32

JADEJADE

Agent identifier <nickname>@<platform_name>

nickname platform_name

Page 33: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

33

OutlineOutline

IntroductionJava Virtual Machine

Foundation for Intelligent Physical Agents (FIPA)

Java Agent Development Environment (JADE)

Running JADE PlatformInstall JDK 1.6

Install JADE Platform

Run JADE Platform

Run Agent on JADE Platform

Page 34: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

34

Install JDK 1.6Install JDK 1.6

http://java.sun.com/ Download J2SE Development Kit (JDK) 1.6

The Java Runtime Environment (JRE)

Command-line development tools, such as compilers and debuggers, that are necessary or useful for developing applets and applications

Page 35: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

35 35

Install JDK 1.6 -- step 1Install JDK 1.6 -- step 1

downloads

Web Site

Page 36: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

36 36

Install JDK 1.6 -- step 2Install JDK 1.6 -- step 2

Download

Page 37: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

37 37

Install JDK 1.6 -- step 3Install JDK 1.6 -- step 3

Your platform

Page 38: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

38 38

Install JDK 1.6 -- step 4Install JDK 1.6 -- step 4

Download

Page 39: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

39

OutlineOutline

IntroductionJava Virtual Machine

Foundation for Intelligent Physical Agents (FIPA)

Java Agent Development Environment (JADE)

Running JADE PlatformInstall JDK 1.6

Install JADE Platform

Run JADE Platform

Run Agent on JADE Platform

Page 40: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

40

JADEJADE

http://jade.tilab.com/

Page 41: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

41

JADE PackageJADE Package

•JADE-doc•Document

•JADE-src•Source Code

•JADE-bin•Binary Code

•JADE-example•Example Code

Page 42: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

42

Download eclipseDownload eclipse

Eclipse - an open development platformEclipse is an open source community whose projects are focused on building an open development platform comprised of extensible frameworks, tools and runtimes for building, deploying and managing software across the lifecycle.

http://www.eclipse.org/downloads/

Page 43: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

43

Download eclipseDownload eclipse

Page 44: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

44

OutlineOutline

IntroductionJava Virtual Machine

Foundation for Intelligent Physical Agents (FIPA)

Java Agent Development Environment (JADE)

Running JADE PlatformInstall JDK 1.6

Install JADE Platform

Run JADE Platform

Run Agent on JADE Platform

Page 45: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

45

Page 46: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

46

Page 47: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

47

Page 48: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

48

Page 49: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

49

Page 50: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

50

Page 51: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

51

Page 52: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

52

jade.Boot

1

2

3

Page 53: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

53

-gui

1

2

3

Page 54: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

54

Page 55: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

55

-help

1

2

3

Page 56: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

56

Arguments Options

-host <host name>Host where RMI registry for the platform is located

-port <port number>The port where RMI registry for the platform resides

-containerIf specified, a new Agent Container is added to an existing platform. Otherwise a new Agent Platform is created

-confShows the gui to set the configuration properties to start JADE.

-guiIf specified, a new Remote Management Agent is created.

-versionIf specified, current JADE version number and build date is printed.

Page 57: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

57

OutlineOutline

IntroductionJava Virtual Machine

Foundation for Intelligent Physical Agents (FIPA)

Java Agent Development Environment (JADE)

Running JADE PlatformInstall JDK 1.6

Install JADE Platform

Run JADE Platform

Run Agent on JADE Platform

Page 58: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

58

ImplementationImplementation

1. Import jade.core.Agent Library

2. setup() Initialize and register this agent to AMS, the current state is ACTIVE.

3. addBehaviour() Add behaviours to queue, the parameter is a behaviour class.

4. action() Define action of behaviour.

5. doDelete() Shut down the agent.

Page 59: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

59

ImplementationImplementation

import jade.core.Agent;import jade.core.behaviours.OneShotBehaviour;

public class HelloAgent extends Agent{ protected void setup() { addBehaviour(new InitBeha()); }

class InitBeha extends OneShotBehaviour { public void action() { System.out.println(“Hello!"); doDelete(); } }}

Page 60: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

60

Page 61: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

61

Page 62: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

62

Page 63: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

63

-container -host <IP> <agent_name>:<class_name>

Page 64: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

64

Page 65: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

65

End

Page 66: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

66

Introduction to Agent

presenter: Syuan-Hao Li

Page 67: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

67

Outline Outline

Behaviour

Agent Communication

Example

Sniffer Agent

Example 2

Page 68: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

68

Behaviour Behaviour

The setup() method should add at least one behaviour to the agent.

Every JADE agent is compose of a single execution thread and all its tasks are modeled and can be implemented as Behaviour objects.

addBehavior(Behaviour) & removeBehaviour(Behaviour) allow to manage the ready tasks queue of an agent.

Page 69: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

69

Behaviour Behaviour

class WakerBehaviourThis abstract class implements a one-shot task that must be executed only once just after a given timeout is elapsed.

class TickerBehaviourThis abstract class implements a cyclic task that must be executed periodically.

Page 70: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

70 70

Page 71: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

71

ImplementationImplementation

OneShotBehaviourAgent execute only once.

CyclicBehaviourAgent execute by polling.

import jade.core.behaviours.OneShotBehaviour

import jade.core.behaviours.CyclicBehaviour

Page 72: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

72

Page 73: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

73

SimpleBehaviourSimpleBehaviour

class SimpleBehaviourclass OneShotBehaviour

This abstract class models atomic behaviours that must be executed only once and cannot be blocked. So, its done() method always returns true.

class CyclicBehaviourThis abstract class models atomic behaviours that must be executed forever. So its done() method always returns false.

Page 74: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

74

CompositeBehaviourCompositeBehaviour

class CompositeBehaviourclass SequentialBehaviour

This class is a CompositeBehaviour that executes its sub-behaviours sequentially and terminates when all sub-behaviours are done.

class ParallelBehaviourThis class is a CompositeBehaviour that executes its sub-behaviours concurrently and terminates when a particular condition on its sub-behaviours is met.

class FSMBehaviourThis class is a CompositeBehaviour that executes its children according to a Finite State Machine defined by the user.

Page 75: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

75

Outline Outline

Behaviour

Agent Communication

Example

Sniffer Agent

Example 2

Page 76: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

76

Agent CommunicationAgent Communication

Page 77: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

77

Agent CommunicationAgent Communication

sender of the message

list of receivers

communicative intention (or “performative”)

content

content language

ontology

some fields

Page 78: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

78

Agent CommunicationAgent Communication

Receiving Messages

Page 79: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

79

Outline Outline

Behaviour

Agent Communication

Example

Sniffer Agent

Example 2

Page 80: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

80

Example Example

Write two agent in JADE Platform:SenderAgent

OneShotBehaviour

Send string to ReceiverAgent by using ACLMessage.

ReceiverAgentCyclicBehaviour

Receive and print the string from SenderAgent.

Page 81: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

81

SenderSender

Page 82: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

82

ReceiverReceiver

Page 83: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

83

Exmaple Exmaple

Page 84: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

84

Outline Outline

Behaviour

Agent Communication

Example

Sniffer Agent

Example 2

Page 85: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

85

Sniffer Sniffer

Page 86: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

86

Sniffer Sniffer

Page 87: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

87

Sniffer Sniffer

Page 88: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

88

Outline Outline

Behaviour

Agent Communication

Example

Sniffer Agent

Example 2

Page 89: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

89

Example 2 Example 2

Page 90: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

90

Arguments Arguments

Page 91: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

91

SenderAgent SenderAgent

Page 92: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

92

SenderAgent SenderAgent

Page 93: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

93

SenderAgentSenderAgent

Page 94: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

94

HelloAgent HelloAgent

Page 95: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

95

HelloAgentHelloAgent

Page 96: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

96

MathAgent MathAgent

Page 97: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

97

MathAgentMathAgent

Page 98: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

98

Results Results

SenderAgent

HelloAgent

MathAgent

Page 99: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

99

ResultsResults

Page 100: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

100

Sniffer AgentSniffer Agent

Page 101: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

101

HomeworkHomework

Game: Three In A Row (3X3)

Five In A Row (9X9)

Write two or three Agent (A,B+C or A,B,C)Agent A : User

Input the position (X,Y) in chess board.

Agent B : Chess boardStore position of chess and judge who win.

Agent C : AI

Page 102: 1 Introduction to JADE presenter: Syuan-Hao Li. 2 Outline Introduction Java Virtual Machine Foundation for Intelligent Physical Agents (FIPA) Java Agent.

102

End