Algoritma Optimasi Implementasi Algoritma Branch And Bound Pada Penentuan Menu Makanan Penderita Asam Urat

11 terpilih dan selanjutnya akan dibangkitkan semua suksesor B. Demikian seterusnya sampai ditemukan node tujuan. . 0 bar 2.7 Langkah-langkah yang dilakukan oleh algoritma Best First Search [16]

2.5. Algoritma Optimasi

Algoritma Optimasi Optimization Algorithms didefenisikan sebagai suatu cabang ilmu dari matematika terapan dan analisa numerik yang membahas optimasi dengan kriteria yang bersifat tunggal, ganda atau bahkan mungkin konflik. Kriteria diekspresikan sebagai himpunan fungsi matematika F = {f1, f2, , fn} yang disebut fungsi-fungsi objektif. [17] Algoitma optimasi sedikit berbeda dengan algoritma pencarian search algorithmn. Pada algoritma pencarian terdapat suatu kriteria tertentu yang menyatakan apakah elemen xi merupakan solusi atau bukan. Sebaliknya pada algoritma optimasi mungkin tidak terdapat kriteria tersebut, melainkan hanya fungsi-fungsi objektif yang menggambarkan bagus tidaknya suatu konfigurasi yang diberikan. Algoritma optimasi Step 2 Step 1 Step 3 A Step 4 Universitas Sumatera Utara 12 bisa dikatakan sebagai generalisasi dari algoritma pencarian atau dengan kata lain, algoritma pencarian adalah kasus khusus dari algoritma optimasi. Salah satu algoritma optimasi adalah algoritma Branch and Bound. 2.5.1. Algoritma Branch and Bound Sebagaimana pada algortima backtracking, algoritma Branch Bound BB juga merupakan metode pencarian di dalam ruang solusi secara sistematis. Ruang Solusi diorganisasikan ke dalam pohon ruang status. Pembentukan pohon ruang status pada algoritma BB berbeda dengan pembentukan pohon pada algoritma runutbalik. Bila pada algoritma backtracking ruang solusi dibangun secara Depth-First Search DFS, maka pada algoritma BB ruang solusi dibangun dengan skema Breadth-First Search BFS. Pada algoritma BB, pencarian ke simpul solusi dapat dipercepat dengan memilih simpul hidup berdasarkan nilai ongkos cost. Setiap simpul hidup diasosiasikan dengan sebuah ongkos yang menyatakan nilai batas bound. Simpul hidup yang menjadi simpul-E ialah simpul yang mempunyai nilai batas terkecil strategi pencarian berdasarkan biaya terkecil least cost search. Pada prakteknya, nilai batas untuk setiap simpul umumnya berupa taksiran atau perkiraan. Fungsi heuristik untuk menghitung taksiran nilai tersebut dinyatakan secara umum sebagai : ci = fi + gi yang dalam hal ini, c i = ongkos untuk simpul i f i = ongkos mencapai simpul i dari akar g i = ongkos mencapai simpul tujuan dari simpul akar i perkiraan Nilai c digunakan untuk mengurutkan pencarian. Simpul berikutnya yang dipilih untuk diekspansi adalah simpul yang memiliki c minimum simpul-E. Strategi memilih simpul-E seperti ini dinamakan strategi pencarian berdasarkan biaya terkecil least cost search. Prinsip dari algoritma Branch and Bound ini adalah : 1. Masukkan simpul akar ke dalam antrian Q Queue. Jika simpul akar adalah simpul solusi goal node, maka solusi telah ditemukan. Stop. Universitas Sumatera Utara 13 2. Jika Q kosong, tidak ada solusi . Stop. 3. Jika Q tidak kosong, pilih dari antrian Q simpul I yang mempunyai i paling kecil. Jika terdapat beberapa simpul i yang memenuhi, pilih satu secara sembarang. 4. Jika simpul i adalah simpul solusi, berarti solusi sudah ditemukan, stop. Jika simpul i bukan simpul solusi, maka bangkitkan semua anak-anaknya. Jika i tidak mempunyai anak, kembali ke langkah 2. 5. Untuk setiap anak j dari simpul i, hitung j, dan masukkan semua anak-anak tersebut ke dalam antrian Q. 6. Kembali ke langkah 2. [4] 1232 Knapsack problem Knapsack problem adalah suatu masalah bagaimana cara menentukan pemilihan barang dari sekumpulan barang dimana setiap barang tersebut mempunyai berat dan profit masing-masing, sehingga dari pemilihan barang tersebut didapatkan profit yang maksimum. Dalam penelitian ini, barang digantikan dengan makanan yang diterapkan dalam penentuan menu makanan penderita asam urat. Dimana setiap jenis makanan mempunyai tingkat purin, kalori, protein, dan lemak masing-masing. Sehingga dari penentuan makanan tersebut didapatkan asupan gizi yang maksimum. Algoritma Branch and Bound merupakan salah satu strategi yang dapat digunakan dalam pencarian solusi optimum dari permasalahan knapsack ini. Dengan penentuan asupan gizi maksimal pada tiap simpulnya, proses pencarian akan membawa kita pada solusi yang optimum, karena tidak semua objek pada permasalahan ini dapat dimasukan ke dalam knapsack, maka kemungkinan bahwa kita akan sampai pada keadaan dimana tidak ada lagi simpul yang dapat dibangkitkan karena telah melewati batas tingkat purin makanan, sehingga membuat kita harus menentukan solusi optimum dengan membandingkan lintasan-lintasan mana yang berakhir di daun pada pohon yang akan manghasilkan asupan gizi paling besar. Sehingga objek-objek tersebutlah yang akan dipilih untuk dimasukan kedalam knapsackgerobak. Masalah diatas dapat kita ilustrasikan pada gambar 2.8. Universitas Sumatera Utara 14 45 6 bar 2.8 Ilustrasi permasalahan knapsack pada penyakit asam urat 2.6.1. Knapsack dengan Algoritma Greedy Algoritma Greedy merupakan metode yang paling populer untuk memecahkan persoalan optimasi. Salah satu masalah yang sering di selesaikan adalah masalah knapsack. Terdapat beberapa strategi greedy yang heuristik yang dapat digunakan untuk memilih objek yang akan dimasukkan ke dalam knapsack, antara lain : 1. Greedy by profit. a. Pada setiap langkah, pilih objek yang mempunyai keuntungan terbesar. b. Mencoba memaksimumkan keuntungan dengan memilih objek yang paling menguntungkan terlebih dahulu. 2. Greedy by weight. a. Pada setiap langkah, pilih objek yang mempunyai berat teringan. b. Mencoba memaksimumkan keuntungan. dengan dengan memasukkan sebanyak mungkin objek ke dalam knapsack. Universitas Sumatera Utara 15 3. Greedy by density. a. Pada setiap langkah, knapsack diisi dengan objek yang mempunyai p i w i terbesar. b. Mencoba memaksimumkan keuntungan dengan memilih objek yang mempunyai keuntungan per unit berat terbesar.

