Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.1/30

Similar documents
Network Based Models For Analysis of SNPs Yalta Opt

On the Complexity of Broadcast Scheduling. Problem

The Maximum Clique Problem

ON THE COMPLEXITY OF THE BROADCAST SCHEDULING PROBLEM

Minimal Dominating Sets in Graphs: Enumeration, Combinatorial Bounds and Graph Classes

Introduction to Graph Theory

Small Survey on Perfect Graphs

CS388C: Combinatorics and Graph Theory

Colouring graphs with no odd holes

On the Approximability of Modularity Clustering

Math 776 Graph Theory Lecture Note 1 Basic concepts

Stanford University CS359G: Graph Partitioning and Expanders Handout 18 Luca Trevisan March 3, 2011

Computability Theory

Matchings and Covers in bipartite graphs

Graph Theory S 1 I 2 I 1 S 2 I 1 I 2

Let G = (V, E) be a graph. If u, v V, then u is adjacent to v if {u, v} E. We also use the notation u v to denote that u is adjacent to v.

Graph Theory: Introduction

Extremal Graph Theory: Turán s Theorem

Lecture 6: Graph Properties

Bipartite Roots of Graphs

Decomposition of log-linear models

Vertex coloring, chromatic number

How many colors are needed to color a map?

Introduction to Combinatorial Algorithms

Graphs: Introduction. Ali Shokoufandeh, Department of Computer Science, Drexel University

Network Clustering. Balabhaskar Balasundaram, Sergiy Butenko

MapReduce Algorithms. Barna Saha. March 28, 2016

Chordal graphs MPRI

Junction Trees and Chordal Graphs

Vertex coloring, chromatic number

The Structure of Bull-Free Perfect Graphs

Decision Problems. Observation: Many polynomial algorithms. Questions: Can we solve all problems in polynomial time? Answer: No, absolutely not.

Maximum Differential Graph Coloring

INDEPENDENT SET PROBLEMS AND ODD-HOLE-PRESERVING GRAPH REDUCTIONS. A Dissertation JEFFREY S. WARREN

W4231: Analysis of Algorithms

Computational problems. Lecture 2: Combinatorial search and optimisation problems. Computational problems. Examples. Example

CS270 Combinatorial Algorithms & Data Structures Spring Lecture 19:

CSC 373: Algorithm Design and Analysis Lecture 4

Triple Connected Domination Number of a Graph

Comparing the Best Maximum Clique Finding Algorithms, Which are Using Heuristic Vertex Colouring

Algorithm and Complexity of Disjointed Connected Dominating Set Problem on Trees

Graph Theory. Probabilistic Graphical Models. L. Enrique Sucar, INAOE. Definitions. Types of Graphs. Trajectories and Circuits.

Faster parameterized algorithms for Minimum Fill-In

Using Constraint Programming to Solve the Maximum Clique Problem

NP-Completeness. Algorithms

Faster parameterized algorithms for Minimum Fill-In

CS 441 Discrete Mathematics for CS Lecture 26. Graphs. CS 441 Discrete mathematics for CS. Final exam

Vertical decomposition of a lattice using clique separators

How many colors are needed to color a map?

Abstract. A graph G is perfect if for every induced subgraph H of G, the chromatic number of H is equal to the size of the largest clique of H.

GRAPH THEORY LECTURE 3 STRUCTURE AND REPRESENTATION PART B

Minimal dominating sets in graph classes: combinatorial bounds and enumeration

Multiagent Graph Coloring: Pareto Efficiency, Fairness and Individual Rationality By Yaad Blum, Jeffrey S. Rosenchein

On connected domination in unit ball graphs

Algorithms for the Bin Packing Problem with Conflicts

On Clique Relaxation Models in Network Analysis

Junction tree propagation - BNDG 4-4.6

Ultraconnected and Critical Graphs

arxiv: v1 [cs.it] 9 Feb 2009

Research Question Presentation on the Edge Clique Covers of a Complete Multipartite Graph. Nechama Florans. Mentor: Dr. Boram Park

Fast-Mixed Searching and Related Problems on Graphs

Introduction to Algorithms. Lecture 24. Prof. Patrick Jaillet

P = NP; P NP. Intuition of the reduction idea:

Ton Kloks and Yue-Li Wang. Advances in Graph Algorithms. October 10, y X z

COMP 355 Advanced Algorithms Approximation Algorithms: VC and TSP Chapter 11 (KT) Section (CLRS)

1 The Traveling Salesperson Problem (TSP)

Paths. Path is a sequence of edges that begins at a vertex of a graph and travels from vertex to vertex along edges of the graph.

