Po - PowerPoint PPT Presentation

About This Presentation
Title:

Po

Description:

Po re na metoda la ji del ra unalnik, te ji del mi Opis problema Imamo n elementov ai Izberimo podmno ico {ai, i J}, J {1,2, ,n} dopustna podmno ica – PowerPoint PPT presentation

Number of Views:48
Avg rating:3.0/5.0
Slides: 23
Provided by: Mati121
Category:
Tags:

less

Transcript and Presenter's Notes

Title: Po


1
Požrešna metoda
  • lažji del racunalnik, težji del mi
  • Opis problema
  • Imamo n elementov ai
  • Izberimo podmnožico ai, i ? J, J ? 1,2,,n
  • dopustna podmnožica
  • optimalna podmnožica
  • Ideja
  • rešitev gradimo postopoma
  • dodamo element, ki prinese najvec, ce je še
    dopusten

2
Razporeditev n enot na trak
  • n enot z dolžinami li moramo shraniti na magnetni
    trak, tako da bo povprecni cas klica najmanjši
  • pred vsakim branjem trak previjemo na zacetek
  • enako pogosto klicemo enote
  • cas branja premo sorazmeren z dolžino

3
Razporeditev n enot na trak
  • ik - številka programa, ki je na k-tem mestu
  • tk - cas, ki ga potrebujemo za branje ik-tega
    programa
  • povprecni cas klica

4
Razporeditev n enot na trak
  • na r tem koraku - katero enoto bomo izbrali
  • dodajamo v nepadajocem vrstnem redu
  • Dokaz požrešna metoda deluje optimalno
  • naj bodo oznacene l1 lt l2 lt lt ln
  • povprecen cas branja

5
Razporeditev n enot na trak
  • Zamenjajmo vrstni red i-te in j-te enote
  • I-to enoto torej preberemo (n - j 1)krat
  • Kaj se spremeni v casu

6
Preprosti problem nahrbtnika
  • majhen nahrbtnik, veliko predmetov
  • velikost predmeta vi
  • cena (vrednost) predmeta ci
  • predpostavka predmete lahko režemo
  • išcemo xi med 0 in 1 ki nam pove, koliko vzamemo
    i-tega elementa

7
Preprosti problem nahrbtnika
  • predmet vzamemo, ce imamo še prostor
  • strategija A vzamemo najvec vreden predmet
  • V 20, v (20, 10, 10), c (10, 9, 9)
  • strategija B vzamemo najmanjši predmet
  • V 20, v (9, 10, 10), c (1,10,10)
  • prava strategija glede na vrednost ci/vi

8
Povežimo racunalnike
  • V šoli imamo n racunalnikov. Radi bi jih povezali
    s koaksialnim kablom.
  • Predlagaj možni nacin povezave, ustrezno PS, ...
    Dolocene povezave seveda niso možne denimo med
    racunalnikom 5 in 6 ni mogoce potegniti kabla.
  • Možnost 1
  • Možnost 2
  • Možnost 3

9
Povežimo racunalnike
  • V šoli imamo n racunalnikov. Radi bi jih povezali
    s koaksialnim kablom.
  • Predlagaj možni nacin povezave, ustrezno PS, ...
    Dolocene povezave seveda niso možne denimo med
    racunalnikom 5 in 6 ni mogoce potegniti kabla.
    Zanima nas rešitev, pri kateri bomo porabili
    najmanj kabla!

10
Podobni problemi
  • Kabelsko omrežje
  • poceni podzemna železnica
  • Tiskana vezja
  • Kakršna koli povezava n tock (vozlišc), kjer je
    pomembno le, da iz poljubne tocke pridemo do
    poljubne tocke

11
Minimalno vpeto drevo
  • Omrežje
  • N vozlišc, m povezav, vrednosti povezav
  • Ce povezave ni vrednost ?
  • Primer
  • Primov algoritem
  • Kruskalov algoritem

12
Kabelsko omrežje med mesti
  • Zacnimo v nekem mestu /tistemu, ki ima najboljše
    restavracije ?/
  • Med tistimi mesti, do katerih je možno priti,
    izberemo tistega, do katerega lahko položimo
    kabel najceneje
  • Položimo kabel
  • Zakaj vemo, da bo to zagotovo del najcenejšega
    vpetega drevesa?

13
Zakaj postopek dela?
  • Ce ne vzamemo zraven a c, mora obstajati med a
    in c pot preko d.
  • Ta pa je zagotovo dražja od direktne poti a - c.

6
4
14
Kako naprej
  • Pregledamo, koliko nas stane gradnja do mest,
    dosegljivih iz a in c
  • Torej poišcemo najcenejšo povezavo med vozlišci
    v doslej zgrajenem vpetem drevesu in tistimi, ki
    tam še niso
  • Dodamo najcenejše dosegljivo mesto denimo x

15
Kako naprej
  • Pregledamo, koliko nas stane gradnja do mest,
    dosegljivih iz a, x (zadnje dodano) in c
  • Torej poišcemo najcenejšo povezavo med vozlišci
    v doslej zgrajenem vpetem drevesu in tistimi, ki
    tam še niso
  • Seveda upoštevamo samo tiste povezave iz a, c in
    x, ki gredo do novih mest povezave med a, c
    in x nas NE zanimajo vec (ceprav so morda poceni,
    a so nepotrebne)

16
Algoritem
  • Zacni s poljubnim vozlišcem. To je zacetno vpeto
    drevo.
  • Dokler ne dodaš n-1 vozlišc, ponavljaj
  • Izberi najcenejšo povezavo med vozlišci v doslej
    zgrajenem vpetem drevesu in vozlišci, ki še niso
    del drevesa
  • Dodaj to povezavo v drevo

17
Algoritem
  • Pripravi vrsto s prednostjo
  • Vstavi zacetno vozlišce
  • Ponavljaj, dokler vrsta ni prazna
  • Poišci vse povezave med zadnjim dodanim vozlišcem
    in vozlišci, ki niso v drevesu
  • Dodaj jih v vrsto s prednostjo
  • Vzemi najcenejšo povezavo in jo dodaj v
    najcenejše vpeto drevo
  • Iz vrste s prednostjo odstrani vse povezave med
    vozlišci trenutnega vpetega drevesa

18
Drugacna ideja
  • Ker imamo 50 racunalnikov, bo potrebno 49
    povezav.
  • Vzemimo najcenejšo in povežimo racunalnika.
  • Ta racunalnika sta novo vozlišce povezave do
    njiju pa so cenejša od povezav do prvega ali
    drugega
  • Vzemimo najcenejšo med preostalimi povezavami
  • Dve možnosti
  • Med povezanima racunalnikoma in novim
  • Med dvema novima

19
Kruskalov algoritem
  • V bistvu sta obe možnosti isti (povezana
    racunalnika sta eno vozlišce)
  • Torej na tekocem koraku imamo nekaj minimalnih
    vpetih dreves
  • Posamezno vozlišce je tudi vpeto drevo!
  • Povežemo tisti vpeti drevesi, ki ju je najceneje
    povezati

20
Ostali problemi
  • razvrstitev poslov
  • drevo najkrajših poti
  • ...

21
?
  • Še pride ...

22
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com