![]() |
|||
![]()
|
![]() |
![]() |
![]() |
3.1. FUNCTIONSThe distinguishing characteristic of the configuration-design problem is that it is solved by selecting predefined parts that can be connected only in certain ways to perform some high-level functionality (Mittal and Frayman, 1989). Functions have been variously defined as "what a device is for" or "a description of behavior abstracted by humans through recognition of the behavior in order to utilize it." For our purposes, a function is a property of a part that, alone or in combination with other parts, achieves a high-level, user-defined functionality. The design is that collection of parts that exhibits the high-level functionality. In other words, new parts cannot be created at will, constraints restrict the ways that parts can be connected, and parts exhibit low-level functions whose combination results in the desired high-level functionality. One way design complexity is managed is through functional decomposition, the process in which the high-level functionality expected of the entire design is decomposed into functions exhibited by individual parts. For example, in the automotive domain (Figure 3) the high-level function of "power generation" is decomposed into the functions "engine" and "transmission." The "engine" function is further decomposed into the functions "pistons," "cylinders," "fuel injection," etc. The decomposition halts when the functions can be exhibited or implemented by individual parts. Viewed in this way, the part is the fundamental entity for describing a design. Then we construct a design by first selecting and connecting parts, and then by verifying that the design satisfies all constraints. The primary criteria for selecting a part are, in decreasing order of application, the function the part implements; the ability to physically connect to other parts; and the satisfaction of the constraints. If a part does not implement the desired function, or cannot connect to the existing design, or violates the constraints, we select another part. The drawback of viewing the part as the central entity is that it fails to take advantage of the possibility of using constraints to direct the search for a solution. However, we can choose an alternate representation in which attributes are the fundamental entities for describing parts, functions, and designs. This is consistent with our definitions (above) and with using parts as the basic element to describe a design, as well as with optimization techniques that use state and decision variables. Using attributes to define the problem also allows us to use constraints to define properties of a design that can be used to eliminate parts that ordinarily might be chosen to implement some function, even if that part violates a constraint or set of constraints. Once all constraints are satisfied, parts are selected to implement the desired functionality.
|
![]() |
|
Use of this site is subject certain Terms & Conditions. Copyright (c) 1996-1999 EarthWeb, Inc.. All rights reserved. Reproduction in whole or in part in any form or medium without express written permission of EarthWeb is prohibited. Please read our privacy policy for details. |