University of Michigan
Ann Arbor, MI 48109
Digital libraries must likewise provide organizational schemes, as well as a wide variety of services. While it is generally assumed that vast amounts of information will be available through digital libraries (and delivered in new and interesting ways) it is the bounty of services that we believe will ultimately demonstrate the potential of digital libraries.
The University of Michigan Digital Library (UMDL) project (Birmingham et al., 1993) is a large-scale, multidisciplinary effort to design, build, and deploy a flexible, scalable infrastructure for rendering library services in a digital networked environment. When fully developed, the UMDL will provide users with a wealth of information sources and library services. Moreover, because we cannot pretend to anticipate to anticipate all the types of services that will eventually constitute a digital library, the UMDL will provide a medium for third-party developers to produce and deliver new services and collections.
We are deploying the UMDL in three different arenas aimed at fundamentally different users: secondary school science classrooms, the University library, and space-science laboratories. Computer skills, information demands, and level of subject knowledge vary greatly among these user populations. Addressing the special needs of high school students within a general-purpose digital library particularly stresses the flexibility of our underlying architecture by forcing us to support services quite distinct from the standard fare found in other digital libraries or on the world-wide web.
The UMDL project is designed to accommodate this diversity, with special focus
on inquiry-based education in secondary schools. At a time when a number
of researchers and policy groups argue that students need to engage in
sustained inquiry activities to promote more in-depth understanding of science,
the wealth of resources available through digital libraries provide an
outstanding opportunity to vitalize science education in public schools.
However, we must be careful to avoid inflated expectations (typical in the
annals of technology in the schools), recognizing that technology is just one
part of a complex educational environment. An entire complex involving
students, teachers, and curriculum materials and plans must be woven together
for a successful digital classroom library.
This paper describes how we are addressing our ambitious scale and
heterogeneity requirements through the design of an open, distributed
environment for interacting software agents. We present key features of the
UMDL architecture--including automated team formation, structuring the
information space, and market-based resource allocation--that support the
coordination of agent activities in the provision of library services. After
returning to the challenge of inquiry-based education, we conclude by outlining
the status of this project, including current content and capabilities of the
UMDL and its deployment in the Ann Arbor high schools.
Distributing tasks to large numbers of specialized, fine-grained modules
promotes modularity, flexibility, and incrementality, as new services can come
and go without disturbing the overall system. We refer to these modules as
agents, emphasizing their local knowledge about specific tasks, and
their autonomy with respect to the overall system. Limiting the complexity of
any individual agent simplifies control, promotes reusability, and provides a
framework for tackling the interoperability problems. Each agent supports a
highly specialized library task, as well as a generic communication interface.
The advantage of this combination is that the task competence made possible by
specialization can be brought to bear in a wide variety of situations, through
flexible interaction with other agents.
For example, in formulating a query, it may be useful to generate synonyms for
specified terms, in order to produce query variants that are likely to find
relevant documents. In an alternate search scheme, synonyms might be useful in
assessing how well some text matches an already formulated query. By
encapsulating a general synonym service within a specialized
thesaurus agent, we can provide the component functionality without
committing to how it is to be employed system-wide.
2.
Distributed Agent Architecture
2.1
Strategy: Agents for Specialized Tasks
Because digital-library technology is changing at such a rapid pace, we believe
that it is critical to accommodate future innovations in user interfaces,
search engines, and the structure of information sources. Rather than adopt
specific standards, therefore, we define a system architecture that performs
generic management operations, such as allocating resources to user-requested
tasks and brokering connections among collaborating system modules. For
instance, the UMDL architecture specifies a language and protocol for
communicating about informational or processing capabilities and interests, so
that users and collections can be brought together appropriately. At that
point, however, what they do with that connection (how they interact to
accomplish their task) is not determined at the level of our architecture.
2.2
Agent Types
Figure 1 depicts the three broad classes of agents populating the UMDL:

