Zur Anordnungsoptimierung wird oft das Dreiecksverfahren von SCHMIGALLA angewendet. Dadurch kann ein optimiertes Layout erreicht werden. Mit den Positionierungsmöglichkeiten auf dem Raster kann der Planer aber eine Vielzahl von Layoutformen entwickeln. Um das zielorientiert einzuschränken ist es sinnvoll, vorher mögliche Produktionsstrukturen zu bestimmen. Eine Entscheidungshilfe dafür ist der Kooperationsgrad.
Der Kooperationsgrad wurde, wie das Dreiecksverfahren, von Hans Schmigalla schon 1970 entwickelt. Mit dem Kooperationsgrad wird dargestellt, wie Arbeitsplätze miteinander verbunden sind.
Den Kooperationsgrad bestimmen
Berechnen lässt sich der Kooperationsgrad aus dem Quotienten der Summe aller ein- und ausgehenden Verbindungen der Arbeitsplätze im betrachteten System und der Gesamtanzahl der Arbeitsplätze.
ki = Anzahl der Arbeitsplätze mit denen der Arbeitsplatz i eingehende oder ausgehende Verbindungen hat
m = Gesamtanzahl der Arbeitsplätze im betrachteten System
Die eingehenden und ausgehenden Verbindungen zu ermitteln, stellt kein Problem dar. Für die Anwendung des Dreiecksverfahrens muss zuvor eine Von-Nach-Matrix erstellt werden. Aus diesen Daten lassen sich die ein- und ausgehenden Verbindungen ermitteln und aufsummieren.
Wie eine Von-Nach-Matrix gebildet wird, habe ich im Artikel Materialflussmatrix aus ERP-Daten beschrieben. Dort wird nicht die klassische Von-Nach-Matrix verwendet, sondern die datentechnisch besser geeignete Von-Nach-Tabelle. Die Von-Nach-Tabelle stellt zeilenorientiert die Transportflüsse dar.
Möchte man für die Kooperationsmatrix unterschiedliche Varianten bestimmen, bietet es sich an, die Arbeitsplätze in einer separaten Tabelle darzustellen. Dort mittels Excel-Funktion ZÄHLENWENN für eingehende und für ausgehende Verbindungen, die Daten zu berechnen.
Die Daten des Beispiels stammen aus dem Artikel Dialog-geführtes Dreiecksverfahren nach SCHMIGALLA.
Aus dem Beispiel lässt sich mittels Aufsummierung der Kooperationsgrad nach der obigen Formel berechnen.
Gesamtanzahl Summe ein- und ausgehende Verbindungen | 34 |
Gesamtanzahl Arbeitsplätze | 11 |
Kooperationsgrad | 3,1 |
Produktionsstruktur aus Kooperationsgrad ableiten
Um vom Kooperationsgrad auf einen Vorschlagwert für die Produktionsstruktur zu gelangen, wird der Kooperationsgrad und die Gesamtanzahl der Arbeitsplätze in diesem Diagramm eingetragen und der Vorschlagwert für die Produktionsstruktur abgelesen.
Bei höheren Werten des Kooperationsgrade (>5) geht Schmigalla von einer Werkstattstruktur aus.
„Die Anwendung des Werkstattprinzips erweist sich als zweckmäßig, wenn der Kooperationsgrad einen Wert annimmt, über den hinaus die Arbeitsgänge nicht mehr bestimmten Maschinen fest zugeordnet und demzufolge die Maschinen auch nicht mehr entsprechend dem Teiledurchlauf angeordnet werden können“
Hans Schmigalla: Methoden zur optimalen Maschinenanordnung
Ich verwende das Diagramm von Claus Grundig (aus Fabrikplanung). Für mich passen die Begriffe Punktstruktur, Reihenstruktur, Netzstruktur und Werkstattstruktur besser als die ursprünglichen Prinzipien (Werkstattfertigung, Flussprinzip mit/ohne Rückfluss, Verrichtungsprinzip) von Schmigalla.
Damit können wir für unser kleines Beispiel auf die Produktionsstruktur „Reihenstruktur“ schließen und das bei der Anordnung im Dreiecksverfahren entsprechend berücksichtigen.
In diesem Beispiel mit einer geringen Anzahl an Arbeitsplätzen lässt sich sinnvoll nur ein Kooperationsgrad für die gesamte Produktion bestimmen. In größeren Strukturen, mit mehreren Produktionsbereichen, ergibt es Sinn für jeden Bereich einen Kooperationsgrad und eine Produktionsstruktur zu bestimmen. Die Berechnung des Kooperationsgrades macht keine Schwierigkeiten. Er berechnet sich recht einfach durch Gruppierung und entsprechenden Summenbildung auch für größere Datenmengen. Bei der Produktionsstruktur sieht es anders aus. Für jede Bestimmung muss der manuelle Weg über das Diagramm gegangen werden. Das ist aufwändig, fehleranfällig und für große Datenmengen nicht geeignet. Besser wäre es, wenn sich die Produktionsstruktur auch über eine Formel automatisch berechnen ließe.
Das ist doch eine perfekte Gelegenheit, um etwas Programmierung einzusetzen. Wie das klappt, erfahren Sie im zweiten Abschnitt.
Eine Funktion für die Produktionsstruktur
Es muss ein Weg gefunden werden, die Kurven des Diagramms in mathematische Funktionen umzuwandeln. Mathematisch möglich ist das über Interpolation mit Polynomen. Mehrere Punkte auf der Kurve werden in eine Polynom-Funktion umgerechnet. Dafür wird eine Wertetabelle mit den X und Y Koordinaten erstellt.
Die Anzahl der Arbeitsplätze wird mit m bezeichnet und entspricht der X Koordinate. Die Reihen darunter sind die Y Werte (Kooperationsgrad) der drei Kurven.
Jetzt müssten wir unsere Mathe-Formelsammlung wieder herausholen und die Polynom-Funktion N-Grades berechnen.
Trendlinie in Excel
Glücklicherweise verwenden wir bereits Excel. In der Diagrammfunktion von Excel gibt es die Möglichkeit eine Trendlinie einzuzeichnen. Dazu lässt sich ebenfalls die Art der Trendlinie festzulegen.
Wählt man Polynomisch, erledigt Excel die ganze Arbeit für uns und zeigt die Formel an.
Das hilft in zweierlei Hinsicht. Einmal brauchen wir so keine Funktion zu ermitteln. Zum anderen stellt Excel die Funktion als Trendlinie auch visuell dar. Damit ist gleich eine optische Prüfung möglich, wie gut die berechnete Funktion die Punktekurve abdeckt.
In dem Original-Diagramm von Schmigalla wird der linke Bereich durch eine Halbgerade begrenzt. Diese lässt sich aus dem Diagramm ablesen. Sie hat die Gleichung y = x -1.
Eigene Funktionen für Produktionsstruktur und Kooperationsgrad
Mit diesen Grunddaten startet die selbst entwickelte Funktion. Dafür ist nur eine Excel-Mappe mit Makros notwendig (.xlsm). Eigene Funktionen müssen wir in ein Modul ablegen. Das geht im VBA-Editor (Alt+F11).
Damit später Benutzer wissen, welche Parameter in der Funktion anzugeben sind, verwende ich in der Funktionsdefinition lange Variablennamen. Diese zeigt Excel an, wenn der Benutzer auf Formel einfügen klickt.
Im Quellcode ist das aber meist unpraktisch. Deswegen definiere ich die langen Variablen am Beginn gleich wieder in eine kürzere Form um.
In der Funktion prüft zuerst, ob die Arbeitsplatzanzahl 1 ist. Dann handelt es sich um eine Punktstruktur und die Funktion ist fertig.
Falls das nicht eintritt, findet in der nächsten Prüfung statt, in welchem Bereich sich die übergebenen Werte befinden. Dafür berechnet die Funktion für die Arbeitsplatzanzahl m die entsprechenden Grenzwerte aus den Polynom-Funktionen. Die Gleichungen können aus der Bezeichnung der Trendlinie kopiert und im Quellcode eingefügt werden. Die Berechnung der Potenzen erfolgt mit der Excel-Funktion WorksheetFunction.Power.
Damit lässt sich prüfen, in welchem der Diagrammbereiche der übergebene Kooperationsgrad liegt. Nach der Definition ist die Reihenstruktur ein Teil der Netzstruktur. Das setze ich in der Nutzung der Funktion voraus und verwende die Netzstruktur nur für denjenigen Teil, der außerhalb der Reihenstruktur liegt (siehe Abbildung Diagramm).
Die Variable result speichert das entsprechende Ergebnis und übergibt das am Ende der Funktion.
Function Produktionsstruktur(Gesamtanzahl_der_Arbeitsplätze As Integer, Kooperationsgrad As Double) As String Dim result As String Dim reihenStruktur0 As Double Dim reihenStruktur As Double Dim netzStruktur As Double Dim werkstattStruktur As Double Dim halbgerade As Double Dim m As Integer Dim k As Double m = Gesamtanzahl_der_Arbeitsplätze k = Kooperationsgrad result = "nicht definiert" If m = 1 Then result = "Punktstruktur" Else 'liegt m und k links von der Geraden? halbgerade = m - 1 If halbgerade >= k Then 'Wert liegt rechts der Halbgeraden und ist valide reihenStruktur0 = 0.0002 * WorksheetFunction.Power(m, 3) - 0.0111 * WorksheetFunction.Power(m, 2) + 0.1918 * m + 0.7648 reihenStruktur = -0.00003 * WorksheetFunction.Power(m, 4) + 0.0018 * WorksheetFunction.Power(m, 3) - 0.0442 * WorksheetFunction.Power(m, 2) + 0.506 * m + 1.2498 netzStruktur = 0.0003 * WorksheetFunction.Power(m, 3) - 0.0176 * WorksheetFunction.Power(m, 2) + 0.3485 * m + 2.2044 If k >= reihenStruktur0 And k < reihenStruktur Then result = "Reihenstruktur" ElseIf k >= reihenStruktur And k < netzStruktur Then result = "Netzstruktur" ElseIf k >= netzStruktur Then result = "Werkstattstruktur" End If End If End If Produktionsstruktur = result End Function
Es ist zwar nicht unbedingt notwendig, aber auch der Kooperationsgrad lässt sich in eine Funktion packen.
Function Kooperationsgrad(Summe_ein_und_ausgehende_Verbindungen As Long, Gesamtanzahl_der_Arbeitsplätze As Integer) As Variant Dim result As Variant result = Null If Gesamtanzahl_der_Arbeitsplätze > 0 Then result = Summe_ein_und_ausgehende_Verbindungen / Gesamtanzahl_der_Arbeitsplätze End If Kooperationsgrad = result End Function
Der erste Test
Mit den beiden Funktionen lässt sich jetzt an jeder Stelle zum Kooperationsgrad eine mögliche Produktionsstruktur berechnen.
Jetzt sind Sie in der Lage vor Beginn des Schmigalla Dreieckverfahrens einen Vorschlagwert für die Anordnung zu ermitteln.
Wenn Sie Daten automatisch aus ERP-Daten auswerten, ist das ein klarer Vorteil.
Es handelt sich dabei aber nur um einen Vorschlag. Für die Entscheidung zur umzusetzenden Produktionsstruktur müssen grundlegende Überlegungen getroffen werden.
Die Berechnungsweise nach Schmigalla zeigt aber doch eine datenorientierte Tendenz an, die in die Entscheidung einbezogen werden kann.
Download
Funktion und Beispiel im Zip-Archiv
Hinweise zu Excel-Makros und dem Internet
Links
Hans Schmigalla, Methoden zur optimalen Maschinenanordnung, 1970, Link auf Google Books
Claus Grundig, Fabrikplanung, 2012, Link auf Google Books
Pingback: Excel Schmigalla Tool mit vielseitigen Visualisierungsmöglichkeiten - Tech+Code
Pingback: Funktionsgleichungen aus Punkten mit Excel ermitteln - Tech+Code