AGENT-BASED, COLLABORATIVE IMAGE ... - Semantic Scholar

7 downloads 0 Views 37KB Size Report
Geospatial processing Architecture (AIGA), encapsulates image processing functionality in agent form, allows for collaboration among agents through an Agent ...
AGENT-BASED, COLLABORATIVE IMAGE PROCESSING IN A DISTRIBUTED ENVIRONMENT James J. Nolan, Arun K. Sood, Robert Simon Center for Image Analysis Department of Computer Science George Mason University Fairfax, VA USA {jnolan, asood, simon}@cs.gmu.edu ABSTRACT This paper introduces a scalable, ¤exible agent-based architecture for collaborative image processing. This architecture supports collaboration and reuse by de£ning a set of £ne-grained image processing agents and a combined knowledge encoding and Agent Communication Language called I-XML. Scalability and reuse are achieved by employing a collaborative communication structure. Agents do not communicate directly; rather, collaboration and reuse goes through a shared page space that stores I-XML pages. We show how this approach simpli£es system design and facilitates collaboration and information sharing among area experts. This architecture is speci£cally designed to allow agents to answer open-ended queries, such as ”what is the current situation at the border between two countries.” The credibility of answers to such a question is aggregated using a methodology based on the Dempster-Shafer Theory of Evidence. We have implemented this architecture in a Java environment using Jini middleware. We believe the resulting system demonstrates the effectiveness of our approach in constructing large-scale query-driven image processing systems. 1. INTRODUCTION Previous architectures for large-scale image processing of space-borne, remotely sensed imagery have either been monolithic and stand-alone [1] or in the client-server paradigm [2]. Such systems are used in the intelligence gathering, cartography, and resource management domains. It is typical for these systems to process hundreds of images per day that each range from 100 Mb to several gigabytes in size. Expected increases in the amount of space-based remotelysensed image data [3, 4] require new image processing software architectures to be developed to meet this demand. We This work is supported by the National Imagery & Mapping Agency .

have designed an agent-based architecture that addresses this acknowledged problem through two approaches: ¤exibility and collaboration. Our architecture is ¤exible in the sense that it allows for new image processing functions or new computing resources to be easily inserted into the system. Additionally, our architecture allows for agents to take advantage of computing resources distributed throughout the network based on a decision process executed at runtime. Our architecture de£nes a collaborative model that is necessary to answer complex queries that are found in image analysis. Such a architecture is required for several reasons. First, the required resources to answer a particular request or query are not always known in advance. Second, time-sensitive image processing systems need to be able to scale up to support widely distributed collaborators and information repositories. Third, queries posed to image processing systems don’t always have single, or even clearly de£ned answers. This architecture, called the Agent-based Imagery and Geospatial processing Architecture (AIGA), encapsulates image processing functionality in agent form, allows for collaboration among agents through an Agent Communication Language called I-XML, promotes distributed processing through agent mobility, encourages knowledge reuse through a shared knowledge repository, and introduces an information fusion concept through the use of agent collaboration. 2. THE AIGA ARCHITECTURE The AIGA architecture can be decomposed into £ve basic components: Agents, the Collaboration Switch, Locations, the I-XML Page Space, and I-XML Pages. A logical view of the architecture can be seen in Figure 1. The components are query driven, triggered by a query such as ”Perform change detection over Washington, DC between January 2000 and January 2001”. This query is parsed by

Collaboration Switch

Geospatial Agent

Loc.

Loc.

Image Library

I-XML Page Space

Loc.

Imagery Agent

Name Server Loc. Imagery Agent Loc. Geospatial Agent

Geospatial Library

Fig. 1. AIGA Architectural Diagram the Collaboration Switch, and Agents are then deployed for processing. In the following sections, we discuss the components of the architecture in detail.

Change Detection George Mason University StartDate

2.1. I-XML Pages Before we can discuss the other components in the the system, we must discuss the concept of I-XML pages. These pages serve two purposes: 1) they describe agent capabilities, and 2) they serve as a way for agents to communicate with one another.

Date EndDate Date Image 2

2.1.1. Agent Description

1

Image processing services are fundamentally composed of: a name, a required and/or optional set of parameters, input data types, and output data types. In addition, there may be other descriptive information such as the service creator, or documentation on the service. For example, to perform change detection, the name of the operation is ”Change Detection”, the parameters are a start and end date, and the number of inputs is 2. An example of this service description, used to describe a service as it becomes available on the network, is shown in an I-XML fragment in Figure 2. 2.1.2. Agent Communication In addition to describing services, I-XML allows the assembling of an answer to a speci£c query through agent communication. This page consists of a Query, a Baseline Representation, Computational Steps, Processing Strategy, and Results of processing. The page is constantly updated as agents determine results.

Fig. 2. Example Service Description

The Query section represents a question that an analyst wishes to have answered. The Baseline Representation contains information about the geographic location of the query. For example, this may include a bounding rectangle of the region of interest or a place name such as a country or city. The Computational Steps represent the steps necessary to answer the query. For example, in the Change Detection example, the steps would include: image retrieval, image registration, and £nally, change detection. This is essentially a listing of the steps required to determine the resultant information, however this list has not been optimized to take advantage of any parallel processing opportunities. The Processing Strategy re£nes the Computational Steps into an optimal processing graph, which is the exact series

of steps required to minimize the time required to complete the task. This includes identifying opportunities for parallelism, essentially determining independent steps that can be executed simultaneously. The Results tag represents any outputs of services that may help to answer the query. As the query is executed and results are returned from agents, the Results tag is updated with information that may include references to intermediate processing results as well as the £nal answer to the query.

