next up previous
Next: About this document Up: No Title Previous: No Title

Algoritmien teoria, kevät 1999
Harjoitus 6, 1.3. klo 10-12 sali MaD380

  1. Tarkastellaan kauppamatkustajan ongelmaa täydellisessä verkossa G, jonka solmuina ovat tason pisteet (i,j), missä i = 1,2,3 ja j = 1,2,3. Solmuja on siis yhdeksän kappaletta. Solmujen välisten kaarten kustannukset ovat samat kuin vastaavien pisteiden euklidiset etäisyydet. Simuloi luennolla (muistiinpanojen ss. 143-146) esitettyjen kahden tex2html_wrap_inline41 TSP-approksimointialgoritmin (``kahdesti puun ympäri'' -tekniikka ja Christofidesin algoritmi) toimintaa tässä verkossa. Kokeile kahta tai useampaa virittävää puuta algoritmien lähtökohtana. Laske myös algoritmien tuottamien ratkaisujen suhteelliset virheet.
  2. Tarkastellaan seuraavaa solmupeiteongelman ahnetta approksimointialgoritmia: Verkosta valitaan peitteeseen lisättäväksi solmu, jonka asteluku on mahdollisimman suuri, ja poistetaan kaikki siihen liittyvät kaaret. Tätä toistetaan, kunnes verkossa ei ole enää kaaria jäljellä. Osoita, että algoritmi voi pahimmassa tapauksessa valita peitteen C, jolla tex2html_wrap_inline45 , missä tex2html_wrap_inline47 on optimipeite.
  3. Ratkaise repunpakkausongelma, jossa tavaroiden ``koot'' ovat (4, 1, 2, 3, 2, 1, 2) ja ``arvot'' vastaavasti (299, 73, 159, 221, 137, 89, 157) soveltamalla luennolla (ss. 149-152) esitettyä tex2html_wrap_inline49 -approksimointiskeemaa parametrin tex2html_wrap_inline49 arvolla 1. Repun maksimikoko on 10.
  4. Tarkastellaan seuraavaa NP-täydellistä lokerointiongelmaa (engl. Bin Packing):
    Annettu joukko välin (0,1) reaalilukuja tex2html_wrap_inline55 . Luvut on ositettava mahdollisimman pieneen määrään osajoukkoja (``lokeroita'') siten, että kunkin osajoukon alkioiden summa on korkeintaan 1.
    Ongelman ahne first fit-approksimointialgoritmi toimii seuraavasti: Luvut käsitellään järjestyksessä tex2html_wrap_inline55 . Luku tex2html_wrap_inline59 sijoitetaan lokeroiden järjestyksessä ensimmäiseen lokeroon, johon se mahtuu. Osoita, että tämä menettely on 1-approksimointialgoritmi, so. tarvitsee enintään kaksinkertaisen määrän lokeroita optimaaliseen nähden. (Vihje: Osoita, että first fit-heuristiikka täyttää kaikki lokerot, paitsi mahdollisesti yhden, ainakin puolilleen.)
  5. Todista luennolla esitetty Seurauslause 7.1 (muistiinpanojen s. 153): Jos P tex2html_wrap_inline61 NP, niin luokassa NP tex2html_wrap_inline63 P on kieliä (ongelmia), jotka eivät ole NP-täydellisiä.
    1. Todista seuraava luennolla esitetyn Lauseen 7.8 (muistiinpanojen s. 154) yleistys: Olkoon tex2html_wrap_inline65 jokin kieliluokka (so. ongelmaluokka, esim. tex2html_wrap_inline67 P, NP, PSPACE,...). Kieli (ongelma) A on co- tex2html_wrap_inline65 -täydellinen, jos ja vain jos sen komplementtikieli tex2html_wrap_inline73 on tex2html_wrap_inline65 -täydellinen.
    2. Osoita tämän tuloksen perusteella, että lausekalkyylin kaavojen tautologisuusongelma (muistiinpanojen s. 154) on co-NP-täydellinen.

next up previous
Next: About this document Up: No Title Previous: No Title

Pekka Orponen
Wed Feb 24 15:02:49 EET 1999