Kaiserslautern - Fachbereich Informatik
Refine
Year of publication
Document Type
- Master's Thesis (45) (remove)
Has Fulltext
- yes (45)
Keywords
- CoMo-Kit (5)
- Case-Based Planning (4)
- Fallbasiertes Schliessen (3)
- Case-Based Reasoning (2)
- Decision Trees (2)
- Entscheidungsbäume (2)
- Fallbasierte Planning (2)
- AG-RESY (1)
- AKLEON (1)
- Abstandsregeltempomat (1)
Faculty / Organisational entity
Hadoop ist ein beliebtes Framework für verteilte Berechnungen über große
Datenmengen (Big Data) mittels MapReduce. Hadoop zu verwenden ist einfach: Der
Entwickler definiert die Eingabedatenquelle und implementiert die beiden
Methoden Map und Reduce. Über die verteilte Berechnung und Fehlerbehandlung muss
er sich dabei keine Gedanken machen, das erledigt das Hadoop-Framework.
Allerdings kann die Analyse von Big Data sehr lange dauern und da sich die
Eingabedaten jede Sekunde ändern, ist es vielleicht nicht immer die beste
Idee, die vollständige Berechnung jedes Mal aufs Neue auf die kompletten
Eingabedaten anzuwenden. Es wäre geschickter, sich das Ergebnis der
vorherigen Berechnung zu betrachten und nur die Deltas zu analysieren, also
Daten, die seit der letzten Berechnung hinzugefügt oder gelöscht wurden. In dem Gebiet der
selbstwartbaren materialisierten Sichten in relationalen Datenbanksystemen gibt
es bereits mehrere Ansätze, die sich mit der Lösung dieses Problems
beschäftigen. Eine Strategie liest nur die Deltas und inkrementiert oder
dekrementiert die Ergebnisse der vorherigen Berechnung. Allerdings ist diese
Inkrement-Operation sehr teuer, deshalb ist es manchmal besser, das komplette
alte Ergebnis zu lesen und es mit den Deltas der Eingabedaten zu kombinieren.
In dieser Masterarbeit wird ein neues Framework namens Marimba vorgestellt,
welches sich genau um diese Probleme der inkrementellen Berechnung kümmert. Einen
Map\-Re\-duce-Job in Marimba zu schreiben ist genau so einfach wie einen Hadoop-Job.
Allerdings werden hier keine Mapper- und Reducer-Klasse implementiert, sondern
eine Translator- und Serializer-Klasse. Der Translator ähnelt dem Mapper: Er
bestimmt, wie die Eingabedaten gelesen und daraus Zwischenwerte berechnet
werden. Der Serializer erzeugt die Ausgabe des Jobs. Wie diese Ausgabe berechnet
wird, gibt der Benutzer durch Implementierung einiger Methoden an, um Werte zu
aggregieren und invertieren.
Vier MapReduce-Jobs, darunter auch das Paradebeispiel für MapReduce WordCount,
wurden im Marimba-Framework implementiert. Das Entwickeln von inkrementellen
Map-Reduce-Jobs ist mit dem Framework extrem einfach geworden. Außerdem konnte
mit Performanztests gezeigt werden, dass die inkrementelle Berechnung deutlich
schneller ist als eine vollständige Neuberechnung.
Ein weiterer unter den vier implementierten Jobs berechnet
Wortauftrittswahrscheinlichkeiten in geschriebenen Sätzen. Dies kann
beispielsweise für Spracherkennung verwendet werden. Wenn ein Wort in einer
gesprochenen SMS nicht richtig verstanden wurde, hilft der Algorithmus zu raten,
welches Wort am wahrscheinlichsten an einer bestimmten Stelle stehen könnte,
abhängig von den vorherigen Wörtern im Satz. Damit dieser Algorithmus auch
brauchbare Ergebnisse liefert, ist die Menge und die Qualität der Eingabedaten
wichtig. Durchaus brauchbare Ergebnisse wurden durch die Verarbeitung von
Millionen von Twitter-Feeds, die deutsche Twitter-Nutzer in den letzten Monaten
geschrieben haben, erreicht.
Recently, a new Quicksort variant due to Yaroslavskiy was chosen as standard sorting
method for Oracle's Java 7 runtime library. The decision for the change was based on
empirical studies showing that on average, the new algorithm is faster than the formerly
used classic Quicksort. Surprisingly, the improvement was achieved by using a dual pivot
approach — an idea that was considered not promising by several theoretical studies in the
past. In this thesis, I try to find the reason for this unexpected success.
My focus is on the precise and detailed average case analysis, aiming at the flavor of
Knuth's series “The Art of Computer Programming”. In particular, I go beyond abstract
measures like counting key comparisons, and try to understand the efficiency of the
algorithms at different levels of abstraction. Whenever possible, precise expected values are
preferred to asymptotic approximations. This rigor ensures that (a) the sorting methods
discussed here are actually usable in practice and (b) that the analysis results contribute to
a sound comparison of the Quicksort variants.
Data usage control is a concept that extends access control to also protect data after it
has been released. Usage control enforcement relies on available information about the
distribution of data in the monitored system. In this thesis we introduce an information
flow tracking approach for JavaScript in order to enable usage control for dynamic content
in web browsers. The proposed model is implemented as a prototype in the JavaScript
engine V8 of the Chromium browser to evaluate the feasibility of the chosen approach.
This research for this thesis was conducted to develop a framework which supports the automatic configuration of project-specific software development processes by selecting and combining different technologies: the Process Configuration Framework. The research draws attention to the problem that while the research community develops new technologies, the industrial companies continue only using their well-known ones. Because of this, technology transfer takes decades. In addition, there is the fact that there is no solution which solves all problems in a software development project. This leads to a number of technologies which need to be combined for one project.
The framework developed and explained in this research mainly addresses those problems by building a bridge between research and industry as well as by supporting software companies during the selection of the most appropriate technologies combined in a software process. The technology transformation gap is filled by a repository of (new) technologies which are used as a foundation of the Process Configuration Framework. The process is configured by providing SPEM process pattern for each technology, so that the companies can build their process by plugging into each other.
The technologies of the repository were specified in a schema including a technology model, context model, and an impact model. With context and impact it is possible to provide information about a technology, for example, its benefits to quality, cost or schedule. The offering of the process pattern as output of the Process Configuration Framework is performed in several stages:
I Technology Ranking:
1 Ranking based on Application Domain, Project & Impact
2 Ranking based on Environment
3 Ranking based on Static Context
II Technology Combination:
4 Creation of all possible Technology Chains
5 Restriction of the Technology Chains
6 Ranking based on Static and Dynamic Context
7 Extension of the Chains by Quality Assurance
III Process Configuration:
8 Process Component Diagram
9 Extension of the Process Component Diagram
10 Instantiation of the Components by Technologies of the Technology Chain
11 Providing process patterns
12 Creation of the process based on Patterns
The effectiveness and quality of the Process Configuration Framework have additionally been evaluated in a case study. Here, the Technology Chains manually created by experts were compared to the chains automatically created by the framework after it was configured by those experts. This comparison depicted that the framework results are similar and therefore can be used as a recommendation.
We conclude from our research that support during the configuration of a process for software projects is important especially for non-experts. This support is provided by the Process Configuration Framework developed in this research. In addition our research has shown that this framework offers a possibility to speed up the technology transformation gap between the research community and industrial companies.
Ever since Mark Weiser’s vision of Ubiquitous Computing the importance of context has increased in the computer science domain. Future Ambient Intelligent Environments will assist humans in their everyday activities, even without them being constantly aware of it. Objects in such environments will have small computers embedded into them which have the ability to predict human needs from the current context and adapt their behavior accordingly. This vision equally applies to future production environments. In modern factories workers and technical staff members are confronted with a multitude of devices from various manufacturers, all with different user interfaces, interaction concepts and degrees of complexity. Production processes are highly dynamic, whole modules can be exchanged or restructured. Both factors force users to continuously change their mental model of the environment. This complicates their workflows and leads to avoidable user errors or slips in judgement. In an Ambient Intelligent Production Environment these challenges have to be approached. The SmartMote is a universal control device for ambient intelligent production environments like the SmartFactoryKL. It copes with the problems mentioned above by integrating all the user interfaces into a single, holistic and mobile device. Following an automated Model-Based User Interface Development (MBUID) process it generates a fully functional graphical user interface from an abstract task-based description of the environment during run-time. This work introduces an approach to integrating context, namely the user’s location, as an adaptation basis into the MBUID process. A Context Model is specified, which stores location information in a formal and precise way. Connected sensors continuously update the model with new values. The model is complemented by a reasoning component which uses an extensible set of rules. These rules are used to derive more abstract context information from basic sensor data and for providing this information to the MBUID process. The feasibility of the approach is shown by using the example of Interaction Zones, which let developers describe different task models depending on the user’s location. Using the context model to determine when a user enters or leaves a zone, the generator can adapt the graphical user interface accordingly. Context-awareness and the potential to adapt to the current context of use are key requirements of applications in ambient intelligent environments. The approach presented here provides a clear procedure and extension scheme for the consideration of additional context types. As context has significant influence on the overall User Experience, this results not only in a better usefulness, but also in an improved usability of the SmartMote.
Nowadays, vehicle control systems such as anti-lock braking systems, electronic stability control, and cruise control systems yield many advantages. The electronic control units that are deployed in this specific application domain are embedded systems that are integrated in larger systems to achieve predefined applications. Embedded systems consist of embedded hardware and a large software part. Model-based development for embedded systems offers significant software-development benefits that are pointed out in this thesis. The vehicle control system Adaptive Cruise Control is developed in this thesis using a model-based software development process for embedded systems. As a modern industrial design tool that is prevalent in this domain, simulink,is used for modeling the environment, the system behavior, for determining controller parameters, and for simulation purposes. Using an appropriate toolchain, the embedded code is automatically generated. The adaptive cruise control system could be successfully implemented and tested within this short timespan using a waterfall model without increments. The vehicle plant and important filters are fully deduced in detail. Therefore, the design of further vehicle control systems needs less effort for development and precise simulation.
In its rather short history robotic research has come a long way in the half century since it started to exist as a noticeable scientic eld. Due to its roots in engineering, computer science, mathematics, and several other 'classical' scientic branches,a grand diversity of methodologies and approaches existed from the very beginning. Hence, the researchers in this eld are in particular used to adopting ideas that originate in other elds. As a fairly logical consequence of this, scientists tended to biology during the 1970s in order to nd approaches that are ideally adapted to the conditions of our natural environment. Doing so allows for introducing principles to robotics that have already shown their great potential by prevailing in a tough evolutionary selection process for millions of years. The variety of these approaches spans from efficient locomotion, to sensor processing methodologies and all the way to control architectures. Thus, the full spectrum of challenges for autonomous interaction with the surroundings while pursuing a task can be covered by such means. A feature that has proven to be amongst the most challenging to recreate is the human ability of biped locomotion. This is mainly caused by the fact that walking,running and so on are highly complex processes involving the need for energy efficient actuation, sophisticated control architectures and algorithms, and an elaborate mechanical design while at the same time posting restrictions concerning stability and weight. However, it is of special interest since our environment is favoring this specic kind of locomotion and thus promises to open up an enormous potential if mastered. More than the mere scientic interest, it is the fascination of understanding and recreating parts of oneself that drives the ongoing eorts in this area of research. The fact that this is not at all an easy task to tackle is not only caused by the highly dynamical processes but also has its roots in the challenging design process. That is because it cannot be limited to just one aspect like e.g. the control architecture, actuation, sensors, or mechanical design alone. Each aspect has to be incorporated into a sound general concept in order to allow for a successful outcome in the end. Since control is in this context inseparably coupled with the mechanics of the system, both has to be dealt with here.
JSR 170 spezifiziert die Java Content Repository (JCR) Schnittstelle. Diese Schnittstelle wird als Standard im Bereich Web-Anwendungen und Content Management akzeptiert. Sie gliedert sich in Level 1 (lesender Zugriff) and Level 2 (Lese- und Schreibzugriffe) und beschreibt darüber hinaus vier weitere optionale Funktionen. Das in JSR 170 beschriebene hierarchische Datenmodell weist starke Analogie zu XML auf. Jedoch verwenden die meisten JCR-Implementierungen relationale Datenbanken. Durch native XML Datenbanken, wie XTC, können XML-Daten effizient verwaltet werden. Diese Arbeit beschreibt das Design und die Implementierung eines Level 2 JCRs, welches alle Anforderungen an die Persistenz mit Hilfe von DOM und XQuery Operationen auf XML-Dokumenten in XTC erfüllt. Die optionalen FuJSR 170 spezifiziert die Java Content Repository (JCR) Schnittstelle. Diese Schnittstelle wird als Standard im Bereich Web-Anwendungen und Content Management akzeptiert. Sie gliedert sich in Level 1 (lesender Zugriff) und Level 2 (Lese- und Schreibzugriffe) und beschreibt darüber hinaus vier weitere optionale Funktionen. Das in JSR 170 beschriebene hierarchische Datenmodell weist starke Analogie zu XML auf. Jedoch verwenden die meisten JCR-Implementierungen relationale Datenbanken. Durch native XML Datenbanken, wie XTC, können XML-Daten effizient verwaltet werden. Diese Arbeit beschreibt das Design und die Implementierung eines Level 2 JCRs, welches alle Anforderungen an die Persistenz mit Hilfe von DOM und XQuery Operationen auf XML-Dokumenten in XTC erfüllt. Die optionalen Funktionen “Versionierung” und “Transaktionen” werden ebenfalls unterstützt. Um die Implementierung zu testen werden zwei Demo-Anwendungen (Blog & Wiki) entwickelt und Vergleichstests gegen die Referenzimplementierung angestellt.
Ein typisches Mittelklassefahrzeug hat mittlerweile 100 Computerprozessoren,die miteinander kommunizieren, und bildet damit ein komplexes Softwaresystem. Die steigende Anzahl der miteinander kommunzierenden Funktionen trägt dazu bei, dass die Komplexität der Steurungssoftware immer schwerer zu beherrschen ist. Trotz eines enormen Kostenaufwands zur Entwicklung der entsprechenden Softwarekomponenten sind Softwarefehler bei Fahrzeugen der automobilen Oberklasse eine der am häufigsten angeführten Ursachen in der Pannenstatistik. Die Tatsache, dass die angeführten Funktionalitäten verteilt und parallel auf einer steigenden Anzahl unterschiedlicher Mikrokontroller abgearbeitet werden, birgt zusätzliche Probleme. Es ist jedoch Fakt, dass der Markt nach Funktionalitäten wie ABS, ASR und ESP verlangt, die zu einem wesentlichen Teil aus Software bestehen. Es ist also notwendig, einen alternativen Softwareansatz zu finden, der die Komplexität der Steuerungssoftware beherrschbar werden lässt und dennoch den Anforderungen des automobilen Umfelds, wie zum Beispiel der Verlässlichkeit gerecht wird. Dies wird in dieser Arbeit mit hilfe einer verhaltensbasierten steuerung erreicht.
Music Information Retrieval (MIR) is an interdisciplinary research area that has the goal to improve the way music is accessible through information systems. One important part of MIR is the research for algorithms to extract meaningful information (called feature data) from music audio signals. Feature data can for example be used for content based genre classification of music pieces. This masters thesis contributes in three ways to the current state of the art: • First, an overview of many of the features that are being used in MIR applications is given. These methods – called “descriptors” or “features” in this thesis – are discussed in depth, giving a literature review and for most of them illustrations. • Second, a large part of the described features are implemented in a uniform framework, called T-Toolbox which is programmed in the Matlab environment. It also allows to do classification experiments and descriptor visualisation. For classification, an interface to the machine-learning environment WEKA is provided. • Third, preliminary evaluations are done investigating how well these methods are suited for automatically classifying music according to categorizations such as genre, mood, and perceived complexity. This evaluation is done using the descriptors implemented in the T-Toolbox, and several state-of-the-art machine learning algorithms. It turns out that – in the experimental setup of this thesis – the treated descriptors are not capable to reliably discriminate between the classes of most examined categorizations; but there is an indication that these results could be improved by developing more elaborate techniques.
Das Ziel dieser Arbeit ist es, ein Framework und einen funktionsfähigen Prototypen für eine Middleware zu entwickeln, die es ermöglicht, Berechnungen verteilt in einem Peer-to-Peer-Netz auszuführen. Dabei sollen verschiedene Arten der Berechnung unterstützt werden. Eine Art der Berechnung sind Aufträge, die massiv parallel berechnet werden können, d.h. solche, die in unabhängige Teilaufträge zerlegt werden können und ohne gegenseitige Kommunikation auskommen. Diese Aufträge können entweder so parametrisiert sein, dass jeder Teilauftrag einen anderen Satz Parameter erhält (z.B. Fraktalberechnung), oder zufallsbasiert, so dass jeder Teilauftrag mit den gleichen Ausgangswerten berechnet wird und unterschiedliche Ergebnisse resultieren. Eine andere Art der Berechnung setzt voraus, dass Knoten, die am gleichen Auftrag arbeiten, auch miteinander kooperieren und durch Nachrichten beispielsweise Teillösungen austauschen (z.B. verteilte evolutionäre Algorithmen). Alle Knoten in diesem Netz sollen gleichberechtigt sein, d.h. jedem Knoten soll es möglich sein, eigene Anwendungen und Aufgaben im Netz zu verteilen. Den verteilten Anwendungen soll zudem die Möglichkeit gegeben werden, mit anderen Knoten, die an der gleichen Aufgabe arbeiten, kommunizieren zu können. Alle benötigten Informationen zur Berechnung eines Auftrags (d.h. Parameter, ausführbarer Code der Anwendung, Anzahl der zu berechnenden Fälle) sollen den rechnenden Knoten durch Middlewarefunktionen zur Verfügung gestellt werden, ebenso soll der Rücktransport der Ergebnisse zum Initiator durch die Middleware erfolgen. Der Nutzer soll also an seinem Arbeitsplatz seine verteilte Anwendung starten können und die Ergebnisse schließlich wieder auf seinem Rechner vorfinden. Die Implementierung soll möglichst modular angelegt sein und nicht auf ein konkretes P2P-Protokoll beschränkt sein, sondern einen leichten Austausch bzw. eine nutzergesteuerte Auswahl von verschiedenen Protokollen ermöglichen. Im Rahmen dieses Prototypen soll ein epidemisches P2P-Protokoll realisiert werden.
Im Rahmen dieser Diplomarbeit werden die Konzepte zur Unterstützung von datenbankorientierten Software-Produktlinien durch domänenspezifische Sprachen am Beispiel von Versionierungssystemen untersucht. Ziel dieser Arbeit ist es, die zeitlichen Kosten, die durch die Nutzung einer domänenspezifischen Sprache entstehen, zu bestimmen. Dabei werden unterschiedliche Datenbankschemata verwendet, um zu untersuchen, welcher Zusammenhang zwischen der Komplexität des Datenbankschemas und der Übersetzung einer domänenspezifischen Anweisung in eine Reihe von herkömmlichen SQL-Anweisungen besteht. Um die zeitlichen Kosten für die Reduktion zu bestimmen, werden Leistungsuntersuchungen durchgeführt. Grundlage für diese Leistungsuntersuchungen sind domänenspezifische Anweisungen, die von einem speziell für diesen Zweck entwickelten Generator erzeugt wurden. Diese generierten domänenspezifischen Anweisungen werden mit den unterschiedlichen Datenbanktreibern auf dem passenden Datenbankschema ausgeführt.
Diese Arbeit beschäftigt sich mit der Ergebnisverarbeitung (Result-Set-Processing) im Projekt META-AKAD. Das materialisierte Anfrageergebnis, dient als Grundlage für die Ausführung von Meta-Queries. Für die Schnittstelle zum Web-Tier wurden zwei unterschiedliche Implementierungen (zustandslos und zustandsbehaftet) zur Verfügung gestellt und miteinander vergliechen.
On-line Kollisionserkennung mit hierarchisch modellierten Hindernissen für ein Mehrarm-Robotersystem
(1991)
Dieses Kapitel gliedert sich in drei Teile. Zuerst wird die Vorgehensweise in dieser Diplomarbeit zusammengefaßt. Dann folgen die gewonnenen Schlußfolgerungen mit einer Bewertung der verglichenen Ansätze. Der letzte Teil ist ein Ausblick auf die möglichen Anwendungen der Ergebnisse dieser Arbeit. Methodik Bei der Aufgabe, eine on-line Kollisionserkennung mit hierarchisch modellierten Hindernissen für ein Mehrarm-Robotersystem zu untersuchen, wurden folgende Schritte vorgenommen: " Klassifizierung der bisherigen Ansätze zur Beschleunigung der Kollisionserkennung mit einem Arm. Dabei wurde unterschieden zwischen dem Einsatz-Zeitpunkt und der Methode der Ansätze. " Modifikation des Weltmodells der Kollisionserkennung für den Einsatz von mehreren Roboterarmen. Kollisionsklassen wurden in einer formalen Darstellung eingeführt und ihre Eigenschaften betrachtet. " Untersuchung der Approximation von Objekten (z. B. Armsegmente und Hindernisse) durch Primitive. Dabei wurden Algorithmen zur Berechnung der Approximationen entworfen und implementiert. Unterschiedliche Strategien zur Abstandsberechnung mit Primitiven-Approximationen wurden entwickelt. " Untersuchung und Erweiterung der hierarchischen Modellierung für den Einsatz bei bewegten Objekten (wie z. B. Roboterarmen). Dazu wurden eine on-line Aktualisierung der Geometrie und eine Auswahl der optimalen Baumstruktur eingesetzt. " Implementierung der bisherigen und eigenen Beschleunigungs-Ansätze. Für die Durchführung von Experimenten wurden die Ansätze in ein Simulationssystem eingebunden und das Simulationssystem erweitert. " Vergleich und Bewertung der Beschleunigungs-Ansätze durch Messung von Laufzeiten und Qualität der resultierenden Abstandsvektoren. Untersuchung anderer einflußnehmender Parameter, wie z. B. der Sicherheitsabstand oder die Frequenz (Schrittweite) der Kollisionserkennung. Schlußfolgerungen Die Untersuchung der implementierten Ansätze zur on-line Kollisionserkennung erlaubt folgende Bewertung und Folgerungen: " Die on-line Kollisionserkennung mit Abstandsvektoren für mehrere Arme ist bei der Verwendung der entsprechenden Beschleunigungs-Ansätze möglich. Die Berechnungszeit pro Bewegungsschritt liegt im Bereich von wenigen Millisekunden. " Die eingeführte Unterteilung der Umwelt in Kollisionsklassen schafft einen einfachen Mechanismus zur Kollisionserkennung in Szenen mit mehreren bewegten Objekten. Die Kollisionsklassen ermöglichen eine systematische Kollisionserkennung für ein Mehrarm-Robotersystem. " Der Vergleich der Primitiven-Approximationen zeigt, daß der ausschließliche Einsatz der Bounding-Box als Primitiv zu besseren Ergebnissen führt als der Einsatz von mehreren Primitiven wie z. B. in [Adolphs]. Die Verbesserungen betreffen den Aufwand der Abstandsberechnung und die Qualität des Abstandsvektors. " Schon bei wenigen Objekten empfiehlt sich eine hierarchische Darstellung zur Beschleunigung der Kollisionserkennung, da sie zu sehr schnellen Abstandsberechnungen führt. Vor allem bei Szenen mit vielen Objekten ist eine hierarchische Darstellung unverzichtbar. " Durch das neue Konzept der dynamischen Hierarchien ist eine hierarchische Modellierung auch für bewegte Objekte möglich. Die dynamischen Hierarchien garantieren eine optimale Darstellung und ermöglichen eine relativ genaue Modellierung des Roboterarms. Bei der Kollisionserkennung für mehrere Roboterarme ist durch den Einsatz von dynamischen Hierarchien ein Beschleunigungsfaktor von 100 gegenüber dem einfachen Verfahren erreicht worden. Damit ist eine on-line Anwendung möglich. Ausblick Aufbauend auf den hier erzielten Ergebnissen sind folgende Anwendungen denkbar: " Eine on-line Bahnplanung basierend auf den berechneten Abstandsvektoren ist möglich. Von Punkt zu Punkt geplante Bahnen können mit Hilfe der Abstandsvektoren modifiziert und Ausweichtrajektorien generiert werden. " Die Potential-Feld-Methode zur lokalen Bahnplanung kann aufgrund den on-line berechneten Abstandsvektoren angewendet werden. " Auch exakte Abstände können schnell berechnet werden. Diese Abstandsberechnung wird effizient durch die Kombination der dynamischen Hierarchien mit einer A*-Suche. " Die schnelle Abstandsberechnung kann auch für andere Gebiete eingesetzt werden. Beispiele dafür sind der Aufbau von Konfigurations-Räumen oder die Layout-Planung. " Bei zu handhabenden Objekten, wie z. B. Werkstücke, kann das Konzept der Kollisionsklassen einfach um einen dynamischen Wechsel erweitert werden. Dabei wechselt z. B. ein Werkstück, wenn es von dem Arm gegriffen wird, die Klasse.
Die Entwicklung und Wartung von Software-Systemen wird ständig komplexer, da die entwickelte Software selbst immer komplexer und umfangreicher wird. Daher bietet sich zur Entlastung der Projektleiter, Projektmanager und weiterer Projektmitarbeiter eine Rechnerunterstützung der Software-Entwicklung und -wartung an. So können sie einen Überblick über den gesamten Prozess bekommen und diesen optimieren. Eine Möglichkeit der Unterstützung liefert die Modellierung des Software-Entwicklungsprozesses. Um einen Software-Entwicklungsprozess modellieren zu können, müssen die notwendigen Basisstrukturen identifiziert und bereitgestellt werden, was Thema dieser Arbeit ist.
Die Lösung einer Konfigurationsaufgabe innerhalb einer technischen Domäne besteht in der Konstruktion eines komplexen Objektes, das sowohl alle in der Aufgabe gestellten Anforderungen bezüglich seiner Funktionalität erfüllt, als auch den innerhalb der Domäne vorhandenen Restriktionen vollständig genügt. Durch die als bekannt vorausgesetzte Struktur der Anwendungsdomäne wird ein Suchraum aufgespannt, in dem es eine in diesem Sinne korrekte - und wenn möglich besonders gute - Lösung zu finden gilt. Wegen der Grösse des Suchraums wird zu diesem Zweck im allgemeinen ein Verfahren zur Tiefensuche eingesetzt.
Ein umfangreiches Gebiet der Künstlichen Intelligenz beschäftigt sich mit dem Bereich Planung. Im wesentlichen gibt es zwei Planungsansätze, zum einen nicht-hierarchische und zum anderen hierarchische arbeitende Verfahren. Als Beispiel für einen nicht-hierarchischen Ansatz kann SNLP1 genannt werden. Die nachfolgende Ausarbeitung ist auf dem zweiten Gebiet, der hierarchischen Planung, angesiedelt: Der Planungsassistent CAPlan2, der eigentlich auf dem nicht-hierarchischen Planungsansatz SNLP beruht, soll um die Möglichkeiten der hierarchischen Planung erweitert werden.
CAPlan[Web94] basiert auf dem SNLP-Algorithmus [BW92], einer bekannten Version des Originalalgorithmus von McAllester und Rosenblitt [MR91]. Seit dessen Veröffentlichung hat eine Flut von Papieren die Überlegenheit dieses Planers gegenüber herkömmlichen Planverfahren gezeigt. Diese Überlegenheit liegt einerseits in seinem nur partiell ordnenden least-commitment Ansatz begründet und anderseits in der Systematik der Suche, die einen minimalen Suchraum garantiert.
Problemspezifikation für die Arbeitsplanerstellung rotationssymmetrischer Drehteile mit AutoCAD
(1996)
Um den Anforderungen am industriellen Markt gerecht werden zu können, sind Unternehmer gezwungen, immer komplexere, speziell auf den Kunden abgestimmte Produkte möglichst schnell in kleinen Losgrössen herzustellen. Dabei umfasst die Herstellung eines neuen Produkts eine Vielzahl von Arbeitsschritten. Um den Marktanforderungen zu genügen wird bereits heute ein grosser Teil dieser Arbeitsvorgänge computerunterstützt durchgeführt.