Agent-based Mechanisms for Distributing Geographic Information Services on the Internet By Ming-Hsiang Tsou.

Slides:



Advertisements
Similar presentations
WFM 6202: Remote Sensing and GIS in Water Management
Advertisements

DIGIDOC A web based tool to Manage Documents. System Overview DigiDoc is a web-based customizable, integrated solution for Business Process Management.
Performance Testing - Kanwalpreet Singh.
Mobile Agents Mouse House Creative Technologies Mike OBrien.
Technology Guide 2 Software
An Operational Metadata Framework For Searching, Indexing, and Retrieving Distributed GIServices on the Internet By Ming-Hsiang.
GIS: The Grand Unifying Technology. Introduction to GIS  What is GIS?  Why GIS?  Contributing Disciplines  Applications of GIS  GIS functions  Information.
Chapter 21 Successfully Implementing The Information System
CIM2564 Introduction to Development Frameworks 1 Overview of a Development Framework Topic 1.
Presentation 7 part 2: SOAP & WSDL. Ingeniørhøjskolen i Århus Slide 2 Outline Building blocks in Web Services SOA SOAP WSDL (UDDI)
Integrated Mobile GIS and Wireless Internet Map Servers for Environmental Monitoring and Management By Ming-Hsiang Tsou
An Intelligent Agent-based Architecture for Internet Mapping and Distributing Geographic Information Services By Ming-Hsiang Tsou
BICS546 Client/Server Database Application Development.
GIS Overview. What is GIS? GIS is an information system that allows for capture, storage, retrieval, analysis and display of spatial data.
Common Ground Project San Diego Bay Watershed Monitoring ( Multimedia GIS (
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
WFM 6202: Remote Sensing and GIS in Water Management © Dr. Akm Saiful IslamDr. Akm Saiful Islam WFM 6202: Remote Sensing and GIS in Water Management Dr.
Ming-Hsiang Tsou phone: Fax: Internet GIServices Department of Geography, San Diego.
NASA ARC Project Web-based Geographic Information Services and Analytic Tools for Natural Habitat Monitoring and Management Department of Geography, San.
Creating a Virtual Organization (VO) for Digital Earth Research by Dr. Ming-Hsiang (Ming) Tsou Associate Professor
Internet GIS and Wireless Mobile GIS for Disaster Management by Dr. Ming-Hsiang (Ming) Tsou Phone:
Interpret Application Specifications
Internet-based Spatial Decision Support System (SDSS) with Real-Time Wireless Mobile GIS by Dr. Ming-Hsiang (Ming) Tsou
Introduction to Geographic Information Systems GIS is a Spatial tool used to query spatial information investigate spatial problems communicate spatial.
An Intelligent Agent-based Architecture for Internet Mapping and Distributing Geographic Information Services By Ming-Hsiang Tsou
Information Retrieval in Distributed Environments Based on Context- Aware, Proactive Documents Current Research Information Systems (CRIS 2002) August.
Systems Architecture, Fourth Edition1 Internet and Distributed Application Services Chapter 13.
What is adaptive web technology?  There is an increasingly large demand for software systems which are able to operate effectively in dynamic environments.
12-1 © Prentice Hall, 2004 Chapter 12: Design Elements Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
DISTRIBUTED PROCESS IMPLEMENTAION BHAVIN KANSARA.
Developing Health Geographic Information Systems (HGIS) for Khorasan Province in Iran (Technical Report) S.H. Sanaei-Nejad, (MSc, PhD) Ferdowsi University.
Lecture 4 Data. Why GIS? Ask questions Solve a problem Support a decision Make Maps Involve others, share data, procedures, ideas.
INTRODUCTION TO WEB DATABASE PROGRAMMING
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
GIS technologies and Web Mapping Services
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
Chapter Intranet Agents. Chapter Background Intranet: an internal corporate network based on Internet technology. Typically, an intranet can.
Internet, intranet, and multimedia database processing l Database processing across local and wide area networks l Alternative architectures for distributing.
Lecture 15 Introduction to Web Services Web Service Applications.
Master Thesis Defense Jan Fiedler 04/17/98
Comparison of Web Services, RMI, CORBA, DCOM Usha, Lecturer MCA Department of Computer Science and Engineering.
CSCE 201 Web Browser Security Fall CSCE Farkas2 Web Evolution Web Evolution Past: Human usage – HTTP – Static Web pages (HTML) Current: Human.
Design of a Search Engine for Metadata Search Based on Metalogy Ing-Xiang Chen, Che-Min Chen,and Cheng-Zen Yang Dept. of Computer Engineering and Science.
MOBILE AGENTS What is a software agent ? Definition of an Agent (End-User point of view): An agent is a program that assists people and acts on their behalf.
NOVA Networked Object-based EnVironment for Analysis P. Nevski, A. Vaniachine, T. Wenaus NOVA is a project to develop distributed object oriented physics.
Lecture 22: Client-Server Software Engineering
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 14 Database Connectivity and Web Technologies.
Mobile Agents Babak Esfandiari. Types of Applications Dynamic load balancing. Dynamic service deployment. Intermittently connected systems.
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
CA-OES CAL(IT)2 Feb. 20, 2002 Internet GIServices
Combining Web-based GIS and Wireless Mobile GIS for Wildfire Recovery and Watershed Management by Dr. Ming-Hsiang (Ming) Tsou
Web Pages with Features. Features on Web Pages Interactive Pages –Shows current date, get server’s IP, interactive quizzes Processing Forms –Serach a.
1 Overview Finding and importing data sets –Searching for data –Importing data_.
S O A P ‘the protocol formerly known as Simple Object Access Protocol’ Team Pluto Bonnie, Brandon, George, Hojun.
An Introduction to Web Services Web Services using Java / Session 1 / 2 of 21 Objectives Discuss distributed computing Explain web services and their.
Introduction and Principles Web Server Scripting.
WFM 6202: Remote Sensing and GIS in Water Management © Dr. Akm Saiful IslamDr. Akm Saiful Islam WFM 6202: Remote Sensing and GIS in Water Management Dr.
Web Services An Introduction Copyright © Curt Hill.
Copyright © 2002 Pearson Education, Inc. Slide 3-1 Internet II A consortium of more than 180 universities, government agencies, and private businesses.
Institute for Visualization and Perception Research 1 © Copyright 1999 Haim Levkowitz Java-based mobile agents.
Enterprise Database Systems Introduction to SQL Server Dr. Georgia Garani Dr. Theodoros Mitakos Technological.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
XML and Distributed Applications By Quddus Chong Presentation for CS551 – Fall 2001.
Your Interactive Guide to the Digital World Discovering Computers 2012 Chapter 13 Computer Programs and Programming Languages.
World Wide Web policy.
MANAGING KNOWLEDGE FOR THE DIGITAL FIRM
Quality Assurance for Component-Based Software Development
In Distributed Systems
Presentation transcript:

Agent-based Mechanisms for Distributing Geographic Information Services on the Internet By Ming-Hsiang Tsou 1 and Barbara P. Buttenfield 2 1 Geography Department, San Diego State University 2 Geography Department, University of Colorado GIScience 2000

Why Distribute GIServices? Globalize Information Access/Exchange Decentralize Database Management/Update Distribute Computing Processes The Network is the Computer

Problems in Distributing GIServices Temporary, technology-centered solutions: The lack of an intelligent architecture which can operate in new/unknown environments Focus on Data, not on GIS Processes: We need to distribute both GIS Processes and data objects across the networks.

Dynamic Construction (on the Internet) User Scenario: GIS Task  GIS node profile  Network performance GIS user GIS node GIS component (program) Geodata object Solution: Dynamic Architecture for GIServices

Dynamic Construction (on the Internet) User Scenario: Map Display [Colorado Roads] GIS user (Mike) GIS node GIS component Geodata object Build GIServices “ on-the-fly ” B C A

Agents Info. finders/filters Interpreters Decision makers User-defined rules Knowledge bases Agent collaboration Agent-based Communication GIS Components (Programs) Geodata Objects Metadata

Information Finder / Filter Information Finder Information Filter Choice - 1 Choice - 2 Choice - 3 ~ ~ ~ ~ ~ Choice Reasonable choice - A Reasonable choice - B Reasonable choice - C KEYWORDS (User-defined rules) Users Choice - 1 Choice - 2 Choice - 3 ~ ~ ~ ~ ~ Choice Site-B Site-A Choice - 1 Choice - 2 Choice - 3 ~ ~ ~ ~ ~ Choice Site-C Examples: Search “Colorado roads” Search Methods: 1. Message Broadcasting 2. Agent Roaming 3. Create a “Metadata Repository” to improve the search efficiency

Information Interpreter ARC Coverages Metadata [Buffering] in UNIX Information Interpreter Metadata [Address matching] in Window 2000 Metadata Shapefiles Metadata Landsat images Metadata Metadata becomes the source of knowledge bases Operation: Buffer (ARC command, UNIX platform) Input data: roads (shapefiles) Output data: road-buf (coverage) Variable: 200 feet (map unit:meter convert to meters) convert to coverage

Agent (decision maker) Decision Maker Events Actions Agent (Information Finder) Agent (Information Interpreter) Agent Collaboration Event: If the local disk is full, find another network disk. Agent Collaboration: Info. Finder --> search logical volumes Interpreter --> convert data format to destined environment Action: Save [New disk-drive]: [Data-object]

Agent Mobility Machine-A Stationary Agent-01 Machine-B Stationary Agent-05 Remote Procedure Call Machine-C Mobile Agent-03 Machine-D Mobile Agent-06 Mobile Agent-03 Copy (HTTP) a) Stationary Agent b) Mobile Agent

