AI - PARTIAL ORDER PLANNING (POP) & GRAPH PLAN

PARTIAL ORDER PLANNING (POP)

Partial Order Planning (POP) adalah sebuah pendekatan untuk perencanaan otomatis yang meninggalkan keputusan tentang pemesanan tindakan seterbuka mungkin.Ini kontras dengan perencanaan keseluruhan-order , yang menghasilkan urutan yang tepat dari tindakan.



  


  Step 1
 
Step 2 
Step 3


Step 4
Step 5
Step 6 
Step 7
Step 8





GRAPH PLAN

            Graph Plan adalah adalah algoritma untuk perencanaan otomatis yang dikembangkan oleh Avrim Blum dan Merrick Furst pada tahun 1995. Graphplan mengambil sebagai masukan masalah perencanaan dinyatakan dalam strip dan menghasilkan, jika salah satu kemungkinan, urutan operasi untuk mencapai keadaan tujuan.
 














 
 
 
 
 
Referensi : 
 
 
 
 
 

Cryptarithmetic dengan metode Runut Balik (BackTracking)

PENGERTIAN

 CSP merupakan teknik yang dapat digunakan untuk penyelesaian persoalan dalam dunia nyata, yang terkadang memberikan batasan tertentu yang tidak boleh dilanggar pada saat mencari solusinya. Pada saat melakukan pencarian solusi atau pemilihan urutan aksi, teknik penyelesaian ini akan selalu menyesuaikan dengan constraint-constraint yang sudah ditentukan sebelumnya, sedemikian sehingga semua constraint akan terpenuhi.
       
CSP dapat direpresentasikan  sebagai berikut :
 1. Kumpulan  variabel.
X --> kumpulan dari n variabel X1,X2,X3,…..,Xn, 
Variabel adalah elemen atau entity yang ingin dicari nilainya sehingga pemberian nilai pada  variabel dapat menjadi solusi dari CSP.
 
2. Domain D --> Masing-masing variabel didefinisikan oleh suatu domain yang finite D1,D2,………,Dn, yang berisi kumpulan nilainilai yang mungkin untuk variabel tertentu yang bertujuan untuk menyelesaikan persoalan.

3. Constraint C --> kumpulan dari constraintconstraint C1,C2,……,Cm. Ci merupakan constraint-constraint yang berisi batasan nilai untuk setiap variabel dan tidak boleh dilanggar. Constraint-constraint ini akan membatasi domain dari suatu variabel sehingga menjadi lebih sempit

4. Assignment --> pemberian nilai pada suatu variabel.

5. Solusi --> pemberian nilai-nilai pada setiap variabel yang memenuhi semua constraint yang telah ditetapkan untuk persoalan, sehingga nilainilai variabel tersebut merupakan solusi untuk persoalan.

Cryptarithmetic merupakan  pengetahuan dan seni untuk menciptakan dan menyelesaikan mathematic puzzle, dimana digit-digit ditukar dengan hurufhuruf alfabet atau symbol lain.

Cryptarithmetic merupakan salah satu contoh persoalan yang dapat diselesaikan dengan  CSP, dengan constraint yang melibatkan 3 atau lebih variabel. Cryptarithmetic merupakan contoh yang sangat cocok untuk CSP, karena selain menyediakan deskripsi, masalah cryptarithmetic dapat dijelaskan lebih baik dengan constraint-constraint.

Constraint-constraint yang mendefinisikan sebuah cryptarithmetic problem antara lain :
1. Masing-masing huruf atau symbol  merepresentasikan digit yang hanya satu dan unik dalam persoalan tersebut.
2. Ketika digit-digit menggantikan huruf atau simbol, maka hasil dari operasi aritmatika harus benar

Batasan-batasan di atas memunculkan beberapa batasan baru dalam persoalan, yaitu apabila basis dari angka adalah 10, maka pasti akan ada paling banyak 10 simbol atau huruf yang unik dalam persoalan. Jika tidak, maka tidak akan mungkin untuk memberikan digit yang unik ke setiap huruf atau simbol yang unik juga dalam persoalan. Dan supaya memiliki makna yang berarti secara semantik, angka tidak boleh dimulai dengan 0, jadi huruf-huruf yang muncul untuk setiap variabel  pertama sekali seharusnya tidak boleh mengandung  0.   

