Monday, April 18, 2016

#PetGame Konsep AI

Pada kesempatan kali ini saya akan membahas mengenai konsep pada Artifficial Intelegence secara umum. Yuk mari kita ulas mengenai Artifficial Intelegence.

A. Deskripsi Umum AI




Artifficial Intelegence atau kecerdasan manusia merupakan suatu metode atau sistem pada suatu computer yang digunakan dalam mengambil suatu keputusan atau melakukan suatu tindakan layaknya cara berfikir seperti manusia. Artifficial Intelegence juga dapat diartikan suatu studi bagaimana membuat komputer dapat mengerjakan sesuatu yang pada saat ini, orang dapat mengerjakan lebih baik. Komputer pada saat ini tidak lagi hanya digunakan sebagai alat hitung, lebih dari itu komputer diharapkan untuk dapat diberdayakan untuk mengerjakan sesuatu yang bisa dikerjakan oleh manusia. Sebagai contoh adalah kemampuan untuk menjawab diagnosa dan pertanyaan pelanggan, perencanaan dan penjadwalan, pengendalian, serta pengenalan tulisan tangan, suara dan wajah. Hal-hal seperti itu telah menjadi disiplin ilmu tersendiri, yang memusatkan perhatian pada penyediaan solusi masalah di kehidupan yang nyata. 

Sebenarnya, manusia dapat menyelesaikan masalah yang ada dengan pengetahuan dan pengalaman yang cukup tapi tidak cukup baik dalam menggunakannya dan semakin banyak bekal pengetahuan yang dimiliki oleh seseorang tentu saja diharapkan akan lebih mampu dalam menyelesaikan permasalahan. Namun bekal pengetahuan saja tidak cukup, manusia juga diberi akal untuk melakukan penalaran, mengambil kesimpulan berdasarkan pengetahuan dan pengalaman yang mereka miliki. Demikian juga dengan kemampuan menalar yang sangat baik, namun tanpa dibekali pengetahuan dan pengalaman yang memadai, manusia juga tidak akan bisa menyelesaikan masalah dengan baik (Sri Kusumadewi, 2003).


Terdapat beberapa tujuan dari Artifficial Intelegence diantaranya adalah
  • Untuk mengembangkan metode dan sistem untuk menyelesaikan masalah, masalah yang biasa diselesaikan melalui aktifivitas intelektual manusia, misalnya pengolahan citra, perencanaan, peramalan dan lain-lain, meningkatkan kinerja sistem informasi yang berbasis komputer.
  • Untuk meningkatkan pengertian/pemahaman kita pada bagaimana otak manusia bekerja.
Kelebihan Artificial Intelligence:
  • Artificial Intelligence bersifat konsisten dan teliti
  • Artificial Intelligence lebih bersifat permanent.
  • Artificial Intelligence dapat lebih murah daripada kecerdasan alami.
  • Artificial Intelligence menawarkan kemudahan untuk digandakan atau disebarkan.
  • Artificial Intelligence dapat di dokumentasi.

Implementasi kecerdasan buatan dapat diterapkan pada bidang:

Visualisasi komputer
Contohnya mengenali sebuah pola pada suatu gambar.

Pengenalan Suara
Contohnya perintah komputer dengan menggunakan suara user.

Sistem Pakar
Contohnya program komputer yang dapat mendiagnosa penyakit dengan memasukan gejala-gejala yang dialami pasien.

Permainan
Contohnya permainan yang memiliki fasilitas orang melawan komputer. Komputer sudah di program sedemikian rupa agar memiliki cara bermain seperti seorang manusia bahkan bisa melebihi seorang manusia.

B. Decision Making
Making decision atau membuat keputusan adalah suatu proses memilih alternative atau cara tertentu dari beberapa alternative yang ada. Pengambilan keputusan merupakan fungsi utama dari seorang manajer dalam suatu organisasi atau perusahaan. Oleh karena itu, setiap proses membentuk kebijakan umum atau kebijakan organisasi adalah hasil dari suatu proses mengambil keputusan, yaitu memilih di antara beberapa alternative, yang akhirnya ditetapkan sebagai kebijaksanaan organisasi. Setiap informasi biasanya dihimpun dengan cara yang sudah ditentukan, sesuai dengan teknik-teknik pemecahan masalah. 

Terdapat beberapa faktor dalam mengambil sebuah keputusan yaitu
  • Faktor Orang
  • Faktor Psikologis
  • Faktor Fisik
  • Faktor Sasaran
  • Faktor waktu
  • Faktor Pelaksanaan

Decision Tree



Dalam dunia teknik informatika pohon keputusan adalah salah satu teknik data mining yang sering digunakan dalam pengambilan suatu keputusan dengan menggunakan cara graf yang mempunyai akar, batang dan daun. Bagian awal dari pohon keputusan ini adalah titik akar, sedangkan setiap cabang dari pohon keputusan merupakan pembagian berdasarkan hasil uji, dan titik akhir atau daun merupakan pembagian kelas yang dihasilkan. Dengan menggunakan graf itu juga kita akan menarik kesimpulan dari pohon keputusan tersebut. Pohon keputusan adalah salah satu metode klasifikasi yang paling popular karena mudah untuk diinterpretasi oleh manusia. Konsep dari pohon keputusan adalah mengubah data menjadi pohon keputusan dan aturan-aturan keputusan sedangkan metode pohon keputusan mengubah fakta yang sangat besar menjadi pohon keputusan yang merepresentasikan rule.

