Kamis, 27 Oktober 2016

Memecahkan Suatu Masalah Dengan Menggunakan Graph Plan

Permasalahan pertama : Shopping



Langkah Penyelesaian 

1. Buat Initial State dan Goal State, dan hubungkan dengan aksi yang memiliki efek sebagai goal state



2. Masukkan aksi yang lain untuk mendapatkan goal state


3. Inisialisasi aksi dari GO (HDW) dengan diinisial x1=home, dan inisialisasi aksi dari GO (SM) dengan inisial x2=home


4. Dapat kita ketahui GO (SM) tidak dapat tersambung dengan At (Home) dikarenakan sudah dimiliki oleh At(X1) dan juga berlaku untuk GO (HDW).


5. Solusi yang dapat kita ambil yaitu dengan menempatkan GO (SM) setelah Buy (Drill) dengan diberikan garis merah putus-putus sebagai tanda bahwa hal itu terjadi


6. Setelah kita berada di GO (SM) kita bisa melanjutkannya dengan Buy (Milk) dan Buy (Bananas) dan berakhir di At(Home)


Permasalahan Kedua : Birthday Dinner


Langkah Penyelesaian :

1. Letakkan Initial State
2. Hubungkan aksi dengan Initial State
3. Masukkan hasil dari aksi yang dapat dilakukan

4. Karena adanya gangguan pada suatu aksi yang meniadakan precondition dari aksi lain, dan akan menghasilkan 


5. Kita akan mendapatkan not Garbage dengan action Dolly, dan Dinner dengan aksi Cook, serta Present dengan aksi Wrap, tetapi Doly dan Wrap Mutex
6. Dikarenakan tidak ada cara lain untuk mendapatkan goal kita akan menggunakan depth two plan, yaitu dengan menambahkan dua level lagi pada Graph, pada tahap ini kita akan mendapatkan mutex sama seperti di level yang sebelumnya. Tetapi terdapat perbedaan yaitu pada kevek ini Dinner tidak mutex dengan Carry, karena kita bisa mendapatkan Dinner dengan membiarkannya dan tetap bisa melakukan Carry. Begitu juga dengan Present tidak mutex dengan Dolly karena kita bisa mendapatkan Present dengan membiarkannya dan dapat tetap melalukan Dolly.
7. Setelah kita selesai dengan mutex kita mencari lagi dengan cara seperti gambar diatas dan akhirnya dapat berhasil dengan cara seperti yang ditunjukan oleh gambar diatas.


Referensi :
- Lecture11FinalPart1.pdf
- Lecture12FinalPart1.pdf

Kamis, 13 Oktober 2016

Penyelesaian Teka Teki Silang dengan CSP (Constraint Satisfaction Problem) menggunakan Algoritma Backtracking

          Pada kali ini kita akan mencoba menyelesaikan Teka Teki Silang dengan menggunakan Algoritma Backtracking. Algoritma Backtracking adalah algoritma yang berbasis pada DFS (Depth First Search) untuk mencari solusi persoalan secara lebih efisien, merupakan perbaikan dari algoritma  brute-force, secara sistematis mencari solusi persoalan diantara semua kemungkinan solusi yang ada. Dengan Algoritma Backtracking kita tidak perlu memeriksa semua kemingkinan solusi yang ada. Hanya pencarian yang mengarah ke solusi saja yang perlu dipertimbangkan. Akibatnya, waktu pencarian dapat dihemat.

Untuk menyelesaika masalah teka teki silang yaitu dengan cara di kaitkan dari kalimat pada teka-teki silang dengan jawaban yang cocok. Pada teka-teki silang telah di sediakan pilihan kata jawabanya.


Mendatar                                        Menurun
1. Cukai                                                               1. Alat Transportasi Umum
3. Tidak Benar                                                     2. Memperbolehkan (B.Ing)
5. Pramuria                                                          3. Jenis Kertas


Pilihan kata : BEA, WTS, ALLOW, SALAH, HVS, BUS

Lakukan pengelompokan pilihan kata berdasarkan isi kotak (domain). Sel merupakan bayaknya node/kotak yang akan di isi.


