Optimierung der Aufzugsabfertigung durch den Einsatz von genetischen Algorithmen in Python

By Mohammedreza Eskafi | Verkehrsanalyse | März 1, 2021

13 Minuten zum Lesen

Optimierung der Aufzugsabfertigung durch den Einsatz von genetischen Algorithmen in Python
KI-Übersicht

Ein Python-basiertes Simulationsmodell gruppiert die Aufzugsdisposition für ein 20-stöckiges Gebäude mit sechs Kabinen, realistischer Kinematik und Poisson-Ankunftsmustern, um Warte-, Bedien- und Gesamtzeiten zu bewerten. Die Auswahl der nächstgelegenen Kabine basiert auf einem Eignungskriterium, das anhand von vier Regelformen berechnet wird, welche Fahrtrichtung, Entfernung und Etagenanzahl berücksichtigen. Die Optimierung mittels genetischem Algorithmus passt die Koeffizienten dieser FS-Regeln an und führt zu deutlich kürzeren Gesamtfahrzeiten. Die Ergebnisse zeigen eine optimale Ankunftsrate von etwa 0.2 Fahrgästen/s bei einer Gesamtzeit von ca. 70 s. Bei 0.5 Fahrgästen/s reduziert die optimierte FS die Gesamtzeit von ca. 114.7 s auf 52.4 s. Die optimierte Disposition verringert somit Warte- und Bedienzeiten erheblich.

Ihr Autor sagt, dass die Programmiersprache die Warte- und Servicezeiten für Passagiere verkürzen kann.

Dieser Artikel stellt eine entwickelte Simulation der Fahrstuhlzuteilung durch die Programmiersprache Python vor. Es modelliert den vertikalen Transport (VT), insbesondere Aufzüge, in einem Gebäude in Bezug auf die Anzahl der Stockwerke, die Anzahl der Aufzüge und relevante Aufzugsparameter. Ein Steuersystemalgorithmus ist definiert, um einen bestimmten Aufzug auszuwählen, um Etagenrufe in einem Gruppensystem zu bedienen. Das Fahrstuhl-Dispatching-System wird mittels der Methode des genetischen Algorithmus (GA) optimiert. Das Ergebnis bietet eine fahrgasttaugliche Voraussetzung mit geringeren Warte- und Servicezeiten.

Einführung

Wartezeiten in Hoch- und Gewerbegebäuden zu verkürzen ist einer der wichtigsten Aspekte im Aufzugsbetrieb. Die Fahrstuhldisposition spielt eine entscheidende Rolle bei der Erfüllung der VT-Anforderungen. Eine optimierte Gruppensteuerung von Aufzügen erhöht die Qualität der vertikalen Fahrten, da sie nicht nur die Wartezeit minimiert, sondern auch den mentalen Komfort der Passagiere erhöht. Das bedeutet weniger Wartezeit, was zu mehr Zufriedenheit führt. Daher wurde die Entwicklung der Aufzugsdisposition seit jeher als wichtiger Forschungsbereich angesehen. In dieser Untersuchung wird eine Gruppe von sechs Aufzügen mit realistischen Parametern und Einschränkungen untersucht, um die Disposition der Gruppe zu optimieren, um minimale Wartezeiten und Stromkosten zu erzielen.

In diesem Artikel wird ein VT-Simulationstool in Python entwickelt, um die Zugangsbedingungen zu jedem Stockwerk in Hochhäusern mit einer Gruppe von Aufzügen zu bewerten. Realistische Parameter werden verwendet, um die Bewegungen von Aufzügen so genau wie möglich zu animieren.[1 & 4] Dann wird durch die Verwendung von GA in Python eine Optimierung durchgeführt, um bequemere VT-Bedingungen zu schaffen.

Simulationsparameter

Um die Genauigkeit der Simulation zu erhöhen, ist es wichtig, realistische Parameter der Aufzugsbewegungen zu berechnen und zu berücksichtigen, wie das Ankunftsmodell, die Berechnung der nächsten Kabine und die Aufzugskinematik.[1 & 5] Darüber hinaus sind andere wichtige Parameter von Aufzügen, einschließlich der Geschwindigkeit , Zeit und Reisehöhe, werden diskutiert.[6]