Spesifikasi persoalan cryptarithmetic (couple + couple = quartet) yaitu:
1. Pemberian digit atau nilai harus berbeda untuk setiap variabel {C, O, U, P, L, E, Q, A, R, T} yaitu digit {0,…..9} sehingga persamaan COUPLE + COUPLE = QUARTET terpenuhi.
2. Apabila masing-masing variabel sudah diberikan nilai, maka pemberian nilai harus memenuhi constraint yang ada, sehingga pada saat operasi aritmatika dilakukan untuk nilai setiap variabel, maka hasil dari operasi penjumlahan COUPLE + COUPLE = QUARTET harus sesuai.    
3. Variabel-variabel untuk persoalan cryptaritmetic ini ada 10 variabel, antara lain : C, O, U, P, L, E, Q, A, R, dan T.
4. Persoalan cryptaritmetic ini akan menggunakan bit carry, yaitu variabel X1, X2, X3, X4, dan X5.

Persoalan cryptarithmetic: Diberikan sebuah bentuk cryptarithmetic dengan n buah variabel dan disediakan m buah angka. Berikan angka yang sesuai untuk setiap variabel, dan hasil aritmatika setelah setiap variabel diberi angka, harus sama dengan bentuk awal dan tidak ada variabel yang diberi angka yang sama.

Untuk persoalan ini, karena jumlah variabel ada 10, maka pastilah kesepuluh angka harus dipakai. 
 Bit carry X1 = {0,1}, X2 = {0,1}, X3 = {0,1}, X4 = {0,1}, X5 = {0,1}.

Constraint-contraint yang ditentukan untuk persoalan cryptarithmetic yaitu:
• E + E = T + 10 * X1
• X1 + L + L = E + 10 * X2
• X2 + P + P = T + 10 * X3
• X3 + U + U = R + 10 * X4
• X4 + O + O = A + 10 * X5
• X5 + C + C = U + 10 * Q

Solusi dinyatakan sebagai vektor X dengan n-tuple:

X = (x1, x2, ……., xn), xi Є {0,1,2,…..,9}

Angka variabel ke-k, xk, ditentukan dengan algoritma berikut:
1. Bangkitkan angka i
2. Periksa pemberian angka berdasarkan constraint yang ada
3. Jika angka i yang dibangkitkan tidak melanggar constraint untuk variabel tersebut, maka variabel k diberi angka i, kalau tidak bangkitkan angka berikutnya, dan ulangi langkah 2 di atas.
4. Jika tidak ada lagi angka yang dapat dibangkitkan (angka habis), maka persoalan cryptarithmetic dengan n variabel dan m warna tidak dapat diselesaikan.

Referensi :
http://informatika.stei.itb.ac.id/~rinaldi.munir/Stmik/2005-2006/Makalah2006/MakalahStmik2006-47.pdf

Penyelesaian 8-Puzzle dengan Greedy

Penyelesaian 8-Puzzle dengan Greedy

 8-Puzzle adalah representasi permainan teka-teki yang dapat diselesaikan dengan mengurutkan atau menyusun komponen-komponen pembentuknya sesuai dengan kondisi yang diinginkan. Komponen pada 8-Puzzle adalah berupa kotak-kotak bernomor atau bergambar (sesuai kebutuhan) yang dapat diacak sedemikian hingga menjadi suatu pola random yang dapat dicari jalan penyelesaiannya. Sesuai namanya, 8-Puzzle terdiri atas 8 kotak dan 1 tempat kosong yang dapat digerakkan dengan aturan tertentu. Aturan pergerakannya hanya berupa empat (4) arah pergerakan, yaitu: atas, bawah, kanan, dan kiri. Serta terlimitasi oleh ukuran dimensi papan yang ditempatinya. Pada 8-Puzzle, batasannya adalah ukuran 3×3. Sehingga, 8 kotak yang dimiliki hanya dapat bergerak dalam lingkup ukuran tersebut.
 Pada pembahasan kali ini, saya ingin menyelesaikan puzzle ini dengan suatu algoritma, yaitu Algoritma Greedy, dengan menggunakan dua fungsi heuristik. Algoritma Greedy merupakan algoritma yang sederhana dan lempeng (straightforward). Secara harafiah greedy artinya rakus atau tamak.
