Window systems are important prerequisites for a PSE user interface. A difficult problem emerging in the development of PSEs is the decoding of the dialog between the user and the PSE.
After the problem has been specified with sufficient accuracy, the PSE decides which subsystem or subprogram is to be used to solve it. The selection mechanism ranges from simple decision trees to expert systems whose knowledge base stems from specialists in the particular field. When a knowledge base is established, experience previously gathered is successful solution processes can be utilized by the PSE.
When the internal solution mechanism has produced results, the PSE has to put them into a form which allows the user to interpret and use them. The visualization of numerical solutions is thus an important component of any PSE. Information concerning the condition of a problem can be given to the user during the presentation phase. If necessary, the user will receive a warning that the results obtained are critically dependent on the input data, and the results must, therefore, be interpreted very carefully.
If the user needs assistance, PSEs offer support in the form of help functions. Some users are interested in knowing which solution method was applied by the PSE and why it was chosen. Ideally, these explanations are not just a listing of facts and rules, but rather information in an understandable form.
Available Problem Solving Environments are: statistical PSEs, symbolic PSEs, numerical PSEs. Software systems intended for users who are not trained in mathematics and statistics have been around for a long time. Some examples of symbolic PSEs are the interactive multifunctional systems Mathematica, Macsyma, Maple, Axiom, Derive etc. These PSEs are important in their own right and in connection with numerical software.
The first numerical PSEs were developed for the finite element method. One of the first knowledge based systems was FEASA (finite element analysis specification aid). A variety of attempts have been made to provide decision trees which support the selection of appropriate algorithms or (sub)programs for given numerical problems. The documentation of most numerical software systems (the IMSL and NAG libraries for instance) include such decision aids.
Consequently, PSE is a computer system that provides all the computational facilities necessary to solve a target class of problems. These features include advanced solution methods, automatic and semiautomatic selection of solution methods, and ways to easily incorporate novel solution methods. Moreover, PSEs use the language of the target class of problems, so users can run them without specialized knowledge of the underlying computer hardware or software. By exploiting modern technologies such as interactive color graphics, powerful processors, and networks of specialized services, PSEs can track extended problem solving tasks and allow users to review them easily. Overall, they create a framework that is all things to all people: they solve simple or complex problems, support rapid prototyping or detailed analysis, and can be used in introductory education or at the frontiers of science.