Eine Vielzahl planerischer Optimierungsprobleme aus unterschiedlichsten Anwendungsbereichen wie Logistik, Produktion, Bioinformatik, Elektrotechnik, Netzwerkdesign, etc. lassen sich effizient mit heuristischen Methoden und Metaheuristiken lösen. Eine Metaheuristik ist hierbei ein übergeordneter Algorithmus, welcher eine oder mehrere abhängige Algorithmen bzw. Heuristiken bei der Lösungssuche steuert.
Da sich viele der praktischen Problemstellungen auf eine gemeinsame abstrakte Struktur zurückführen lassen, wurden zur effizienten, zeitsparenden Implementierung von problemangepassten Metaheuristiken Programmierframeworks entwickelt.
Vorliegende Arbeit gibt einen Überblick über frei im Internet verfügbare und kommerzielle Frameworks. Nach der Darstellung wichtiger Grundlagen wurden diese hinsichtlich für die Softwareentwicklung relevanter Kriterien, wie Anzahl und Art der in den Frameworks enthaltenen Algorithmen, verwendete Programmiersprache, Ausführlichkeit und schnelle Verständlichkeit der Dokumentation bewertet.
Es wurde ein grafisches Eigenschaftsprofil abgeleitet, welches die Stärken und Schwächen der ausgewählten Frameworks zeigt und zusammen mit in der Arbeit erstellten Eigenschaftstabellen bei der Auswahl eines geeigneten Frameworks für eine konkrete Entwicklungsaufgabe, oder der Weiterentwicklung der Frameworks selbst, helfen kann.
Inhaltsverzeichnis
- Zielsetzung der Studie
- Metaheuristiken
- Einfache lokale Suchverfahren
- Lagrange-Heuristiken
- GRASP
- Simulated Annealing
- Tabu Search
- Genetische und evolutionäre Algorithmen
- Ameisenalgorithmen
- Frameworks für Metaheuristiken - allgemeine Konzepte
- Vergleich ausgewählter Frameworks
- Kriterien zum Vergleich der Frameworks
- Vergleich der Frameworks nach der Art der mitgelieferten Algorithmen
- Vergleich der Frameworks nach weiteren Kriterien
- Gesamtbewertung der Frameworks
- Zusammenfassung und Ausblick
Zielsetzung und Themenschwerpunkte
Die Arbeit befasst sich mit der effizienten Lösung von komplexen Optimierungsproblemen, die in verschiedenen Bereichen wie Logistik, Produktion oder Bioinformatik auftreten. Dabei werden heuristische Methoden und Metaheuristiken im Vordergrund stehen, die durch generische Programmierumgebungen (Frameworks) implementiert werden. Das Ziel dieser Arbeit ist es, einen Überblick über verfügbare Frameworks zu geben und diese hinsichtlich relevanter Kriterien zu vergleichen. Dabei werden die wichtigsten Metaheuristiken und die zugrundeliegenden Designprinzipien für Frameworks vorgestellt.
- Einsatz von Metaheuristiken zur Lösung von Optimierungsproblemen
- Klassifizierung und Vergleich von Programmier-Frameworks für Metaheuristiken
- Einführung in die wichtigsten Metaheuristiken und deren Funktionsweise
- Bewertung von Frameworks anhand relevanter Kriterien wie Algorithmen, Programmiersprache und Dokumentation
- Entwicklung eines Eigenschaftsprofils zur Auswahl geeigneter Frameworks für konkrete Entwicklungsaufgaben
Zusammenfassung der Kapitel
- Kapitel 1: Zielsetzung der Studie: Dieses Kapitel erläutert die Problematik komplexer Optimierungsprobleme und die Notwendigkeit von Metaheuristiken sowie Frameworks für deren effiziente Implementierung. Es wird die Motivation für die vorliegende Arbeit dargelegt und die Ziele der Studie definiert.
- Kapitel 2: Metaheuristiken: Dieses Kapitel behandelt die grundlegenden Konzepte von Metaheuristiken. Es werden verschiedene Arten von Metaheuristiken vorgestellt und deren Funktionsweise anhand von Beispielen erläutert. Die Vorteile und Herausforderungen beim Einsatz von Metaheuristiken werden diskutiert.
- Kapitel 3: Frameworks für Metaheuristiken - allgemeine Konzepte: In diesem Kapitel werden allgemeine Konzepte von Frameworks für Metaheuristiken vorgestellt. Es werden verschiedene Designprinzipien und Architekturen von Frameworks diskutiert, die für die effiziente Implementierung von Metaheuristiken relevant sind.
- Kapitel 4: Vergleich ausgewählter Frameworks: Dieses Kapitel präsentiert einen Vergleich von verschiedenen verfügbaren Frameworks für Metaheuristiken. Es werden verschiedene Kriterien für den Vergleich definiert und die Frameworks anhand dieser Kriterien bewertet. Die Stärken und Schwächen der verschiedenen Frameworks werden herausgestellt.
Schlüsselwörter
Die Arbeit fokussiert sich auf die Bereiche der Metaheuristiken, Programmier-Frameworks und Optimierungsprobleme. Wichtige Schlüsselwörter sind: heuristische Methoden, lokale Suche, Simulated Annealing, Tabu Search, Genetische Algorithmen, Ameisenalgorithmen, Framework-Architektur, Softwareentwicklung, Algorithmenvergleich.
- Quote paper
- Cand. Wirtsch.-Ing. Christian Luschmann (Author), 2007, Programmierungs-Frameworks für Metaheuristiken, Munich, GRIN Verlag, https://www.grin.com/document/89097