Article - Issue 7, February 2001

Design: a constraint-based approach

A. J. Medland

Download the article (453 KB)


Design, engineering, and life in general, are uncertain activities. In engineering we attempt to reduce the degree of uncertainty by the development and application of processes and procedures. Much of design (and life), however, seem to defy our attempts at order or control.

We may believe that such activities as engineering and process planning can be rigorously modelled, analysed and the results applied in practice. Surely we are getting better at predicting the things that we know about? To realise how uncertain things really are we must look to the failures. Considerable effort has been put into ensuring the safety of items such as aircraft and atomic power stations, but still within recent memory we have examples of public disasters of frightening proportions, such as the Concorde crash at Paris and the Chernobyl meltdown.

Engineering models

The reality is that our predictions are only as good as our models and experience. Engineering science can reduce the degree of uncertainty but can never eliminate it. If a failure occurs as the result of unforeseen phenomena, how can these phenomena be included within the analysis model?

Our engineering is undoubtedly getting better. We only have to look at the improvements in aircraft life and the time between servicing of the modern motor car to realise the considerable advances that have been made in the last thirty years. In the early days of aviation aircraft went into service and were retired or replaced in only a few years. Many of the original Jumbo jets are still flying and the Hercules transport plane is celebrating its fortieth year.

These advances have been, in the main, due to improvements in analytical tools. The ability of these tools to provide accurate predictions is totally dependent on the ability of the underlying modelling techniques to represent the real world. The modelling techniques, in their turn, depend upon the traditional scientific approach of observing a phenomenon, creating a predictive model and validating it by experiment. Without this approach we would not have our understanding of anything from fluid flow to non-linear structural dynamics.

The more experience we gain by repeatedly going around the loop the more clever we become! Our journeys around the loop lead to models in which explicit processes act upon a given set of inputs to achieve our desired output.

The difficulty of formulating design models

The effectiveness of a predictive procedure is thus highly dependent upon the knowledge we have gained (and incorporated in the transition process) through having experienced the problem before, and our ability to recognise and apply that knowledge in new cases. The difficulty with conceptual design is that the problems are new and have not been experienced before, at least by the investigator. Of course if the investigator can find someone who has already wrestled with a problem and found a solution, then an embryonic model and procedure can be formed and solutions obtained.

The problems arising in the area of creative design are made even more complex because not only have they not been previously addressed, but in addition they are usually complex and diverse, they evolve throughout the designing activity and we never know for certain if they are complete or solvable. Many designs investigated in industry are destined to fail, simply because solutions cannot be found that satisfy all of the stated objectives. This may be due to an inability to conduct an effective search or because an underlying conflict exists within the problem.

So we have to adopt an alternative approach for this class of design. It is based upon a problem-solving strategy and returns to the approach used in the early exploratory days of science. We are forced to conduct our own investigation and develop solutions that explain the observed phenomena.

There are numerous examples of this approach being used in real life. The development of machines and products has often proceed by a ‘cut and try’ approach. Here the designers do not have the knowledge to analyse or calculate parameters before commencing their design. They usually start by drawing on their experience and proposing a scheme that they hope will work. A prototype is then built and its performance is evaluated. If it fails to meet the specification, modifications are proposed, implemented and evaluated. Through this loop of building and modifying, the designers learn about the problems, iteratively improve their understanding or model and achieve a better design solution.

When this improved model is encapsulated within a procedure it is easy to forget that the knowledge was gained from observation and experience.

The constraint-resolution approach to design

The constraint-resolution approach to design returns to these principles of searching for a solution by employing problem-solving techniques. In order that any problem can be addressed three elements must be agreed and in place.

First, a set of goals needs to be established. This is the only way that a successful outcome can be determined, agreed and the task completed. Without clearly defined and testable objectives a game cannot be ‘won’ and it degenerates into a frustrating and pointless exercise with no agreement on why it is being undertaken in the first place. It is insufficient to say that I was just following procedures to no purpose!

Secondly, all constraints must be recognised and agreed as a set of rules. These bound and restrict the actions that can be taken in trying to meet the problem goals. Picking up the ball and running makes scoring a goal in football easier, but breaks the agreed constraints of the game. Removing or questioning certain constraints can however lead to new solutions, such as rugby!

Thirdly, the design solution variables need to be set. In principle, any problem can be solved by allowing every possible parameter to be changed. There is then the danger that the final solution bears no resemblance to the original problem. We may start out to design an aircraft and end up with a helicopter.

In practical terms, problems must be addressed by the manipulation of a limited set of problem or design variables.

The above three elements of problem solving can be manipulated during the search for a solution. The degree of allowable change depends upon the conditions that have been agreed and imposed. Selecting more appropriate design variables, relaxing constraints and/or modifying the problem goals can help to solve problems. Ultimately everything is up for grabs! A state can be created within which any, all or none of the variables can be manipulated and the truth of the constraint rules determined. Should it not be possible to achieve a true state, it is possible either to change the design variables used in the search or to modify the form of the constraint rules.

The SWORDS environment

Such an approach to creative design is now embedded within a constraint modelling environment (SWORDS) used for research at the University of Bath. This contains its own language (RASOR) of over two hundred functions (including access to a built-in solid modeller) that allows us to create models, impose rules and seek solutions.

