Beschreibung
Reale Optimierungsprobleme erfordern die Berechnung hochkomplexer Computermodelle. Die dazu notwendige Rechenleistung kann kostengünstig durch Workstation-Cluster bereitgestellt werden, die die Leistungsfähigkeit von Mini-Supercomputern erreichen und oft nur zu einem geringen Teil ausgelastet sind. Im Buch wird auf Basis von OMT ein objektorientierter Ansatz für die verteilte Lösung von Optimierungsproblemen entwickelt und in ein Prototyp-System umgesetzt. Der in C++ implementierte Prototyp verfügt über eine graphische Oberfläche zur Steuerung der Optimierungsrechnung und zeigt, wie existierende Softwarepakete aus Fortran oder C in die verteilte Berechnung integriert werden können.
Autorenportrait
Inhaltsangabe1 Einleitung und Zielsetzung.- 1.1 Einführung und Motivation.- 1.2 Aufgabenstellung und Vorgehensweise.- 1.3 Begriffe und Definitionen.- 2 Objektorientierte Softwareentwicklung und visuelle Sprachen.- 2.1 Objektorientierte Softwareentwicklung.- 2.1.1 Grundlagen objektorientierter Systeme.- 2.1.2 Objektonentierte Sprachen und C++.- 2.1.3 Methoden objektorientierter Softwareentwicklung im Überblick.- 2.2 Objektorientierte Modellierung mit der Object Modeling Technique.- 2.2.1 Das Objektmodell.- 2.2.2 Das dynamische Modell.- 2.2.3 Das funktionale Modell.- 2.2.4 Der OMT Modellierungsprozeß.- 2.3 Graphische Oberflächen und visuelle Systeme.- 2.3.1 Überblick zum Design graphischer Oberflächen.- 2.3.2 Einführung in die visuelle Programmierung.- 2.3.3 WxWindows und Toolkits für graphische Oberflächensysteme.- 3 Optimierung und Parallelverarbeitung auf Workstation-Clustern.- 3.1 Grundlagen multidisziplinärer Optimierung.- 3.1.1 Formulierung von Optimierungsproblemen.- 3.1.1.1 Problemformulierung mit OpTiX-II.- 3.1.1.2 Beschreibung von Strukturoptimierungsproblemen mit SAPOP.- 3.1.2 Klassifikation von Optimierungsproblemen.- 3.1.3 Optimierungsmethoden und -algorithmen.- 3.1.3.1 Auswahl und Parameterbelegung von Algorithmen.- 3.1.3.2 Verfügbare Algorithmen-Bibliotheken.- 3.2 Ansätze und Werkzeuge zur Parallelverarbeitung auf einem Workstation-Cluster.- 3.2.1 Einsatz eines Workstation-Clusters als Alternative zu klassischen Parallelrechnern.- 3.2.2 Konzepte paralleler Programmierung.- 3.2.2.1 Kommunikationsformen und Informationsaustausch.- 3.2.2.2 Paradigmen der Parallel-Programmierung.- 3.2.3 Werkzeuge zur Parallel-Programmierung auf Workstation-Clustern.- 3.2.3.1 Klassifikation und Überblick verfügbarer Werkzeuge.- 3.2.3.2 Parallel Virtual Machine - PVM.- 3.2.3.3 Message Passing Interface - MPI.- 3.2.4 Softwareumgebungen für das Management verteilter Anwendungen.- 3.2.4.1 Distributed Computing Environment - DCE.- 3.2.4.2 Common Object Request Broker Architecture - CORBA.- 4 Entwurf eines Klassenkonzepts und einer visuellen Sprache zur verteilten Optimierung.- 4.1 Ein objektorientiertes Modell verteilter Optimierung.- 4.1.1 Einführung in die Klassenstruktur verteilter Optimierung.- 4.1.2 Formulierung multidisziplinärer Optimierungsprobleme.- 4.1.2.1 Abstraktes Klassenkonzept zur Problembeschreibung.- 4.1.2.2 OpTiX-III - eine Sprache zur Formulierung von Problemen.- 4.1.2.3 Klassenbasierte Integration der SAPOP Strukturoptimierung.- 4.1.3 Objektmodell mathematischer Optimierungsprobleme.- 4.1.4 Einbindung von Algorithmen in die Klassenstruktur.- 4.1.5 Integration von Workbench und virtuellem Parallelrechner.- 4.2 Sprachansatz visueller Optimierungsschemata.- 4.2.1 Die Task als Abstraktion der Optimierungsaufgabe.- 4.2.2 Einsatz von Blackboards zum Datenaustausch und zur Steuerung von Tasks.- 4.2.3 Die Queue als Behälterobjekt zum Austausch von Optimierungsergebnissen.- 4.2.4 Definition von Kommunikationskanälen durch Connectoren.- 4.2.5 Zusammenfassende Darstellung anhand des Laufzeitsystems.- 5 Prototyp-Implementierung und Anwendung.- 5.1 Eine Einführung in die Workbench.- 5.1.1 Entwurf und Gestaltung der Oberfläche.- 5.1.2 Editoren für die Eingabe von Optimierungsaufgaben.- 5.1.3 Auswahl und Parameterbelegung von Algorithmen.- 5.1.4 Ablaufsteuerung des Lösungsprozesses.- 5.2 Installation der Workbench.- 5.2.1 Struktur des Softwaresystems und Übersetzung.- 5.2.2 Konfiguration der Workbench.- 5.3 Anwendungsbeispiele.- 5.3.1 Einführung in die OpTiX-Sprache und ein Leistungsvergleich mit dem prozeduralen Ansatz in OpTiX-II.- 5.3.2 Einsatz der Workbench zur Strukturoptimierung mit OpTiX-III oder gekoppelt mit SAPOP.- 5.3.3 Problemlösung mit dem Manager-Worker Konzept.- 5.3.4 Weitere Einsatzmöglichkeit visueller Optimierungsschemata und von Blackboards.- 6 Zusammenfassung und Ausblick.- Anhang A OMT Diagramm-Notation.- Anhang B Übersicht zu WxWindows.- Anhang C OpTiX-III Syntaxdiagramme.- Anhang D Algorithmen Konfigurationsdatei.- Anhang E O