This chapter describes the method for creating optimal architectural functional layouts. The methodology is based on coarse grid and three general steps: i. generation of layouts satisfying requirements given by the designer, ii. selection of the “proper” layouts, and iii. ranking of the “proper” layouts according to multiple objectives. Presented methodology can be used in architectural practice, urban or graphic design, and wherever the allocation of interrelated shapes is to be optimized. For clarity, simplified examples of a single-story two-apartment residential building are shown. Despite this simplicity, presented layouts resemble realistic functional solutions. One example of a practical-size floor-plan of three apartments of total twenty rooms is generated. The material is organized as follows: the concept of space discretization with coarse grid is introduced; the backtrack (depth-first) search algorithm is implemented for the generation of a number “potentially good” layouts. A machine learning method (feed-forward artificial neural network) is implemented for the classification of “proper” and “improper” layouts based on the “corridor criterion”. Simple examples of dynamic multi-criterial ranking of “proper” layouts are demonstrated.