Wrapper for the VTMOP genfuncs drivers, for solving multiobjective optimization problems with arbitrary number of objectives.

vtmop.vtmop_gen(H, persis_info, gen_specs, _)

This generator function solves multiobjective optimization problems with d design variables (subject to simple bound constraints) and p objectives using VTMOP.

This requires that VTMOP be installed and in the system PATH. To do so, download VTMOP (contact thchang@vt.edu), and use the command:

$ make genfuncs

to build the generator functions. Next, run the command:

$ export PATH=$PATH:`pwd`

from the VTMOP source/build directory to add VTMOP to your system PATH.

This generator alternates between generating large batches of size gen_specs['search_batch_size'] to explore design regions, and small batches of size gen_specs['opt_batch_size'] to fill in gaps on the Pareto front. An initial search size can also be specified by using gen_specs['first_batch_size'].

gen_specs['ub'] and gen_specs['lb'] must specify upper and lower bound constraints on each design variable. The number of design variables is inferred from len(gen_specs['ub']). gen_specs['num_obj'] specifies the number of objectives. The problem dimension is inferred based on the length of the gen_specs['lb']. gen_specs['restart'] specifies whether to reinitialize VTMOP.

Several unformatted binary files (vtmop.io, vtmop.dat, and vtmop.chkpt) will be generated in the calling directory to pass information between libEnsemble and VTMOP.