Tool Switching Problem - Hofer Hannes 0227132

Die Seite wird erstellt Stefan-Nikolai Röder
 
WEITER LESEN
Tool Switching Problem - Hofer Hannes 0227132
Tool Switching Problem

          Hofer Hannes
          0227132
Tool Switching Problem - Hofer Hannes 0227132
Inhaltsübersicht

   Einführung in das Problem
   Einfaches Tool Switching Problem (ToSP)
   Lösungen in der Literatur
   Eigene Ergebnisse
   VND und GVNS
   Spezielles Aspekte des ToSP
Tool Switching Problem - Hofer Hannes 0227132
Hintergrund zum Problem

   Flexible Fertigungssysteme werden von
    vielen Industriezweigen eingesetzt
   FMS – Flexible Manufacturing System
   effiziente Nutzung des System
   schnellste Abarbeitungsreihenfolge
   Kosten- und Zeitersparnis
FMS – Flexible Manufacturing System
Beschreibung des Problems

   4 – tuple, I=(C,n,m,A)
    –   C: Magazinkapazität
    –   n: Jobanzahl
    –   m: Toolanzahl
    –   A: m x n Boolean-Matrix
   Gesuchte Lösung:
    –   Jobsequenz J1 ... Jn
    –   Toolsequenz T1 … Tn ( Ti   {1, …,m}
Mathematische Beschreibung

   xjk : ist 1 falls ein Job j der Position k
         zugeteilt ist, sonst 0

   yik : ist 1 falls ein Tool i zum Zeitpunkt k
         am Magazin ist.
Mathematische Beschreibung
Gesichte

   bereits in den 60igern diskutiert   [Belady 1966]

   Erste konkrete Formulierung - Lineare
    Optimierungsverfahren - Integer Linear
    Programming (IPL)
    [Tang, Denerado, 1988]

   Hypergraphansatz [Djellab, 2000]

   Branch – and – Bound – Ansätze
   Evolutionäre Ansätze
Einfach Tool Switching Problem

   Jobs sind bekannt
   Zeit für Tool swichtes ist konstant
   Kein Job braucht mehr als C Tools
Teilprobleme

   ToSP kann in Teilproblem aufgeteilt werden

    –   Jobsequenz bestimmen
    –   Tool Loading
    –   Slot Loading
        (nicht beachtet im allgemeinen ToSP)
Jobsequenz bestimmen

   Darstellung der Jobsequenz durch
    Permutationen
   => ist der Lösungsraum n! groß
   Problem ist somit NP – schwer
Beam search

   approximatives Branch and Bound Verfahren
   versucht das Jobsequenzproblem zu lösen
   verfolgt eine gewisse Anzahl von viel
    versprechenden Beams
   ähnelt der Breitensuchen in einen Graph
   eingeschränkter Algorithmus
Breitensuchen
Beam search
Beam search – Parameter

   β = breite des Strahls (Beam)
   D = Anzahl der Kandidaten, Gemeinsame
    Tools
   F1= Gemeinsam Tools von Job j und
    nachfolge Job
   F2= Summe der Nötigen Tools um Job j und
    Nachfolge Job zu erledigen.
Beam search
Hypergraph

   Bei einem Hypergraph gibt es kannten die mehrer
    Konten erreichen – Hyperkanten
Hypergraph

   ToSP kann in einen Hypergrahen
    transformiert werden
   Minimizing the number oft total weighted gap
    in edge-projection (MGEP)
   MGEP ist NP schwer
Genetischer Algorithmus

   mehre Lösungen werden generiert
   schlechteste Lösungen werden entfernt
   Binary tournament Selection
   Crossover Rekombination
Memetric Approach

   Kombination
    –   Genetischer Algorithmus
    –   Lokale Suche
   Erzeugung von mehren Lösungen mit Hilfe
    des Genetischen Algorithmus
   Verbesserung der „bessern“ Lösungen mit
    lokaler suche
Tool Loading

   optimal Lösbar bei eine vorgeben Sequenz
   Keep Tool Needed Soonest – KTNS
    –   Lade Magazin mit Tool voll die für die Nächsten
        Job benötigt werden
    –   Nimm das Tool, dessen Job am weitesten
        entfernt ist und lade benötigtes Tool
   Funktioniert für „Einfache Magazine“ (uniform
    Magazine)
No-Uniform Magazine

   Zb. 1 Tool kann mehrer Slot‘s belegen
   KSTNS ( Keep Smallest Tools Needed
    Soonest)
Versuche mit VNS & GVNS

   Im Zuge der VU Heuristische
    Optimierungsverfahren
   In Kooperation Thorsten Krenek
   Aufgabenstellung
    –   Konstruktionsheuristik
    –   Effizienten Algorithmus für eine bestimmte
        Jobsequenzen
    –   VNS und GVNS für Jobsequenz
Beispiel

  –   Magazinkapazität = 4 (C)
  –   Jobanzahl = 10 (n)         Pos.   Tools
  –   Toolanzahl = 9 (m)         0      1,6,0,4
                                 1      6,4,8
                                 2      2,0,8
                                 3      7,8
                                 4      5,8
                                 5      3,5,1,0
                                 6      4,1,2,6
                                 7      0,3,2
                                 8      5,7
                                 9      3,7,0
–   Magazinkapazität = 4 (C)
                   –   Jobanzahl = 10 (n)
                   –   Toolanzahl = 9 (m)

Beispiel

     Joblist
                            Toollist
 Job-Nr Tools
                       Tool    Jobs
 0       1,6,0,4
                       0       0,2,5,7,9
 1       6,4,8
                       1       0,5,6
 2       2,0,8
                       2       2,6,7
 3       7,8
                       3       5,7
 4       5,8
                       4       0,1,6
 5       3,5,1,0
                       5       4,5,8
 6       4,1,2,6
                       6       0,1,6
 7       0,3,2
                       7       3,8,9
 8       5,7
                       8       1,2,3,4
 9       3,7,0
Konstruktionsheuristik

   Erzeugung einer 'Tool Matching' Matrix der
    Größe n x m
   Wähle zufälligen Job
    ( eventuell Job „häufigsten“ Tools)
   Wähle Nächsten Job mit größten Machting-
    Wert
   Parameter für Wahrscheinlichkeit von
    besten, nächst besten usw.
Beispiel                               Job
                                             1
                                                 Magazin
                                                 6    0    4
                                                               s.
                                        0
                                             5   1    1    1
                                             8   6    0    4   1
                                        1
                                             2   6    2    6
                                             8   2    0    4   1
                                        2
     Joblist            Toollist             3   6    5    6
 Job-Nr Tools      Tool    Jobs         3
                                             8   7    0    4   1
                                             4   8    5    6
 0       1,6,0,4   0       0,2,5,7,9         8   5    0    4   1
 1       6,4,8                          4
                   1       0,5,6             ∞   5    5    6
 2       2,0,8     2       2,6,7        5
                                             3   5    0    1   2
 3       7,8                                 7   8    7    6
                   3       5,7               6   4    2    1   3
 4       5,8       4       0,1,6        6
                                             ∞   ∞    7    ∞
 5       3,5,1,0   5       4,5,8             0   3    2    1   2
                                        7
 6       4,1,2,6   6       0,1,6             9   ∞    ∞    ∞
 7       0,3,2                               0   5    7    1   2
                   7       3,8,9        8
                                             9   ∞    9    ∞
 8       5,7       8       1,2,3,4           0   3    7    1   1
 9       3,7,0                          9
                                             ∞   ∞    ∞    ∞
                                                                   14
Variable Neighborhood Search - VNS

   Nutzt systematisch eine Reihe von
    Nachbarschaften N1, ..., NK die
    typischerweise geschachtelt sind.
   Ein Lokales Optimum in Nachbarschaft Nx ist
    nicht zwangsweise eine lokales Optimum in
    Ny
   Entkommen vom Lokalen Optimum
Nachbarschaftsstrukturen

   2-exchange Nachbarschaft
   bin-split-exchange Nachbarschaft
   x-rotate Nachbarschaft
   3-exchange Nachbarschaft
   Mirror Nachbarschaft
2-exchange Nachbarschaft

                    1
     7 1 3 5 2 4 6                   0
                    6
   Größe des Lösungsraumes ist n²
bin-split-exchange

7     1    3     5      2     4     6   0

   Größe des Lösungsraumes ist n
Rotation Nachbarschaft

   Rotation links / rechts
   Rotation um einen Faktor
   Rotation in einem Teilbereich

               3     5
     7    1                         4   6   0
                          2
Magazin Implementierung

   Maximum Heap
   Tool mit dem am weit entfernfesten Job steht
    ganz oben
                                 Tool
                        8
                        7       verwendet bei pos

                5           7
                5           6

            9       1
            4       3
GVNS

   Erweiterung zu VNS
   Größere Anzahl von Nachbarschaften
   Zufällige Auswahl aus Nachbarschaft
   Übergaben an VNS – Algorithmus
Weiterführende Überlegungen

   Einteilung der Jobsequenzen in Sub-
    Sequenzen
   Sub-Sequenzen Teilsequenz mit wenig
    switches
   Finden der optimale der Sub-Sequenz
   Finde der optimale Anordnung von Sub-
    Sequenzen
Datasets

   80 Testinstanzen zum download
   9-60 Tool, 10 – 50 Jobs
   Magazinkapazität 4-25

http://www.unet.edu.ve/~jedgar/ToSP/ToSP.htm
Vergleich der Ergebnisse

   n=10, m=10, c=4

                                      VNS     GVNS
                             AV    8,266    7,768
                            Max    10       9
                             Min   7        7
                             SD    1,020    0,723
                      Iterations   35       873
Vergleich der Ergebnisse

   n=30, m=20, c=24

                                       VNS     GVNS
                              AV    25,18    24,000
                             Max    27       25
                              Min   23       22
                              SD    0,983    1,054
                       Iterations   313      3.559
Vergleich der Ergebnisse

                                    VNS     GVNS
                           AV    200,7    198,100
                          Max    207      204
                           Min   195      192
                           SD    3,350    3,470
                    Iterations   4208,7   16.538
Spezielle Aspekte

   Während eines Job wechseln
   Gewichtung der Magazinslots  kürzere
    Wege für Werkzeugkopf
   Unendliche Anzahl von Job, n sind immer
    bekannt
   Entfernen und Hinzufügen von Tools ist
    verschieden schwer. Zb. Justierung nötig
Spezielle Aspekte

   Nicht alle Tools passen in den selben Slot
   Verschieden Größen von Werkzeugen
   Spezielle Schnittstellen
   2.-Switch ist weniger Aufwendig
   Mehrer Slots für eine Werkzeug ( Web
    Caching Problem)
   Werkzeuge brechen und nutzen sich ab
Zusammenfassung

   ToSP einige gute Ansätze vorhanden
   Hat noch Forschungspotential
   Untersuchung mit Ant-Alogrithmus
    interessant
Literatur
   Amaya, Cotta, Fernádez
    A Memetic Algorithm of Tool Switching Problem, Springer-
    Verlag, 2008
   Zhou, Xi, Cao
    A beam-search-based algorithm for the tool switching problem
    on a flexible machine
    Springer-Verlag, 2004
   H. Djellab, K. Djellab, Gourgand
    A new heuristic based on a hypergraph representation for the
    tool switching problem
    Int. Journal of Production Economics, 2000
   Crama, Moonen, Spieksma, Talloen
    The Tool switching Problem revisited
    European Journal of Operational research
Danke für die Aufmerksamkeit!
Sie können auch lesen