About Batch Synchronization Solvers

The batch synchronization solver offers the possibility of allocating batches in time and to resources such that batches that are executed at the same time, start at the same time; and simultaneously executed batches have the same value for the synchronization criteria. The solver does not support batch synchronization for batches having a network relationship. When the selection contains batches that have a network relationship, the solver will stop.

When batch synchronization is enabled, the solver searches for a feasible solution that does not violate the constraints specified and optimizes resource utilization of the resources to be synchronized.

When selecting resource groups, a group can only be selected once. In addition, a resource group cannot be selected if one of the resources in that group exists in one of the groups already selected.

The solver optimizes the schedule using different and to some degree conflicting objectives. The optimization objectives and priorities are as follows:

  • minimize total number of runs
  • minimize total number of unoccupied resources within the runs
  • minimize total completion time
  • minimize total changeover duration

A run in this context is a set of batches that are allocated to a group of resources that have to be synchronized, start at the same time, and have identical synchronization criteria values. The batch synchronization solver also considers other constraints such as maximum duration. A solution is only accepted as a feasible solution when all constraints have been satisfied.

The objectives on the General tab of the Solver are available, but may hinder performance. Synchronization resources use an objective-independent heuristic. The objectives are only used to compare valid solutions afterwards to see which one is better. They are not used during the construction of such a valid solution. As a result, the optimization of setup, changeover and slack will be slow.

Note:  Utilities and enabling batches may not work very well with batch synchronization solvers because of a custom selector mechanism associated with objectives.
Related topics