Anda di halaman 1dari 11

Jurnal Artificial Intelligence, 18 April 2017, ISTP Medan

Analisis Penggunaan Algoritma Breadth First Search Dalam Konsep Artificial Intellegencia

Fraja Maruli
15.082.3042, E-mail : frajamaruli@gmail.com
Institut Sains & Teknologi TD. Pardede Medan
JL. DR. T.D. Pardede No. 8 Medan 20153

1
Jurnal Artificial Intelligence, 18 April 2017, ISTP Medan

yang dapat membuat suatu kesimpulan


Abstrak berdasarkan pemetaan yang telah dilakukan
didalam pemrograman. Dalam hal ini, banyak
Artificial Intelligencia merupakan suatu metode yang dapat digunakan dan
konsep pemetaan suatu bahasa pemrograman dimanfaatkan untuk menyelesaikan
yang dapat membuat suatu kesimpulan permasalahan tersebut. Contohnya seperti
berdasarkan pemetaan yang telah dilakukan masalah Teko Air.
didalam pemrograman. Dalam hal ini, banyak
metode yang dapat digunakan dan Permasalahan ini dapat diselesaikan
dimanfaatkan untuk menyelesaikan dengan menerapkan konsep AI yaitu dengan
permasalahan tersebut. Contohnya seperti bantuan pohon pelacakan dan menerapkan
masalah Teko Air. Permasalahan ini dapat metode pencarian melebar pertama
diselesaikan dengan menerapkan konsep AI (breadthfirst search / BFS). Pencarian solusi
yaitu dengan bantuan pohon pelacakan dan dimulai dari kondisi dimana kedua teko kosong
menerapkan metode pencarian melebar pertama (node akar dari pohon pelacakan). Proses
(breadth-first search / BFS). Pencarian solusi dilanjutkan dengan menggambarkan kondisi
dimulai dari kondisi dimana kedua teko kosong (state) berikutnya (dengan melakukan aksi
(node akar dari pohon pelacakan). Perangkat terhadap state sebelumnya) hingga semua state
lunak ini memiliki kemampuan untuk mencari diperiksa dan mendapatkan tujuan (goal state).
solusi permasalahan teko air dengan 2 buah
kendi dan menampilkan semua langkah – Berdasarkan uraian di atas bertujuan
langkah yang dapat diambil untuk mendapatkan untuk mencari penyelesaian atau solusi
solusi atau volume air yang terhadap permasalahan teko air dengan bantuan
diinginkan.Perangkat lunak dapat mencari pohon pelacakan dan metode pencarian melebar
solusi terpendek dari permasalahan teko air pertama (breadth-first search).
karena menggunakan metode pencarian
melebar pertama (breadthfirst search). 2. Artificial Intelligence (AI)
Pencarian tidak selalu menghasilkan solusi 2.1. Sejarah AI
walaupun setelah semua node pada pohon
pelacakan diperiksa dan dikembangkan. Artificial Intelligence (AI) atau
kecerdasan buatan termasuk bidang ilmu yang
Kata Kunci : AI, breadth-first search / relatif muda. Pada tahun 1950-an para ilmuwan
BFS, node akar dari pohon pelacakan dan peneliti mulai memikirkan bagaimana
caranya agar mesin dapat melakukan
pekerjaannya seperti yang bisa dikerjakan oleh
1. PENDAHULUAN manusia. Alan Turing, seorang matematikawan
dari Inggris pertama kali mengusulkan adanya
Perkembangan pengetahuan mengenai pengujian untuk melihat bisa tidaknya sebuah
sistem komputer semakin berkembang mesin dikatakan cerdas. Hasil pengujian
berdasarkan kebutuhan manusia akan sistem. tersebut kemudian dikenal dengan Turing Test,
Dalam konsep bahasa pemrograman, terutama di mana mesin tersebut menyamar seolah-olah
didalam pemrograman yang berbasis sistem sebagai seseorang di dalam suatu permainan
operasi semakin lama semakin dibutuhkan yang mampu memberikan respon terhadap
untuk menyelesaikan permasalahan. Pada masa serangkaian pertanyaan yang diajukan. Turing
kini, perkembangan teknologi semakin tinggi beranggapan bahwa, jika mesin dapat membuat
dengan ditemukannya suatu sistem yang dapat seseorang percaya bahwa dirinya mampu
berkomunikasi dengan orang lain, maka dapat
memberikan konstribusi kesimpulan kepada dikatakan bahwa mesin tersebut cerdas (seperti
pengguna sistem. Sistem yang dimaksud adalah layaknya manusia).
konsep AI.
Kecerdasan buatan atau Artificial
Artificial Intelligencia merupakan suatu Intelligence (AI) itu sendiri dimunculkan oleh
konsep pemetaan suatu bahasa pemrograman seorang professor dari Massachusetts Institute
of Technology yang bernama John McCarthy