Pada Kotak TTS diketahui bahwa Syarat :
Huruf ke-1 kotak 1 mendatar= huruf ke-1 kotak 1 Menurun
Huruf ke-3 kotak 1 mendatar= huruf ke-1 kotak 2 Menurun
Huruf ke-3 kotak 1 menurun = huruf ke-1 kotak 3 Mendatar
Huruf ke-3 kotak 1 mendatar= huruf ke-1 kotak 2 Menurun
Huruf ke-5 kotak 2 mendatar= huruf ke-1 kotak 5 Medatar
Huruf ke-5 kotak 3 mendatar= huruf ke-1 kotak 4 Menurun
Huruf ke-3 kotak 5 mendatar= huruf ke-3 kotak 4 Menurun
TTS akan Diselesaikan dengan Backtracking. Urutan pada memasukan kata adalah : 
1 Datar, 1 Turun, 3 Datar, 2 Turun, 4 Turun, 5 Datar



Constraint Satisfaction Problem terdiri dari 3 komponen:
  • Set Variabel = Kotak kosong
  • Set Domain = Pertanyaan dan kata-kata yang disediakan
  • Set Constraint/Batasan = Salah satu huruf pada kata-kata menurun/mendatar harus sesuai dengan salah satu huruf pada kata-kata menurun/mendatar lainnya

Definisi Problem 4 Items :
  1. Initial State : 
  2. Successor Fungtion : Kata-kata yang diisi dari mulai nomor 1 mendatar/menurun, nomor 2, nomor 3 dan seterusnya hingga semua kotak terisi penuh dengan huruf yang menjadi sebuah kata.
  3. Path Cost : Menurut berapa banyak kotak yang tersedia pada Teka Teki Silang tersebut.
  4. Goal State : 

Sumber Referensi :
https://www.academia.edu/19767265/Penggunaan_Algoritma_Backtracking_pada_Penyelesaian_Teka-Teki_Silang

Kamis, 06 Oktober 2016

Penyelesaian Masalah 8-Puzzle Dengan Menggunakan Metode Greedy

Pada kali ini saya akan mencoba membahas penyelesaian pada permainan 8-Puzzle dengan menggunakan Metode/Algoritma Greedy. Sebelum membahas penyelesaiannya, saya akan sedikit membahas tentang Metode/Algoritma Greedy.

Metode/Algoritma Greedy merupakan jenis algoritma yang digunakan untuk memecahkan persoalan/masalah dengan mencari nilai maksimum ataupun minimum pada setiap langkahnya. Dengan metode Greedy kita bermaksud untuk mencari solusi terbaik dari persoalan/permasalahan tersebut. Pada setiap langkah untuk memecahkan persoalan/permasalahan tersebut akan dipilih keputusan yang paling optimal. Biasanya Algoritma Greedey memberikan solusi yang mendekati nilai optimum dalam waktu yang cukup cepat.

Dalam pembahasan kali ini saya akan mencoba menggunakan dua fungsi heuristik dalam Greedy, yaitu :

  • h1(n) : beberapa kotak puzzle yang salah tempat

  • h2(n) : jumlah keseluruhan jarak kotak puzzle yang salah menuju ke kotak yang benar atau yang biasa disebut dengan manhattan distance.



  • Mengatasi permasalahan 8-Puzzle dengan menggunakan heuristik pertama :
 


Goal Test :
Initial State > Right > Down > Right > Down (Goal State)



  • Mengatasi permasalahan 8-Puzzle dengan menggunakan heuristik kedua :



Goal Test :
Initial State > Right > Down > Right > Down (Goal State)


Kesimpulan :
Dari percobaan diatas dengan menggunakan heuristik pertama maupun kedua, keduanya sama saja memiliki goal state yang tepat. Tetapi jika dibandingkan antara heuristik pertama dengan heuristik yang kedua, mungkin dengan menggunakan heuristik yang kedua bisa lebih efisien dikarenakan telah mengetahui seberapa banyak kesalahan yang dimiliki oleh kotak-kotak dari 8-Puzzle tersebut, dengan mengetahui kesalahan tersebut kita dapat meminimalisir kesalahannya agar dapat menyelesaikan masalah tersebut dengan lebih cepat.



Referensi :
  • http://bloglogika.blogspot.co.id/2010/12/metode-greedy.html
  • https://bertzzie.com/knowledge/analisis-algoritma/Greedy.html
  • http://stephanusar.blogspot.co.id/2012/11/pengertian-metode-greedy-dan-algoritma.html

Post ini merupakan tugas-3 yang dibuat untuk memenuhi tugas mata kuliah Pengantar Kecerdasan Tiruan (AI) yang diampu oleh Mia Kamayani ST,MT





Jumat, 30 September 2016

