896 resultados para Diagnostic imaging - Data processing


Relevância:

100.00% 100.00%

Publicador:

Resumo:

We study cooperating distributed systems (CD-systems) of stateless deterministic restarting automata with window size 1 that are governed by an external pushdown store. In this way we obtain an automata-theoretical characterization for the class of context-free trace languages.

Relevância:

100.00% 100.00%

Publicador:

Relevância:

100.00% 100.00%

Publicador:

Resumo:

It is known that cooperating distributed systems (CD-systems) of stateless deterministic restarting automata with window size 1 accept a class of semi-linear languages that properly includes all rational trace languages. Although the component automata of such a CD-system are all deterministic, in general the CD-system itself is not, as in each of its computations, the initial component and the successor components are still chosen nondeterministically. Here we study CD-systems of stateless deterministic restarting automata with window size 1 that are themselves completely deterministic. In fact, we consider two such types of CD-systems, the strictly deterministic systems and the globally deterministic systems.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Die vorliegende Diplomarbeit, befasst sich mit der Darstellung von TEI-Dokumenten im Content-Management-System „Drupal“. Dazu wird ein Modul entwickelt, welches das einfache Publizieren von Dokumenten in diesem, auf der Extensible Markup Language (XML) basierenden Format, in Drupal ermöglicht. Das Modul bietet eine Oberfläche zum Hochladen dieser Dokumente an und stellt zusätzlich Optionen bereit, die es ermöglichen die Darstellung der angezeigten Dokumente zu beeinflussen. Dabei ist es durch ein spezielles Menü möglich, Farben, Schriftgröße und -art festzulegen. Die Konvertierung der Dokumente geschieht per XSL Transformation und basiert auf dem Ergebnis eines vorangegangenen Projekts. Die Darstellung wird angereichert durch dynamische Elemente, wie Anmerkungen des Autors oder die Möglichkeit zur Umschaltung zwischen verschiedenen Textversionen wie z.B. einer originalen und einer korrigierten Fassung. Diese Funktion ist durch eine Werkzeugleiste zugänglich, die im unteren Bereich eingeblendet wird und es auch ermöglicht Seitenzahlen, die im Dokument als solche erkannt wurden, zu suchen oder direkt aufzurufen.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Die Diplomarbeit beschäftigt sich mit der erweiterten Suche innerhalb von Dokumenten, die im TEI-Lite kodierten Format im Content-Management-System Drupal vorliegen. Aufgrund des modularen Aufbaus von Drupal wird die erweiterte Suche in Form eines Moduls verwirklicht. In einem ersten Schritt werden die Merkmale der im TEI-Lite Format vorliegenden Dokumente beschrieben. Dies umfasst Angaben sowohl zur Definition des TEI-Standards als auch zu grundlegenden Dokumenteneingenschaften. Weiterhin wird auf das CMS Drupal eingegangen und die Konzepte bereits existierender Suchmodule betrachtet. Die Präsentation des entwickelten Konzeptes zur Implementierung eines Suchmoduls, das auf die Bedürfnisse von TEI-Lite standardisierten Dokumenten ausgerichtet ist, ergibt sich aus den vorangegangenen Arbeitsschritten. Daraus resultieren Ansätze zur Indexierung, Durchsuchbarkeit sowie der visuellen Präsentation der Suchergebnisse. Die Schilderung der Verwendung und der Funktionen, die das Modul nach abgeschlossenen Programmierarbeiten kennzeichnen, geht der Darstellung des Implementierungsvorgangs voran, der gleichsam den Kern der Diplomarbeit bildet. Unter Zuhilfenahme von Quelltext-Auszügen werden Details zu einzelnen Entwicklungsstadien präsentiert. Abschließend wird ein Ausblick auf weitere Optimierungsmöglichkeiten des erarbeiteten Suchmoduls gegeben.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Um der wachsenden Popularität der E-Books Rechnung zu tragen, befasst sich diese Arbeit mit der Entwicklung eines Drupal-Moduls, welches TEI-Dokumente als EPUB-Version für E-Reader zum Download anbietet. Eine Plain Text- als auch die TEI/XML-Version werden zusätzlich zum Herunterladen bereitgestellt. Ziel ist es, das Modul so zu konzipieren, dass die Wahl verschiedener Textvarianten (Originalfassung oder korrigierte Version) sowie eine Bestimmung des Textumfangs (Haupttext inklusive Anmerkungen des Autors oder Haupttext inklusive Anmerkungen des Autors und des Herausgebers) möglich sind. Eine Auswahlliste erlaubt es dem Benutzer darüber hinaus, ausschließlich die Kapitel seiner Wahl herunterzuladen. Das Modul wird als Block implementiert, um seine variable Positionierung auf der Webseite gewährleisten zu können. Zudem wird eine Konfigurationsseite im administrativen Bereich von Drupal implementiert, die eine Gestaltung des Blocks sowie zahlreiche Einstellungsoptionen zur Verfügung stellt. Hierzu gehört z.B. die Auswahl der Metadaten, die auf den ersten beiden Seiten des E-Books angezeigt werden.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Kern der vorliegenden Arbeit ist die Erforschung von Methoden, Techniken und Werkzeugen zur Fehlersuche in modellbasierten Softwareentwicklungsprozessen. Hierzu wird zuerst ein von mir mitentwickelter, neuartiger und modellbasierter Softwareentwicklungsprozess, der sogenannte Fujaba Process, vorgestellt. Dieser Prozess wird von Usecase Szenarien getrieben, die durch spezielle Kollaborationsdiagramme formalisiert werden. Auch die weiteren Artefakte des Prozess bishin zur fertigen Applikation werden durch UML Diagrammarten modelliert. Es ist keine Programmierung im Quelltext nötig. Werkzeugunterstützung für den vorgestellte Prozess wird von dem Fujaba CASE Tool bereitgestellt. Große Teile der Werkzeugunterstützung für den Fujaba Process, darunter die Toolunterstützung für das Testen und Debuggen, wurden im Rahmen dieser Arbeit entwickelt. Im ersten Teil der Arbeit wird der Fujaba Process im Detail erklärt und unsere Erfahrungen mit dem Einsatz des Prozesses in Industrieprojekten sowie in der Lehre dargestellt. Der zweite Teil beschreibt die im Rahmen dieser Arbeit entwickelte Testgenerierung, die zu einem wichtigen Teil des Fujaba Process geworden ist. Hierbei werden aus den formalisierten Usecase Szenarien ausführbare Testfälle generiert. Es wird das zugrunde liegende Konzept, die konkrete technische Umsetzung und die Erfahrungen aus der Praxis mit der entwickelten Testgenerierung dargestellt. Der letzte Teil beschäftigt sich mit dem Debuggen im Fujaba Process. Es werden verschiedene im Rahmen dieser Arbeit entwickelte Konzepte und Techniken vorgestellt, die die Fehlersuche während der Applikationsentwicklung vereinfachen. Hierbei wurde darauf geachtet, dass das Debuggen, wie alle anderen Schritte im Fujaba Process, ausschließlich auf Modellebene passiert. Unter anderem werden Techniken zur schrittweisen Ausführung von Modellen, ein Objekt Browser und ein Debugger, der die rückwärtige Ausführung von Programmen erlaubt (back-in-time debugging), vorgestellt. Alle beschriebenen Konzepte wurden in dieser Arbeit als Plugins für die Eclipse Version von Fujaba, Fujaba4Eclipse, implementiert und erprobt. Bei der Implementierung der Plugins wurde auf eine enge Integration mit Fujaba zum einen und mit Eclipse auf der anderen Seite geachtet. Zusammenfassend wird also ein Entwicklungsprozess vorgestellt, die Möglichkeit in diesem mit automatischen Tests Fehler zu identifizieren und diese Fehler dann mittels spezieller Debuggingtechniken im Programm zu lokalisieren und schließlich zu beheben. Dabei läuft der komplette Prozess auf Modellebene ab. Für die Test- und Debuggingtechniken wurden in dieser Arbeit Plugins für Fujaba4Eclipse entwickelt, die den Entwickler bestmöglich bei der zugehörigen Tätigkeit unterstützen.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Evolutionäre Algorithmen werden gerne für Optimierungsaufgaben mit sehr vielen Freiheitsgraden eingesetzt. Eine spezielle Konvergenzeigenschaft, daß nämlich der Rechenaufwand nur mit der Wurzel der Anzahl der Unbekannten steigt, prädestiniert sie dafür. Die evolutionären Algorithmen haben aber auch noch eine weitere interessante Eigenschaft: Von der Zielfunktion wird nur verlangt, daß sie monoton ist - nichts weiter. Speziell wird, im Gegensatz zu gradientenbasierten Verfahren, keinerlei Ableitung von der Zielfunktion benötigt. Dadurch können evolutionäre Algorithmen auch in solchen Fällen eingesetzt werden, in denen Ableitungen der Zielfunktion nicht oder nur schwierig zu beschaffen sind. Die evolutionären Algorithmen kommen deshalb mit so geringen Anforderungen an die Zielfunktion aus, weil nur absolute Bewertungen einzelner Punkte (hier Vektoren) im Lösungsraum durch die Zielfunktion vorgenommen werden. Dafür werden eine gewisse Anzahl Punkte gleichzeitig betrachtet. Im direkten Vergleich untereinander relativ günstig liegende Punkte werden für die weitere Rechnung übernommen, die anderen verworfen. Aus den Komponenten der übernommenen Punkte werden nun zufällig neue Punkte zusammengesetzt und ein wenig verschoben. Dann schließt sich der Kreis, indem diese neuen Punkte ebenfalls bewertet werden. Im Verlauf einer solchen Iteration konvergiert die Punktmenge in der Regel gegen ein Optimum. Oft kommt es gerade zu Beginn der Iteration zu schnellen Fortschritten. In dieser Arbeit wird ein Verfahren vorgestellt, bei dem mit Hilfe von evolutionären Algorithmen verbessernde Eingriffe in laufenden Echtzeitsystemen vorgenommen werden. Was gut oder schlecht ist, wird zu diesem Zweck über die Zielfunktion für die Optimierung definiert. Da von der Zielfunktion letztlich das Verhalten des Gesamtsystems abhängt, sollte sie sorgfältig ausgewählt werden. Die Eingriffe in das System sind zeitlich begrenzte Steuertrajektorien. Sie werden zusätzlich zur permanent wirkenden Regelung auf das System aufgebracht. Um die Anzahl der zu optimierenden Variablen in Grenzen zu halten, werden die Steuertrajektorien durch wenige Parameter repräsentiert. Da die Steuertrajektorien im voraus berechnet werden müssen, wird das Systemverhalten mittels eines Modells für eine gewisse, in der Zukunft liegende, Zeitspanne vorhergesagt. Wird die geforderte Qualität während dieser Zeitspanne unterschritten, kann so schon im Vorfeld ein Optimierungslauf des evolutionären Algorithmus durchgeführt werden. Allerdings ist die zur Verfügung stehende Rechenzeit von vornherein begrenzt. Daher ist es wesentlich, daß die mit evolutionären Algorithmen häufig assoziierte lange Rechenzeit nicht benötigt wird. Tatsächlich läßt sich unter Umständen mit wenig Rechenzeit auskommen. Erstens wird nur mit wenigen Variablen gerechnet, zweitens kommt es bei dem beschriebenen Verfahren - halbwegs gutmütige Systeme vorausgesetzt - gar nicht auf die letzte Nachkommastelle, sondern (ähnlich wie bei Sliding-Mode-Regelungen) mehr auf eine Tendenz an. Da evolutionäre Algorithmen aber gerade zu Beginn einer Iteration die größten Fortschritte in Richtung des Optimums machen, kann schon nach vergleichsweise wenigen Schritten eine deutliche Verbesserung der Gesamtsituation erreicht werden. Gerade um eine schnelle Konvergenz zu erreichen, sind die spezielle Ausprägung und die Parameter des evolutionären Algorithmus mit Bedacht zu wählen. Dafür werden im Rahmen der Arbeit einige Experimente durchgeführt. Anhand der Ergebnisse der Experimente können konkrete Empfehlungen für eine günstige Konfiguration des evolutionären Algorithmus gegeben werden. Um es vorwegzunehmen: Zuviel Aufwand beim evolutionären Algorithmus zu treiben, lohnt sich nicht. Schon mit einfachen Konfigurationen können gute Ergebnisse erzielt werden. Die einzige Maßnahme, die sich bei den Experimenten tatsächlich als vorteilhaft herausstellte, war die Aufteilung der Gesamtpopulation (betrachtete Punktmenge im Lösungsraum) in mehrere Subpopulationen. Schließlich wird noch ein Computerprogramm beschrieben, das die Arbeitsweise des vorgestellten Verfahrens am Bildschirm erlebbar macht. Die einzelnen Komponenten werden vom Programm während der Ausführung mit einigen wesentlichen Rechengrößen visualisiert. Der Betrachter erhält so einen besseren Eindruck vom Zusammenwirken der einzelnen Verfahrens-Teile.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Vorgestellt wird eine weltweit neue Methode, Schnittstellen zwischen Menschen und Maschinen für individuelle Bediener anzupassen. Durch Anwenden von Abstraktionen evolutionärer Mechanismen wie Selektion, Rekombination und Mutation in der EOGUI-Methodik (Evolutionary Optimization of Graphical User Interfaces) kann eine rechnergestützte Umsetzung der Methode für Graphische Bedienoberflächen, insbesondere für industrielle Prozesse, bereitgestellt werden. In die Evolutionäre Optimierung fließen sowohl die objektiven, d.h. messbaren Größen wie Auswahlhäufigkeiten und -zeiten, mit ein, als auch das anhand von Online-Fragebögen erfasste subjektive Empfinden der Bediener. Auf diese Weise wird die Visualisierung von Systemen den Bedürfnissen und Präferenzen einzelner Bedienern angepasst. Im Rahmen dieser Arbeit kann der Bediener aus vier Bedienoberflächen unterschiedlicher Abstraktionsgrade für den Beispielprozess MIPS ( MIschungsProzess-Simulation) die Objekte auswählen, die ihn bei der Prozessführung am besten unterstützen. Über den EOGUI-Algorithmus werden diese Objekte ausgewählt, ggf. verändert und in einer neuen, dem Bediener angepassten graphischen Bedienoberfläche zusammengefasst. Unter Verwendung des MIPS-Prozesses wurden Experimente mit der EOGUI-Methodik durchgeführt, um die Anwendbarkeit, Akzeptanz und Wirksamkeit der Methode für die Führung industrieller Prozesse zu überprüfen. Anhand der Untersuchungen kann zu großen Teilen gezeigt werden, dass die entwickelte Methodik zur Evolutionären Optimierung von Mensch-Maschine-Schnittstellen industrielle Prozessvisualisierungen tatsächlich an den einzelnen Bediener anpaßt und die Prozessführung verbessert.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Das Ziel der Dissertation war die Untersuchung des Computereinsatzes zur Lern- und Betreuungsunterstützung beim selbstgesteuerten Lernen in der Weiterbildung. In einem bisher konventionell durchgeführten Selbstlernkurs eines berufsbegleitenden Studiengangs, der an das Datenmanagement der Bürodatenverarbeitung heranführt, wurden die Kursunterlagen digitalisiert, die Betreuung auf eine online-basierte Lernbegleitung umgestellt und ein auf die neuen Lernmedien abgestimmtes Lernkonzept entwickelt. Dieses neue Lernkonzept wurde hinsichtlich der Motivation und der Akzeptanz von digitalen Lernmedien evaluiert. Die Evaluation bestand aus zwei Teilen: 1. eine formative, den Entwicklungsprozess begleitende Evaluation zur Optimierung der entwickelten Lernsoftware und des eingeführten Lernkonzeptes, 2. eine sowohl qualitative wie quantitative summative Evaluation der Entwicklungen. Ein zentraler Aspekt der Untersuchung war die freie Wahl der Lernmedien (multimediale Lernsoftware oder konventionelles Begleitbuch) und der Kommunikationsmedien (online-basierte Lernplattform oder die bisher genutzten Kommunikationskanäle: E-Mail, Telefon und Präsenztreffen). Diese Zweigleisigkeit erlaubte eine differenzierte Gegenüberstellung von konventionellen und innovativen Lernarrangements. Die Verbindung von qualitativen und quantitativen Vorgehensweisen, auf Grund derer die subjektiven Einstellungen der Probanden in das Zentrum der Betrachtung rückten, ließen einen Blickwinkel auf den Nutzen und die Wirkung der Neuen Medien in Lernprozessen zu, der es erlaubte einige in der Literatur als gängig angesehene Interpretationen in Frage zu stellen und neu zu diskutieren. So konnten durch eine Kategorisierung des Teilnehmerverhaltens nach online-typisch und nicht online-typisch die Ursache-Wirkungs-Beziehungen der in vielen Untersuchungen angeführten Störungen in Online-Seminaren verdeutlicht werden. In den untersuchten Kursen zeigte sich beispielsweise keine Abhängigkeit der Drop-out-Quote von den Lern- und Betreuungsformen und dass diese Quote mit dem neuen Lernkonzept nur geringfügig beeinflusst werden konnte. Die freie Wahl der Lernmedien führte zu einer gezielten Nutzung der multimedialen Lernsoftware, wodurch die Akzeptanz dieses Lernmedium stieg. Dagegen war die Akzeptanz der Lernenden gegenüber der Lernbegleitung mittels einer Online-Lernplattform von hoch bis sehr niedrig breit gestreut. Unabhängig davon reichte in allen Kursdurchgängen die Online-Betreuung nicht aus, so dass Präsenztreffen erbeten wurde. Hinsichtlich der Motivation war die Wirkung der digitalen Medien niedriger als erwartet. Insgesamt bieten die Ergebnisse Empfehlungen für die Planung und Durchführung von computerunterstützten, online-begleiteten Kursen.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