Algoritma Greedy membentuk solusi langkah per langkah. Terdapat banyak pilihan yang perlu dieksplorasi pada setiap langkah solusi. Oleh karena itu, pada setiap langkah harus dibuat keputusan yang terbaik dalam menentukan pilihan.
Dalam bahasan ini, fungsi heuristik yang akan kita tampilkan yaitu adalah sebagai berikut.
1.    h1(n) = jumlah dari tile yang salah tempat
2.    h2(n) = total jarak Manhattan (jumlah tile dari lokasi yang seharusnya untuk setiap tile)

Solusi yang pertama saya menggunakan cara heurestik yang nomor 1 :


Priority queue :
1.    F(0)=4
2.    F(0)=4 F(1)=5 F(2)=3 F(3)=4
3.    F(2)=3 F(3)=4 F(1)=5
4.    F(2)=3 F(3)=4 F(1)=5 F(4)=4
5.    F(4)=4 F(3)=4 F(1)=5
6.    F(4)=4 F(3)=4 F(1)=5 F(5)=5 F(6)=4
7.    F(6)=4 F(3)=4 F(1)=5 F(5)=5
8.    F(6)=4 F(3)=4 F(1)=5 F(5)=5 F(7)=4 F(8)=5 F(9)=2
9.    F(9)=2 F(3)=4 F(1)=5 F(5)=5 F(7)=4 F(8)=5
10.  F(9)=2 F(3)=4 F(1)=5 F(5)=5 F(7)=4 F(8)=5 F(10)=3 F(11)=0
11.  F(11)=0 F(3)=4 F(1)=5 F(5)=5 F(7)=4 F(8)=5 F(10)=3
12.  F(11)=0 F(3)=4 F(1)=5 F(5)=5 F(7)=4 F(8)=5 F(10)=3
13.  F(0) --> F(2) --> F(4) --> F(6) --> F(11)


Solusi yang Kedua saya memakai heurestik yang nomor 2 :


  Priority queue :
1.       F(0)=5
2.       F(0)=5 F(1)=6 F(2)=6 F(3)=4
3.       F(2)=6 F(3)=4 F(1)=6
4.       F(2)=6 F(3)=4 F(1)=6 F(4)=3
5.       F(4)=3 F(3)=4 F(1)=6
6.       F(4)=3 F(3)=4 F(1)=6 F(5)=4 F(6)=2
7.       F(6)=2 F(3)=4 F(1)=6 F(5)=4
8.       F(6)=2 F(3)=4 F(1)=6 F(5)=4 F(7)=3 F(8)=3 F(9)=1
9.       F(9)=1 F(3)=4 F(1)=6 F(5)=4 F(7)=3 F(8)=3
10.   F(9)=2 F(3)=4 F(1)=6 F(5)=4 F(7)=3 F(8)=3 F(10)=2 F(11)=0
11.   F(11)=0 F(3)=4 F(1)=6 F(5)=4 F(7)=3 F(8)=3 F(10)=2
12.   F(11)=0 F(3)=4 F(1)=6 F(5)=4 F(7)=3 F(8)=3 F(10)=2
13.   F(0) --> F(2) --> F(4) --> F(6) --> F(11)

Kesimpulan :
Lebih baik menggunakan solusi yang kedua yaitu menggunakan total jarak manhattan karena lebih terlihat jalan keluar nya daripada menggunakan solusi yang pertama yang agak mudah sekali terjadi perulangan.


Referensi :
https://andiktaufiq.wordpress.com/2010/05/02/8-puzzle-problem-bagian-2/
http://informatika.stei.itb.ac.id/~rinaldi.munir/Stmik/2010-2011/Makalah2010/MakalahStima2010-011.pdf.
http://kuliahkusayang.blogspot.co.id/2010/04/8-puzzle-problem-ai.html

Missionaris And Cannibals Puzzle Problem Solving



Penjelasan Puzzle

Game “Missionaries and Cannibals” merupakan salah satu game bergenre puzzle yang terkenal di dunia. Game ini bercerita tentang tiga orang misionaris dan tiga kanibal yang ingin menyebarang sungai. Untuk menyebrangi sungai tersebut disediakan perahu yang dapat digunakan oleh kanibal maupun misionaris.

Pemain dikatakan berhasil memainkan permainan ini jika sampai akhir permainan jumlah misionaris dan kanibal masing masing tiga. Dan aturan pokok yang menjadi cirri dari permainan ini, yaitu jumlah kanibal tidak boleh lebih dari jumlah misionari di berbagai sisi. Jika jumlah kanibal lebih banyak dari misionari, maka kanibal akan memakan misionari dan permainan berakhir.

Constraint Puzzle

