Institut für Informatik
Refine
Year of publication
- 2010 (18) (remove)
Document Type
- Diploma Thesis (6)
- Part of Periodical (6)
- Study Thesis (4)
- Bachelor Thesis (1)
- Doctoral Thesis (1)
Keywords
- Netzwerk (2)
- Routing (2)
- hybrid automata (2)
- API (1)
- Algorithm Engineering (1)
- Authentisierung (1)
- Automatisches Beweisverfahren (1)
- Computational logic (1)
- Context-aware processes (1)
- Controlling (1)
Institute
- Institut für Informatik (18)
- Fachbereich 4 (6)
This minor thesis shows a way to optimise a generated oracle to achieve shorter runtimes. Shorter runtimes of test cases allows the execution of more test cases in the same time. The execution of more test cases leads to a higher confidence in the software-quality. Oracles can be derived from specifications. However specifications are used for different purposes and therefore are not necessarily executable. Even if the are executable it might be with only a high runtime. Those two facts come mostly from the use of quantifiers in the logic. If the quantifier-range is not bounded, respectively if the bounds are outside the target language-datatype-limits, the specification is too expressive to be exported into a program. Even if the bounds inside the used datatype-limits, the quantification is represented as a loop which leads to a runtime blowup, especially if quantifiers are nested. This work explains four different possibilities to reduce the execution time of the oracle by manipulating the quantified formular whereas this approach is only applicable if the quantified variables are of type Integer.
Diese Arbeit behandelt verschiedene Ansätze zur Ermittlung einer Heuristik, welche zur Bestimmung einer optimalen Konfiguration des Theorembeweisers E-KRHyper eingesetzt werden soll. Es wird erläutert, wie der Beweiser durch eine angepasste Voreinstellung optimiert werden kann und die erarbeiteten Ansätze zur Ermittlung dieser Voreinstellung werden vorgestellt. Anhand der erzielten Ergebnisse werden die Ansätze anschließend bewertet und für eines der vorgestellten Verfahren wird außerdem eine Idee zur Implementierung vorgestellt.
This thesis introduces fnnlib, a C++ library for recurrent neural network simulations that I developed between October 2009 and March 2010 at Osaka University's Graduate School of Engineering. After covering the theory behind recurrent neural networks, backpropagation through time, recurrent neural networks with parametric bias, continuous-time recurrent neural networks, and echo state networks, the design of the library is explained. All of the classes as well as their interrelationships are presented along with reasons as to why certain design decisions were made. Towards the end of the thesis, a small practical example is shown. Also, fnnlib is compared to other neural network libraries.
So far VNUML (Virtual Network User Mode Linux) has been used by the group for Computer Networks at the University of Koblenz in such a way as to test its own protocol enhancement for RIP (Routing Information Protocol) on strengths and weaknesses. The modified version of RIP is called RMTI (RIP with minimal topology information). In particular, special test scenarios have been used to investigate wether a Count-to-Infinity (CTI) problem can be completely avoided and how quickly the network converges after the failure or breakdown of a router. Tius thesis investigates whether the MTI enhancement also provides for better performance in larger networks. Furthermore, it will be investigated if it is worth using the script tool EDIV ((spanish: Escenarios DIstribuidos con VNUML, english: Distributed Scenarios using VNUML) due to its enhanced scalability and whether the distribution of an XML scenario on several computers has a significant impact on the convergence time. Apart from simulations, test scenarios will be developed and tested in order to generate results about the efficiency and scalability of the Distance Vector Routing Protocol.
A network like the internet is a set of subnets that are connected to each other by a router. A router is a computer, containing multiple network devices to be connected to multiple subnets. So, it is able to forward packages from one subnet to another. A network can be represented as a graph with its routers as vertices and subnets as edges. This graph is called the topology of the network. A packet send to a host outside the own subnet usually will be send first to the so-called default router. This router (like any router) contains a table (the so-called forwarding table) with every subnet. Additionally for each net, the table contains the router through which the subnet can be reached best. So, the packet will be forwarded from router to router until it reaches the destination subnet. On this way every router looks up in its forwarding table for the best next router. A routing protocol takes care of the automatic exchange of informations between the routers to build the forwarding tables and keep them up to date. If the forwarding tables of all routers are up to date the network is called convergent. The time needed to build or update the routing tables is called the convergence time The RIP routing protocol is a well known and well explored distance vector protocol. But there are only few examinations about the convergence properties (e.g. the time needed to converge or the traffic volume produced by the routing messages). This work tries to examine a relationship between the topology properties of a network and the convergence properties of the rip routing protocol. Therefore, over 5000 single measurements were performed and statistically analyzed. Mathematical formulas have been derived from the results that are able to approximate the convergence properties of a network from its topology properties.
In this thesis a Java program is developed that can be used to visualize networks previously described in configuration files. These networks must consist of layer 2 switches and hosts only. After loading such a configuration file, the program will visualize the network, and the spanning tree algorithm IEEE 802.1D may be started. The program allows the user to modify specific attributes of switches and hosts. The hosts will be able to exchange messages. The switches are realized as threads so that they can run independently and parallel to each other. The absence of central coordination and control prevents the switches from sharing global knowledge. This characteristic renders the implementation closer to the way an actual network functions.
Die Entwicklung von Algorithmen im Sinne des Algorithm Engineering geschieht zyklisch. Der entworfene Algorithmus wird theoretisch analysiert und anschließend implementiert. Nach der praktischen Evaluierung wird der Entwurf anhand der gewonnenen Kenntnisse weiter entwickelt. Formale Verifffizierung der Implementation neben der praktischen Evaluierung kann den Entwicklungsprozess verbessern. Mit der Java Modeling Language (JML) und dem KeY tool stehen eine einfache Spezififfkationssprache und ein benutzerfreundliches, automatisiertes Verififfkationstool zur Verfügung. Diese Arbeit untersucht, inwieweit das KeY tool für die Verifffizierung von komplexeren Algorithmen geeignet ist und welche Rückmeldungen für Algorithmiker aus der Verififfkation gewonnen werden können.Die Untersuchung geschieht anhand von Dijkstras Algorithmus zur Berechnung von kürzesten Wegen in einem Graphen. Es sollen eine konkrete Implementation des Standard-Algorithmus und anschließend Implementationen weiterer Varianten verifffiziert werden. Dies ahmt den Entwicklungsprozess des Algorithmus nach, um in jeder Iteration nach möglichen Rückmeldungen zu suchen. Bei der Verifffizierung der konkreten Implementation merken wir, dass es nötig ist, zuerst eine abstraktere Implementation mit einfacheren Datenstrukturen zu verififfzieren. Mit den dort gewonnenen Kenntnissen können wir dann die Verifikation der konkreten Implementation fortführen. Auch die Varianten des Algorithmus können dank der vorangehenden Verififfkationen verifiziert werden. Die Komplexität von Dijkstras Algorithmus bereitet dem KeY tool einige Schwierigkeiten bezüglich der Performanz, weswegen wir während der Verifizierung die Automatisierung etwas reduzieren müssen. Auf der anderenrn Seite zeigt sich, dass sich aus der Verifffikation einige Rückmeldungen ableiten lassen.
Dieses Dokument schlägt ein Konzept für eine Personal Key Infrastruktur in iCity vor. Über ein Trust Center (TC) ausgestellte Zertiffkate gewährleisten einen sicheren Schlüsselaustausch mit nachweisbarer Authentisierung des Kommunikationspartners, Abhörsicherheit sowie Unverf älschtheit und Nachweisbarkeit der Nachrichten. Das gemeinsam vertrauensw ürdige TC muss während der Kommunikation nicht erreichbar sein. Es erhält lediglich öffentliche Informationen. Das Konzept stellt mehrere Sicherheitsstufen vor, die sichere Identiffkation und Anonymität unterschiedlich gewichten.
Conventional security infrastructures in the Internet cannot be directly adopted to ambient systems, especially if based on short-range communication channels: Personal, mobile devices are used and the participants are present during communication, so privacy protection is a crucial issue. As ambient systems cannot rely on an uninterrupted connection to a Trust Center, certiffed data has to be veriffed locally. Security techniques have to be adjusted to the special environment. This paper introduces a public key infrastructure (PKI) to provide secure communication channels with respect to privacy, confidentiality, data integrity, non-repudiability, and user or device authentication. It supports three certiffcate levels with a different balance between authenticity and anonymity. This PKI is currently under implementation as part of the iCity project.