2
Jurnal Artificial Intelligence, 18 April 2017, ISTP Medan

pada tahun 1956 pada Dartmouth Conference Pengertian kecerdasan buatan


yang dihadiri oleh para peneliti AI. Pada dapat dipandang dari berbagai sudut pandang,
konferensi tersebut juga didefinisikan tujuan antara lain :
utama dari kecerdasan buatan, yaitu mengetahui 1. Sudut pandang kecerdasan Kecerdasan
dan memodelkan proses-proses berpikir buatan akan membuat mesin menjadi ‘cerdas’
manusia dan mendesain mesin agar dapat (mampu berbuat seperti apa yang dilakukan
menirukan kelakuan manusia tersebut. oleh manusia). 2. Sudut pandang penelitian
Kecerdasan buatan adalah suatu studi
2.2. Definisi AI bagaimana membuat agar komputer dapat
melakukan sesuatu sebaik yang dikerjakan
Kecerdasan buatan merupakan salah satu oleh manusia.
bagian ilmu komputer yang membuat agar 3. Sudut pandang bisnis
mesin (komputer) dapat melakukan pekerjaan Kecerdasan buatan adalah kumpulan
seperti dan sebaik yang dilakukan oleh peralatan yang sangat powerful dan
manusia. Pada awal diciptakannya, komputer metodologis dalam menyelesaikan
hanya difungsikan sebagai alat hitung saja. masalahmasalah bisnis.
Namun seiring dengan perkembangan zaman, 4. Sudut pandang pemrograman Kecerdasan
maka peranan komputer semakin mendominasi buatan meliputi studi tentang pemrograman
kehidupan umat manusia. Komputer tidak lagi simbolik, penyelesaian masalah (problem
hanya digunakan sebagai alat hitung, lebih dari solving) dan pencarian (searching).
itu komputer diharapkan dapat diberdayakan
untuk mengerjakan segala sesuatu yang bisa Untuk membuat aplikasi kecerdasan
dikerjakan manusia. buatan ada 2 bagian utama yang sangat
dibutuhkan, yaitu :
Manusia bisa menjadi pandai dalam
menyelesaikan segala permasalahan di dunia ini 1. Basis Pengetahuan (Knowledge Base),
karena manusia mempunyai pengetahuan dan berisi fakta-fakta, teori, pemikiran dan
pengalaman. Pengetahuan diperoleh dari hubungan antara satu dengan lainnya.
belajar. Semakin banyak bekal pengetahuan 2. Motor Inferensi (Inference Engine),
yang dimiliki seseorang tentu saja diharapkan yaitu kemampuan menarik
akan lebih mampu dalam menyelesaikan kesimpulan berdasarkan pengalaman.
Komputer

permasalahan. Namun bekal pengetahuan saja


tidak cukup, manusia juga diberi akal untuk Basis
Pengetahuan
Motor
Inferensi

melakukan penalaran, mengambil kesimpulan


berdasarkan pengetahuan dan pengalaman yang Input :Output : masalah,jawaban,
pertanyaan,solusi dll

mereka miliki. Tanpa memiliki kemampuan


untuk menalar dengan baik, manusia dengan
segudang pengalaman dan pengetahuan tidak Gambar 1 Penerapan konsep kecerdasan buatan
akan dapat menyelesaikan masalah dengan di komputer Representasi
baik. Demikian pula, dengan kemampuan
menalar yang sangat baik, namun tanpa bekal Representasi merupakan aturan untuk
pengetahuan dan pengalaman yang memadai, mendeskripsikan suatu himpunan objek. Jika
manusia juga tidak akan bisa menyelesaikan masalah sudah dinyatakan dengan representasi
masalah dengan baik. yang tepat, maka masalah hampir selesai.

Agar komputer bisa bertindak seperti dan Susunan atau pola representasi suatu
sebaik manusia, maka komputer juga harus masalah antara lain :
diberi bekal pengetahuan dan mempunyai
kemampuan untuk menalar. Untuk itu pada AI 1. Representasi Leksikal, merupakan
akan mencoba untuk memberikan beberapa simbolsimbol yang boleh ada.
metoda untuk membekali komputer dengan 2. Representasi Struktural, merupakan
kedua komponen tersebut agar komputer bisa hubungan dan kombinasi yang boleh antar
menjadi mesin yang pintar. simbol.

3
Jurnal Artificial Intelligence, 18 April 2017, ISTP Medan

3. Representasi Prosedural, merupakan yakni memecahkan kesimpulan, memecahkan