Konsep Pohon Keputusan


Kelebihan Decision Tree
  • Tidak memerlukan biaya yang mahal saat membangun algoritma
  • Mudah untuk diinterpetasikan
  • Mudah mengintegrasikan dengan sistem basis data
  • Memiliki nilai ketelitian yang lebih baik
  • Dapat menemukan hubungan tak terduga dan suatu data
  • Dapat menggunakan data pasti/mutlak atau data kontinu
  • Mengakomodasi data yang hilang
Kekurangan Decision Tree
  • Terjadi overlap terutama ketika kelas-kelas dan criteria yang digunakan jumlahnya sangat banyak. Hal tersebut juga dapat menyebabkan meningkatnya waktu pengambilan keputusan dan jumlah memori yang diperlukan.
  • Pengakumulasian jumlah error dari setiap tingkat dalam sebuah pohon keputusan yang besar.
  • Kesulitan dalam mendesain pohon keputusan yang optimal.

State Machine

Finite State Machine (FSM) adalah sebuah metodologi perancangan sistem kontrol yang menggambarkan tingkah laku atau prinsip kerja sistem dengan menggunakan tiga hal berikut: State (Keadaan), Event (kejadian) dan action (aksi). Pada satu saat dalam periode waktu yang cukup signifikan, sistem akan berada pada salah satu state yang aktif. Sistem dapat beralih atau bertransisi menuju state lain jika mendapatkan masukan atau event tertentu, baik yang berasal dari perangkat luar atau komponen dalam sistemnya itu sendiri. FSM juga dapat memproses input dan menghasilkan transisi dari state satu ke state lain atau menghasilkan output berupa aksi. Berdasarkan sifatnya, metode FSM ini sangat cocok digunakan sebagai basis perancangan perangkat lunak pengendalian yang bersifat reaktif dan real time.

Contoh Diagram Finite State Machine

Diagram tersebut memperlihatkan FSM dengan dua buah state dan dua buah input serta empat buah aksi output yang berbeda : seperti terlihat pada gambar, ketika sistem mulai dihidupkan, sistem akan bertransisi menuju state0, pada keadaan ini sistem akan menghasilkan Action1 jika terjadi masukan Event0, sedangkan jika terjadi Event1 maka Action2 akan dieksekusi kemudian sistem selanjutnya bertransisi ke keadaan State1 dan seterusnya.

FSM terdiri dari dua jenis, yaitu FSM ber-output dan FSM tidak ber-output. FSM tidak ber-output digunakan untuk pengenalan bahasa dalam komputer, dengan input yang dimasukkan akan diperoleh apakah input tersebut dikenal oleh bahasa komputer atau tidak. Salah satu penggunaan FSM tidak ber-output adalah program compiler, yaitu program untuk memeriksa apakah perintah yang digunakan pengguna benar atau salah. Sementara untuk FSM ber-output digunakan untuk merancang mesin atau system.

Ada dua metode utama untuk memperlakukan FSM untuk menghasilkan output yaitu,
  • Moore Machine
  • Mearly Machine
Salah satu keuntungan nyata penggunaan FSM adalah kemampuannya dalam mendekomposisi aplikasi yang relative besar dengan hanya menggunakan sejumlah kecil item state. Selain untuk bidang kontrol, Penggunaan metode ini pada kenyataannya juga umum digunakan sebagai basis untuk perancangan protokol-protokol komunikasi, perancangan perangkat lunak game, aplikasi WEB dan sebagainya.

Rule-Based System

Rule based System adalah jalan untuk menyimpan atau mengubah pengetahuan untuk memberikan informasi yang berguna. Rule based System juga merupakan model yang relatif sederhana yang dapat disesuaikan dengan sejumlah masalah. Biasanya sistem ini diimplementasikan dengan aplikasi Artificial Intelligence. Rule based mengandung aturan If-Then dalam pengimplementasinya. sistem berbasis aturan ini mempunyai keunggulan dan keterbatasan yang perlu dipertimbangkan sebelum memutuskan apakah itu merupakan teknik yang tepat digunakan dalam pemecahan masalah yang ada. Sehingga, rule based system dibentuk untuk system pakar.

Terdapat beberapa aturan dalam membuat Rule-Base System diantaranya adalah
  • Sekumpulan fakta yang mewakili working memory. 
  • Sekumpulan aturan.
  • Kondisi yang menentukan bahwa solusi telah ditemukan atau belum ditemukan.
