[ < ] [globale Übersicht ] [ Kapitelübersicht] [ Stichwortsuche ] [> ]
Department of Computer Sciences
Purdue University
W. Lafayette, IN 47907-1398
{enh, joshi, jrr, saw}@cs.purdue.edu
Phone: 317-494-6181, Fax: 317-494-0739
The National Information Infrastructure (NII) that will emerge in the 1990's will impact many institutions of life; it will change the way we learn and do science, access information, work and collaborate and design physical systems. This future computational power and communication infrastructure will allow computing everywhere. Learning and training simulators will be part of any classroom and laboratory. The very concept of classroom, laboratory and individual workplace will change; they will become virtual places based on an array of multimedia devices. The software architecture of such an environment needs to be developed, and related research issues on intelligent computing, intelligent interfacing and intelligent communication, integration of computing systems (i.e., symbolic, numeric, geometric and office) on mobile platforms have to be addressed. The advent of such environments will also affect the process of prototyping, which is part of every scientific inquiry, product design, and learning activity. The new economic realities require the rapid prototyping of manufactured artifacts and rapid solutions to problems with numerous interrelated elements. This, in turn, requires the fast, accurate simulation of physical processes and design optimization using knowledge and computational models from multiple disciplines in science and engineering . Thus, the realization of rapid multidisciplinary problem solving or prototyping is the new grand challenge for Computational Science and Engineering (CS&E) . We refer to a software realization of multidisciplinary prototyping throughout as a Multidisciplinary Problem Solving Environment (MPSE).
We describe in this white paper research that is needed to formulate and develop a mathematical and software framework for MPSE including the tools, enabling technologies, and underlying theories needed to support physical prototyping in the classroom, laboratory, desk, and factory. It will utilize the current and future NII facilities and HPCC technologies. It will be adaptable and intelligent with respect to end-users and hardware platforms. It will use collaborating software systems and agent based techniques to build demonstration MPSEs for physical modeling and education. It will allow wholesale reuse of scientific software and provide a natural approach to parallel and distributed problem solving.
The evolution of the National Information Infrastructure (NII) also has the potential to revolutionize education. We envisage that universities will offer telecourses using the NII and their student body will be geographically dispersed. In this research, we also aim to build demonstration MPSEs that will provide a virtual classroom and laboratory to support such distance education.
The assumed hardware scenario for the proposed MPSE development is based on the fact that the advent of optical, ATM, and wireless hardware communication technologies and distributed computing infrastructure like the Web (WWW) will make the concept ``The Network is the Computer'' a reality . We assume that ``The Net'' interconnects computational units (ranging from workstations to massively parallel machines) and physical instruments and that it supports intelligent, two-way video communication. Moreover, the WWW like infrastructure is viewed as an object-oriented operating system kernel that allows the development of an MPSE as a distributed application utilizing resources and services from many sources. The specific tasks that have to be accomplished to realize MPSEs are as follows:
Foundations of PSEs: (i) Formulation and analysis of multidisciplinary problem solving methodologies on HPC platforms, (ii) Creation of PDEPack, a broad library of PDE problem solvers and components of PDE solvers, (iii) Enhancement of the configuration space technology for mechanical systems design, (iv) Development of knowledge bases for PDE based prototyping.
Enabling Technologies for PSEs: (i) Creation of kernels for building domain specific PSEs and MPSEs on virtual parallel environments, (ii) Development of a methodology for virtual and smart libraries of problem solvers, (iii) Creation of an infrastructure to deliver MPSE problem solving power over the network.
Demonstration PSEs and MPSEs: (i) Education: SciencePad to support the classroom and the ``collaboratory'' of the future on ubiquitous platforms, (ii) Numerical Infrastructure: PDELab for partial differential equation based applications, (iii) Electronic prototyping: EPPOD for the design and analysis of physical systems.
In all the above task the Net is assumed to be the host for multidisciplinary problem solving. The Net will supply and support distributed applications, PSEs, libraries of solvers, distance learning and ``collaboratory'' services, and domain specific knowledge bases. We envision that PSEs, mathematical software systems, and courseware will take the form of special servers in the network which are constantly updated by their creators. The users will be able to utilize all available PSEs and mathematical/engineering libraries as easily as browsing a Web page today.
We will present, in the sections that follow, an overview of what we feel are the significant areas of research for HPCC in the information age. We will also describe our own plans and efforts to address some of the challenging issues that arise as high performance, scientific computing meets the information revolution.
It is predicted that by the beginning of the next century, the available computational power will enable anyone with access to a computer to find an answer to any question that has a known or effectively computable answer. The proposed research in the area of problem solving environments (PSEs) promises to contribute toward the realization of this prediction for physical modeling and to provide students, scientists, and engineers with environments that allow them to spend more time doing science and engineering rather than ``computing''.
The predicted growth of computational power and network bandwidth suggests that computational modeling and experimentation will be one of the main tools in big and small science. In this scenario, computational modeling will shift from the current single physical component design to the design of a whole physical system with a large number of components that have different shapes, obey different physical laws and manufacturing constraints, and interact with each other through geometric and physical interfaces. For example, the analysis of an engine involves the domains of thermodynamics (gives the behavior of the gases in the piston-cylinder assemblies), mechanics (gives the kinematic and dynamic behaviors of pistons, links, cranks, etc.), structures (gives the stresses and strains on the parts) and geometry (gives the shape of the components and the structural constraints). The design of the engine requires that these different domain-specific analyses interact in order to find the final solution. The different domains share common parameters and interfaces but each has its own parameters and constraints. We refer to these multi-component based physical systems as multidisciplinary applications (MAs).
The realization of the above scenario, which is expected to have significant impact in industry, education, and training, will require the development of new algorithmic strategies and software for managing the complexity and harvesting the power of the expected HPCC resources; it will require PSE technology to support programming-in-the-large and reduce the overhead of HPCC computing. A goal of research in this area should be to identify the framework for the numerical simulation of multidisciplinary applications and to develop the enabling theories and technologies needed to support and realize this framework in specific applications. The MPSE is the software implementation of this framework. It is assumed that its elements are discipline-specific problem solving environments (PSEs). The MPSE design objective is to allow the ``natural'' specification of multidisciplinary applications and their simulation with interacting PSEs through mathematical and software interfaces across networks of heterogeneous computational resources.
The future NII will impact many aspects of life, including the way we learn and do science, access information, work, and collaborate. It will allow computing everywhere. Learning and training simulators will be part of every classroom and laboratory. The concept of the classroom, the laboratory, and the student/scientist/engineer desk environments will evolve to some virtual form based on an array of multimedia devices . These virtual environments, sometimes called ``collaboratories'', can be implemented naturally using the MPSE technology that will develop. We are building discipline-specific PSEs that will be used to build learning and training simulators in some areas of computational science and engineering (CS&E).
For the scope of this discussion, the network (the Net) is assumed to be the host for multidisciplinary problem solving. One can use and modify existing network software infrastructure to support distributed applications, PSEs, libraries of solvers, and distance learning and ``collaboratory'' services over the Net. We envisage that all these resources and services will take the form of special servers in the network which are constantly updated by their creators. The users will be able to utilize all available PSEs and mathematical/engineering libraries as easily as browsing a Web page today. We feel that there is a need to create servers to experiment with web based dissemination and use of PDE software, PSEs, and courseware.
Even in the early 1960s, scientists had begun to envision problem-solving computing environments not only powerful enough to solve complex problems, but also able to interact with users on human terms. The rationale of our research is that the dream of the 1960s will be the reality of the 1990s: High performance computers combined with better algorithms and better understanding of computational science have put PSEs well within our reach.
What are PSEs? A PSE is a computer system that provides all the computational facilities needed to solve a target class of problems. These facilities include advanced solution methods, automatic selection of appropriate methods, use of the application's language, selection of appropriate hardware and powerful graphics, symbolic and geometry based code generation for parallel machines, and programming-in-the-large. The scope of a PSE is the extent of the problem set it addresses. This scope can be very narrow, making the PSE construction very simple, but even what appears to be a modest scope can be a serious scientific challenge. For example, we propose to create a PSE for bioseparation analysis as described later. This has a narrow scope, but is still a complex challenge as we incorporate both a computational model and an experimental process supported by physical laboratory instruments. We are also creating a PSE called PDELab for partial differential equations (PDEs). This is a far more difficult area than bioseparation and the resulting PSE will be less powerful (less able to solve all the problems posed to it), less reliable (less able to guarantee the correctness of results), but more generic (more able to ``parse'' the specifications of many PDE models). Nevertheless, PDELab will provide a quantum jump in the PDE solving power delivered into the hands of the working scientist and engineer.
What are the PSE related research issues to be addressed? A substantive research effort is needed to lay the foundations for building PSEs. This effort should be directed towards i) a PSE kernel for building scientific PSEs, ii) a knowledge based framework to address computational intelligence issues for PDE based PSEs, iii) infrastructure for solving PDEs, and iv) parallel PDE methodologies and virtual computational environments. The description of these proposed tasks can be found in later in this document.
If PSEs are so powerful, what then is an MPSE? In simple terms, an MPSE is a framework and software kernel for combining PSEs for tailored, flexible multidisciplinary applications. A physical system in the real world normally consists of a large number of components which have different shapes, obey different physical laws and manufacturing/design constraints, and interact through geometric and physical interfaces. Mathematically, the physical behavior of each component is modeled by a PDE or ODE system with various formulations for the geometry, PDE, ODE, interface/boundary/linkage and constraint conditions in many different geometric regions. In the case of complicated artifacts such as the automobile engine, which has literally hundreds of odd shaped parts and a dozen physical phenomena, it is difficult to imagine creating a monolithic software system to model accurately such a complicated real problem. Therefore, one needs an MPSE mathematical/software framework which, first, is applicable to a wide variety of practical problems, second, allows for software reuse in order to achieve lower costs and high quality, and, finally, is suitable for some reasonably fast numerical methods. Most physical systems and manufactured artifacts can be modeled as a mathematical network whose nodes represent the physical components in a system or artifact. Each node has a mathematical model of the physics of the component it represents and a solver agent for its analysis. Individual components are chosen so that each node corresponds to a simple PDE or ODE problem defined on a regular geometry.
What are the mathematical network methodologies required? What are the research issues? There exist many standard, reliable PDE/ODE solvers that can be applied to these local node problems. In addition there are nodes that correspond to interfaces (e.g. ODEs, objective functions, relations, common parameters and their constraints) that model the collaborating parts in the global model. Moreover, the analysis of an artifact changes through time, thus some of the interfaces appear and disappear during the analysis session. To solve the global problem, we let these local solvers collaborate with each other to relax (i.e., resolve) the interface conditions. An interface controller or mediator agent collects boundary values, dynamic/shape coordinates, and parameters/constraints from neighboring subdomains and adjusts boundary values and dynamic/shape coordinates to better satisfy the interface conditions. Therefore, the network abstraction of a physical system or artifact allows us to build a software system which is a network of collaborating well defined numerical objects through a set of interfaces. Some of the theoretical issues of this methodology have been addressed in for the case of collaborating PDE models. The results obtained so far verify the feasibility and potential of network-based prototyping.
A major avenue of research is to further study the mathematical network approach in realistic applications like the two-stroke engine design. Moreover, we feel that one should explore a new MPSE methodology based on the so called pre-fabricated numerical objects. These approaches will be realized in the form of a software kernel that will allow to build demonstration MPSEs for physical systems by reusing ``legacy'' software and domain specific PSEs.
What are the software methodologies for implementing the ``mathematical network''? What are the research issues? A successful architecture for PSEs requires heavy reuse of existing software within a modular, object oriented framework consisting of layers of objects. The kernel layer integrates those components common to most PSEs or MPSEs for physical systems. We observe that this architecture can be combined with an ``agent oriented paradigm'' and ``collaborating solvers'' to create MPSE as a powerful prototyping tool. The creation of these frameworks and kernels requires us to create a variety of infrastructure tools and that, plus some applications of PSEs and MPSEs, comprises the research tasks of this project. The principal applications are in chemical engineering (bioseparation of food and drug products, convective vapor deposition in micro-chip manufacturing), education (electronic classrooms and laboratories), numerical infrastructure (PDELab) and engineering design of physical systems.
MPSEs must exploit and build on the new technologies of computing. By the time MPSEs are operational, the advances in computing power and the communication infrastructure will allow ubiquitous high performance computing, i.e., every where by every one. The designs for MPSE must be application and user driven. An MPSE must simultaneously minimize the effort and maximize the solution power delivered to researchers, engineers and scientists, students, and trainees. We should not restrict our design just to use the current technology of high performance computers, powerful graphics, modular software engineering, and advanced algorithms. We should see MPSE as delivering problem solving services over the Net. This viewpoint leads naturally to collaborating, agent based methodologies. This, in turn, leads to very substantial advantages in both software development and quality of service as follows. We envision that a user of MPSE will receive at his location only the user interface. Thus the MPSE server will export to the user's machine an agent that provides an interactive user interface built on top of the standard services of the Net. The bulk of the software and computing is done at the server's site using software tailored to a known and controlled environment. The server site can, in turn, request services from specialized resources it knows, e.g., a commercial PDE solver, a proprietary optimization package, a 1000 node supercomputer, an ad hoc collection of 122 workstations, a database of physical properties of materials. Each of these resources is contacted by an agent from the MPSE with a specific request for problem solving or information service. Again, all this collaboration is built on standard Network services. All of this can be managed without involving the user (if s/he so desires), without moving software to arbitrary platforms, and without revealing source codes.
What are the design objectives of an MPSE for physical system design? What are the research issues? These mathematical networks can be very big for major applications. For a realistic vehicle simulation, there are perhaps 100 million variables and many different time scales. This problem has very complex geometry and is very non-homogeneous. The answer is 20 gigabytes in size and requires about 10 teraflops to compute. An answer is a data set that allows one to display an accurate approximate solution at any point. This data set is much smaller than the computed numerical solution. The network has 10,000 subdomains and 35,000 interfaces. A software network of this type is a natural mapping of a physical system and simulates how the real world evolves. This allows the use of the software parts technology (object-oriented programming) that is the natural evolution of the software library idea. It allows software reuse for easy software update and evolution, things that are extremely important in practice. The real world is so complicated and diverse that we believe it is impractical to build monolithic, universal solvers for such problems. Without software reuse, it is impractical for anyone to create on his own a large software system for a reasonably complicated application. Each new automobile normally results in a new software system. Recreating such a system could easily take several months or years. In contrast, the execution time to perform the required computation might only be a few days. Notice that such a physical change usually corresponds to replacing, adding, or deleting a few nodes in the network with a corresponding change in interface conditions. These are simple manipulations on a network which do not affect the rest of the system and can thus be easily done. In this application each physical component can be viewed both as a physical object and as a software object. In addition, this mathematical network approach is naturally suitable for parallel computing as it exploits the parallelism in physical systems. One can handle issues like data partition, assignment, and load balancing on the physics level using the structure of a given physical system. Synchronization and communication are controlled by the mathematical network specifications and are restricted to interfaces of subdomains, which results in a coarse-grained computational problem. This is especially suitable for today's most advanced parallel supercomputer architectures. The network approach also allows high scalability.
Realizing this MPSE technology requires research advances both in the general structure and implementation area and in more specific areas from the applications we consider. For example, we must design and create the tools that allow the MPSE agents to collaborate over the Net. We must create a flexible and general methodology for interfacing large and heterogeneous software systems. We will advance the computational models currently used at CVD process and map them to proposed virtual parallel environments. For example, in the specific applications, we will define and create a library (PDEPack) of PDE solving modules including classical numerical linear algebra routines and modern distributed mesh generators or solvers. We will advance the practice of identifying high level characteristics of partial differential equations and their use for selecting solutions methods and computing platforms. We will integrate the CVD laboratory equipment with the PDELab solving power to create a unified software/hardware environment for studying micro-chip manufacturing.
How are MPSEs used in the classroom? The PSEs and MPSEs provide high level systems and models for physical processes. Students can manipulate realistic models by simulation, or even actual physical apparatus in the laboratory (see task D4 for an example from bioseparation). The collaboratory is, in essence, a PSE for teaching that will allow students, TAs, instructor(s), and MPSEs to interact for learning about physical systems. In addition, the network approach of our MPSE project is ideal for testing the potential and problems of telecourses. It allows us to integrate geographically disperse experimental, information and software resources in the collaboratory, and use it for distance learning. We are developing two courses using this methodology. A substantial start has already been made in this area, and we plan to offer these courses shortly.
We have attempted to present in this whitepaper an important avenue of research for HPCC, namely the creation of MPSEs and PSEs. We have also attempted to bring out the specific tasks that need to be addressed for such systems to become a reality.