Game “Missionaries and Cannibals” terasa lebihsulit ketika diberikan aturan – aturan yang harusdipatuhi oleh pemain. Aturan – aturan tersebut antara lain:


• Ada tiga misionaris dan tiga kanibal yang harus menyebrang sungai.

• Hanya disediakan satu perahu.

• Perahu bisa berjalan jika ada minimal satu orang atau satu kanibal (satu

penumpang).

• Perahu maksimaum berisi dua (1 kanibal/1 misionaris /2 kanibal /2

misionaris)

• Jumlah kanibal tidak boleh lebih banyak dari jumlah misionaris di salah satu sisi

daratan.

• Jika jumlah kanibal lebih banyak dari jumlah misionaris pada suatu sisi daratan

maka kanibal akan memakan misionaris.

• Pemain berhasil menyelesaikan permainan jika semua misionaris dan

semua kanibal ada di sisi seberang yang menjadi tujuan.




Algoritma Breadth-First Search

Pengertian

Breadth First Search adalah algoritma pencarian solusi yang melakukan pencarian pada graf atau pohon berakar secara melebar dengan caramengunjungi simpul secara preorder yaitu mengunjungi suatu simpul kemudian mengunjungi semua simpul yang bertetangga dengan simpul tersebut terlebih dahulu. Simpul yang belum

dikunjungi dan bertetangga dengan simpul - simpulyang tadi dikunjungi , demikian seterusnya.Jika diilustrasikan dalam pohon berakar, makasemua simpul pada x dikunjungi lebih dahulu sebelum simpul-simpul pada x + 1. Algoritma ini memerlukan sebuah antrian (queue) Q untuk dapat menyimpan simpul yang telah dikunjungi. Setiap simpul yang telah dikunjungi

Prinsip Pencarian Solusi pada BFS

Secara umum, prinsip pencarian solusi dengan algoritma Breadth First Search (BFS) dimulai dengan simpul akar (simpul akar terlebih dahulu dimasukkan dalam antrian, lalu di pop()), lalu mengekspansi simpul-simpul anak dari dari simpul akar, dan memasukkan simpul anak dalam sebuah antrian. Antrian tadi digunakan untuk memberikantanda pada simpul – simpul tetangga yang nantinya akan dikunjungi berdasarkan urutan yang ada pada antrian. Penjabaran dari langkah – langkah pada prinsip pencarian solusi dengan algoritma BFS ini adalah sebagai berikut :

- Akar dimasukkan dalam antrian (Simpulpaling awal yang akan dikunjungi).

- Simpul yang ada pada awal antrian diambil dan dilakukan pengecekan untuk mengetahui status simpul tersebut sebagai solusi permasalahan atau tidak, dan mengekspansi anak-anaknya jika ada.

- Jika simpul yang sudah dicek tadi merupakan solusi permasalahan, pencarian selesai dan hasil dikembalikan.

- Jika simpul yang sudah dicek sebelumnya bukan merupakan solusi permasalahan,

semua simpul yang bertetanggan dengan simpul tadi (simpul anak) dimasukkan

kedalam antrian.

- Jika antrian ternyata telah kosong dan semua simpul sudah dicek maka status pencarian selesai dan berarti solusi tidak ditemukan.

- Hal ini dilakukan secara berulang (simpul berisi solusi ditemukan/sampai antrian

kosong)

PENERAPAN BFS PADA PUZZLE

Tiap-tiap state pada puzzle dijadikan sebuahsimpul pada pohon. Pada Missionaries and Cannibals, state awal adalah sisi daratan kiri masih kosong, dan sisi daratan kanan berisi 3 Misionaris dan 3 Kanibal. Agar mempermudah penggambaran, maka dibuat notasi untuk tiap-tiap simpul/state.Untuk state awal, notasinya adalah |`(0,0)|(3,3)K`|yang artinya, di sisi kiri ada 0 Misionaris 0 Kanibal,dan disisi kanan ada 3 Misionaris, 3 Kanibal dan perahu. State akhir notasinya adalah|`K(3,3)|(0,0)`|

. Jika perahu ada di sisi kanan, makayang dapat dipindahkan adalah Misionaris atau

Kanibal yang berada di sisi kanan, dan sebaliknya.Pada tahap pencarian, state awal dimasukkan kedalam antrian, dan dikunjungi paling awal (pertamadi-dequeue), dari state awal, diexpand anak-anak dari simpul state awal tersebut, dan masing-masing

