Requirements and design of the optimisation module

Summary
Requirements and design of the optimisation module (intermediate version month 6)