Ankunftsmodell

Einer der wichtigsten Parameter bei der Aufzugssimulation ist das Ankunftsmodell. Beide Ankunftsmodelle – Einzel- und Batch-Poisson-Ankunft – werden in dieser Untersuchung diskutiert.[7]. Wie in Abbildung 1 dargestellt, wird der Aufwärtsverkehr am Morgen und nach der Mittagszeit betrachtet, wenn die Tendenz der Fahrgäste steigt. Die Verteilung der Ankunft folgt einer Charge Poisson-Ankunft, bei der die Passagiere in Gruppen zum Mittagessen gehen. Chargeneingangsrate

() wird nach Gl. (1).[6].

(1) 

woher  ist die gesammelte Ankunftsrate, und ist der Halbwert der Charge.

Nächstes Auto

Die Auswahl, welche Kabine welchen Etagenruf bedienen soll, ist eine weitere wichtige Aufgabe des Controllers. Tatsächlich wird die Verkehrsanalyse direkt von dieser Auswahl beeinflusst. Das Steuersystem für die nächste Kabine (NC) ist einer der gängigsten Prozesse in der Aufzugsindustrie, der von der Steuerung verwendet wird, um den geeigneten Aufzug für die Beförderung von Passagieren im Wartebereich auszuwählen.[5].

Figure 1
Abbildung 1: Gruppengröße der ankommenden Passagiere[6]

Die Aufzugsposition, das vom Passagier angeforderte Ziel und die Erkennung der Aufzugsaufwärts- oder -abwärtsfahrt sind wesentliche Parameter, die in diesem Prozess verwendet werden. Die Eignungskennzahl (FS) ist eine Funktion dieser Parameter und die Position der Aufzüge in der Gruppe wird für den Controller quantifiziert. Somit wählt die Steuerung den Aufzug mit einem höheren FS-Wert aus, um den Etagenruf zu bedienen. Um den FS-Wert zu berechnen, gibt es vier Regeln[6]..

  • Wenn das Auto in Richtung des Wartebereichs mit ähnlicher Richtung des Fahrgastziels fährt, FS = (N + 2) − d.
  • Wenn der Wagen in Richtung des Wartebereichs mit entgegengesetzter Fahrtrichtung des Fahrgastziels fährt, ist FS = (N + 1) − d.
  • Wenn das Auto steht (Leerlauf), FS = (N + 1) − d.
  1. Wenn der Fahrkorb den Wartebereich verlässt, gilt FS = 1. wobei d die Anzahl der Stockwerke zwischen dem Wartebereich und der aktuellen Position des Fahrkorbs ist und N die Stockwerke des Gebäudes sind.[6].

Abbildung 2 veranschaulicht den Ablauf des Aufzugsauswahlverfahrens mit FS-Berechnung in einem siebenstöckigen Gebäude und fünf betriebsbereiten Aufzügen.

Abbildung 2: Methode der FS-Berechnung, um das nächste Auto zu finden[6]

Zum Beispiel wünscht ein Passagier im fünften Stock die Fahrt zum Erdgeschoss. Die FS-Werte in der fünften Reihe von Abbildung 2 werden basierend auf dem absteigenden Etagenruf für jeden Aufzug berechnet. Wie bereits erwähnt, wird bei einer Gruppenaufzugssteuerung die Kabine mit der maximalen FS-Nummer ausgewählt, um den Passagier im Wartebereich abzufertigen. In diesem Beispiel wird der erste Aufzug für diesen Etagenruf ausgewählt. Die FS-Werte dieses Beispiels sind also:

  • Aufzug 1: Regel 1 wird verwendet, wenn das Auto nach unten (mit ähnlicher Richtung) zum Wartebereich fährt:d = 1 Etage, also FS = (6 + 2) − 1 = 7.
  • Aufzug 2: Regel 4 wird verwendet, wenn die Kabine (mit ähnlicher Richtung) vom Wartebereich nach unten fährt: Somit ist FS=1.
  • Aufzug 3: Regel 3 wird verwendet, wenn das Auto steht (Leerlauf):d = 5 Stockwerke, also FS = (6 + 1) − 5 = 2.
  • Aufzug 4: Regel 2 wird verwendet, wenn die Kabine nach oben (mit entgegengesetzter Richtung) zum Wartebereich fährt: d = 1 Etage, also FS = (6 + 1) − 1 = 6.
  • Aufzug 5: Regel 2 wird verwendet, wenn die Kabine nach oben (mit entgegengesetzter Richtung) zum Wartebereich fährt: d = 4 Stockwerke, also FS = (6 + 1) − 4 = 3.