A Survey of the Algorithmic Properties of Simplicial, Upper Bound and Middle Graphs

HW Graph Theory SOLUTIONS (hbovik) - Q

A Computational Study of Conflict Graphs and Aggressive Cut Separation in Integer Programming

Solutions to Exercises 9

Lecture 5: Exact inference

Graph and Digraph Glossary

Approximation Algorithms for Geometric Intersection Graphs

CS242: Probabilistic Graphical Models Lecture 2B: Loopy Belief Propagation & Junction Trees

The Maximum Common Subgraph Problem: Faster Solutions via Vertex Cover

THE CONNECTED COMPLEMENT DOMINATION IN GRAPHS V.MOHANASELVI 1. Assistant Professor of Mathematics, Nehru Memorial College, Puthanampatti,

CSC2420 Fall 2012: Algorithm Design, Analysis and Theory

Graphs and Discrete Structures

Eternal Domination: Criticality and Reachability

arxiv: v1 [cs.ds] 8 Jan 2019

CS 4407 Algorithms. Lecture 8: Circumventing Intractability, using Approximation and other Techniques

Graph Theory. Connectivity, Coloring, Matching. Arjun Suresh 1. 1 GATE Overflow

COMP260 Spring 2014 Notes: February 4th

Grundy chromatic number of the complement of bipartite graphs

CMSC Honors Discrete Mathematics

Exact Algorithms for NP-hard problems

Lecture 5: Exact inference. Queries. Complexity of inference. Queries (continued) Bayesian networks can answer questions about the underlying

These notes present some properties of chordal graphs, a set of undirected graphs that are important for undirected graphical models.

The complement of PATH is in NL

Acyclic Network. Tree Based Clustering. Tree Decomposition Methods

Math 778S Spectral Graph Theory Handout #2: Basic graph theory

STAT 598L Probabilistic Graphical Models. Instructor: Sergey Kirshner. Exact Inference

THE INSULATION SEQUENCE OF A GRAPH

Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R + Goal: find a tour (Hamiltonian cycle) of minimum cost

Conflict Graphs for Combinatorial Optimization Problems

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI

Lecture 4: Walks, Trails, Paths and Connectivity

Lecture 19 Thursday, March 29. Examples of isomorphic, and non-isomorphic graphs will be given in class.

Junction Trees and Chordal Graphs

Transcription:

Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs Sergiy Butenko Department of Industrial Engineering Texas A&M University College Station, TX 77843 Joint work with P. Pardalos, I. Sergienko, V. Shylo, and P. Stetsyuk Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.1/30

Outline Introduction Maximum clique/independent set problems Error-correcting codes Lower bound for codes correcting one error on the Z-channel Conclusion Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.2/30

Introduction Definitions: G = (V, E) is a simple undirected graph, V = {1, 2,..., n}. G = (V, E), is the complement graph of G = (V, E), where E = {(i, j) i, j V, i j and (i, j) / E}. For S V, G(S) = (S, E S S) the subgraph induced by S. Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.3/30

Introduction Example: V = {1, 2, 3, 4, 5} E = {(1,2), (1,3), (1,4), (2,3), (2,4), (3,4), (3,5), (4,5)} 1 2 3 4 5 Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.4/30

Introduction S = {1, 3, 5} 1 2 3 4 5 Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.4/30

Introduction S = {1, 3, 5} G(S) : 1 3 5 Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.4/30

Introduction S = {1, 3, 5} G(S) : 1 3 5 Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.4/30

Introduction A subset I V is called an independent set (stable set, vertex packing) if G(I) has no edges. A subset C V is called a clique if G(C) is complete, i.e. it has all possible edges. An independent set (clique) is said to be maximal, if it is not a subset of any larger independent set (clique); maximum, if there is no larger independent set (clique) in the graph. Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.5/30

Introduction Example: 1 2 3 4 5 Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.6/30

Introduction A maximal clique: {3, 4, 5} 1 2 3 4 5 Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.6/30

Introduction The maximum clique: {1, 2, 3, 4} 1 2 3 4 5 Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.6/30

Introduction α(g) the independence (stability) number of G. ω(g) the clique number of G. V C V is a vertex cover if every edge has at least one endpoint in V C. I is a maximum independent set of G I is a maximum clique of Ḡ V \ I is a minimum vertex cover of G. MC, MIS and MVC problems are NP-hard Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.7/30

Error-correcting Codes Given: Find: Set B n of all binary vectors of length n; For u B n denote by F e (u) = { } v : u error e v A subset C B n is said to be an e-correcting code if F e (u) F e (v) = for all u, v C, u v. The largest correcting code. Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.8/30

Error-correcting Codes 1 0 1 0 Example: Single Deletion 0 1 0 1 Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.9/30

