Za dano množico točk poišči KONVEKSNO OGRINJAČO s pomočjo JARVISOVEGA OBHODA.
PROBLEM
Za dano množico točk poišči KONVEKSNO OGRINJAČO s pomočjo JARVISOVEGA OBHODA.
KONVEKSNA OGRINJAČA
KONVEKSNA OGRINJAČA - PRIMER ZA LAŽJE RAZUMEVANJE
Imamo npr. spodnjo množico točk:
Predstavljamo si, da okoli točk napnemo elastiko (moder kvadrat):
Spustimo elastiko:
KONVEKSNA OGRINJAČA - PRIMERI
|
KONVEKSNA OGRINJAČA - ALGORITMI
Opomba
Konveksni ogrinjači drugače rečemo tudi konveksna ovojnica ali konveksna lupina.
KONVEKSNA OGRINJAČA - UPORABA V "PRAKSI"
Algoritmi za iskanje konveksne ogrinjače se uporabljajo v praksi v naslednjih primerih:
JARVISOV OBHOD - O ALGORITMU
Idejo algoritma bi lahko najenostavne ponazorili s tem, da pri algoritmu posnemamo postopek zavijanja darila v dvodimenzionalnem prostoru.
ALGORITEM - JARVISOV OBHOD
Za začetno točko vzamemo točko iz množice D, za katero zagotovo vemo, da je del konveksne ogrinjače.
S pomočjo točke T1 poiščemo naslednjo točko, ki je del konveksne ogrinjače.
Izberemo tisto točko (T2), katere premica s premico p2 oklepa najmanjši kot.
Iščemo i-to točko (Ti) konveksne ogrinjače.
Za naslednjo točko (Ti) konveksne ogrinjače vzamemo tisto točko, katere premica oklepa najmanjši kot s premico pi-1.
JARVISOV OBHOD - ČASOVNA ZAHTEVNOST
Časovna zahtevnost algoritma je O(nh).
Za vsako točko, ki je del konveksne ogrinjače porabimo:
Če je h število točk, ki sestavljajo konveksno ogrinjačo, potem je celotna časovna zahtevnost O(nh).
V najslabšem primeru so vse točke množice del konveksne ogrinjače. Takrat je časovna zahtevnost O(n2).
JARVISOV OBHOD - 1. PRIMER
JARVISOV OBHOD - 2. PRIMER
JARVISOV OBHOD - "IZROJEN" PRIMER
Na premici, ki s premico pi (v spodnjem primeru premico p2) oklepa najmanjši kot, leži več točk.
V našem primeru tako za naslednjo točko (točko T3) izberemo točko, ki leži na premici, ki s premico p2 oklepa najmanjši kot in je najbližnja točki T2.
Sedaj lahko postopek nadalaljujemo.
KVIZ - 1. VPRAŠANJE
Namig - definicija konveksne množice:
Konveksna množica je množica točk, za katero velja, da pri poljubni izbiri točk A in B iz te množice, daljica AB v celoti leži v tej množici.
KVIZ - 2. VPRAŠANJE
KVIZ - 3. VPRAŠANJE
VIRI
Definicije konveksne ogrinjače in konveksne množice:
Uporaba konveksne ogrinjače v praksi:
Algoritem: