Das Lisa-Dateiformat

Lisa verwendet Textdateien zum Speichern und Einlesen von Problemen, Plänen, Werten und Konfigurationen sowie zur Kommunikation mit externen Programmen. Lesen Sie diese Dokumentation, wenn Sie LiSA-Dateien mit anderen Programmen, z.B. Texteditoren, erstellen oder anpassen wollen.

Eine Lisa-Datei enthält Einträge der Typen PROBLEMTYPE, CONTROLPARAMETERS, VALUES und SCHEDULE. Die Einträge beginnen und enden mit dem jeweiligen Schlüsselwort wie in HTML, also z.B.:

<PROBLEMTYPE>
  (Inhalt)
</PROBLEMTYPE> 

Einträge des Typs PROBLEMTYPE

Die Syntax lautet
<PROBLEMTYPE>
Lisa_ProblemType= { (alpha) / (beta)  / (gamma) }
</PROBLEMTYPE>
wobei folgende Elemente enthalten sein können:
alpha: 1  Einmaschinenproblem
       F  flow shop
       O  open shop 
       J  job shop
       X  mixed shop (einige Aufträge mit gegebener Technologie)
       G  general shop (beliebige Vorrangbedingungen zw. Operationen)
       P  identische Parallelmaschinen
       R  unrelated    "
       Q  uniform      "
     (genau eine der obigen Angaben)
       M  Maschinenzahl fest, aber beliebig
       Maschinenzahl = m (Zahl für m einsetzen)      

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

Einträge des Typs VALUES

Alle Einträge haben die Form (Schlüsselwort)= (Inhalt). Als Schlüsselworte sind zulässig:
n, m  Auftrags- und Maschinenanzahl. Diese Angaben müssen stets 
      zuerst gemacht werden.
PT    Bearbeitungszeitmatrix        
MO    vorgegebene Technologien (Rangmatrix)
PREC  Vorrangbedingungen zw. Jobs
PREC* Vorrangbedingungen zw. einzelnen Operationen
SIJ   Menge der Operationen (0/1-Matrix)
RD    release dates  (Vektor)    
DD    due dates      (Vektor)
Wi    Gewichte       (Vektor)
Inhalt kann jeweils eine Zahl, eine Vektor eine Matrix oder ein Graph sein. Zahlen werden in C-typischem Eingabeformat angegeben. Vektoren sind folgen von durch Leerzeichen getrennten Zahlen in geschweiften Klamern, z.B. { 2 3 1 }. Beachte: Vor und nach jedem {, } und nach = muss ein Leerzeichen oder Zeilenende stehen! Eine Matrix ist ein Vektor von Vektoren, z.B. { { 0 1 } { 1 0 } }. Graphen werden durch Nachfolgerlisten angegeben. Diese enthalten Einträge der Form N(i)= { j k l }, wobei Knoten j, k, l die Nachfolger von i sind. Knoten können auch geordnete Paare sein, d.h. N(0,0)= { (0,1) (2,4) }

Einträge des Typs SCHEDULE

Wie bei Werte (Schlüsselwort)= (Inhalt). Als Schlusselworte sind zulässig n, m, MO, mit der gleichen Bedeutung wie oben sowie
JO   die Organisation (Rangmatrix)
LR   das lateinische Rechteck
Cij  die Matrix der Bearbeitungsenden. 
Für Preemption-Probleme sind die Schlüsselworte PPT, PMO, PJO, PLR und PCij zulässig mit der gleichen Bedeutung wie ohne P nur mit dem Unterschied, dass die Matrixelemente auch Listen sein koennen.

Einträge des Typs CONTROLPARAMETERS

Eine oder mehrere Angaben der Form (Typ) (Schlüsselwort) (Inhalt), wobei Typ eines der Worte long, float oder String sein muss, als Schlüsselwort beliebige Strings ohne Leerzeichen zulässig sind und der Inhalt den spezifizierten Typ haben muss.

Kommentare

Lisa behandelt alles als Kommantar, was ausserhalb der Umgebungen PROBLEMTYPE, CONTROLPARAMETERS, VALUES und SCHEDULE steht.

alt 8.9.99 TAU