The rapid growth in high data rate communication systems has introduced new high spectral efficient modulation techniques and standards such as LTE-A (long term evolution-advanced) for 4G (4th generation) systems. These techniques have provided a broader bandwidth but introduced high peak-to-average power ratio (PAR) problem at the high power amplifier (HPA) level of the communication system base transceiver station (BTS). To avoid spectral spreading due to high PAR, stringent requirement on linearity is needed which brings the HPA to operate at large back-off power at the expense of power efficiency. Consequently, high power devices are fundamental in HPAs for high linearity and efficiency. Recent development in wide bandgap power devices, in particular AlGaN/GaN HEMT, has offered higher power level with superior linearity-efficiency trade-off in microwaves communication. For cost-effective HPA design to production cycle, rigorous computer aided design (CAD) AlGaN/GaN HEMT models are essential to reflect real response with increasing power level and channel temperature. Therefore, large-size AlGaN/GaN HEMT large-signal electrothermal modeling procedure is proposed. The HEMT structure analysis, characterization, data processing, model extraction and model implementation phases have been covered in this thesis including trapping and self-heating dispersion accounting for nonlinear drain current collapse. The small-signal model is extracted using the 22-element modeling procedure developed in our department. The intrinsic large-signal model is deeply investigated in conjunction with linearity prediction. The accuracy of the nonlinear drain current has been enhanced through several issues such as trapping and self-heating characterization. Also, the HEMT structure thermal profile has been investigated and corresponding thermal resistance has been extracted through thermal simulation and chuck-controlled temperature pulsed I(V) and static DC measurements. Higher-order equivalent thermal model is extracted and implemented in the HEMT large-signal model to accurately estimate instantaneous channel temperature. Moreover, trapping and self-heating transients has been characterized through transient measurements. The obtained time constants are represented by equivalent sub-circuits and integrated in the nonlinear drain current implementation to account for complex communication signals dynamic prediction. The obtained verification of this table-based large-size large-signal electrothermal model implementation has illustrated high accuracy in terms of output power, gain, efficiency and nonlinearity prediction with respect to standard large-signal test signals.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Fujaba is an Open Source UML CASE tool project started at the software engineering group of Paderborn University in 1997. In 2002 Fujaba has been redesigned and became the Fujaba Tool Suite with a plug-in architecture allowing developers to add functionality easily while retaining full control over their contributions. Multiple Application Domains Fujaba followed the model-driven development philosophy right from its beginning in 1997. At the early days, Fujaba had a special focus on code generation from UML diagrams resulting in a visual programming language with a special emphasis on object structure manipulating rules. Today, at least six rather independent tool versions are under development in Paderborn, Kassel, and Darmstadt for supporting (1) reengineering, (2) embedded real-time systems, (3) education, (4) specification of distributed control systems, (5) integration with the ECLIPSE platform, and (6) MOF-based integration of system (re-) engineering tools. International Community According to our knowledge, quite a number of research groups have also chosen Fujaba as a platform for UML and MDA related research activities. In addition, quite a number of Fujaba users send requests for more functionality and extensions. Therefore, the 8th International Fujaba Days aimed at bringing together Fujaba develop- ers and Fujaba users from all over the world to present their ideas and projects and to discuss them with each other and with the Fujaba core development team.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Laut dem Statistischen Bundesamts ist die Zahl der im Straßenverkehr getöteten Personen zwar rückläufig, jedoch wurden in 2010 in Deutschland noch immer 3648 Personen bei Unfällen im Straßenverkehr getötet, 476 davon waren Fußgänger. In den letzten Dekaden lag der Schwerpunkt der Forschungsarbeiten zur Reduzierung der Verkehrstoten besonders im Bereich des Insassenschutzes. Erst in den letzten Jahren rückte die Thematik des Fußgängerschutzes mehr in den Fokus des öffentlichen Interesses und der Automobilhersteller. Forschungsarbeiten beschäftigen sich mit unterschiedlichen Ansätzen die Folgen einer Kollision zwischen einem Auto und einem Fußgänger zu reduzieren. Hierzu zählen z.B. weiche Aufprallzonen im Frontbereich eines Autos, aufstellende Motorhaube oder auch Fußgängerairbags im Bereich der Frontscheibe. Da passive Ansätze aber nur die Folgen eines Aufpralls am Fahrzeug, nicht aber die Folgen eines Sekundäraufpralls auf dem Boden verringern können, werden parallel Ansätze zur aktiven Kollisionsvermeidung untersucht. Die bisher verfolgten, ebenso wertvollen Ansätze, zeigen jedoch jeweils Schwachpunkte in Ihrer Lösung. So ist der Einsatz der bisherigen bordautonomen Ansätze auf Grund der Anforderungen der verschiedenen Systeme, wie der Notwendigkeit einer direkten, ungestörten Sichtverbindung zwischen Auto und Fußgänger, leider nur eingeschränkt möglich. Kooperative Systeme, die ein zusätzliches, vom Fußgänger mitzuführendes Sende-Empfänger Gerät zur Ermittlung der Fußgängerposition benötigen sind hingegen mit zusätzlichem Aufwand für den Fußgänger verbunden. Auch fehlen den bisher verfolgten Ansätzen Informationen über den Fußgänger, wodurch es schwierig ist, wenn nicht gar manchmal unmöglich, eine Situation korrekt bewerten zu können. Auch sehen diese Systeme keine Warnung des Fußgängers vor. In dieser Arbeit wird ein Verfahren zum Fußgängerschutz betrachtet, welches per Funk ausgetauschte Informationen zur Risikobewertung eines Szenarios nutzt. Hierbei werden neben den vom Auto bekannten Informationen und Parameter, die vom Smartphone des Fußgängers zur Verfügung gestellten Kontextinformationen verwendet. Es werden zum einen die Parameter, Bedingungen und Anforderungen analysiert und die Architektur des Systems betrachtet. Ferner wird das Ergbnis einer Untersuchung zur generellen Umsetzbarkeit mit bereits heute in Smartphone verfügbaren Funktechnolgien vorgestellt. Final werden die bereits vielversprechenden Ergebnisse eines ersten Experiments zur Nutzbarkeit von Sensorinformationen des Smartphones im Bereich der Kollisionsvermeidung vorgestellt und diskutiert.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Heutzutage haben selbst durchschnittliche Computersysteme mehrere unabhängige Recheneinheiten (Kerne). Wird ein rechenintensives Problem in mehrere Teilberechnungen unterteilt, können diese parallel und damit schneller verarbeitet werden. Obwohl die Entwicklung paralleler Programme mittels Abstraktionen vereinfacht werden kann, ist es selbst für Experten anspruchsvoll, effiziente und korrekte Programme zu schreiben. Während traditionelle Programmiersprachen auf einem eher geringen Abstraktionsniveau arbeiten, bieten funktionale Programmiersprachen wie z.B. Haskell, Möglichkeiten zur fortgeschrittenen Abstrahierung. Das Ziel der vorliegenden Dissertation war es, zu untersuchen, wie gut verschiedene Arten der Abstraktion das Programmieren mit Concurrent Haskell unterstützen. Concurrent Haskell ist eine Bibliothek für Haskell, die parallele Programmierung auf Systemen mit gemeinsamem Speicher ermöglicht. Im Mittelpunkt der Dissertation standen zwei Forschungsfragen. Erstens wurden verschiedene Synchronisierungsansätze verglichen, die sich in ihrem Abstraktionsgrad unterscheiden. Zweitens wurde untersucht, wie Abstraktionen verwendet werden können, um die Komplexität der Parallelisierung vor dem Entwickler zu verbergen. Bei dem Vergleich der Synchronisierungsansätze wurden Locks, Compare-and-Swap Operationen und Software Transactional Memory berücksichtigt. Die Ansätze wurden zunächst bezüglich ihrer Eignung für die Synchronisation einer Prioritätenwarteschlange auf Basis von Skiplists untersucht. Anschließend wurden verschiedene Varianten des Taskpool Entwurfsmusters implementiert (globale Taskpools sowie private Taskpools mit und ohne Taskdiebstahl). Zusätzlich wurde für das Entwurfsmuster eine Abstraktionsschicht entwickelt, welche eine einfache Formulierung von Taskpool-basierten Algorithmen erlaubt. Für die Untersuchung der Frage, ob Haskells Abstraktionsmethoden die Komplexität paralleler Programmierung verbergen können, wurden zunächst stencil-basierte Algorithmen betrachtet. Es wurde eine Bibliothek entwickelt, die eine deklarative Beschreibung von stencil-basierten Algorithmen sowie ihre parallele Ausführung erlaubt. Mit Hilfe dieses deklarativen Interfaces wurde die parallele Implementation vollständig vor dem Anwender verborgen. Anschließend wurde eine eingebettete domänenspezifische Sprache (EDSL) für Knoten-basierte Graphalgorithmen sowie eine entsprechende Ausführungsplattform entwickelt. Die Plattform erlaubt die automatische parallele Verarbeitung dieser Algorithmen. Verschiedene Beispiele zeigten, dass die EDSL eine knappe und dennoch verständliche Formulierung von Graphalgorithmen ermöglicht.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Die Auszeichnungssprache XML dient zur Annotation von Dokumenten und hat sich als Standard-Datenaustauschformat durchgesetzt. Dabei entsteht der Bedarf, XML-Dokumente nicht nur als reine Textdateien zu speichern und zu transferieren, sondern sie auch persistent in besser strukturierter Form abzulegen. Dies kann unter anderem in speziellen XML- oder relationalen Datenbanken geschehen. Relationale Datenbanken setzen dazu bisher auf zwei grundsätzlich verschiedene Verfahren: Die XML-Dokumente werden entweder unverändert als binäre oder Zeichenkettenobjekte gespeichert oder aber aufgespalten, sodass sie in herkömmlichen relationalen Tabellen normalisiert abgelegt werden können (so genanntes „Flachklopfen“ oder „Schreddern“ der hierarchischen Struktur). Diese Dissertation verfolgt einen neuen Ansatz, der einen Mittelweg zwischen den bisherigen Lösungen darstellt und die Möglichkeiten des weiterentwickelten SQL-Standards aufgreift. SQL:2003 definiert komplexe Struktur- und Kollektionstypen (Tupel, Felder, Listen, Mengen, Multimengen), die es erlauben, XML-Dokumente derart auf relationale Strukturen abzubilden, dass der hierarchische Aufbau erhalten bleibt. Dies bietet zwei Vorteile: Einerseits stehen bewährte Technologien, die aus dem Bereich der relationalen Datenbanken stammen, uneingeschränkt zur Verfügung. Andererseits lässt sich mit Hilfe der SQL:2003-Typen die inhärente Baumstruktur der XML-Dokumente bewahren, sodass es nicht erforderlich ist, diese im Bedarfsfall durch aufwendige Joins aus den meist normalisierten und auf mehrere Tabellen verteilten Tupeln zusammenzusetzen. In dieser Arbeit werden zunächst grundsätzliche Fragen zu passenden, effizienten Abbildungsformen von XML-Dokumenten auf SQL:2003-konforme Datentypen geklärt. Darauf aufbauend wird ein geeignetes, umkehrbares Umsetzungsverfahren entwickelt, das im Rahmen einer prototypischen Applikation implementiert und analysiert wird. Beim Entwurf des Abbildungsverfahrens wird besonderer Wert auf die Einsatzmöglichkeit in Verbindung mit einem existierenden, ausgereiften relationalen Datenbankmanagementsystem (DBMS) gelegt. Da die Unterstützung von SQL:2003 in den kommerziellen DBMS bisher nur unvollständig ist, muss untersucht werden, inwieweit sich die einzelnen Systeme für das zu implementierende Abbildungsverfahren eignen. Dabei stellt sich heraus, dass unter den betrachteten Produkten das DBMS IBM Informix die beste Unterstützung für komplexe Struktur- und Kollektionstypen bietet. Um die Leistungsfähigkeit des Verfahrens besser beurteilen zu können, nimmt die Arbeit Untersuchungen des nötigen Zeitbedarfs und des erforderlichen Arbeits- und Datenbankspeichers der Implementierung vor und bewertet die Ergebnisse.