simulation and optimization