The Optimizer is the core module of our framework. It defines the flow of the optimization process: who (items) and how (movement) to optimize and determine which solution is optimized.
We create a classic optimizer for our framework.
Before running the optimization, it offers you an opportunity to randomize the items, such as position, rotation, and any other data. This module might help you escape from initialization hell.
Phase managers the iterations and the items movements. Multiple phases well-known will turns your optimizer into AO (Alternative-Optimizer).
Iteration
It defines the environment of the optimizer, such as Temperature Changes and Stop Conditions.
Movement
It defines the movement strategy for each iteration.
It evaluates the proposed solution’s costs.