> 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-05_other-techniques.md).

# Other Techniques

![](/files/-LrPm3c4Pn1RXIZXgXxL)

There are many techniques that can be used to tackle a Computational Design problem.

In addition to the genetic algorithm, other examples include:

* solving with pen and paper&#x20;
* manual guess and check&#x20;
* set packing or partitioning algorithms&#x20;
* gradient descent &#x20;
* stochastic (or, random) local search and filtering results to find a desired maximum, minimum, or median values.
* linear, integer, or quadratic programming &#x20;

Some of these techniques are quite basic and easy to implement (see the '[Optioneering section](/02-deeper-dive/02-02_optioneering.md)'); others are far more sophisticated. Choosing the right technique for your application is tricky and much more of an art than a science. Often, it comes down to the precise design question you are tackling and your familiarity with a given technique.
