9 research outputs found

    Ein System zur Definition und AusfĂŒhrung von Protokollen fĂŒr Multi-Agentsysteme

    Get PDF
    Mit der hier entwickelten Protokollsprache können Multiagenten-Protokolle klar und eindeutig spezifiziert werden. Durch die automatische Code-Generierung aus einer Protokoll-Spezifikation entfĂ€llt der fehleranfĂ€llige Arbeitsschritt der Implementierung des festgelegten Protokoll-Ablaufs. Das Protokoll-AusfĂŒhrungs-Systems ĂŒbernimmt die Steuerung des Ablaufs, erkennt Fehler (z.B. falsche Nachrichten) und ĂŒberwacht Timeout-Fristen. Ein Programmierer muss nach der Festlegung eines Protokolls lediglich den Code fĂŒr die anwendungsabhĂ€ngigen AblĂ€ufe (Anwendungs-Prozeduren) und die Agentenumgebung (Zugriff auf andere Agenten, Zustellen der Nachrichten) zu VerfĂŒgung stellen. Durch die Trennung von Protokoll und Anwendung können so einmal entworfene Protokolle fĂŒr unterschiedliche Anwendungen verwendet werden, ohne den eigentlichen Protokoll-code zu verĂ€ndern. Durch dieses System ergibt sich fĂŒr das Deutsche Forschungszentrum fĂŒr KĂŒnstliche Intelligenz die Möglichkeit, neue Protokolle schneller zu entwickeln und einzusetzen

    Dynamische Datenbankorganisation fĂŒr multimediale Informationssysteme

    Get PDF
    The topic of this thesis is a mathematically rigorous derivation of formulae for the magnetic force which is exerted on a part of a bounded magnetized body by its surrounding. Firstly, the magnetic force is considered within a continuous system based on macroscopic magnetostatics. The force formula in this setting is called Brown's force formula referring to W. F. Brown, who gave a mainly physically motivated discussion of it. This formula contains a surface integral which shows a nonlinear dependence on the normal. Brown assumes the existence of an additional term in the surface force which cancels the nonlinearity to allow an application of Cauchy's theorem in continuum mechanics to a magnetoelastic material. The proof of Brown's formula which is given in this work involves a suitable regularization of a hypersingular kernel and uses singular integral methods. Secondly, we consider a discrete, periodic setting of magnetic dipoles and formulate the force between a part of a bounded set and its surrounding. In order to pass to the continuum limit we start from the usual force formula for interacting magnetic dipoles. It turns out that the limit of the discrete force is different from Brown's force formula. One obtains an additional nonlinear surface term which allows one to regard Brown's assumption on the surface force as a consequence of the atomistic approach. Due to short range effects one obtains moreover an additional linear surface term in the continuum limit of the discrete force. This term contains a certain lattice sum which depends on a hypersingular kernel and the underlying lattice structure

    Codeklonerkennung mit Dominatorinformationen

    Get PDF
    If an existing function in a software project is copied and reused (in a slightly modiïŹed version), the result is a code clone. If there was an error or vulnerability in the original function, this error or vulnerability is now contained in several places in the software project. This is one of the reasons why research is being done to develop powerful and scalable clone detection techniques. In this thesis, a new clone detection method is presented that uses paths and path sets derived from the dominator trees of the functions to detect the code clones. A dominator tree is a special form of the control ïŹ‚ow graph, which does not contain cycles. The dominator tree based method has been implemented in the StoneDetector tool and can detect code clones in Java source code as well as in Java bytecode. It has equally good or better recall and precision results than previously published code clone detection methods. The evaluation was performed using the BigCloneBench. Scalability measurements showed that even source code with several 100 million lines of code can be searched in a reasonable time. In order to evaluate the bytecode based StoneDetector variant, the BigCloneBench ïŹles had to be compiled. For this purpose, the Stubber tool was developed, which can compile Java source code ïŹles without the required libraries. Finally, it could be shown that using the register code generated from the Java bytecode, similar recall and precision values could be achieved compared to the source code based variant. Since some machine learning studies specify that very good recall and precision values can be achieved for all clone types, a machine learning method was trained with dominator trees. It could be shown that the results published by the studies are not reproducible on unseen data.Wird eine bestehende Funktion in einem Softwareprojekt kopiert und (in leicht angepasster Form) erneut genutzt, entsteht ein Codeklon. War in der ursprĂŒnglichen Funktion jedoch ein Fehler oder eine Schwachstelle, so ist dieser Fehler beziehungsweise diese Schwachstelle jetzt an mehreren Stellen im Softwareprojekt enthalten. Dies ist einer der GrĂŒnde, weshalb an der Entwicklung von leistungsstarken und skalierbaren Klonerkennungsverfahren geforscht wird. In der hier vorliegenden Arbeit wird ein neues Klonerkennungsverfahren vorgestellt, das zum Detektieren der Codeklone Pfade und Pfadmengen nutzt, die aus den DominatorbĂ€umen der Funktionen abgeleitet werden. Ein Dominatorbaum wird aus dem Kontrollflussgraphen abgeleitet und enthĂ€lt keine Zyklen. Das Dominatorbaum-basierte Verfahren wurde in dem Werkzeug StoneDetector umgesetzt und kann Codeklone sowohl im Java-Quelltext als auch im Java-Bytecode detektieren. Dabei hat es gleich gute oder bessere Recall- und Precision-Werte als bisher veröffentlichte Codeklonerkennungsverfahren. Die Wert-Evaluierungen wurden dabei unter Verwendung des BigClone-Benchs durchgefĂŒhrt. Skalierbarkeitsmessungen zeigten, dass sogar Quellcodedateien mit mehreren 100-Millionen Codezeilen in angemessener Zeit durchsucht werden können. Damit die Bytecode-basierte StoneDetector-Variante auch evaluiert werden konnte, mussten die Dateien des BigCloneBench kompiliert werden. Dazu wurde das Stubber-Tool entwickelt, welches Java-Quelltextdateien ohne die benötigten AbhĂ€ngigkeiten kompilieren kann. Schlussendlich konnte somit gezeigt werden, dass mithilfe des aus dem Java-Bytecode generierten Registercodes Ă€hnliche Recall- und Precision-Werte im Vergleich zu der Quelltext-basierten Variante erreicht werden können. Da einige Arbeiten mit maschinellen Lernverfahren angeben, bei allen Klontypen sehr gute Recall- und Precision-Werte zu erreichen, wurde ein maschinelles Lernverfahren mit DominatorĂ€umen trainiert. Es konnte gezeigt werden, dass die von den Arbeiten veröffentlichten Ergebnisse nicht auf ungesehenen Daten reproduzierbar sind

    Die Sicherheitsaspekte von mobilem Code

    Get PDF

    Assistenzsystem zur Testung und Verbesserung der Lesbarkeit von Gebrauchsinformationen

    Get PDF
    Ziel der Entwicklung, deren Ergebnisse in der vorliegenden Arbeit vorgestellt werden, war die Konzipierung und Realisierung eines Verfahrens zur Verbesserung der VerstĂ€ndlichkeit (Lesbarkeit) von Gebrauchsinformationen fĂŒr Arzneimittel. Das Verfahren, das die Erstellung neuer und die Verbesserung bestehender Gebrauchsinformationen unterstĂŒtzen soll, baut auf einem umfangreichen Kriterienkatalog auf, der fĂŒr die Lesbarkeit eines Textes relevante Kriterien enthĂ€lt. Die Lesbarkeitstestung ist als 5-stufiges Verfahren strukturiert. Beginnend mit der Berechnung eines Lesbarkeitsindex fĂŒr den gesamten Text und der Erstellung einer graphischen Übersicht, werden in mehreren Schritten Detailanalysen ĂŒber die AbsĂ€tze und EinzelsĂ€tze durchgefĂŒhrt, die mit VorschlĂ€gen zur Lesbarkeitsverbesserung abschließen. Als Assistenzsystem konzipiert leitet das Verfahren einen Bearbeiter zu den Problemfeldern eines Textes, ohne ihn zu bevormunden. Die Entscheidung ĂŒber eine Textmodifizierung verbleibt uneingeschrĂ€nkt bei dem fĂŒr den Text verantwortlichen Bearbeiter. Das Verfahren zur Lesbarkeitsverbesserung ist in einem Prototypen realisiert, mit dem die Machbarkeit und die ValiditĂ€t des Verfahrens aufgezeigt wird. Über die Testung von Gebrauchsinformationen hinaus werden weitere Anwendungsfelder vorgestellt, in denen das Verfahren nach Branchen spezifischen Modifikationen des Textkorpus ebenfalls angewendet werden kann. Um, wie bspw. vom Bundesministerium fĂŒr Bildung und Forschung gefordert, das Verfahren außerhalb des universitĂ€ren Umfeldes einsetzen zu können, wird das erforderliche Vorgehen beschrieben, um den Prototypen zum marktreifen Produkt weiterzuentwickeln.Target of the development of which the results were presented below was to create and to realize a method for the improvement of the readability of drug package leaflets. The method designed to support the creation of new leaflets and the improvement of given ones is based on an extensive catalog of criteria which are relevant for the readability of an information for use. The readability testing is structured as a 5-layer system. Starting with calculation of a readability index and a graphical overview covering the total text a detailed analysis of all clauses and sentences is performed resulting in proposals for the readability improvement. The method is designed as an assistance system to support a person in charge to find sentences which could be difficult to understand but without telling the personal what to do. The decision how to modify the wording of a text stays absolutely with the person in charge. The method for readability improvement was implemented in a prototype to show the feasibility and the validity of the procedure. Additionally to the testing method for drug package leaflets the study indicates further application areas where the method can be used after having adapted the dictionary to the specific wording of the branch of trade in question. To prepare the method for the use in the industry as asked for by the Ministry of Education and Development the necessary procedure is defined for the development of the marketable product

    Formalisierung gestischer Eingabe fĂŒr Multitouch-Systeme

    Get PDF
    Die Mensch-Computer-Interaktion wird dank neuer Eingabemöglichkeiten jenseits von Tastatur und Maus reicher, vielseitiger und intuitiver. Durch den Verzicht auf zusĂ€tzliche GerĂ€te beim Umgang mit Computern geht seitens der Eingabeverarbeitung jedoch eine erhöhte KomplexitĂ€t einher: Die Programmierung gestischer Eingabe fĂŒr Multitouch-Systeme ist in derzeitigen Frameworks abgesehen von den verfĂŒgbaren Standard-Gesten mit hohem Aufwand verbunden. Die entwickelte Gestenformalisierung fĂŒr Multitouch (GeForMT) definiert eine domĂ€nenspezifische Sprache zur Beschreibung von Multitouch-Gesten. Statt wie verwandte FormalisierungsansĂ€tze detaillierte Filter fĂŒr die Rohdaten zu definieren, bedient sich GeForMT eines bildhaften Ansatzes, um Gesten zu beschreiben. Die Konzeption von Gesten wird unterstĂŒtzt, indem beispielsweise in einem frĂŒhen Stadium der Entwicklung Konflikte zwischen Ă€hnlichen Gesten aufgedeckt werden. Die formalisierten Gesten lassen sich direkt in den Code einbetten und vereinfachen damit die Programmierung. Das zugrundeliegende Framework sorgt fĂŒr die Verbindung zu den Algorithmen der Gestenerkennung. Die Übertragung des semiotischen Ansatzes zur Formalisierung auf andere Formen gestischer Eingabe wird abschließend diskutiert.:1 Einleitung 1.1 Motivation 1.2 Zielstellung und Abgrenzung 1.3 Aufbau der Arbeit 2 InterdisziplinĂ€re Grundlagenbetrachtung 2.1 Semiotik 2.1.1 Begriffe und Zeichenklassen 2.1.2 Linguistik 2.1.3 Graphische Semiologie 2.1.4 Formgestaltung und Produktsprache 2.1.5 Interfacegestaltung 2.2 Gestenforschung 2.2.1 Kendons Kontinuum fĂŒr Gesten 2.2.2 Taxonomien 2.2.3 Einordnung 2.3 Gestische Eingabe in der Mensch-Computer-Interaktion 2.3.1 Historische Entwicklung von Ein- und Ausgabetechnologien 2.3.2 Begreifbare Interaktion 2.3.3 DomĂ€nenspezifische Modellierung 2.4 Zusammenfassung 3 Verwandte FormalisierungsansĂ€tze 3.1 RĂ€umliche Gesten 3.1.1 XML-Beschreibung mit der Behaviour Markup Language 3.1.2 Detektornetze in multimodalen Umgebungen 3.1.3 Gestenvektoren zur Annotation von Videos 3.1.4 Vergleich 3.2 Gesten im Sketching 3.2.1 Gestenfunktionen fĂŒr Korrekturzeichen 3.2.2 Sketch Language zur Beschreibung von Skizzen 3.2.3 DomĂ€nenspezifische Skizzen mit LADDER 3.2.4 Vergleich 3.3 FlĂ€chige Gesten 3.3.1 Regelbasierte Definition mit Midas 3.3.2 Gesture Definition Language als Beschreibungssprache 3.3.3 RegulĂ€re AusdrĂŒcke von Proton 3.3.4 Gesture Interface Specification Language 3.3.5 Logische Formeln mit Framous 3.3.6 Gesture Definition Markup Language 3.3.7 Vergleich 3.4 Zusammenfassung 4 Semiotisches Modell zur Formalisierung 4.1 Phasen gestischer Eingabe 4.2 Syntax gestischer Eingabe 4.3 Semantik gestischer Eingabe 4.4 Pragmatik gestischer Eingabe 4.5 Zusammenfassung 5 Gestenformalisierung fĂŒr Multitouch 5.1 Ausgangslage fĂŒr die Konzeption 5.1.1 Ikonographische Einordnung flĂ€chiger Gesten 5.1.2 Voruntersuchung zur Programmierung flĂ€chiger Gesten 5.1.3 Anforderungskatalog fĂŒr die Formalisierung 5.2 Semiotische Analyse flĂ€chiger Gesten 5.2.1 Syntax flĂ€chiger Gesten 5.2.2 Semantik flĂ€chiger Gesten 5.2.3 Pragmatik flĂ€chiger Gesten 5.3 PrĂ€zedenzfĂ€lle fĂŒr die Formalisierung 5.3.1 Geschicklichkeit bei der Multitouch-Interaktion 5.3.2 PrĂ€zision bei flĂ€chigen Gesten 5.3.3 Kooperation in Multitouch-Anwendungen 5.4 Evaluation und Diskussion 5.4.1 Vergleich der Zeichenanzahl 5.4.2 Evaluation der BeschreibungsfĂ€higkeit 5.4.3 Limitierungen und Erweiterungen 6 Referenzarchitektur 6.1 Analyse existierender Multitouch-Frameworks 6.2 Grundlegende Architekturkomponenten 6.2.1 Parser 6.2.2 Datenmodell 6.2.3 Gestenerkennung und Matching 6.2.4 Programmierschnittstelle 6.3 Referenzimplementierung fĂŒr JavaScript 6.3.1 Komponenten der Bibliothek 6.3.2 Praktischer Einsatz 6.3.3 Gesteneditor zur bildhaften Programmierung 7 Praxisbeispiele 7.1 Analyse prototypischer Anwendungen 7.1.1 Workshop zur schöpferischen Zerstörung 7.1.2 Workshop zu semantischen Dimensionen 7.1.3 Vergleich 7.2 Abbildung von Maus-Interaktion auf flĂ€chige Gesten in DelViz 7.2.1 Datengrundlage und Suchkonzept 7.2.2 Silverlight-Implementierung von GeForMT 7.3 FlĂ€chige Gesten im 3D-Framework Bildsprache LiveLab 7.3.1 Komponentenarchitektur 7.3.2 Implementierung von GeForMT mit C++ 7.4 Statistik und Zusammenfassung 8 Weiterentwicklung der Formalisierung 8.1 RĂ€umliche Gesten 8.1.1 Verwandte Arbeiten 8.1.2 Prototypischer Aufbau 8.1.3 Formalisierungsansatz 8.2 Substanzen des Alltags 8.2.1 Verwandte Arbeiten 8.2.2 Experimente mit dem Explore Table 8.2.3 Formalisierungsansatz 8.3 Elastische OberflĂ€chen 8.3.1 Verwandte Arbeiten 8.3.2 Der Prototyp DepthTouch 8.3.3 Formalisierungsansatz 9 Zusammenfassung 9.1 Kapitelzusammenfassungen und BeitrĂ€ge der Arbeit 9.2 Diskussion und Bewertung 9.3 Ausblick und zukĂŒnftige Arbeiten Anhang Vergleichsmaterial FormalisierungsansĂ€tze Fragebogen Nachbefragung Ablaufplan studentischer Workshops Grammatikdefinitionen Statistische Auswertung Gestensets Literatur Webreferenzen Eigene Veröffentlichungen Betreute studentische Arbeiten Abbildungsverzeichnis Tabellen Verzeichnis der Code-Beispiel

    Grundlagen und Techniken des Compilerbaus

    No full text
    corecore