Solution of the configuration design problem
To solve the
configuration design problem means to assign a value
to each active parameter in such a way that no active constraint
is violated. The design process can be represented by a
trajectory
in two dimensional design state space where the
- x-axis represents the number of active unassigned
parameters
- y-axis represents the number of violated active
constraints
(the constraint validity of which cannot be checked because
this
constraint is defined over an unassigned parameter is not
considered to be violated).
The search for the solution can be depicted in the design state
space as the transition from the initial state to the goal state.
At the beginning of the search all parameters are unbounded and
no
constraint is violated. As a result, the initial point of the
trajectory is located on the x-axis and its distance to the
origin is
equal to the number of parameters which are active at the beginning
of the search.
Since the successful solution stands for the case when all active
parameters are assigned and no active constraint is violated, the
trajectory in this case ends in the origin of the system of
coordinates. If the trajectory ends above the x-axis, not all
constraints are satisfied and the search fails. The final point
of
the trajectory on the x-axis but not in the origin indicates that
some parameters remain unbound (and they are not important for
the
final solution or there is no knowledge available how to assign
a value to them).
There are many strategies how to solve configuration
design
problems. Every strategy can produce the trajectory of a characteristic
shape in the design state space
(an example of such a trajectory is here). In general, the solution
consists of various design steps. There are several different
basic
types of steps:
- The assignment step assigns one parameter. This
assignment can violate some constraints. The step is represented
in the state space by an arrow pointing to the left (it
is parallel to the x-axis if the step does not violate
any constraint).
- The corrective step modifies the values of some
parameters in order to remove a constraint violation. It is
represented by an arrow parallel to the y-axis (if the
number of violated constraint decreases, the arrow is
pointing downwards).
- The activation step activates one or more parameters
and
puts them into the current solution. Since activated
parameters are unbound, the step is represented in the
state space by an arrow parallel to the x-axis and
pointing to the right.
- The inactivation step inactivates one or more
parameters
and deletes them from the current solution. The step
can induce the inactivation of some constraints associated
with inactivated parameters. It is represented in the
state space by an arrow pointing to the left (it is
parallel to the x-axis if no constraint is
inactivated).
- The relaxation step inactivates some constraints and
activates others. The step is represented in the
design state space by an arrow parallel to the y-axis.
Various strategies can be constructed using these steps. One of
them is the
Complete-Revise-Optimize (CRO) strategy
which is
closely related to the strategy Complete Model and Revise.