anak dimasukkan ke dalam antrian (di-enqueue).Kunjungi simpul pada antrian paling awal(di-dequeue), dan periksa simpul tersebut. Apabila pada simpul yang dikunjungi memiliki lebih banyak kanibal daripada misionaris pada suatu sisi, maka

state pada simpul tersebut merupakan state salah,dan tidak usah di-expand. Simpul yang dikunjungi juga dimasukkan pada tabel boolean sebagai penanda bahwa simpul tersebut telah dikunjungi agar simpul tersebut tidak dikunjungi jika ditemukan kembali. Jika simpul yang dikunjungi

bukan state salah, dan bukan solusi, maka expand simpul tersebut dan masukkan anak-anak simpulter sebut dalam antrian. Lakukan kembali pengunjungan simpul dari antrian yang di-dequeue hingga ditemukan simpul solusi.Runtutan langkah-langkah dari state awal hingga solusi dapat diperolah dengan melakukan backtrack tiap parent dari simpul solusi ke simpul state awal. Berikut pohon state yang dibuat, dari simpul stateawal hingga simpul solusi:

  


Warna merah berarti state tersebut salah, merah + garis bawah berarti state tersebut telah dikunjungi.


ANALISIS

Penggunaan algoritma BFS pada pencarian solusi puzzle Missionaries and kannibals menghasilkan langkah-langkah menuju solusi yang optimal (terpendek), ini dikarenakan pencarian dilakukann secara melebar dari simpul akar hingga simpul akhir. Tidak seperti penggunaan algoritma DFS (Dept-First Search), yang lebih  mengutamakan kedalaman untuk mencapai ke simpul solusi. Kekurangan penggunaan BFS disini, langkah proses pencarian lebih banyak dibandingkan dengan DFS, penggunaan ruang (memori) juga lebih banyak,karena tiap simpul anak-anak hasil ekspansi suatu simpul dimasukkan ke dalam antrian.


KESIMPULAN

Algoritma Breadth-First Search (BFS) dapat diterapkan dalam berbagai macam masalah untuk melakukan pencarian solusi, salah satunya pada puzzle Missionaries and Cannibals. Algoritma BFS melakukan pencarian pada graf atau pohon dengan cara melebar, yang tentu memerlukan memori dan langkah pencarian yang lebih banyak dibandingkan dengan Depth-First Search.Keuntungan menggunakan BFS adalah langkah dari state awal ke state akhir optimal (terpendek).


REFERENSI

