5. Complex environments and optimization