At ADASS '98 (Koratkar & Grosvenor 1999) we demonstrated SEA's Java-based visual target tuning and exposure time calculation capabilities, for a single exposure. Since that time, we have continued to improve those features and to extend the SEA to support preparation of an entire proposal. Additionally, we have been experimenting with ways to incorporate Expert System technology into the SEA (Grosvenor 2000). We have tried a few and met with mixed results. We discuss our efforts below.
One of the major new features recently added to the SEA is in the area of Multiple Exposure Planning support. The feature consists of two interactive graphic planners, one for the visit and one for the orbit. The main goal of the visit and orbit planners is to provide a high level visual way for users to plan the inter-relationships among multiple visits and exposures. The user can interactively explore different layouts for multiple visits and exposures.
The Orbit Planner displays the relationship between exposures laid out in orbits for a given visit. Note: while ground based observatories will not have individual orbits the users (observers or observatory staff) will, in general, still have to their observations in time.
The Orbit Planner provides several tools to create and define constraints for the exposures within visits. Currently only relational timing constraints and exposure duration constraints are supported. The user can visually inspect the timeline representations of each exposure's individual duration, any observatory-specific overheads, and any exposure constraints.
Additional capabilities include:
The Visit Planner is similar to the Orbit Planner since both use a timeline in their visualizations. The Visit Planner lays all the individual visits in an observing program out across a single observing cycle and allows the user to define constraints among visits within the proposal. The Visit Planner validates the constraints to ensure they are properly defined and consistent with the science requirements and telescope operations.
Additional capabilities include:
Expert System Technology is a branch of Artificial Intelligence research, which focuses on techniques to incorporate detailed domain expert knowledge into software systems. The knowledge is usually embodied in something called a ``rulebase'', which is a collection of rules, and data used by those rules. The rules model the domain logic (aka ``Business Logic'') and usually have an IF-THEN-ELSE format. They are intended to be readable (they say) by non-programmers. The data are typically used to maintain context and state information. Expert Systems generally excel at handling situations where the current state of the data is incomplete or unknown, which is perfect for a multi-parameter proposal development effort.
Early in the development of the SEA, we recognized that there was a great deal of knowledge, both astronomical and procedural, required by an observer to create an observer proposal. From the beginning, the SEA's primary goal was to make it easier to create Phase 1 and 2 observation proposals. We therefore felt it would make the proposal process easier if we could build this expert knowledge into the SEA. The intent was to aid the novice user while acting as a double-check for the experienced observer. However, it wasn't easy to determine the best way to integrate the expert system technology into the SEA. We have made three attempts with varying degrees of success.
The original idea was to use an Expert System as the underlying foundation of the SEA. The expert system rulebase would monitor what the user did then guide the user by generating prompts for information and provided feedback in the form of comments.
The paradigm was loosely modeled after the tax form interview mode in such familiar programs such as MacInTax or TurboTax. The paradigm didn't work well and was abandoned because:
In the second attempt, we dramatically scaled back the scope of the Expert System. It was relegated to a small portion of the SEA, specifically to help with Detector and Filter selection. The Expert System was idle most of the time and only became active when the user selected the ``Assist'' button. The Expert System would wake up and ask two questions: (what passband?, what type of observation?). The Expert System would traverse through its list of available Filters assigning a ``goodness'' factor, indicating how appropriate the filter was for the specific passband. The Filters, sorted by goodness, would be presented to the user for selection.
The rulebase was very small and algorithmic and it might have been better to have written the rulebase as straight Java code, thereby reducing the runtime overhead for rule processing. Rulebases, at runtime, are loaded and interpreted by a piece of code called a Rule Engine. The Rule Engine is a large and complex piece of code and takes many seconds to load and run.
The third attempt is somewhere midway between the two previous attempts. Exposure Dither setting is a new feature of the SEA and it has an Expert System passively watching the user's changes and offering warnings and suggestions as appropriate. The user is free to explore while the Expert System analyzes state changes and makes suggestions in a small text area. Understanding that the users are human with a variety of human temperments, we included a mechanism for the user to completely disable all comments and suggestions.
Like the SEA, the underlying Expert System Technology has also advanced over the past year. Better asynchronous event handling and rulebase modularization were key improvements. These capabilities helped to eliminate the monolithic rulebase problem seen during our first attempt. In addition, since we are not forcing a dialog with the user, we avoid the exploration problems also seen in our first attempt.
Expert System Technology still has a place within the SEA. We feel the combination of the third approach along with the ``Assist'' button technique demonstrate good uses of Expert Systems. The support technology exists so that in the future we will continue to expand the role of the Expert System in to such areas as improved context sensitive help, intelligent automatic optimized exposure layout processing in the Orbit Planner, and efficient and effective orientation and mosaicing techniques in the Visual Target Tuner.
Grosvenor S. 2000, this volume, 695
Koratkar A. , Grosvenor S. 1999, in ASP Conf. Ser., Vol. 172, Astronomical Data Analysis Software and Systems VIII, ed. D. M. Mehringer, R. L. Plante, & D. A. Roberts (San Francisco: ASP), 60