Advantages of a Mobile Agent Reduce network load Upload the agents to remote GIS databases Overcoming network latency Real-time response, agents on the remote site Protocol encapsulation Agent carries “codes” and “messages” Execute asynchronously and automatically More stable in fragile network connections Dynamically adoption Agent senses the execution environment and reacts autonomously to change

Problems of Mobile Agents Security (Mobile Agents as “Virus”) Implementation (Cross platforms/technologies) Size and Diversity (Small programs, more functions) Protocol Development (Agent communication) Levels of Control (Behavior, location)

Security Model for Agents Security Treats: Disclosure of information (interception) Denial of service (DOS) Corruption of information Attack Targets: Agents Agent Containers Countermeasures: Sandboxing (software-based fault isolation, Java) Digital Signature (signed code to confirm the authenticity of an object, its origin, and its integrity) Travel Histories (maintain an authenticatable record of the prior platforms visited by an agent. Others...

Geodata Objects Colorado Roads (Vector) Metadata Colorado DEM (Raster) Metadata Geodata Agents Component Agents Machine Agents Client machine Server machine GIS components Map Display Component Metadata Spatial Analysis Component Metadata AgentFunctionality

Generalization Hierarchy of GeoAgents GeoAgent Machine Agent Component Agent Geodata Agent UML notations Stationary GeoAgent Mobile GeoAgent UML: Unified Modeling Language

GIServices Workstation (a GIS node) Agent Container GIS Component Container GeoData Object Container Machine Agent Hardware Profiles: CPU, OS, CRT, printer, scanner Component Agent GeoData Agent M M M M M : metadata M M Implementation: GIService Node

Agent Container Platform Java (Sun Microsystems): Java Virtual Machine (VM), Java applets / servlets. CORBA (OMG): Common Object Request Broker Architecture, UNIX-based, IIOP (Internet Inter-ORB Protocol), DCOM / COM+ (Microsoft): Windows 2000/NT, ActiveX container, COM-based model XML (W3C): (Extensible Markup Language) lightweight agent systems, scripting language, open-ended, metadata- enhanced.

Agent Communication Language (ACL) / Protocol (ACP) KQML (Knowledge Query and Manipulation Language) (Finin and Weber, 1993) ACL (Agent Communication Language) specification FIPA (Foundation for Intelligent Physical Agents) 1997 IIOP (Internet Inter-ORB Protocol), and CORBA’s Mobile Agent Facility Specification 1.0 OMG, (1999) XML-based scripting language (Lange, Hill, & Oshima, 2000)

A GIS spatial analyst, Dick, wants to locate a new Wal-Mart store in Boulder. He needs to obtain related map information and perform a GIS overlay analysis for this task. Data conversion Shape fitting analysis Overlay analysis Dick : GIS analyst Ron: GIS software vendor Buffer analysis Matt: GIS programmer Scenario: Spatial Analysis Procedure-A

Dick’s GIS node The Planning Department CODOT The Tax Assessor Department The Policy Department Agent Land use Flood zone Roads Land value and parcels Crime Risk Index Procedure-A: (from Dick’s requests] Buffer 200m from [Road] to create [Buffer zone] Overlay [Land use] [Flood zone], [Buffer zone], and [Land parcels], [Crime Risk Index]. Agent The Roaming of Agent The Roaming of Agent (Carry a [Procedure-A]) Procedure-A: Agent Procedure-A: Agent Procedure-A: Agent Procedure-A:

3. Agent travels to the agent container in CODOT. 4. Executes the first line of procedure-A. 5. Generates a new data called [Buffer zone] and puts the new data in the CODOT data container. Dick’s GIS node CODOT Procedure-A: (from Dick’s request) Buffer 200m from [Road] to create [Buffer zone] Overlay [Land use] [Flood zone], [Buffer zone], and [Land parcels], [Crime Risk Index]. Agent First Stage Data container 1. Agents search the location of [Roads], [Buffer operation], etc. 2. Find out the location of data and component. ([Roads] URL: ([Buffer]: URL: Agent container Component container Roads Buffer zone Agent Procedure-A Buffer

Dick’s GIS node CODOT Procedure-A: (from Dick’s request) Buffer 200m from [Road] to create [Buffer zone] Overlay [Land use] [Flood zone], [Buffer zone], and [Land parcels], [Crime Risk Index]. Agent Second Stage Data container Agent container Component container Roads Buffer zone Agent Procedure-A Buffer The Planning Department Agent container Buffer zone Agent Procedure-A Overlay Land use Flood zone Over-1

Procedure-A: (from Dick’s request) Buffer 200m from [Road] to create [Buffer zone] Overlay [Land use] [Flood zone], [Buffer zone], and [Land parcels], [Crime Risk Index]. Third Stage The Planning Department Agent container Buffer zone Agent Procedure-A Overlay Land use Flood zone Over-1 The Tax Assessor Department Agent container Agent Procedure-A Overlay Over-1 Land parcels Over-2

Final Stage The Police Department Agent container Agent Procedure-A Overlay Crime risk index Final The Tax Assessor Department Agent container Agent Procedure-A Overlay Over-1 Land parcels Over-2 Dick’s GIS node Data container Component container Agent container Agent Procedure-A (complete) Final

Deploy the Architecture GIS node: Matt-GIS. com Shape fitting analysis : GIS components GIS node: Dick.colorado.edu GIS node: Boulder-Planning.gov GIS node: Boulder-Police.gov Crime Rate records Overlay analysis component Buffering component Machine agent Component agent Geodata agent : Data object 3D shading and ray tracing Statistic analysis Shape fitting analysis Land use Roads Flood area Parcel rec. Land use Roads Auto. Data Conversion Crime rate

I n t e r n e t Local Network Intranet GIS Node GIS Node: Ming GIS Node: Mike GIS Node: Eva GIS Node: Tina GIS Node A GIS Task GIS Node: SDSU GIS Node: UCSB GIS Node: SUNY GIS Node: FGDC Collaboration among GIS nodes

Traditional Solution Agent-based Solution Efficient use of computing resources Automated data gathering / conversions Customizable GIS modulars and functions Sharing GIS data / models / knowledge Limited GIS computing power Convert data sets manually / individually Vendor-based GIS software Difficult to search / exchange geospatial informationSUMMARY

FUTURE WORK Implementation Java, XML, XHTML, KQML, ACL Hierarchic GeoAgents Individual, Groups, Global Society Intelligent GeoAgents ? Knowledge engines, fuzzy logic, neural networks

Mike ’ s Input: GIS component: [Display] .Required Component Required data: [Colorado Roads] .Required Data (Machine agent-A) init { If.RequiredData found in [Data container] Then set.OperationData =.RequiredData ElseIf Search(.RequiredData) = Null Then print “ Data can not be found. ” ; exit Else set.OperationData = Search(.RequiredData).CopyToDataContainer End If If.RequiredComponent found in [Component container] Then set.OperationComponent =.RequiredComponent Elseif Search(.RequiredComponent) = Null Then print “ GIS component can not be found. ” ; exit Else set.OperationComponent = Search(.RequiredComponent).CopyToComponentContainer End If SendToComponentAgent(.OperationData,.OperationComponent) } Coding Example: Machine agents search for requested data object