The LiSA file format

Lisa uses text files to save and read problems, plans, values and configurations as well as for communication with external programs. Please read this documentation if you want to edit lisa files (*lsa) manually.

A lisa file contains entries of types PROBLEMTYPE, CONTROLPARAMETERS, VALUES and SCHEDULE. These entries start and end with their corresponding tags as in e.g. HTML example:

<PROBLEMTYPE>
  (content)
</PROBLEMTYPE> 

Entries of type PROBLEMTYPE

The syntax is
<PROBLEMTYPE>
Lisa_ProblemType= { (alpha) / (beta)  / (gamma) }
</PROBLEMTYPE>
where the following elements may be included
alpha: 1  one machine problem
       F  flow shop
       O  open shop 
       J  job shop
       X  mixed shop (some jobs with given machine order )
       G  general shop (arbitrary precedence constraints)
       P  identical parallel machines
       R  unrelated    "
       Q  uniform      "
     (excactly one of the elements above)
       M  machine number  fixed, but arbitrary
       machine number = m (a special number for m must be set)      

beta: PMTN, INTREE, OUTTREE, TREE, SP_GRAPH, PREC, RI, DI, PIJ_1, BATCH

gamma: CMAX, LMAX, SUM_CI, SUM_WICI, SUM_UI, SUM_WIUI, SUM_TI, SUM_WITI

Entries of type VALUES

All entries are of the form (keyword)= (content). See the list of allowed keywords below:
n, m  job number  and machine number-  These numbers ALWAYS have to be set first.
PT    matrix of completion times        
MO    given technology(machine order) (row matrix)
PREC  precedence constrains for jobs
PREC* precedence constraints for single operations
SIJ   set of operations (0/1-matrix)
RD    release dates  (vector)    
DD    due dates      (vector)
Wi    weights        (vector)
The content may be a number, a vector, a matrix or a graph. Numbers are written in C input format. Vectors are rows of numbers separated by spaces, altogether included in braces, e.g. {2 3 1}. Note: Before and after every brace and after = has to be a space or a line end. A matrix is represented as a vector of vectors, e.g. { { 0 1 } { 1 0 } }. Graphs are written as predecessor lists. These contain entries of the form: N(i)= { j k l }, where nodes j, k, l are predecessors of i. Nodes also may be ordered pairs i.e. N(0,0)= { (0,1) (2,4) }

Entries of type SCHEDULE

Same as values - (keyword)= (content). Allowed keywords are: n, m, MO, with the same meaning es explained above and
JO   the job order  (row matrix)
LR   the latin rectangle
Cij  the  matrix completion times. 
For preemption problems the keywords PPT, PMO, PJO, PLR and PCij are allowed. The meaning is the same as without P, but the matrix elements may be lists instead.

Entries of type CONTROLPARAMETERS

One or more statements of the form (type) (keyword) (content), where the type is restricted to long, float or String. The keyword may be any string without spaces and the content has to be of the specified type.

Comments

Lisa treats everything as a comment what is written outside the PROBLEMTYPE, CONTROLPARAMETERS, VALUES and SCHEDULE environment.


Table of contents
28.10.99, MH