Minimum Spanning Tree Pemrograman 0-1 Pada Penentuan Minimum Spanning Tree Yang Memenuhi Kendala Biaya

2.4 Minimum Spanning Tree

Definisi 2.13 Graph berjarak distance graph Misalkan , G V E kemudian terdapat sebuah fungsi : d E N yang disebut fungsi jarak. Graph G bersama dengan fungsi jarak : d E N , disebut dengan graph berjarak distance graph. Contoh 2.2 Diberikan sebuah graph seperti gambar di bawah ini: Gambar 2.6 Graph G dengan 6 verteks dan 7 edge distance dari graph: Gambar 2.7 Distance graph mempunyai fungsi jarak : d E N , di mana 1 2 1 4 2 3 2 5 3 6 4 5 5 6 , , , , , , , , , , , , , E v v v v v v v v v v v v v v dengan 1 2 1 4 2 3 2 5 3 6 4 5 5 6 , 3 , 2 , 5 , 1 , 4 , 6 , 7 d v v d v v d v v d v v d v v d v v d v v 3 v 1 v 2 v 6 v 5 v 4 v 3 v 1 v 2 v 6 v 5 v 4 v 2 3 6 1 5 4 7 Universitas Sumatera Utara Definisi 2.14 Jarak spanning tree distance of spanning tree Misalkan sebuah graph , G V E , bersama dengan fungsi jarak : d E N . Untuk selanjutnya G merupakan connected, dan T merupakan spanning tree dari G, maka nilai: e e T d T d merupakan penjumlahan seluruh jarak pada semua edge di T, disebut dengan jarak spanning tree . Untuk setiap graph G adalah sebuah graph berjarak distance graph . Jelas, untuk setiap spanning tree T dari G akan mempunyai total jarak d T . Dari semua spanning tree T dari G, terdapat spanning tree yang mempuyai jarak d T minimum. Definisi 2.15 Minimum spanning tree Sebuah graph , G V E , bersama dengan fungsi jarak : d E N , membentuk sebuah distance graph. Selanjutnya G connected, sebuah spanning tree dengan jarak d T minimum dari semua spanning tree di G disebut dengan minimum spanning tree. Permasalahan minimum spanning tree bisa dirumuskan seperti di bawah ini: m in e e T d T S T G dengan ketentuan S T G adalah himpunan spanning tree dari graph. Untuk persoalan minimum spanning tree akan diformulasikan dua kondisi optimal pada persoalan minimum spanning tree. Teorema 2.4 Kondisi optimal cut cut optimality condition Sebuah spanning tree T adalah minimum spanning tree jika dan hanya jika untuk setiap edge e T , e f d d untuk setiap , \ e e f X V X . Universitas Sumatera Utara Bukti Asumsikan terdapat sebuah minimum spanning tree T yang tidak memenuhi kondisi ini, maka akan diperoleh sebuah edge e T dan sebuah edge , \ e e f X V X dengan e f d d . Selanjutnya edge e digantikan dengan edge f, sehingga diperoleh sebuah spanning tree dengan \ e f d T e f d T d d d T . Hal ini kontradiktif dengan nilai optimal dari T. Pada bagian ini akan diperlihatkan bahwa untuk setiap spanning tree T yang memenuhi kondisi di atas adalah optimal. Asumsikan T adalah minimum spanning tree dan T T . Kemudian terdapat paling sedikit satu edge e T sehingga e T . Jika edge ini dimasukkan ke dalam T , maka T e akan membentuk cycle , C T e dengan sebuah edge f e di mana f mempunyai satu titik di e X dan \ e V X . Selama T optimal, maka f e d d . Untuk selanjutnya edge e dihapus kemudian memasukkan edge f pada T , sehingga diperoleh \ T e f , dengan total jarak: \ e f d T d T d d d T e f Spanning tree \ T e f mempunyai sebuah tambahan edge yang sama dengan T dan memenuhi kondisi optimal cut . Hal ini diulangi sampai akhirnya didapatkan T T dengan d T d T sehingga T juga minimum spanning tree. Dari Teorema 2.4 disimpulkan bahwa sebuah spanning tree mempunyai jarak minimum jika dan hanya jika tidak terdapat pertukaran edge e dan edge f yang tidak membentuk cycle sehingga e f d d adalah negatif. Universitas Sumatera Utara Teorema 2.5 Kondisi optimal path path optimality condition Sebuah spanning tree T adalah minimum spanning tree jika dan hanya jika untuk setiap edge , f k l yang tidak termasuk dalam spanning tree di mana e f d d untuk setiap edge e yang merupakan bagian path di T yang menghubungkan k dan l. Bukti Diberikan sebuah minimum spanning tree T dan edge , e i j bagian dari path di T yang menghubungkan k dan l. Edge , f k l dan f e d d , selanjutnya dilakukan pertukaran edge e dan f. Dari pertukaran ini dihasilkan sebuah spanning tree baru dengan jarak lebih pendek dari T . Hal ini kontradiktif dengan optimal T . Diberikan sebuah edge , e i j dan misalkan e X dan \ e V X merupakan himpunan verteks yang dihasilkan dengan menghapus edge e . Selanjutnya diberikan edge , k l dengan e k X dan \ e l V X . Sejak T memuat sebuah lintasan khusus unique path dari k ke l dan e adalah edge yang menghubungkan himpunan verteks e X dan \ e V X , e adalah bagian dari path yang menghubungkan k dan l. Dari Kondisi optimal path diketahui bahwa e f d d di mana , f k l . Kondisi ini berlaku untuk setiap edge , f k l berada dalam cut { , \ } e e X V X untuk setiap e T . Jadi T memenuhi kondisi optimal cut dan dari teorema 2.4 T adalah minimum spanning tree. Secara umum ada beberapa metode penyelesaian pada permasalahan minimum spanning tree. Vojtech Jarnik tahun 1930 dan Robert C.Prim 1975 secara terpisah menemukan sebuah algoritma untuk menyelesaikan persoalan minimum spanning tree. Algoritma ini kemudian disebut dengan dengan algoritma prim. Selain algoritma prim, permasalahan minimum spanning tree juga bisa diselesaikan dengan algoritma Kruskal, algoritma Boruvka, algoritma Sollin yang merupakan algoritma yang diturunkan dari algoritma Boruvka. Universitas Sumatera Utara

2.5 Integer programming