HomeOrderDownloadLinksLegalFeedbackNews - last updated May 26, 1998


Module Name: oslsslv

ã IBM Corp. 1995, 1997. All rights reserved.


Purpose:
To solve Linear Programming problems using Simplex methods
Usage:
oslsslv ["?"] [-keyword=value] [...] [@keyword_file]
keyword_file:
Name of file containing "-keyword=value" strings.
Each "-keyword=value" string in this file must be on a separate line.



Valid Keywords and Default Values:


maxmin = min|max - default: min
input = input_mps_file - default: standard input
output = listing_file - default: standard output
dspace = value - default: 400000
isolmask = value - default: 0
iprtinfomask = value - default: 31
presolve = yes|no - default: yes
presolvetype = 0|1|2|3 - default: 3
crash = yes|no - default: yes
scale = yes|no - default: yes
inbasis = in_basis_file - default: null
outbasis = out_basis_file - default: null
imaxiter = value - default: 9999999
infeas = value - default: 0
alg = osl|primal|dual - default: osl
osli_n_ = value - default: a function of n
oslr_n_ = value - default: a function of n
oslc_n_ = value - default: a function of n


Explanation of Keywords:


maxmin : Solve as a maximization or minimization problem.
input : Name of file containing input data - MPS format.
output : Name of file to receive OSL messages.
dspace : Size in double words of OSL work area.
isolmask : Matrix bit mask for EKKPRTS print function.


= 1 : selects the rows
= 2 : selects the columns
= 4 : selects the nonzero elements of the model
= 8 : selects the infeasible elements of the model
= 15 or 0 or 16 : selects the entire matrix


iprtinfomask : Solution information bit mask for EKKPRTS print function.


= 1 : selects the statistics
= 2 : selects iteration count, value of the objective function and the problem status
= 4 : selects the names of the columns and rows
= 8 : selects the status of each variable
= 16 : selects the row and column solution values
= 32 : selects the dual values and reduced costs
= 64 : selects the lower bounds
= 128 : selects the upper bounds
= 256 : selects the input costs
= 512 : selects the matrix elements
= 0 : selects all of first six options (same as 63).


presolve : Use EKKPRSL function to pre-solve problem.
presolvetype : Type of reduction to be performed by EKKPRSL.


= 0 : the redundant rows are eliminated, the variables summing to zero are fixed.
= 1 : type 0 reductions are done and the doubleton rows are eliminated.
= 2 : type 0 reductions are done and variable substitutions performed.
= 3 : all of type 0, 1, and 2 reductions are performed.


crash : Use EKKCRSH function to create a starting basis.
scale : Use EKKSCAL function to scale the coefficient matrix.
inbasis : Name of file containing an input basis to be used by EKKBASI.
outbasis : Name of file containing an output basis created by EKKBASO.
imaxiter : The maximum number of iterations that OSL will perform.
alg : Simplex algorithm to be used.


= primal : primal algorithm
= dual : dual algorithm
= osl : algorithm to be selected by OSL


infeas : Infeasibility analysis bit mask for EKKNFES function


= 0 : no analysis is performed.
= 1 : outputs messages identifying infeasibilities.
= 2 : finds one or more 'powerful infeasibilities'.
= 4 : finds an 'influential constraint'.
= 8 : finds an irreducible infeasible subset (IIS) of constraints.


osli_n_ : OSL Integer Control variable n; 0 < n < 62
oslr_n_ : OSL Real Control variable n; 0 < n < 46
oslc_n_ : OSL Character Control variable n; 0 < n < 11


See the library User's Guide for more information on Control variables.



Example 1

oslsslv "?"
This command results in the usage information and display of valid keywords, their meanings along with the default values.

Example 2
oslsslv -imaxiter=20000 < test1.mps > test1.out
The oslsslv program is started using test1.mps as input data. Output is directed to the file test1.out. The program will stop after 20000 iterations.

Example 3
If the file key_file.001 contains the following 4 lines:
 
     presolve=no
     alg=dual
     imaxiter=20000
     osli_36_=132
 
then the command:


oslsslv -dspace=1000000 @key_file.001 < test1.mps > test1.out


will start oslsslv with a work area of 1 million double words. The ekkprsl() pre-solve function will not be invoked. The dual algorithm will be used. The application will stop after 20000 iterations. The maximum number of characters on each line of output is 132.

Example 4
The command:


oslsslv -dspace=1000000 @key_file.001 -input=test1.mps -output=test1.out


is equivalent to:


oslsslv -dspace=1000000 @key_file.001 < test1.mps > test1.out


oslsslv USAGE NOTES
1. If oslsslv is having difficulty with a problem, then you should increase the size of OSL work area using the "dspace" keyword and try solving the problem again.
 

System Requirements

The installation instructions included in the download instructions include System Requirements.

IBM homeOrderPrivacyLegalContact IBM