The ability to handle units of measure in a programming environment together with numerical quantities in scientific and engineering programs helps greatly in achieving computational safety as well as code and data readability. It allows for dimensional analysis, thus safeguarding against erroneous combination of values of different dimensionality, e.g. adding distances to masses, or against scaling errors, e.g. assigning distances measured in inch to variables supposed to hold centimeters. Associating values and variables with units of measure explicitly clarifies code and data and---given a clever compiler---allows for the above-mentioned dimensional analysis to be performed at compile time. If extended to input and output of user data, it might free the user from the burden to perform proper scaling himself when entering data conforming to program-defined units of measure. And it might allow for easy customization of output in order to present computational results to users familiar with different sets of units of measure, e.g. British and American use of units versus metric units.
In most expert systems for constructional tasks, the knowledge base consists of a set of facts or object definitions and a set of rules. These rules contain knowledge about correct or ideal solutions as well as knowledge on how to control the construction process. In this paper, we present an approach that avoids this type of rules and thus the disadvantages caused by them.We propose a static knowledge base consisting of a set of object definitions interconnected by is-a and part-of links. This conceptual hierarchy declaratively defines a taxonomy of domain objects and the aggregation of components to composite objects. Thus, the conceptual hierarchy describes the set of all admissible solutions to a constructional problem. Interdependencies between objects are represented by constraints. A solution is a syntactically complete and correct instantiation of the conceptual hierarchy.No control knowledge is included in the conceptual hierarchy. Instead, the control mechanism will use the conceptual hierarchy as a guideline. Thus it is possible to determine in which respects a current partial solution is incomplete simply by syntactical comparison with the conceptual hierarchy. The control architecture proposed here has the following characteristics: separation of control and object knowledge, declarative representation of control knowledge, and explicit control decisions in the problem solving process. Thus, a flexible control mechanism can be realized that supports interactive construction, integration of case-based approaches and simulation methods.This control method is part of an expert system kernel for planning and configuration tasks in technical domains. This kernel has been developed at the University of Hamburg and is currently applied to several domains.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.