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