prosedur-prosedur yang berkaitan. premis secara berurutan.
4. Representasi Semantik, merupakan arti dari
simbol-simbol yang ada. Representasi Semantik
Representasi dimaksudkan untuk
menangkap sifat-sifat penting dari suatu Representasi ini menangkap pengetahuan
masalah dan membuat informasi itu dapat sebagai sebuah graf dimana simpul-simpulnya
diakses oleh prosedur pemecahan masalah. menggambarkan obyek atau konsep dalam
Kecerdasan buatan lebih ditujukan untuk masalah yang dihadapi sedangkan
menangani pemecahan masalah kualitatif lengkunganlengkungannya menggambarkan
daripada kuantitatif yaitu lebih dititikberatkan hubungan atau asosiasi antar mereka. Contoh-
pada sebab-akibat daripada penghitungan, dan contoh representasi network antara lain adalah
lebih diarahkan pada pengaturan sejumlah besar jaringan semantik (semantic network) dan graf
pengetahuan yang bervariasi daripada konseptual.
diimplementasikan pada algoritma yang well -
defined.
2.3. Kecerdasan Buatan dan Kecerdasan
Representasi Leksikal Alamiah

Representasi jenis ini menggunakan Kecerdasan alamiah adalah kecerdasan


ekspresi-ekspresi dalam logika formal untuk yang dimiliki oleh manusia. Jika dibandingkan
merepresentasikan basis pengetahuan. dengan kecerdasan buatan, ada beberapa
Aturanaturan inferensi dan prosedur keuntungan kecerdasan buatan dibanding
pembuktian menerapkan pengetahuan ini pada kecerdasan alamiah, yaitu:
masalah yang harus dipecahkan. 1. Lebih permanen.
Contoh : Kecerdasan alamiah akan cepat mengalami
Premis Mayor : Jika mahasiswa mendapat nilai perubahan. Hal ini dimungkinkan karena
E, maka mahasiswa tidak lulus. sifat manusia yang pelupa. Kecerdasan
Premis Minor : Mahasiswa mendapat nilai E. buatan tidak akan berubah sepanjang sistem
Konklusi : Mahasiswa tidak lulus. komputer dan program tidak diubah.
2. Memberikan kemudahan dalam duplikasi
Representasi Struktural dan penyebaran.
Mentransfer pengetahuan manusia dari satu
Bahasa-bahasa representasi terstruktur orang ke orang lain membutuhkan proses
memperluas network dengan cara membuat yang sangat lama, dan keahlian itu juga
setiap simpulnya menjadi sebuah struktur data tidak akan pernah dapat diduplikasi dengan
kompleks yang berisi tempat-tempat bernama lengkap. Oleh karena itu, jika pengetahuan
dengan nilai-nilai tertentu. Nilai-nilai ini dapat terletak pada suatu sistem komputer,
merupakan data numerik atau simbolik pengetahuan tersebut dapat disalin dari
sederhana, pointer ke bingkai (frame) lain, atau komputer tersebut dan dapat dipindahkan
merupakan prosedur untuk mengerjakan tugas dengan mudah ke komputer yang lain.
tertentu. 3. Relatif lebih murah dan kecerdasan alamiah.
Menyediakan layanan komputer akan lebih
Representasi Prosedural mudah dan lebih murah dibandingkan
dengan harus mendatangkan seseorang
Representasi prosedural menggambarkan untuk mengerjakan sejumlah pekerjaan
pengetahuan sebagai sekumpulan instruksi dalam jangka waktu yang sangat lama.
untuk memecahkan suatu masalah. Ini 4. Konsisten dan teliti.
berlawanan dengan representasi deklarasi yang Hal ini disebabkan karena kecerdasan buatan
ditangani oleh network logika dan semantik. adalah bagian dari teknologi komputer.
Dalam sistem berbasis aturan, aturan IF-THEN Sedangkan kecerdasan alami akan
dapat ditafsirkan sebagai sebuah prosedur senantiasa berubah-ubah.
untuk mencapai tujuan pemecahan masalah, 5. Dapat didokumentasi.

4
Jurnal Artificial Intelligence, 18 April 2017, ISTP Medan

