Bab III Metodologi Penelitian III.1 Umum Agar penelitian ini dapat dilakukan secara terstruktur dan sistematis, maka penelitian ini dilaksanakan dengan tahapan sebagai berikut: 1. Identifikasi masalah Masalah yang akan dibahas dalam penelitian ini berkaitan dengan sistem distribusi air, terutama dalam hal network flow analysis. Kompleksitas dari suatu jaringan perpipaan menimbulkan masalah dalam distribusi debit di setiap pipa dan tekanan di setiap node. Hal ini terkait dengan kriteria hidrolis yang harus terpenuhi dalam suatu sistem distribusi air. 2. Studi literatur Studi literatur dilakukan untuk memperoleh sumber-sumber pustaka yang terkait dan dapat menunjang penelitian ini. Sumber acuan/literatur tentang pemodelan sistem distribusi air, metode numerik, dan metode optimasi dapat berupa buku, modul, jurnal, dan situs internet. Selain itu, dalam studi literatur ini dilakukan pula pengumpulan data yang akan digunakan dalam simulasi model yang dibangun. 3. Pengembangan model Membangun suatu model jaringan perpipaan distribusi air pada kondisi tunak (steady state) berdasarkan persamaan node (H) dengan menggunakan persamaan hidrolis Hazen-Williams dan persamaan kontinuitas. 4. Penyelesaian model Membuat solusi model dengan menggunakan metode numerik dan metode optimasi. Penyelesaian metode numerik yang akan digunakan dalam penelitian ini adalah metode Newton. Sedangkan, metode optimasi yang akan digunakan adalah Algoritma Genetika. Penyelesaian model dilakukan dengan membuat suatu program komputer menggunakan MATLAB. Program dimodelkan dengan menyusun kode-kode pemrograman dalam MATLAB berdasarkan algoritma program yang telah dirancang. 47 5. Simulasi, validasi, dan analisis model Simulasi dilakukan menggunakan data yang diperoleh dari literatur. Hasil simulasi model selanjutnya divalidasi dengan program network flow analysis yang umum digunakan, contohnya EPANET 2.0. Hasil simulasi dan validasi tersebut kemudian dianalisis sehingga akan diperoleh suatu kesimpulan dari penelitian ini. Gambar III.1 Diagram Alir Metodologi Penelitian III.2 Permasalahan Aliran Air dalam Jaringan Pipa Pada penelitian ini, permasalahan yang dibahas adalah masalah network flow analysis. Dalam suatu sistem jaringan pipa distribusi air yang sudah terpasang (panjang, diameter, dan kekasaran pipa diketahui), maka akan terdapat variabel hidrolika yang berperan penting dalam menunjukkan terpenuhinya permintaan konsumen, yaitu variabel debit dan headloss. Permasalahan jaringan pipa dikatakan dapat terpecahkan jika debit di setiap pipa dan head di tiap node telah diketahui dengan tingkat akurasi yang memadai. 48 Untuk menyelesaikan masalah network flow analysis ini perlu dibangun suatu model yang menggambarkan aliran dalam suatu jaringan perpipaan. Dalam penelitian ini terdapat beberapa batasan dari model yang akan dibangun, yaitu: 1. Aliran air dalam model yang dibangun diasumsikan berupa aliran steady state. Pada kondisi di lapangan, aliran pada sistem distribusi air dalam keadaan transien sehingga analisis masalahnya tidaklah sederhana. Untuk itu, model jaringan sistem distribusi air yang akan dikembangkan pada penelitian ini dibatasi hanya pada kondisi tunak (steady state). Model ini masih banyak dipakai sebagai pendekatan untuk menggambarkan sistem distribusi air karena analisinya yang lebih sederhana. Pada kondisi tunak tidak terjadi perubahan parameter hidrolika (debit, kecepatan, dll) terhadap waktu. 2. Topologi model sistem jaringan berupa gabungan sistem loop dan cabang. Topologi ini sesuai dengan keadaan dilapangan, dimana sistem jaringan pipa distribusi air yang dibangun merupakan suatu sistem kompleks yang terdiri dari sistem cabang dan loop. Sehingga model yang dibangun dari penelitian ini dapat diaplikasikan. 3. Persamaan head (H) digunakan untuk membangun persamaan model sistem. Dalam membangun persamaan sistem jaringan distribusi air, terdapat beberapa cara yang bisa digunakan, yaitu persamaan debit (Q), persamaaan head (H), dan persamaan loop (∆Q). Dalam persamaan head digunakan metode kesetimbangan aliran air pada tiap-tiap node (persamaan kontinuitas). Selanjutnya, dengan mensubtitusi aliran air di dalam pipa menggunakan persamaan headloss maka akan diperoleh suatu persamaan tak linear dalam variabel head di tiap-tiap node. Untuk membangun suatu persamaan model, penggunaan persamaan head ini relatif lebih mudah dibandingkan dengan persamaan yang lain. Selain itu, persamaan head cocok digunakan untuk sistem yang dilengkapi dengan peralatan pengontrol (contoh Pressure Reducer Valve dan Check Valve). Namun, dengan menggunakan persamaan head akan diperoleh suatu sistem persamaan tak linear sehingga teknik penyelesaiannya berbeda dengan sistem persamaan yang dibangun dengan persamaan debit (Q). 49 4. Headloss yang diperhitungkan hanya headloss mayor Hazen-Williams. Hal ini dilakukan atas dasar pertimbangan untuk menyederhanakan penyelesaian masalah model. Persamaan headloss mayor yang digunakan adalah persamaan Hazen-Williams. Walaupun persamaan ini dikembangkan atas dasar empiris dan umumnya hanya digunakan pada kondisi aliran turbulen, namun persamaan ini banyak diterapkan dalam pemodelan distribusi air minum terutama di Amerika Serikat karena relatif lebih mudah digunakan. 5. Penyelesaian model dengan mengkombinasikan Algoritma Genetika dan Metode Newton. Untuk menyelesaikan persamaan model yang dibangun, merupakan sistem persamaan tak linear, maka digunakan penyelesaian menggunakan metode Newton. Metode Newton merupakan metode numerik yang sangat baik karena tingkat konvergensinya kuadratis. Namun, metode ini memiliki kelemahan yaitu membutuhkan suatu tebakan awal yang bagus agar tercapainya suatu konvergensi. Untuk itu, dalam mencari nilai tebakan awal yang bagus akan digunakan suatu teknik Algoritma Genetika. Oleh karena itu, dalam penelitian ini penyelesaian model dilakukan dengan mengkombinasikan Algoritma Genetika dan Metode Newton. III.3 Pengembangan Model Jaringan pipa distribusi air terdiri atas sejumlah pipa yang menghubungkan N titik simpul/node. Pada model jaringan yang akan dibangun digunakan metode kesetimbangan pada tiap-tiap node. Model ini menggabungkan persamaan energi untuk tiap pipa dan persamaan kontinuitas, sehingga akan diperoleh suatu persamaan kontinuitas pada tiap-tiap node. Hal ini dapat digambarkan sebagai berikut: Dalam suatu segmen pipa yang menghubungkan dua node memiliki panjang (m) dan diameter pipa dan , (m), maka untuk model aliran yang menggunakan persamaan Hazen-Williams (untuk satuan SI) dapat ditulis menjadi: Qij = S ij 0,2785.C.Dij 2.63 ( . Hi − H j L0.54 ) 0.54 (III.1) 50 dimana menyatakan besarnya laju aliran air pada segmen pipa yang menghubungkan node dan . adalah koefisien kekasaran pipa Hazen-Williams. menyatakan arah dari aliran, dapat dirumuskan: S ij = (H i −Hj) Hi − H j = ±1 (III.2) 1 , maka air mengalir dari node ke , dan apabila Apabila 1 maka air mengalir dari node ke . Karena head di tiap node diasumsikan menyatakan hydraulic grade line (HGL), yang terdiri dari komponen head tekanan (P γ ) dan head elevasi (Z ) , maka persamaan di atas dapat ditulis kembali menjadi: ⎛ 1 Qij = S ij .0.2785.C.Dij2.63 ⎜ ⎜ Lij ⎝ ⎛ Pi − Pj ⎜ + Zi − Z j ⎜ γ ⎝ ⎞⎞ ⎟⎟ ⎟⎟ ⎠⎠ 0.54 (III.3) ( γ ) adalah berat spesifik atau berat jenis. Berat spesifik air pada tekanan dan temperatur standar adalah 62.4 lb/ft3 (9,806 N/m3). Dengan menerapkan persamaan kontinuitas pada tiap node, contoh untuk sebuah node m yang bertetangga dengan node dan , maka diperoleh: f m = Q jm + Qmk + QNm = 0 dimana (III.4) adalah debit yang keluar atau masuk ke dalam jaringan distribusi melalui node m. Untuk jaringan perpipaan yang memiliki N node maka terdapat n persamaan serupa dengan persamaan di atas. Kemudian, dengan menggabungkan kedua persamaan di atas (persamaan headloss dan kontinuitas) maka akan diperoleh suatu sistem persamaan tak linear untuk keadaan tunak pada jaringan distribusi air. Sistem persamaan tersebut dapat ditulis sebagai berikut: f(x) = 0 dengan f = (f1(x), f2(x), …, fN(x)) (III.5) T x = (x1, x2, …, xN)T Jika nilai tiap peubah bebas pada sistem persamaan tersebut adalah sedemikian rupa sehingga nilainya masing-masing menjadi (atau dekat) nol, maka sistem jaringan pipa distribusi tersebut berada dalam keseimbangan. 51 Sistem persamaan yang dibangun memuat peubah yang terdiri dari tekanan pada tiap node , elevasi pada masing-masing node keluar/masuk ke dalam jaringan melalui node segmen pipa , debit air yang , diameter pipa , dan koefisien kekasaran segmen pipa , panjang . Pada jaringan pipa distribusi yang sudah terpasang maka diameter, panjang, dan koefisien kekasaran segmen pipa, serta ketinggian elevasi tiap node besarnya sudah tertentu. Oleh karenanya, jika terdapat sejumlah N node, maka sistem persamaan akan memiliki 2N peubah ( dan , i =1, 2, ..., N). Dengan demikian dimungkinkan untuk menggunakan N persamaan yang dimiliki untuk menghitung nilai N peubah dari 2N yang dimiliki. N peubah yang nilainya dihitung ini dikenal sebagai peubah bebas (state variables), sedangkan sisanya yang juga sebanyak N diberi nilai tertentu (decision variables) sehingga sistem persamaan tersebut dapat diselesaikan. Sistem ini sudah dalam bentuk sistem persamaan tak linear dengan N persamaan dan N peubah. Selanjutnya, paling tidak satu dari peubah bebas dan satu dari berupa nilainya diketahui sebagai tekanan referensi untuk sistem jaringan tersebut. III.4 Penyelesaian Model Sebagaimana dijelaskan di atas, dalam penelitian ini akan digunakan hibridisasi Algoritma Genetika dan metode Newton untuk menyelesaikan model sistem jaringan perpipaan yang dibangun. Metode Newton memiliki kelemahan dalam penentuan tebakan awal sehingga untuk mengatasinya pada penelitian ini akan memanfaatkan Algoritma Genetika dalam memperoleh tebakan awal bagi akar sistem persamaan tak linear yang dihadapi. Diagram alir pemodelan menggunakan Algoritma Genetika dan metode Newton dapat dilihat pada Gambar III.2. 52 Gambar III.2 Diagram Alir Program Simulasi Proses penyelesaian model sistem diawali memasukkan data jaringan distribusi air, yang meliputi data node (tekanan, elevasi, debit) dan data link (panjang dan diameter pipa, koefisien kekasaran pipa). Selanjutnya, menggunakan persamaan headloss Hazen-Williams dan persamaan kontinuitas dibangun model sistem yang menggambarkan sistem jaringan distribusi air. Algoritma Genetika digunakan untuk mencari nilai tebakan awal yang baik untuk metode Newton. 53 Pada dasarnya, Algoritma Genetika digunakan dalam masalah optimisasi. Oleh karena itu, untuk menyelesaikan sistem persamaan tak linear dari jaringan perpipaan, masalah menentukan akar persamaan diubah dahulu menjadi suatu bentuk masalah optimisasi: Fitness function : F ( x ) = norm( f (x )) = f ( x ) dengan f(x) = f 12(x) + f 22(x) + ... + f n2(x) Sehingga didekat akar dari f (x) = 0 diharapkan nilai fitness akan dekat dengan nol; dan akan merupakan suatu bilangan positif yang cukup besar bila x jauh dari akar. Dengan demikian masalah mencari akar f(x) = 0 mula-mula dibawa menjadi masalah mencari x yang meminimumkan fungsi F(x). Individu terbaik (mempunyai fitness tinggi) yang dihasilkan oleh Algoritma Genetika hanya merupakan kandidat solusi. Selanjutnya hasil yang diperoleh dengan Algoritma Genetika digunakan sebagai tebakan awal untuk menyelesaikan sistem persamaan tak linear dengan metode Newton. Gambar III.3 menunjukkan diagram alir Algoritma Genetika yang akan digunakan dalam penyusunan kode script program. Hasil dari Algoritma Genetika selanjutnya digunakan oleh metode Newton untuk mencari solusi eksak dari model sistem yang dibangun. Dengan memanfaatkan hasil dari Algoritma Genetika maka kelemahan metode Newton, yaitu membutuhkan tebakan awal yang baik, akan tertutupi. Diagram alir metode Newton yang akan digunakan dalam penyusunan program dapat dilihat pada Gambar III.4. Solusi model dari metode Newton kemudian di validasi dengan program lain yang umum digunakan dalam pemodelan sistem distribusi air minum. Pada penelitian ini, program pembanding yang digunakan adalah program EPANET 2.0. Jika terdapat hasil validasi yang sangat buruk/kurang memuaskan maka dilakukan koreksi ulang dimulai dari proses membangun model sistem jaringan distribusi air. Jika diperoleh hasil validasi yang baik, maka hasil solusi metode Newton dapat dianalisis untuk perhitungan paramater lainnya, seperti debit pada setiap pipa, kecepatan pada pipa, dll. 54 F ( x ) = norm( f ( x )) Gambar III.3 Diagram Alir Algoritma Genetika untuk Penyelesaian Model 55 Gambar III.4 Diagram Alir metode Newton III.5 Ikhtisar Program Simulasi Simulasi komputer untuk analisis aliran dalam jaringan (network flow analysis) menggunakan MATLAB dibuat dengan memanfaatkan fasilitas formula matematika berupa fungsi matematika, logika, dan grafik yang telah tersedia 56 dalam MATLAB. MATLAB merupakan program komputasi numerik dengan bahasa pemrograman terintegrasi di dalamnya. MATLAB dirancang oleh MathWorks. MATLAB memiliki banyak kemudahan dalam menghitung persoalan-persoalan rekayasa (engineering), seperti: memanipulasi matriks, memplot fungsi persamaan, mengimplementasikan sebuah algoritma, pembuatan objek interface. MATLAB harus ter-install dalam komputer yang digunakan. Setelah membuat diagram alir pemodelan program, proses dilanjutkan dengan menuangkan alur pemodelan dalam perancangan kode-kode script program dengan MATLAB berupa m-files. Perancangan program simulasi ini dibagi dalam 6 langkah penting, yaitu: 1. Perancangan fungsi rutin yang akan mengeksekusi proses pemasukan data (input). 2. Perancangan fungsi rutin yang akan mengeksekusi proses Algoritma Genetika. 3. Perancangan fungsi rutin yang akan mengeksekusi proses Metode Newton. 4. Perancangan fungsi rutin yang akan mengeksekusi proses pengeluaran hasil (output) berupa perhitungan dan grafik. 5. Perancangan fungsi rutin yang akan mengeksekusi proses penyimpanan data dan hasil. 6. Penggabungan semua fungsi rutin dari 5 langkah sebelumnya dalam tampilan antarmuka atau graphical user interface (GUI) program simulasi. Fungsi rutin m-files merupakan tempat kode-kode script pemrograman MATLAB yang akan dituangkan. Fungsi rutin tersebut dibuat melalui Objek Editor Pemrograman dalan MATLAB. Semua fungsi rutin m-files dapat dilihat dalam Lampiran A. III.5.1 Fungsi Rutin M-Files Proses Pemasukan Data Proses awal pemodelan program simulasi ini, diawali dengan perancangan fungsifungsi rutin yang akan membaca atau mengeksekusi data yang akan digunakan dalam proses simulasi. 57 Fungsi-fungsi rutin m-files tersebut, terdiri dari: 1. network_read.m, merupakan fungsi rutin untuk membaca data-data yang digunakan dalam perhitungan network flow analysis yang ada dalam file berformat text (*.txt) yang dapat diakses menggunakan Notepad, data-data tersebut seperti node id, flow, elevation, pressure, link id, length, diameter, dan coefficient C. 2. network_create.m, merupakan fungsi rutin lanjutan dari network_read.m, fungsi ini menjadi media penghantar antara data file berformat text dengan MATLAB, format-format tulisan dalam file tersebut diproses menjadi inputinput variabel yang akan digunakan dalam sistem persamaan model. III.5.2 Fungsi Rutin M-Files Algoritma Genetika Berdasarkan diagram alir Algoritma Genetika sebelumnya, fungsi-fungsi rutin berupa m-files dibuat untuk mengimplementasikan Algoritma Genetika dalam penyelesaian optimasi (minimasi) sistem persamaan model dengan menuangkan kode-kode script pemodelan program simulasi. Fungsi-fungsi rutin m-files tersebut, terdiri dari: 1. ga_bit2num.m, merupakan fungsi rutin untuk mengkonversi bilangan bit (0 dan 1) ke bilangan angka (real) secara individu. 2. ga_bit2num2.m, merupakan fungsi rutin untuk mengkonversi bilangan bit (0 dan 1) ke bilangan angka (real) secara jamak atau banyak (array). 3. ga_ObjFcn.m, merupakan fungsi rutin yang berisi fungsi fitness dalam proses optimasi (minimasi) menggunakan Algoritma Genetika. 4. ga_evalpopu.m, merupakan fungsi rutin untuk mengevaluasi populasipopulasi individu selama proses optimasi apakah telah sesuai dengan kriteria fitness fungsi yang ditentukan. 5. ga_nextpopu.m, merupakan fungsi rutin untuk membuat generasi-generasi individu dalam proses optimasi. 6. ga_run.m, merupakan fungsi rutin utama yang menghubungkan semua fungsi-fungsi rutin yang telah dibuat, proses optimasi Algoritma Genetika diinisiasi melalui fungsi rutin ini. 58 III.5.3 Fungsi Rutin M-Files Metode Newton Berdasarkan diagram alir metode Newton, fungsi-fungsi rutin berupa m-files dibuat untuk mengimplementasikannya dalam penyelesaian sistem persamaan model dengan menuangkan kode-kode script pemodelan program simulasi. Fungsi-fungsi rutin m-files metode Newton, terdiri dari: 1. DeltaHeadFcn.m, MapX2PD.m, QijFcn.m, dan newton_ObjFcn.m merupakan fungsi rutin yang berisi penjabaran fungsi persamaan sistem model yang dibangun. 2. newton_jacobian.m, merupakan fungsi rutin untuk melakukan perhitungan matriks Jacobi yang dibutuhkan dalam proses iterasi Newton. 3. newton_run.m, merupakan fungsi rutin utama yang menghubungkan semua fungsi-fungsi rutin yang telah dibuat, proses iterasi metode Newton diinisiasi melalui fungsi rutin ini. III.5.4 Fungsi Rutin M-Files Proses Pengeluaran Hasil Jika proses penyelesaian telah selesai, maka hasil-hasil perhitungan yang terjadi dalam proses tersebut dapat ditampilkan, seperti laporan dan grafik hasil perhitungan. Hal ini dapat dilakukan dengan membuat fungsi rutin yang akan memproses hasil output tersebut. Fungsi rutin tersebut adalah showoutput.m, fungsi rutin ini akan memproses hasil-hasil perhitungan berupa laporan dan grafik. Fungsi ini juga merupakan bagian dalam ga_run.m dan newton_run.m, karena kedua fungsi ini akan mengeksekusi showoutput.m dalam setiap proses penyelesaiaanya. III.5.5 Fungsi Rutin M-Files Proses Penyimpanan Data dan Hasil Bagian penunjang atau tambahan dalam pemodelan program ini, adalah proses penyimpanan data dan hasil dari program simulasi. Fungsi rutin tersebut adalah save_network.m, merupakan fungsi rutin untuk memproses penyimpanan data dan hasil jika terdapat perubahan isi data dalam file berformat text (*.txt). 59 III.5.6 GUI Program Tahapan terakhir dari pemodelan program ini adalah perancangan tampilan antarmuka atau yang lebih dikenal dengan graphical user interface (GUI) program. Sebenarnya dalam pemrograman MATLAB, proses-proses simulasi sudah dapat dilakukan tanpa harus membuat GUI program dengan hanya mengeksekusi fungsi-fungsi rutin m-files yang sudah dibuat sebelumnya pada jendela console atau command MATLAB, tentunya dengan melakukan setiap proses secara manual atau dengan menuliskan syntax yang ada dalam setiap fungsi rutin secara berurutan. Hal ini akan menjadi tidak efisien, sehingga dibutuhkan sebuah fasilitas yang dapat menghimpun semua proses-proses perhitungan, yaitu GUI program. Fungsi-fungsi rutin tersebut, terdiri dari: 1. MAIN.fig, merupakan fungsi yang berisi objek-objek interface program simulasi dalam MATLAB, seperti objek form, panel, button, edit text, static text, dan axes. Proses perancangan dapat dilakukan dengan mengeksekusi perintah guide MAIN pada jendela console MATLAB. 2. MAIN.m, merupakan fungsi yang berisi kode-kode script yang memvisualisasikan objek-objek interface yang telah dirancang dalam MAIN.fig dan fungsi ini juga berisi kode-kode script tambahan untuk menggabungkan semua fungsi rutin yang telah dibuat. III.6 Penggunaan Program Simulasi Setelah penggabungan fungsi-fungsi rutin m-files dalam GUI program, maka program simulasi sudah dapat dijalankan. Langkah-langkah penggunaan program simulasi adalah sebagai berikut: 1. Jalankan program MATLAB, properti window MATLAB akan terlihat seperti pada Gambar III.5. Pilih lokasi direktori kerja dari fungsi-fungsi rutin m-files, kemudian pilih file START.m dan jalankan file tersebut dengan klik kanan lalu pilih run atau ketik kata START dalam jendela console MATLAB yang ada di bagian panel sebelah kanan. 60 Gambar III.5 Tampilan Awal Window dalam MATLAB Setelah file START.m diklik atau diketik pada jendela console, maka akan muncul tampilan awal program simulasi sebagai berikut: Gambar III.6 Tampilan Awal Program Simulasi 2. Proses pemasukan input data diawali dengan membuka file data yang aka dgunakan dalam program simulasi. Klik tombol browse pada tab Input dan 61 pilih file data yang akan digunakan, kemudian klik open. Gambar III.7 Tampilan Proses Input File Data Simulasi 3. Selanjutnya pada tab input, pilih metode penyelesaian yang akan digunakan. Metode penyelesaian terdiri dari 3 pilihan, yaitu GA, Newton, dan GA+Newton. Untuk pilihan GA dan GA+Newton, perlu diinput nilai pressure range (N/m2) dan demand range (m3/s). Sedangkan, untuk pilihan Newton, perlu diinput nilai initial guess (Contoh: untuk 9 node ketik rand(9,1) pada kolom initial guess) Gambar III.8 Tampilan Proses Input Parameter Penunjang 62 4. Proses penyelesaian siap dilakukan dengan meng-klik tombol Run. Selanjutnya, proses penyelesaian ditunggu sampai selesai ditandai dengan tampilan tombol Stop menjadi tidak aktif dan terdapat tampilan grafik. Untuk pilihan GA+Newton, klik Run untuk GA terlebih dahulu sebelum melakukan penyelesaian dengan Newton (meng-klik Run Newton). Gambar III.9 Tampilan Proses Algoritma Genetika Gambar III.10 Tampilan Proses Iterasi Metode Newton 63 5. Laporan hasil perhitungan dapat dilihat dengan meng-klik tombol Report. Output laporan hasil perhitungan: Gambar III.11 Tampilan Laporan Hasil Perhitungan 64