4. Pemilihan objek berdasarkan salah satu dari ketiga strategi di atas tidak menjamin

akan memberikan solusi optimal. [19] Penerapan algoritma Greedy pada persoalan knapsack seperti contoh berikut. Kapasitas knapsack K = 100. 789 :; = ? ;ABC t D 8 greedy pada knapsack [19] Properti Objek Greedy by Solusi Optimal i wi pi piwi profit weight density 1 100 40 0,4 1 2 50 35 0,7 1 1 3 45 18 0,4 1 1 4 20 4 0,2 1 1 5 10 10 1,0 1 1 6 5 2 0,4 1 1 1 Total bobot 100 80 85 100 Total keuntungan 40 34 51 55 2.6.2. Knapsack dengan Algoritma Branch and Bound Penerapan algoritma BB pada persoalan knapsack seperti contoh berikut. Tabel 2.2 Contoh persoalan knapsack Item Berat kg Profit Profit Berat 1 4 40 10 2 7 42 6 3 5 25 5 4 3 12 4 Kapasitas maksimum = 10 kg Metode bounding yang kita gunakan adalah metode upper bounding dimana berfungsi untuk menentukan suatu batas atas pada solusi optimal. Sebab persoalan ini Universitas Sumatera Utara 16 membutuhkan solusi optimal. Berbeda halnya dengan metode lower bounding yang berfungsi untuk menentukan suatu batas bawah dari fungsi objektif. Untuk menghitung batas atas upper bound, digunakan : Penyelesaian : Untuk mencari ub maksimum keuntungan terbesar adalah :  Ambil 0 item, masukkan density maximum dari item ub = 0 + 10 – 010 = 100 Setelah kita mengambil 1 item, kita hitung upper bound dengan :  Semua bagian item 1 4, 40 + sebagian dari item 2 7, 42 ub = 40 + 10-46 = 76 Jika tidak mengambil item 1, maka : ub = 10 – 0 6 = 60 w = 0, v = 0 ub = 100 w = 4, v = 40 ub = 76 w = 0, v = 0 ub = 60 w = 11 w = 4, v = 40 ub = 70 w = 9, v = 65 ub = 69 w = 4, v = 40 ub = 64 w = 12 w = 9, v = 65 ub = 65 EF G bar 2.9 Pohon ruang status yang terbentuk penyelesaian knapsack [18] ub = p + B – bpi+1bi+1 1 3 2 4 with 1 without 1 with 2 without 2 with 3 with 4 without 4 5 6 7 8 inferior to node 8 tidak feasible tidak feasible inferior to node 8 optimal solution without 3 lebih rendah dari node 8 lebih rendah dari node 8 4 4 2 without 1 dimana : p = Profit B = Kapasitas Maksimum b = Berat item Universitas Sumatera Utara 17 HIJI K L MN OP M Q 2.7.1. Defenisi Asam Urat Asam urat adalah asam yang berbentuk kristal-kristal yang merupakan hasil akhir dari metabolisme purin bentuk turunan nukleoprotein, yaitu salah satu komponen asam nukleat yang terdapat pada inti sel-sel tubuh. Secara alamiah, purin terdapat dalam tubuh kita dan dijumpai pada semua makanan dari sel hidup, yakni makanan dari tanaman sayur, buah, kacang-kacangan atau pun hewan daging, jeroan, ikan sarden. Setiap orang memiliki asam urat di dalam tubuh karena pada setiap metabolisme normal dihasilkan asam urat. Asam urat yang terdapat di dalam tubuh kita tentu saja kadarnya tidak boleh berlebihan. Asam urat dapat berlebih disebabkan adanya pemicu, yaitu makanan dan senyawa lain yang banyak mengandung purin. Sesungguhnya tubuh menyediakan 85 persen senyawa purin untuk kebutuhan setiap hari, hal ini berarti bahwa kebutuhan purin dari makanan hanya sekitar 15 persen. Asam urat pun dapat merupakan faktor risiko untuk penyakit jantung koroner. Kristal asam urat akan merusak endotel lapisan bagian dalam pembuluh darah koroner Karena itu siapapun yang kadar asam uratnya tinggi harus berupaya untuk menurunkannya agar kerusakan tidak merembet ke organ-organ tubuh yang lain. Dalam kaitan ini juga terdapat fungsi ginjal yang bekerja mengatur kestabilan kadar asam urat dalam tubuh dimana sebagian sisa asam urat dibuang melalui air seni. Apabila asam urat berlebihan dan ginjal tidak mampu lagi mengatur kestabilannya, maka asam urat in akan menumpuk pada jaringan dan sendi, dan pada saat kadar asam urat tinggi maka akan timbul rasa nyeri yang hebat terutama pada daerah persendian. Pada umumnya para pria lebih banyak terserang asam urat, dan kadar asam urat kaum pria cenderung meningkat sejalan dengan peningkatan usia. Sedangkan Pada wanita pada wanita presentasinya lebih kecil, dimana peningkatannya juga cenderung berjalan sejak dimulainya masa menopause. Asam urat cenderung dialami oleh pria, ini karena wanita mempunyai hormon estrogen yang ikut membantu pembuangan asam urat lewat urine. Sementara pada pria, asam uratnya cenderung lebih tinggi daripada wanita karena tidak memiliki hormon estrogen tersebut. Universitas Sumatera Utara 18 Jadi selama seorang wanita mempunyai hormon estrogen, maka pembuangan asam uratnya ikut terkontrol. Ketika sudah tidak mempunyai estrogen, seperti saat menopause, barulah wanita tersebut dapat terkena asam urat. Kalau peningkatan asam urat ini melewati ambang batas yang bisa ditolerir, maka persoalan akan timbul pertama adalah pada ginjal, sendi, dan saluran kemih. Kadar asam urat normal pada pria dan wanita berbeda. Kadar asam urat normal pada pria berkisar 3,5 7 mgdl dan pada wanita 2,6 6 mgdl. Kadar asam urat diatas normal disebut hiperurisemia.[8] 2.7.2. Gejala Penyebab Asam Urat Sekitar 90 penyakit asam urat disebabkan oleh ketidakmampuan ginjal membuang asam urat secara tuntas dari tubuh melalui air seni. Sebagian kecil lainnya karena tubuh memproduksi asam urat secara berlebihan. Penyakit asam urat kebanyakan diderita oleh pria di atas 40 tahun dan wanita yang telah menopause. Penderita asam urat biasanya juga memiliki keluhan lain seperti tekanan darah tinggi, penyakit ginjal, diabetes dan aterosklerosis. Separuh dari penderita asam urat adalah orang yang kegemukan. Apabila dibiarkan, maka penyakit asam urat bisa berkembang menjadi batu ginjal dan mengakibatkan gagal ginjal. Gejala khas dari asam urat atau artritis gout adalah serangan akut biasanya bersifat monoartikular menyerang satu sendi saja, disertai dengan gejala pembengkakan, kemerahan, nyeri hebat, panas dan gangguan gerak dari sendi yang terserang yang terjadi mendadak akut yang mencapai puncaknya kurang dari 24 jam. Lokasi yang paling sering terkena pada serangan pertama adalah sendi pangkal ibu jari kaki. Hampir pada semua kasus, lokasi artritis terutama pada sendi perifer dan jarang pada sendi sentral. Serangan yang terjadi mendadak maksudnya tiba-tiba. Bisa saja pada siang hari sampai menjelang tidur kita tidak mengalami keluhan sama sekali, akan tetapi pada tengah malam, penderita mendadak terbangun karena rasa sakit yang amat sangat. Jika serangan ini datang, penderita akan merasakan sangat kesakitan walau tubuhnya hanya terkena selimut atau bahkan hembusan angin.[8] Universitas Sumatera Utara 19 2.7.3. Tahapan Asam Urat  Tahap pertama disebut tahap gout artritis akut Pada tahap ini penderita akan mengalami serangan artritis yang khas dan serangan tersebut akan menghilang tanpa pengobatan dalam waktu 5 7 hari. Karena cepat menghilang, maka sering penderita menduga kakinya keseleo atau kena infeksi sehingga tidak menduga terkena penyakit gout dan tidak melakukan pemeriksaan lanjutan.  Tahap kedua disebut sebagai tahap artritis gout intermiten akut. Setelah melewati masa gout interkritikal selama bertahun-tahun tanpa gejala, penderita akan memasuki tahap ini, ditandai dengan serangan artritis yang khas. Selanjutnya penderita akan sering mendapat serangan kambuh yang jarak antara serangan yang satu dan serangan berikutnya makin lama makin rapat dan lama, serangan makin lama makin panjang, serta jumlah sendi yang terserang makin banyak.  Tahap ketiga disebut sebagai tahap gout artritis kronik bertofus. Tahap ini terjadi bila penderita telah menderita sakit selama 10 tahun atau lebih. Pada tahap ini akan terjadi benjolan-benjolan di sekitar sendi yang sering meradang yang disebut sebagai tofus. Tofus ini berupa benjolan keras yang berisi serbuk seperti kapur yang merupakan deposit dari kristal monosodium urat. Tofus ini akan mengakibatkan kerusakan pada sendi dan tulang di sekitarnya. Tofus pada kaki bila ukurannya besar dan banyak akan mengakibatkan penderita tidak dapat menggunakan sepatu lagi. 2.7.4. Penggolongan Asam Urat Penyakit asam urat digolongkan menjadi penyakit gout primer dan penyakit gout sekunder :  Penyakit gout primer Hampir 99 persen penyebabnya belum diketahui idiopatik. Diduga berkaitan dengan kombinasi faktor genetic dan faktor hormonal yang menyebabkan gangguan metabolisme yang dapat mengakibatkan meningkatnya produksi asam urat atau bisa juga diakibatkan karena berkurangnya pengeluaran asam urat dari tubuh. Universitas Sumatera Utara 20  Penyakit gout sekunder Penyakit ini disebabkan antara lain karena meningkatnya produksi asam urat karena nutrisi, yaitu mengonsumsi makanan dengan kadar purin yang tinggi. Pada keadaan normal, kandungan asam urat dalam tubuh adalah : a. Pria : 3,7 7 mgdL b. Wanita : 2,4 5,7 mgdL Penderita asam urat di golongkan berdasarkan kandungan asam urat yaitu : 1. Golongan I a. Pria : 7 8,5 mgdL b. Wanita : 5,8 7 mgdL 2. Golongan II a. Pria : 8,5 9 mgdL b. Wanita : 7 8 mgdL 3. Golongan III a. Pria : 9 mgdL b. Wanita : 8 mgdL [9] Universitas Sumatera Utara BAB 3 ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Sistem