Figure
1: UMDL agent types.The agent architecture serves modularity and extensibility by enabling us to develop specialized capabilities, and add these capabilities to the UMDL as needed. For example, by introducing new UIAs, we can create user interfaces that are customized to a particular class of users rather than to a particular collection or access mechanism. These UIAs, in turn, can call on any mediator services available in the system.
Of course, agents are more likely to be frequently used if they communicate in more widely-adopted languages. In particular, a desire for broad interoperability between information sources and user interfaces in the UMDL can provide incentives to support standards like Z39.50 that are in wide use in libraries. This increases the likelihood that a query posed by a user could be answered by diverse collections in the UMDL. While standardization of this sort has significant benefits (and in fact many current UMDL agents do communicate in Z39.50), it is not a requirement for joining UMDL.
The capabilities of a specialized agent will remain untapped unless the agent
can make its abilities and location known, and participate in the
team-formation process. We thus define special protocols for the team formation
and negotiation tasks, shared by all UMDL agents. These UMDL protocols
represent the third level of abstraction in agent communication.
2.3.2
Conspectus Language
UMDL agents are defined by the information content they can deliver, the
information services they can render, or both. To participate in UMDL
protocols, agents need a language for describing these capabilities, including
what they can contribute to an agent team, and what their limitations might be
(e.g., task-specific protocols they can speak). Facilitators can also use this
Conspectus Language (CL) to describe (perhaps partially) capabilities
that are required to participate in a team. CL thus serves both as a language
for disclosing capabilities and for querying about capabilities.
To discern the intent of a message incorporating CL or other expressions, the
UMDL protocols adopt a flexible notion of message types, patterned after KQML
(Finin et al., 1994). UMDL message types (called "performatives" in KQML)
correspond to high-level communication acts. For example, messages intended to
inform are of type TELL, and the purpose of ASK messages is to elicit
information. CL expressions can be included in the content of a message, with
the message type dictating the intent of the message (conveying what the
recipient is supposed to do with the supplied content). The UMDL protocols
define a small number of standard message types that all agents should be able
to interpret and process appropriately.
2.3.3
Registry Agent
The UMDL protocols are designed to allow agents to advertise themselves and
find each other based on capabilities. Rather than have every agent maintain
individual models of all others and periodically broadcast its descriptions to
every other agent, we employ a designated registry agent. The registry
is special in several respects. First, it is assumed to be known to all other
agents at their inception, thus avoiding the bootstrapping problem. Second, all
agents are capable of communicating with the registry using the UMDL protocols,
as detailed further below. Third, the registry provides its services for a
static price (currently free).[2]
The registry agent maintains a database containing information about all the agents in the UMDL system, including their respective content and capability descriptions. The registry agent accepts descriptions expressed in CL, and updates the database accordingly. Descriptions contained in the registry specify the following types of characteristics:
< CL description {
<Agent_ID AID_777>
<Agent_type Author_index>
<Capability
<Author *$A> <CIA $U*> >
<Task_Language SQL>
<Content
<Broad_Topics 'SCIENCES'>
<Last_updated 12.31.1995>
<Frequency_of_update end_of_year> >
<Pricing fixed (1-bibliobuck-per-search) >
<Content_Language {English,German,Latin}> }
The author index agent is representative of a general class of UMDL agents that
support search across a fixed set of information sources without executing the
search request in each of them. Its CL description specifies its type and
describes the service it provides in terms of what interactions are supported.
The <Capability> field specifies that the agent accepts queries with a
specific author $A as bound input parameter, and returns the associated CIAs
for all collections in which the author is known to appear (cf. (Rajaraman et
al., 1995)).[3] It does not, however,
accept requests of the reverse order--asking for authors associated with a
particular collection. The registry agent communicates using UMDL protocols, translating incoming requests into queries on the registry database. Since the availabililty and fault-tolerance of this service is critical, we employ a persistent implementation of the registry database, currently using an SQL server. This supports the basic properties of consistency, concurrency, and recovery, and enables a high throughput of concurrent agent requests. Our second-generation registry agent, under development, uses a more powerful, distributed, and open architecture.[4]
Within UMDL, search takes several forms. Once a user (represented by a UIA) is in contact with a collection (CIA), the search concerns documents from the collection that satisfy the user's specifications. We refer to this level of search as collection search. Before collection search takes place, however, appropriate collections must be identified from among the multitude of those available based on how agents have described themselves in the conspectus language. We refer to this level of search as conspectus search. Finding mediators with particular capabilities is another form of conspectus search. In the UMDL, these various types of search are interleaved in order to accomplish an overall task.
There are two modes for interacting with (both searching and browsing) collections. If the UIA knows which collection is desired (perhaps based on a prior conspectus search, described in Section Error! Reference source not found.), then the user connects directly to this collection's CIA and uses the native retrieval facilities. Alternately, the UIA may conduct a search across collections, relying on an information fusion agent to organize the results, combining or ranking the retrieved information for presentation to the user.
A conspectus search task is formulated in terms of the content or services sought and the search process to be employed in finding them. A description of a particular conspectus search task includes:
While some conspectus searches can be as simple as retrieving one or more relevant entries from the registry based directly on the request, other searches can involve the pooled capabilities of a team of agents to reformulate the user's request and balance the conflicting demands of search thoroughness and cost. The expertise required for this kind of task can be embedded in a query planning mediator.
Query planning mediators embody specialized knowledge about how to seek out information sources in response to a user's query. These procedures are based on interviews with librarians, and specify the flow of control among various resources within the UMDL that can help find and deal with relevant collections. Depending on user characteristics, library load, desired completeness and timeliness of the conspectus search, different procedures may be invoked. Since these procedures in turn can post subtasks that could be accomplished in a variety of ways (again, depending on the context), the query planning mediators provide a flexible mechanism for performing conspectus search.
Figure 2 illustrates the kinds of activities that might be invoked by the query
planner. The nodes contain the name of the task and, in some cases, the names
of some of the procedures for achieving it. The arrows represent subtask
relationships. The actual procedure executed by the query planner depends on
context, as specified by our consulting librarians. And, because the various
capabilities are possessed by different agents within the UMDL, the elaboration
of procedures by the query planner dynamically builds a team of agents that
together accomplish the task. We present a brief example of this in Section 7.1
below.
Figure