Somit hat die erste Kabine den maximalen Eignungswert, FS = 7. In dieser Hinsicht wählt die Steuerung die erste Kabine in der Gruppe von Aufzügen aus, um den Passagier im Wartebereich zu bedienen.

Aufzugskinematik

Kinematikdaten von Aufzügen werden verwendet, um die Aufzugsbewegung zwischen den Stockwerken zu simulieren und die Aufzugsabfertigung zu optimieren. Tabelle 1 zeigt die verwendeten Symbole.[6].

Definition

Symbole

Fahrstrecke (m)

d

Fahrstrecke zur Zeit t (M)

D(t)

Maximale Geschwindigkeit (m/s)

v

Geschwindigkeit zur Zeit t (M / s)

V(t)

Maximale Beschleunigung (m/s2)

a

Beschleunigung zur Zeit t (Frau2)

Bei)

Maximaler Ruck (m/s3)

j

Ruck zur Zeit t (Frau3)

J(t)

Tabelle 1: Einführung von Aufzugskinematiksymbolen

Die Auswahl der Werte für Beschleunigung und Ruck ist ein Kompromiss zwischen Minimierung der Fahrzeit und Maximierung des Komforts. Üblicherweise verwendete Werte für den menschlichen Komfort in Aufzügen sind 1 für Beschleunigung sowie Ruck. Es werden jedoch unterschiedliche Werte verwendet – niedriger (etwa 0.5 für die Beschleunigung) von japanischen Herstellern, höher (etwa 1.5 für die Beschleunigung) in Nordamerika und dazwischen in Europa –.[8]. In dieser Untersuchung werden drei von der Kabine erreichte Zustände für die Aufzugsbewegungssimulation wie folgt berücksichtigt:

  • Höchste Geschwindigkeit und Beschleunigung (a)
  • Höchste Beschleunigung, aber nicht die höchste Geschwindigkeit (b)
  • Weder höchste Geschwindigkeit noch Beschleunigung (c)

Basierend auf diesen drei Zuständen ist der Abstand (d) und Fahrzeit (t) werden berechnet als[8].:

Abbildung 3 zeigt die drei Zustände für Ruck, Beschleunigung, Geschwindigkeit und Weg.[6].

Figure 3
Abbildung 3: Die drei im Text erwähnten Staaten[8]

Methodik

Um das Ergebnis der vorliegenden Forschung mit der Literatur zu vergleichen,[6]. die drei oben genannten Zustände des Autos werden mit der gleichen Methodik untersucht. Daher:

  • Bewegen: Das Auto ist in Bewegung.
  • Anhalten: Der Wagen stoppt, um Fahrgäste in vier möglichen Schritten zu be- und entladen: 1) Tür öffnet; 2) Passagiere steigen aus; 3) Passagiere steigen ein; und 4) Tür schließt.
  • Leerlauf: Die Kabine ist weder in Bewegung noch hat sie einen Außenruf zu bedienen.

Drei Zustände von Aufzügen können je nach Bedarf des Fahrgastes verbunden werden (Abbildung 4).[6].

Figure 4
Abbildung 4: Drei Hauptzustände des Autos