Penyelesaian 8-Puzzle Yang Berkaitan Dengan Artificial Intelliegence

8-Puzzle adalah sebuah permainan sliding puzzle ciptaan Sam Loyd yang terdiri dari sebuah bingkai yang berisi kotak kotak angka dalam keadaan beracak dimana ada sebuah kotak yang hilang. Tujuan dari game ini adalah dengan memakai gerakan geser yang menggunakan ubi kosong untuk mencapai goal state. 8 Puzzle merupakan salah satu implementasi dari Artifical Intelegence. Didalam penyelesaiannya terdapat banyak algoritma pencarian yang dapat diterapkan

Penyelesaiyan masalah dalam kontek AI di jabarkan dalam 4 item :
I.        Initial state, yaitu mencari penyelesian dari awal suatu permasalahan
II.      Successor Function, yaitu langkah-langkah yang digunakan untuk mencari penyelesaian suatu permasalahan
III.    Goal test, yaitu sebuah hasil akhir atau akhir tujuan yang harus dicapai
IV.     Path cost, yaitu banyaknya langkah-langkah, biaya, waktu, yang digunakan untuk menyelesaikan sebuah masalah

1.     Initial state pada game ini adalah mengurutkan sebuah puzzle berisi angka, yang awal nya memiliki angka yang tidak berurutan menjadi berurutan dengan cara memindahkan angka-angka ke kotak yang kosong
   >                                          











2.       Successor Function, Untuk mempermudah mengambil keputusan kita menggunakan Decision tree (pohon keputusan) dalam Decision tree terdapat 2 tipe pencarian yaitu {DFS dan BFS} dan disini saya akan menggunakan metode pohon pencarian DFS.



Cara mendapatkan goal :

1)      Pindahkan angka 2 ke kanan
2)      Pindahkan angka 1 ke atas
3)      Pindahkan angka 4 ke kanan
4)      Pindahkan angka 3 ke bawah

3.      Goal test dimana angka-angka yang tadi nya tidak berurutan, menjadi berurutan hanya dengan menggeserkan angka-angka kearah kanan, kiri, atas, atau bawah ke kotak yang kosong

4.       Path cost langkah yang diperlukan dalam menyelesaikan game 8-Puzzle diatas yaitu 4 langkah 

Kamis, 22 September 2016

Pengertian PEAS dan Cara Kerja Agent dalam konteks Intelligent Agent



Agen dan Lingkungan (Environments)
Agent adalah segala sesuatu yang dapat melihat/ mengartikan/ mengetahui (perceiving) lingkungan (environment) nya melalui sensor (sensors) dan bertindak (acting) terhadap lingkungan tersebut melalui aktuaktor (actuators)
Agen manusia :
.         Sensor    : mata, telinga, dan organ tubuh lain;
.         Actuator : tangan, kaki, mulut, dan bagian tubuh lain.
Agen robotic :
·         Sensor    : kamera dan infrared range finders;
·         Actuator : berbagai macam motor
Fungsi agen memetakan dari sejarah persepsi ke dalam tindakan (actions):
Program agen berjalan pada arsitektur fisik untuk menghasilkan f
Agen = Arsitektur + Program


Sebuah agen haruslah mengarah kepada “Lakukan hal yang benar", berdasarkan kepada apa yang dapat dipahaminya dan tindakan yang dapat dilakukannya. Tindakan yang benar adalah tindakan yang akan menyebabkan agen tersebut paling berhasil.
Pengukuran Performance : Sebuah kriteria objektif untuk keberhasilan sebuah perilaku agen.
Agen rasional : Untuk setiap deretan persepsi yang mungkin, sebuah agen rasional hendaklah memilih satu tindakan yang diharapkan memaksimalkan ukuran performance-nya, dengan adanya bukti yang diberikan oleh deretan presepsi dan apapun pengetahuan terpasang yang dimiliki agen itu.
Agen dapat melakukan tindakan untuk memodifikasi persepsi masa depan sedemikian hingga dapat memperoleh informasi yang berguna (pengumpulan informasi, eksplorasi).
Sebuah agen adalah otonom (autonomous) apabila perilakunya ditentukan oleh pengalamannya sendiri (dengan kemampuan belajar dan beradaptasi).


PEAS (Performance measure, Environment, Actuators, Sensors)
P (Performance measure) : Komponen keberhasilan/ tujuan/ target agent
E (Environment) : Kondisi sekitar lingkungan agent
A (Actuators) : Segala sesuatu yang dilakukan agent
S (Sensors) : Segala sesuatu yang menjadi input agent

  1. Simple Reflex Agents
