(edit: as compact as it possibly can, within time budgets) I've been working on a program that lets you create Factorio layouts, without any user intervention. Just configure your recipes, along with desired amounts and it creates a fully working factory for you. Also supports some Space Age mechanics. You can try it out now.
There are actually two separate projects I would like to share with you:
1. Fully functioning base builder (images 1-5)
How it works, roughly:
a linear program picks the recipes and machine counts (it handles by-products, oil cracking, productivity),
simulated annealing places the machines, a router lays belts, undergrounds, splitters, inserters and pipes (the same negotiated-congestion algorithm computer chips are routed with), poles get placed, and an independent validator checks every belt lane, rate, and pipe before anything is saved,
then it keeps shrinking the box for as long as its budget allows.
Big jobs can get split into blocks of custom size that are generated…