Filtern
Erscheinungsjahr
- 2012 (22) (entfernen)
Dokumenttyp
- Diplomarbeit (22) (entfernen)
Schlagworte
- 101companies (1)
- API Analysis (1)
- API Migratiom (1)
- ArcGIS (1)
- Aspect-orientation (1)
- Aspekt-Orientierung (1)
- Automatisches Beweisverfahren (1)
- Beschreibungslogik (1)
- CamInSens (1)
- Design Pattern (1)
- E-Hyper Tableau (1)
- E-KRHyper (1)
- E-Learning (1)
- E-Procurement (1)
- Emil (1)
- Entwurfsmuster (1)
- GPGPU (1)
- Hypertableaux (1)
- Interaktion (1)
- Java (1)
- Java <Programmiersprache> (1)
- Logik (1)
- Maschinelles Sehen (1)
- Natural Feature Tracking (1)
- Objective-C (1)
- PHP (1)
- Repast (1)
- Schlussfolgern (1)
- Simulation (1)
- Softwareentwicklung (1)
- Softwarespezifikation (1)
- Softwarewartung (1)
- Stomp (1)
- Tablet PC (1)
- Taxonomy (1)
- Visualisierung (1)
- Web-application framework (1)
- Web-programming technologies (1)
- Wikipedia (1)
- Xcode (1)
- agent-based model (1)
- agentenbasierte Modellierung (1)
- automatisierte Videoüberwachung (1)
- description logic (1)
- distinct object identifiers (1)
- ethnic conflicts (1)
- ethnische Konflikte (1)
- hypertableaux (1)
- iOS (1)
- iOS 5 (1)
- iOS-SDK (1)
- shiq (1)
- unique name assumption (1)
- Überwachung (1)
- Überwachungstechnik (1)
In einigen Bereichen des automatischen Theorembeweisens benötigt man das Wissen, dass Konstanten paarweise ungleich sind. Um dieses zu erreichen, fügt man Fakten, die dieses Wissen explizit angeben, zu den Wissensbasen hinzu. Wenn man diese Eigenschaft für viele Konstanten definieren muss, wird die Klauselmenge der Wissensbasen schnell sehr umfangreich und wegen der vielen - eigentlich irrelevanten - Ungleichheiten kann man den Blick auf das eigentlich formalisierte Problem verlieren. Da die Größe der Wissensbasis in vielen Fällen Einfluss auf die Geschwindigkeit hat, ist es auch aus diesem Grund sinnvoll, die Anzahl dieser Fakten gering zu halten. Die unique name assumption erlaubt auf die Einführung der Ungleichheits-Fakten zu verzichten, da sie festlegt, dass zwei Konstanten genau dann gleich sind, wenn ihre Interpretationen identisch sind. Auf diesem Wege lässt sich das Aufblähen von Wissensbasen mit Ungleichheits-Fakten verhinde. In dieser Arbeit wird der E-Hyper-Tableau-Kalkül erweitert um die unique name assumption nutzen zu können. Der in dieser Arbeit entwickelte Kalkül ist vollständig und korrekt, was durch formale Beweise in dieser Arbeit belegt wird. Um zu zeigen, dass die native Behandlung von Ungleichheiten dem Einführen von Ungleichheits-Fakten überlegen ist, wird der Kalkül in den Theorembeweiser E-KRHyper implementieren. Der Theorembeweiser E-KRHyper ist ein etabliertes System und basiert in seiner ursprünglichen Version auf dem E-Hyper-Tableau. Mit systematischen Tests wird dann gezeigt, dass die entwickelte Implementierung des erweiterten Kalküls nie schlechter ist, als der original E-KRHyper, diesen aber in einigen Fällen in der Ausführungsgeschwindigkeit deutlich übertrifft.
Ein neueres Thema innerhalb des Forschungsbereichs Semantic Web behandelt die Verarbeitung von Anfragen über Linked Open Data (LOD). Wie in der Literatur bereits diskutiert wurde, lässt sich der losen Zergliederung innerhalb des "Web of Data" und dessen Datenquellen durch moderne föderierte Verarbeitungsstrategien bezüglich eingehender Anfragen begegnen. Dieser Ansatz ist jedoch umso mehr abhängig von aktuellen statistischen Informationen (Datenstatistiken) über sämtliche der benutzten Datenquellen einerseits, und genauen Schätzungen von Kardinalitäten und Selektivitäten andererseits. Da föderierte Datenquellen im Allgemeinen keine Auskunft über die Statistik der von ihnen verwalteten Daten geben, schlagen sich Änderungen an diesen Daten nicht automatisch in den zentralen Datenstatistikkatalogen nieder - die verwalteten Datenstatistiken werden obsolet. In der vorliegenden Arbeit wird die Erweiterung eines RDF-basierten Query-Federators beschrieben, die die Obsoleszenz von zentral verwalteten Datenstatistiken beurteilen und eine gegebenenfalls notwendige Aktualisierung einzelner Datenstatistiken unternehmen können soll. Als Grundlage dazu dient die Beobachtung auftretender Fehler in der Kardinalitätsschätzung ausgewerteter Queries. Eine Evaluation des Systems wird anschließend beschrieben. Die Ergebnisse zeigen die prinzipielle Richtigkeit der zugrundeliegenden Überlegungen, die praktische Anwendbarkeit kann jedoch nicht überzeugend demonstriert werden. Die Wiederverwendung der entwickelten Systemerweiterung für vielversprechendere Ansätze erscheint jedoch möglich und wird diskutiert.
Computer unterstützen Menschen zunehmend in Alltagssituationen. Ihre fortwährend voranschreitende Miniaturisierung erlaubt die Erschließung weiterer Einsatzmöglichkeiten und trägt zu einer wachsenden Bedeutung und Verbreitung in der Gesellschaft bei. Längst sind solche Systeme in vielerlei Alltagsgegenständen Realität und ihre Mobilität spielt eine immer größer werdende Rolle: von Laptops über Smartphones und Tablets hin zu am oder im Körper tragbaren Systemen (engl. wearable computing) wie Hörgeräte und Pulsuhren, unterstützen sie den Menschen aktiv und kontextsensitiv in ihrem Alltag.
Als ein Teilgebiet des wearable computing gilt die Entwicklung von Head-mounted Displays (kurz HMD). Das sind Helme oder Brillen die dem Benutzer auf einer oder mehreren Darstellungsflächen computergenerierte Bilder (virtual reality) oder mit Zusatzinformationen versehene Aufnahmen der Umgebung (enhanced reality) präsentieren. Aktuell sind HMDs welche LC-Displays nutzen weit verbreitet, innovativer sind solche welche das Bild direkt auf die Netzhaut des Benutzers projizieren. Neuste Entwicklungen deuten auf weitere Miniaturisierung des Konzepts, hin zu Kontaktlinsen mit integriertem Bildschirm. Für die Sammlung dazustellender Daten werden eine Vielzahl Sensoren hinzugezogen, wie Head-Tracker oder GPS. Auch durch Erweiterungen im Bereich der Bedienbarkeit - zum Beispiel durch Spracheingabe über ein Mikrofon - und die Steigerung des Immersionsgefühls - zum Beispiel durch stereoskopische Bilder oder integrierte Kopfhörer - wandeln sich HMDs von einfachen Anzeigen hin zu stetig besser ausgerüsteten Geräten mit ständig wachsenden Einsatzgebieten. Längst werden HMDs in einer Vielzahl von Feldern benutzt. rnIm Vordergrund dieser Arbeit steht der Entwurf und die Erstellung einer Anwendung für das Betriebssystem Apple iOS 5, als softwaretechnischen Beitrag zur Entwicklung eines HMD auf Basis von Apple-Mobilgeräten mit hochauflösendem Retina Display. Das RollerCoaster2000-Projekt soll zur Darstellung des grafischen Inhalts genutzt werden, aus Gründen einer freien Lizenz, frei zugänglichen Quellcodes sowie einer effizienten OpenGL-ES-Portierung. Dabei soll ein leichter Austausch oder die Erweiterung dieses grafischen Grundgerüsts gegeben sein um die Einsatzmöglichkeiten des HMD zu erhöhen. Über die reine Nutzung als Darstellungsmedium soll die erstellte Anwendung die vielfältigen, sensorischen Fähigkeiten und Vernetzungsmöglichkeiten aktueller Apple-Endgeräte nutzen um mehrere Geräte zu einer Datenbrille zu verbinden und die Kopfbewegungen des Benutzers auszuwerten, in der virtuellen Szene abzubilden und zwischen den Geräten synchron zu halten. Zur leichten Orientierung des Benutzers während der Bedienung soll außerdem auf die integrierte Gerätekamera zugegriffen werden.
Um die Realisierung einer den Kriterien gerecht werdenden Anwendung zu ermöglichen wird in dieser Arbeit in den Bereich der iOS-Entwicklung eingeführt. Zuerst erfolgt eine Einleitung in die historischen Entwicklungen auf dem Gebiet der mobilen Entwicklung für Apple-Mobilgeräte, von der Entstehung des objektorientierten Paradigmas hin zur heutigen Ausprägung des iOS-SDK. Letzteres ergibt sich dabei aus der Summe einer Vielzahl, stark kohärenter Komponenten. Dazu gehören die Grundsteine einer jeden iOS-Applikation, die objektorientierte, dynamische und streng typisierte Sprache Objective-C sowie den durch Apple an die eigenen Bedürfnisse angepassten LLVM-Compiler und die von Apple angepasste LLVM-Laufzeitumgebung. Zudem sind das Cocoa Framework und die Entwicklungsumgebung Xcode, die zur Erstellung mobiler Anwendungen von Apple entwickelt wurden, Gegenstand dieser Arbeit. Anhand der gewonnenen Kenntnisse im Bereich der mobilen Anwendungsentwicklung werden Anforderungen an eine Anwendung für ein HMD erhoben und die Erstellung einer, diesen Kriterien genügenden, Software beschrieben.
In dieser Ausarbeitung beschreibe ich die Ergebnisse meiner Untersuchungen zur Erweiterung des LogAnswer-Systemsmit nutzerspezifischen Profilinformationen. LogAnswer ist ein natürlichsprachliches open-domain Frage-Antwort-System. Das heißt: es beantwortet Fragen zu beliebigen Themen und liefert dabei konkrete (möglichst knappe und korrekte) Antworten zurück. Das System wird im Rahmen eines Gemeinschaftsprojekts der Arbeitsgruppe für künstliche Intelligenz von Professor Ulrich Furbach an der Universität Koblenz-Landau und der Arbeitsgruppe Intelligent Information and Communication Systems (IICS) von Professor Hermann Helbig an der Fernuniversität Hagen entwickelt. Die Motivation meiner Arbeit war die Idee, dass der Prozess der Antwortfindung optimiert werden kann, wenn das Themengebiet, auf das die Frage abzielt, im Vorhinein bestimmt werden kann. Dazu versuchte ich im Rahmen meiner Arbeit die Interessensgebiete von Nutzern basierend auf Profilinformationen zu bestimmen. Das Semantic Desktop System NEPOMUK wurde verwendet um diese Profilinformationen zu erhalten. NEPOMUK wird verwendet um alle Daten, Dokumente und Informationen, die ein Nutzer auf seinem Rechner hat zu strukturieren. Dazu nutzt das System ein sogenanntes Personal Information Model (PIMO) in Form einer Ontologie. Diese Ontologie enthält unter anderem eine Klasse "Topic", welche die wichtigste Grundlage für das Erstellen der in meiner Arbeit verwendeten Nutzerprofile bildete. Konkret wurde die RDF-Anfragesprache SPARQL verwendet, um eine Liste aller für den Nutzer relevanten Themen aus der Ontologie zu filtern. Die zentrale Idee meiner Arbeit war es nun diese Profilinformationen zur Optimierung des Ranking von Antwortkandidaten einzusetzen. In LogAnswer werden zu jeder gestellten Frage bis zu 200 potentiell relevante Textstellen aus der deutschen Wikipedia extrahiert. Diese Textstellen werden auf Basis von Eigenschaften (wie z.B. lexikalische Übereinstimmungen zwischen Frage und Textstelle) geordnet, da innerhalb des zur Verfügung stehenden Zeitlimits nicht alle Kandidaten bearbeitet werden können.
Mein Ansatz verfolgte das Ziel, diesen Algorithmus durch Nutzerprofile so zu erweitern, dass Antwortkandidaten, welche für den Benutzer relevante Informationen enthalten, höher in der Rangfolge eingeordnet werden. Zur Umsetzung dieser Idee musste eine Methode gefunden werden, um zu bestimmen ob ein Antwortkandidat mit dem Profil übereinstimmt. Da sich die in einer Textstelle enthaltenen Informationen in den meisten Fällen auf das übergeordnete Thema des Artikels beziehen, ohne den Namen des Artikels explizit zu erwähnen, wurde in meiner Implementierung der Artikelname betrachtet, um zu ermitteln, zu welchem Themengebiet die Textstelle Informationen liefert. Als zusätzliches Hilfsmittel wurde außerdem die DBpedia-Ontologie eingesetzt, welche die Informationen der Wikipedia strukturiert im RDF Format enthält. Mit Hilfe dieser Ontologie war es möglich, jeden Artikel in Kategorien einzuordnen, die dann mit den im Profil enthaltenen Stichworten verglichen wurden. Zur Untersuchung der Auswirkungen des Ansatzes auf das Ranking-Verfahren wurden mehrere Testläufe mit je 200 Testfragen durchgeführt. Die erste Testmenge bestand aus zufällig ausgewählten Fragen, die mit meinem eigenen Nutzerprofil getestet wurden. Dieser Testlauf lieferte kaum nutzbare Ergebnisse, da nur bei 29 der getesteten Fragen überhaupt ein Antwortkandidat mit dem Profil in Verbindung gebracht werden konnte. Außerdem konnte eine potentielle Verbesserung der Ergebnisse nur bei einer dieser 29 Fragen festgestellt werden, was zu der Schlussfolgerung führte, dass der Einsatz von Profildaten nicht für Anwendungsfälle geeignet ist, in denen die Fragen keine Korrelation mit dem genutzten Profil aufweisen.
Da die Grundannahme meiner Arbeit war, dass Nutzer in erster Linie Fragen zu den Interessensgebieten stellen, welche sich aus ihrem Profil ableiten lassen, sollten die weiteren Testläufe genau diesen Fall beleuchten. Dazu wurden 200 Testfragen aus dem Bereich Sport ausgewählt und mit einem Profil getestet, welches Stichworte zu unterschiedlichen Sportarten enthielt. Die Tests mit den Sportfragen waren wesentlich aussagekräftiger. Auch hier deuteten die Ergebnisse darauf hin, dass der Ansatz kein großes Potential zur Verbesserung des Rankings hat. Eine genauere Betrachtung einiger ausgewählter Beispiele zeigte allerdings, dass die Integration von Profildaten für bestimmte Anwendungsfälle, wie z.B. offene Fragen für die es mehr als eine korrekte Antwort gibt, durchaus zu einer Verbesserung der Ergebnisse führen kann. Außerdem wurde festgestellt, dass viele der schlechten Ergebnisse auf Inkosistenzen in der DBpedia-Ontologie und grundsätzliche Probleme im Umgang mit Wissensbasen in natürlicher Sprache beruhen.
Die Schlussfolgerung meiner Arbeit ist, dass der in dieser Arbeit vorgestellte Ansatz zur Integration von Profilinformationen für den aktuellen Anwendungsfall von LogAnswer nicht geeignet ist, da vor allem Faktenwissen aus sehr unterschiedlichen Domänen abgefragt wird und offene Fragen nur einen geringen Anteil ausmachen.
Ziel dieser Diplomarbeit ist es, innerhalb von sechs Monaten eine gamebasierte Anwendung für Android-Smartphones zu entwickeln, die durch eng beieinander liegende Stationen historisches Wissen vermittelt. Die einzelnen Spielstationen sollen mit Hilfe von GPS1-Positionen festgelegt und erkannt werden. Als Gelände wurde die Burgruine Reichenstein in der Verbandsgemeinde Puderbach im Westerwald ausgewählt. Es soll untersucht werden, wie viele GPS-Stationen auf engem Raum unterzubringen sind und wie weit sie voneinander entfernt sein müssen, um gute Ergebnisse erzielen zu können. Dazu ist es nötig, sowohl den Grundriss der Burg als auch die Beschaffenheit des Geländes mit einzubeziehen.
An den einzelnen Stationen sollen auf spielerische Art und Weise historische Informationen über die Burgruine Reichenstein vermittelt werden. Neben der Recherche, der Konzepterstellung und der Implementierung umfasst diese Arbeit auch eine Evaluation, die eine Bewertung der Anwendung ermöglicht.
Augmented Reality bedeutet eine reale Umgebung mit, meistens grafischen, virtuellen Inhalten zu erweitern. Oft sind dabei die virtuellen Inhalte der Szene jedoch nur ein Overlay und interagieren nicht mit den realen Bestandteilen der Szene. Daraus ergibt sich ein Authentizitätsproblem für Augmented Reatliy Anwendungen. Diese Arbeit betrachtet Augmented Reality in einer speziellen Umgebung, mit deren Hilfe eine authentischere Darstellung möglich ist. Ziel dieserArbeitwar die Erstellung eines Systems, das Zeichnungen durch Techniken der Augmented Reality mit virtuellen Inhalten erweitert. Durch das Anlegen einer Repräsentation soll es der Anwendung dabei möglich sein die virtuellen Szeneelementemit der Zeichnung interagieren zu lassen. Dazu wurden verschiedene Methoden aus den Bereichen des Pose Tracking und der Sketch Recognition disktutiert und für die Implementierung in einem prototypischen System ausgewählt. Als Zielhardware fungiert ein Android Smartphone. Kontext der Zeichnungen ist eine Dungeon Karte, wie sie in Rollenspielen vorkommt. Die virtuellen Inhalte nehmen dabei die Form von Bewohnern des Dungeons an, welche von einer Agentensimulation verwaltet werden. Die Agentensimulation ist Gegenstand einer eigenen Diplomarbeit [18]. Für das Pose Tracking wurde ARToolkitPlus eingesetzt, ein optisches Tracking System, das auf Basis von Markern arbeitet. Die Sketch Recognition ist dafür zuständig die Inhalte der Zeichnung zu erkennen und zu interpretieren. Dafür wurde ein eigener Ansatz implementiert der Techniken aus verschiedenen Sketch Recognition Systemen kombiniert. Die Evaluation konzentriert sich auf die technischen Aspekte des Systems, die für eine authentische Erweiterung der Zeichnung mit virtuellen Inhalten wichtig sind.
In dieser Arbeit wird der Nutzen von GPGPU (Allzweckberechnungen auf Grafikprozessoren) zur robusten Deskription von natürlichen, markanten Bildmerkmalen mit Hilfe der Grafikprozessoren mobiler Geräte bewertet. Dazu wurde der SURF-Deskriptor [4] mit OpenGL ES 2.0/GLSL ES 1.0 implementiert und dessen Performanz auf verschiedenen mobilen Geräten ausgiebig evaluiert. Diese Implementation ist um ein Vielfaches schneller als eine vergleichbare CPU-Variante auf dem gleichen Gerät. Die Ergebnisse belegen die Tauglichkeit moderner, mobiler Grafikbeschleuniger für GPGPU-Aufgaben, besonders für die Erkennungsphase von NFT-Systemen (Tracking mit natürlichen, markanten Bildmerkmalen), die in Augmented-Reality-Anwendungen genutzt werden. Die nötigen Anpassungen am Algorithmus des SURF-Deskriptors, um diesen effizient auf mobilen GPUs nutzen zu können, werden dargelegt. Weiterhin wird ein Ausblick auf ein GPGPU-gestütztes Tracking-Verfahren gegeben.
In der Diplomarbeit soll die Verwendung und Möglichkeit zur Einbindung eines Eyetrackers in der Bildersuche untersucht werden. Eyetracker sind Geräte zur Blickerfassung. Sie werden häufig in Design- und Usabilitystudien verwendet, um Informationen über den Umgang der Benutzer mit dem Produkt zu untersuchen. Seit einiger Zeit werden Augenbewegungen auch zur Erkennung von benutzerrelevanten Informationen und Bereichen verwendet, wie zum Beispiel bei dem Projekt Text 2.05 [4]. Hierbei werden Blickrichtung und -fixierung benutzt, um eine Interaktion mit dem Leser eines Textes auf eine möglichst einfache, dabei aber subtile Weise zu ermöglichen.
In dieser Diplomarbeit wurde ein System entwickelt, dass eine Navigation für Fußgänger ermöglicht. Wie beabsichtigt wurde das System für die Benutzung auf einem iPhone realisiert.
Obwohl die Karten der neuen Generation vonNAVTEQ sich noch in Entwicklung befinden, konnten erste Eindrücke gesammelt werden, wie die Navigation der Fußgänger in Zukunft aussehen wird. Das System arbeitet aber auch mit Kartendaten von OpenStreetMap, die die klassische Repräsentation der Kartendaten haben. Die Positionierung kann später, wenn der Galileo-Empfänger zur Verfügung steht, umgestellt werden und Positionsdaten mit höherer Präzision für die Navigation bereitstellen. Die Routenberechnung konnte mit einem CH-ähnlichen Verfahren durch Vorberechnung beschleunigt werden und erlaubt trotzdem eine Änderung des Profils, ohne dass eine neue Vorberechnung nötig ist. Anders als beim einfachen CH, wo nach einer Änderung des Profils für die Berechnung der Routenkosten eine neue Vorberechnung nötig ist, die im Vergleich zu der Berechnung einer Route aufwendig ist. In Abbildung 8.1 ist die demonstrative Navigation mit dem fertigen System abgebildet. Diese zeigt eine Berechnung der Routen für 3 unterschiedliche Profile, die unterschiedliche Steigungsgrade bevorzugen. Daraus ergeben sich unterschiedliche Routen.
3D-Kurven-Skelette werden oft verwendet, da sie im Vergleich zu der von Harry Blum 1967 vorgestellten Medialen Axen Transformation, eine Repäsentation der Objekt-Oberfläche darstellen, die in der Weiterverarbeitung weniger kompex und rechenintensiv ist.
Diese Arbeit hat das Ziel, ein Approximation-Verfahren für 3D-Kurven-Skelette zu entwickeln, welches die oben genannten Vorteile enthält und sich auf verschiedene Szenarien von Objektoberflächen-Daten anwenden lässt.
Im Zeitraum zwischen 1985 bis 1994 hatten ethnische Konflikte einen Anteil von über 50% der Gesamtzahl aller Konflikte. Oft entstehen Konflikte zwischen verschiedenen ethnischen Gruppen oder zwischen einer ethnischen Gruppe und dem Staat. Die Gründe hierbei sind sehr vielfältig und reichen von der sozialen Benachteiligung bis hin zur Bedrohung kollektiver Identität. Eine wesentliche Schlüsselrolle spielt dabei die politische Elite, die politische und ökonomischen Kriesen ausnutzt, um ethnische Gruppen zu mobilisieren.
Diese Diplomarbeit versucht die Ursachen solcher ethnischer Konflikte am Beispiel des ehemaligen Jugoslawiens zu untersuchen und fokusiert sich dabei besonders auf die Rolle der politische Elite. Hierfür wurde der Ansatz der agentenbasierten Simulation verfolgt. Das mit ArcGIS, EmIL und Repast realisierte agentenbasierte Modell erlaubt eine gründliche Untersuchung solcher Konflikte. Die Haupteigenschaft liegt dabei in der Fähigkeit der Agenten, ein normatives Verhalten entwickeln zu können, womit komplexte soziale Verhaltensweisen simuliert werden können.
Quadrokopter sind Helikopter mit vier in einer Ebene angeordneten Rotoren. Kleine unbemannte Modelle, die oft nur eine Schubkraft von wenigen Newton erzeugen können, sind im Spielzeug- und Modellbaubereich beliebt, werden aber auch von Militär und Polizei als Drohne für Aufklärungs- und Überwachungsaufgaben eingesetzt. Diese Diplomarbeit befasst sich mit den theoretischen Grundlagen der Steuerung eines Quadrokopters und entwickelt darauf aufbauend eine kostengünstige Steuerplatine für einen Modellquadrokopter.
Die theoretischen Grundlagen enthalten eine Untersuchung der Dynamik eines frei fliegenden Quadrokopters, bei der Bewegungsgleichungen hergeleitet und mit den Ergebnissen verglichen werden, die in "Design and control of quadrotors with application to autonomous flying" ([Bou07]) vorgestellt wurden. Weiterhin wird die Funktionsweise verschiedener Sensoren beschrieben, die zur Bestimmung der aktuellen räumlichen Ausrichtung geeignet sind, und es werden Verfahren besprochen, mit denen die Ausrichtung aus den Messwerten dieser Sensoren abgeschätzt werden kann. Zusätzlich wird in den Schiefkörper der Quaternionen eingeführt, in dem dreidimensionale Rotationen kompakt dargestellt und effizient verkettet werden können.
Daran anschließend wird die Entwicklung einer einfachen Steuerplatine beschrieben, die sowohl einen autonomen Schwebeflug als auch Fernsteuerung ermöglicht. Die Platine wurde auf einem X-Ufo-Quadrokopter der Firma Silverlit entwickelt und getestet, der daher ebenfalls vorgestellt wird. Die eingesetzten Bauteile und deren Zusammenspiel werden besprochen. Dabei ist insbesondere die WiiMotionPlus hervorzuheben, die als kostengünstiges Gyrosensormodul verwendet wird. Daneben werden verschiedene Aspekte der Steuersoftware erläutert: die Auswertung der Sensordaten, die Zustandsschätzung mit Hilfe des expliziten komplementären Filters nach Mahony et al. ([MHP08]), die Umsetzung des Ausrichtungsreglers sowie die Erzeugung der Steuersignale für die Motoren. Sowohl die Steuersoftware als auch Schaltplan und Platinenlayout der Steuerplatine liegen dieser Arbeit auf einer CD bei. Schaltplan und Platinenlayout sind zusätzlich im Anhang der Arbeit abgedruckt.
In der heutigen Robotik-Forschung soll hauptsächlich die Interaktion von autonomen, mobilen Robotern mit vorher nicht bekannten Umgebungen ermöglicht werden. Eines der grundlegendsten Probleme, das in diesem Kontext gelöst werden muss, ist die Frage, wo der Roboter ist und wie seine Umgebung in unmittelbarer Nähe, aber auch an bereits besuchten Orten aussieht " das sogenannte SLAM Problem.
In dieser Arbeit wird ein GraphSLAM System vorgestellt, das einen graphbasierten Lösungsansatz für dieses Problem darstellt. Ein solches System besteht aus einem Frontend und einem Backend. Das Frontend hat die Aufgabe, aus den Sensordaten einen Graphen zu konstruieren, der die relative Lage der Messungen zueinander widerspiegelt. Da sich Messungen widersprechen können, ist ein solcher Graph im Allgemeinen inkonsistent. Das Backend hat nun die Aufgabe, diesen Graphen zu optimieren, d. h. eine Konfiguration der Knoten zu bestimmen, die sich nur minimal widerspricht. Knoten repräsentieren Roboterposen, die aufgrund der enthaltenen Rotationen sog. Mannigfaltigkeiten sind und keinen gewöhnlichen Vektorraum bilden. Dies wird in der Arbeit konsequent berücksichtigt, was zu einem sehr effizienten und eleganten Optimierungsverfahren führt.
Software Projekte nutzen typischerweise mehrere externe Programmbibliotheken. Die Schnittstelle, die solch eine Programmbibliothek zur Verfügung stellt, wird als API (application programming interface) bezeichnet. APIs werden üblicherweise laufend weiterentwickelt, was es notwendig macht, dass die Anwendungen, welche sie verwenden, entsprechend modifiziert werden. Zudem kann es kann vorkommen, dass eine Programmbibliothek durch eine andere ersetzt werden soll, was ebenfalls zur Folge hat, dass die Anwendungen, wo die API verwendet wurde, modifiziert werden müssen. Den Vorgang eine Anwendung so zu modifizieren, dass eine andere API verwendet wird, bezeichnet man als API Migration. Manuelle API Migration ist eine mühselige und zeitintensive Aufgabe, deshalb ist automatische API Migration ein aktives Forschungsfeld. Ein verwandtes Forschungsgebiet ist API Analyse, welches Daten zur Verfügung stellt, die helfen können Werkzeuge für API Migration zu entwickeln. Die hier vorliegende Arbeit behandelt Techniken und Technologien für die Entwicklung von Werkzeugen für API Analyse und API Migration. Die Ergebnisse werden als Design Patterns präsentiert, welche auf unseren Erfahrungen mit API Analyse und API Migration innerhalb des Software Languages Teams basieren.
In dieser Arbeit wurde die Realisierung einer mobilen Sicherheitslösung für Überwachungszwecke vorgestellt, welche unter Zuhilfenahme des staatlich geförderten Forschungsprojekts CamInSens entwickelt wurde. CamInSens soll erreichen, in überwachten Gefahrenbereichen die erhaltenen Video- und Sensorendaten so zu analysieren, dass Bedrohungen möglichst frühzeitig erkannt und behandelt werden können. Das Ziel dieser Arbeit war, auf Basis von verarbeiteten Daten aus CamInSens eine Interaktion und Visualisierung zu entwickeln, die bei einem späteren Praxiseinsatz mobilem Sicherheitspersonal dabei hilft, in Bedrohungssituationen fundierte Entscheidungen treffen zu können. Zu diesem Zweck wurde nicht nur eine Software implementiert, sondern auch eine Marktsichtung hinsichtlich geeigneter Geräte und einsetzbarer Softwarebibliotheken durchgeführt.
Mittels facettierter Suche lassen sich große, unbekannte Datensätze einfach und gezielt erkunden. Bei der Implementation von Anwendungen für Smartphones ist zu beachten, dass im Gegensatz zu Desktop-Anwendungen ein kleinerer Bildschirm und nur beschränkte Möglichkeiten zur Interaktion zwischen Benutzer und Smartphone zur Verfügung stehen. Diese Beschränkungen können die Benutzbarkeit einer Anwendung negativ beeinflussen. Mit FaThumb und MobileFacets existieren zwei mobile Anwendungen, die die facettierte Suche umsetzen und verwenden, aber nur MobileFacets ist für gegenwärtige Smartphones mit Touchscreenbildschirm ausgelegt.
Jedoch bietet FaThumb eine neuartige Facettennavigation, die durch MFacets in dieser Arbeit für aktuelle Smartphones neu realisiert wird. Außerdem befasst sich diese Arbeit mit der Durchführung einer summativen Evaluation zwischen den beiden Anwendungen, MFacets und MobileFacets, bezüglich der Benutzbarkeit und präsentiert die ausgewerteten Ergebnisse.
Aspekt-Orientierung in PHP
(2012)
Diese Diplomarbeit hat das Thema der fehlenden Cross-Cutting-Concerns(CCCs)-Unterstützung in PHP zum Inhalt. Die Basis bilden zu definierende Anforderungen an eine AOP-Realisierung im PHP-Umfeld. Es wird analysiert, wie und ob verwandte Sprachen und Paradigmen es gestatten, CCCs zu unterstützen. Darüber hinaus wird die Möglichkeit erörtert, AOP in PHP ohne PHP-Erweiterung zu realisieren. Weiter werden die bisherigen Ansätze, AOP in PHP umzusetzen, qualitativ untersucht. Die vorliegende Arbeit zielt darauf ab, eine eigene AOP-PHP-Lösung zu präsentieren, die nicht die Schwächen existierender Lösungen teilt.
Zur Entwicklung von Webanwendungen und Webseiten existieren viele verschiedene Technologien und Konzepte. Jede dieser Technologien implementiert bestimmte Anforderungen, wie z.B. das Erzeugen von Inhalten oder die Kommunikation zwischen Client und Server. Verschiedene Konzepte helfen, diese Technologien innerhalb einer Webanwendung zusammenzufügen. Nicht zuletzt Architekturstile und -muster gehören zu diesen Konzepten. Die Diplomarbeit beschreibt einen Ansatz zur Erstellung einer Taxonomie dieser Technologien und Konzepte unter Zuhilfenahme der freien Enzyclopädie Wikipedia, im speziellen der Kategorie "Web-Application Framework". Unser 101companies Projekt benutzt Implementationen, um die einem Web-Application-Framework zugrunde liegenden Technologien zu identifizieren und zu klassifizieren. Innerhalb des Projekts werden Taxonomien und Ontologien mit Hilfe dieser Klassifikationen erstellt. Zusätzlich beschreibt die Ausarbeitung, wie nützliche Web-Application-Frameworks mit der Hilfe von Wikipedia priorisiert werden. Abschließend enthält die Diplomarbeit auch die Dokumentation der betreffenden Implementationen.
Standards haben längst Einzug in das Gebiet der Informatik gehalten. Verschiedenste Organisationen beschäftigen sich mit der Beschließung von Normen für die standardisierte Lösung von Problemen in der Informatik. Ein wichtiger Teilaspekt ist die Spezifizierung von Datenformaten, die die Interoperabilität von Programmen sichern kann. Dabei existieren viele verschiedene Schemasprachen, die auf unterschiedliche Anforderungen ausgelegt sind, und mit deren Hilfe die Menge der konformen Dokumente beschrieben werden kann. Die Kombination mehrerer Schemasprachen ist sinnvoll, da die Mächtigkeit einer Sprache oftmals nicht ausreicht, um die Anforderungen zu erfassen. So auch im Fall der, von IMS entwickelten, Spezifikation Common-Cartridge. Das Common-Cartridge-Format beschreibt valide Zip-Pakete, die dazu genutzt werden können, verschiedene Lernobjekte zu aggregieren und als zusammenhängende Lerneinheit in eine Lernplattform zu importieren. Die Spezifikation benutzt bereits vorhandene und bewährte Spezifikationen, um Teile gültiger XML-Dokumente zu beschreiben. Diese sind selbst Teil eines Pakets und können Referenzen enthalten, die den Inhalt mit der Paketstruktur in Verbindung bringen. Dabei wird das Common-Cartridge-Format durch ein sogenanntes Domain-Profile erfasst. Ein solches erlaubt die Anpassung einer oder mehrerer Standards bzw. Spezifikationen, um die Bedürfnisse einer bestimmten Domäne abzudecken. Zudem können sogenannte Testregeln definiert werden, die für die Bestimmung der für ein Datenpaket auszuführenden Testaufgaben genutzt werden können. Letztlich kann die automatische Erstellung eines Testsystems veranlasst werden, welches diese Aufgaben ausführen kann. Somit stellt sich die Frage, ob ein Domain-Profile ebenso dazu eignet ist, die Anforderungen anderer paket-basierter Datenformate zu erfassen, und ob die nötigen Änderungen an den unterstützenden Tools vorgenommen werden können. Schließlich würde dies die Überprüfung gestellter Anforderungen ermöglichen.
Diese Arbeit soll sich mit einer beispielhaften Anwendung des Verfahrens befassen, um diese Fragen nach Möglichkeit zu beantworten. Dazu soll der verwendete Ansatz auf die Datenformate übertragen werden, die Teil der Spezifikation des Virtual Company Dossiers - VCD - sind. Diese legen ebenso paket-basierte Formate fest, die innerhalb eines elektronischen Ausschreibungsprozesses verwendet werden. Sie ermöglichen die Erfassung von Evidenzen, die die notwendige Qualifikation eines Bewerbers, sowie die Erfüllung der, mit dem Ausschreibungsverfahren verbundenen Kriterien nachweisen.
Im praktischen Teil werden somit zuerst die Ähnlichkeiten der beiden Formate herausgearbeitet. Diese dienten der Identifizierung abstrakter Anforderungen, die, soweit möglich, mit den gleichen Formalismen festgehalten wurden. Dabei wurden Änderungen an den unterstützenden Tools vorgenommen, um die Erfassung aller VCD-spezifischen Anforderungen zu ermöglichen. So wurden das Format, und das Tool zur Erstellung von Applikationsprofilen, angepasst. Schließlich erfolgten Änderungen am generischen Testsystem, welches zur Herleitung konkreter Testsysteme genutzt wird. Letztlich stellte sich heraus, dass ähnliche Anforderungen bestehen, und die unterstützenden Tools in einer Weise angepasst werden konnten, die die Menge der erfassbaren Anforderungen erweitert. Da der Hintergrund der beteiligten Spezifikationen sich zudem signifikant unterscheidet, ist davon auszugehen, dass das Verfahren in einem weiten Spektrum von Anwendungsfällen eingesetzt werden kann.