17043790
Collaborative, programmable intelligent agents
A growing number of computer systems,in the hope that such simulations w as we had thought. More recently, however, resources for such work can be obtained from untapped source: the generation of extremely large numbers of graduate students and their subsequent application to the creation of alternate “Simulating Complex Adaptive Systems -What can we really learn?” Dr. B. Rubble Bedrock Inst. Brub@bedrock.edu Friday, December 6, 1996 11:00 a.m. – 12:00 noon Singapore Rm. 1st Floor R&D Building #1 Place on electronic calender brub@bedrock.edu Friday,December 6, 1996 11:00 a.m... Mail to secretary for scheduling Done Figure 1. Sample invocation of Apple Data Detectors. The user has selected a portion of an email message describing an upcoming seminar. Two patterns are found: an email address (brub@bedrock.edu) and the announcement of the meeting (the sequence of date and time information starting Friday, Dec. 6, 1996). These patterns are presented in the pop-up menu; by pointing at the date information in the menu; a second pop-up menu offers a choice of actions: place an entry for the meeting on the user’s electronic calendar or mail the selection to the user’s secretary. The user can select one, thereby running a small application, or move the cursor off the menu, eliminating the pop-up menu and canceling any actions. agents also varies across different agent-based systems; some act only within one’s own machine, find others autonomously crawl the Web, searching for interesting content [4]. We tried to find a middle ground by using explicit representations of user-relevant information as a means of identifying actions users might wish to take but to leave the choice of these actions to users. Working with Information Inside User Documents Our first step was to find a user problem that needed solving in which intelligent agents would add value. In an investigation of how people file information on their computer desktops [1], we discovered that a common user complaint is that they cannot easily take action on the structured information found in everyday documents (structured information being data-recognizable by a grammar). Ordinary documents are full of such structured information: phone numbers, fax numbers, street addresses, email addresses, email signatures, abstracts, tables of contents, lists of references, tables, figures, captions, meeting announcements, Web addresses, and more. In addition, there are countless domain-specific structures, such as ISBN numbers, stock symbols, chemical structures, and mathematical equations. These structures are not only relevant to users, but because of their structure, are also recognizable by parsing technologies. Once identified, the structure’s type can be used to identify appropriate actions that might be carried out, like placing a meeting on a calendar, adding an address to an address book, dialing a phone number, opening a URL, finding the current price of a stock, filing an ISBN number, and compiling a list of abstracts. Apple Data Detectors supports a wide range of uses. Think of all the structured information in the documents you work with; in addition to those mentioned already, add bibliography items, forms (such as travel expense reports and non-disclosure agreements), executive summaries, and most important, such domain-specific kinds of data as legal boilerplate, customer orders, and library search requests. Specific detectors can be created for each of these types of information. User interface. To use Apple Data Detectors, users select a region of a document with some information of interest. Pressing a modifier key and the mouse button instructs the system to analyze the data within the selected region and to find all structures for which it has grammars. It then offers appropriate actions for each structure (see Figure 1). For example, for users reading email who come across a seminar announcement they would like to put on a calendar, Apple Data Detectors parses the relevant information within the selected text, including the meeting’s place, time, and date and puts this data into the appropriate fields on the calendar. A user can select a whole document or part of a document without having to make a careful selection; the grammars find any embedded structures they know about within the selection and offer an appropriate set of actions from which to choose. The use of anthropomorphism in an agent interface [12] was incongruent with our goal of unobtrusiveness. We designed Apple Data Detectors to be invis98 March 1998/Vol. 41, No. 3 COMMUNICATIONS OF THE ACM User Application Presentation User Interface Apple Data Detectors Detectors Database Actions Folder HTTP = (Http Protocol, Host, Port?, Path?, {Http Location, Http Search} ? ) Http Protocol = {“http://”, “https://”} Port = (“:”, Port Number) Port Number = Digits Figure 2. The Apple Data Detectors architecture, which separates the application in which the information is found, the presentation of the analysis and possible actions, and the analysis of the information itself. This separation means that Apple Data Detectors can be invoked in any application and that the user interface can be implemented, refined, and evolved separately from the analysis module. Figure 3. A grammar to define a URL. The language implements a context-free grammar in which sequences of terms are matched against the input stream. References to other grammars are permitted, as are optional and repeated terms. Here, the HTTP grammar finds a match when it finds an HTTP protocol, a host, a port (optional), a path (optional), and either an HTTP location indicator or an HTTP search command and arguments.
14392520
An ethnographic study of distributed problem solving in spreadsheet development
In contrast to the common view of spreadsheets as “single-user” programs, we have found that spreadsheets offer surprisingly strong support for cooperative development of a wide variety of applications. Ethnographic interviews with spreadsheet users showed that nearly all of the spreadsheets used in the work environments studied were the result of collaborative work by people with different levels of programming and domain expertise. Cooperation among spreadsheet users was spontaneous and casual; users activated existing informal social networks to initiate collaboration.
1650301
The spreadsheet interface: A basis for end user programming
468883
Research and commercial opportunities in Web-Based Simulation
Abstract In a few short years, Web-Based Simulation has exhibited explosive growth in the simulation research community. This paper which grew out of a panel discussion at the 2000 WEBSIM Conference, briefly reviews the development of this research area and considers future opportunities, both on the research and commercial sides. On the research side, the area is maturing, but still quite active. Efforts to expanded Web-Based Simulation to include new capabilities beyond those found in conventional simulation technology or provide interoperation with other information processing technology are particularly promising. On the commercial side, a critical mass of research knowledge is now available. However, some catalyst is needed to produce any substantial movement of simulation vendors toward Web-Based Simulation. This could happen quickly under a couple of scenarios: A small simulation vendor focused on Web-Based Simulation could begin to claim significant market share. Alternatively, the development of a “killer-app” to demonstrate a clear advantage to Web-Based Simulation could make this shift happen very quickly.
16289956
Scenario management in Web-based simulation
Internet communications in general and the World-Wide Web specifically are revolutionizing the computer industry. Today, the Web is full of important documents and clever applets. Java applets and servlets are beginning to appear that provide useful and even mission critical applications. From the perspective of simulation, a future Web will be full of simulation models and large amounts of simulation-generated data. Many of the models will include two or three dimensional animation as well as virtual reality. Others will allow human interaction with simulation models to control or influence their execution no matter where the user is located in the world. Analysis of data from Web-based simulations involves greater degrees of freedom than traditional simulations. The number of simulation models available and the amount of simulation data are likely to be much greater. In order to assure the quality of data, the execution of models under a variety of scenarios should be well managed. Since the user community will also be larger, quality assurance should be delegated to agents responsible for defining scenarios and executing models. A major element of simulation analysis is the analysis of output data, which manages the execution of simulation models, in order to obtain statistical data of acceptable quality. Such data may be used to predict the performance of a single system, or to compare the performance of two or more alternative system designs using a single or multiple performance measures.
8365397
Input modeling when simple models fail
A simulation model is composed of inputs and logic; the inputs represent the uncertainty or randomness in the system, while the logic determines how the system reacts to the uncertain elements. Simple input models, consisting of independent and identically distributed sequences of random variates from standard probability distributions, are included in every commercial simulation language. Software to fit these distributions to data is also available. In this tutorial we describe input models that are useful when simple models are not.
14082423
Neutrality and the Evolvability of Boolean Function Landscape
This work is a study of neutrality in the context of Evolutionary Computation systems. In particular, we introduce the use of explicit neutrality with an integer string coding scheme to allow neutrality to be measured during evolution. We tested this method on a Boolean benchmark problem. The experimental results indicate that there is a positive relationship between neutrality and evolvability: neutrality improves evolvability. We also identify four characteristics of adaptive/neutral mutations that are associated with high evolvability. They may be the ingredients in designing effective Evolutionary Computation systems for the Boolean class problem.
7959746
Authorization and Access Control of Application Data in Workflow Systems
Workflow Management Systems (WfMSs) are used to support the modeling and coordinated execution of business processes within an organization or across organizational boundaries. Although some research efforts have addressed requirements for authorization and access control for workflow systems, little attention has been paid to the requirements as they apply to application data accessed or managed by WfMSs. In this paper, we discuss key access control requirements for application data in workflow applications using examples from the healthcare domain, introduce a classification of application data used in workflow systems by analyzing their sources, and then propose a comprehensive data authorization and access control mechanism for WfMSs. This involves four aspects: role, task, process instance-based user group, and data content. For implementation, a predicate-based access control method is used. We believe that the proposed model is applicable to workflow applications and WfMSs with diverse access control requirements.