370 likes | 488 Views
The Evolution of a Hard Graph Theory Problem – Secure Sets Ron Dutton Computer Science University of Central Florida. Many real world problems involve a collection of entities (e.g., individuals , businesses, or countries) that compete for each others resources .
E N D
The Evolution of a Hard Graph Theory Problem – Secure SetsRon DuttonComputer ScienceUniversity of Central Florida
Many real world problems involve a collection of entities (e.g., individuals, businesses, or countries) that compete for each others resources. • A group of these entities can reach mutual agreements, or pacts, to defend themselves against a common adversary. • Often, we can model such problems as a graph to more easily study properties and algorithms related to these problems.
Throughout, assume G = (V, E) is a connected graph. For a set S V, a vertex in N[S]–S V–S can "attack" any one of it's neighbors in S, while a vertex in S can "defend" itself or any one of its neighbors in S. • N[S]–S is sometimes called the "boundary" of S.
There are several ways we can define these sets. We will discuss two. Secure Sets and Defensive Alliances.
Defensive Alliances A setS V is a defensive alliance when every vertex in S has, with itself, as many neighbors in the set as outside the set – Every vertex in the alliance can be "protected." Formally, Definition: S V is a defensive alliance when |N[x] S| ≥ |N[x]–S|, for every x S.
Defensive alliances have been used to model a variety of real world applications and requires only that each individual vertex in a set S bedefendable. • The defensive alliance number, da(G), satisfies ((G)+1)/2 ≤ da(G) ≤ n/2.
Secure Sets Any and all vertices in S can be attacked simultaneously. An attack on S is an assignment for each vertex in N[S]–S to attack exactly one of its neighbors in S. For a given attack, a defense by S is an assignment for each vertex in S to defend either itself or a neighbor in S.
For a given attack and defense, a single vertex v S isdefendedif the number of defenders assigned to v is at least that of the number of attackers assigned to v. • An attack is defendable if there is a defense in which all vertices of S are simultaneously defended.
Informally, a group (set) is secure when it can successfully defend itself against any possible take-over or attack. • Definition:S V is secure when all possible attacks by N[S]–S are defendable.
S = V is always secure. So, there is always a smallest secure set. • The security number of G, s(G), is the number of vertices in a smallest secure set in G.
Every secure set is a defensive alliance. Therefore, da(G) ≤ s(G). • But, not all defensive alliances are secure. • There are graphs for which s(G) = (n+1)/2 > n/2 (one of the classes of Kneser Graphs) • (n+1)/2 has been conjectured to be an upper bound fors(G).
A graph theoretic characterization of secure sets: • Theorem.S V is secure if and only if |N[X] S| ≥ |N[X]–S| for all X S.
Determining whether a graph G has a defensive alliance with no more than k vertices has been shown to be NP–Complete. • The similar problem for secure sets remains open and may not even be in the set NP.
To see what that means: • The set NP is the set of Decision Problems whose Yes instances can – with a little help – be verified to be Yes instances in polynomial time. • "Little Help"? Actually, a lot of help!!
Example: Clique Given a graph G and an integer k. Does G have a clique with at least k vertices? If the answer is Yes, then there is a set of k vertices that induce a complete subgraph. Suppose someone (??) GAVE you that set. Then we could verify it's correctness very easily (O(n2) time at most).
That proves Clique is in NP. • Similarly, Defensive Alliance can be shown to be in NP. • But, how about SecureSet?
Suppose you have a YES instance of SecureSet and someone gave you the correct set of vertices. • How can you, in polynomial time, check that they really are a Secure Set? • We don't know!! The characterization theoremsuggests that we must check all subsets of S. There are 2k subsets that must be checked, and k can itself be O(n).
That does not mean SecureSet is NOT in NP. We may just not know what "help" is needed. • But, it's pretty good evidence. • So, what now?
SecureSet Problem • Given: A graph G = (V, E) and an integer k. • Question: Does G have a secure set S V with |S| ≤ k?
IsSecure • Given: A graph G = (V, E) and a set S V. • Question: Is S a secure set? • {That is, X S is |N[X] S| ≥ |N[X]–S|?} This problem doesn't seem to be in NP either!!!
IsNotSecure(Co–IsSecure) • Given: A graph G = (V, E) and a set S V. • Question: Does there exist W S such that |N[W] S| < |N[W]–S|?
Theorem. IsNotSecure is in the set NP. • Given a Yes instance and a set W S that makes it a Yes instance, we can verify W is not a secure subset in polynomial time. • That's enough, and proves the claim.
We now show IsNotSecureis NP–Complete • We need to show IsNotSecure is as "hard" as some (any) known NP–Complete problem. • That is, for some problem X in NP–Complete, design a polynomial time "conversion" algorithm that transforms any instance of X into an instance of IsNotSecure, which "preserves" Yes/No answers.
A known NP–Complete problem: Domination • Given: A graph G = (V, E) and an integer k. • Question: Is there a set D V such that |D| ≤ k and N[D] = V?
Theorem.IsNotSecure is NP–Complete. • Proof: Let G' = (V', E') and an integer k' be an arbitrary instance of Domination. We may assume 1 ≤ k' < n = |V'|, otherwise the conclusion is immediate.
Our task: Provide a way to convert an arbitrary instance I of Domination into an instance, p(I), of IsNotSecure in such a way that (1) I is a Yes instance (in Domination) if and only if p(I) is a Yes instance (in IsNotSecure), and (2) Do it in polynomial time.
1) Vertices: V = V' X Y, where • (i) X is an introduced set of n2 vertices partitioned into sets A, B, and C so that |A| = n2–n–k'–1, B = {b1, b2, …, bn}, and |C| = k'+1, and • (ii) Y is an introduced set of n2 vertices partitioned into n sets Y1, Y2, …, Yn where Yi = {yi,1, yi,2, …, yi,n}, for 1 ≤ i ≤ n.
2) Edges: E is defined by • (i) V' induces G', X induces a complete subgraph, and • (ii) for each vertex vt V', vt is also adjacent to • a) all vertices in A, • b) bt B, and • c) for 1 ≤ i ≤ n, yi,j Vi, when vjNG'[vt] 3) Finally, let S = X V'.
Vertices in A and C are unlabeled and there are no edges between vertices of Y. • For any W S, |N[W] – S| ≤ |V – S| = n2 and, for every x X, |N[x] S| ≥ n2. • Therefore, if there exists a set W S for which |N[W] S| < |N[W]–S|, W cannot contain any vertex in X. • Hence, candidate sets W must be subsets of V'.
When W V', the number of vertices in the closed neighborhood of W in V – S is exactly |N[W]–S| = n|N[W] V'| ≤ n2, Equality holds if and only if W dominates G'.
Two cases to consider for the set W V'. • Case 1: W dominates V'. Then, |N[W] S| = |A|+|V'|+|W| = n2–n–k'–1+n+|W| = n2–k'–1+|W|. From the previous comments, |N[W]–S| = n2. Therefore, |N[W] S| < |N[W]–S| if and only if n2–k'–1+|W| < n2, or |W| ≤ k'.
Case 2: W dominates n–t < n vertices of V'. Then, |N[W] S| = |A|+n–t+|W| = n2–k'–1–t+|W|. Again, since |N[W]–S| = n(n–t) = n2–nt, |N[W] S| < |N[W]–S| if and only if (n–1)t < k'+1–|W|. Since t ≥ 1 and |W| ≥ 1, we must have k' ≥ n, contradicting the assumption that k' < n. Thus, in this case, N[W] S| ≥ |N[W]–S|.
Therefore, W V' is a dominating set of G' and |W| ≤ k' if and only if, in the constructed graph G, |N[W] S| < |N[W]–S|. • Thus, IsNotSecure is NP–Complete.
It follows that IsSecure (the complement problem of IsNotSecure) is in Co–NP Complete. • Therefore, if P ≠ NP, to verify a "yes" instance of SecureSet would seem to require an oracle to first determine the set S, and then a nondeterministic algorithm to verify that S is secure.
On the other hand, a quite different result holds when P = NP. • Theorem. If P = NP, there is a deterministic polynomial algorithm for SecureSet.
Proof: When P = NP, then IsNotSecureand IsSecure are both in P. Thus, there would be a deterministic polynomial verifier for SecureSet and, hence, SecureSet would be in NP. But, if P = NP, and SecureSet is in NP, then SecureSet is in P.
4. References/Bibliography • [1] Robert C. Brigham, Ronald D. Dutton, and Stephen T. Hedetniemi, Security in graphs, Discrete Applied Mathematics, 155 (2007), no. 13, pp. 1708-1714. • [2] R. D. Dutton, R. Lee, and R. C. Brigham, Bounds on a graph's security number, Discrete Applied Mathematics 156 (2008), no. 5, pp. 695-704. • [3] Ronald D. Dutton, On a graph's security number, Discrete Mathematics, 309 (2009), pp. 4443-4447. • [4] Ronald Dutton, Secure set algorithms and complexity, CongressusNumerantium 180 (2006), pp. 115-121. • [5 ] Rosa I. Enciso and Ronald D. Dutton, Parameterized complexity of secure sets, CongressusNumerantium 189 (2008), pp. 161-168. • [6] M. Garey and D. Johnson, Computers and Intractability: the Theory of NP-Complete, (1979) W H. Freeman and Co. NY. • [7] Yiu Yu Ho and Ronald Dutton, Rooted secure sets of trees, AKCE, J. Graphs Combin, 6, No. 3 (2009), pp. 373-392. . • [8] K. Kozawa, Y. Otachi, and K. Yamazaki, Security number of grid-like graphs, Discrete Applied Mathematics, 157 (2009), pp 2555-61. • [9] P. Kristiansen, S. M. Hedetniemi, and, S. T. Hedetniemi, Alliances in graphs, J. Combin. Math. Combin. Comput. 48 (2004), pp. 155-177. • [10] Khurram H. Shafique and R. D. Dutton, On satisfactory partitioning of graphs,CongressusNumerantium 154 (2002), pp. 183-194.