Struktur yang paling sederhana dalam bentuk skema, menunjukkan bagaimana aturan condition action memungkinkan agen untuk membuat sambungan dari persepsi untuk bertindak. Persegi panjang untuk menunjukkan keadaan internal saat proses keputusan agen, dan oval untuk mewakili latar belakang informasi yang digunakan dalam proses. Secara ringkat dapat disampaikan sebagai berikut  :
  • Memiliki rule base dalam bentuk "aksi-kondisi"
  • Memiliki komponen untuk mengekstrak Fitur
  • Tidak ada akses untuk menyelesaikan keadaan dunia
  • Pekerjaan hanya jika keputusan yang tepat dapat dilakukan atas dasar persepsi saat ini.

  1. Model Based Reflex Agent
Pengetahuan tentang "bagaimana dunia bekerja" disebut model dari dunia, maka bentuk ini dinamakan "model based reflex agent". Sebuah model based reflex agent harus menjaga semacam internal model yang tergantung pada sejarah persepsi dan dengan demikian mencerminkan setidaknya beberapa aspek yang tidak teramati negara saat ini. Kemudian memilih tindakan dengan cara yang sama sebagai agen refleks. Model ini lebih kuat daripada simple reflex agent.

  1. Model Based Goal-Based Agents
Goal-based agents memperluas pada kemampuan model-based agents, dengan menggunakan "goal" informasi. Tujuan informasi menggambarkan kondisi yang diinginkan. Hal ini memungkinkan agen cara untuk memilih di antara beberapa kemungkinan, memilih satu yang mencapai negara tujuan. Search dan planing adalah sub bidang kecerdasan buatan yang ditujukan untuk urutan tindakan menemukan bahwa mencapai tujuan agen. Dalam beberapa kasus goal-based agent tampaknya kurang efisien; itu lebih fleksibel karena pengetahuan yang mendukung keputusan diwakili secara eksplisit dan dapat dimodifikasi.

  1. Model Based Utility-Based Agents
“Goal” tidak cukup untuk menghasilkan perilaku berkualitas tinggi. Ada banyak urutan tindakan  untuk mencapai tujuan, tetapi beberapa yang lebih cepat, lebih aman, lebih dapat diandalkan, atau lebih murah daripada yang lain. Tujuan hanya memberikan perbedaan antara kondisi "bahagia" dan "tidak bahagia", sedangkan ukuran kinerja yang lebih umum harus memungkinkan perbandingan beberapa urutan kondisi yang berbeda jika agen ingin mencapai tujuan. Terminologi yang dipergunakan untuk mengatakan bahwa jika satu kondisi lebih disukai daripada kondisi yang lain, itu mempunyai utilitas yang lebih tinggi untuk agent.

  1. Learning Agents
                Learning agents belajar dari pengalaman, meningkatkan kinerja dengan cara mengirimkan percept ke bagian critic untuk dibandingkan dengan performance standard. Setelah mendapat feedback dari critic, lalu diteruskan ke learning element dan melihat learning goals untuk mendapatkan problem generator. Selain itu, sensor  juga meneruskan percept ke performa element dimana pada performance element dapat memberikan pengetahuan baru ke learning element.
                
               

Referensi :

Artikel ini merupakan salah satu tugas nomor 2 Mata Kuliah Artifcial Intelligence Prodi Teknik Informatika FT UHAMKA yang diampu oleh dosen ibu Mia Kamayani

Resume Skripsi berkaitan dengan Artifical Intelligence

SISTEM PAKAR UNTUK MENENTUKAN PENYAKIT KEKURANGAN GIZI PADA BALITA BERBASIS WEB

Disusun Oleh : 
Ady Setia Irawan

PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH PROF. DR. HAMKA
JAKARTA