To organize the processing activities within an economic framework, we view the interactions between agents as supplier-producer relationships, where each agent produces value-added information products from the input products provided by others (Wellman, 1993). Agents dynamically connect as opportunities arise for mutually beneficial exchanges. The collections provide some ultimate "raw materials" in this process, whereas the end users are the ultimate consumers of the "finished goods". The mediators ("middlemen") bridge the gap by bringing to bear knowledge, processing, storage, or other computational resources to improve the value of the information as it passes from agent to agent.
For example, from knowledge of the concepts NPR and Broadcast, we can construct a description of the concept NPR Broadcast. Since one of the possible operations which can be performed on Broadcasts is to make Transcripts from them, it follows that there is a meaningful notion of NPR Transcript. Parametrization provides extra degrees of freedom: for example, NPR Transcripts may be qualified by date and topic.
The name "remora" derives from a kind of fish that attaches itself to sharks and other large swimming things. In the UMDL, remoras attach themselves to CIAs for the purpose of detecting events. The remora works on behalf of other UMDL agents (typically UIAs) by accepting scripts specifying the events of interest and the actions to be taken when the events occur. For example, a script might ask for e-mail notification (perhaps accompanied by a convenient order form) whenever a new image from the Hubble Space Telescope is added to an accessible collection. Another script might define filters to extract articles matching current curricular items from a web page, and include processing instructions to add them to a particular portfolio document in a specified way. This process is depicted in Figure 3.
Figure 
The remora participates in the UMDL information economy through several
markets. Remoras compete with each other and perhaps other subscription agents
to supply the service of running scripts. At the same time, remoras must bid
for the right to receive events (i.e., attach to CIAs), and to acquire the
computational resources required to process them.
6.
Supporting Inquiry-Based Education
As noted in the Introduction, merely wiring a classroom to the Internet--or
even to a digital library--will not create an environment where students learn
through inquiry (Soloway, 1995). Existing Internet-based tools do not
effectively support access to digital resources and do not support the
ancillary tasks necessary to conduct sustained inquiry within the constraints
of the secondary school classrooms (e.g., 50-minute class periods are very
confining for students and teachers trying to engage in inquiry). Our strategy,
as represented in the following two vignettes, is to understand the real
challenges in the classroom and design UMDL services that explicitly address
these needs and goals.
There are at least two types of UMDL agent services designed to facilitate development and management of curriculum materials. First, we are developing a customized version of the query planning agent (Section 3.4), called QuickScan, that uses specialized knowledge of pedagogical relevance to enable a teacher to quickly search and retrieve material likely to be useful in the high school science class. For example, the QuickScan agent focuses on collections that are age appropriate, and have a range of non-textual media types (e.g., video, images, sound). Note that students too will be able to use QuickScan to find relevant information in a timely manner.
Second, the remora agents (see sidebar) provide a time-saving mechanism for teachers to monitor the development of on-line materials. For example, (1) while the WWW contains a plethora of sites potentially relevant to curriculum topics, a large percentage of them are still not sufficiently developed to permit effective classroom use; (2) while there are web sites that provide information resources about current events (e.g., volcanic eruptions, telescope images), checking sites manually is tedious and time consuming. Remora agents will help teachers monitor the evolution of these sites, permitting those materials to be easily incorporated into the portfolio of on-line curriculum materials.
Our strategy is to provide UMDL services, interfaces and agents that support and scaffold (i.e., provide explicit support for) students' learning through the search process. For instance, the UMDL search interface will provide a range of tools from spell checking to content-specific thesauri, to help sharpen query formulation. We are developing a UIA with an interface designed to scaffold query reformulation in particular, as we have found that students have great difficulty in "re-searching" and following a coherent line of exploration.
A second real problem faced in classrooms is the lack of collaboration among students. Substantive classroom conversation is a key component of learning (Brown and Campione, 1996); just as professionals continually engage in discourse in order to invent, explicate and refine their ideas, students need contentful dialog for these same reasons. Classroom interaction is facilitated when students have something to talk about. We are developing interface, registry, and search agents that make it easy for students to share with each other the fruits of their on-line searches, thus providing artifacts, or things, for them to discuss. For example, one group of students who have built up a collection of on-line materials on a specific topic can register that collection in the UMDL; other groups of students in the class will be directed to that collection first by the search agents.
Fast, simple registry of student-generated work is also allowing students to more easily publish their findings in the UMDL. For example, a class of 11th graders recently completed a six-week unit on water contaminants; each group of two students took a different water contaminant, wrote a report (that typically included biological, chemical, and ecological issues), and then published it on the world-wide web. These students were filling a gap: until their effort there was no comparable site on the web with an in-depth treatment of various water contaminants. When students feel that their ideas are respected--even desired--their motivation is greatly heightened. Typically this translates into more engagement and more effective learning.
For a simple task, the query planner is given a query that matches entries in the registry, requiring little interaction among the various services (as summarized in the communication matrix generated by the remora, Figure 4a). A more difficult query, however, causes the query planner to invoke the BSO and thesaurus agents to reformulate the query in terms of topics about which some collections have professed capability. These communications are summarized in Figure 4b). These examples, while simple, are suggestive of the kinds of dynamic and flexible interactions among agents that we rely on to fulfill our ambitious vision for the UMDL.
(a) Figure 4a goes here.
(b) Figure 4b goes here.
Figure
By May 1996, we expect that over 1,000 students will have used UMDL services. Working in a handful of classrooms is an important start, but our aim is not merely to make successful innovation on a pilot level. Our fundamental goal in this work is to understand the range of issues that arise in making digital library technologies feasible for implementation in school settings, and relevant to today's classrooms.
In building the UMDL, we are addressing many difficult issues of scale, decentralization, interoperability, and resource allocation. Our approach has been to define very general mechanisms, and then test them with specific instances of software agents and protocols that use these mechanisms to provide library services.
Although our work on the UMDL must still be regarded as preliminary, it is already clear from our first year and a half of effort that the scale and diversity of the digital library conceived here will put to the test our technical ideas--on distributed agents, interoperability, mediation, and economic allocation of resources--and will likewise test our theories about the role and impact of educational technology.