Research work Members Publications Softwares What's new? Site map
Action ROMANS Research work
Research work
Problem solving environment
     
 
Knowledge representation
Automatic modeling
Problem solving environment
Academic cooperation
Industrial cooperation
Automatic program supervision consists in helping unexperienced users to use programs (libraries, modules, or software components) by allowing them to characterize the problem
 to be solved, to select among the solving methods those which are the best adapted, to adjust unknown parameters of the solving methods so that a solution can be found, and to link the executions of all the sub-methods required by the solving process.

The objective of the ROMANS Action is to ease both the description and the execution of a partial or total automatic processing chain. The chosen approach relies on a knowledge base whose model allows the user to describe the problem to be solved as well as the needed solving methods, and to explicit the data flow between the programs so that their executions can be connected. This model, called task model, is the support of numerous program supervision engines, which can be parametrized and reused.

Task models make it possible to describe problem solving schemas in the shape of a recursive decomposition of the initial problen into simpler sub-problems. This decomposition ends up with elementary sub-problems which can be solved by the execution of a code fragment. Moreover, this decomposition can be achieved in a cooperative way: users can, at any moment, stop the decomposition process, modify the problem description, and compare several problem solving schemas. More generally, task models are well-adapted to the formalisation and the exploration of any problem solving process.

The ROMANS Action designs and implements a task description language in the AROM system, which is based on a class/association representation and allows the remote execution of methods associated with elementary tasks on the distant sites where those methods are maintained. For the user, this process remains totally transparent: everything happens as if the decomposition schema and the elementary methods were located on her site. The advantage of this distributed approach is twofold: first, problems inherent to the portability of the applications are avoided by the remote execution; second, the parallel execution of remote methods becomes possible. 

However, the implementation of a distributed execution requires the definition of mechanisms for the localization of well-adapted solving methods and the use of synchronization processes so that the tasks can interact with others located on distant sites. These two points obviously lead to structural and operational modifications with regard to classical task models. Moreover, the use of a distributed problem solving environment requires to take into account temporal constraints as well as the availability of hardware and software ressources. In other words, problem solving strategies have to cope with the power of the computers, their load factor and the available data and competences.
 

Last modified 2000/02/24
Cette page en français