Intelligent Architectures for Electronic Commerce Prolog/JADE Tutorial.

Slides:



Advertisements
Similar presentations
Jump to Contents Instructor Tutorial essignments.com Paperless assignment submission system.
Advertisements

Introduction to Java 2 Programming Lecture 3 Writing Java Applications, Java Development Tools.
Peer-to-peer and agent-based computing P2P Algorithms.
Intelligent Architectures for Electronic Commerce A (Brief) Prolog Tutorial.
Cognos Web Services Business Intelligence. SOA SOA (Service Oriented Architecture) The SOA approach involves seven key principles: -- Coarse -grained.
Intelligent Architectures for Electronic Commerce Part 1.5: Symbolic Reasoning Agents.
Professional Toolkit V2.0 C:\Presentations - SmartCafe_Prof_V2.0 - bsc page 1 Professional Toolkit 2.0.
Remote Method Invocation
Remote Method Invocation Chin-Chih Chang. Java Remote Object Invocation In Java, the object is serialized before being passed as a parameter to an RMI.
UPnP AV Architectural Multimedia System with a Home Gateway Powered by the OSGi Platform Manuscript received January 15, 2005 Reporter: Sy-Han Wang.
A step – by step Introduction to First Class guide for teachers.
Online Chess Project 3 Due date: April 17 th. Introduction Third in series of three projects This project focuses on adding online support –2 players.
Managing Agent Platforms with the Simple Network Management Protocol Brian Remick Thesis Defense June 26, 2015.
Managing Agent Platforms with SNMP Brian Remick Research Proposal Defense June 27, 2015.
JADE: installation and “Hello World” application Fabiano Dalpiaz Agent-Oriented Software Engineering (AOSE)
Microsoft Windows XP Remote Desktop Alvin Loh Program Manager Terminal Services Group.
Web server and web browser It’s a take and give policy in between client and server through HTTP(Hyper Text Transport Protocol) Server takes a request.
ECE355 Project SIP Applications Tiuley Alguindigue
Hosting Packages, FTP, and other Hacks 14 February 2012.
Abstraction IS 101Y/CMSC 101 Computational Thinking and Design Tuesday, September 17, 2013 Carolyn Seaman University of Maryland, Baltimore County.
SSC2: Web Services. Web Services Web Services offer interoperability using the web Web Services provide information on the operations they can perform.
สาขาวิชาเทคโนโลยี สารสนเทศ คณะเทคโนโลยีสารสนเทศ และการสื่อสาร.
Muyowa Mutemwa Supervisor: W.D. Tucker Co-Supervisors: Prof. I. Venter; Mr. M Norman.
UNIVERSITI TENAGA NASIONAL “Generates Professionals” CHAPTER 4 : Part 2 INTRODUCTION TO SOFTWARE DEVELOPMENT: PROGRAMMING & LANGUAGES.
27.1 Chapter 27 WWW and HTTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Web application architecture
Android SMIL Messenger Presented By: Alex Povkov Brad Gardner Jeremy Spitzig Santiago Jamriska.
XP New Perspectives on Browser and Basics Tutorial 1 1 Browser and Basics Tutorial 1.
CS Tutorial 1 Getting Started with Visual Studio 2012 (Visual Studio 2010 are no longer available on MSDNAA, please choose Visual Studio 2012 which.
Pete Mendicino Mendicino.net (443) Slide number 1.
CSCI 6962: Server-side Design and Programming Web Services.
Computer Science Department UoC. Outline Emerald Framework Overview Communication pattern Software Requirements Setup sequence Cs566 project objective.
Computer Science Department UoC. Outline Project Teams Key Points description Suggested Task Delegation Files Needed & previous work.
Presentation: SOAP/WS in a distributed object framework, Application Servers & AXIS SOAP.
Computer Emergency Notification System (CENS)
Macro Express. What is a Macro? “A macro is a way to automate a task that you perform repeatedly or on a regular basis. It is a series of commands and.
Presentation: SOAP/WS in a distributed object framework, Application Servers & AXIS SOAP.
Running EntireX Broker. The basic started task which must be available on OS/390 is EntireX Broker. EntireX Broker.
Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages.
Establishing a foundation for web services Ashraf Memon.
Why a FIPA platform? (I) We inherit the benefits of FIPA standardization. We ensure a high degree of compatibility with other FIPA compliant agents build.
DMED1100 InDesign Advanced Class 8. Agenda  Scripting  Introduction to XML 2.
2007cs Servers on the Web. The World-Wide Web 2007 cs CSS JS HTML Server Browser JS CSS HTML Transfer of resources using HTTP.
S O A P ‘the protocol formerly known as Simple Object Access Protocol’ Team Pluto Bonnie, Brandon, George, Hojun.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the Creative Commons Attribution-ShareAlike.
Anritsu Automation Platform (AAP) AAP PC Connects to the system via IP connection (system switch) AAP was developed to add features that were requested.
JADE: installation and “Hello World” application
Module 5 GemStall Overview
Intro to Web Services Dr. John P. Abraham UTPA. What are Web Services? Applications execute across multiple computers on a network.  The machine on which.
Pogamut 2 Platform for fast development of cognitive agents inside 3D environment Creating javabot project / pitfalls Startup/running/shutdown sequence.
11 Computers, C#, XNA, and You Session 1.1. Session Overview  Find out what computers are all about ...and what makes a great programmer  Discover.
The overview How the open market works. Players and Bodies  The main players are –The component supplier  Document  Binary –The authorized supplier.
Tutorial 4 Using JADE from External Java Applications Fuhua Lin, PhD, Professor, School of Computing and Information Systems Athabasca University, Alberta,
Active-HDL Server Farm Course 11. All materials updated on: September 30, 2004 Outline 1.Introduction 2.Advantages 3.Requirements 4.Installation 5.Architecture.
Real-Time Systems Laboratory Seolyoung, Jeong JADE (Java Agent DEvelopment framework )
How to use Library Kindle Books
How to use Library Kindle Books
MSB Integration Guide.
Project 1 Simple Socket Client.
Outline SOAP and Web Services in relation to Distributed Objects
An introduction to programming Created by Dr. Randy Pausch
In-situ Visualization using VisIt
Simple Socket Client Project 1.
1z0-320 Exam dumps - Get 1z0-320 PDF With Actual Questions Answers
Implementing a service-oriented architecture using SOAP
Chapter 27 WWW and HTTP.
Simple Socket Client Project 1.
Message Passing Systems
Presentation transcript:

Intelligent Architectures for Electronic Commerce Prolog/JADE Tutorial

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos 2 Overview 1.JADE 2.CIAO Prolog 3.Prolog and JADE

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos 3 1. JADE Standard platform for agent communication Provides useful services: –Visualisation of messages; –Sending/receiving messages manually; –GUI, etc. We need to use some such platform to run our agents, otherwise how would we test them?

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos 4 1. JADE Container Agent

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos 5 2. CIAO Prolog Efficient, free implementation of Prolog Higher-level than Java, C++, Delphi: –Allows symbolic reasoning –Terse syntax Common complaints: –Non-intuitive and outlandish –Difficult to understand –Inefficient –Odd choice for a programming language (if it is not Java it is simply not cool…)

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos 6 3. Prolog and JADE Means to “agentify” Prolog programs Prolog programs may then: –Send messages to other agents –Receive messages from other agents Prolog can then “talk” to any other languages –Current examples are all Prolog agents Our Prolog agents were isolated from the rest of the world!

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos Connecting Prolog/Jade JADE is for Java, not Prolog…. One solution: –Prolog process has a “proxy” Java agent in JADE –Prolog process sends and receives messages via proxy agent –Diagrammatically JADE Ag 1 Ag 2 Ag 4 PrologAg 3

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos Proxy Agent Proxy agent is a simple Java program Reads from/writes to a socket open on a port Prolog program sends a message via proxy: –Writes term onto socket –Term must be in a specific format (more later…) Proxy agent reads in Prolog term (message to be sent) and translates it onto FIPA-ACL Creation and registration of proxy agents is performed via StarterAgent

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos StarterAgent (1) Each Prolog process needs a proxy agent Prolog cannot start an agent in JADE Solution: an agent inside JADE who is responsible for starting up proxy agents! This is what StarterAgent is

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos StarterAgent (2) Started up manually using JADE’s service:

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos StarterAgent (3) Then you should type on the pop-up window: Name of the Starter AgentJAVA Class Parameters: Port Number and “verbose” option

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos StarterAgent (4) Look!!

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos StarterAgent (5) How to get hold of StarterAgent: 1.Copy folder JADE-InterAgent into your jade folder 2.Add c:\jade\JADE-InterAgent to your CLASSPATH You can now start up your StarterAgent as before Choose a port which is not being used to use as a parameter when starting the agent

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos The Prolog Part (1) Download file agent.pl Load it in CIAO Prolog Type in ?- connect_to_jade(1450,ag1,starterAgentCool).

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos The Prolog Part (3) 1.Prolog connects to port Sends a request to the StarterAgent in the form request(Me,[StarterAg],register(Me))) 3.Receives a message with the port of the Proxy agent inform(StarterAg,[Me],registered(Me,NewPort))) 3.Connects to the NewPort port 4.And that’s all!

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos The Prolog Part (5)

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos The Prolog Part (6) Look!!

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos The Prolog Part (7) After process connects to the port, it can send and receive messages via its proxy agent in JADE. You can, for instance, send a message using the JADE service, in order to test your Prolog agent.

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos 19

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos The Prolog Part (10)

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos The Prolog Part (11) There are predicates defined to send and receive messages. Messages must be in the format  perf-name  (  id-sender ,ListOfRecs,  contents  ) where ListOfRecs is a list of recipients’s id Please read the documentation in the file agent.pl

Intelligent Architectures for Electronic Commerce Timothy J Norman and Wamberto Vasconcelos Final Words No standard connection: –We’re free to create and propose solutions –How would you connect Prolog to JADE? This is state-of-the-practice stuff –There might be problems… –Let me know and I will try to help! Enjoy it!