Oberoende uppsättning (grafteori) - Independent set (graph theory)

De nio blå hörnen utgör en maximal oberoende uppsättning för Generalized Petersen -grafen GP (12,4).

I grafteorin är en oberoende uppsättning , stabil uppsättning , coclique eller anticlique en uppsättning hörn i en graf , av vilka inte två ligger intill varandra. Det vill säga, det är en uppsättning hörn så att för varje två hörn i , finns det ingen kant som förbinder de två. På motsvarande sätt har varje kant i grafen högst en slutpunkt i . En uppsättning är oberoende om och bara om det är en klick i grafens komplement . Storleken på en oberoende uppsättning är antalet hörn den innehåller. Oberoende uppsättningar har också kallats "internt stabila uppsättningar", varav "stabila uppsättningar" är en förkortning.

En maximal oberoende uppsättning är en oberoende uppsättning som inte är en korrekt delmängd av någon annan oberoende uppsättning.

En maximal oberoende uppsättning är en oberoende uppsättning med största möjliga storlek för en given graf . Denna storlek kallas självständighetsnummer för och brukar betecknas med . Det optimeringsproblem att hitta en sådan uppsättning kallas maximalt oberoende uppsättning problem. Det är ett starkt NP-hårt problem. Som sådan är det osannolikt att det finns en effektiv algoritm för att hitta en maximal oberoende uppsättning av en graf.

Varje maximal oberoende uppsättning är också maximal, men den motsatta implikationen håller inte nödvändigtvis.

Egenskaper

Förhållande till andra grafparametrar

En uppsättning är oberoende om och bara om det är en klick i grafens komplement , så de två begreppen är komplementära. Faktum är att tillräckligt stora grafer utan stora klickar har stora oberoende uppsättningar, ett tema som utforskas i Ramsey -teorin .

En uppsättning är oberoende om och endast om dess komplement är en toppunktskydd . Därför är summan av storleken på den största oberoende uppsättningen och storleken på ett minimum vertex -lock lika med antalet hörn i grafen.

En hörnfärgning av en graf motsvarar en uppdelning av dess toppunkt i oberoende delmängder. Därför är det minimala antal färger som behövs i en toppunktsfärgning, det kromatiska talet , åtminstone kvoten för antalet hörn i och det oberoende talet .

I en bipartitgraf utan isolerade hörn är antalet hörn i en maximal oberoende uppsättning lika med antalet kanter i en minsta kantbeläggning ; detta är Kőnigs sats .

Maximal oberoende uppsättning

En oberoende uppsättning som inte är en korrekt delmängd av en annan oberoende uppsättning kallas maximal . Sådana uppsättningar är dominerande uppsättningar . Varje graf innehåller högst 3 n /3 maximala oberoende uppsättningar, men många grafer har mycket färre. Antalet maximala oberoende uppsättningar i n -vertex cyklisk graf ges av perrintal , och antalet maximala oberoende uppsättningar i n -vertex path grafer ges av Padovan sekvensen . Därför båda talen är proportionella mot befogenheter 1.324718 ..., den plastnummer .

Hitta oberoende uppsättningar

Inom datavetenskap har flera beräkningsproblem relaterade till oberoende uppsättningar studerats.

  • I problemet med maximal oberoende uppsättning är ingången en oriktad graf och utmatningen är en maximal oberoende uppsättning i grafen. Om det finns flera maximala oberoende uppsättningar behöver bara en matas ut. Detta problem kallas ibland " vertexpackning ".
  • I maximal vikt oberoende uppsättning problem, är den ingående en oriktad graf med vikter på dess hörn och utsignalen är en oberoende uppsättning med maximal totalvikt. Det maximala oberoende inställningsproblemet är specialfallet där alla vikter är ett.
  • I problemet med maximal oberoende uppsättningslista är ingången en oriktad graf och utmatningen är en lista över alla dess maximala oberoende uppsättningar. Det maximala oberoende uppsättningsproblemet kan lösas genom att använda som en underprogram en algoritm för det maximala oberoende uppsättningsuppgiftsproblemet, eftersom den maximala oberoende uppsättningen måste inkluderas bland alla de maximala oberoende uppsättningarna.
  • I det oberoende uppsättningsbeslutsproblemet är ingången en oriktad graf och ett tal k , och utmatningen är ett booleskt värde : sant om grafen innehåller en oberoende uppsättning av storlek k , och falskt annars.

