An Intelligent Agent-based Architecture for Internet Mapping and Distributing Geographic Information Services By Ming-Hsiang Tsou

Slides:



Advertisements
Similar presentations
Overview Environment for Internet database connectivity
Advertisements

WFM 6202: Remote Sensing and GIS in Water Management
Mobile Agents Mouse House Creative Technologies Mike OBrien.
An Operational Metadata Framework For Searching, Indexing, and Retrieving Distributed GIServices on the Internet By Ming-Hsiang.
1 Intelligent Agents Software analog to human agents real estate agent, librarian, salesperson Perform tasks individually, or in collaboration Static and.
GIS: The Grand Unifying Technology. Introduction to GIS  What is GIS?  Why GIS?  Contributing Disciplines  Applications of GIS  GIS functions  Information.
0 General information Rate of acceptance 37% Papers from 15 Countries and 5 Geographical Areas –North America 5 –South America 2 –Europe 20 –Asia 2 –Australia.
CIM2564 Introduction to Development Frameworks 1 Overview of a Development Framework Topic 1.
Agent-based Mechanisms for Distributing Geographic Information Services on the Internet By Ming-Hsiang Tsou.
Distributed Systems Architectures
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
GIS Overview. What is GIS? GIS is an information system that allows for capture, storage, retrieval, analysis and display of spatial data.
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
Information Retrieval in Distributed Environments Based on Context- Aware, Proactive Documents Current Research Information Systems (CRIS 2002) August.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
Object Based Operating Systems1 Learning Objectives Object Orientation and its benefits Controversy over object based operating systems Object based operating.
Systems Architecture, Fourth Edition1 Internet and Distributed Application Services Chapter 13.
Geographic Information System Geog 258: Maps and GIS February 17, 2006.
Client-Server Processing and Distributed Databases
Web-based Portal for Discovery, Retrieval and Visualization of Earth Science Datasets in Grid Environment Zhenping (Jane) Liu.
Developing Health Geographic Information Systems (HGIS) for Khorasan Province in Iran (Technical Report) S.H. Sanaei-Nejad, (MSc, PhD) Ferdowsi University.
February Semantion Privately owned, founded in 2000 First commercial implementation of OASIS ebXML Registry and Repository.
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
The Design Discipline.
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
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
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
1 Introduction CSIE, Da-Yeh University. 2 History of Software Development Traditional Programming Paradigm  Behind schedule, costly, and unreliable.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 11Slide 1 Chapter 11 Distributed Systems Architectures.
A New Cartographic Research Agenda for Virtual Globes Session 4510: Virtual Globles: GIS for the Masses? Ming-Hsiang Tsou, Ph.D. Associate Professor
Fundamentals of Database Chapter 7 Database Technologies.
Master Thesis Defense Jan Fiedler 04/17/98
Comparison of Web Services, RMI, CORBA, DCOM Usha, Lecturer MCA Department of Computer Science and Engineering.
The 2000 Decennial Census School District Project: Using Census Data for the School District Mapping System **** Development and Implementation Tai A.
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.
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.
Architecture of Decision Support System
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
RSISIPL1 SERVICE ORIENTED ARCHITECTURE (SOA) By Pavan By Pavan.
Combining Web-based GIS and Wireless Mobile GIS for Wildfire Recovery and Watershed Management by Dr. Ming-Hsiang (Ming) Tsou
1 Overview Finding and importing data sets –Searching for data –Importing data_.
12 Chapter 12: Advanced Topics in Object-Oriented Design Systems Analysis and Design in a Changing World, 3 rd Edition.
INTRODUCTION TO GIS  Used to describe computer facilities which are used to handle data referenced to the spatial domain.  Has the ability to inter-
Web Services Using Visual.NET By Kevin Tse. Agenda What are Web Services and Why are they Useful ? SOAP vs CORBA Goals of the Web Service Project Proposed.
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.
Review.
Copyright © 2002 Pearson Education, Inc. Slide 3-1 Internet II A consortium of more than 180 universities, government agencies, and private businesses.
GRID ANATOMY Advanced Computing Concepts – Dr. Emmanuel Pilli.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
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.
Chapter 3: Windows7 Part 4.
MANAGING KNOWLEDGE FOR THE DIGITAL FIRM
In Distributed Systems
Presentation transcript:

An Intelligent Agent-based Architecture for Internet Mapping and Distributing Geographic Information Services By Ming-Hsiang Tsou Phone: Fax: The Department of Geography, San Diego State University

The Promise of Internet Mapping Flexible Information Access/Distribution (Spatial Information at your fingertips + Real time data) Information Sharing and Integration (Access multiple Internet map servers at the same time – local data, federal agencies, USGS, EPA, Census etc.) Distributed Mapping/GIS Tools: Web Services (LEGO-like GIS components/mapping tools) 3D, Visualization, Networking Analysis, Hydrological models The Network is Your Mapping Factory

Problems in Internet Mapping Temporary, technology-centered solutions: The lack of an intelligent architecture which can operate in complicated mapping situations and new/unknown environments. Focus on Databases, not on Map Presentation: We need to create a new mechanism for connecting cartographic knowledge with Internet mapping applications.

Information Overload Access hundreds of map layers from different servers How to combine Map-Server-A layers With Map-Server-B layers? Change Symbols? Apply Color Scheme? Create scale threshold? Use Different Projections?