Die Simulation läuft mit zufälligen Passagieren, zufälliger Ankunftszeit und zufälligen Bedingungen auf dem Zielboden. Wenn die Ankunftszeit der Passagiere der Systemzeit entspricht, sendet die FS-Berechnung den Aufzugsstatus an die Steuerung. Dann entscheidet der Controller, ob ein Aufzug zugewiesen wird, um die Anfrage des Passagiers zu bedienen. Danach wird die Kabine FS basierend auf der aktuellen Position der Kabine geändert, und die Steuerung wählt die nächste Kabine aus, um Passagiere im Wartebereich abzufertigen.[6].

Ergebnis und Diskussion

Tabelle 2 stellt den Wert der Simulationsparameter dar: Die Aufzugsgruppensteuerung wird für ein Geschäftsgebäude mit 20 Stockwerken und sechs Aufzügen simuliert. Es werden einzelne Poisson-Verteilungen als Aufwärtsverkehr und simulierte Aufzugsabfertigung für 1 h untersucht. Die animierte Bewegung von Aufzügen ist in Abbildung 5 gezeigt, die einen ähnlichen Vorgang darstellt, bei dem Autos die Passagiere vom Erdgeschoss nach oben in Übereinstimmung mit ihren Zielgeschossen befördern. In diesem Bild zeigt das grüne Kästchen aufwärts gerichtete Autos an; die rote Box, abwärts gerichtete Autos; das gelbe Kästchen, Haltestellen der Autos; und die graue Box, Ruhezustand von Autos.

Artikel

Wert

Anzahl der Etagen

20

Anzahl Aufzüge

6

Bodenabstand (m)

4

Maximale Geschwindigkeit (m/s)

2.5

Maximale Beschleunigung (m/s2)

1

Maximaler Ruck (m/s3)

2

Kapazität (Person/Aufzug)

24

Türzeit (s)

1.5

Fahrgastzeit (s)

1.5

Tabelle 2: Parameterwerte simulierter Aufzüge

Wartezeit, Servicezeit und Gesamtzeit (Wartezeit + Servicezeit) werden durch Simulation der Aufzugsgruppensteuerung untersucht.

Figure 5
Abbildung 5: Bewegungsanimation der Aufzüge

Abbildung 6 zeigt, dass Wartezeit und Servicezeit in direktem Zusammenhang mit der Ankunftsrate stehen. Die Servicezeit stabilisiert sich jedoch nach einem bestimmten Bereich von Ankunftsraten. Eine durchschnittliche Wartezeit von weniger als 25 s führt zu einem geeigneten Aufzugsbetrieb.[9]. Die angemessene Ankunftsrate beträgt also 0.2 Passagiere/s (720 Passagiere/Stunde).[6]. Die Gesamtzeit bei einer Ankunftsrate von 0.2 Passagieren/s beträgt etwa 70 s.

Figure 6
Abbildung 6: Fahrzeiten der Fahrgäste in der Aufzugsabfertigung

Optimierung durch Verwendung der GA-Methode in Python

Um einen besseren Service von Gruppenaufzügen zu erhalten und die Gesamtzeit (Wartezeit plus Servicezeit) zu reduzieren, wird eine Optimierungsmethode unter Verwendung eines GA in Python entwickelt. Ein Steuerungsprozess wird definiert und dann wird FS basierend auf den vier Regeln berechnet, um zu bestimmen, welcher Aufzug in einer Gruppensteuerung ausgewählt werden soll, um Passagiere im Wartebereich zu bedienen. Um die FS-Werte zu optimieren, werden unbekannte Koeffizienten durch die vier Regeln zugewiesen, wie in Gl. (3):

  • Regel 1: FS = a1 N + c1 - b1 d.
  • Regel 2: FS = a2 N + c2 - b2 d. (3)
  • Regel 3: FS = a3 N + c3 - b3 d.
  • Regel 4: FS = a4 N + c4 - b4 d.

Dann werden durch die Turnierauswahlmethode in GA die optimierten Koeffizienten wie folgt identifiziert:

