Results
For the datasets used for testing (such as the much studied MT10 instance from [FT63]) most often the MIP heuristics are only able to complete few of the partial solutions to a full solution, but where this is possible this solution usually is better than any initial solution detected by the default algorithms.
Several other implementation variants are available for this start solution algorithm:
- Instead of starting model clones for solving the sequencing subproblems these could simply be treated as multiple problems that are solved sequentially within a single model. All problems and data simply reside within a single model in this case, so there is no need to employ any mechanism for sharing data. Furthermore, only a single subproblem is active in the solver at any time, hence limiting the amount of resouces (memory, licenses) that are in concurrent use. An implementation example is provided in the file jobshopas.mos.
- As for the examples discussed in the preceding sections of this paper, concurrent solving with submodels can be implemented with a separate file for every problem (so one master model file, jobshopasp.mos, and one submodel file, jobseq.mos, that is loaded for each subproblem instance to be processed in parallel). In this case, data are exchanged between the master and its descendants via the shared memory I/O driver of mmjobs. As opposed to the implementation relying on model clones this version could be extended to work with several distinct Mosel instances for processing the submodels.
With all three implementation variants we are solving the same sequencing subproblems and will therefore obtain the same (partial) start solutions. When solving subproblems concurrently our implementation processes the results as soon as they become available, so the order with which start solutions are added and as a consequence the order in which they are processed by the solver is to some extend non-deterministic and may result in diverging behaviour of the solution algorithms. With sequential execution the order of adding the user solution information is always the same.
© 2001-2020 Fair Isaac Corporation. All rights reserved. This documentation is the property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except solely for internal evaluation purposes to determine whether to purchase a license to the software described in this documentation, or as otherwise set forth in a written software license agreement between you and FICO (or a FICO affiliate). Use of this documentation and the software described in it must conform strictly to the foregoing permitted uses, and no other use is permitted.