> For the complete documentation index, see [llms.txt](https://www.generativedesign.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://www.generativedesign.org/02-deeper-dive/02-03_optimization/02-03-03_constraints.md).

# Constraints

![](/files/-LrPm4HMsOaw4omeOpPe)

A constraint is a condition that the solution of an optimization problem must satisfy. In the table example we saw earlier, the constraints could be:

* 'the table must have four legs'&#x20;
* 'the table must be at least 50cm wide'&#x20;
* 'the table may be no more than 1m tall', or&#x20;
* 'the table cannot be blue'.

Constraints give a model its realism; they ensure that a solution only includes realistic values or values that the user knows are critical to the design brief.

If a model is unconstrained, it's likely to return absurd results that aren’t useful, for example, here it could be a circular table that is three metres high with a single leg that balances on a point.

Constraints are vital because they ensure that a generative design algorithm outputs something realistic and reasonable.