Keputusan yang dibuat oleh komputer dapat ilmu komputer (informatika), namun juga sudah
didokumentasi dengan mudah dengan cara merambah di berbagai disiplin ilmu yang lain.
melacak setiap aktivitas dari sistem tersebut. Irisan antara psikologi dan AI melahirkan
Kecerdasan alami sangat sulit untuk sebuah area yang dikenal dengan nama
direproduksi. cognition & psycolinguistics. Irisan antara
6. Dapat mengerjakan beberapa task dengan teknik elektro dengan AI melahirkan berbagai
lebih cepat dan lebih baik dibanding ilmu, seperti: pengolahan citra, teori kendali,
manusia. pengenalan pola dan robotika.
Adanya irisan penggunaan AI di berbagai
Sedangkah, keuntungan disiplin ilmu tersebut menyebabkan cukup
kecerdasan alamiah dibanding rumitnya untuk mengklasifikasikan AI menurut
kecerdasan buatan: disiplin ilmu yang menggunakannya. Untuk
memudahkan hal tersebut, maka
1. Bersifat lebih kreatif. pengklasifikasian lingkup AI didasarkan pada
Kemampuan untuk menambah ataupun output yang diberikan, yaitu pada aplikasi
memenuhi pengetahuan itu sangat melekat komersial (meskipun sebenarnya AI itu sendiri
pada jiwa manusia. Pada kecerdasan buatan, bukan merupakan medan komersial).
untuk menambah pengetahuan harus Lingkup utama dalam kecerdasan buatan
dilakukan melalui sistem yang dibangun. adalah:
2. Dapat melakukan proses pembelajaran 1. Sistem Pakar (Expert System). Disini,
secara langsung, sementara AI harus komputer digunakan sebagai sarana untuk
mendapatkan masukan berupa simbol dan menyimpan pengetahuan para pakar.
representasi. Dengan demikian, komputer akan memiliki
3. Fokus yang luas sebagai referensi untuk keahlian untuk menyelesaikan permasalahan
pengambilan keputusan, sebaiknya AI dengan meniru keahlian yang dimiliki oleh
menggunakan fokus yang sempit. pakar.
2. Pengolahan Bahasa Alami (Natural
Komputer dapat digunakan untuk Language Processing).
mengumpulkan informasi tentang obyek, Dengan pengolahan bahasa alami ini
kegiatan (events), proses dan dapat memproses diharapkan user dapat berkomunikasi
sejumlah besar informasi dengan lebih efisien dengan komputer dengan menggunakan
dari yang dapat dikerjakan manusia. Namun di bahasa sehari-hari.
sisi lain, manusia dengan menggunakan insting 3. Pengenalan Ucapan (Speech Recognition).
dapat melakukan hal yang sulit diprogram pada Melalui pengenalan ucapan diharapkan
komputer, yaitu kemampuan mengenali manusia dapat berkomunikasi dengan
(recognize) hubungan antara hal-hal tersebut, komputer menggunakan suara.
menilai kualitas dan menemukan pola yang 4. Robotika & Sistem Sensor (Robotics &
menjelaskan hubungan tersebut. Sensory Systems).
5. Computer Vision, mencoba untuk dapat
2.4. Lingkup Kecerdasan Buatan pada menginterpretasikan gambar atau
Aplikasi Komersial objekobjek tampak melalui komputer.
6. Intelligent Computer-aided Instruction.
Dewasa ini, kecerdasan buatan juga Komputer dapat digunakan sebagai tutor
memberikan konstribusi yang cukup besar di yang dapat melatih dan mengajar.
bidang manajemen. Adanya sistem pendukung 7. Game Playing.
keputusan dan Sistem Informasi Manajemen
juga tidak terlepas dari andil AI. Makin Seiring dengan perkembangan teknologi,
pesatnya perkembangan teknologi muncul beberapa teknologi yang juga bertujuan
menyebabkan adanya perkembangan dan untuk membuat agar komputer menjadi cerdas
perluasan lingkup yang membutuhkan sehingga dapat menirukan kerja manusia
kehadiran AI. Karakteristik ‘cerdas’ sudah seharihari. Teknologi ini juga mampu
mulai dibutuhkan di berbagai disiplin ilmu dan mengakomodasi adanya ketidakpastian dan
teknologi. AI tidak hanya dominan di bidang ketidaktepatan data input. Dengan didasari pada
teori himpunan, maka pada tahun 1965 muncul

5
Jurnal Artificial Intelligence, 18 April 2017, ISTP Medan

Logika Fuzzy. Kemudian pada tahun 1975, Tujuan yang ingin dicapai adalah posisi
John Holland mengatakan bahwa setiap pada papan catur yang menunjukkan
problem berbentuk adaptasi (alami maupun kemenangan seseorang terhadap lawannya.
buatan) secara umum dapat diformulasikan Kemenangan ini ditandai dengan posisi Raja
dalam terminologi genetika. Algoritma genetika yang sudah tidak dapat bergerak lagi.
ini merupakan simulasi proses evolusi Darwin
dan operasi genetika atas kromosom. Contoh di atas menunjukkan representasi
masalah dalam Ruang Keadaan (State Space),
2.5. Masalah Ruang Keadaan yaitu suatu ruang yang berisi semua keadaan
yang mungkin. Kita dapat memulai bermain
Secara umum, untuk membangun suatu catur dengan menempatkan diri pada keadaan
sistem yang mampu menyelesaikan masalah, awal, kemudian bergerak dari satu keadaan ke
perlu dipertimbangkan 4 hal: keadaan yang lain sesuai dengan aturan yang
ada, dan mengakhiri permainan jika salah satu
1. Mendefinisikan masalah dengan tepat. pemain telah mencapai tujuan.
Pendefinisian ini mencakup spesifikasi yang Sehingga secara umum, untuk
tepat mengenai keadaan awal dan solusi mendekripsikan masalah dengan baik, harus:
yang diharapkan.
2. Menganalisis masalah tersebut serta mencari 1. Mendefinisikan suatu ruang keadaan.
beberapa teknik penyelesaian masalah yang 2. Menetapkan satu atau lebih keadaan awal.
sesuai. 3. Menetapkan satu atau lebih tujuan.
3. Merepresentasikan pengetahuan yang perlu 4. Menetapkan kumpulan aturan.
untuk menyelesaikan masalah tersebut.
4. Memilih teknik penyelesaian masalah yang 3. Metode Pencarian dan Pelacakan
terbaik.
Konsep utama dalam menentukan
Misalkan permasalahan yang dihadapi keberhasilan sistem yang berlandaskan AI
adalah “Permainan Catur”, maka harus adalah kesuksesan dalam melakukan dan
ditentukan: mengembangkan pencarian. Pencarian atau
pelacakan merupakan salah satu teknik untuk
1. Posisi awal pada papan catur; Posisi awal menyelesaikan permasalahan AI. Keberhasilan
setiap permainan catur selalu sama, yaitu suatu sistem, salah satunya ditentukan oleh
semua bidak diletakkan di atas papan catur kesuksesan dalam pencarian dan pencocokan.
dalam 2 sisi, yaitu kubu putih dan kubu Teknik dasar pencarian memberikan suatu
hitam. kunci bagi banyak sejarah penyelesaian yang
2. Aturan-aturan untuk melakukan gerakan penting dalam bidang AI. Ada beberapa
secara legal; aplikasi yang menggunakan teknik pencarian
Aturan-aturan ini sangat berguna untuk ini, yaitu:
menentukan gerakan suatu bidak, yaitu
melangkah dari satu keadaan ke keadaan 1. Papan game dan puzzle (tic-tac-toe, catur)
lain. Misalkan untuk mempermudah 2. Penjadwalan dan masalah routing
menunjukkan posisi bidak, setiap kotak (travelling salesman problem)
harus ditunjukkan dalam huruf (a, b, c, d, e, 3. Parsing bahasa dan interpretasinya
f, g, h) pada arah horizontal dan angka (1, 2, (pencarian struktur dan arti)
3, 4, 5, 6, 7, 8) pada arah vertikal. Suatu 4. Logika pemograman (pencarian fakta dan
aturan untuk menggerakkan bidak dari implikasinya)
posisi (e,2) ke (e,4) dapat ditunjukkan 5. Computer vision dan pengenalan pola
dengan aturan:
IF Bidak putih pada Kotak(e,2),And Konsep pencarian untuk suatu solusi
Kotak(e,3) Kosong, And Kotak(e,4) dalam ruang keadaan (state space) merupakan
Kosong, Then Gerakkan bidak dari (e,2) ke pusat AI yang menjadikan AI lebih unggul
(e,4) dalam bidang ilmu komputer dibandingkan
3. Tujuan (goal); dengan yang lainnya, dan prinsip kontribusi AI

6
Jurnal Artificial Intelligence, 18 April 2017, ISTP Medan

untuk ilmu pengetahuan dari pencarian ini tersebut hendak diisi air sebanyak N liter,
merupakan konsep basis pengetahuan dengan menggunakan asumsi bahwa sumber air
(knowledge based) heuristik untuk pembatasan tidak terbatas. Aksi – aksi yang dapat
dan pencarian berarah (directing search). Pada dilakukan, antara lain mengisi teko dengan air
dasarnya, ada dua teknik pencarian dan hingga penuh, mengosongkan teko dan
pelacakan yaitu: menuangkan isi teko ke teko yang lain.
Sebagai contoh, terdapat 2 buah teko
1. Pencarian buta (blind search), terdiri atas: masing-masing berkapasitas 4 liter (teko A) dan
a. Pencarian melebar pertama (Breadth- 3 liter (teko B). Tidak ada tanda yang
First Search) menunjukkan batas ukuran pada kedua teko
b. Pencarian mendalam pertama tersebut. Ada sebuah pompa air yang akan
(DepthFirst Search) digunakan untuk mengisikan air pada kedua
2. Pencarian heuristik (heuristic search). teko tersebut. Permasalahannya: bagaimanakah
kita dapat mengisikan tepat 2 liter air ke dalam
3.1. Pencarian Melebar Pertama salah satu teko yang ada?
(BreadthFirst Search)

Pada metode pencarian ini, semua node 2 liter ?


pada level n akan dikunjungi terlebih dahulu
sebelum mengunjungi node-node pada level 4 liter 3 liter
n+1. Pencarian dimulai dari node akar terus ke (teko A) (teko B)
level ke-1 dari kiri ke kanan, kemudian
berpindah ke level berikutnya. Demikian
seterusnya hingga ditemukannya solusi. Gambar 3 Ilustrasi Masalah Teko Air
Gambaran pencarian BFS dapat dilihat pada Penyelesaian:
gambar 2.
A. Identifikasi ruang keadaan.

A Permasalahan ini dapat direpresentasikan


dengan 2 bilangan integer, yaitu x dan y: - x
B C
= air yang diisikan pada teko 4 liter (teko
A);
- y = air yang diisikan pada teko 3 liter
(teko B);
D E F G H I Ruang keadaan: (x,y) sedemikian sehingga x
 {0,1,2,3,4} dan y  {0,1,2,3)
Gambar 2 Pencarian melebar pertama (Breadth-
First Search) B. Keadaan awal dan tujuan.

Pada gambar 2, terlihat bahwa pencarian - Keadaan awal, kedua teko dalam
dimulai dari keadaan awal (node A). Dari node keadaan kosong (0, 0);
A dikembangkan dua node baru yang menjadi - Keadaan tujuan, keadaan dimana
anaknya, yaitu node B dan node C. Penelusuran terdapat 2 liter air pada salah satu teko,
dilanjutkan ke node B (menghasilkan node D, teko A (2,n) atau teko B (n,2).
E, F) dan node C (menghasilkan node G, H, I).
Demikian seterusnya hingga ditemukan solusi. C. Aturan-aturan.

Masalah Teko Air Aturan-aturan dapat digambarkan pada tabel


1 berikut:
Masalah Teko Air (Water Jug Problem)
dapat diilustrasikan seperti berikut, terdapat 2 Tabel 1 Aturan-aturan masalah teko air
Aturan Jika Maka
buah teko air X dan Y, masing – masing ke -
berukuran A dan B liter. Salah satu teko 1 (x,y), x < 4 (4,y). Isi teko A.

7
Jurnal Artificial Intelligence, 18 April 2017, ISTP Medan

2 (x,y), y < 3 (x,3). Isi teko B. 3 3 5


3 (x,y), x > 0 (0,y). Kosongkan teko A
dengan membuang airnya. 4 2 (solusi) -
4 (x,y), y > 0 (x,0). Kosongkan teko B
dengan membuang airnya.
5 (x,y), x + y  (4, y-(4-x)). Tuangkan air dari 4. HASIL DAN PEMBAHASAN
4 dan y > 0 teko B ke teko A sampai teko 4.1. Hasil
A penuh.
6 (x,y), x + y  (x-(3-y),y).Tuangkan air dari Implementasi sistem program ini
3 dan x > 0 teko A ke teko B sampai teko mencakup spesifikasi kebutuhan perangkat
B penuh. keras (hardware) dan spesifikasi perangkat
7 (x,y), x + y  (x+y,0). Tuangkan seluruh air
lunak (software).
4 dan y > 0 dari teko B ke teko A.
8 (x,y), x + y  (0,x+y). Tuangkan seluruh air
3 dan x > 0 dari teko A ke teko B. Spesifikasi Perangkat Keras dan Perangkat
Lunak
Keterangan: x = ukuran kendi A, y = ukuran
kendi B. Program ini sebaiknya dijalankan dengan
menggunakan perangkat keras (hardware) yang
D. Representasi ruang keadaan dengan mempunyai spesifikasi minimal sebagai
pohon pelacakan. berikut:
1. Prosesor Intel Pentium II 233 Mhz.
Pencarian suatu solusi dapat dilukiskan 2. Memory 64 MB.
dengan menggunakan pohon. Tiap-tiap node 3. Harddisk dengan free space minimal 300
menunjukkan satu keadaan. Jalur dari parent MB.
ke child menunjukkan satu operasi. Tiaptiap 4. Monitor dengan resolusi 800  600 pixel
node pada pohon pelacakan ini memiliki dengan VGA card 1 MB.
node-node child yang menunjukkan keadaan 5. Keyboard dan Mouse
yang dapat dicapai oleh parent. Adapun sistem operasi (operating
system) yang digunakan untuk menjalankan
aplikasi ini adalah lingkungan sistem operasi
(0, 0)
Windows 98, Me, 2000 dan XP.
(4,0) (0, 3)
Pengujian Program

Sebagai contoh, input data sebagai


(4 , 3) (0 , 0) (1 , 3) (4 , 3) (0 , 0) (3 , 0)
berikut:
. . . . .
. . . . .
(3,3)
Contoh 1 :
. . . . .
. . . . . (4,2) 1. Kapasitas kendi-1: 11 liter
2. Kapasitas kendi-2: 6 liter
Gambar 4 Representasi Ruang Keadaan pada 3. Volume air yang diinginkan : 7 liter
Masalah Teko Air 4. Solusi permasalahan teko air yang
didapatkan :
Salah satu solusi yang dapat ditemukan
terlihat pada tabel 2 berikut,

Tabel 2 Contoh solusi pada masalah teko air


Teko A Teko B Aturan yang
(gallon) (gallon) dipakai
0 0 2
0 3 7
3 0 2
Gambar 5 Tampilan Program

8
Jurnal Artificial Intelligence, 18 April 2017, ISTP Medan

List Solusi permasalahan teko air dengan


kapasitas kendi-1 = 11 liter, kapasitas kendi-2 =
6 liter dan volume air yang diinginkan = 7 liter

Gambar 7 Tampilan Program

List Solusi permasalahan teko air dengan


kapasitas kendi-1 =16 liter, kapasitas kendi-2 =
10 liter dan volume air yang diinginkan = 8 liter

Gambar 6 Tampilan Program

Solusi permasalahan teko air dengan


kapasitas kendi-1 =11 liter, kapasitas kendi-2 =
6 liter dan volume air yang diinginkan = 7 liter

Langkah – langkah yang dikerjakan pada


solusi:

a. Langkah-0 : Kondisi Awal (Kendi kosong).


(Kendi-1 = 0 liter, Kendi-2 = 0 liter)
b. Langkah-1 : Isi kendi #2 dengan air. (Kendi-
1 = 0 liter, Kendi-2 = 6 liter)
c. Langkah-2 : Tuang isi kendi #2 ke kendi #1.
(Kendi-1 = 6 liter, Kendi-2 = 0 liter) Gambar 8 Tampilan Program
d. Langkah-3 : Isi kendi #2 dengan air. (Kendi-
1 = 6 liter, Kendi-2 = 6 liter) Solusi-1 permasalahan teko air dengan
e. Langkah-4 : Tuang isi kendi #2 ke kendi #1. kapasitas kendi-1 =16 liter, kapasitas kendi-2 =
(Kendi-1 = 11 liter, Kendi-2 = 1 liter) 10 liter dan volume air yang diinginkan = 8 liter
f. Langkah-5 : Kosongkan kendi #1. (Kendi-1
= 0 liter, Kendi-2 = 1 liter)
g. Langkah-6 : Tuang isi kendi #2 ke kendi #1. Langkah – langkah yang dikerjakan pada
(Kendi-1 = 1 liter, Kendi-2 = 0 liter) solusi-1:
h. Langkah-7 : Isi kendi #2 dengan air. (Kendi- a. Langkah-0 : Kondisi Awal (Kendi kosong).
1 = 1 liter, Kendi-2 = 6 liter) (Kendi-1 = 0 liter, Kendi-2 = 0 liter)
i. Langkah-8 : Tuang isi kendi #2 ke kendi #1. b. Langkah-1 : Isi kendi #2 dengan air. (Kendi-
(Kendi-1 = 7 liter, Kendi-2 = 0 liter) 1 = 0 liter, Kendi-2 = 10 liter)
c. Langkah-2 : Tuang isi kendi #2 ke kendi #1.
Contoh – 2 : (Kendi-1 = 10 liter, Kendi-2 = 0 liter)
1. Kapasitas kendi-1 : 16 liter d. Langkah-3 : Isi kendi #2 dengan air. (Kendi-
2. Kapasitas kendi-2 : 10 liter 1 = 10 liter, Kendi-2 = 10 liter)
3. Volume air yang diinginkan : 8 liter e. Langkah-4 : Tuang isi kendi #2 ke kendi #1.
4. Solusi permasalahan teko air (Kendi-1 = 16 liter, Kendi-2 = 4 liter)
yang didapatkan: f. Langkah-5 : Kosongkan kendi #1. (Kendi-1

9
Jurnal Artificial Intelligence, 18 April 2017, ISTP Medan

= 0 liter, Kendi-2 = 4 liter) j. Langkah-9 : Kosongkan kendi #2. (Kendi-1


