masalah closest

Upload: cici-erza-safitri

Post on 06-Jul-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/17/2019 Masalah Closest

    1/14

    MASALAH CLOSEST-PAIR DAN CONVEX HULL

    Diajukan untuk memenuhi salah satu tuas kel!m"!k 

    Pa#a mata kuliah “Desain Analisis Algoritma” 

    Disusun !leh $

      Ci%i E&'a Sa(it&i )**+,*.*,//0

      Mah(i&!h Aini )**+,*.*+1/0

      2a&ti3i )**+,*.*+*10

    TE4NI4 IN5ORMATI4A

    5A4ULTAS SAINS DAN TE4NOLO6I

    UNIVERSITAS ISLAM NE6ERI SULTAN S7ARI5 4ASIM RIAU

    .*8

  • 8/17/2019 Masalah Closest

    2/14

  • 8/17/2019 Masalah Closest

    3/14

    MASALAH CLOSEST-PAIR DAN CONVEX HULL

    Masalah Cl!sest-Pai& #an Masalah C!n9e: Hull #enan ;&ute 5!&%e

    Pada bagian ini kita membahas pendekatan langsung untuk dua masalah yang sudah

    terkenal yang berhubungan dengan sebuah himpunan titik-titik berhingga pada sebuah bidang.

    Masalah-masalah ini, selain kepentingan teritis, mun$ul dalam dua penerapan bidang* +emetri

    )mputasi dan !iset perasi

    Masalah Cl!sest-Pai&

    Masalah pasangan terdekat lsest-Pair/ membutuhkan penemuan dua titik terdekat

    dalam satu himpunan n titik. 0ntuk memudahkan kita asumsikan kasusnya terdiri dari dua

    dimensi, walaupun masalah yang diajukan untuk dimensi ruang yang lebih tinggi. )ita

    asumsikan bahwa titik pada pertanyaan ditetapkan dalam bentuk standar dengan )rdinat

    artesius 1, y/ dan bahwa jarak antara dua titik P i 2 1i, yi/ dan P j 2 1 j, y j/ adalah jarak 

    3u$lidean standar 

    d ( Pi . P j )=√ ( x i− x j)2+( y i− y  j)

    2

    Pendekatan brute #r$e untuk menyelesaikan masalah ini mengarah pada algritma* menghitung

     jarak antara setiap pasangan titik yang berbeda dan menemukan pasangan dengan jarak terdekat.Tentu saja, kita tidak ingin menghitung jarak antara pasangan titik yang sama dua kali.

    Supaya tidak melakukan hal itu, kita menganggap hanya ada pasangan titik ( Pi , P j )  dimana i 4

     j.

    Al!&itma ;&ute5!&%eCl!sestP!int) P 0

    55Temukan dua titik terdekat pada bidang dengan brute #r$e

    556nput* 7a#tar P dari n n > %/ titik P

    i  2( x

    i

    , y j

    ),8..,

     Pn 2 (

     xn,

     yn )

    55utput* 6ndeks dari index1 dan index2 dari pasangan titik terdekat

    dmin 9

    (!& i i t! n < * #!

      (!& j i = * t! n #!

  • 8/17/2019 Masalah Closest

    4/14

    d s>&t   ( x i− x j)2+( y i− y  j)

    2

    / 55 sqrt adalah #ungsi akar kuadrat

    i( d ? dmin

    dmin d; index1 i; index2 j

    &etu&n index1, index2

    O"e&asi #asa& dari algrtima ini adalah menghitung jarak 3u$lidean antara dua titik.

    Pada era kalkulatr elektrnik dengan tmbl akar kuadrat, seserang mungkin meyakini bahwa

    menghitung akar kuadrat merupakan suatu perasi sederhana, katakanlah, penambahan atau

     perkalian. Sebenarnya, tidak. "agi pemula bahkan untuk sebagian besar bilangan bulat, akar 

    kuadratnya adlah bilangan irasinal yang hanya dapat menghasilakn angka yang bersi#at

     perkiraan. Selain itu, penghitungan perkiraan seperti itu bukanlah masalah sepele. Namun, dalam

    kenyataannya, penghitungan akar kuadrat dapat dihindari. aranya adalah dengan menyadari

     bahwa kita hanya dapat mengabaikan #ungsi akar kuadrat dan membandingkan nilai

    ( x i− x j)2+( y i− y  j)

    2

    . )ita bisa melakukannya karena semakin ke$il angka yang kita ambil akar 

    kuadratnya, atau, seperti yang dikatakan matematikawan, #ungsi akar kuadrat adalah meningkat.

    :adi, jika kita mengganti d   s>&t   ( x i− x j)2+( y i− y  j)

    2

    / dengan dsqr

    ( x i− x j)2+( y i− y  j)

    2

    , perasi dasar algritma akan menguadratkan angka tersebut. "erapa kali

    hal ini dilaksanakan dapat dihitung sebagai berikut*

    C (n )=∑i=1

    n−1

    ∑ j=i+1

    n

    2=2∑i=1

    n−1

    (n−1)

  • 8/17/2019 Masalah Closest

    5/14

    Masalah C!n9e: Hull

    7e#inisi suatu himpunan titik berhingga atau tak terhingga/ pada bidang disebut

    $embung jika untuk setiap dua titik P dan Q  pada himpunan, seluruh ruas garis dari  P dan Q

     berada didalam himpunan tersebut.

    ;igure &* a/

  • 8/17/2019 Masalah Closest

    6/14

    7e#inisi n=e1

  • 8/17/2019 Masalah Closest

    7/14

    Masalah n=e1-

  • 8/17/2019 Masalah Closest

    8/14

    kedua, terdapat baris yang membagi bidang menjadi dua setengah dikurang bidang* untuk 

    semua titik pada salah satunya ax+by>c , sedangkan untuk semua titik pada setengah bidang

    lainnya, ax+byue&

    Pada bagian ini kita akan membahas algritma asimttik untuk masalah ini dengan lebih

    $anggih dan e#isien yang didasarkan pada teknik 7i=ide and nJuer 

    Masalah Cl!sest-Pai&

    Misalkan P& 2 (x1 , y1)…Pn 2 (xn , yn) menjadi himpunan S  titik-titik n pada bidang, di mana n,

    untuk kemudahan, merupakan sesuatu pangkat dua. Asumsikan bahwa titik diurutkan dalam

    urutan menaik as$ending/ pada krdinat 1-nya. jika tidak, kita dapat menyrtir mereka dalam

    waktu n lg n/, misalnya, dengan margeshrt./ )ita dapat membagi titik-titik yang diberikan

  • 8/17/2019 Masalah Closest

    9/14

    menjadi dua himpunan bagian S& dan S% dari titik-titik n5% dengan menggambar garis =ertikal 12$

    sehingga titik-titik n5% terletak disebelah kiri atau dibaris itu sendiri, dan titik-titik n5% terletak 

    disebelah kanan atau digaris. nilai $ dapat dihitung dari median5nilai tengah dari krdinat 1/

    7engan menggunakan pendekatan teknik de=ide and nJuer, kita dapat menemukan

    $lsest-pair se$ara rekrusi# untuk himpunan bagian sebelah kiri S& dan himpunan bagian sebelah

    kanan S%, se$ara berturut-turut. "agian d& dan d% menjadi jarak terke$il antara pasangan titik di S&

    dan S%, berturut-turut dan biarkan d2minKd&d%L. Sayangnya, d tidak selalu jarak terke$il diantara

    semua pasangan titik S&  dan S%  karena pasangan titik yang lebih dekat dapat terletak disisi

     berlawanan dari garis pemisah. Sehingga, langkah combinenya adalah dengan memeriksa titik-

    titik tersebut. )ita dapat membatasi daerah pemeriksaan hanya pada titik% yang berada di jarak 

    %d, dengan garis pemisah sebagai sumbu simetrinya.

    Misalakan &  dan % adalah himpunan bagian dari titik-titik di bagian kiri dan kanan

    setrip berturut-turut. Sekarang, untuk setiap titik P 1,y/ di &, kita perlu memeriksa di % yang

    mungkin lebih dekat dengan P dari pada d. :elas, titik tersebut harus memiliki krdinat y

    inter=al >y-d, yd@. Perhatian utamanya disini adalah pengamatan bahwa terdapat tidak lebih dari

    enam titik karena setiap pasang titik di % setidaknya terpisah satu sama lain sejauh d 6ngat,

     bahwa d d%, dimana d% adalah jarak terke$il antara pasangan titik disebelah kanan garis

     pemisah/ bser=asi penting lainnya adalah kita dapat mempertahankan da#tar titik-titik di

    &  dan %  yang disrtir dalam urutan menaik pada urutan krdinat y-nya. Anda dapat

    menganggap da#tar ini sebagai pryeksi titik-titik paa garis pemisah./ Selain itu urutan ini dapat

    dipertahankan bukan dengan menyrtir kembali titik-titik pada setiap iterasi, melainkan dengan

    menggabungkan dua da#tar yang sebelumnya disrtir. )ita dapat memprses titik &  se$ara

    sekuensial, sedangkan sebuah menunjuk keda#tar % memindai dengan sebuah inter=al engan

    lebar %d untuk mengambil enam $aln untuk menghitung jarak mereka ke titik P untuk saat ini

    dari da#tar &. Waktu Mn/ untuk CpenggabunganD slusi ini ke sub masalah yang lebih ke$il

    dinyatakan dalam n/.

    )ita memiliki peluang berikut ini untuk Tn/ running time dari algritma ini pada n titik 

     presrted *

    Tn/ 2 %Tn5%/ Mn/

    Menerapkan =ersi dari Terema Master dengan a2%, b2%, dan d2&/, kita memperleh Tn/ ϵ

    n lg n/. )ebutuhan akan resrt titik input tidak mengubah keseluruhan tingkat e#isiensi jika

  • 8/17/2019 Masalah Closest

    10/14

    srting dilakukan leh algritma n lg n/. Pada kenyataannya ini adalah tingkat e#isiensi

    terbaik yang dapat kita $apai karena telah terbukti bahwa setiap algritma untuk masalah ini

    harus dalam n lg n/.ϴ

    Masalah C!n9e: Hull

    Mari kita lihat kembali masalah n=e1-

  • 8/17/2019 Masalah Closest

    11/14

    ;akta bahwa $n=e1 hull diseluruh himpunan S terdiri dari hull atas dan bawah, yang

    dapat dibangun se$ara independen dan dengan $ara yang sama, merupakan pengamatan yang

    sangat berguna yang diman#aatkan leh beberapa algritma untuk masalah ini.

    Se$ara nyata, mari kita membahas bagaimana Jui$khull terus membangun hull atas hull

    yang lebih rendah dapat terus dibangun dengan $ara yang sama. :ika S & ksng, bagian hull atas

    hanyalah ruas garis dengan titik akhir di P& dan Pn.

    :ika tidak S& ksng, algritma mengidenti#ikasi =erteks Pmaks di S&, dimana letaknya paling

     jauh dari garis P&Pn . :ika ternyata ada kesamaan, titik yang memaksimalkan =erteks PmaksP&Pn

    dapat dipilih. )emudian algritma bisa mengidenti#ikasi semua himpunan titik S & yang terletak 

    disebelah kiri garis P&Pmaks ini adalah titik-titik yang bersama dengan P& dan Pmaks , akan

    membuat himpunan P&.&. titik-titik di S&  disebelah kiri garis PmaksPn akan ditata, bersama

    dengan Pmaks dan Pn, mejadi himpunan S&.%. tidak sulit untuk membuktikan bahwa

    Pmaks adalah =erteks dari hull atas

  • 8/17/2019 Masalah Closest

    12/14

    Titik dalam O P&PmaksPn tidak dapat menjadi =erteks dari hull atasdan karenanya dapat

    dieliminasi dari pembahasan lebih lanjut/ dan

    Tidak ada titik disebelah kiri kedua garis P&Pmaks dan PmaksPn.

    leh karena itu, algritma dapat terus membangun hull atas dari P& U S&.& U Pmaks dan Pmaks U

    S&.% U Pn se$ara rekrusi# dan kemudian menggabungkannya untuk mendapatkan hull atas seluruh

    himpuna P&US&U pn.

    Sekarang kita harus men$ari tau bagaimana perasi gemetrik algritma dapat

    diimplementasikan. 0ntungnya kita dapat meman#aatkan #akta yang sangat berguna berikut ini

    dari gemetri analitis* jika P&21&,y&/, P%21&,y&/ dan PF21F,yF/ adalah segitiga titk sembarang

     pada bidang $artesius, maka luas segitiga P&P%PF adalah sama dengan satu setengah dari besarnya

    determinan. Sedangkan tanda dari persamaan ini adalah psiti# jika dan hanya jika PF21F,yF/

    terletak disebelah kiri garis P&P%. 7engan menggunakan rumus ini, kita dapat memeriksa engan

    waktu yang knstan apakah suatu titik yang terletak di sebelah kiri garis ditentukan leh dua titik 

    lainnya, sama seperti menemukan jarak dari titik ke garis.

    ui$khull memiliki e#isiensi kasus-terburuk nϴ %/ yang sama seperti Jui$kshrt. Pada

    kasus rata-rata, kita berharap mendapatkan kinerja yang lebih baik. Pertama, algritma akan

    didapatkan dari sejenis Jui$kshrt yang didapatkan dari rata-rata pemisahan masalah yang

    seimbang menjadi dua submasalah yang lebih ke$il. )edua, titik-titik #laksi yang signi#ikan-

    sebutan untuk mereka yang terdapat dalam segitiga P&PmaksPn  dieliminasi dari prses lebihlanjut. "erdasarkan asumsi alami bahwa titik tertentu dipilih a$ak dari suatu distribusi seragam

    dalam beberapa daerah $embung misalnya, sebuah lingkaran atau persegi panjang/, e#isiensi

    kasus rata-rata Jui$khull ternyata adalah linier >=eQ'@.

    AL6ORITMA DIVIDE AND CON@UER

     pr$edure 76R673andN03!input n * integer/

    K

    Menyelesaikan masalah dengan algritma di=ide and $nJuer

    Masukan* masukan yang berukuran n

    )eluaran* slusi dari masalah semula

    L

    Dekla&asi

  • 8/17/2019 Masalah Closest

    13/14

    r, k * integer

    Al!&itma

    i# n n' then Kukuran masalah sudah $ukup ke$il L

    SR3 sub masalah yang berukuran n ini

    else

    "agi menjadi r sub masalah, masing masing berukuran n5k

    #r masing-masing dari r submasalah d

    76R673andN03!n5k/

    end#r

    M"6N3 slusi dari r sub masalah menjadi slusi masalah semula

    3ndi# 

    PEN7ELESAIAN MASALAH CONVEX HULL DEN6AN DIVIDE AND CON@UER 

    Pada penyelesaian masalah pen$arian Convex Hull dengan menggunakan algritma

     Divide and Conquer , hal ini dapat dipandang sebagai generalisasi dari algritma pengurutan

    mere sort . "erikut ini merupakan garis besar gambaran dari algritmanya*

    • Pertama-tama lakukan pengurutan terhadap titik-titik dari himpunan S yang diberika

     berdasarkan krdinat absis-U, dengan kmpleksitas waktu n lg n/.

    • :ika VSV F, maka lakukan pen$arian $n=e1 hull se$ara brute-#r$e dengan kmpleksitas

    waktu &/. "asis/.

    • :ika tidak, partisi himpunan titik-titik pada S menjadi % buah himpunan A dan ", dimana

    A terdiri dari setengah jumlah dari VSV dan titik dengan krdinat absi1-U yang terendah

    dan " terdiri dari setengah dari jumlah VSV dan titik dengan krdinat absis-U terbesar.

    • Se$ara rekursi# lakukan penghitungan terhadap

  • 8/17/2019 Masalah Closest

    14/14

    dalam menyelesaikan permasalahan ini jika dibandingkan algritma lain/. Selain itu juga,

    algritma ini dapat digeneralisasi untuk permasalahan $n=e1 hull yang berdimensi lebih dari F.

    PEN7ELESAIAN MASALAH CLOSEST PAIR DEN6AN DIVIDE AND CON@UER 

    Persalan * 7iberikan himpunan titik, P, yang terdiri dari n buah titik, 1 i,yi/, pada bilangan %-7.

    Tentukan jarak terdekat antara dua buah titik di dalam himpunan P. :arak dua buah titik p& 2 1&,

    y&/ dan p% 2 1%, y%/ *

    d ( Pi . P j )=√ ( x i− x j)2+( y i− y  j)

    2

    Penelesaian$

    a. Asumsi* n 2 %k dan titik-titik diurut berdasarkan absis 1/.

     b. Algritma lsest Pair *

     I SR3 * jika n 2 %, maka jarak kedua titik dihitung langsung dengan rumus 3u$lidean.

     I 76R673 * "agi titik-titik itu ke dalam dua bagian, Pe#t dan P!ight, setiap bagian mempunyai

     jumlah titik yang sama

     I N03! *Se$ara rekursi#, terapkan algritma 7-and- pada masingmasing bagian.

     I Pasangan titik yang jaraknya terdekat ada tiga kemungkinan letaknya *

    • Pasangan titik terdekat terdapat di bagian Pe#t.

    • Pasangan titik terdekat terdapat di bagian P!ight.

    • Pasangan titik terdekat dipisahkan leh garis batas , yaitu satu titik di Pe#t dan satu

    titik di P!ight.

    :ika kasusnya adalah $/, maka lakukan tahap M"6N3 untuk mendapatkan jarak dua titik 

    terdekat sebagai slusi persalan semula.