De tre första av dessa problem är alla viktiga i praktiska tillämpningar; det oberoende beslutsproblemet är inte, men är nödvändigt för att tillämpa teorin om NP-fullständighet på problem relaterade till oberoende uppsättningar.

Maximala oberoende uppsättningar och maximala klickningar

Det oberoende uppsättningsproblemet och klickproblemet är komplementära: en klick i G är en oberoende uppsättning i komplementdiagrammet för G och vice versa. Därför kan många beräkningsresultat tillämpas lika bra på båda problemen. Resultaten relaterade till klickproblemet har till exempel följande konsekvenser:

  • Det oberoende beslutsproblemet är NP-komplett , och därför tror man inte att det finns en effektiv algoritm för att lösa det.
  • Det maximala oberoende inställningsproblemet är NP-hårt och det är också svårt att uppskatta .

Trots det nära sambandet mellan maximala klickningar och maximala oberoende uppsättningar i godtyckliga grafer kan de oberoende uppsättningarna och klickproblemen vara mycket olika när de begränsas till särskilda klasser av grafer. Till exempel, för glesa grafer (grafer där antalet kanter högst är konstanta gånger antalet hörn i någon undergraf), har den maximala klicken begränsad storlek och kan hittas exakt i linjär tid; för samma klasser av grafer, eller till och med för den mer begränsade klassen av gränsade grafer, är det dock MAXSNP-komplett att hitta den maximala oberoende uppsättningen , vilket innebär att det för vissa konstanta c (beroende på graden) är NP-svårt att hitta en ungefärlig lösning som ligger inom en faktor c av det optimala.

Hitta maximalt oberoende uppsättningar

Exakta algoritmer

Det maximala oberoende inställningsproblemet är NP-hårt. Det kan dock lösas mer effektivt än O ( n 2  2 n ) -tiden som skulle ges av en naiv brute force -algoritm som undersöker varje vertex -delmängd och kontrollerar om det är en oberoende uppsättning.

Från och med 2017 kan det lösas i tid O (1.1996 n ) med hjälp av polynomrum. När den är begränsad till grafer med maximal grad 3 kan den lösas i tid O (1.0836 n ).

För många klasser av grafer kan en oberoende uppsättning med maximal vikt hittas under polynomtiden. Kända exempel är klofria grafer , P 5 -fria grafer och perfekta grafer . För ackordgrafer kan en oberoende maximal viktuppsättning hittas i linjär tid.

Modulär sönderdelning är ett bra verktyg för att lösa det maximala viktoberoende setproblemet; den linjära tidsalgoritmencographs är det grundläggande exemplet för det. Ett annat viktigt verktyg är klickseparatorer som beskrivs av Tarjan.

Kőnigs sats antyder att i en bipartitgraf kan den maximala oberoende uppsättningen hittas i polynomtid med hjälp av en bipartitmatchningsalgoritm.

Approximationsalgoritmer

I allmänhet kan det maximala oberoende uppsättningsproblemet inte approximeras till en konstant faktor i polynomtid (om inte P = NP). Faktum är att Max Independent Set i allmänhet är Poly-APX-komplett , vilket betyder att det är lika svårt som alla problem som kan approximeras till en polynomfaktor. Det finns dock effektiva approximationsalgoritmer för begränsade klasser av grafer.

I plana grafer kan den maximala oberoende uppsättningen approximeras till inom varje approximationsförhållande c  <1 i polynomtid; liknande schema för tillnärmning av polynomtid finns i alla familjer av grafer som stängs under att ta minderåriga .

I avgränsade grafer är effektiva approximationsalgoritmer kända med approximationsförhållanden som är konstanta för ett fast värde för den maximala graden; till exempel uppnår en girig algoritm som bildar en maximal oberoende uppsättning genom att vid varje steg välja minsta gradens toppunkt i grafen och ta bort dess grannar ett approximationsförhållande på (Δ+2)/3 på grafer med maximal grad Δ. Approximationshårdhetsgränser för sådana fall bevisades i Berman & Karpinski (1999) . Faktum är att även Max Independent Set på 3-vanliga 3-kant-färgbara grafer är APX-komplett .

Oberoende uppsättningar i intervallskärningsgrafer

Ett intervalldiagram är en graf där noder är 1-dimensionella intervall (t.ex. tidsintervall) och det finns en kant mellan två intervall om och bara om de skär varandra. En oberoende uppsättning i ett intervalldiagram är bara en uppsättning icke-överlappande intervall. Problemet med att hitta maximala oberoende uppsättningar i intervalldiagram har studerats, till exempel i samband med jobbplanering : med tanke på en uppsättning jobb som måste utföras på en dator, hitta en maximal uppsättning jobb som kan utföras utan att störa med varandra. Detta problem kan lösas exakt i polynomtid med hjälp av tidigaste tidsplanering första schemaläggning .

Oberoende uppsättningar i geometriska skärningslinjer

En geometrisk skärningslinje är en graf där noder är geometriska former och det finns en kant mellan två former om och bara om de skär varandra. En oberoende uppsättning i en geometrisk skärningslinje är bara en uppsättning av osammanhängande (icke-överlappande) former. Problemet med att hitta maximala oberoende uppsättningar i geometriska skärningslinjer har studerats, till exempel i samband med automatisk etikettplacering : med en uppsättning platser på en karta, hitta en maximal uppsättning av osammanhängande rektangulära etiketter nära dessa platser.

Att hitta en maximal oberoende uppsättning i skärningskort är fortfarande NP-komplett, men det är lättare att approximera än det allmänna maximala oberoende uppsättningsproblemet. En nyligen genomförd undersökning finns i introduktionen av Chan & Har-Peled (2012) .

Hitta maximala oberoende uppsättningar

Problemet med att hitta en maximal oberoende uppsättning kan lösas på polynomtid med en trivial girig algoritm . Alla maximala oberoende uppsättningar kan hittas i tiden O (3 n /3 ) = O (1,4423 n ).

Programvara för att söka efter maximal oberoende uppsättning

namn Licens API -språk Kort info
igraph GPL C, Python, R, Ruby exakt lösning. "Den nuvarande implementeringen portades till igraph från Very Nauty Graph Library av Keith Briggs och använder algoritmen från tidningen S. Tsukiyama, M. Ide, H. Ariyoshi och I. Shirawaka. En ny algoritm för att generera alla maximala oberoende uppsättningar . SIAM J Computing, 6: 505–517, 1977 ".
LightGraphs MIT Julia exakt lösning. Se dokumentationen för mer information.
NetworkX BSD Pytonorm ungefärlig lösning, se rutinen maximum_independent_set
mis Öppen Rost (binärer) ungefärlig lösning genom slumpmässig provtagning av maximalt oberoende uppsatt utrymme, se webbsida för mer information

Ansökningar

Den maximala oberoende uppsättningen och dess dubbla, det minimala toppunktsprovet , är involverat i att bevisa beräkningskomplexiteten hos många teoretiska problem. De fungerar också som användbara modeller för verkliga optimeringsproblem, till exempel minsta oberoende uppsättning är en användbar modell för att upptäcka stabila genetiska komponenter för att designa konstruerade genetiska system .

Se även

  • En oberoende uppsättning kanter är en uppsättning kanter av vilka inga två har en toppunkt gemensamt. Det brukar kallas en matchning .
  • En vertexfärgning är en uppdelning av vertexuppsättningen i oberoende uppsättningar.

Anteckningar

Referenser

externa länkar