presented back to the originator.

2.2. Functional Agents

3. FUSION THROUGH AGENT COLLABORATION

AIGA is essentially comprised of three classes of functional agents: Agents that provide image processing services, agents that provide an interface between a user and the system, and agents that allow access to a data repositories available on the network. Image processing agents are capable of locating, indexing, processing and transmitting imagery data. These agents represent core image processing services, such as image convolution or fourier transform. By taking £ne-grained approach to our agent architecture, we allow for these agents to be composed into higher-level services that solve larger problems, as in our change detection example. This example requires the interaction of several agents: an image retrieval agent, an image registration agent to position the two images relative to one another, and £nally a change detection agent to calculate the level of change. Data access agents provide the interface to data repositories on the network. In our architecture, we have an Image Data Server and that both contains a library of data. This data server has an associated agent that provide other agents on the network with a way to retrieve and insert image data into the repository. Client interface agents act as the interface to the AIGA system. The Client agent acts as the medium between the user and the system. The client agent submits a query on a user’s behalf, listens for results to that query, and presents any results to the user.

2.4. Locations Locations provide the physical computing space where agents may execute. The Collaboration Switch keeps track of the available locations, and their current processing load so that processing tasks are effectively distributed. These can be represented as actual or virtual computing locations.

As the complexity of any task increases, more experts will get involved in building the answer to that task. As more experts are involved in the analysis process, it is likely that con¤icts will arise. For example, after a user attempts to answer a question, like the change detection example presented earlier, it may be possible that some agents will return with an answer of ”YES” while some may return with an answer of ”NO”. Further, if we look at a more detailed part of that question, the magnitude of the change, different agents are likely to return answers that cover a range from small to large. To resolve these con¤icts, we introduce the concept of a Result Credibility Index (RCI). Using this index, agents answering the £rst part of the question would indicate a conclusion (YES or NO) and attach an RCI value to that conclusion. Similarly for the second part of that question the agents would categorize the result between small to large and then assign an RCI. We are implementing a methodology to aggregate the RCI from inputs from several agents. The RCI aggregation process is a component of the Collaboration Switch and provides both the aggregate and the raw data from individual agents as an output. Bayesian probability approaches can be used to perform such an aggregation. However, these methods require the de£nition of many a priori probabilities, and for this reason we are also considering another approach based on the Dempster-Shafer Theory of Evidence [5, 6]. Such approaches have been developed for multi-source image classi£cation previously [7].

2.3. Collaboration Switch The Collaboration Switch (CS) serves as a resource for the other agents in the system. It provides a directory, or ”yellow pages” of other agents and locations available on the network. The CS yellow page also has a list of I-XML pages that can be of interest to current and future users because they encode computational steps or processing strategies that may be of interest. The CS also provides a ”white page” listing of AIGA users and active collaboration sessions. Users are identi£ed by their associated client agents, and the current state of an active collaborative session is encoded as an I-XML page. In addition, the CS is responsible for distributing agents, and aggregating results to be

4. KNOWLEDGE REUSE Image processing systems require that many processing tasks are used repeatedly in the analysis process. Many times, the goal of the task is very similar, with some slight change that is independent of the processing steps. For example, we have illustrated the change detection example. Now let assume that next week we are interested in answering the query ”Perform change detection over New York City between January 2000, and January 2001?”. These two queries are very similar, with the only change being the geographic location. By comparing these two queries, the Col-

laboration Switch can easily suggest a set of computational steps and a processing strategy to answer the question based on a prior scenario. We have implemented a reuse approach based on I-XML pages. Prior to developing the Computational Steps and Processing Strategy for a particular task, the Collaboration Switch accesses the I-XML page space. This space is where I-XML pages can be stored, searched, and retrieved. When a new query is submitted to the system, the CS can search prior processing strategies, correlate queries, and recommend an approach based on discovered prior queries. This appraoch facilitates reuse, reduces computational time, and facilitates collaboration among experts. 5. SUMMARY We have presented an agent-based architecture for collaborative, distributed image processing. We have implemented a prototype system in Java using Jini middleware for agent mobility, Java Spaces for agent collaboration, the Java Advanced Imaging API for image processing functionality, and the Xerces XML parser for I-XML page parsing. 6. REFERENCES [1] C.R. Guarino, “Performance modeling of an all softcopy image analysis and exploitation system,” in IEEE 1999 International Geoscience and Remote Sensing Symposium, 1999, pp. 1155–1157. [2] P. Vittorini and P. DiFelice, “A java rmi-based application supporting interoperability in a gis context,” in Technology of Object-Oriented Languages and Systems, 1999. TOOLS 31, February 1999, pp. 428–439. [3] A.M. Florini and Y. Dehqanzada, “Commercial satellite imagery comes of age,” Issues in Science and Technology, Fall 1999. [4] Courtney A. Stadd and Glenn H. Reynolds, “No strings attached? commercial remote sensing companies hope that u.s. government policy will keep pace with the industry’s rapidly expanding needs,” Imaging NOTES, vol. 14, no. 4, pp. 20, July-August 1999. [5] A.P Dempster, “Upper and lower probabilities induced by a multi-valued mapping,” Ann. Math. Statist., vol. 38, pp. 325329, 1967. [6] G. Shafer, A Mathematical Theory of Evidence ,, MIT Press, Cambridge, 1976. [7] S. Le H egarat Mascle, I. Bloch, and D. Vidal-Madjar, “Application of dempster-shafer evidence theory to unsupervised classi£cation in multisource remote sens-

ing,” IEEE Trans. Geosci. Remote Sensing, vol. 35, pp. 1018–1031, July 1997.

Suggest Documents