A more reusable modeling system

Benjamin A. Allan · 1998

In this thesis we examine problems in the reuse of mathematical models. Reuse of a model by others requires that the model is viewable from many different perspectives, that the model is capable of incorporating new information during its evolution, that the model is understood by a range of modelers in different times and places with different special skills, that the model is mechanically computable in many different ways, that the model's assumptions and key data are not lost, and that the model can support conflict resolution when it is reused as part of a larger model. Our hypothesis is that the problems from which these requirements arise can be overcome, leading to a significant improvement in future model building practice. We here assemble in an original way a group of concepts from engineering design, mathematics, and computer science which, taken together, make model reuse much easier to achieve. We present a modeling environment, ASCEND IV, which we have used to test the our concept. We take a hard look at widespread concepts of object-oriented and modular software reuse and find that they cannot efficiently meet the requirements of reusable modeling. We suggest that, even in an ideal world, there is no single tool which can meet all these requirements and support all users well. We suggest that computer tool makers should future computer tools around information sharing rather than information hiding, so that tool users can combine different tools and models to attain their ends efficiently. We have constructed an example of an open tool for large-scale modeling work, ASCEND IV, which incorporates an equation-based modeling language derived from ASCEND IIIc and concepts similar to the design by contract concept presented in the Eiffel language. Our system also features an open user interface and an extensible solver architecture for supporting interactive modeling with nonlinear, logical, and structural constraints and for supporting peer-to-peer interaction with other tools.

Read the paper · More papers on PaperTik