Web Map Users Don’t Have Sufficient Cartographic Knowledge Current Web Maps: Good Interactivity Good Flexibility Poor Quality Poor Design Web Map Users ≠ GIS Users

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

Possible Solution: Intelligent Software Agents Apply cartographic principles to web mapping Software Agents (Cartographers pre-defined)+ User defined rules Establish cartographic rules dynamically (Different tasks have different rules and knowledge base) Create distributed cartography knowledge base (CKB) (Access/Distribute different rules and symbols, color schemes, layout.. via the software agent network)

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

Information Finder / Filter Information Finder Information Filter Carto-rules Rule-2 Rule-3 ~ ~ ~ ~ ~ Rule- 4 Color-scheme = DEM Iso-line rules Interpolation Algorithm KEYWORDS (User-defined rules) Users Color Scheme Landuse-color DEM-color ~ ~ ~ ~ ~ Zoning-color Site-B Site-A Generalization Method-1 Method-2 ~ ~ ~ ~ ~ Method-400 Site-C Examples: Search “Color Scheme” for Digital Elevation Model. Search Methods: 1. Message Broadcasting 2. Agent Roaming 3. Create a “Metadata Repository” to improve the search efficiency

Information Interpreter Data-1 (UTM) Metadata [Buffering] in UNIX Information Interpreter Metadata [Address matching] in Window 2000 Metadata Data-2 (SPCS) Metadata Data-3 (Lat/Lon) Metadata Metadata becomes the source of knowledge bases Automatically convert from “UTM” coordinate systems to “SPCS California VI” by accessing the metadata of GIS data objects. Transform map units from feet to meters. Transform data from ESRI Shapefiles to AutoDesk SDFs.

The Design of Operational Metadata Map display component GIS-operation requirements (A, B) System metadata OtherGIS components GeoData Object Metadata (A, B, C, D, E, F) Metadata describe how the objects should be represented (color, symbols) and the domain of the object (vector, line, transportation). Integrating Self-describing, Self-managing map layers

Agent (decision maker) Decision Maker Events Actions Agent (Information Finder) Agent (Information Interpreter) Agent Collaboration Event: If a new [polygon] data layer is added into point data layers. Agent Collaboration: Info. Finder --> search for cartographic rules Interpreter --> convert cartographic rules into executable procedures. Action: Move [point] data layers above the polygon layer.

Software Agents User-defined rules (Cartographic rules) Task #1 (Client Machine–A) (Working memory) Task #2 (Client Machine–B) (Working memory) GIS data and components framework GIS Component (Buffering) Metadata (Facts) GIS data object (Road, Colorado) Metadata (Facts) User Interface Inference engine RulesFacts Working memory Traditional Expert Systems Intelligent software agent

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

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

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...

Walk-through Example Sd_pointofinterest Metadata: Carto-Type: Point Symbols: star Color: red Size: 7 point Scale threshold: 1:20,000- 1:10,000 Carto Agents retrieve the operational metadata from data objects and apply it on the map design.

Dynamic Cartographic Design Carto Agents re-arrange the layer sequences and reassign new color scheme for the landuse layer Add a new landuse layer (metadata: color = blue) Conflict with current sd_conven layer (same color: blue) Overlap other information

Cartography Ontology (Cartography Knowledge Base – CKB ) Statements: All point layers should be above all polygon layers. First-Order Logic: Computer Program: number  layout sequences (1:top, 2:second..) polylayer(x).number = i pointlayer(y).number = j If (i < j) then { polylayer(x).number = j pointlayer(y).number = i } Above( PointLayer(x), PolyLayer(y) )

Combining Metadata and Rules Cartographic Rule: If the color of the new polygon layer is the same as one of the existing layers, carto-agents will change the color of new layer to a unique color. Computer Program: Color[AllPolyLayers] = [blue, red, green] Color(NewLayer) = NewLayer.metadata.color While ( Color[AllLayers] contain Color(NewLayer) ) { Color(NewLayer) = Color(Randam) }

Inference by Multiple Knowledge Bases Multiple Cartographic Knowledge Bases (CKB): Rule#1: “Landuse” data objects are qualitative. (from San Diego State University) Rule#2: Color-hue is best visual variable for displaying qualitative area data. (from UC-Santa Barbara) Inference: Rule#1 AND Rule#1  Landuse should use “Color-hue” for area symbol display. Computer Program (Software Agents): Landuse.Symbols = ColorScheme(Hue).Attribute(LU)

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 Carto Agent

Software Agent 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),.NET (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)

Current Internet Mapping Intelligent Agent Solution Improve the quality of web maps Create dynamic cartographic design Search for appropriate map styles / color schemes. Establish distributed cartographic knowledge bases. Poor quality of maps - No cartographic principles Problems with multiple data/layer presentation Difficult to apply color schemes / map styles Unknown situation for mapping new data objectsSUMMARY

FUTURE WORK Implementation of Cartography Ontology Convert from “logics and rules” to “computer languages” New Cartographic Principles for New Tasks 3D rules, Layer Transparency, Animation rules, etc. Other A.I. possibility for software agents? Fuzzy logic for scale threshold?, Probabilistic theory for Data uncertainty representation? Neural networks for _______???, PowerPoint Slide is available:

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

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