Dalam pengerjaannya sistem berbasis aturan menggunakan teknik yang sederhana, dimulai dengan aturan yang berisi mengenai semua pengetahuan dari masalahan yang ada kemudian akan diubah kedalam aturan IF-THEN dan sebuah tempat penyimpanan yang mengandung data, pernyataan dan informasi awal. Sistem akan memeriksa semua aturan kondisi IF yang menentukan subset, set konflik yang ada. Jika ditemukan, maka sistem akan melakukan kondisi THEN. Perulangan atau looping ini akan terus berlanjut hingga salah satu atau dua kondisi bertemu, jika aturan tidak ditemukan maka sistem tersebut harus keluar dari perulangan atau akan terminate.

C. Pathfinding


Pathfinding merupakan suatu Algoritma yang digunakan untuk pencarian jalur, misal kita akan mencari jalur awal ke jalur tujuan maka algoritma yang kita gunakan adalah algoritma pathfinding. Algoritma ini juga biasanya digunakan dalam game AI seperti game mario bros atau pacman yang dalam memainkannya mencari atau menemukan jalur yang tepat dan cepat tetapi tidak akan ditemukan oleh musuh.

Salah satu algoritma pada pathfinding yang digunakan adalah algoritma A* yaitu algoritma pencarian graf/pohon yang mencari jalur dari satu titik awal ke sebuah titik akhir yang telah ditentukan, algoritma ini merupakan salah satu contoh Best First Seacrh. Algoritma A* ini menggunakan pendekatan heuristik h(x)  yang memberikan peringkat ke tiap-tiap titik x dengan  cara memperkirakan rute terbaik yang dapat dilalui dari titik tersebut. Selain itu pendekatan algoritma A* ini juga menggunakan 3 macam fungsi heuristik yaitu Manhattan Distance, Straight Line Distance dan Diagonal Distance. Beberapa terminologi dasar yang terdapat pada algoritma ini adalah starting point, simpul (nodes), A, open list, closed list, harga (cost), halangan (unwalkable).

Waypoint

Pengertian dari waypoint adalah koordinat yang berhubungan dengan tempat menarik dan dapat dijadikan tempat kepentingan umum atau lokasi yang berhubungan dengan sesuatu yang sedang kita cari. Koordinat Waypoint diformat dengan cara yang berarti sesuatu untuk anda perangkat navigasi GPS (Global Positioning System). Namun, waypoint tidak hanya digunakan untuk pemetaan saja, waypoint juga digunakan pada game yang berguna untuk pergerakan dalam map salah satu contohnya adalah pada game Counter Strike dimana pergerakan bot diatur secara manual, dengan menggunakan titik yang digunakan sebagai status pergerakan bot didalam map game. Sehingga bot pun tidak begitu beradaptasi dengan lingkungan sekitarnya.

Waypoint pada Game Counter Strike

Waypoint dibagi menjadi dua jenis, yaitu waypoint fly by dan waypoint fly over. Waypoint fly by tidak melewati lokasi di atas way point namun tetap menuju ke arah tujuan, sedangkan waypoint fly over melewati lokasi di atas way point. Setelah satu waypoint terlewati, maka pilot harus menetapkan waypoint berikutnya yang disebut dengan waypoint aktif.

D. Tactile & Strategic AI

Dalam pembahasan terakhir ini adalah mengenai Tactile dan Strategi yang biasa digunakan pada AI. 

Strategic Deciders adalah komponen yang secara konsep di tingkat tertinggi dalam abstraksi. Komponen ini harus memutuskan strategi untuk karakter yang didasarkan pada kondisi saat ini dan memori. Pada tingkat berikutnya, Tactic Deciders merencanakan bagaimana membuat strategi yang dipakai sekarang dapat berjalan dengan baik. Executors atau pelaksana kemudian menerjemahkan keputusan dari tactical deciders untuk perintah tingkat  rendah sesuai dengan batasan yang digunakan oleh permainan atau simulasi. Komponen coordinators memahami hubungan antar aktuator dan mungkin kembali memberikan perintah tingkat rendah lebih lanjut. Akhirnya, aktuator melakukan tindakan yang diinginkan. 


Sumber:
http://informatika.web.id/category/kecerdasan-buatan/
http://www.temukanpengertian.com/2013/08/pengertian-artificial-intelligence.html
http://elektronika-dasar.web.id/kecerdasan-buatan-artificial-intelegence-ai/
http://www.temukanpengertian.com/2013/09/pengertian-membuat-keputusan.html
http://www.lepank.com/2012/07/pengertian-keputusan-decision.html
http://demo.pohonkeputusan.com/tugas-akhir/admin/media.php?module=lain-lain&act=tentang_pohon_keputusan&ckattempt=1
http://repository.usu.ac.id/bitstream/123456789/24728/3/Chapter%20II.pdf
http://ilmukomputer.org/2007/03/27/algoritma-backward-chaining-pada-rule-based-expert-system/
http://ai-depot.com/Tutorial/RuleBased.html
http://eprints.binus.ac.id/7978/1/LBM04-120-abstrak.pdf
http://informatika.stei.itb.ac.id/~rinaldi.munir/TeoriKomputasi/2015-2016/Makalah2015/Makalah-IF5110-2015-005.pdf

No comments:

Post a Comment