Knuth, Donald E. (1997), The Art Of Computer Programming Vol 1. 3rd ed.(http://www-cs-faculty.stanford.edu/~knuth/taocp.html)

http://games.tejasri.in/2010/08/missionaries-cannibals-problem.html

Munir, Rinaldi. 2009. Diktat Kuliah Strategi Algoritmik IF2251 Strategi Algoritmik. Departemen Teknik Informatika ITB


informatika.stei.itb.ac.id/~rinaldi.munir/Stmik/2007.../MakalahIF2251-2008-060.pdf

State of art Bertema AI

STATE OF ART

1. State of The Art Robot Kendaraan
 
Penelitian tentang robot mobil saat ini telah banyak dilakukan, terutama yang berkaitan dengan perancangan perangkat keras serta metode pergerakan pada robot mobil. Namun, dari penelitian tersebut belum ada yang melakukan penelitian mengenai pengembangan pengendalian pergerakan robot mobil yang secara mudah dapat dilakukan oleh setiap orang, karena sebagian besar robot mobil saat ini dikendalikan dengan menggunakan remote control atau kendali secara otomatis. Melalui penelitian mengenai prototype sistem kendali otomatis robot mobil untuk parkir pintar mengg.unakan komunikasi nirkabel, diharapkan mampu untuk mempermudah mengendalikan pergerakan dari robot mobil pada saat menelusuri ruangan. Berikut ini beberapa referensi yang dapat dijadikan acuan dalam menjelaskan mengenai penelitian tentang prototype sistem kendali otomatis robot mobil. 

A. Pada penelitian yang dilakukan oleh B.Ranga Raju yang di publish pada sebuah jurnal penelitian dari Sri Vasavi Engineering College, Tadepalligudem, India pada tahun 2014 yang berjudul “ARM7 Microcontroller based Robot controlled by an Android mobile utilizing Bluetooth”, diperoleh bahwa dalam penelitian ini penulis menggunakan remote control dari android yang berfungsi untuk kendali wireless pada mobile robot sehingga memungkinkan mobile robot mampu menerima perintah melalui android. (Raju, 2014).

B. Pada penelitian yang dilakukan oleh Ritika Pahuja yang di publish pada sebuah jurnal penelitian dari BRCM College of Engineering & Technology, Bahal, India pada tahun 2014 yang berjudul “Android Mobile Phone Controlled Bluetooth Robot Using 8051 Microcontroller”, diperoleh bahwa dalam penelitian ini penulis menggunakan bluetooth HC series sebagai receiver dan pada smartphone digunakan Software Bluetooth RC Control yang sudah dapat di download secara langsung di appstore yang berfungsi untuk kendali wireless mobil robot (Pahuja, 2014).  
Untuk dapat membuat sebuah robot mobil minimal diperlukan pengetahuan tentang mikrokontroler dan sensor-sensor elektronik. Dasar dari robot mobil dapat dengan mudah dibuat dengan menggunakan plywood/triplek, akrilik sampai menggunakan logam (aluminium). Robot mobil dapat dibuat sebagai pengikut garis (line follower) atau pengikut dinding (wall follower) ataupun pengikut cahaya (Syam, 2011).

2. State of Art Humanoid

A. Fight Crime , ialah robot Polisi membantu memerangi kejahatan tanpa risiko kehidupan polisi. Petugas penegak hukum menggunakan array robot berteknologi tinggi dan dikendalikan dengan remote control yang dilengkapi dengan kamera depan dan belakang, pencahayaan inframerah dan speaker untuk mencari penjahat dan menemukan lokasi mereka tanpa membahayakan seorang perwira polisi. State-of-the-art-alat seperti robot Robotex yang tahan air, dapat menaiki tangga dan sandal sendiri atas dan memiliki kamera 360 derajat untuk membantu menangkap penjahat. Peralatan lainnya, seperti Andros F6-A, digunakan oleh lembaga kepolisian selama situasi sandera. Robot heavy duty mampu menembak dari meriam air atau senjata dalam rangka untuk menahan seorang kriminal dan melindungi mereka yang berada dalam bahaya.

3. State of art Speech recoginition

Multimodal antarmuka manusia-robot adalah salahsatu yang dibangun oleh Interactive System Laboratories. yang memungkinkan penggunaan perintah suara untuk meminta robot untuk melakukan sesuatu, sementara perintah gerakan dapat digunakan untuk menunjuk ke benda-benda yang telah diperintahkan dengan perintah suara. 

4.State of art game playing

A. AlphaGo adalah program komputer yang dikembangkan oleh Google DeepMind di London untuk memainkan permainan papan Go. Pada Oktober 2015, AlphaGo menjadi program Go komputer pertama yang mengalahkan pemain manusia profesional tanpa handicap pada papan berukuran 19×19. Bulan Maret 2016, program ini mengalahkan Lee Sedol dalam tiga pertandingan pertama dari total lima pertandingan. Untuk pertama kalinya program Go komputer mengalahkan pemain profesional 9 dan tanpa handicap. Meski dikalahkan Lee Sedol di pertandingan keempat, Lee menyerah di pertandingan akhir sehingga AlphaGo mendapat perolehan skor 4. Algoritma AlphaGo mencampurkan teknik pembelajaran mesin dan pencarian pohon. Selain itu, AlphaGo juga menjalani latihan intensif lewat pertandingan melawan manusia dan komputer.

Refrensi :

wisuda.unud.ac.id/pdf/1204405012-3-BAB%20%20II%20Pande.pdf
http://archive.kaskus.co.id/thread/8904578/0/10-hal-yg-kita-tidak-dapat-lakukan-tanpa-robotpic
http://denius27.blogspot.co.id/2015/03/human-computer-interaction-overview-on.html
https://id.wikipedia.org/wiki/AlphaGo

Ringkasan Skripsi Bertema AI

STATE OF ART
Visualisasi Game First Person Shooter Bertema Science Fiction
Bahar Sobari
0603015019

Latar Belakang masalah
   
Video game adalah permainan elektrokink yang melibatkan interaksi antarmuka pengguna untuk menghasilkan interaksi visual pada perangkat video. Kata video dalam video game secara umum menunjuk ke perangkat layar visual. Namun , dengan pengguna istilah popular “video game”, sekarang berarti semua jenis perangkat layar sistem elektronik digunakan untuk bermain video game dikenal sebagai platform contohnya adalah computer pribadi dan konsol permainan video.
    First person shooter (FPS) merupakan salah satu genre dalam video game. Genre ini memiliki suatu ciri khusus yaitu view kamera yang berposisi dari sudut mata orang pertama, dimana seorang pemain benar-benar  seperti berhadapan dengan situasi yang ada dalam permainan dan bertatapan langsung dengan musuh yang ada.
    Dalam perkembangan video game banyak terhadap pembentukan suatu pola piker ataupun opini dari pemain karena mengandung suatu makna dari alur cerita yang diambil dari kehidupan nyata maupun fiksi.
    Game-game yang mengadaptasi imajinasi fiksi ilmiah dituangkan dalam video game tentunya akan menjadi suatu hal yang bernilai lebih. Dalam membuatnya tentunya ditemukan banyak masalah yang dihadapi yaitu dalam hal penyatuan elemen-elemen dalam pembuatan video game, misalnya sikronisasi antara jalan cerita dengan latar dan entitas-entitas lain yang ada dalam suatu system video game interaktif.
    Antusiasme masyarakat terhadap perkembangan video game local yang dirasa belum berkembang dan inilah yang menjadi suatu kesempatan yang baik untuk menciptakan suatu kesempatan yang baik untuk menciptakan suatu sumbangsih dalam perkembangan video game di Indonesia.

Tujuan
    Sesuai dengan permasalahan yang diuraikan diatas maka tujuan dari penulisan  adalah untuk membuat suatu program video game bergenre FPS (First Person Shooter). Tujuan yang ingin dicapai dalam penyesuaian skripsi ini adalah :
a.    Menganalisa semua kebutuhan dalam pembuatan video game bergenre FPS (first person shooter).
b.    Mengimplementasikan unsur-unsur multimedia dalam pembuatan video.
c.    Mengimpelentasikan storyboard dalam video game
d.    Mengimpelentasi kecerdasan buatan (artificial intelliegence) pada NPC

METODOLOGI
    3.1 Analisa
3.1.1 Identifikasi Masalah
    Adalah suatu satu cara memilah semua masalah-masalah yang terkait dengan penelitian yang akan dibuat. Pada penelitian ini masalah-masalah yang terkait dengan penelitian yang akan dibuat. Pada penelitian ini masalah yang terjadi yaitu bagaimana menerapkan AI untuk meningkatkan interaktifitas dalam video game.
    3.1.2 Analisa Masalah
    Setelah dirumuskan langkah selanjutnya adalah penulis menganalisa masalah yang terdapat  pada penelitian yang dilakukan. Ada tiga tahap dalam pengumpulan data dalam penelitian dan impelentasi tugas akhir ini yaitu :
    3.2.a Analisa Environment
    Studi environment adalah bagian yang tidak terpisahkan dalam pembuatan video game.
    3.2.b Analisa Eksisting
    Game-game yang mengadaptasi fiksi ilmiah khususnta pertempuran yang banyak dilakukan oleh pengembang video game.
    3.1.3 Analisa Kebutuhan
    Analisa kebutuhan sistem adalah mempersiapkan semua kebutuhan-kebutuhan yang diperlukan sistem untuk membuat aplikasi baik itu software maupun hardware.
    3.2 Perancangan game
    Setelah semua data dan kebutuhan sistem telah di analisa kegiatan selanjutnya adalah penulis merancang system dan mekanisme yang diperlukan untuk meningkatkan interaktifitas dalam video game.
    3.3 Desain
    Setelah melalui tahap perancangan maka selanjutnya memulai untuk desain video game dengan berbekal dari analisa dan perancangan yang dimiliki.

    3.4 Impelentasi
    Pada tahap ini dilakukan proses penerapan dari data yang didapat dalam penelitian  sehingga mendapatkan hasil akhir yang kemudia dievaluasi pada pengujian.
    3.5 Pengujian Aplikasi
    Setelah semua langkah-langkah penelitian di atas dilakukan terakhir adalah melakukan pengujian terhadap video game yang dibuat apakah sesuai dengan tujuan penelitian .
    BAB V HASIL DAN PEMBAHASAN
5.1 Storyboard
5.1.1 Plot
      Basis utama pertahanan pasukan robot memiliki beberapa generator utama yang digunakan untuk perang dan pengembangan senjata. Penghancuran sasaran utama yaitu  5 buah generator  harus segera di realisasikan . Pemain ditempatkan di tepi pantai untuk mencari jalan ke basis utama pasukan robot (NPC)  dan menemukan generator –generator tersebut untuk kemudian menghancurkan dan mencari kapal untuk kembali ke markas .
5.1.2 Setting Latar level
    Sebuah pulau tandus pada planet X dengan tanah yang terjal pada sore hari , generator terpisah di beberapa tempat. Titik respawn pemain berada pada awal permainan .
5.1.3 Karakter
5.1.3.1 Pemain
    Pemain memiliki dua buah senjata yaitu senapan serbu dan peluncur roket, pemain memiliki sudut pandang orang pertama (First Person) dengan sebuah crosshair  untuk membidik serta HUD (Head Up Display) yang menampilkan info jumlah peluru serta keadaan health.
5.1.3.2 Non Playables Character (NPC)
    Karakter musuh memiliki 2 jenis persenjataan yaitu peluncur roket dan senapan mesin,karakter musuh memiliki kecerdasan buatan.
5.2 Environment
    Environment adalah hasil dari studi environment untuk mendapatkan data dan metarial video game sesuai dengan tema yang diangkat
5.3 Character Modeling
    Mencakup  desain karakter musuh sesuai dengan tema dan dari studi environment. Karakter modeling memakai teknik gambar refrensi yang berasal dari sketsa 2D ataupun blueprint suatu objek yang kemudian diolah ke editor permodelan

3D
5.4 Character Animation
    Animasi karakter dalam games dibagi dalam 3 proses utama yaitu :
1.    Rigging yaitu proses pemberian tulang dan sendi pada model 3D bertujuan membuat kerangka
2.    Skinning yaitu proses penyatuan antara tulang dengan mesh pada model 3d agar dapat dianimasikan menurut strukturnya seperti
3.    Frame Animation yaitu penganimasian berdasarkan pergerakan suatu objek dengan definisi dalam frame-frame yang ditentukan.
Hasil yang dicapai pada proses skinning adalah mesh model 3D sudah dapat digerakan sesuai dengan struktur rangkanya .Untuk animasi npc terbagi atas 3 yang disesuaikan dengan kebutuhan behaviour AI yaitu :
1 . idle , yaitu karakter dalam keadaan tanpa gerakan
2. walk , yaitu berjalan   
3. run , yaitu berlari
4. Shoot , yaitu menembak
5.5 Level design
    Berawal dari sebuah sketsa kasar yang digambarkan dari storyboard
5.6 sound
    Menerapkan efek suara yang diperlukan dalam video game seperti efek suara untuk suara musuh , musik latar , efek suara dari ledakan , dan suara senapan
5.7 Lighting dan texturing
    Lighting dalam video game ini dengan menggunakan sumber cahaya dari satu titik tunggal yang mengarah ke terrain yang disebut dengan directional light.
5.8 Scripting
    Menerapkan pemograman dalam multimedia interaktif yang diaplikasikan dalam video game yang bertujuan mengatur suatu behaviour dari suatu game yang meliptu mekanisme , animasi, aid an user interface.
5.8.1 Artificial Intellegence
    Diterapkan pada karakter musuh guna memberikan  suatu behaviour pada interaktifitas permainan .
5.9 User Interface
    Interaktif dalam menu antar muka dalam permainan seperti menu untuk memulai permainan, keluar permainan dan lain sebagainya
5.10 Pengujian
    Metode yang dilakukan untuk menguji ini adalah metode black box , yaitu melakukan pengujian tanpa melihat source code program dan menjalankan untuk mengamati video game apakah telah menerima input , memproses dan menghasilkan output dan berjalan dengan benar.
5.10.1 Screenshot
    Berikut adalah hasil implementasi dari video game ini yang menggambarkan jalannya permainan dan interaksi antar entitas
6.1 Kesimpulan
    Setelah menganalisis permasalahan , merancang dan mengimeplentasikan metode mekanisme AI dan konsep multimedia interaktif , maka dapat disimpulkan sebagai berikut :
a.    Penerapan unsur multimedia dalam game telah dapat di impelementasikan dengan optimal
b.    NPC memberikan respon interkasi yang baik
c.    Aspek Visual yang baik sehingga memberikan kepuasan tersendiri
d.    Video game telah berjalan dengan baik sesuai dengan rancangan konsep multimedia interaktif