Javascript Menu by Deluxe-Menu.com
[Home]
[Client Area]
English Japanese

RELNOTES - November 2003

Release notes for Xpress-MP 2003I - all platforms. Contents -------- System Requirements 1) Microsoft Windows 2) Unix New in this release 1) Xpress-Optimizer 2) Xpress-Mosel 2.1) Mosel Console 2.2) Language 2.3) Compiler Library 2.4) Runtime Library 2.5) Modules 2.5.1) mmxprs module 2.5.2) mmodbc module 2.5.3) mmquad module 2.5.4) mmxslp module 2.6) Native Interface 2.7) Mod2Mos program 3) Xpress-IVE 4) Xpress-BCL 5) Xpress-SLP 6) Licensing Fixed in this release 1) Xpress-Optimizer 2) Xpress-Mosel 2.1) Mosel Console 2.2) Compiler Library 2.3) Runtime Library 2.4) Modules 2.4.1) mmxprs module 2.4.2) mmsystem module 2.4.3) mmetc module 2.4.4) mmquad module 2.4.5) mmxslp module 2.5) Native Interface 2.6) Mod2Mos program 3) Xpress-IVE 4) Xpress-BCL 5) Xpress-SLP 6) Xpress-Java 7) Licensing Unresolved in this release 1) Xpress-IVE 2) Xpress-Mosel 3) Xpress-BCL 4) Xpress-SLP 5) Licensing 6) Installer System Requirements ------------------- ------------------- 1) Microsoft Windows -------------------- This Xpress-MP release will work on the following Windows operating systems and PC processors:- Operating systems:- Windows 2000, Windows NT4 with at least Service Pack 6, Windows XP, Windows 98 and Windows releases after Windows XP. NOTE: This Xpress-MP release will not work on Windows 3.1, Windows 95 and Windows NT3. PC Processors:- Intel Pentium Pro, Pentium 2 and models later than Pentium 2. AMD Athlon, Duron and models later than these. Cyrix MII, VIA models and models later than MII. Xpress-IVE requires a minimum screen resolution of 800 x 600 pixels. 2) Unix ------- The .tar distribution files supplied on the CDROM in the unix/ directory contain the Xpress-MP Unix releases for the following platforms. sparc32.tar - 32 bit software for Sun SPARC Solaris 2.6,7,8 sparc64.tar - 64 bit software for Sun SPARC Solaris 7,8 linux32.tar - 32 bit software for Linux (GlibC 2.2 or higher) hpux32.tar - 32 bit software for HP-UX 11.00 hpux64.tar - 64 bit software for HP-UX 11.00 aix32.tar - 32 bit software for AIX 4.3,5.1 aix64_43.tar - 64 bit software for AIX 4.3 aix64_51.tar - 64 bit software for AIX 5.1 The version numbers of the packages are given in the file version.txt. The hardware and operating system requirements are liable to change in future releases. Please refer to the web site (/home/products/platforms/platform_policy.html) for the platforms supported by the most recent release. New in this release ------------------- ------------------- 1) Xpress-Optimizer ------------------- [2003F] - New heuristic for problems with binary variables and small coefficients in the matrix. - New control BRANCHCHOICE which determines whether the branch with the minimum or maximum estimate is followed first. - New control SBSELECT to set the size of the candidate list of global entities for strong branching. - New library function XPRSfixglobal which fixes all the global entities to the values in the solution file. [2003E] - Ascii solution files can be written with full precision using writesol -p - The Optimizer VB interface functions XPRSgetlasterror, XPRSgetprobname and XPRSgetbanner have been rewritten to make them easier to use [2003D] - Improved MIP performance The Optimizer MIP performance has been improved by 44% ( measured against our internal benchmarking problem set ). For those problems that failed to solve within 1800 seconds with the previous release, 38% now solve in less than 1800 seconds. [2003C] - Improved handling of dense blocks in the barrier code - Improved primal performance particularly on degenerate problems - Improved presolve of semi-continuous variables - Automatic detection of semi-continuous integer variables by presolve - Node presolve now works on integer variables - Lift and Project cuts are now generated - A basiscondition function has been added which return the condition number of a basis [2003B] - QP problems can now be written as MPS files [2003A] - Improved barrier performance - Improved cross-over performance - Improved stability of dual algorithm on badly scaled problems [2003] - Branch and bound harness has been completely rewritten making it faster and more flexible. - New branching techniques which result in substantially fewer nodes in the tree search - Primal heuristics for finding MIP solutions faster - A linear dependency checker has been added to presolve. This can improve solution times when using the barrier algorithm and can be turned on by adding 16384 to the PRESOLVEOPS control variable. - The barrier algorithm will now automatically solve the dual of a problem if this will be faster. - A new licensing system, FlexLM, has been implemented 2) Xpress-Mosel --------------- 2.1) Mosel Console ------------------ [2003C] - command `info' now also displays the dsopath [2003] - the command line interpreter no longer needs the environment variable MOSEL/XPRESS to locate its files (modules and dictionaries) 2.2) Language ------------- [2003] - initialization blocks now support range sets - after an `initialisations from' the control parameter `nbread' now contains the number of items read in - the character `*' may be used in place of a value in an `initialisations' file to skip the initialisation of the corresponding entry - multiple arrays can be initialised/saved with a single record. Example: initialisations from 'f.dat' [t1,t2] as "t1t2" end-initialisations f.dat: t1t2: [ (1) [1 2] (2) [3 4] ] gives: t1(1)=1, t1(2)=3, t2(1)=2, t2(2)=4 - symbol ',' is now treated like the space character in data files. - 'getsize(string)' returns the length of the string - new procedures makesos1/makesos2(linctr,set of mpvar,linctr) makesos1/makesos2(set of mpvar,linctr) 2.3) Compiler Library --------------------- [2003E] - symbol ';' now accepted at end of option list [2003D] - further improvement of compilation error messages [2003C] - improved compilation error messages [2003] - exec renamed to execmod - when an identifier is unknown, the compiler reports "`id' is not defined." instead of "Syntax error" 2.4) Runtime Library -------------------- [2003E] - faster implementation of function `exists' (when loop is not optimized) [2003C] - static arrays indexed by empty sets are now accepted - new function `getdsopath' that returns the search path for DSO used by Mosel - new function `getversions' to get the version numbers of Mosel, BIM format and NI in numerical form [2003] - each model now uses its own random number generator - new function `getdllpath' to get the location of xprm_rt.dll (Windows only) - new function `setdsopath' to specify the location(s) of the modules (the default values come from the environment variable MOSEL_DSO) - new function `dsotyptostr' to get a text representation of an entity of an external type - function 'cmpindices' has now 3 parameters (first parameter removed) - function 'nextarrentry_trs' removed - function `getdsoinfo' has an extra parameter: it returns the module provider name if the module is certified - functions renamed: firstsetndx->getfirstsetndx lastsetndx->getlastsetndx nextarrentry->getnextarrentry nextarrtruentry->getnextarrtruentry firstarrentry->getfirstarrentry firstarrtruentry->getfirstarrtruentry lastarrentry->getlastarrentry 2.5) Modules ------------ [2003] - new mmquad module provides support for quadratic expressions. It is required to model QP problems with mmxprs - new modules mmxslp and mmxcmd provide an interface to Xpress-SLP from the mosel environment. 2.5.1) mmxprs module -------------------- [2003E] - model cuts are now saved by procedure `writedirs' - constants for callback names to conform to optimizer names XPRS_CB_LPLOG, XPRS_CB_GLOBALLOG, XPRS_CB_BARLOG, XPRS_CB_CHGNODE XPRS_CB_PRENODE, XPRS_CB_OPTNODE, XPRS_CB_INFNODE, XPRS_CB_INTSOL XPRS_CB_NODECUTOFF, XPRS_CB_INITCUTMGR, XPRS_CB_FREECUTMGR XPRS_CB_CUTMGR, XPRS_CB_TOPCUTMGR - new procedure 'getiis' - optimizer's working files are now created in the temporary directory (the generated problem name includes a full path) - parameter 'probname' can now be changed - added control parameters xprs_maxcuttime, xprs_maxiis - names are now loaded before directives: errors related to directives are displayed using model names [2003] - error messages are now displayed even if XPRS_verbose is false - the control parameters have been updated - new procedure `savestate' to save the optimiser state (the program terminates after this call) - new control parameter "XPRS_colorder" to force an order on columns of the matrix (1,3: `numerical' order; 2: alphabetic order of var. names) - new procedures 'writedirs' and 'readdirs' for saving/loading directives to/from files - SOS names are now loaded in the optimizer if XPRS_loadnames is true - new procedures loadprob(qexp), loadprob(qexp,set of mpvar) for QP (requires module mmquad) - new procedures minimise/maximise(qexp), minimise/maximise(integer,qexp) for QP (requires module mmquad) 2.5.2) mmodbc module -------------------- [2003] - new control parameter SQLbufsize to set up the size of the data buffer in kilobytes (default: 4) - SQLexecute now transfers several rows at a time (when supported by the data source) - new procedure SQLupdate to update database tables from Mosel arrays (available only if the data source support positioned update) 2.5.3) mmquad module -------------------- [2003C] - "qexp/real" now supported 2.5.4) mmxslp module -------------------- [2003E] - SLPscaling procedure added [2003D] - Corrected handling of large formulae to avoid a program error. [2003C] - Multi-valued user functions can now be programmed in Mosel 2.6) Native Interface --------------------- [2003C] - constructors ('@&' functions) can now have parameters of structured type (like sets or arrays) - new function 'getversions' to get the version numbers of Mosel, BIM format and NI in numerical form 2.7) Mod2Mos program -------------------- [2003C] - TABLES options are now reset when using a single line statement - SOS described without reference row are now translated [2003] - The program mod2mos is intended to help in the process of migrating models written for mp-model to Mosel by translating source files and data files from one syntax to the other. The translation is operated in a way that preserves as far as possible the structure of the original file (location of comments, order of instructions). 3) Xpress-IVE ------------- [2003E] - The "mmive" procedures IVEinitgraph() and IVEaddtograph() have been removed. They were replaced by the more flexible IVEaddplot() and IVEdraw...() routines. For more information, please go to menu Help->Xpress-IVE Help... and click on Tool Bars->Run Bar tabs/panes->User graph. - SLP progress charts. - Improved matrix visualization: no need to pause for viewing matrix. - Detailed variable list view for matrices loaded in the Optimizer. - Repair Window Layout feature. - Context help for model editor. - Matrix thumbnail image to track progress. - MIP search can be stopped without interrupting model. - Output pane directly supports selection, search and copy operations. - The "Project" file management scheme has been removed from IVE. [2003] - Branch and Bound tree visualization during the MIP search. - C, Java, VB source code generation for deploying Mosel models. - C, Java, VB source code generation for optimizing matrices. - Content listing of all Mosel .dso modules present in the system (including .dso's created by users, if available) - Mosel dynamic module (.dso) creation wizard. Produces C source code template for generating .dso libraries. DSO information persists across multiple runs of Xpress-IVE so users can resume work on a module at any time. - Upgraded "mmive" library for drawing advanced user graphs. - The entity tree now also displays external (user) types. - Simplified Optimizer dialog. - Code completion in the Mosel editor is aware of "mmxprs" and "mmive" modules. 4) Xpress-BCL ------------- [2003C] - C++/Java: new method setMsgLevel for XPRBprob - New functions for setting the column ordering for matrix generation (C/VB: XPRBsetcolorder, C++/Java: method setColOrder for XPRB and XPRBprob) [2003] - Accessing Xpress-Optimizer control parameters and problem attributes from BCL in Java is now possible. (The advanced examples requiring changes to Optimizer settings can therefore now also be run under Java.) - New interface: Visual Basic. - The function prototypes in the C interface has been simplified/corrected: The first parameter now always corresponds to the object that a function is applied to. This means that "XPRBprob" only appears in functions directly related to a problem such as creation of new objects in a problem and optimization tasks. The BCL 2.2.0 C interface is not compatible with the previous C interfaces. - C and C++: getXPRSprob now has the return type XPRSprob instead of void*. - The C function setdictsize has been renamed to setdictionarysize and the corresponding C++ and Java methods to setDictionarySize. - Updated and corrected documentation. 5) Xpress-SLP ------------- [2003E] - New function XSLPscaling which reports min and max values of coefficients and max values of row and column ratios in the matrix - New algorithm setting to rescale matrix at each SLP iteration of SLP optimization - New optional convergence testing on objective function value for SLP optimization - MISLP: New algorithm setting XSLP_SLPTHENMIP which does SLP to convergence, then MIP on the resulting matrix then SLP on the MIP solution [2003D] - The Visual Basic API Programming interface is now available. - Support is now provided for user functions written in Visual Basic - Support is now provided for user functions called through the COM interface [2003C] - Escalation of penalty error costs using a new bit setting in XSLP_ALGORITHM [2003] - Xpress-SLP is a new addition to the Dash product range utilizing SLP, Sequential Linear Programming, to solve a wider class of problems called non-linear optimization problems. 6) Licensing ------------- [2003D] - Initialization of the Xpress libraries ( e.g. XPRSinit) is now faster [2003C] - More descriptive error messages. - License manager now starts automatically. - Automatic heartbeats on all platforms (SECURE_Heartbeat functions no longer do anything). - Added DLL version number. - Replaced platform "tokens" with proper FLEXlm platform checking. - Better error trapping. - No need to define a module name when compiling with XPRL. [2003] - Added support for Baby and NetHASP dongles. Fixed in this release --------------------- --------------------- 1) Xpress-Optimizer ------------------- [2003G] - A memory leak in the primal heuristics has been fixed - A problem with LPs being declared infeasible if presolved is turned off has been fixed - A problem with MIPs being declared infeasible if cuts are not generated has been fixed - QP problems are now resized correctly - A problem with cycling in the dual in the case of loss of precision has been fixed - Setting EXTRAMIPENTS no longer causes a crash if too many extra integer variables are created by presolve [2003F] - A problem in presolve where a new integer might get a too tight upper bound. - Branching estimates are now calculated correctly for negative integer variables. - A problem instance that contains both general upper bounds (GUBs) and variable lower bounds might be presolved incorrectly. This has now been fixed. - Continuous variables with a quadratic coefficient will no longer be turned into integers. - Getting the basis condition number will no longer affect the LP objective value. [2003E] - Integer variables having very large values are now handled correctly - A problem with re-optimizing when REFACTOR is set to 0 has been fixed - Infinite row ranges are removed when the problem is read in - The XPRSchgbounds() function can now be called from a global callback and will now change the bounds at the current node and all descendant nodes. - Objective function values greater than 1.0e+20 can now be handled in global - Fractional upper bounds are now not created on integer variable which caused error messages to be printed when generating lifted cover inequalities - Binary SOS constraints are now detected correctly - Phase II dual values are now returned if small infeasibilities remain after optimizing with the barrier - The efficiency of calling cut manager callback has been improved - The maximum path length for the problem name has been increased to 260 - A lower bound specified for a semi-continuous variable in an LP file is now taken to be the semi-continuous lower bound - A problem with QP variables moving from super basic values to their upper bounds has been fixed - A problem with reading in semi-continuous upper bounds in MPS files when the bound occupies more than 14 digits has been fixed - A problem with branching on semi-continuous integer variables has been fixed - A problem with cycling caused by adding cuts in the tree has been fixed - A problem with identification of integer variables by presolve has been fixed - The SOS branching has been improved - A problem with user branching has been fixed [2003D] - A problem with partial integers causing an integer overflow has been fixed - A problem with reading and writing empty rows in LP format has been fixed - A memory leak when adding quadratic elements has been fixed - minim -l may now be called for MIP problems containing sets - A problem with adding cuts after adding model cuts has been fixed [2003C] - Memory allocation problem on Windows 95 machines has been fixed - A presolve problem when detecting infeasibility has been fixed - A problem with restoring global searches has been fixed - Handling of numerical errors in primal have been improved - An error in strong branching has been fixed [2003B] - QP simplex has been made more stable on difficult QP problems - Accuracy of presolve has been improved when objective function is described by constraints in the matrix - Integer infeasibility occuring in equality rows is now detected correctly by presolve - Bounds added by user branching schemes are now scaled correctly - A problem generating very dense clique cuts has been fixed - A problem copying QP problems has now been fixed - Greater than GUBs are now handled correctly by MIP search - The MIP search now stops correctly if a time limit is imposed and the barrier algorithm is used to re-optimize the nodes [2003A] - Optimizer now stops correctly if a stop code is returned from the global callback called at a node which has been cut-off - Save and restore now work with global problems - User cut branching now works - A scaling problem with calculating the default value of MIPADDCUTOFF has been fixed - A problem will now be post-solved if the barrier algorithm detects that the problem is unbounded [2003] - Singleton column removal on the upper bounds of range rows has been corrected - Semi-continuous variables are now correctly fixed to their lower bounds by presolve - The full 64 characters of the name of an infeasible column detected by presolve is now printed - A stack overflow showing up in the Java interface has been fixed - Bounds on integer variables are now rounded to nearest feasible integer value - The commands printsol and writeprtsol will now print a solution if presolve has detected the problem to be infeasible 2) Xpress-Mosel --------------- 2.1) Mosel Console ------------------ [2003E] - temporary files are now created in the temporary directory of the Operating system [2003] - Ctrl-C now works when using command `exec' 2.2) Compiler Library --------------------- [2003E] - '-=' now performs a subtraction instead of an addition when applied to types defined in a module - '+=' and '-=' now work as expected when applied to types defined in a module and specific implementations (operators @P and @M) are not defined - test of type 'c in S' where 'c' is a linear constraint now accepted - loops of type "aggr(i in I| aggr(j in J|C(i,j)))" now compiles without error - the symbol '.' used on its own is now recognised as '.' instead of 0 [2003D] - now correctly handles range initialization in subroutines (e.g. N:=1..5) - expressions of type '{1,2,max(i in 1..10) i, 5}' now produce expected results (the aggregate operator uses only constants) - expressions of type `sum(i in union(j in {1,10}) {j}) i' do not generate a general error any more (nested aggregate operators with computed sets) [2003C] - expressions of the form: "sum(i in {1,2,3}) ..." are now properly compiled - using different types in the forward declaration and definition of a function now produces a compilation error [2003] - better error recovery when parsing procedures/functions - several set operations in a single expression do not generate a 'general error' any more e.g. sum(i in a+b) t1(i)+sum(i in b+c) t2(i) - operators /, div, mod and ^ now generate errors if used on invalid types - S(i):=v (S is a set) now correctly produces a syntax error - forall(i=C)... now properly handled if C is not an integer - overloading of procedures with arrays as the parameter is now properly handled - tuples of constraints no longer crash the compiler - if a keyword is the first token of an iterator(e.g. sum(in...) the compiler now generates a syntax error - local constants in iterators (e.g. sum(i=1)...) are properly handled - a syntax error in an 'if' statement does not stop the compilation any more - 'case of X' with X not an identifier now works 2.3) Runtime Library -------------------- [2003E] - `getdsopath' now returns an empty string if no dso path is defined - `setdsopath' does not cause corrupt the dso path when the provided string is shorter than 2 characters [2003D] - assignments of type 'T:=[true,false,...]' now work as expected - an array of size > 2^32 now produces an 'out of memory error' [2003C] - all module control parameters passed to 'runmod' are now processed - when using an OEM licence, it is now possible to finish/initialise the Mosel libraries several times in a single run [2003] - after executing an optimization task (e.g. 'maximise') the random number generator is not reset any more - setting of control parameters via function 'runmod' has been made more robust - function 'getelsetndx' does not expand dynamic sets any more 2.4) Modules ---------------- 2.4.1) mmxprs module ---------------------- [2003E] - problems for which global has not found a solution are now marked as infeasible (i.e. 'getprobstat' returns XPRS_INF instead of 0) - a potential problem has been fixed when 'setmipdir' is used on continuous variables (this is not allowed by the Optimizer) [2003C] - the sequence "optimize qprob"->"optimize linprob" does not fail anymore 2.4.2) mmsystem module ---------------------- [2003] - gettime can now measure periods of time >37 minutes under Posix systems 2.4.3) mmetc module ------------------- [2003C] - mmetc does not crash any more when 'diskdata' is used with too many parameters 2.4.4) mmquad module -------------------- [2003C] - assignment "q:=0" (where 0 is a null quadratic expression) now works as expected 2.4.5) mmxslp module ------------------- [2003E] - Corrected handling of SLPDATA() function with empty string arguments - Improved identification of functions and arrays for user functions - Corrected error which could exclude mpvars appearing only in XVs [2003D] - Corrected handling of large formulae to avoid a program error - Negative integer initial values now treated correctly - Corrected handling of callback functions which call other functions - Corrected handling of uninitialized gexp during matrix generation [2003C] - SLPDATA corrected to set up DR correctly - Corrected matrix naming when using string sets - Corrected settings so that multiple optimisations can be run within a single model - Corrected parsing of some genctr formulae - Removed interdependence between mmxslp module and specific Xpress-SLP versions - Error messages now always appear 2.5) Native Interface --------------------- [2003] - 'tostring' now receives 'libctx' instead of '&libctx' when called from 'dsotyptostr' (RT library) 2.6) Mod2Mos program -------------------- [2003D] - now displays an error message if option names are longer than 1 char [2003] - now ignores offset `1` (e.g. T(1,1)) in diskdata sections 3) Xpress-IVE ------------- [2003E] - Fixed problem with using COM servers (e.g. Microsoft Excel) from the Mosel native interface. Objects are now released correctly when compiling a new model or when exiting IVE. [2003D] - All optimizer callbacks can now be used from Mosel, when working in IVE. Specifically, the node cutoff, variable selection, infeasible node, and integer solution callbacks are now usable. - Fixed problem with finding Help files in Windows 98. [2003C] - Regardless of screen resolution, the file editor will no longer be obscured when starting IVE for the first time. - When running a model or optimizing a matrix file, IVE no longer reverts to the Output/Input tab. Instead, the current tab remains active. - The node highlighter tool of the branch and bound tree is now updated fast. - In some instances, the branch and bound tree was laid out on a vertical line. This has been resolved. - The time overheads section of the Stats tab in the Run bar no longer overlaps with other sections. [2003] - Fixed problem with creating new files in Windows XP. - Mosel syntax coloring now works for all caps names. 4) Xpress-BCL ------------- [2003D] - File version information under Windows now set up properly - Minor correction to handling of quadratic terms. [2003C] - Changes to initialization/termination: now the Optimizer is terminated by BCL making all initialization and termination calls symmetric; to continue using the Optimizer after terminating BCL it needs to be initialized (and terminated) separately - XPRBfree/XPRBfinish now return int (no longer void) - XPRBgetvartype/getctrtype/getsostype: error return value corrected to -1 - XPRBexportprob: if an invalid format is specified format will default to LP format rather than ignore the function call as before - XPRBprintf now returns -1 if the text output gets truncated (otherwise, as before, the number of characters printed) - Multiple inclusions of header file xprb.h are now possible. - Upper bounds of binary variables output correctly in MPS format. [2003] - C++:Correct handling of quadratic terms: 0*x*y->entire term 0. - Changing RHS of a constraint with setterm now leads to problem re-generation. - Bounds of binary variables are not ignored any more at their creation. 5) Xpress-SLP ------------- [2003E] - Corrected linkage to XPRSsetcbmessage - Corrected XSLPreadprob to allow repeated use within same problem. Previously XSLPreadprob could only be used at most once in any problem - Corrected XSLPwriteprob to write out integer variables and other global entities - Corrected storing of results from multivalued users functions - Corrected handling of multiple user functions in a single Excel workbook - Corrected handling of user functions defined in a RESTOREd problem - Improved connection to mmxslp (Mosel module) to identify Mosel functions and arrays - MISLP: Corrected storage of intermdiate results which previously caused intermittent program error for MISLP optimizations - MISLP: Better scaling of MISLP problems - MISLP: Corrected solution status for best [2003D] - Corrected calculation of penalty error totals - Corrected criteria for increasing penalty scaling - Corrected handling of step bounds when applied at start of SLP - Corrected handling of derivatives using XVs - MISLP: can now be run within a loop from Mosel - MISLP: corrected handling of temporary file names during reading of matrix in XSLPreadprob - MISLP: now checks correctly for disk errors when writing matrix with XSLPwriteprob - MISLP: the prototype for XSLPreadprob is now included in the XSLP.h header file [2003C] - XPRSinit() must be called before XSLPinit() and XPRSfree() must be called after XSLPfree(). - Message levels for warnings and errors have been corrected - Parsing of complex formulae corrected in XSLPreadprob - Removed limit on size of formula that can be read using XSLPreadprob - Outputting of complex formulae with XSLPwriteprob corrected - Removed limit on size of formula that can be outputted with XSLPwriteprob - Corrected setting of initial value for "equals column" in pre-processing stage - Corrected creation of penalty error vectors in pre-processing when ALLROWERRORVECTORS is selected - Now identifies feedback mechanisms at the pre-processing stage during cascading - Now traps MOSEL functions called from optimisation outside Mosel - Corrected handling of constant arguments to user functions - Modified handling of small penalty error vector activities 6) Xpress-Java -------------- [2003G] - License relinquished properly when XPRS.free is called 7) Licensing ------------ [2003D] - Stopped DOS-box appearing when IVE starts the license manager. - Fixed corrupted error messages from IVE. - The Solaris version of the license manager no longer fails to start with an error about the vendor daemon being unable to talk to the license manager. - The Xpress libraries no longer fail to initialize with a "Security Error 42". [2003C] - COM applications using Xpress no longer crash when CoUnInitialise is called. - Optimizer no longer exits with an error when one of the algorithms not licensed on that machine is licensed on a different machine. - FLEXlm libraries are now freed properly when DLL is unloaded (VB problem). - Removed unnecessary mutex initialization under Unix. [2003] - Fixed the problem where not enough memory was allocated for embedded OEM licenses. Unresolved issues in this release --------------------------------- --------------------------------- 1) Xpress-IVE ------------- [2003E] - There is a known timing issue during IVE initialization on a Windows 98 system which can lead to an exception and the program closing. This problem can occur immediately after IVE is executed. It will not occur after the IVE main window has opened and therefore there is no risk of data loss. The workaround is simply to restart IVE. - Currently, the Optimizer does not support viewing the presolved problem when using Newton Barrier. The matrix before presolve may be displayed when selecting "Graphical presolved" in the Matrix pane of the Run Bar. [2003C only] - Online Xpress-IVE help and Xpress General help options do not work from the IVE editor menu in Windows 98. Workaround: copy IVE.chm and documentation.chm from [XpressDir]/docs to [XpressDir]/bin. [2003C, resolved in 2003E] - When running an SLP model which calls Excel, the Excel Window will not be closed automatically and has to be closed manually. In general, COM objects created within a Mosel .dso may not be released correctly. [2003, resolved in 2003C] - When you start Xpress-IVE on certain computers the initial configuration of the different windows in Xpress-IVE may obscure the main file view window (which can be confusing). Use the mouse to resize the windows so you can see the file view window properly 2) Xpress-Mosel ------------- [2003D, resolved in 2003E] - Under Windows XP, Mosel can fail with an error message reporting a problem with creating a temporary file. This only occurs when the -c switch is used and the Windows user account does not have write permission to the root of the C drive. The workaround is to create a text file containing the mosel commands and pipe this text file to Mosel. 3) Xpress-BCL ------------- [2003, resolved in 2003C] - Multiple inclusions of header file xprb.h are not possible. - Upper bounds of binary variables are not output correctly in MPS format. 4) Xpress-SLP [2003C only] - This only affects users of Xpress-SLP (release 1.11, available on the 2003C CD only) using the XSLPreadprob() function or the xslp.exe console interface to read extended MPS format matrices. Changes were made in the file handling in the XSLPreadprob() function for the 2003C release of Xpress-SLP. These were intended to avoid potential problems with multi-threaded applications. If the name of the default directory (as provided by the operating system) for temporary file names is too long, then the file name is corrupted internally and the matrix cannot be read. An error message appears similar to the following: >? 85 Error: File not found: C:\DOCUME~1\user\LOCALS~1\Te7.mat The problem is being corrected and a new version of the program will be available if required. In the meantime, if you are using this function, the error can be avoided by setting the environment variable TMPDIR to the name of an existing directory with a short name name - e.g. C:\mytemp [2003C] - Use of SLPglobal inside a loop in Mosel causes error termination with an access violation. 5) Licensing ------------ [2003C, resolved in 2003D] - The Solaris version of the license manager sometimes fails to start, with an error about the vendor daemon being unable to talk to the license manager. An updated vendor daemon and license manager can be downloaded from /home/secure/download.html#license - Some users have reported a failure to initialise the Xpress libraries, with a "Security Error 42". This is due to a bug in the FLEXlm licensing system, which is under investigation. [2003D] - There are known issues with "Media Sensing" in recent Windows release (e.g., Windows 2000\XP) and Xpress-MP licenses becoming disabled when the computer is not connected to a network. The fix is to disable "Media Sensing" so that Windows does not automatically adjust the network adapter configuration when the computer is disconnected from the network. For details see "How to Disable Media Sense for TCP/IP in Windows" at: http://support.microsoft.com/default.aspx?scid=kb;EN-US;q239924 - There are known issues with bi-directional parallel port configurations on portable PCs and Xpress-MP dongles failing to be recognized by Xpress-MP licensing system. On certain portables the parallel port settings in the BIOS can be either "bi-directional", "output only" or "ECP". Using a setting other than "ECP" can cause Xpress-MP to fail to recognize the dongle. [2003, resolved in 2003C] - The Linux version of the Dash vendor daemon will not run on a Linux release that has a version of GLIBC older that 2.2. An updated daemon can be downloaded from /home/secure/download.html#license - There is a bug in the Dash vendor daemon that causes problems when Xpress-MP 2003 is used with a floating license tied to a dongle, particularly with NetHASP dongles. An updated daemon can be downloaded from /home/secure/download.html#license 6) Installer ------------ [2003C only] - Existing PATH environmental variable settings can be lost when installing Xpress-MP on a windows 98 machine. This only affects machines with autoexec.bat files containing a @ character at the start of the line which sets the PATH variable. The installer does not recognize the @ character and so adds a new SET PATH= statement Which overrides the existing one. Machines which depend on the PATH variable containing the Windows Directory path will fail to boot into Windows. The workaround is to remove the @ characters from the SET statements in the autoexec.bat file before installation. They can be replaced once installation has completed if required. For users who have already encountered this problem and have lost their original PATH settings, follow the steps below... 1. Locate the two SET PATH statements in the autoexec.bat file. 2. Append the path from the second statement to the end of the first, with a ; separator if necessary 3. Remove the second path statement. [2003C only] - If Xpress-MP 2003C is installed to the same directory as an existing older installation then the new BCL and Mosel files will not be copied over the old versions due to a problem with the version numbers of these files not being set correctly. The workaround is to install 2003C in a different directory or uninstall the previous version first. Dash Optimization
Related Topics
2004 Release notes
Xpress-MP product overview
Evaluate Xpress-MP
Ordering Xpress-MP
White papers
[Home] [Contact] [Client Area] [Search] [Sitemap] [Links] [Printer Friendly]
  © 2008 Fair Isaac Corporation. All rights reserved.