This text presents the techniques for a wide set of applications, ranging from the problems of size and shape optimization (historically the first to be studied) to topology and material optimization. Structural models are considered that use both discrete and finite elements.