TY - THES A1 - Nordmann, Paul-Patrick T1 - Fehlerkorrektur von Speicherfehlern mit Low-Density-Parity-Check-Codes N2 - Die Fehlerkorrektur in der Codierungstheorie beschäftigt sich mit der Erkennung und Behebung von Fehlern bei der Übertragung und auch Sicherung von Nachrichten. Hierbei wird die Nachricht durch zusätzliche Informationen in ein Codewort kodiert. Diese Kodierungsverfahren besitzen verschiedene Ansprüche, wie zum Beispiel die maximale Anzahl der zu korrigierenden Fehler und die Geschwindigkeit der Korrektur. Ein gängiges Codierungsverfahren ist der BCH-Code, welches industriell für bis zu vier Fehler korrigiere Codes Verwendung findet. Ein Nachteil dieser Codes ist die technische Durchlaufzeit für die Berechnung der Fehlerstellen mit zunehmender Codelänge. Die Dissertation stellt ein neues Codierungsverfahren vor, bei dem durch spezielle Anordnung kleinere Codelängen eines BCH-Codes ein langer Code erzeugt wird. Diese Anordnung geschieht über einen weiteren speziellen Code, einem LDPC-Code, welcher für eine schneller Fehlererkennung konzipiert ist. Hierfür wird ein neues Konstruktionsverfahren vorgestellt, welches einen Code für einen beliebige Länge mit vorgebbaren beliebigen Anzahl der zu korrigierenden Fehler vorgibt. Das vorgestellte Konstruktionsverfahren erzeugt zusätzlich zum schnellen Verfahren der Fehlererkennung auch eine leicht und schnelle Ableitung eines Verfahrens zu Kodierung der Nachricht zum Codewort. Dies ist in der Literatur für die LDPC-Codes bis zum jetzigen Zeitpunkt einmalig. Durch die Konstruktion eines LDPC-Codes wird ein Verfahren vorgestellt wie dies mit einem BCH-Code kombiniert wird, wodurch eine Anordnung des BCH-Codes in Blöcken erzeugt wird. Neben der allgemeinen Beschreibung dieses Codes, wird ein konkreter Code für eine 2-Bitfehlerkorrektur beschrieben. Diese besteht aus zwei Teilen, welche in verschiedene Varianten beschrieben und verglichen werden. Für bestimmte Längen des BCH-Codes wird ein Problem bei der Korrektur aufgezeigt, welche einer algebraischen Regel folgt. Der BCH-Code wird sehr allgemein beschrieben, doch existiert durch bestimmte Voraussetzungen ein BCH-Code im engerem Sinne, welcher den Standard vorgibt. Dieser BCH-Code im engerem Sinne wird in dieser Dissertation modifiziert, so dass das algebraische Problem bei der 2-Bitfehler Korrektur bei der Kombination mit dem LDPC-Code nicht mehr existiert. Es wird gezeigt, dass nach der Modifikation der neue Code weiterhin ein BCH-Code im allgemeinen Sinne ist, welcher 2-Bitfehler korrigieren und 3-Bitfehler erkennen kann. Bei der technischen Umsetzung der Fehlerkorrektur wird des Weiteren gezeigt, dass die Durchlaufzeiten des modifizierten Codes im Vergleich zum BCH-Code schneller ist und weiteres Potential für Verbesserungen besitzt. Im letzten Kapitel wird gezeigt, dass sich dieser modifizierte Code mit beliebiger Länge eignet für die Kombination mit dem LDPC-Code, wodurch dieses Verfahren nicht nur umfänglicher in der Länge zu nutzen ist, sondern auch durch die schnellere Dekodierung auch weitere Vorteile gegenüber einem BCH-Code im engerem Sinne besitzt. N2 - Error correction in coding theory is concerned with the detection and correction of errors in the transmission and also securing of messages. For this purpose a message is coded into a code word by means of additional information. These coding methods have different requirements, such as the maximum number of errors to be corrected and the speed of correction. A common coding method is the BCH code, which is used industrially for codes that can be corrected for up to 4-bit errors. A disadvantage of these codes is the run-time for calculating the error positions with increasing code length. The dissertation presents a new coding method in which a long code is generated by a special arrangement of smaller code lengths of a BCH code. This arrangement is done by means of another special code, an LDPC code, which is designed for faster fault detection. For this purpose, a new construction method for LDPC codes is presented, which specifies a code of any length with a predeterminable arbitrary number of errors to be corrected. In addition to the fast method of error detection, the presented construction method also generates an easy and fast derivation of a method for coding the message to the code word. This is unique in the literature for LDPC codes up to now. With the construction of an LDPC code a procedure is presented which combines the code with a BCH code, whereby an arrangement of the BCH code in blocks is done. Besides the general description of this code, the concrete code for a 2-bit error correction is described. This consists of two parts, which are described and compared in different variants. For certain lengths of the BCH code a correction problem is shown, which follows an algebraic rule. The BCH code is described in a very general way, but due to certain conditions a BCH code in a narrower sense exists, which sets the standard. This BCH code in a narrower sense is modified in this dissertation, so that the algebraic problem in 2-bit error correction, when combined with the LDPC code, no longer exists. It is shown that after the modification the new code is still a BCH code in the general sense, which can correct 2-bit errors and detect 3-bit errors. In the technical implementation of the error correction it is shown that the processing times of the modified code are faster compared to the BCH code and have further potential for improvement. In the last chapter it is shown that the modified code of any length is suitable for combination with the LDPC code, according to the procedure already presented. Thus this procedure, the combination of the modified BCH code with the LDPC code, is not only more comprehensively usable in the code lengths compared to the BCH code in the narrower sense with the LDPC code, but offers a further advantage due to the faster decoding with modified BCH codes. T2 - Error correction of memory errors with Low-density parity-check codes KW - Codierungstheorie KW - LDPC-Code KW - BCH-Code KW - BCH code KW - Coding theory KW - LDPC code Y1 - 2020 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-480480 ER - TY - THES A1 - Morozov, Alexei T1 - Optimierung von Fehlererkennungsschaltungen auf der Grundlage von komplementären Ergänzungen für 1-aus-3 und Berger Codes T1 - Optimisation of Error-Detection Circuits by Complementary Circuits for 1-out-of-3 and Berger Codes N2 - Die Dissertation stellt eine neue Herangehensweise an die Lösung der Aufgabe der funktionalen Diagnostik digitaler Systeme vor. In dieser Arbeit wird eine neue Methode für die Fehlererkennung vorgeschlagen, basierend auf der Logischen Ergänzung und der Verwendung von Berger-Codes und dem 1-aus-3 Code. Die neue Fehlererkennungsmethode der Logischen Ergänzung gestattet einen hohen Optimierungsgrad der benötigten Realisationsfläche der konstruierten Fehlererkennungsschaltungen. Außerdem ist eins der wichtigen in dieser Dissertation gelösten Probleme die Synthese vollständig selbstprüfender Schaltungen. N2 - In this dissertation concurrent checking by use of a complementary circuit for an 1-out-of-n Codes and Berger-Code is investigated. For an arbitrarily given combinational circuit necessary and sufficient conditions for the existence of a totally self-checking checker are derived for the first time. KW - logische Ergänzung KW - neue Online-Fehlererkennungsmethode KW - selbstprüfende Schaltungen KW - Complementary Circuits KW - New On-Line Error-Detection Methode KW - Error-Detection Circuits KW - Self-Checking Circuits Y1 - 2005 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-5360 ER - TY - GEN A1 - Fandiño, Jorge T1 - Founded (auto)epistemic equilibrium logic satisfies epistemic splitting T2 - Postprints der Universität Potsdam : Mathematisch-Naturwissenschaftliche Reihe N2 - In a recent line of research, two familiar concepts from logic programming semantics (unfounded sets and splitting) were extrapolated to the case of epistemic logic programs. The property of epistemic splitting provides a natural and modular way to understand programs without epistemic cycles but, surprisingly, was only fulfilled by Gelfond's original semantics (G91), among the many proposals in the literature. On the other hand, G91 may suffer from a kind of self-supported, unfounded derivations when epistemic cycles come into play. Recently, the absence of these derivations was also formalised as a property of epistemic semantics called foundedness. Moreover, a first semantics proved to satisfy foundedness was also proposed, the so-called Founded Autoepistemic Equilibrium Logic (FAEEL). In this paper, we prove that FAEEL also satisfies the epistemic splitting property something that, together with foundedness, was not fulfilled by any other approach up to date. To prove this result, we provide an alternative characterisation of FAEEL as a combination of G91 with a simpler logic we called Founded Epistemic Equilibrium Logic (FEEL), which is somehow an extrapolation of the stable model semantics to the modal logic S5. T3 - Zweitveröffentlichungen der Universität Potsdam : Mathematisch-Naturwissenschaftliche Reihe - 1060 KW - answer set programming KW - epistemic specifications KW - epistemic logic programs Y1 - 2020 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-469685 SN - 1866-8372 IS - 1060 SP - 671 EP - 687 ER - TY - GEN A1 - Aguado, Felicidad A1 - Cabalar, Pedro A1 - Fandiño, Jorge A1 - Pearce, David A1 - Perez, Gilberto A1 - Vidal, Concepcion T1 - Revisiting explicit negation in answer set programming T2 - Postprints der Universität Potsdam : Mathematisch-Naturwissenschaftliche Reihe N2 - A common feature in Answer Set Programming is the use of a second negation, stronger than default negation and sometimes called explicit, strong or classical negation. This explicit negation is normally used in front of atoms, rather than allowing its use as a regular operator. In this paper we consider the arbitrary combination of explicit negation with nested expressions, as those defined by Lifschitz, Tang and Turner. We extend the concept of reduct for this new syntax and then prove that it can be captured by an extension of Equilibrium Logic with this second negation. We study some properties of this variant and compare to the already known combination of Equilibrium Logic with Nelson's strong negation. T3 - Zweitveröffentlichungen der Universität Potsdam : Mathematisch-Naturwissenschaftliche Reihe - 1104 KW - Answer Set Programming KW - non-monotonic reasoning KW - Equilibrium logic KW - explicit negation Y1 - 2021 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-469697 SN - 1866-8372 IS - 1104 SP - 908 EP - 924 ER - TY - THES A1 - Frank, Mario T1 - On synthesising Linux kernel module components from Coq formalisations T1 - Über die Synthese von Linux Kernel- Modul-Komponenten aus Coq-Formalisierungen N2 - This thesis presents an attempt to use source code synthesised from Coq formalisations of device drivers for existing (micro)kernel operating systems, with a particular focus on the Linux Kernel. In the first part, the technical background and related work are described. The focus is here on the possible approaches to synthesising certified software with Coq, namely the extraction to functional languages using the Coq extraction plugin and the extraction to Clight code using the CertiCoq plugin. It is noted that the implementation of CertiCoq is verified, whereas this is not the case for the Coq extraction plugin. Consequently, there is a correctness guarantee for the generated Clight code which does not hold for the code being generated by the Coq extraction plugin. Furthermore, the differences between user space and kernel space software are discussed in relation to Linux device drivers. It is elaborated that it is not possible to generate working Linux kernel module components using the Coq extraction plugin without significant modifications. In contrast, it is possible to produce working user space drivers both with the Coq extraction plugin and CertiCoq. The subsequent parts describe the main contributions of the thesis. In the second part, it is demonstrated how to extend the Coq extraction plugin to synthesise foreign function calls between the functional language OCaml and the imperative language C. This approach has the potential to improve the type-safety of user space drivers. Furthermore, it is shown that the code being synthesised by CertiCoq cannot be used in kernel space without modifications to the necessary runtime. Consequently, the necessary modifications to the runtimes of CertiCoq and VeriFFI are introduced, resulting in the runtimes becoming compatible components of a Linux kernel module. Furthermore, justifications for the transformations are provided and possible further extensions to both plugins and solutions to failing garbage collection calls in kernel space are discussed. The third part presents a proof of concept device driver for the Linux Kernel. To achieve this, the event handler of the original PC Speaker driver is partially formalised in Coq. Furthermore, some relevant formal properties of the formalised functionality are discussed. Subsequently, a kernel module is defined, utilising the modified variants of CertiCoq and VeriFFI to compile a working device driver. It is furthermore shown that it is possible to compile the synthesised code with CompCert, thereby extending the guarantee of correctness to the assembly layer. This is followed by a performance evaluation that compares a naive formalisation of the PC speaker functionality with the original PC Speaker driver pointing out the weaknesses in the formalisation and possible improvements. The part closes with a summary of the results, their implications and open questions being raised. The last part lists all used sources, separated into scientific literature, documentations or reference manuals and artifacts, i.e. source code. N2 - Die vorliegende Dissertation präsentiert einen Ansatz zur Nutzung von Quellcode, der aus der Coq-Formalisierung eines Gerätetreibers generiert wurde, für bestehende (Mikrokernel-)Betriebssysteme, im Speziellen den Linux-Kernel. Im ersten Teil erfolgt eine Beschreibung der relevanten technischen Aspekte sowie des aktuellen Forschungsstandes. Dabei liegt der Fokus auf der Synthese von funktionalem Code durch das Coq Extraction Plugin und von Clight Code durch das CertiCoq Plugin. Des Weiteren wird dargelegt, dass die Implementierung von CertiCoq im Gegensatz zu der des Coq Extraction Plugin verifiziert ist, wodurch sich eine Korrektheitsgarantie für den generierten Clight Code ableiten lässt. Darüber hinaus werden die Unterschiede zwischen User Space und Kernel Space Software in Bezug auf Linux-Treiber erörtert. Unter Berücksichtigung der technischen Einschränkungen wird dargelegt, dass der durch das Coq Extraction Plugin generierte Code ohne gravierende Anpassungen der Laufzeitumgebung nicht als Teil eines Kernel Space Treibers nutzbar ist. Die nachfolgenden Teile der Dissertation behandeln den Beitrag dieser Arbeit. Im zweiten Teil wird dargelegt, wie das Coq Extraction Plugin derart erweitert werden kann, dass typsichere Aufrufe zwischen den Sprachen OCaml und C generiert werden können. Dies verhindert spezifische Kompilationsfehler aufgrund von Typfehlern. Des Weiteren wird aufgezeigt, dass der durch CertiCoq generierte Code ebenfalls nicht im Kernel Space genutzt werden kann, da die Laufzeitumgebung technische Einschränkungen verletzt. Daher werden die notwendigen Anpassungen an der vergleichsweise kleinen Laufzeitumgebung sowie an VeriFFI vorgestellt und deren Korrektheit begründet. Anschließend werden mögliche Erweiterungen beider Plugins sowie die Möglichkeit der Behandlung von fehlschlagenden Aufrufen der Garbage Collection von CertiCoq im Kernel Space erörtert. Im dritten Teil wird als Machbarkeitsstudie im ersten Schritt der Event-Handler des Linux PC Speaker Treibers beschrieben und eine naive Coq-Formalisierung sowie wichtige formale Eigenschaften dargelegt. Dann wird beschrieben, wie ein Kernel-Modul und dessen Kompilation definiert werden muss, um einen lauffähigen Linux Kernel Treiber zu erhalten. Des Weiteren wird erläutert, wie die generierten Teile dieses Treibers mit dem verifizierten Kompiler CompCert übersetzt werden können, wodurch auch eine Korrektheit für den resultierenden Assembler-Code gilt. Im Anschluss erfolgt eine Evaluierung der Performance des aus der naiven Coq-Formalisierung generierten Codes im Vergleich zum originalen PC-Speaker Treiber. Dabei werden die Schwächen der Formalisierung sowie mögliche Verbesserungen diskutiert. Der Teil wird mit einer Zusammenfassung der Ergebnisse sowie der daraus resultierenden offenen Fragen abgeschlossen. Der letzte Teil gibt eine Übersicht über genutzte Quellen und Hilfsmittel, unterteilt in wissenschaftliche Literatur, Dokumentationen sowie Software-Artefakte. KW - Linux device drivers KW - Coq KW - CertiCoq KW - synthesis KW - compilation KW - Geräte-Treiber KW - Linux KW - Coq KW - CertiCoq KW - Synthese KW - Kompilation Y1 - 2024 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-642558 ER - TY - THES A1 - Ziemann, Felix T1 - Entwicklung und Evaluation einer prototypischen Lernumgebung für das systematische Debugging logischer Fehler in Quellcode T1 - Development and evaluation of a prototype learning environment designed for the systematic debugging of logical errors in source code N2 - Wo programmiert wird, da passieren Fehler. Um das Debugging, also die Suche sowie die Behebung von Fehlern in Quellcode, stärker explizit zu adressieren, verfolgt die vorliegende Arbeit das Ziel, entlang einer prototypischen Lernumgebung sowohl ein systematisches Vorgehen während des Debuggings zu vermitteln als auch Gestaltungsfolgerungen für ebensolche Lernumgebungen zu identifizieren. Dazu wird die folgende Forschungsfrage gestellt: Wie verhalten sich die Lernenden während des kurzzeitigen Gebrauchs einer Lernumgebung nach dem Cognitive Apprenticeship-Ansatz mit dem Ziel der expliziten Vermittlung eines systematischen Debuggingvorgehens und welche Eindrücke entstehen während der Bearbeitung? Zur Beantwortung dieser Forschungsfrage wurde orientierend an literaturbasierten Implikationen für die Vermittlung von Debugging und (medien-)didaktischen Gestaltungsaspekten eine prototypische Lernumgebung entwickelt und im Rahmen einer qualitativen Nutzerstudie mit Bachelorstudierenden informatischer Studiengänge erprobt. Hierbei wurden zum einen anwendungsbezogene Verbesserungspotenziale identifiziert. Zum anderen zeigte sich insbesondere gegenüber der Systematisierung des Debuggingprozesses innerhalb der Aufgabenbearbeitung eine positive Resonanz. Eine Untersuchung, inwieweit sich die Nutzung der Lernumgebung längerfristig auf das Verhalten von Personen und ihre Vorgehensweisen während des Debuggings auswirkt, könnte Gegenstand kommender Arbeiten sein. N2 - Errors are inevitable in programming, making effective debugging crucial in software development. This study aims to develop a prototype learning environment that teaches a systematic approach to debugging while identifying design conclusions for such learning environments. The research question asks: How do learners behave during short-term use of a learning environment according to the Cognitive Apprenticeship approach, with the explicit aim of teaching a systematic debugging procedure, and what impressions arise during processing? A prototype learning environment was developed and tested in a qualitative user study with undergraduate students of computer science. The results reveal potential for improvement in the application-related aspects of the learning environment, alongside a positive response to the systematic approach to the debugging process during task processing. Future work could further investigate the long-term effects of such learning environments on debugging behavior. KW - Debugging KW - systematisch KW - Lernumgebung KW - Prototyp KW - logische Fehler KW - Cognitive Apprenticeship KW - Konstruktivismus KW - lautes Denken KW - debugging KW - systematic KW - learning environment KW - prototype KW - logical errors KW - cognitive apprenticeship KW - constructivism KW - think aloud Y1 - 2024 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-632734 ER - TY - THES A1 - Lindauer, T. Marius T1 - Algorithm selection, scheduling and configuration of Boolean constraint solvers N2 - Boolean constraint solving technology has made tremendous progress over the last decade, leading to industrial-strength solvers, for example, in the areas of answer set programming (ASP), the constraint satisfaction problem (CSP), propositional satisfiability (SAT) and satisfiability of quantified Boolean formulas (QBF). However, in all these areas, there exist multiple solving strategies that work well on different applications; no strategy dominates all other strategies. Therefore, no individual solver shows robust state-of-the-art performance in all kinds of applications. Additionally, the question arises how to choose a well-performing solving strategy for a given application; this is a challenging question even for solver and domain experts. One way to address this issue is the use of portfolio solvers, that is, a set of different solvers or solver configurations. We present three new automatic portfolio methods: (i) automatic construction of parallel portfolio solvers (ACPP) via algorithm configuration,(ii) solving the $NP$-hard problem of finding effective algorithm schedules with Answer Set Programming (aspeed), and (iii) a flexible algorithm selection framework (claspfolio2) allowing for fair comparison of different selection approaches. All three methods show improved performance and robustness in comparison to individual solvers on heterogeneous instance sets from many different applications. Since parallel solvers are important to effectively solve hard problems on parallel computation systems (e.g., multi-core processors), we extend all three approaches to be effectively applicable in parallel settings. We conducted extensive experimental studies different instance sets from ASP, CSP, MAXSAT, Operation Research (OR), SAT and QBF that indicate an improvement in the state-of-the-art solving heterogeneous instance sets. Last but not least, from our experimental studies, we deduce practical advice regarding the question when to apply which of our methods. N2 - Bool'sche Solver Technologie machte enormen Fortschritt im letzten Jahrzehnt, was beispielsweise zu industrie-relevanten Solvern auf der Basis von Antwortmengenprogrammierung (ASP), dem Constraint Satisfcation Problem (CSP), dem Erfüllbarkeitsproblem für aussagenlogische Formeln (SAT) und dem Erfüllbarkeitsproblem für quantifizierte boolesche Formeln (QBF) führte. Allerdings gibt es in all diesen Bereichen verschiedene Lösungsstrategien, welche bei verschiedenen Anwendungen unterschiedlich effizient sind. Dabei gibt es keine einzelne Strategie, die alle anderen Strategien dominiert. Das führt dazu, dass es keinen robusten Solver für das Lösen von allen möglichen Anwendungsprobleme gibt. Die Wahl der richtigen Strategie für eine neue Anwendung ist eine herausforderne Problemstellung selbst für Solver- und Anwendungsexperten. Eine Möglichkeit, um Solver robuster zu machen, sind Portfolio-Ansätze. Wir stellen drei automatisch einsetzbare Portfolio-Ansätze vor: (i) automatische Konstruktion von parallelen Portfolio-Solvern (ACPP) mit Algorithmen-Konfiguration, (ii) das Lösen des $NP$-harten Problems zur Algorithmen-Ablaufplanung (aspeed) mit ASP, und (iii) ein flexibles Algorithmen-Selektionsframework (claspfolio2), was viele Techniken von Algorithmen-Selektion parametrisiert implementiert und eine faire Vergleichbarkeit zwischen Ihnen erlaubt. Alle drei Methoden verbessern die Robustheit des Solvingprozesses für heterogenen Instanzmengen bestehend aus unterschiedlichsten Anwendungsproblemen. Parallele Solver sind zunehmend der Schlüssel zum effektiven Lösen auf multi-core Maschinen. Daher haben wir all unsere Ansätze auch für den Einsatz auf parallelen Architekturen erweitert. Umfangreiche Experimente auf ASP, CSP, MAXSAT, Operation Research (OR), SAT und QBF zeigen, dass der Stand der Technik durch verbesserte Performanz auf heterogenen Instanzmengen verbessert wurde. Auf Grundlage dieser Experimente leiten wir auch Ratschläge ab, in welchen Anwendungsszenarien welches unserer Verfahren angewendet werden sollte. T2 - Algorithmen-Selektion, -Ablaufplanung und -Konfiguration von Bool'schen Constraint Solvern KW - algorithm configuration KW - algorithm scheduling KW - algorithm selection KW - parallel solving KW - Boolean constraint solver KW - Algorithmenselektion KW - Algorithmenablaufplanung KW - Algorithmenkonfiguration KW - paralleles Lösen Y1 - 2014 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-71260 ER - TY - THES A1 - Flöter, André T1 - Analyzing biological expression data based on decision tree induction T1 - Analyse biologischer Expressionsdaten mit Hilfe von Entscheidungsbauminduktion N2 - Modern biological analysis techniques supply scientists with various forms of data. One category of such data are the so called "expression data". These data indicate the quantities of biochemical compounds present in tissue samples. Recently, expression data can be generated at a high speed. This leads in turn to amounts of data no longer analysable by classical statistical techniques. Systems biology is the new field that focuses on the modelling of this information. At present, various methods are used for this purpose. One superordinate class of these meth­ods is machine learning. Methods of this kind had, until recently, predominantly been used for classification and prediction tasks. This neglected a powerful secondary benefit: the ability to induce interpretable models. Obtaining such models from data has become a key issue within Systems biology. Numerous approaches have been proposed and intensively discussed. This thesis focuses on the examination and exploitation of one basic technique: decision trees. The concept of comparing sets of decision trees is developed. This method offers the pos­sibility of identifying significant thresholds in continuous or discrete valued attributes through their corresponding set of decision trees. Finding significant thresholds in attributes is a means of identifying states in living organisms. Knowing about states is an invaluable clue to the un­derstanding of dynamic processes in organisms. Applied to metabolite concentration data, the proposed method was able to identify states which were not found with conventional techniques for threshold extraction. A second approach exploits the structure of sets of decision trees for the discovery of com­binatorial dependencies between attributes. Previous work on this issue has focused either on expensive computational methods or the interpretation of single decision trees ­ a very limited exploitation of the data. This has led to incomplete or unstable results. That is why a new method is developed that uses sets of decision trees to overcome these limitations. Both the introduced methods are available as software tools. They can be applied consecu­tively or separately. That way they make up a package of analytical tools that usefully supplement existing methods. By means of these tools, the newly introduced methods were able to confirm existing knowl­edge and to suggest interesting and new relationships between metabolites. N2 - Neuere biologische Analysetechniken liefern Forschern verschiedenste Arten von Daten. Eine Art dieser Daten sind die so genannten "Expressionsdaten". Sie geben die Konzentrationen biochemischer Inhaltsstoffe in Gewebeproben an. Neuerdings können Expressionsdaten sehr schnell erzeugt werden. Das führt wiederum zu so großen Datenmengen, dass sie nicht mehr mit klassischen statistischen Verfahren analysiert werden können. "System biology" ist eine neue Disziplin, die sich mit der Modellierung solcher Information befasst. Zur Zeit werden dazu verschiedenste Methoden benutzt. Eine Superklasse dieser Methoden ist das maschinelle Lernen. Dieses wurde bis vor kurzem ausschließlich zum Klassifizieren und zum Vorhersagen genutzt. Dabei wurde eine wichtige zweite Eigenschaft vernachlässigt, nämlich die Möglichkeit zum Erlernen von interpretierbaren Modellen. Die Erstellung solcher Modelle hat mittlerweile eine Schlüsselrolle in der "Systems biology" erlangt. Es sind bereits zahlreiche Methoden dazu vorgeschlagen und diskutiert worden. Die vorliegende Arbeit befasst sich mit der Untersuchung und Nutzung einer ganz grundlegenden Technik: den Entscheidungsbäumen. Zunächst wird ein Konzept zum Vergleich von Baummengen entwickelt, welches das Erkennen bedeutsamer Schwellwerte in reellwertigen Daten anhand ihrer zugehörigen Entscheidungswälder ermöglicht. Das Erkennen solcher Schwellwerte dient dem Verständnis von dynamischen Abläufen in lebenden Organismen. Bei der Anwendung dieser Technik auf metabolische Konzentrationsdaten wurden bereits Zustände erkannt, die nicht mit herkömmlichen Techniken entdeckt werden konnten. Ein zweiter Ansatz befasst sich mit der Auswertung der Struktur von Entscheidungswäldern zur Entdeckung von kombinatorischen Abhängigkeiten zwischen Attributen. Bisherige Arbeiten hierzu befassten sich vornehmlich mit rechenintensiven Verfahren oder mit einzelnen Entscheidungsbäumen, eine sehr eingeschränkte Ausbeutung der Daten. Das führte dann entweder zu unvollständigen oder instabilen Ergebnissen. Darum wird hier eine Methode entwickelt, die Mengen von Entscheidungsbäumen nutzt, um diese Beschränkungen zu überwinden. Beide vorgestellten Verfahren gibt es als Werkzeuge für den Computer, die entweder hintereinander oder einzeln verwendet werden können. Auf diese Weise stellen sie eine sinnvolle Ergänzung zu vorhandenen Analyswerkzeugen dar. Mit Hilfe der bereitgestellten Software war es möglich, bekanntes Wissen zu bestätigen und interessante neue Zusammenhänge im Stoffwechsel von Pflanzen aufzuzeigen. KW - Molekulare Bioinformatik KW - Maschinelles Lernen KW - Entscheidungsbäume KW - machine learning KW - decision trees KW - computational biology Y1 - 2005 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-6416 ER - TY - THES A1 - Gebser, Martin T1 - Proof theory and algorithms for answer set programming T1 - Beweistheorie und Algorithmen für die Antwortmengenprogrammierung N2 - Answer Set Programming (ASP) is an emerging paradigm for declarative programming, in which a computational problem is specified by a logic program such that particular models, called answer sets, match solutions. ASP faces a growing range of applications, demanding for high-performance tools able to solve complex problems. ASP integrates ideas from a variety of neighboring fields. In particular, automated techniques to search for answer sets are inspired by Boolean Satisfiability (SAT) solving approaches. While the latter have firm proof-theoretic foundations, ASP lacks formal frameworks for characterizing and comparing solving methods. Furthermore, sophisticated search patterns of modern SAT solvers, successfully applied in areas like, e.g., model checking and verification, are not yet established in ASP solving. We address these deficiencies by, for one, providing proof-theoretic frameworks that allow for characterizing, comparing, and analyzing approaches to answer set computation. For another, we devise modern ASP solving algorithms that integrate and extend state-of-the-art techniques for Boolean constraint solving. We thus contribute to the understanding of existing ASP solving approaches and their interconnections as well as to their enhancement by incorporating sophisticated search patterns. The central idea of our approach is to identify atomic as well as composite constituents of a propositional logic program with Boolean variables. This enables us to describe fundamental inference steps, and to selectively combine them in proof-theoretic characterizations of various ASP solving methods. In particular, we show that different concepts of case analyses applied by existing ASP solvers implicate mutual exponential separations regarding their best-case complexities. We also develop a generic proof-theoretic framework amenable to language extensions, and we point out that exponential separations can likewise be obtained due to case analyses on them. We further exploit fundamental inference steps to derive Boolean constraints characterizing answer sets. They enable the conception of ASP solving algorithms including search patterns of modern SAT solvers, while also allowing for direct technology transfers between the areas of ASP and SAT solving. Beyond the search for one answer set of a logic program, we address the enumeration of answer sets and their projections to a subvocabulary, respectively. The algorithms we develop enable repetition-free enumeration in polynomial space without being intrusive, i.e., they do not necessitate any modifications of computations before an answer set is found. Our approach to ASP solving is implemented in clasp, a state-of-the-art Boolean constraint solver that has successfully participated in recent solver competitions. Although we do here not address the implementation techniques of clasp or all of its features, we present the principles of its success in the context of ASP solving. N2 - Antwortmengenprogrammierung (engl. Answer Set Programming; ASP) ist ein Paradigma zum deklarativen Problemlösen, wobei Problemstellungen durch logische Programme beschrieben werden, sodass bestimmte Modelle, Antwortmengen genannt, zu Lösungen korrespondieren. Die zunehmenden praktischen Anwendungen von ASP verlangen nach performanten Werkzeugen zum Lösen komplexer Problemstellungen. ASP integriert diverse Konzepte aus verwandten Bereichen. Insbesondere sind automatisierte Techniken für die Suche nach Antwortmengen durch Verfahren zum Lösen des aussagenlogischen Erfüllbarkeitsproblems (engl. Boolean Satisfiability; SAT) inspiriert. Letztere beruhen auf soliden beweistheoretischen Grundlagen, wohingegen es für ASP kaum formale Systeme gibt, um Lösungsmethoden einheitlich zu beschreiben und miteinander zu vergleichen. Weiterhin basiert der Erfolg moderner Verfahren zum Lösen von SAT entscheidend auf fortgeschrittenen Suchtechniken, die in gängigen Methoden zur Antwortmengenberechnung nicht etabliert sind. Diese Arbeit entwickelt beweistheoretische Grundlagen und fortgeschrittene Suchtechniken im Kontext der Antwortmengenberechnung. Unsere formalen Beweissysteme ermöglichen die Charakterisierung, den Vergleich und die Analyse vorhandener Lösungsmethoden für ASP. Außerdem entwerfen wir moderne Verfahren zum Lösen von ASP, die fortgeschrittene Suchtechniken aus dem SAT-Bereich integrieren und erweitern. Damit trägt diese Arbeit sowohl zum tieferen Verständnis von Lösungsmethoden für ASP und ihrer Beziehungen untereinander als auch zu ihrer Verbesserung durch die Erschließung fortgeschrittener Suchtechniken bei. Die zentrale Idee unseres Ansatzes besteht darin, Atome und komposite Konstrukte innerhalb von logischen Programmen gleichermaßen mit aussagenlogischen Variablen zu assoziieren. Dies ermöglicht die Isolierung fundamentaler Inferenzschritte, die wir in formalen Charakterisierungen von Lösungsmethoden für ASP selektiv miteinander kombinieren können. Darauf aufbauend zeigen wir, dass unterschiedliche Einschränkungen von Fallunterscheidungen zwangsläufig zu exponentiellen Effizienzunterschieden zwischen den charakterisierten Methoden führen. Wir generalisieren unseren beweistheoretischen Ansatz auf logische Programme mit erweiterten Sprachkonstrukten und weisen analytisch nach, dass das Treffen bzw. Unterlassen von Fallunterscheidungen auf solchen Konstrukten ebenfalls exponentielle Effizienzunterschiede bedingen kann. Die zuvor beschriebenen fundamentalen Inferenzschritte nutzen wir zur Extraktion inhärenter Bedingungen, denen Antwortmengen genügen müssen. Damit schaffen wir eine Grundlage für den Entwurf moderner Lösungsmethoden für ASP, die fortgeschrittene, ursprünglich für SAT konzipierte, Suchtechniken mit einschließen und darüber hinaus einen transparenten Technologietransfer zwischen Verfahren zum Lösen von ASP und SAT erlauben. Neben der Suche nach einer Antwortmenge behandeln wir ihre Aufzählung, sowohl für gesamte Antwortmengen als auch für Projektionen auf ein Subvokabular. Hierfür entwickeln wir neuartige Methoden, die wiederholungsfreies Aufzählen in polynomiellem Platz ermöglichen, ohne die Suche zu beeinflussen und ggf. zu behindern, bevor Antwortmengen berechnet wurden. KW - Wissensrepräsentation und -verarbeitung KW - Antwortmengenprogrammierung KW - Beweistheorie KW - Algorithmen KW - Knowledge Representation and Reasoning KW - Answer Set Programming KW - Proof Theory KW - Algorithms Y1 - 2011 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-55425 ER - TY - THES A1 - Ostrowski, Max T1 - Modern constraint answer set solving T1 - Moderne Constraint Antwortmengenprogrammierung N2 - Answer Set Programming (ASP) is a declarative problem solving approach, combining a rich yet simple modeling language with high-performance solving capabilities. Although this has already resulted in various applications, certain aspects of such applications are more naturally modeled using variables over finite domains, for accounting for resources, fine timings, coordinates, or functions. Our goal is thus to extend ASP with constraints over integers while preserving its declarative nature. This allows for fast prototyping and elaboration tolerant problem descriptions of resource related applications. The resulting paradigm is called Constraint Answer Set Programming (CASP). We present three different approaches for solving CASP problems. The first one, a lazy, modular approach combines an ASP solver with an external system for handling constraints. This approach has the advantage that two state of the art technologies work hand in hand to solve the problem, each concentrating on its part of the problem. The drawback is that inter-constraint dependencies cannot be communicated back to the ASP solver, impeding its learning algorithm. The second approach translates all constraints to ASP. Using the appropriate encoding techniques, this results in a very fast, monolithic system. Unfortunately, due to the large, explicit representation of constraints and variables, translation techniques are restricted to small and mid-sized domains. The third approach merges the lazy and the translational approach, combining the strength of both while removing their weaknesses. To this end, we enhance the dedicated learning techniques of an ASP solver with the inferences of the translating approach in a lazy way. That is, the important knowledge is only made explicit when needed. By using state of the art techniques from neighboring fields, we provide ways to tackle real world, industrial size problems. By extending CASP to reactive solving, we open up new application areas such as online planning with continuous domains and durations. N2 - Die Antwortmengenprogrammierung (ASP) ist ein deklarativer Ansatz zur Problemlösung. Eine ausdrucksstarke Modellierungssprache erlaubt es, Probleme einfach und flexibel zu beschreiben. Durch sehr effiziente Problemlösungstechniken, konnten bereits verschiedene Anwendungsgebiete erschlossen werden. Allerdings lassen sich Probleme mit Ressourcen besser mit Gleichungen über Ganze oder Reelle Zahlen lösen, anstatt mit reiner Boolescher Logik. In dieser Arbeit erweitern wir ASP mit Arithmetik über Ganze Zahlen zu Constraint Answer Set Programming (CASP). Unser Hauptaugenmerk liegt dabei auf der Erweiterung der Modellierungssprache mit Arithmetik, ohne Performanz oder Flexibilität einzubüßen. In einem ersten, bedarfsgesteuertem, modularen Ansatz kombinieren wir einen ASP Solver mit einem externen System zur Lösung von ganzzahligen Gleichungen. Der Vorteil dieses Ansatzes besteht darin, dass zwei verschiedene Technologien Hand in Hand arbeiten, wobei jede nur ihren Teil des Problems betrachten muss. Ein Nachteil der sich daraus ergibt ist jedoch, dass Abhängigkeiten zwischen den Gleichungen nicht an den ASP Solver kommuniziert werden können. Das beeinträchtigt die Lernfähigkeit des zu Grunde liegenden Algorithmus. Der zweite von uns verfolgte Ansatz übersetzt die ganzzahligen Gleichungen direkt nach ASP. Durch entsprechende Kodierungstechniken erhält man ein sehr effizientes, monolithisches System. Diese Übersetzung erfordert eine explizite Darstellung aller Variablen und Gleichungen. Daher ist dieser Ansatz nur für kleine bis mittlere Wertebereiche geeignet. Die dritte Methode, die wir in dieser Arbeit vorstellen, vereinigt die Vorteile der beiden vorherigen Ansätze und überwindet ihre Kehrseiten. Wir entwickeln einen lernenden Algorithmus, der die Arithmetik implizit lässt. Dies befreit uns davon, eine möglicherweise riesige Menge an Variablen und Formeln zu speichern, und erlaubt es uns gleichzeitig dieses Wissen zu nutzen. Das Ziel dieser Arbeit ist es, durch die Kombination hochmoderner Technologien, industrielle Anwendungsgebiete für ASP zu erschliessen. Die verwendeten Techniken erlauben eine Erweiterung von CASP mit reaktiven Elementen. Das heißt, dass das Lösen des Problems ein interaktiver Prozess wird. Das Problem kann dabei ständig verändert und erweitert werden, ohne dass Informationen verloren gehen oder neu berechnet werden müssen. Dies eröffnet uns neue Möglichkeiten, wie zum Beispiel reaktives Planen mit Ressourcen und Zeiten. KW - ASP (Answer Set Programming) KW - CASP (Constraint Answer Set Programming) KW - constraints KW - hybrid KW - SMT (SAT Modulo Theories) KW - Antwortmengenprogrammierung KW - hybrides Problemlösen Y1 - 2018 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-407799 ER - TY - THES A1 - Videla, Santiago T1 - Reasoning on the response of logical signaling networks with answer set programming T1 - Modellierung Logischer Signalnetzwerke mittels Antwortmengenprogrammierung N2 - Deciphering the functioning of biological networks is one of the central tasks in systems biology. In particular, signal transduction networks are crucial for the understanding of the cellular response to external and internal perturbations. Importantly, in order to cope with the complexity of these networks, mathematical and computational modeling is required. We propose a computational modeling framework in order to achieve more robust discoveries in the context of logical signaling networks. More precisely, we focus on modeling the response of logical signaling networks by means of automated reasoning using Answer Set Programming (ASP). ASP provides a declarative language for modeling various knowledge representation and reasoning problems. Moreover, available ASP solvers provide several reasoning modes for assessing the multitude of answer sets. Therefore, leveraging its rich modeling language and its highly efficient solving capacities, we use ASP to address three challenging problems in the context of logical signaling networks: learning of (Boolean) logical networks, experimental design, and identification of intervention strategies. Overall, the contribution of this thesis is three-fold. Firstly, we introduce a mathematical framework for characterizing and reasoning on the response of logical signaling networks. Secondly, we contribute to a growing list of successful applications of ASP in systems biology. Thirdly, we present a software providing a complete pipeline for automated reasoning on the response of logical signaling networks. N2 - Deciphering the functioning of biological networks is one of the central tasks in systems biology. In particular, signal transduction networks are crucial for the understanding of the cellular response to external and internal perturbations. Importantly, in order to cope with the complexity of these networks, mathematical and computational modeling is required. We propose a computational modeling framework in order to achieve more robust discoveries in the context of logical signaling networks. More precisely, we focus on modeling the response of logical signaling networks by means of automated reasoning using Answer Set Programming (ASP). ASP provides a declarative language for modeling various knowledge representation and reasoning problems. Moreover, available ASP solvers provide several reasoning modes for assessing the multitude of answer sets. Therefore, leveraging its rich modeling language and its highly efficient solving capacities, we use ASP to address three challenging problems in the context of logical signaling networks: learning of (Boolean) logical networks, experimental design, and identification of intervention strategies. Overall, the contribution of this thesis is three-fold. Firstly, we introduce a mathematical framework for characterizing and reasoning on the response of logical signaling networks. Secondly, we contribute to a growing list of successful applications of ASP in systems biology. Thirdly, we present a software providing a complete pipeline for automated reasoning on the response of logical signaling networks. KW - Systembiologie KW - logische Signalnetzwerke KW - Antwortmengenprogrammierung KW - systems biology KW - logical signaling networks KW - answer set programming Y1 - 2014 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-71890 ER - TY - THES A1 - Konczak, Kathrin T1 - Preferences in answer set programming T1 - Präferenzen in der Antwortmengenprogrammierung N2 - Answer Set Programming (ASP) emerged in the late 1990s as a new logic programming paradigm, having its roots in nonmonotonic reasoning, deductive databases, and logic programming with negation as failure. The basic idea of ASP is to represent a computational problem as a logic program whose answer sets correspond to solutions, and then to use an answer set solver for finding answer sets of the program. ASP is particularly suited for solving NP-complete search problems. Among these, we find applications to product configuration, diagnosis, and graph-theoretical problems, e.g. finding Hamiltonian cycles. On different lines of ASP research, many extensions of the basic formalism have been proposed. The most intensively studied one is the modelling of preferences in ASP. They constitute a natural and effective way of selecting preferred solutions among a plethora of solutions for a problem. For example, preferences have been successfully used for timetabling, auctioning, and product configuration. In this thesis, we concentrate on preferences within answer set programming. Among several formalisms and semantics for preference handling in ASP, we concentrate on ordered logic programs with the underlying D-, W-, and B-semantics. In this setting, preferences are defined among rules of a logic program. They select preferred answer sets among (standard) answer sets of the underlying logic program. Up to now, those preferred answer sets have been computed either via a compilation method or by meta-interpretation. Hence, the question comes up, whether and how preferences can be integrated into an existing ASP solver. To solve this question, we develop an operational graph-based framework for the computation of answer sets of logic programs. Then, we integrate preferences into this operational approach. We empirically observe that our integrative approach performs in most cases better than the compilation method or meta-interpretation. Another research issue in ASP are optimization methods that remove redundancies, as also found in database query optimizers. For these purposes, the rather recently suggested notion of strong equivalence for ASP can be used. If a program is strongly equivalent to a subprogram of itself, then one can always use the subprogram instead of the original program, a technique which serves as an effective optimization method. Up to now, strong equivalence has not been considered for logic programs with preferences. In this thesis, we tackle this issue and generalize the notion of strong equivalence to ordered logic programs. We give necessary and sufficient conditions for the strong equivalence of two ordered logic programs. Furthermore, we provide program transformations for ordered logic programs and show in how far preferences can be simplified. Finally, we present two new applications for preferences within answer set programming. First, we define new procedures for group decision making, which we apply to the problem of scheduling a group meeting. As a second new application, we reconstruct a linguistic problem appearing in German dialects within ASP. Regarding linguistic studies, there is an ongoing debate about how unique the rule systems of language are in human cognition. The reconstruction of grammatical regularities with tools from computer science has consequences for this debate: if grammars can be modelled this way, then they share core properties with other non-linguistic rule systems. N2 - Die Antwortmengenprogrammierung entwickelte sich in den späten 90er Jahren als neues Paradigma der logischen Programmierung und ist in den Gebieten des nicht-monotonen Schließens und der deduktiven Datenbanken verwurzelt. Dabei wird eine Problemstellung als logisches Programm repräsentiert, dessen Lösungen, die so genannten Antwortmengen, genau den Lösungen des ursprünglichen Problems entsprechen. Die Antwortmengenprogrammierung bildet ein geeignetes Fundament zur Repräsentation und zum Lösen von Entscheidungs- und Suchproblemen in der Komplexitätsklasse NP. Anwendungen finden wir unter anderem in der Produktkonfiguration, Diagnose und bei graphen-theoretischen Problemen, z.B. der Suche nach Hamiltonschen Kreisen. In den letzten Jahren wurden viele Erweiterungen der Antwortmengenprogrammierung betrachtet. Die am meisten untersuchte Erweiterung ist die Modellierung von Präferenzen. Diese bilden eine natürliche und effektive Möglichkeit, unter einer Vielzahl von Lösungen eines Problems bevorzugte Lösungen zu selektieren. Präferenzen finden beispielsweise in der Stundenplanung, bei Auktionen und bei Produktkonfigurationen ihre Anwendung. Der Schwerpunkt dieser Arbeit liegt in der Modellierung, Implementierung und Anwendung von Präferenzen in der Antwortmengenprogrammierung. Da es verschiedene Ansätze gibt, um Präferenzen darzustellen, konzentrieren wir uns auf geordnete logische Programme, wobei Präferenzen als partielle Ordnung der Regeln eines logischen Programms ausgedrückt werden. Dabei betrachten wir drei verschiedene Semantiken zur Interpretation dieser Präferenzen. Im Vorfeld wurden für diese Semantiken die bevorzugten Antwortmengen durch einen Compiler oder durch Meta-Interpretation berechnet. Da Präferenzen Lösungen selektieren, stellt sich die Frage, ob es möglich ist, diese direkt in den Berechnungsprozeß von präferenzierten Antwortmengen zu integrieren, so dass die bevorzugten Antwortmengen ohne Zwischenschritte berechnet werden können. Dazu entwickeln wir zuerst ein auf Graphen basierendes Gerüst zur Berechnung von Antwortmengen. Anschließend werden wir darin Präferenzen integrieren, so dass bevorzugte Antwortmengen ohne Compiler oder Meta-Interpretation berechnet werden. Es stellt sich heraus, dass die integrative Methode auf den meisten betrachteten Problemklassen wesentlich leistungsfähiger ist als der Compiler oder Meta-Interpretation. Ein weiterer Schwerpunkt dieser Arbeit liegt in der Frage, inwieweit sich geordnete logische Programme vereinfachen lassen. Dazu steht die Methodik der strengen Äquivalenz von logischen Programmen zur Verfügung. Wenn ein logisches Programm streng äquivalent zu einem seiner Teilprogramme ist, so kann man dieses durch das entsprechende Teilprogramm ersetzen, ohne dass sich die zugrunde liegende Semantik ändert. Bisher wurden strenge Äquivalenzen nicht für logische Programme mit Präferenzen untersucht. In dieser Arbeit definieren wir erstmalig strenge Äquivalenzen für geordnete logische Programme. Wir geben notwendige und hinreichende Bedingungen für die strenge Äquivalenz zweier geordneter logischer Programme an. Des Weiteren werden wir auch die Frage beantworten, inwieweit geordnete logische Programme und deren Präferenzstrukturen vereinfacht werden können. Abschließend präsentieren wir zwei neue Anwendungsbereiche von Präferenzen in der Antwortmengenprogrammierung. Zuerst definieren wir neue Prozeduren zur Entscheidungsfindung innerhalb von Gruppenprozessen. Diese integrieren wir anschließend in das Problem der Planung eines Treffens für eine Gruppe. Als zweite neue Anwendung rekonstruieren wir mit Hilfe der Antwortmengenprogrammierung eine linguistische Problemstellung, die in deutschen Dialekten auftritt. Momentan wird im Bereich der Linguistik darüber diskutiert, ob Regelsysteme von (menschlichen) Sprachen einzigartig sind oder nicht. Die Rekonstruktion von grammatikalischen Regularitäten mit Werkzeugen aus der Informatik erlaubt die Unterstützung der These, dass linguistische Regelsysteme Gemeinsamkeiten zu anderen nicht-linguistischen Regelsystemen besitzen. KW - Präferenzen KW - Antwortmengenprogrammierung KW - logische Programmierung KW - Künstliche Intelligenz KW - preferences KW - priorities KW - answer set programming KW - logic programming KW - artificial intelligence Y1 - 2007 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-12058 ER - TY - THES A1 - Thiele, Sven T1 - Modeling biological systems with Answer Set Programming T1 - Modellierung biologischer Systeme mit Answer Set Programming N2 - Biology has made great progress in identifying and measuring the building blocks of life. The availability of high-throughput methods in molecular biology has dramatically accelerated the growth of biological knowledge for various organisms. The advancements in genomic, proteomic and metabolomic technologies allow for constructing complex models of biological systems. An increasing number of biological repositories is available on the web, incorporating thousands of biochemical reactions and genetic regulations. Systems Biology is a recent research trend in life science, which fosters a systemic view on biology. In Systems Biology one is interested in integrating the knowledge from all these different sources into models that capture the interaction of these entities. By studying these models one wants to understand the emerging properties of the whole system, such as robustness. However, both measurements as well as biological networks are prone to considerable incompleteness, heterogeneity and mutual inconsistency, which makes it highly non-trivial to draw biologically meaningful conclusions in an automated way. Therefore, we want to promote Answer Set Programming (ASP) as a tool for discrete modeling in Systems Biology. ASP is a declarative problem solving paradigm, in which a problem is encoded as a logic program such that its answer sets represent solutions to the problem. ASP has intrinsic features to cope with incompleteness, offers a rich modeling language and highly efficient solving technology. We present ASP solutions, for the analysis of genetic regulatory networks, determining consistency with observed measurements and identifying minimal causes for inconsistency. We extend this approach for computing minimal repairs on model and data that restore consistency. This method allows for predicting unobserved data even in case of inconsistency. Further, we present an ASP approach to metabolic network expansion. This approach exploits the easy characterization of reachability in ASP and its various reasoning methods, to explore the biosynthetic capabilities of metabolic reaction networks and generate hypotheses for extending the network. Finally, we present the BioASP library, a Python library which encapsulates our ASP solutions into the imperative programming paradigm. The library allows for an easy integration of ASP solution into system rich environments, as they exist in Systems Biology. N2 - In den letzten Jahren wurden große Fortschritte bei der Identifikation und Messung der Bausteine des Lebens gemacht. Die Verfügbarkeit von Hochdurchsatzverfahren in der Molekularbiology hat das Anwachsen unseres biologischen Wissens dramatisch beschleunigt. Durch die technische Fortschritte in Genomic, Proteomic und Metabolomic wurde die Konstruktion komplexer Modelle biologischer Systeme ermöglicht. Immer mehr biologische Datenbanken sind über das Internet verfügbar, sie enthalten tausende Daten biochemischer Reaktionen und genetischer Regulation. System Biologie ist ein junger Forschungszweig der Biologie, der versucht Biologische Systeme in ihrer Ganzheit zu erforschen. Dabei ist man daran interessiert möglichst viel Wissen aus den unterschiedlichsten Bereichen in ein Modell zu aggregieren, welches das Zusammenwirken der verschiedensten Komponenten nachbildet. Durch das Studium derartiger Modelle erhofft man sich ein Verständnis der aufbauenden Eigenschaften, wie zum Beispiel Robustheit, des Systems zu erlangen. Es stellt sich jedoch die Problematik, das sowohl die biologischen Modelle als auch die verfügbaren Messwerte, oft unvollständig, miteinander unvereinbar oder fehlerhaft sind. All dies macht es schwierig biologisch sinnvolle Schlussfolgerungen zu ziehen. Daher, möchten wir in dieser Arbeit Antwortmengen Programmierung (engl. Answer Set Programming; ASP) als Werkzeug zur diskreten Modellierung system biologischer Probleme vorschlagen. ASP verfügt über eingebaute Eigenschaften zum Umgang mit unvollständiger Information, eine reichhaltige Modellierungssprache und hocheffiziente Berechnungstechniken. Wir präsentieren ASP Lösungen zur Analyse von Netzwerken genetischer Regulierungen, zur Prüfung der Konsistenz mit gemessene Daten, und zur Identifikation von Gründen für Inkonsistenz. Diesen Ansatz erweitern wir um die Möglichkeit zur Berechnung minimaler Reparaturen an Modell und Daten, welche Konsistenz erzeugen. Mithilfe dieser Methode werden wir in die Lage versetzt, auch im Fall von Inkonsistenz, noch ungemessene Daten vorherzusagen. Weiterhin, präsentieren wir einen ASP Ansatz zur Analyse metabolischer Netzwerke. Bei diesem Ansatz, nutzen wir zum einen aus das sich Erreichbarkeit mit ASP leicht spezifizieren lässt und das ASP mehrere mächtige Methoden zur Schlussfolgerung bereitstellt, welche sich auch kombiniert lassen. Dadurch wird es möglich die Synthese Möglichkeiten eines Metabolischen Netzwerks zu erforschen und Hypothesen für Erweiterungen des metabolischen Netzwerks zu berechnen. Zu guter Letzt, präsentieren wir die BioASP Softwarebibliothek. Die BioASP-Bibliothek kapselt unsere ASP Lösungen in das imperative Programmierparadigma und vereinfacht eine Integration von ASP Lösungen in heterogene Betriebsumgebungen, wie sie in der System Biologie vorherrschen. KW - Antwortmengen Programmierung KW - System Biologie KW - Inkonsistenz KW - Unvollständigkeit KW - Reparatur KW - answer set programming KW - systems biology KW - inconsistency KW - incompleteness KW - repair Y1 - 2011 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-59383 ER - TY - CHAP A1 - Gebser, Martin A1 - Hinrichs, Henrik A1 - Schaub, Torsten A1 - Thiele, Sven T1 - xpanda: a (simple) preprocessor for adding multi-valued propositions to ASP N2 - We introduce a simple approach extending the input language of Answer Set Programming (ASP) systems by multi-valued propositions. Our approach is implemented as a (prototypical) preprocessor translating logic programs with multi-valued propositions into logic programs with Boolean propositions only. Our translation is modular and heavily benefits from the expressive input language of ASP. The resulting approach, along with its implementation, allows for solving interesting constraint satisfaction problems in ASP, showing a good performance. Y1 - 2010 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-41466 ER - TY - THES A1 - Hecher, Markus T1 - Advanced tools and methods for treewidth-based problem solving N2 - In the last decades, there was a notable progress in solving the well-known Boolean satisfiability (Sat) problem, which can be witnessed by powerful Sat solvers. One of the reasons why these solvers are so fast are structural properties of instances that are utilized by the solver’s interna. This thesis deals with the well-studied structural property treewidth, which measures the closeness of an instance to being a tree. In fact, there are many problems parameterized by treewidth that are solvable in polynomial time in the instance size when parameterized by treewidth. In this work, we study advanced treewidth-based methods and tools for problems in knowledge representation and reasoning (KR). Thereby, we provide means to establish precise runtime results (upper bounds) for canonical problems relevant to KR. Then, we present a new type of problem reduction, which we call decomposition-guided (DG) that allows us to precisely monitor the treewidth when reducing from one problem to another problem. This new reduction type will be the basis for a long-open lower bound result for quantified Boolean formulas and allows us to design a new methodology for establishing runtime lower bounds for problems parameterized by treewidth. Finally, despite these lower bounds, we provide an efficient implementation of algorithms that adhere to treewidth. Our approach finds suitable abstractions of instances, which are subsequently refined in a recursive fashion, and it uses Sat solvers for solving subproblems. It turns out that our resulting solver is quite competitive for two canonical counting problems related to Sat. N2 - In den letzten Jahrzehnten konnte ein beachtlicher Fortschritt im Bereich der Aussagenlogik verzeichnet werden. Dieser äußerte sich dadurch, dass für das wichtigste Problem in diesem Bereich, genannt „Sat“, welches sich mit der Fragestellung befasst, ob eine gegebene aussagenlogische Formel erfüllbar ist oder nicht, überwältigend schnelle Computerprogramme („Solver“) entwickelt werden konnten. Interessanterweise liefern diese Solver eine beeindruckende Leistung, weil sie oft selbst Probleminstanzen mit mehreren Millionen von Variablen spielend leicht lösen können. Auf der anderen Seite jedoch glaubt man in der Wissenschaft weitgehend an die Exponentialzeithypothese (ETH), welche besagt, dass man im schlimmsten Fall für das Lösen einer Instanz in diesem Bereich exponentielle Laufzeit in der Anzahl der Variablen benötigt. Dieser vermeintliche Widerspruch ist noch immer nicht vollständig geklärt, denn wahrscheinlich gibt es viele ineinandergreifende Gründe für die Schnelligkeit aktueller Sat Solver. Einer dieser Gründe befasst sich weitgehend mit strukturellen Eigenschaften von Probleminstanzen, die wohl indirekt und intern von diesen Solvern ausgenützt werden. Diese Dissertation beschäftigt sich mit solchen strukturellen Eigenschaften, nämlich mit der sogenannten Baumweite. Die Baumweite ist sehr gut erforscht und versucht zu messen, wie groß der Abstand von Probleminstanzen zu Bäumen ist (Baumnähe). Allerdings ist dieser Parameter sehr generisch und bei Weitem nicht auf Problemstellungen der Aussagenlogik beschränkt. Tatsächlich gibt es viele weitere Probleme, die parametrisiert mit Baumweite in polynomieller Zeit gelöst werden können. Interessanterweise gibt es auch viele Probleme in der Wissensrepräsentation (KR), von denen man davon ausgeht, dass sie härter sind als das Problem Sat, die bei beschränkter Baumweite in polynomieller Zeit gelöst werden können. Ein prominentes Beispiel solcher Probleme ist das Problem QSat, welches sich für die Gültigkeit einer gegebenen quantifizierten, aussagenlogischen Formel (QBF), das sind aussagenlogische Formeln, wo gewisse Variablen existenziell bzw. universell quantifiziert werden können, befasst. Bemerkenswerterweise wird allerdings auch im Zusammenhang mit Baumweite, ähnlich zu Methoden der klassischen Komplexitätstheorie, die tatsächliche Komplexität (Härte) solcher Problemen quantifiziert, wo man die exakte Laufzeitabhängigkeit beim Problemlösen in der Baumweite (Stufe der Exponentialität) beschreibt. Diese Arbeit befasst sich mit fortgeschrittenen, Baumweite-basierenden Methoden und Werkzeugen für Probleme der Wissensrepräsentation und künstlichen Intelligenz (AI). Dabei präsentieren wir Methoden, um präzise Laufzeitresultate (obere Schranken) für prominente Fragmente der Antwortmengenprogrammierung (ASP), welche ein kanonisches Paradigma zum Lösen von Problemen der Wissensrepräsentation darstellt, zu erhalten. Unsere Resultate basieren auf dem Konzept der dynamischen Programmierung, die angeleitet durch eine sogenannte Baumzerlegung und ähnlich dem Prinzip „Teile-und-herrsche“ funktioniert. Solch eine Baumzerlegung ist eine konkrete, strukturelle Zerlegung einer Probleminstanz, die sich stark an der Baumweite orientiert. Des Weiteren präsentieren wir einen neuen Typ von Problemreduktion, den wir als „decomposition-guided (DG)“, also „zerlegungsangeleitet“, bezeichnen. Dieser Reduktionstyp erlaubt es, Baumweiteerhöhungen und -verringerungen während einer Problemreduktion von einem bestimmten Problem zu einem anderen Problem präzise zu untersuchen und zu kontrollieren. Zusätzlich ist dieser neue Reduktionstyp die Basis, um ein lange offen gebliebenes Resultat betreffend quantifizierter, aussagenlogischer Formeln zu zeigen. Tatsächlich sind wir damit in der Lage, präzise untere Schranken, unter der Annahme der Exponentialzeithypothese, für das Problem QSat bei beschränkter Baumweite zu zeigen. Genauer gesagt können wir mit diesem Konzept der DG Reduktionen zeigen, dass das Problem QSat, beschränkt auf Quantifizierungsrang ` und parametrisiert mit Baumweite k, im Allgemeinen nicht besser als in einer Laufzeit, die `-fach exponentiell in der Baumweite und polynomiell in der Instanzgröße ist1, lösen. Dieses Resultat hebt auf nicht-inkrementelle Weise ein bekanntes Ergebnis für Quantifizierungsrang 2 auf beliebige Quantifizierungsränge, allerdings impliziert es auch sehr viele weitere Konsequenzen. Das Resultat über die untere Schranke des Problems QSat erlaubt es, eine neue Methodologie zum Zeigen unterer Schranken einer Vielzahl von Problemen der Wissensrepräsentation und künstlichen Intelligenz, zu etablieren. In weiterer Konsequenz können wir damit auch zeigen, dass die oberen Schranken sowie die DG Reduktionen dieser Arbeit unter der Hypothese ETH „eng“ sind, d.h., sie können wahrscheinlich nicht mehr signifikant verbessert werden. Die Ergebnisse betreffend der unteren Schranken für QSat und die dazugehörige Methodologie konstituieren in gewisser Weise eine Hierarchie von über Baumweite parametrisierte Laufzeitklassen. Diese Laufzeitklassen können verwendet werden, um die Härte von Problemen für das Ausnützen von Baumweite zu quantifizieren und diese entsprechend ihrer Laufzeitabhängigkeit bezüglich Baumweite zu kategorisieren. Schlussendlich und trotz der genannten Resultate betreffend unterer Schranken sind wir im Stande, eine effiziente Implementierung von Algorithmen basierend auf dynamischer Programmierung, die entlang einer Baumzerlegung angeleitet wird, zur Verfügung zu stellen. Dabei funktioniert unser Ansatz dahingehend, indem er probiert, passende Abstraktionen von Instanzen zu finden, die dann im Endeffekt sukzessive und auf rekursive Art und Weise verfeinert und verbessert werden. Inspiriert durch die enorme Effizienz und Effektivität der Sat Solver, ist unsere Implementierung ein hybrider Ansatz, weil sie den starken Gebrauch von Sat Solvern zum Lösen diverser Subprobleme, die während der dynamischen Programmierung auftreten, pflegt. Dabei stellt sich heraus, dass der resultierende Solver unserer Implementierung im Bezug auf Effizienz beim Lösen von zwei kanonischen, Sat-verwandten Zählproblemen mit bestehenden Solvern locker mithalten kann. Tatsächlich sind wir im Stande, Instanzen, wo die oberen Schranken von Baumweite 260 übersteigen, zu lösen. Diese überraschende Beobachtung zeigt daher, dass Baumweite ein wichtiger Parameter sein könnte, der wohl in modernen Designs von Solvern berücksichtigt werden sollte. KW - Treewidth KW - Dynamic Programming KW - Knowledge Representation and Reasoning KW - Artificial Intelligence KW - Computational Complexity KW - Parameterized Complexity KW - Answer Set Programming KW - Exponential Time Hypothesis KW - Lower Bounds KW - Algorithms KW - Algorithmen KW - Antwortmengenprogrammierung KW - Künstliche Intelligenz KW - Komplexitätstheorie KW - Dynamische Programmierung KW - Exponentialzeit Hypothese KW - Wissensrepräsentation und Schlussfolgerung KW - Untere Schranken KW - Parametrisierte Komplexität KW - Baumweite Y1 - 2021 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-512519 ER -