Article Preview
Top1. Introduction
In complex scientific environments, high performance distributed computations and autonomy are the main characteristics for successful experimentation. Examples of such environments are autonomous negotiating teams (ANT) (Rubenstein-Montano & Malaga, 2002; Pena-Mora & Wang, 1998; Rangaswamy & Shell, 1997; Young, 1975) using genetic algorithms, distributed autonomous units of energy (DAUE) (Tsoukalas & Uhring, 1997; Tsoukalas, 1997; Alamaniotis et al., 2014), autonomous multiple robots (AMR) (Bourbakis, 1997; Bourbakis & Findler, 2001), WWW intelligent information agents (Mertoguno 1998; Finin, 1995; Maturana, 2005), etc..
An important goal in computational science & engineering is to develop a unified environment where experimental and computational models can interact with and complement each other in the problem-solving environments. Such as known environments have been described as Distributed Autonomous Agents (DAA) for problem Solving Environment (Blake, 2003; Lawton & Domslak, 2004; Lau & Zhang, 2003; Charton et al., 2003; Szer & Gharpillet, 2004). Another important characteristic of the DAA environment is its ability to access information. Information of all kinds, including that, which was traditionally published in archival journals or conference proceedings, is increasingly available on line. Besides being concentrated in traditional repositories such as libraries, such information is also increasingly distributed, residing in workstations and computers belonging to individual researchers or research groups, and linked together to form an infosphere. The World Wide Web (WWW, Web) is an example of such a system. A DAA is thus an environment that provides all the computational facilities necessary to solve a target class of problems. These features include advanced solution methods, automatic or semiautomatic selection of solution methods, and ways to easily incorporate novel solution methods. Moreover, DAAs use the language of the target class of problems, so users can run them without specialized knowledge of the underlying computer hardware or software.
Scientific computing systems are becoming increasingly ubiquitous. While one component of the developed ubiquity involves computers that are mobile and connected over wireless links, another equally important aspect is that everyone can use them. In other words, ubiquity aims at bringing computers everywhere, and for everyone. This requires that systems be easy to use, and that interaction with such systems follows an indirect management, rather than a direct manipulation, approach. In order to develop adaptive-dynamic systems that are truly easy to use, DAAs need to provide the user with a high level abstraction of the complexity of the underlying computational facilities. The user is not expected to be knowledgeable in selecting appropriate numerical, symbolic and parallel systems, along with their associated parameters, that are needed to solve a problem. One of the main goals of these DAAs is to assist the user in carrying out the numerical solution of mathematical models and analyze their solutions. Depending on the mathematical characteristics of the models, there are “thousands” of numerical methods to apply, since very often there are several choices of parameters or methods at each of the several phases of the solution. On the other hand, the numerical solution chosen must satisfy several objectives, primarily involving error and hardware resource requirements.