|
| This Article | ||
| ||
| Share | ||
| Bibliographic References | ||
| Add to: | ||
| | ||
| Search | ||
| ||
| ASCII Text | x | ||
| Oren Etzioni, Henry M. Levy, Richard B. Segal, Chandramohan A. Thekkath, "The Softbot Approach to OS Interfaces," IEEE Software, vol. 12, no. 4, pp. 42-51, July, 1995. | |||
| BibTex | x | ||
| @article{ 10.1109/52.391830, author = {Oren Etzioni and Henry M. Levy and Richard B. Segal and Chandramohan A. Thekkath}, title = {The Softbot Approach to OS Interfaces}, journal ={IEEE Software}, volume = {12}, number = {4}, issn = {0740-7459}, year = {1995}, pages = {42-51}, doi = {http://doi.ieeecomputersociety.org/10.1109/52.391830}, publisher = {IEEE Computer Society}, address = {Los Alamitos, CA, USA}, } | |||
| RefWorks Procite/RefMan/Endnote | x | ||
| TY - MGZN JO - IEEE Software TI - The Softbot Approach to OS Interfaces IS - 4 SN - 0740-7459 SP42 EP51 EPD - 42-51 A1 - Oren Etzioni, A1 - Henry M. Levy, A1 - Richard B. Segal, A1 - Chandramohan A. Thekkath, PY - 1995 KW - softbots KW - artificial intelligence KW - interfaces KW - planning VL - 12 JA - IEEE Software ER - | |||
We present a new, goal-oriented approach to the operating-system command interface. A goal-oriented interface lets a user specify what to accomplish, leaving the decision of how to accomplish it to the system. This idea is widely accepted in the functional- and logic-programming communities, but current operating-system interfaces do not support it. In typical modern operating systems, primitives are not available for many common user requests. Currently, the user must write a script or program that composes existing commands.
Our approach obviates the need for any programming by the user. We have designed and implemented software robots called softbots: agents that perform high-level tasks on the user's behalf. Softbots use a database that describes the available system primitives. This database describes each primitive in terms of its input, its output, and any conditions that must be met for the primitive to be used. Given a user-specified goal, the softbot constructs a sequence of primitives and invokes them to accomplish that goal, making decisions along the way based on intermediate results and existing conditions. The softbot chooses the most effective means of accomplishing a particular task, relying on commands or information the user may not know.