g. Langkah-6 : Tuang isi kendi #2 ke kendi #1. = 2 liter, Kendi-2 = 0 liter)
(Kendi-1 = 4 liter, Kendi-2 = 0 liter) k. Langkah-10 : Tuang isi kendi #1 ke kendi
h. Langkah-7 : Isi kendi #2 dengan air. (Kendi- #2. (Kendi-1 = 0 liter, Kendi-2 = 2 liter)
1 = 4 liter, Kendi-2 = 10 liter) l. Langkah-11 : Isi kendi #1 dengan air.
i. Langkah-8 : Tuang isi kendi #2 ke kendi #1. (Kendi-1 = 16 liter, Kendi-2 = 2 liter)
(Kendi-1 = 14 liter, Kendi-2 = 0 liter) m. Langkah-12 : Tuang isi kendi #1 ke kendi
j. Langkah-9 : Isi kendi #2 dengan air. (Kendi- #2. (Kendi-1 = 8 liter, Kendi-2 = 10 liter)
1 = 14 liter, Kendi-2 = 10 liter)
k. Langkah-10 : Tuang isi kendi #2 ke kendi
#1. (Kendi-1 = 16 liter, Kendi-2 = 8 liter) 5. KESIMPULAN DAN SARAN
5.1. Kesimpulan

1. Perangkat lunak ini memiliki kemampuan


untuk mencari solusi permasalahan teko air
dengan 2 buah kendi dan menampilkan
semua langkah – langkah yang dapat
diambil untuk mendapatkan solusi atau
volume air yang diinginkan.
2. Perangkat lunak dapat mencari solusi
terpendek dari permasalahan teko air karena
menggunakan metode pencarian melebar
pertama (breadth-first search).
3. Pencarian tidak selalu menghasilkan solusi
walaupun setelah semua node pada pohon
pelacakan diperiksa dan dikembangkan.
Gambar 9 Tampilan Program
5.2. Saran
Solusi-2 permasalahan teko air dengan
1. Perangkat lunak dapat dikembangkan untuk
kapasitas kendi-1 =16 liter, kapasitas kendi-2 =
dapat memecahkan permasalahan teko air
10 liter dan volume air yang diinginkan = 8 liter
dengan jumlah kendi lebih besar dari 2
buah.
Langkah – langkah yang dikerjakan pada solus
2. Perangkat lunak dapat dikembangkan
2 yaitu:
dengan menambahkan pencarian solusi
a. Langkah-0 : Kondisi Awal (Kendi kosong).
dengan metode pelacakan lainnya.
(Kendi-1 = 0 liter, Kendi-2 = 0 liter)
b. Langkah-1 : Isi kendi #1 dengan air. (Kendi-
1 = 16 liter, Kendi-2 = 0 liter)
c. Langkah-2 : Tuang isi kendi #1 ke kendi #2.
(Kendi-1 = 6 liter, Kendi-2 = 10 liter)
d. Langkah-3 : Kosongkan kendi #2. (Kendi-1
= 6 liter, Kendi-2 = 0 liter)
e. Langkah-4 : Tuang isi kendi #1 ke kendi #2.
(Kendi-1 = 0 liter, Kendi-2 = 6 liter)
f. Langkah-5 : Isi kendi #1 dengan air..
(Kendi-1 = 16 liter, Kendi-2 = 6 liter)
g. Langkah-6 : Tuang isi kendi #1 ke kendi #2.
(Kendi-1 = 12 liter, Kendi-2 = 10 liter)
h. Langkah-7 : Kosongkan kendi #2. (Kendi-1
= 12 liter, Kendi-2 = 0 liter)
i. Langkah-8 : Tuang isi kendi #1 ke kendi #2.
(Kendi-1 = 2 liter, Kendi-2 = 10 liter)

10
Jurnal Artificial Intelligence, 18 April 2017, ISTP Medan

DAFTAR PUSTAKA

Ario Suryokusumo, Microsoft Visual Basic 6.0,


PT. Elex Media Komputindo, 2001.

Djoko Pramono, Mudah menguasai Visual


Basic 6, PT. Elex Media Komputindo,
2002.

Sri Kusumadewi, Artificial Intelligence (Teknik


dan Aplikasinya), Penerbit Graha Ilmu,
Edisi 3, 2010.

Anita Desiani & Muhammad Arhami, Konsep


Kecerdasan Buatan, Penerbit Andi
Yogyakarta, 2011.

http://www.stormloader.com/ajy/waterjug.html

www.cut-the-knot.org/ctk/Water.shtml

www.ithaca.edu/tpfaff/pdf/jugnew.pdf

11

Anda mungkin juga menyukai