Professional Documents
Culture Documents
7
Release Notes
September 2003
Contents
Release Notes
Preface
CONTENTS
These Release Notes summarize what has changed in ILOG OPL Studio since version 3.6.1.
Note that from OPL Studio 3.5 onwards, C++ code generation is no longer available. The
generic C++ API replaces this feature. Code migration is explained in the OPL Studio
Migration Guide.
The readme file also contains additional information and should be consulted before
launching OPL Studio.
The main differences between version 3.7 of OPL Studio and the previous version, 3.6.1, are
the following:
Adding ILOG Business Rules to an OPL Model
Changes in the Component Libraries
Changes in the CPLEX Parameters
Changes in the OPL Studio Debugger
Changes in Behavior
Bug Fixes
Discontinued Platforms
format(StringBuffer buffer,...);
formatAsArray(StringBuffer buffer,...);
formatAsEnum(StringBuffer buffer,....);
formatAsEnumValue(StringBuffer buffer,....);
formatAsFloat(StringBuffer buffer,....);
formatAsInt(StringBuffer buffer,....);
formatAsSet(StringBuffer buffer,...);
formatAsString(StringBuffer buffer,....);
formatAsStruct(StringBuffer buffer,....);
OPLrulesAdaptor
The class ilog.opl.engine.OPLrulesAdaptor eases integration between an ILOG
JRules application and an OPL model by translating instances of
ilog.rules.engine.IlrDefaultCollector into OPL data sets, arrays, or enumerated
values.
public class OPLrulesAdaptor extends OPLadaptor
{
public static final void formatAsArray(Stringbuffer buffer,...);
public static final void formatAsEnum(Stringbuffer buffer,...);
public static final void formatAsSet(Stringbuffer buffer,...);
}
OPLadaptable
You can implement the interface ilog.opl.engine.OPLadapatable in your own classes
to allow formatting as OPL data.
public interface OPLadaptable
{
public void formatToOPL(StringBuffer buffer);
}
OPLrequirement
The class OPLrequirement translates a requirement typically coming from business rules
into an OPL struct. OPL requirements are used to specify additional constraints in an OPL
model.
public class OPLrequirement implements OPLadaptable
{
public OPLrequirement(Object[] objects);
public OPLrequirement(Object object1, Object object2,...);
public void formatToOPL(StringBuffer buffer);
public boolean equals(Object o);
public int hashCode();
public String toString();
}
10
OPLsymmetricRequirement
The class OPLsymmetricRequirement groups a pair of objects as a symmetric
requirement. A symmetric requirement comes from business rules and is to be translated
into an OPL struct. Symmetric requirements are used to post constraints in an OPL model,
typically for specifying compatibility tables.
public class OPLsymmetricRequirement extends OPLrequirement
{
public OPLsymmetricRequirement(Object object1, Object object2);
public boolean equals(Object o)
}
induced neighborhood search (RINS) heuristic. The values are On or Off (default).
subMIPNodeLim, defines the MIP subnode limit. This parameter restricts the number
11
depInd, that sets the dependency check during preprocessing, now has five values:
-1 Automatic (default)
0 Off
1 On at beginning of preprocessing
2 On at end of preprocessing
3 On at beginning and end of preprocessing
dPriInd has an additional setting, 5, for Devex pricing.
MIPEmphasis has an additional setting, 4, to indicate MIP emphasis on hidden
feasibility.
Obsolete Parameters
barVarUp, the parameter that controlled the upper limit on variables in the barrier
optimizer has been removed. CPLEX now assumes an infinite upper bound unless a
finite bound is actually stated in the model.
simThreads, the parameter to limit the number of simplex threads has been removed.
Changes in Behavior
When you declare an ofile in OPL or OPLScript, the location of the file is relative to
the model or the script in which the ofile was declared.
If optimality is not proved, for example when the execution is stopped by the user, the
12
BUG FIXES
Bug Fixes
Several bugs have been fixed in OPL 3.7. For details, see the readme file.
Discontinued Platforms
HP-UX and AIX platforms are not supported in OPL 3.7.
Note: Microsoft Corporation has announced plans to discontinue standard support for the
Microsoft MSVC6 compiler as of September 30, 2003. Accordingly, ILOG will no longer be
able to provide standard support for those ILOG customers who have not upgraded their
applications to a later version of the Microsoft compiler. Nevertheless, ILOG will continue
to provide bug fixes for those customers, to the extent ILOG can do so without the support
of Microsoft.
13
DISCONTINUED PLATFORMS
14