The expert-function is constructed as follows. After the list of available methods for the given problem has been established, the first method from the list is selected, loaded and tested, i.e. the computation time is estimated and compared with the maximum admitted level, and, also, a test of the availability of the necessary storage space is performed. If these tests are positive, the computation process starts (the process evolution is the same as in the case of the human-expert mode; the only difference is that the expert-program informs the user about the evolution of the computation process, i.e. more messages will appear than in the case of the human-expert mode); otherwise the next method is selected from the list, loaded and tested. If no other method follows the current one in the list, the maximum computation time is incremented, and the first method of the list is again selected, loaded and tested. If the maximum computation time has reached to an maximum limit, then the maximum admitted error level is increased (also until a reasonable superior limit). Numerical tests on some known problems have been shown that cycle can conduct to a approximate solution.
The methods which were selected to be part of the method database are some well-known methods, which were tested by many researchers in ODEs. The user can also test its own methods adding these methods to the expert (as described in the paragraph about the human-expert mode).
The next version of EpODE will include a more elaborated expert which we hope to be implemented in Clips.