Unter Verwendung der identifizierten Koeffizienten werden also FS-Werte optimiert, um eine bessere Option zum Bedienen der Etagenrufe durch Aufzugsgruppensteuerungssysteme auszuwählen. Diese Optimierungsmethode führt zu einer signifikanten Reduzierung der Gesamtfahrtzeit des Aufzugs (Abbildung 7). Dies ist ein wichtiges Prinzip in der Aufzugsindustrie.

Figure 7
Abbildung 7: Fahrzeiten der Passagiere nach Verwendung der optimierten FS gewonnen durch GA

In Abbildung 8 ist die berechnete Gesamtzeit aus der Python-Simulation durch Erhöhung der Ankunftsrate mit konventionellem FS und optimiertem FS dargestellt. Zum Vergleich bei der Ankunftsrate von 0.5 Passagieren/s beträgt die Gesamtzeit bezogen auf konventionelles FS und optimiertes FS etwa 114.69 bzw. 52.38 s. Dieses Ergebnis ist, wie gezeigt, eine erhebliche Reduzierung der Gesamtzeit.

Figure 8
Abbildung 8: Vergleich der Gesamtzeit von konventionellem und optimiertem FS

Fazit

In diesem Artikel wird die Entwicklung einer Optimierungsmethode unter Verwendung von GA in Python für die Gruppenaufzugsabfertigung untersucht. Ein Steuerungssystem einer Aufzugsgruppe in einem Hochhaus wird mit realistischen Parametern von Aufzügen, einschließlich Ankunftsrate, Auswahl der nächsten Kabine und Aufzugskinematik simuliert, um genaue Ergebnisse zu erhalten. Darüber hinaus wird die Aufzugsabfertigung animiert, um eine bessere visuelle Untersuchung zu ermöglichen.

Die Ergebnisse zeigen, dass die Anwendung der optimierten Koeffizienten bei der FS-Berechnung zu einer erheblichen Reduzierung der Gesamtzeit führt, die sich aus Wartezeit und Servicezeit zusammensetzt. So erleben ankommende Passagiere bequemere vertikale Fahrten.

Anerkennungen

Ihr Autor dankt ASCEND Co. und der Iceland University für die Bereitstellung der erforderlichen technischen Daten für dieses Forschungsprojekt und dankt den IT-Experten, die Anleitungen für die Neucodierung der Simulation in Python angeboten haben.

Literaturhinweis

[1] JR Fernandez und P. Cortes. „Eine Übersicht über Aufzugsgruppensteuerungssysteme für den vertikalen Transport, IEEE Control Systems, Vol. 35, No. 4, Nr. 38, p. 55-2015, XNUMX.

[2] VC Galpin und ST Rock. „Ein Aufzugssimulations-Prototyp“, Wiley Online Library, 1995.

[3] R. Braun. „Brauchen Sie einen Aufzug? An Elevator Queuing Problem“, United Technologies Research Center, 14. August 2003, p. 1-28.

[4] N. Pariyatdulapak. „Entwicklung einer Simulation für vertikale Transportsysteme, Senior Project Report“, Chulalongkorn University, 2016.

[5] G.C. Barney. Elevator Traffic Handbook: Theory and Practice, Taylor Francis, 2003.

[6] N. Chaosangket, P. Sasithong, S. Wijayasekara, W. Asdornwised, L. Wuttisittikulkij, P. Vanichchanunt, M. Saadi. „A Simulation Tool for Vertical Transportation Systems using Python“, 5th International Conference on Business and Industrial Research, Bangkok, Thailand 2018.

[7] J. Dallas. „Eine systematische Methodik zur Generierung von Aufzugspassagieren unter einem Poisson-Batch-Ankunftsprozess“ (peters-research.com), 2017.

[8] R. Peters. „Ideal Lift Kinematics“ (peters-research.com/index.php/support/articles-and-papers/53-ideal-lift-kinematics), 1995.

[9] Adsimulo.com. „Lift Performance Criteria“ (adsimulo.com/support/adsimulo-university/lift-performance-criteria).

Shares