In general, constraints are classified into two groups: one is a group of constraints which can decrease the number of unknown variables, the other is a group of constraints which cannot. For example, an equation belongs to the former group and an inequality belongs to the latter. Usually, when the number of unknown variables is equal to that of constraints of the former group, solutions are uniquely determined, then, the obtained solutions are evaluated by using the constraints of the latter group. An under constrained problem is defined as a problem in which solutions cannot be uniquely obtained because there are not enough constraints which can decrease the number of unknown variables.
Conventionally, a constraint which cannot decrease the number of unknown variables is not used until all the variables are assigned concrete values. In the case of an under constrained problem, those concrete values are often determined by trial and error. That is, by assigning some concrete value to some variable based on human designer's intuition or experience, unknown variables are decreased one by one, then all the variables are finally assigned concrete values. Such a method, however, has an intrinsic defect. There are possibilities of looking over existing solutions and wasting time to search a solution which does not actually exist in the case that any solution cannot be allowed by the constraints which cannot decrease the number of unknown variables.
For the purpose of supporting a designer to solve a design problem, this paper proposes new methods which overcome the difficulty in under constraint problem solving by making use of constraints which cannot decrease the number of unknown variables, and realizes them as an algebraic under constraint solver. Section 2 describes facilities, architecture and algorithms of the algebraic under constraint solver. Then, in Section 3, examples of its application to design problems are shown. In this paper, it is assumed that all the constraints are given in an algebraic form.