The constraint environment can allow the rules of complex problems to be derived and resolved. For example, we can establish the complex rules of machines and their operations. Similarly we can build models of humans and incorporate rules of balance and posture. By putting these together we can study the interaction of man and machine so that problems can be resolved during the early design stage, rather than being addressed during the latter stages of development.

We have used the SWORDS environment to address a wide range of industrial problems, extending from seeking conceptual forms in product design, through the control of coordinate measuring machines, to process inspection. Throughout its creation, over the last 18 years, SWORDS has been used extensively to aid in the redesign of process and packaging machinery. Here we have established the appropriate rules and constraints through discussions with the industrial companies, and sought for improved solutions.

Examples of SWORDS at work

During the creation of a new consumer product, it was decided for marketing purposes to present the product in moulded plastic containers of irregular shape. These containers were to take any chosen form, from model animals through to cartoon characters. This presented problems for the filling machinery as not only did the containers have to be passed to a revolving turret, but also their orientation had to match and align with the filling heads during the transfer process.

In the example shown here, we used SWORDS to create a complex 12-station transfer head to carry out this operation. The containers were carried around the transfer head (along the path denoted by the upper trail of dots) and matched with the motion of the filling machine in the intercepting region (shown on the left of the image).

Each transfer station was composed of Z-link mechanisms driven by two face cams that were required to match positions over specified stations on the large adjacent processing turret. This had to be achieved with:

  • no clashing of mechanism parts;

  • safe mechanism opening in the event of product jamming;

  • matching of positional and velocity constraints;

  • minimal acceleration and jerk during both the entry and exit phases.

We sought a solution that would work without interrupting the flow of containers through the plant. This solution was obtained after many hours of searching in the constraint environment until every operating and design condition was met.

More recent research into constraint modelling has led to the creation of a manikin model (shown above). The desire for such a representation arose out of the need to be able to determine, during the conceptual design stage of a machine, whether it could be operated and maintained in practice. If errors and dangerous conditions are found after a prototype has been built, or even once it is in service, they can be difficult and expensive to rectify. Such a modelling approach could also be used to explore dangerous working conditions and to determine the most appropriate design of equipment for humans to operate in restricted conditions.

We conducted a study using constraint techniques and showed that rules could be generated to represent actions and postures. We could then use the constraint processes to search for configurations of posture that would meet the requirements of the machine, without violating the limits of human motion. Should the manikin fail to satisfy the requirements, then elements of the machine could be modified (by the constraint modeller) in a search for a suitable design modification.

The manikin has 144 possible degrees of freedom and can have a wide range of rules imposed upon it to control its attitude. It has already been used in some fundamental research into human balance and posture as well as for interactions with machines. We have imposed rules of looking, reaching and standing, together with rules for natural postures. The objective of this work is to allow the manikin automatically to ‘explore’ and interact with its environment. Studies are being undertaken into the operation, loading and maintenance of machines. We are carrying out further work to investigate the possible use of the manikin in designing products and aids for the disabled and the elderly.

The future

The constraint-based approach to designing has allowed us to resolve a wide range of problems in many different areas of engineering. The approach has the advantage of taking a holistic view of a problem and attempting to resolve all rules simultaneously. This brings with it an unstructured view of any problem that is different from the normal ‘formal’ processes followed in design. However our method does follow the natural free-flowing approach adopted by most creative people. It attempts to manipulate or massage the complete problem in a search for a true state.

It is only by adopting such an approach that inspired changes can be achieved. The technique allows us to reconfigure parts of the problem and to suspend rules, and thus follows the principles of brain-storming. It can conversely be used to build up knowledge about a problem systematically, by solving the primary conditions first and then adding more rules and extended models as success is achieved. In this way it creates a converging approach to a solution.

Research in the future will attempt to address some of these issues and to make the technique more widely accepted by incorporating methods to support problem understanding and resolution. We are currently investigating ways of automatically reviewing the progress of a problem and developing the model as the problem progresses.

We are developing ‘sensitivity analysis’ to determine the influence that different design parameters will have upon the design outcome and thereby automatically selecting the parameters to be investigated. The influence of each individual constraint rule, the completeness of the set of rules and any possible conflict between them will further allow the form of the problem to be refined and manipulated. Together these techniques will allow us to determine and understand the shape and form of the complete problem before we begin to seek solutions.

The other aspect key to the success of the constraint approach is the search for a solution. Currently we are basing this search on the creation of a multidimensional map of the errors that any particular solution would generate in achieving the design goals, and then seeking a zero error condition.

We are in addition investigating and implementing new approaches based upon advanced techniques such as genetic algorithms. Others based upon collected knowledge and experience are still to be investigated, whilst yet others based upon business strategies are being pursued. These will allow the automatic decomposition of large and complex problems into simpler, resolvable sections that can then be reassembled into a final solution.

With these technical developments and the resulting need to develop a flexible user interface, we will provide the designer with a supporting set of techniques with which to address complex and difficult problems in a creative manner. It will be possible for any designer with the appropriate training to build up the rules of a given problem and to seek solutions. Already the constraint-resolution approach has been applied to optimise the design of highly stressed aircraft components and it is currently being used in a very different area, the design of medical equipment. The applications appear to be limitless.

[Top of the page]