Error-correcting Codes X 1 0 1 0 0 1 0 1 Example: Single Deletion 0 1 0 Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.9/30

Error-correcting Codes X 1 0 1 0 0 1 0 1 X Example: Single Deletion 0 1 0 Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.9/30

Error-correcting Codes We construct the following graph G n = (V n, E (e) n ): V n = B n ; (u, v) E (e) n if and only if u v and F e (u) F e (v). Then a correcting code corresponds to an independent set in G n. Hence, the largest e-correcting code can be found by solving the maximum independent set problem in the considered graph. Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.10/30

Error-correcting Codes Single-Deletion-Correcting Codes (1dc); Two-Deletion-Correcting Codes (2dc); Codes For Correcting a Single Transposition, Excluding the End-Around Transposition (1tc); Codes For Correcting a Single Transposition, Including the End-Around Transposition (1et); Codes For Correcting One Error on the Z-Channel (1zc). http://www.research.att.com/ njas/doc/graphs.html (Neil Sloane s webpage) Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.11/30

Error-correcting Codes Preprocessing: Simplicial vertices are removed and connected components are considered separately. Clique Partitioning: We partition the set of vertices V of G as follows: k V = C i, i=1 where C i - cliques such that C i C j =, i j. Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.12/30

Error-correcting Codes An upper bound: s. t. O C (G) = max n i=1 x i i C j x i 1, j = 1,..., m x 0. where C j C is a maximal clique, C- a set of maximal cliques, C = m. Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.13/30

Error-correcting Codes Branch-and-Bound algorithm Branching: Based on the fact that the number of vertices from a clique that can be included in an independent set is always equal to 0 or 1. Bounding: We use a heuristic solution as a lower bound and O C (G) as an upper bound. Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.14/30

Error-correcting Codes Exact Solutions Found. Graph V E α(g) 1dc512 512 9727 52 2dc512 512 54895 11 ltc128 128 512 38 ltc256 256 1312 63 ltc512 512 3264 110 let128 128 672 28 let256 256 1664 50 let512 512 4032 100 Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.15/30

One Error on the Z-Channel 0 1 0 p 1 1 1 p A scheme of the Z-channel Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.16/30

One Error on the Z-Channel n Lower bound Upper bound 4 4 4 5 6 6 6 12 12 7 18 18 8 36 36 9 62 62 10 112 117 11 198 210 12 379 410 Varshamov (1973), Constantin and Rao (1979), Delsarte and Piret (1981), Etzion and Östergard (1998) Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.17/30

One Error on the Z-Channel The asymmetric distance d A (x, y) between vectors x, y B n is defined as follows: d A (x, y) = max{n(x, y), N(y, x)}, where N(x, y) = {i : (x i = 0) (y i = 1)}. It is related to the Hamming distance d H (x, y) = n x i y i = N(x, y) + N(y, x) by the expression i=1 2d A (x, y) = d H (x, y) + w(x) w(y) Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.18/30

One Error on the Z-Channel The minimum asymmetric distance for a code C B n is defined as = min {d A (x, y) x, y C, x y}. Rao and Chawla (1975): A code C with the minimum asymmetric distance can correct at most ( 1) asymmetric errors. We consider = 2. Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.19/30

One Error on the Z-Channel The partitioning method (Van Pul and Etzion, 1989) V (n) = m i=1 I i, I i is an independent set, I i Ij =, i j. Π(n) = (I 1, I 2,..., I m ). The index vector of partition Π(n): π(n) = ( I 1, I 2,..., I m ), We assume that I 1 I 2... I m. Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.20/30

One Error on the Z-Channel Constant weight codes of weight w Construct a graph G(n, w) ( n ) w vertices x and y are adjacent iff d H (x, y) < 4 an independent set partition Π(n, w) = (I w 1, I w 2,..., I w m) (each ind. set is a subcode with minimum Hamming distance 4) Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.21/30

One Error on the Z-Channel The direct product Π(n 1 ) Π(n 2, w) of a partition of asymmetric codes Π(n 1 ) = (I 1, I 2,..., I m1 ) and a partition of constant weight codes Π(n 2, w) = (I w 1, I w 2,..., I w m 2 ) is the set of vectors C = {(u, v) : u I i, v I w i, 1 i m}, where m = min{m 1, m 2 }. Etzion and Östergard (1998): C is a code of length n = n 1 + n 2 with minimum asymmetric distance 2, i.e. a code correcting one error on the Z-channel of length n = n 1 + n 2. Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.22/30

