Computational Methods for Domination Problems by William

Total Page:16

File Type:pdf, Size:1020Kb

Computational Methods for Domination Problems by William Computational Methods for Domination Problems by William Herbert Bird B.Sc., University of Victoria, 2011 M.Sc., University of Victoria, 2013 A Dissertation Submitted in Partial Fulfillment of the Requirements for the Degree of DOCTOR OF PHILOSOPHY in the Department of Computer Science c William Herbert Bird, 2017 University of Victoria All rights reserved. This dissertation may not be reproduced in whole or in part, by photocopying or other means, without the permission of the author. ii Computational Methods for Domination Problems by William Herbert Bird B.Sc., University of Victoria, 2011 M.Sc., University of Victoria, 2013 Supervisory Committee Dr. Wendy Myrvold, Supervisor (Department of Computer Science) Dr. Venkatesh Srinivasan, Departmental Member (Department of Computer Science) Dr. Kieka Mynhardt, Outside Member (Department of Mathematics and Statistics) iii Supervisory Committee Dr. Wendy Myrvold, Supervisor (Department of Computer Science) Dr. Venkatesh Srinivasan, Departmental Member (Department of Computer Science) Dr. Kieka Mynhardt, Outside Member (Department of Mathematics and Statistics) ABSTRACT For a graph G, the minimum dominating set problem is to find a minimum size set S of vertices of G such that every vertex is either in S or adjacent to a vertex in the set. The decision version of this problem, which asks whether G has a dominating set of a particular size k, is known to be NP-complete, and no polynomial time algorithm to solve the problem is currently known to exist. The queen domination problem is to find the minimum number of queens which, collectively, can attack every square on an n × n chess board. The related border queen problem is to find such a collection of queens with the added restriction that all queens lie on the outer border of the board. This thesis studies practical exponential time algorithms for solving domination problems, and presents an experimental comparison of several different algorithms, with the goal of producing a broadly effective iv general domination solver for use by future researchers. The developed algorithms are then used to solve several open problems, including cases of the queen domination problem and the border queen problem. In addition, new theoretical upper bounds are presented for the border queen problem for some families of queen graphs. v Contents Supervisory Committee ii Abstract iii Table of Contents v List of Tables viii List of Figures xi List of Algorithms xiv 1 Introduction 1 1.1 Definitions . 2 1.1.1 Graphs . 3 1.1.2 Dominating Sets . 3 1.1.3 Independent Dominating Sets . 4 1.2 Complexity and Parameterized Complexity . 5 1.3 Related Computational Problems . 9 1.4 Algorithms to Compute Minimum Dominating Sets . 11 2 Queen Graphs and Other Interesting Graph Classes 15 2.1 The Queen Domination Problem . 16 2.2 Irredundant Sets . 18 vi 2.3 The Border Queen Problem . 20 2.4 Kneser Graphs . 26 2.5 Covering Codes and Football Pools . 26 2.6 Triangle Grid Graphs . 30 2.7 Hex Rook Graphs . 31 2.8 Cartesian Products of Cycles . 32 3 Algorithms 34 3.1 Backtracking Framework . 35 3.1.1 Bounding Condition . 37 3.1.2 Vertex Selection . 37 3.1.3 Neighbour Ordering . 37 3.2 Bounding With Fixed Vertex Ordering . 38 3.2.1 Implementation: Algorithm 3.2 . 38 3.3 Domination Degree Algorithms . 41 3.3.1 Domination Degree Multiset . 44 3.3.2 Candidate Degree Priority Queue . 47 3.3.3 Implementation: Algorithm 3.5 . 58 3.4 Max Dominator Degree Algorithms . 61 3.4.1 MDD Ranking Data Structure . 63 3.4.2 Implementation: Algorithm 3.7 . 66 4 Experimental Evaluation of Domination Algorithms 70 4.1 Input Graph Dataset . 72 4.2 Methodology . 73 4.2.1 Mitigating the impact of `luck' . 75 4.3 Fixed-Ordering Implementations . 77 vii 4.4 Domination Degree Implementations . 81 4.4.1 Single Aspect Comparisons . 83 4.5 Max Dominator Degree Implementations . 88 4.5.1 Single Aspect Comparison . 88 4.6 Comparison of Framework Algorithms . 96 4.7 Comparison with SageMath . 100 4.8 Choosing Representative Algorithms . 103 4.8.1 Overall Variant Comparison . 105 4.8.2 Comparison of Variants by Graph Family . 107 5 New Domination Results for Queen Problems 113 5.1 Computing Independent Dominating Sets . 114 5.2 Splitting Computation Among Processes . 115 5.3 Counting Solutions up to Isomorphism . 118 5.4 Certificates of Independent Dominating Sets . 119 5.5 Rotated Border Constructions . 122 5.5.1 Searching for Minimum RBCs . 139 5.5.2 Summary of Border Queen Results . 142 6 Unidom 149 6.1 The unidom Architecture . 149 6.2 Input Source . 151 6.3 Preprocessing Filters . 153 6.4 Solver . 156 6.5 Output Proxy . 158 7 Conclusions and Future Research 161 viii Bibliography 165 ix List of Tables Table 2.1 Domination Numbers of Kneser Graphs . 27 Table 2.2 Solutions to the Football Pool Problem for n = 1;:::; 10 . 29 Table 2.3 Domination Numbers of Hypercubes Qn for n = 1;:::; 11 . 29 Table 2.4 Domination Numbers of Hex Rook Graphs . 32 Table 4.1 Optimization Experiment Input Graphs . 73 Table 4.2 Fixed Ordering Running Times: Covering Code Graphs . 79 Table 4.3 Fixed Ordering Running Times: Hex Rook Graphs . 79 Table 4.4 Fixed Ordering Running Times: Kneser Graphs . 79 Table 4.5 Fixed Ordering Running Times: Knight Graphs . 80 Table 4.6 Fixed Ordering Running Times: Cartesian Products of Cycles . 80 Table 4.7 Fixed Ordering Running Times: Queen Graphs . 80 Table 4.8 Fixed Ordering Running Times: Triangle Grid Graphs . 81 Table 4.9 DD Bounding: Summary of maximum time ratios for all aspects on all graph families . 85 Table 4.10 DD Bounding: Summary of maximum total call ratios for all aspects on all graph families . 88 Table 4.11 MDD Bounding: Summary of maximum time ratios for all aspects on all graph families . 95 Table 4.12 MDD Bounding: Summary of maximum total call ratios for all aspects on all graph families . 96 x Table 4.13 Comparison of Framework Algorithms - Maximum Times: Covering Code Graphs . 97 Table 4.14 Comparison of Framework Algorithms - Maximum Times: Hex Rook Graphs . 98 Table 4.15 Comparison of Framework Algorithms - Maximum Times: Kneser Graphs 98 Table 4.16 Comparison of Framework Algorithms - Maximum Times: Knight Graphs 99 Table 4.17 Comparison of Framework Algorithms - Maximum Times: Cartesian Products of Cycles . 99 Table 4.18 Comparison of Framework Algorithms - Maximum Times: Queen Graphs 99 Table 4.19 Comparison of Framework Algorithms - Maximum Times: Triangular Grid Graphs . 100 Table 4.20 SageMath vs. Framework 3.1 - Maximum Times: Covering Code Graphs101 Table 4.21 SageMath vs. Framework 3.1 - Maximum Times: Hex Rook Graphs . 101 Table 4.22 SageMath vs. Framework 3.1 - Maximum Times: Kneser Graphs . 101 Table 4.23 SageMath vs. Framework 3.1 - Maximum Times: Knight Graphs . 102 Table 4.24 SageMath vs. Framework 3.1 - Maximum Times: Cartesian Products of Cycles . 102 Table 4.25 SageMath vs. Framework 3.1 - Maximum Times: Queen Graphs . 102 Table 4.26 SageMath vs. Framework 3.1 - Maximum Times: Triangular Grid Graphs102 Table 4.27 Best 10 average maximum time fractions of tested algorithms on the entire input dataset. 106 Table 4.28 Best 10 average maximum time fractions of tested algorithms on the 20 moderately difficult graphs in the input dataset. 106 Table 4.29 Maximum times of Framework 3.1 variants on Covering Code graphs. 108 Table 4.30 Maximum times of Framework 3.1 variants on Hex Rook graphs. 109 Table 4.31 Maximum times of Framework 3.1 variants on Kneser graphs. 110 xi Table 4.32 Maximum times of Framework 3.1 variants on Knight graphs. 110 Table 4.33 Maximum times of Framework 3.1 variants on Cartesian Products of Cycles. 111 Table 4.34 Maximum times of Framework 3.1 variants on Queen graphs. 111 Table 4.35 Maximum times of Framework 3.1 variants on Triangular Grid graphs. 112 Table 5.1 Domination Numbers of Queen Graphs . 114 Table 5.2 Number of Minimum Dominating Sets of Queen Graphs up to Isomor- phism . 118 Table 5.3 Number of Minimum Independent Dominating Sets of Queen Graphs up to Isomorphism . 119 Table 5.4 Minimum Border Dominating Sets of Queen Graphs up to Isomorphism 119 Table 5.5 Summary of Border Domination Parameters . 143 xii List of Figures Figure 2.1 3 × 3 chess board and Queen graph of order 3 . 17 Figure 2.2 A maximal irredundant set of C5 .................... 19 Figure 2.3 Examples of the construction used in the proof of Theorem 2.8. 23 Figure 2.4 Counterexample of an assertion by Burchett in [9]. 24 Figure 2.5 Triangle grid and hex rook graphs of order 3 . 30 Figure 3.1 An 8 × 8 board with two queens. 42 Figure 3.2 A 10 × 10 board with three queens. 61 Figure 4.1 DD Bounding: Histogram of pairwise ratios for Min. CD vs. Max. CD vertex selection. 86 Figure 4.2 DD Bounding: Histogram of pairwise ratios for ascending vs. descend- ing neighbour order. 86 Figure 4.3 DD Bounding: Histogram of pairwise ratios for force stop optimization disabled vs. enabled. 87 Figure 4.4 DD Bounding: Histogram of pairwise ratios for bound rechecking op- timization disabled vs. enabled. 87 Figure 4.5 MDD Bounding: Histogram of pairwise ratios for Min. CD vs. Max. CD vertex selection. 90.
Recommended publications
  • On the Complexity of Numerical Analysis
    On the Complexity of Numerical Analysis Eric Allender Peter B¨urgisser Rutgers, the State University of NJ Paderborn University Department of Computer Science Department of Mathematics Piscataway, NJ 08854-8019, USA DE-33095 Paderborn, Germany [email protected] [email protected] Johan Kjeldgaard-Pedersen Peter Bro Miltersen PA Consulting Group University of Aarhus Decision Sciences Practice Department of Computer Science Tuborg Blvd. 5, DK 2900 Hellerup, Denmark IT-parken, DK 8200 Aarhus N, Denmark [email protected] [email protected] Abstract In Section 1.3 we discuss our main technical contribu- tions: proving upper and lower bounds on the complexity We study two quite different approaches to understand- of PosSLP. In Section 1.4 we present applications of our ing the complexity of fundamental problems in numerical main result with respect to the Euclidean Traveling Sales- analysis. We show that both hinge on the question of under- man Problem and the Sum-of-Square-Roots problem. standing the complexity of the following problem, which we call PosSLP: Given a division-free straight-line program 1.1 Polynomial Time Over the Reals producing an integer N, decide whether N>0. We show that PosSLP lies in the counting hierarchy, and combining The Blum-Shub-Smale model of computation over the our results with work of Tiwari, we show that the Euclidean reals provides a very well-studied complexity-theoretic set- Traveling Salesman Problem lies in the counting hierarchy ting in which to study the computational problems of nu- – the previous best upper bound for this important problem merical analysis.
    [Show full text]
  • A Public Transport Bus Assignment Problem: Parallel Metaheuristics Assessment
    David Fernandes Semedo Licenciado em Engenharia Informática A Public Transport Bus Assignment Problem: Parallel Metaheuristics Assessment Dissertação para obtenção do Grau de Mestre em Engenharia Informática Orientador: Prof. Doutor Pedro Barahona, Prof. Catedrático, Universidade Nova de Lisboa Co-orientador: Prof. Doutor Pedro Medeiros, Prof. Associado, Universidade Nova de Lisboa Júri: Presidente: Prof. Doutor José Augusto Legatheaux Martins Arguente: Prof. Doutor Salvador Luís Bettencourt Pinto de Abreu Vogal: Prof. Doutor Pedro Manuel Corrêa Calvente de Barahona Setembro, 2015 A Public Transport Bus Assignment Problem: Parallel Metaheuristics Assess- ment Copyright c David Fernandes Semedo, Faculdade de Ciências e Tecnologia, Universidade Nova de Lisboa A Faculdade de Ciências e Tecnologia e a Universidade Nova de Lisboa têm o direito, perpétuo e sem limites geográficos, de arquivar e publicar esta dissertação através de exemplares impressos reproduzidos em papel ou de forma digital, ou por qualquer outro meio conhecido ou que venha a ser inventado, e de a divulgar através de repositórios científicos e de admitir a sua cópia e distribuição com objectivos educacionais ou de investigação, não comerciais, desde que seja dado crédito ao autor e editor. Aos meus pais. ACKNOWLEDGEMENTS This research was partly supported by project “RtP - Restrict to Plan”, funded by FEDER (Fundo Europeu de Desenvolvimento Regional), through programme COMPETE - POFC (Operacional Factores de Competitividade) with reference 34091. First and foremost, I would like to express my genuine gratitude to my advisor profes- sor Pedro Barahona for the continuous support of my thesis, for his guidance, patience and expertise. His general optimism, enthusiasm and availability to discuss and support new ideas helped and encouraged me to push my work always a little further.
    [Show full text]
  • Interactions of Computational Complexity Theory and Mathematics
    Interactions of Computational Complexity Theory and Mathematics Avi Wigderson October 22, 2017 Abstract [This paper is a (self contained) chapter in a new book on computational complexity theory, called Mathematics and Computation, whose draft is available at https://www.math.ias.edu/avi/book]. We survey some concrete interaction areas between computational complexity theory and different fields of mathematics. We hope to demonstrate here that hardly any area of modern mathematics is untouched by the computational connection (which in some cases is completely natural and in others may seem quite surprising). In my view, the breadth, depth, beauty and novelty of these connections is inspiring, and speaks to a great potential of future interactions (which indeed, are quickly expanding). We aim for variety. We give short, simple descriptions (without proofs or much technical detail) of ideas, motivations, results and connections; this will hopefully entice the reader to dig deeper. Each vignette focuses only on a single topic within a large mathematical filed. We cover the following: • Number Theory: Primality testing • Combinatorial Geometry: Point-line incidences • Operator Theory: The Kadison-Singer problem • Metric Geometry: Distortion of embeddings • Group Theory: Generation and random generation • Statistical Physics: Monte-Carlo Markov chains • Analysis and Probability: Noise stability • Lattice Theory: Short vectors • Invariant Theory: Actions on matrix tuples 1 1 introduction The Theory of Computation (ToC) lays out the mathematical foundations of computer science. I am often asked if ToC is a branch of Mathematics, or of Computer Science. The answer is easy: it is clearly both (and in fact, much more). Ever since Turing's 1936 definition of the Turing machine, we have had a formal mathematical model of computation that enables the rigorous mathematical study of computational tasks, algorithms to solve them, and the resources these require.
    [Show full text]
  • Solving the Maximum Weight Independent Set Problem Application to Indirect Hex-Mesh Generation
    Solving the Maximum Weight Independent Set Problem Application to Indirect Hex-Mesh Generation Dissertation presented by Kilian VERHETSEL for obtaining the Master’s degree in Computer Science and Engineering Supervisor(s) Jean-François REMACLE, Amaury JOHNEN Reader(s) Jeanne PELLERIN, Yves DEVILLE , Julien HENDRICKX Academic year 2016-2017 Acknowledgments I would like to thank my supervisor, Jean-François Remacle, for believing in me, my co-supervisor Amaury Johnen, for his encouragements during this project, as well as Jeanne Pellerin, for her patience and helpful advice. 3 4 Contents List of Notations 7 List of Figures 8 List of Tables 10 List of Algorithms 12 1 Introduction 17 1.1 Background on Indirect Mesh Generation . 17 1.2 Outline . 18 2 State of the Art 19 2.1 Exact Resolution . 19 2.1.1 Approaches Based on Graph Coloring . 19 2.1.2 Approaches Based on MaxSAT . 20 2.1.3 Approaches Based on Integer Programming . 21 2.1.4 Parallel Implementations . 21 2.2 Heuristic Approach . 22 3 Hybrid Approach to Combining Tetrahedra into Hexahedra 25 3.1 Computation of the Incompatibility Graph . 25 3.2 Exact Resolution for Small Graphs . 28 3.2.1 Complete Search . 28 3.2.2 Branch and Bound . 29 3.2.3 Upper Bounds Based on Clique Partitions . 31 3.2.4 Upper Bounds based on Linear Programming . 32 3.3 Construction of an Initial Solution . 35 3.3.1 Local Search Algorithms . 35 3.3.2 Local Search Formulation of the Maximum Weight Independent Set . 36 3.3.3 Strategies to Escape Local Optima .
    [Show full text]
  • Cognicrypt: Supporting Developers in Using Cryptography
    CogniCrypt: Supporting Developers in using Cryptography Stefan Krüger∗, Sarah Nadiy, Michael Reifz, Karim Aliy, Mira Meziniz, Eric Bodden∗, Florian Göpfertz, Felix Güntherz, Christian Weinertz, Daniel Demmlerz, Ram Kamathz ∗Paderborn University, {fistname.lastname}@uni-paderborn.de yUniversity of Alberta, {nadi, karim.ali}@ualberta.ca zTechnische Universität Darmstadt, {reif, mezini, guenther, weinert, demmler}@cs.tu-darmstadt.de, [email protected], [email protected] Abstract—Previous research suggests that developers often reside on the low level of cryptographic algorithms instead of struggle using low-level cryptographic APIs and, as a result, being more functionality-oriented APIs that provide convenient produce insecure code. When asked, developers desire, among methods such as encryptFile(). When it comes to tool other things, more tool support to help them use such APIs. In this paper, we present CogniCrypt, a tool that supports support, participants suggested tools like a CryptoDebugger, developers with the use of cryptographic APIs. CogniCrypt analysis tools that find misuses and provide code templates assists the developer in two ways. First, for a number of common or generate code for common functionality. These suggestions cryptographic tasks, CogniCrypt generates code that implements indicate that participants not only lack the domain knowledge, the respective task in a secure manner. Currently, CogniCrypt but also struggle with APIs themselves and how to use them. supports tasks such as data encryption, communication over secure channels, and long-term archiving. Second, CogniCrypt In this paper, we present CogniCrypt, an Eclipse plugin that continuously runs static analyses in the background to ensure enables easier use of cryptographic APIs. In previous work, a secure integration of the generated code into the developer’s we outlined an early vision for CogniCrypt [2].
    [Show full text]
  • Quantum Computational Complexity Theory Is to Un- Derstand the Implications of Quantum Physics to Computational Complexity Theory
    Quantum Computational Complexity John Watrous Institute for Quantum Computing and School of Computer Science University of Waterloo, Waterloo, Ontario, Canada. Article outline I. Definition of the subject and its importance II. Introduction III. The quantum circuit model IV. Polynomial-time quantum computations V. Quantum proofs VI. Quantum interactive proof systems VII. Other selected notions in quantum complexity VIII. Future directions IX. References Glossary Quantum circuit. A quantum circuit is an acyclic network of quantum gates connected by wires: the gates represent quantum operations and the wires represent the qubits on which these operations are performed. The quantum circuit model is the most commonly studied model of quantum computation. Quantum complexity class. A quantum complexity class is a collection of computational problems that are solvable by a cho- sen quantum computational model that obeys certain resource constraints. For example, BQP is the quantum complexity class of all decision problems that can be solved in polynomial time by a arXiv:0804.3401v1 [quant-ph] 21 Apr 2008 quantum computer. Quantum proof. A quantum proof is a quantum state that plays the role of a witness or certificate to a quan- tum computer that runs a verification procedure. The quantum complexity class QMA is defined by this notion: it includes all decision problems whose yes-instances are efficiently verifiable by means of quantum proofs. Quantum interactive proof system. A quantum interactive proof system is an interaction between a verifier and one or more provers, involving the processing and exchange of quantum information, whereby the provers attempt to convince the verifier of the answer to some computational problem.
    [Show full text]
  • Algorithmic Complexity in Computational Biology: Basics, Challenges and Limitations
    Algorithmic complexity in computational biology: basics, challenges and limitations Davide Cirillo#,1,*, Miguel Ponce-de-Leon#,1, Alfonso Valencia1,2 1 Barcelona Supercomputing Center (BSC), C/ Jordi Girona 29, 08034, Barcelona, Spain 2 ICREA, Pg. Lluís Companys 23, 08010, Barcelona, Spain. # Contributed equally * corresponding author: [email protected] (Tel: +34 934137971) Key points: ● Computational biologists and bioinformaticians are challenged with a range of complex algorithmic problems. ● The significance and implications of the complexity of the algorithms commonly used in computational biology is not always well understood by users and developers. ● A better understanding of complexity in computational biology algorithms can help in the implementation of efficient solutions, as well as in the design of the concomitant high-performance computing and heuristic requirements. Keywords: Computational biology, Theory of computation, Complexity, High-performance computing, Heuristics Description of the author(s): Davide Cirillo is a postdoctoral researcher at the Computational biology Group within the Life Sciences Department at Barcelona Supercomputing Center (BSC). Davide Cirillo received the MSc degree in Pharmaceutical Biotechnology from University of Rome ‘La Sapienza’, Italy, in 2011, and the PhD degree in biomedicine from Universitat Pompeu Fabra (UPF) and Center for Genomic Regulation (CRG) in Barcelona, Spain, in 2016. His current research interests include Machine Learning, Artificial Intelligence, and Precision medicine. Miguel Ponce de León is a postdoctoral researcher at the Computational biology Group within the Life Sciences Department at Barcelona Supercomputing Center (BSC). Miguel Ponce de León received the MSc degree in bioinformatics from University UdelaR of Uruguay, in 2011, and the PhD degree in Biochemistry and biomedicine from University Complutense de, Madrid (UCM), Spain, in 2017.
    [Show full text]
  • Computational Complexity
    Computational Complexity The Harvard community has made this article openly available. Please share how this access benefits you. Your story matters Citation Vadhan, Salil P. 2011. Computational complexity. In Encyclopedia of Cryptography and Security, second edition, ed. Henk C.A. van Tilborg and Sushil Jajodia. New York: Springer. Published Version http://refworks.springer.com/mrw/index.php?id=2703 Citable link http://nrs.harvard.edu/urn-3:HUL.InstRepos:33907951 Terms of Use This article was downloaded from Harvard University’s DASH repository, and is made available under the terms and conditions applicable to Open Access Policy Articles, as set forth at http:// nrs.harvard.edu/urn-3:HUL.InstRepos:dash.current.terms-of- use#OAP Computational Complexity Salil Vadhan School of Engineering & Applied Sciences Harvard University Synonyms Complexity theory Related concepts and keywords Exponential time; O-notation; One-way function; Polynomial time; Security (Computational, Unconditional); Sub-exponential time; Definition Computational complexity theory is the study of the minimal resources needed to solve computational problems. In particular, it aims to distinguish be- tween those problems that possess efficient algorithms (the \easy" problems) and those that are inherently intractable (the \hard" problems). Thus com- putational complexity provides a foundation for most of modern cryptogra- phy, where the aim is to design cryptosystems that are \easy to use" but \hard to break". (See security (computational, unconditional).) Theory Running Time. The most basic resource studied in computational com- plexity is running time | the number of basic \steps" taken by an algorithm. (Other resources, such as space (i.e., memory usage), are also studied, but they will not be discussed them here.) To make this precise, one needs to fix a model of computation (such as the Turing machine), but here it suffices to informally think of it as the number of \bit operations" when the input is given as a string of 0's and 1's.
    [Show full text]
  • Notes for Lecture Notes 2 1 Computational Problems
    Stanford University | CS254: Computational Complexity Notes 2 Luca Trevisan January 11, 2012 Notes for Lecture Notes 2 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation for search problems is equivalent to its formulation for decision problems, and we prove the time hierarchy theorem, which remains essentially the only known theorem which allows to show that certain problems are not in P. 1 Computational Problems In a computational problem, we are given an input that, without loss of generality, we assume to be encoded over the alphabet f0; 1g, and we want to return as output a solution satisfying some property: a computational problem is then described by the property that the output has to satisfy given the input. In this course we will deal with four types of computational problems: decision problems, search problems, optimization problems, and counting problems.1 For the moment, we will discuss decision and search problem. In a decision problem, given an input x 2 f0; 1g∗, we are required to give a YES/NO answer. That is, in a decision problem we are only asked to verify whether the input satisfies a certain property. An example of decision problem is the 3-coloring problem: given an undirected graph, determine whether there is a way to assign a \color" chosen from f1; 2; 3g to each vertex in such a way that no two adjacent vertices have the same color. A convenient way to specify a decision problem is to give the set L ⊆ f0; 1g∗ of inputs for which the answer is YES.
    [Show full text]
  • CMSC 451 Design and Analysis of Computer Algorithms1
    CMSC 451 Design and Analysis of Computer Algorithms1 David M. Mount Department of Computer Science University of Maryland Fall 2003 1Copyright, David M. Mount, 2004, Dept. of Computer Science, University of Maryland, College Park, MD, 20742. These lecture notes were prepared by David Mount for the course CMSC 451, Design and Analysis of Computer Algorithms, at the University of Maryland. Permission to use, copy, modify, and distribute these notes for educational purposes and without fee is hereby granted, provided that this copyright notice appear in all copies. Lecture Notes 1 CMSC 451 Lecture 1: Course Introduction Read: (All readings are from Cormen, Leiserson, Rivest and Stein, Introduction to Algorithms, 2nd Edition). Review Chapts. 1–5 in CLRS. What is an algorithm? Our text defines an algorithm to be any well-defined computational procedure that takes some values as input and produces some values as output. Like a cooking recipe, an algorithm provides a step-by-step method for solving a computational problem. Unlike programs, algorithms are not dependent on a particular programming language, machine, system, or compiler. They are mathematical entities, which can be thought of as running on some sort of idealized computer with an infinite random access memory and an unlimited word size. Algorithm design is all about the mathematical theory behind the design of good programs. Why study algorithm design? Programming is a very complex task, and there are a number of aspects of program- ming that make it so complex. The first is that most programming projects are very large, requiring the coor- dinated efforts of many people.
    [Show full text]
  • Analysis and Processing of Cryptographic Protocols
    Analysis and Processing of Cryptographic Protocols Submitted in partial fulfilment of the requirements of the degree of Bachelor of Science (Honours) of Rhodes University Bradley Cowie Grahamstown, South Africa November 2009 Abstract The field of Information Security and the sub-field of Cryptographic Protocols are both vast and continually evolving fields. The use of cryptographic protocols as a means to provide security to web servers and services at the transport layer, by providing both en- cryption and authentication to data transfer, has become increasingly popular. However, it is noted that it is rather difficult to perform legitimate analysis, intrusion detection and debugging on data that has passed through a cryptographic protocol as it is encrypted. The aim of this thesis is to design a framework, named Project Bellerophon, that is capa- ble of decrypting traffic that has been encrypted by an arbitrary cryptographic protocol. Once the plain-text has been retrieved further analysis may take place. To aid in this an in depth investigation of the TLS protocol was undertaken. This pro- duced a detailed document considering the message structures and the related fields con- tained within these messages which are involved in the TLS handshake process. Detailed examples explaining the processes that are involved in obtaining and generating the var- ious cryptographic components were explored. A systems design was proposed, considering the role of each of the components required in order to produce an accurate decryption of traffic encrypted by a cryptographic protocol. Investigations into the accuracy and the efficiency of Project Bellerophon to decrypt specific test data were conducted.
    [Show full text]
  • MULTIVALUED SUBSETS UNDER INFORMATION THEORY Indraneel Dabhade Clemson University, [email protected]
    Clemson University TigerPrints All Theses Theses 8-2011 MULTIVALUED SUBSETS UNDER INFORMATION THEORY Indraneel Dabhade Clemson University, [email protected] Follow this and additional works at: https://tigerprints.clemson.edu/all_theses Part of the Applied Mathematics Commons Recommended Citation Dabhade, Indraneel, "MULTIVALUED SUBSETS UNDER INFORMATION THEORY" (2011). All Theses. 1155. https://tigerprints.clemson.edu/all_theses/1155 This Thesis is brought to you for free and open access by the Theses at TigerPrints. It has been accepted for inclusion in All Theses by an authorized administrator of TigerPrints. For more information, please contact [email protected]. MULTIVALUED SUBSETS UNDER INFORMATION THEORY _______________________________________________________ A Thesis Presented to the Graduate School of Clemson University _______________________________________________________ In Partial Fulfillment of the Requirements for the Degree Master of Science Industrial Engineering _______________________________________________________ by Indraneel Chandrasen Dabhade August 2011 _______________________________________________________ Accepted by: Dr. Mary Beth Kurz, Committee Chair Dr. Anand Gramopadhye Dr. Scott Shappell i ABSTRACT In the fields of finance, engineering and varied sciences, Data Mining/ Machine Learning has held an eminent position in predictive analysis. Complex algorithms and adaptive decision models have contributed towards streamlining directed research as well as improve on the accuracies in forecasting. Researchers in the fields of mathematics and computer science have made significant contributions towards the development of this field. Classification based modeling, which holds a significant position amongst the different rule-based algorithms, is one of the most widely used decision making tools. The decision tree has a place of profound significance in classification-based modeling. A number of heuristics have been developed over the years to prune the decision making process.
    [Show full text]