Entwicklung eines Planungswerkzeuges für die Tourenplanung von Außendienstmitarbeitern Günter KIECHLE, Karl DÖRNER und Andreas WAGNER Zusammenfassung Im vorliegenden Beitrag wird ein Lösungsverfahren für die Tourenplanung von Außendienstmitarbeitern und dessen Integration in ein GIS-basiertes Planungswerkzeug beschrieben. Die Aufgabenstellung wird als mehrperiodisches Travelling Salesman Problem modelliert und mit Hilfe einer Konstruktionsheuristik sowie des Metasuchverfahrens Variable Neighborhood Search gelöst. Als Datenbasis werden geokodierte Kundenstandorte und digitale Straßennetzinformationen eingesetzt. Zur Evaluierung der erreichten Lösungsgüte der Verfahren werden reale Kundendaten eines GIS-Dienstleisters verwendet. 1 Einleitung und verwandte Arbeiten Außendienstmitarbeiter sind mit der Aufgabe betraut, ihnen zugeordnete Kunden unter bestimmten zeitlichen Vorgaben zu besuchen. Die Anforderungen an die Planung der Kundenbesuche und damit an die zugehörige Tourenplanung sind je nach Aufgabenstellung recht unterschiedlich. Im vorliegenden Beitrag wird eine Variante der Problemstellung betrachtet, die auf Vertriebsmitarbeiter und Handelsvertreter ausgerichtet ist. Verwandte Aufgabenstellungen wie beispielsweise die Tourenplanung für Reparatur- und Wartungsdienste können mit dem beschriebenen Lösungsansatz nicht passend abgebildet werden, weil sie sich in wesentlichen Kriterien für die Tourenplanung unterscheiden. Zu diesen Kriterien gehören Terminvorgaben, die benötigte Ausrüstung für den Kundenbesuch, Prioritäten der Kundenbesuche und ob Aufträge für Kundenbesuche auch regelmäßig kurzfristig hinzukommen. Das zugrunde liegende kombinatorische Optimierungsproblem gehört zur Klasse der mehrperiodischen Travelling Salesman Probleme, wobei die nachfolgend beschriebene Variante als Multi-Period Orienteering Problem bezeichnet wird und noch wenig erforscht ist (AND- REATTA & LULLI 2007). Kundenbesuche werden üblicherweise einige Tage bis Wochen im Voraus geplant, wobei sowohl zentrale als auch dezentrale Planungsansätze zum Einsatz kommen. Ein Lösungsverfahren für die zentrale Tourenplanung von Handelsreisenden ist in POLACEK et al. (2005) beschrieben. Nachfolgend wird ein dezentraler Lösungsansatz vorgeschlagen, der autonome Planungsprozesse jedes einzelnen Vertriebsmitarbeiters unterstützt. Ziel dabei ist es, einen kostenminimalen Kundenbesuchs- und Tourenplan zu erstellen, der alle organisatorischen Vorgaben und Einschränkungen berücksichtigt. Erst die Verfügbarkeit von digitalen Straßennetzen mit genauen Distanzinformationen und realistischen Durchfahrtszeiten macht es möglich, auf die notwendige Datengrundlage für
Entwicklung eines Planungswerkzeuges für die Tourenplanung 419 eine präzise und akkurate Tourenplanung in Entscheidungsunterstützungs- und Planungssystemen zuzugreifen (KIECHLE 2007). Für die Auswahl von passenden potenziellen Neukunden bei der Erstellung von effizienten Tourenplänen für Außendienstmitarbeiter sind außerdem entsprechend georeferenzierte Daten zu Potenzialkunden notwendig. 2 Problemszenario und Planungsprozess Eine besondere Eigenschaft des vorliegenden Tourenplanungsproblems für Außendienstmitarbeiter ist die Unterscheidung verschiedener Kundentypen. Zunächst werden Kunden betrachtet, deren Besuchstermine schon längere Zeit im Voraus bekannt sind (reguläre Aufträge). Hinzu kommen Kunden, die kurzfristig um einen Besuch anfragen und dringend versorgt werden müssen (dringende Aufträge). Zuletzt werden potenzielle Kunden berücksichtigt, die derzeit noch nicht zum Kundenkreis des Außendienstmitarbeiters zählen, aber durchaus mögliche Kunden wären. Die potenziellen Kunden werden nach der Einplanung der anderen Kunden in frei gebliebene Zeitblöcke der Tourenpläne integriert. Als Kriterium zur Auswahl der potenziellen Kunden wird deren Attraktivität in Form des erwarteten Umsatzes verwendet, der sich als Produkt aus Abschlusswahrscheinlichkeit und Höhe des vermuteten Umsatzes ergibt. Es sollen dabei jene potenziellen Kunden in die Touren aufgenommen werden, die unter Berücksichtigung der verfügbaren Arbeitszeiten die Summe der erwarteten Umsätze maximieren. Ein Planungswerkzeug für die Tourenplanung von Außendienstmitarbeitern soll nachfolgenden Prozess für die Tourenplanung von Außendienstmitarbeitern unterstützen. Ein konzeptionelles Design für die Benutzerschnittstelle des Werkzeuges ist in Abbildung 1 dargestellt. 1. Der Benutzer legt zunächst den Planungshorizont fest, beispielsweise einen Zeitraum von drei Tagen. Für diesen Zeitraum werden vorab die Arbeitsbeginn und -endzeiten sowie bereits belegte Zeiten angegeben. 2. Im nächsten Schritt wählt der Benutzer aus der Liste der Bestandskunden jene aus, die er im Planungshorizont besuchen möchte. Für jeden Kunden kann zusätzlich auch noch der Besuchstag fixiert werden. 3. Optional kann der Benutzer auch eine Auswahl an potenziellen Kunden für den Planungshorizont treffen und diese ebenfalls einem bestimmten Besuchstag zuordnen. 4. Wurden alle Besuchswünsche und Parameter festgelegt, kann der Optimierungsvorgang gestartet werden. Die Ergebnisse werden dann sowohl in einer Kalenderansicht als auch als Tour auf einer Karte dargestellt. 5. Das Ergebnis der Optimierung kann vom Benutzer beliebig abgeändert bzw. mit veränderten Besuchswünschen bzw. Parametern reoptimiert werden. Dieser Schritt wird auch notwendig, wenn kurzfristig ein neuer, dringender Kundenbesuch zu absolvieren ist.
420 G. Kiechle, K. Dörner und A. Wagner Abb. 1: Konzeptionelle Benutzerschnittstelle eines Planungswerkzeuges für die Außendienstmitarbeiter-Tourenplanung 3 Heuristisches Lösungsverfahren Zur Lösung der Optimierungsaufgabe wurde eine maßgeschneiderte Konstruktionsheuristik und das Verfahren der Variablen Nachbarschaftssuche (Variable Neighborhood Search, VNS) eingesetzt. VNS ist eine der jüngeren Metaheuristiken und gilt als einfaches, robustes und besonders effizientes Verfahren (MLADENOVIC & HANSEN 1997). Die Grundidee der Variablen Nachbarschaftssuche ist es, ausgehend von einer Startlösung systematisch zuerst kleinere und danach immer größere zufällige Änderungen an dieser Lösung vorzunehmen, und diese mittels Reparaturoperatoren wieder sinnvoll herzustellen und lokal zu optimieren. Zielsetzung der Lösungsverfahren ist die Suche nach einem Tourenplan, der alle gewählten Bestandskunden innerhalb der vorgegebenen zeitlichen Einschränkungen bedient sowie eine möglichst günstige Auswahl an potenziellen Kunden im Sinne des erwarteten Umsatzes integriert. Dabei dürfen die maximalen Arbeitszeiten nicht überschritten werden. Die entwickelte Konstruktionsheuristik stützt sich auf die Idee der best insertion Heuristic von SOLOMON (1987). Dabei wird eine Gesamtlösung konstruiert, in dem schrittweise jeweils ein weiterer Kunde in den Tourenplan integriert wird. In jedem Schritt des Verfahrens wird für jeden noch nicht zugeordneten Kunden die beste Position in der bisherigen Lösung ermittelt. Aus allen berechneten Möglichkeiten wird der günstigste, zulässig einplanbare Kunde gewählt und in den Tourenplan eingefügt.
Entwicklung eines Planungswerkzeuges für die Tourenplanung 421 Die entwickelten Lösungsverfahren wurden in ANSI C++ implementiert. Die Lösungsgüte der Konstruktionsheuristik wurde mit Daten aus der Kundendatenbank des österreichischen GIS-Dienstleisters WIGeoGIS Softwareerstellungs- und Handelsgesellschaft m.b.h. in numerischen Analysen evaluiert. Zur Bewertung der entwickelten Verfahren wurden dieselben Probleminstanzen auch mit dem kommerziellen Optimierungswerkzeug CPLEX des Herstellers ILOG software bearbeitet. Aus den Ergebnissen für zehn Testinstanzen in Tabelle 1 ist ersichtlich, dass für die vorliegende Problemgröße die Konstruktionsheuristik ausreichend gute Ergebnisse liefert idente Zielgrößen sind mit einem * markiert. Zu jeder Instanz werden der erreichte erwartete Umsatz der Lösungen von CPLEX und der Heuristik sowie die Berechnungszeit für CPLEX (max. 1805 Sekunden) angegeben. Die Rechenzeit für die Lösung der Heuristik liegt bei allen Instanzen unter einer Sekunde. Tabelle 1: Ergebnisse der Konstruktionsheuristik Instanz Zielgröße (CPLEX) Berechnungsdauer in Sekunden (CPLEX) Zielgröße (Heuristik) 1 25493.20 54 25148.70 2 44378.60 21 44378.60* 3 32605.15 1805 32646.95 4 35860.05 1805 35860.05* 5 58383.45 1473 58383.45* 6 38037.55 1805 38037.55* 7 33640.15 2 33640.15* 8 34057.55 0 34057.55* 9 15322.05 4 15322.05* 10 52373.30 1805 52852.20
422 G. Kiechle, K. Dörner und A. Wagner 4 GIS-basiertes Planungswerkzeug Die erstellten Lösungsverfahren wurden in ein prototypisches Planungswerkzeug für Außendienstmitarbeiter integriert, das als Windows-Anwendung in C# implementiert wurde. Als Basis der Applikation dient ein Kalenderelement dessen Anzeigebereich zwischen 1 und 5 Tagen konfigurierbar ist. Aus einer Kundendatenbank werden die Listen der Bestands- und Potenzialkunden befüllt. Die zu planenden Kunden werden per Drag and Drop den gewünschten Besuchszeitfenstern zugeordnet. Das Ergebnis der Optimierung wird im Kalenderelement dargestellt und kann dort nachbearbeitet werden (z.b. Verschiebung von Zeitfenstern, Anpassung der Besuchsdauern, etc.). Gegebenenfalls kann anschließend die Optimierung unter Berücksichtigung der Veränderungen im Kalenderelement wiederholt werden. Abb. 2: Prototypisch implementierte Benutzerschnittstelle eines Planungswerkzeuges für die Außendienstmitarbeiter-Tourenplanung Das Planungswerkzeug benötigt neben der Schnittstelle zu der C++ Implementierung des Lösungsverfahrens (angebunden als Dynamic Link Library DLL), Anbindungen an weitere existierende Systeme und Dienste: Die Geokodierung von Kundenstandorten wird unter Verwendung der Programmierschnittstelle WIGeoAPI der WIGeoGIS GmbH. über eine HTTP-Schnittstelle umgesetzt. Die Ergebnisse der Geokodierung werden über eine Component Object Model (COM) Schnittstelle an einen lokalen Server zur Berechnung einer
Entwicklung eines Planungswerkzeuges für die Tourenplanung 423 Distanzmatrix der Fahrzeiten zwischen allen Standorten übermittelt. Zur Visualisierung der Ergebnisse können die berechneten Routen wieder über eine HTTP-Schnittstelle an die WIGeoAPI gesendet werden, die als Ergebnis eine digitale Karte mit einer Visualisierung der Route liefert. Eine Synchronisationsschnittstelle (ebenfalls realisiert über COM Schnittstellen) zu MS Outlook ermöglicht die Einbeziehung von privaten Terminen sowie eine Speicherungsmöglichkeit berechneter Routen mit diesem Kalenderwerkzeug. 5 Ausblick Das beschriebene Planungswerkzeug wurde bis zum Reifegrad eines Demonstrators entwickelt und von potenziellen Endbenutzern mit realen Daten getestet. In einem nächsten Schritt könnte der Demonstrator zu einem marktfähigen Produkt weiterentwickelt werden. In diesem Fall müsste die Benutzbarkeit des Systems und auch das Laufzeitverhalten verbessert werden. Weiters sollte die Anbindung an verschiedene Typen von Kundendatenbanken und Kalendersysteme in Angriff genommen werden. Die entwickelten Lösungsverfahren könnten ebenfalls noch erweitert werden, sodass auch spezialisiertere Planungsaufgaben damit gelöst werden können. Sinnvoll erscheint beispielsweise die automatisierte Berücksichtigung von regelmäßigen Kundenbesuchen. Das System würde dann den Besuch eines Bestandskunden eigeninitiativ vorschlagen, wenn dieser über einen längeren Zeitraum nicht mehr besucht wurde. Literatur ANDREATTA, G. & LULLI, G. (2007): A Multi-period TSP with Stochastic Regular and Urgent Demand. to appear: European Journal of Operational Research. KIECHLE, G. (2007): Using GIS for Optimisation in Transportation Planning. In: ERCIM News, 68, 1/2007, S. 39-40. MLADENOVIC, N. & HANSEN, P. (1997): Variable Neighborhood Search. In: Computers and Operations Research. 24, S. 1097-1100. POLACEK, M., DOERNER, K., HARTL, R., KIECHLE, G. & REIMANN, M. (2005): Scheduling periodic customer visits for a Travelling Salesperson. In: European Journal of Operational Research., 179 (3), S. 823-837. SOLOMON, M. (1987): Algorithms for the vehicle routing and scheduling problems with time window constraints. In: Operations Research, 35, S. 254-265.