One Error on the Z-Channel A procedure for finding a code C of length n and minimum asymmetric distance 2: 1. Choose n 1 and n 2 such that n 1 + n 2 = n. 2. Choose ɛ = 0 or 1. 3. Compute Π(n 1 ) and Π(n 2, 2i + ɛ), i = 0,..., n 2 /2. 4. Set C = n 2 /2 i=0 (Π(n 1 ) Π(n 2, 2i + ɛ)). Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.23/30

One Error on the Z-Channel INPUT: G = (V, E); OUTPUT: I 1, I 2,..., I m. 0. i=0; 1. while G for j = 1 to k end Find a maximal independent set IS j ; if IS j < IS j 1 break end Construct graph G; Find a maximal independent set MIS = {IS i1,..., IS ip } of G; I i+q = IS iq, q = 1,..., p; p G = G G(I i+q ); i = i + p; q=1 Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.24/30

One Error on the Z-Channel Π(n, 0) consists of one (zero) codeword, Π(n, 1) consists of n codes of size 1, Π(n, 2) consists of n 1 codes of size n/2 for even n, Index vectors of Π(n, w) and Π(n, n w) are equal; Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.25/30

One Error on the Z-Channel Partitions of asymmetric codes found. n # Partition index vector Norm m 8 1 36,34, 34, 33, 30, 29, 26, 25, 9 7820 9 9 1 62, 62, 62, 61, 58, 56, 53, 46, 29, 18, 5 27868 11 2 62, 62, 62, 62, 58, 56, 53, 43, 32, 16, 6 27850 11 3 62, 62, 62, 61, 58, 56, 52, 46, 31, 17, 5 27848 11 4 62, 62, 62, 62, 58, 56, 52, 43, 33, 17, 5 27832 11 5 62, 62, 62, 62, 58, 56, 54, 42, 31, 15, 8 27806 11 10 1 112, 110, 110, 109, 105, 100, 99, 88, 75, 59, 37, 16, 4 97942 13 2 112, 110, 110, 109, 105, 101, 96, 87, 77, 60, 38, 15, 4 97850 13 3 112, 110, 110, 108, 106, 99, 95, 89, 76, 60, 43, 15, 1 97842 13 4 112, 110, 110, 108, 105, 100, 96, 88, 74, 65, 38, 17, 1 97828 13 Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.26/30

One Error on the Z-Channel Partitions of constant weight codes obtained k w Partition index-vector Norm m 10 4 30, 30, 30, 30, 26, 25, 22, 15, 2 5614 9 12 4 51, 51, 51, 51, 49, 48, 48, 42, 42, 37, 23, 2 22843 12 12 4 51, 51, 51, 51, 49, 48, 48, 45, 39, 36, 22, 4 22755 12 12 4 51, 51, 51, 51, 49, 48, 48, 45, 41, 32, 22, 6 22663 12 12 6 132, 132, 120, 120, 110, 94, 90, 76, 36, 14 99952 10 14 4 91, 91, 88, 87, 84, 82, 81, 79, 76, 73, 66, 54, 38, 11 78399 14 14 4 91, 90, 88, 85, 84, 83, 81, 79, 76, 72, 67, 59, 34, 11, 1 78305 15 14 6 278, 273, 265, 257, 250, 231, 229, 219, 211, 672203 16 203, 184, 156, 127, 81, 35, 4 Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.27/30

One Error on the Z-Channel Example: n = 18, n 1 = 8, n 2 = 10. Π(8) = {36, 34, 34, 33, 30, 29, 26, 25, 9}; Π(10, 4) = {30, 30, 30, 30, 26, 25, 22, 15, 2}. Π(8) Π(10, 0) = Π(8) Π(10, 10) = 36 1 = 36; Π(8) Π(10, 2) = Π(8) Π(10, 8) = 256 5 = 1280; Π(8) Π(10, 4) = Π(8) Π(10, 6) = 36 30 + 34 30 + 34 30 + 33 30 + 30 26 + 29 25 + 26 22 + 25 15 + 9 2 = 6580; The total is 2(36 + 1280 + 6580) = 15792 codewords. Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.28/30

One Error on the Z-Channel Improved lower bounds. Previous results by: (a)-etzion (1991); (b)- Etzion and Östergard (1998) Lower bound n new previous 18 15792 15762(a) 19 29478 29334(b) 20 56196 56144(b) 21 107862 107648(b) 22 202130 201508(b) 24 678860 678098(b) Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.29/30

Conclusion Improved lower bounds and exact solutions for the size of largest error-correcting codes were obtained. Structural properties (automorphisms,...) of the considered graphs can be utilized more efficiently to reduce problem size. We used computational approach. Can the problem be solved analytically? Computing Largest Correcting Codes and Their Estimates Using Optimization on Specially Constructed Graphs p.30/30