Latar Belakang Masalah
            Keterbatasan seorang pakar untuk menangani suatu bidang keahlian tertentu dapat menghambat kelancaran penyelesaian perkerjaan pada bidang tersebut. Bidang yang dimaksud sangat luas, dapat mencakup semua segi kehidupan. Sebagai contoh bidang kesehatan, bidang gizi, bidang teknologi dan lain sebagainya.
            Menentukan kadar gizi pada balita dapat dijadikan sebagai suatu bahan untuk dianalisa dan dibuat sistem komputerisasinya. Dalam hal ini yang diperlukan dan yang dapat diambil sebagai bahan penelitian adalah jenis-jenis kadar gizi makanan dan penyakit yang disebabkan kekurangan kadar gizi. Dimana sangat sedikit orang yang mahir dalam menganalisa dan menentukan kadar gizi makanan, oleh karena itu akan memakan waktu yang lama untuk menemukan kadar gizi makanan yang dikonsumsi oleh setiap orang.
            Melihat kondisi tersebut, maka diperlukan adanya sistem pakar (expert system) yang dapat membantu seorang pakar atau khususnya pasien (user) yang ingin mendapakan informasi dan berkonsultasi mengenai penyakit yang diderita oleh balitanya. Digunakannya sistem pakar berbasis web adalah untuk memudahkan user dalam mengetahui gambaran mengenai gejala-gejala penyakit yang sering terjadi pada balita.

Tujuan Penelitian
            Membuat sebuah sistem aplikasi yang dapat mempermudah user (dokter, orang tua, dan masyarakat) dalam menangani dan memecahkan masalah kekurangan kadar gizi pada balita. Dan tersaju juga cara pengobatannya yang secara lebih lanjut harus mendapatkan pengawasan langsung dari dokter atau orang tua

Metodologi Penelitian
1.    Kajian Masalah (Problem Assessment)
Mengkaji penyakit-penyakit yang disebabkan kekurangan gizi dan juga bagaimana cara para ahli melihat dan menentukan penyakit kekurangan gizi pada balita.

2.    Akuisisi Pengetahuan (Knowledge Acquisition)
Melakukan pengumpulan data, fakta dan mekanisme bagaimana seorang pakar menentukan gejala penyakit yang disebabkan kekurangan gizi pada balita. Data dan fakta tersebut akan digunakan untuk menentukan metode penalaran dan penelusuran dalam bentuk kaidah produksi dan rule.

3.    Desain Sistem (System Design)
Merancang sistem berdasarkan pada identifikasi data, fakta dan mekanisme penentuan gejala penyakit yang disebabkan kekurangan gizi pada balita, melalui proses menterjemahkan syarat atau kebutuhan data sesuai denan kaidah produksi dan rule.

4.    Kode
Menterjemahkan desain dengan menggunakan Bahasa pemrograman Active Server Pages (ASP).

5.    Pengujian (Testing)
Pengujian sistem disesuaikan dengan kriteria yang telah ditetapkan pada tahap desain sistem.

Analisa Hasil
Berdasarkan hasil pengujian maka diperoleh beberapa hasil dari kegiatan tersebut, antara lain :
1.    Setiap menu dan sub menu yang telah dilakukan pengujian kebenaran logika, telah sesuai dengan tujuan yaitu menghasilkan output yang dibutuhkan, dimana tidak ada kesalahan ketika program dijalankan.

2.    Koneksi program dengan basis data telah terpenuhi, dimana jika program sistem pakar menentukan penyakit kekurangan gizi pada balita dijalankan maka program akan terkoneksi langsung dengan basis data.

3.    Keterkaitan antara satu form yang satu dengan yang lainnya telah terpenuhi. Jika user mengklik menu diagnosa yang terdapat pada program sistem pakar menentukan penyakit kekurangan gizi pada balita, maka program akan menampilkan pertanyaan yang berupa teks dan jawaban yang sesuai dengan menu user yang dipilih.

4.    Dalam pengujian menu update pertanyaan yaitu input pertanyaan, edit pertanyaan dan hapus pertanyaan telah sesuai dengan tujuan program begitu juga dengan update pertanyaan, update penyakit, update istilah, dan update admin telah sesuai dengan tujuan program.

5.    Dalam pengujian menu  login telah sesuai dengan tujuan program. Jika memasukkan user name “Ady” dan password “*****” maka user dapat melihat tampilan menu update data. Sehingga telah sesuai dengan tujuan program.

Kesimpulan
Dengan adanya sistem pakar pemecahan masalah gizi pada balita ini kiranya dapat membantu orang tua dalam segi materi maupun spiritual dan meringankan tugas dokter dalam menangani masalah secara lebih mudah dan cepat, memperbaiki pola makan yang keliru dan tidak menganggap remeh penyakit yang terjadi pada balita.

Artikel ini merupakan salah satu tugas Matakuliah Artifcial Intelligence Prodi Teknik Informatika FT UHAMKA yang diampu oleh dosen ibu Mia Kamayani