ILOG CPLEX 11.0 User's Manual > Discrete Optimization > Solution Pool: Generating and Keeping Multiple Solutions > Filtering the Solution Pool > Range Filters |
Range Filters |
INDEX PREVIOUS NEXT |
A range filter allows you to generate solutions that obey a new constraint, specified as a linear expression within a range.
The difference between adding a range filter and adding a linear constraint directly to the model is that you can add range filters without losing information computed in previous invocations of MIP optimization or populate and stored in the search space. In contrast, if you change the model directly by adding constraints, the next call of optimize or populate will discard previous information and restart from scratch on the changed model.
Range filters can be used to express diversity constraints that are more complex than the standard form implemented by diversity filters. In particular, range filters also apply to general integer variables, semi-integer variables, continuous variables, and semi-continuous variables, not just to binary variables.
To create a range filter, use one of the following methods, routines, or commands.
IloCplex::addRangeFilter
to add the range filter to the invoking instance of IloCplex
.
IloCplex.addRangeFilter
to add the range filter to the invoking instance of IloCplex
.
Cplex.AddRangeFilter
to add the range filter to the invoking instance of Cplex
.
CPXaddsolnpoolrngfilter
, passing a linear constraint and range as arguments; or, use your favorite text editor to create a file formatted according to the specifications in FLT File Format: Filter Files for the Solution Pool, and then install the contents of that file with the routine CPXreadcopysolnpoolfilters
.
read filename.flt
Copyright © 1987-2007 ILOG S.A. All rights reserved. Legal terms. | PREVIOUS NEXT |