Combinatorial Optimization in Integer Programming and Set-Cover Problems

Slide Note
Embed
Share

Explore various combinatorial optimization problems such as Integer Programming, TSP, Knapsack, Set-Cover, and more. Understand concepts like 3-Dimensional Matching, SAT, and how Greedy Algorithms play a role. Delve into NP-Hard problems like Set-Cover and analyze the outcomes of Greedy Algorithm selections.


Uploaded on Oct 08, 2024 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. Integer Programming TSP Knapsack Set-Cover VC HC 3DM Partition Planar 3SAT 3SAT SAT

  2. 3-Dimensioal (perfect) Matching 3 - Dimensiona Matching l (3DM) Y X : Given thre disjoint e sets , , each C Z of elements, n collection a and of X 3 - sets each of which Y contains element an Z of element an , of C and element an of determine , whether n contains disjoint a subcollect ion Y of ' Z 3 - sets, C containing all elements of . X

  3. p m 3 3 SAT DM For each 3CNF f construct , Y X instance an C of 3DM F = ( ) STA , , , F Z such that 3 contains 3DM. a F C

  4. X Y Z 1x = + c x 1 1

  5. Suppose 3CNF contains variables n F and clauses. m Then for m each varia ble x i construct c cycle a of 2 3 - sets. For each clause constuct t hree 3 - with two sets new vertices j in common. In mn addition, construct trash m cans.

  6. Trash Can ( ) Each trash can consists y of element an x X and element an For . every , Y z Z construct 3 - set { , , }. z x y

  7. Set-Cover Given a collection C of subsets of a set E, find a minimum subcollection C of C such that every element of E appears in a subset in C .

  8. Set-Cover is NP-Hard Decision Version: Given a collection C of subsets of finite set E, and an integer k > 0, is there a subcollection C of C, with at most k subsets, covering all elements of E? 3DM is a special case of decision version of Set-Cover. To see this, set E = X union Y union Z, k = n = |X|=|Y|=|Z| 10/8/2024 9

  9. Greedy Algorithm ' ; E C while | choose ' C | ( ') do to maximize ( ' { }) and ' { }; S f C S C f C S C

  10. Analysis Suppose , , ..., are selected by Greedy Algorithm. Denote ( ) ( ) (| | i i f C f C E + + S S S C 1 2 k = { , ..., }. Then S S opt 1 ( ))/ i f C i i 1

  11. / 1 (| | C ( ))( 1 ) | | C ( ) E f opt | E ))( f / 1 + 1 i i | | C ( ) 1 (| C ( 1 ) E f E f opt / 1 + i i 2 (| | C ( ))( 1 1 ) E f opt i + / 1 1 i | 1 ( | ) E opt one Choose to be the largest satisfying i opt | | C ( ). E f i Then k i opt 1 ( | / 1 i opt | ) E opt

  12. / 1 i | 1 ( | ) opt E opt + / i opt x | | ( E note opt 1 : ) E e x e So ln | ( / | ) i opt Thus, + k opt i + 1 ( ln (| / | )) opt E opt

  13. Theorem Greedy Algorithm produces an approximation within 1+ln n from optimal.

  14. What can we learn from them? 10/8/2024 15

  15. Outline Introduction What is a typical logic puzzle? How is it related to computer science? Matching Problem What languages can they speak? What are these tennis fans? Cats and Dogs. Who are my family? Boolean Logic Who is the youngest of them all? Who will be hired? McDonald s Addicts. 10/8/2024 16

  16. 10/8/2024 17

  17. Introduction Red Ball? Blue Ball? The labels on the bags are all wrong! Can you tell what colors the balls are in each bag by taking out only one ball? 10/8/2024 18

  18. Introduction Red Ball? Blue Ball? What can we know? The labels on the bags are all wrong! / Case 1: Case 2: Answer: Yes! Pick one ball from the first bag. 10/8/2024 19

  19. Introduction Decision Problem A question in some formal systemwith a yes-or-no answer, depending on the values of some input parameters. Common Problem in computational complexity theory theory of computation computer science Shares similarity with logic puzzles 10/8/2024 20

  20. 10/8/2024 21

  21. Matching Problem What languages can they speak? Four guys (A,B,C,D) meet at the lobby of a hotel. There are some communication problems when they are trying to make conversations. 10/8/2024 22

  22. Matching Problem What languages can they speak? Among English, French, German and Italian, each of them can speak exactly two languages. However, they cannot find a language that all can speak, and there is only one language that three of them can speak. Nobody understand both French and German. A don t speak English, but B and C need him as an interpreter. C speaks German, D doesn t, but they can communicate directly. A, B and D want to talk, but cannot find a language they all can speak. Can you figure out what languages each of them can speak? 10/8/2024 23

  23. Matching Problem What languages can they speak? Two sets: Key relation: Person & Language speaks 0-1 table can be a useful tool to solve such problems: English French German Italian A B C D 10/8/2024 24

  24. Matching Problem What languages can they speak? Each person speaks exactly 2 languages. There is no language that all of them can speak. there is only one language that 3 of them can speak. Nobody understand both French and German. A don t speak English, but B and C need him as an interpreter. C speaks German, D doesn t, but they can communicate directly. A, B and D want to talk, but cannot find a language they all can speak. 1) ENG FRE GER ITA 2) 0 A 3) B 0 1 1 0 C 0 4) D 5) 8) B = C 6) 7) 10/8/2024 25

  25. Matching Problem What languages can they speak? Each person speaks exactly 2 languages. There is no language that all of them can speak. there is only one language that 3 of them can speak. Nobody understand both French and German. A don t speak English, but B and C need him as an interpreter. C speaks German, D doesn t, but they can communicate directly. A, B and D want to talk, but cannot find a language they all can speak. 1) ENG FRE GER ITA 2) 0 1 0 A 1 0 3) B 0 1 1 1 0 1 C 0 0 0 4) 1 1 D 5) 8) B = C 6) Assume A and B both speak French 7) Is this answer unique? 10/8/2024 26

  26. Matching Problem What languages can they speak? Each person speaks exactly 2 languages. There is no language that all of them can speak. there is only one language that 3 of them can speak. Nobody understand both French and German. A don t speak English, but B and C need him as an interpreter. C speaks German, D doesn t, but they can communicate directly. A, B and D want to talk, but cannot find a language they all can speak. 1) ENG FRE GER ITA 2) 0 0 1 1 A 3) B 0 0 1 1 1 1 0 0 1 0 C 0 1 4) D 5) 8) B = C 6) Assume A and B both speak Italian 7) Answer: Yes! See Previous Slide 10/8/2024 27

  27. Matching Problem Matching Given a 0-1 table representing some relation between sets A and B: if each column and row of the table contains at most one 1 , then this relation is a matching between A and B. if each column and row of the table contains exactly one 1 , then this relation is a perfectmatching between A and B. 10/8/2024 28

  28. Matching Problem What are these tennis fans? Adam, Brian, Chris and David are all tennis fans in a company. Their titles are VP, manager, secretary and intern (not necessarily in this order). 10/8/2024 29

  29. Matching Problem What are these tennis fans? Although the VP always loses to the manager, he plays only with the manager. The manager and intern play better than the secretary. Adam and Brian s offices are next to each other, and they play together quite often. Chris always wins when playing with Adam. The secretary s office is only next to the VP s office. Can you figure out what title each of them has? 10/8/2024 30

  30. Matching Problem What are these tennis fans? The VP always loses to the manager, and they only play with each other. The manager and intern play better than the secretary. Adam and Brian s offices are next to each other, and they play together quite often. Chris always wins when playing with Adam. The secretary s office is only next to the VP s office. 1) VP Man Sec Int 2) 0 1 1 0 0 0 A 0 0 B 3) 1 0 0 0 0 0 1 C 0 D 4) 5) Answer: Yes! See the table 10/8/2024 31

  31. Matching Problem Procedure to Solve Perfect Matching Problem Step 1: find as many exist and not exist relations as possible from the conditions Step 2: fill 0 to all empty cells in the rows and columns that have 1 If there is no empty cell, then stop; If there is any row or column containing only one empty cell, then fill it with 1 , go to Step 2; otherwise, go to Step 1. 10/8/2024 32

  32. Matching Problem Cats and Dogs Families A, B, C, D, and E have pets. Each of them has one dog and one cat. Within the family, the cat and dog get along peacefully with each other. However, every dogs would love to bite cats from other families. 10/8/2024 33

  33. Matching Problem Cats and Dogs One day, every dog bit a cat. All cats got bitten. The cat bitten by the dog from family A is from the family whose dog bit the cat from family E. The dog from family B bit the cat from family A. The dog who bit the cat from family D is from the same family whose cat was bitten by the dog from family C. Can you figure out whose cat was bitten by the dog from family D? 10/8/2024 34

  34. Matching Problem Cats and Dogs Dogs don t bite cats from the same family. Every dog bit a cat. All cats got bitten. The cat bitten by the dog A is from the family whose dog bit cat E. Dog B bit cat A. The dog who bit cat D is from the same family whose cat was bitten by dog C. 1) CatA 0 1 0 0 0 Cat B 0 Cat C Cat D 0 Cat E 0 1 Dog A 2) 0 0 0 1 0 0 0 1 0 Dog B 3) 0 0 Dog C 4) 0 1 Dog D 0 0 0 Dog E 5) (A,x) = (x,E) = 1 (y,D) = (C,y) = 1 6) x = C or E y = E Answer: Yes! Dog D bit cat B. 35 10/8/2024

  35. Matching Problem 3-Matching Sets A, B and C, each contains n elements. Set F contains vectors (a,b,c), a A, b B, c C. F is a 3-matching of A,B and C if: It contains exactly n vectors; Each element in A,B and C appears exactly once in F. Many logic puzzles are 3-matching problem. We may need more than one table to solve them. 10/8/2024 36

  36. Matching Problem Who are my family? There are three families, each has three members. The husbands names are Adam, Brian and Chris; The wives names are Dana, Ella and Fanny; The kids names are Matt, Nancy and Oliver. 10/8/2024 37

  37. Matching Problem Who are my family? Chris is not Fanny s husband, nor Nacy s dad. Ella is not Brian s wife, nor Oliver s mom. Fanny is Matt s mom if Oliver s dad is Brian or Chris. If Fanny is Brian s wife, Dana is not Oliver s mom. Can you figure out the members of each family? 10/8/2024 38

  38. Matching Problem Who are my family? Dana Ella Fanny Husband = {Adam, Brian, Chris} Wife = {Dana, Elle, Fanny} Kid = {Matt, Nancy, Oliver} Adam Brian Chris Matt Nancy Oliver Adam Brian Chris Dana Ella Fanny Matt Nancy Oliver 10/8/2024 39

  39. Matching Problem Who are my family? Dana Ella Fanny Chris is not Fanny s husband, nor Nacy s dad. Ella is not Brian s wife, nor Oliver s mom. Fanny is Matt s mom if Oliver s dad is Brian or Chris. If Fanny is Brian s wife, Dana is not Oliver s mom. Adam 0 Brian 0 Chris Matt Nancy Oliver Adam Brian 0 Chris Dana Ella Fanny Matt Nancy 0 Oliver 10/8/2024 40

  40. Matching Problem Who are my family? Dana 0 Ella 0 Fanny 1 Chris is not Fanny s husband, nor Nacy s dad. Ella is not Brian s wife, nor Oliver s mom. Fanny is Matt s mom if Oliver s dad is Brian or Chris. If Fanny is Brian s wife, Dana is not Oliver s mom. Adam 1 0 0 1 0 Brian 0 Chris Matt 1 Nancy Oliver Adam 1 Brian 0 1 Chris Dana 0 0 1 Ella 0 1 Fanny 1 0 0 Assume Fanny is Matt s mom. Matt Nancy 0 Oliver 10/8/2024 41

  41. Matching Problem Who are my family? Dana Ella 0 Fanny Chris is not Fanny s husband, nor Nacy s dad. Ella is not Brian s wife, nor Oliver s mom. Fanny is Matt s mom if Oliver s dad is Brian or Chris. If Fanny is Brian s wife, Dana is not Oliver s mom. Adam 0 1 Brian 0 0 Chris Matt 0 0 Nancy 0 1 Oliver 1 0 0 Adam Brian 1 0 Chris Dana 0 Ella 1 Fanny 0 Matt Oliver s dad is Adam. 0 Nancy 0 Oliver 10/8/2024 42

  42. Matching Problem Who are my family? Dana 1 0 Ella 0 Fanny 0 1 Chris is not Fanny s husband, nor Nacy s dad. Ella is not Brian s wife, nor Oliver s mom. Fanny is Matt s mom if Oliver s dad is Brian or Chris. If Fanny is Brian s wife, Dana is not Oliver s mom. Adam 0 1 Brian 0 0 Chris Matt 0 0 Nancy 0 1 Oliver 1 0 0 Adam Brian 1 0 Chris Oliver s dad is Adam. Dana 0 0 Ella 1 Fanny 0 1 0 Assume Dana is Adam s wife. Matt 0 Nancy 1 0 Oliver 10/8/2024 43

  43. Matching Problem Who are my family? Dana Ella 0 Fanny 1 Chris is not Fanny s husband, nor Nacy s dad. Ella is not Brian s wife, nor Oliver s mom. Fanny is Matt s mom if Oliver s dad is Brian or Chris. If Fanny is Brian s wife, Dana is not Oliver s mom. Adam 1 0 1 Brian 0 0 Chris Matt 0 0 Nancy 0 1 Oliver 1 0 0 Adam Brian 1 0 Chris Oliver s dad is Adam. Dana 0 1 Ella 1 Fanny 0 Fanny is Adam s wife. Matt 0 Nancy Answer: Yes! See the table. 1 0 Oliver 10/8/2024 44

  44. 10/8/2024 45

  45. Boolean Logic Boolean Logic A form of algebra in which all values are reduced to either TRUE or FALSE. Especially important forcomputer science because it fits nicely with the binary numbering system (0 or 1). Powerful tool for reasoning. 10/8/2024 46

  46. Boolean Logic What is Boolean Logic? Operand: TRUE (1), FALSE (0). Operator: AND( ), OR(+), NOT( ). 0+0 = 0; 0+1 = 1; 1+0 = 1; 1+1 = 1; 0 0 = 0; 0 1 = 0; 1 0 = 0; 1 1 = 1; 0 = 1; 1 = 0. 10/8/2024 47

  47. Boolean Logic Properties Commutative: x + y = y + x; xy = yx; Associative: x + (y + z) = (x + y) + z; x(yz) = (xy)z; Distributive. x(y + z) = xy + xz; (x + y)z = xz + yz; De Morgan's laws: x y x = + = x y + x y y 10/8/2024 48

  48. Boolean Logic Who is the youngest of them all? Three kids are talking about their ages. Adam: If Chris is not the youngest, then I am. Brian: If I am not the youngest, then Adam is the oldest. Who is the youngest of them all? 10/8/2024 49

  49. Boolean Logic Who is the youngest of them all? A, B, C stand for Adam, Brian and Chris respectively. Xo means X is the oldest; Xy means X is the youngest. If Chris is not the youngest, then Adam is. Cy + Ay = 1 If Brian is not the youngest, then Adam is the oldest. By + Ao= 1 10/8/2024 50

Related


More Related Content