Senin, 03 Desember 2018

Pertemuan Ke - 13 : Genre Game berbasis AI


Nama : Rezky Audiansyah Putra

Kelas : 3KA12

NPM  : 18116161


Hasil PPT :  https://drive.google.com/open?id=1ZHBk3RnN4M0M3jL78L7BSMX0bvFeE7jj
---------------------------------------------------------------------------------------------------------------------------
  
1. ACTION & ACTION ADVENTURE 

Genre game ini sangat menarik dan disukai oleh semua kalangan Gamers, system permainan gampang dan mudah dikuasai di segala usia walau begitu kadangkala ada game genre ini yang memakai tingkat kekerasan sangat tinggi hingga harus dilihat batasan usia nya.

Untuk action dan action adventure gameplaynya sebenarnya sama, bahkan system permainannya berbeda-beda setiap gamenya untuk menghilangkan gaya bermain yang itu-itu saja, namun secara garis besar perbedaannya adalah :

Action

Untuk action biasanya gerakan objek/karakternya monoton, mamakai system level yang harus diselesaikan untuk maju ke level berikutnya. kebanyakan tanpa tingkat kesulitan yang tinggi.

Action Adventure

Untuk action adventure atau yang biasa kita sebut game pertualangan biasanya menuntut Gamers untuk sedikit bersabar dan berkerja keras. Game ini biasanya tanpa system level tapi memakai system save ditengah permainan atau checkpoint yang terus dilanjutkan hingga permainan selesai, gameplaynya memiliki banyak variasi sehingga menambah kenikmatan bermain. Selain itu seiring dengan jauhnya permainan, tingkat kesulitanpun semakin sulit dan harus membuat si Gamers meningkatkan status karakter game tersebut untuk menyeimbangi permainan yang lebih sulit. Game ini juga sering menyimpan rahasia/misteri seperti halnya RPG yang lumayan fun untuk ditemukan dan dipecahkan.

2. SIMULATION:

Simulation adalah game yang mengendalikan suatu objek yang bergerak/tidak bergerak baik secara langsung maupun tidak langsung dengan tujuan melakukan hal-hal tertentu. Game ini sangat menarik karena bisa membuat kita berfantasi seakan objek yang berada dalam game tersebut adalah nyata dan milik kita.

3. Lovesims/visual novel

Game ini hanya berupa suatu percakapan antar tokoh disertai dengan gambar CG (Computer Graphic) Anime yang indah. Jalan ceritanya berjalan sendiri tanpa bisa kita kendalikan, kita hanya bisa mengatur jalan cerita melalui pilihan langkah sang tokoh di game tersebut untuk mencapai akhir yang buruk atau bahagia, kayak Sinetron gitu deh. Game ini hanya dibuat di negara asal anime yaitu jepang dan lumayan populer di sana namun tidak begitu di negara lainnya. Game ini kurang mendapat perhatian karena gameplaynya yang dinilai kurang berbobot, selain itu game tipe ini yang beredar di Indonesia kebanyakan game-game adult yang tidak baik untuk gamer usia dibawah umur.

4. RPG (Role Playing Game)

Game jenis ini cukup banyak disukai Gamers didunia karena gameplaynya yang sangat menarik dan alur ceritanya yang membuat kita serasa berada didunia lain, di beberapa game ini memungkinkan Gamers bisa mengontrol lebih dari 1 karakter secara bergantian dan memberinya perintah apa yang karakter tersebut harus lakukan, Game ini juga mengharuskan Gamers untuk berpikir dan berstrategi karena game ini memiliki banyak celah yang bisa dipecahkan untuk mencapai kesuksesan bermain sehingga menciptakan gaya bermain yang berbeda-beda pada setiap player.

5. SHOOTING

Game shooting adalah game yang menuntut Gamers untuk menghabisi musuhnya dalam game tersebut dengan cara menembakinya dengan berbagai jenis senjata api, kemampuan ditentukan dari teknik dan strategi masing-masing gamer. semakin sangar senjata yang kamu tenteng, semakin mudah bagimu dalam melibas musuh.
 
6. FIGHTING

Genre game yang simple, cukup mengalahkankan lawan dengan cara duel 1 lawan 1 maka anda menang. Game ini sangat mengasyikkan bila dimainkan berdua dengan teman. Namun walau simple, untuk mengalahkan lawan yang tangguh dibutuhkan keahlian khusus karena untuk mengeluarkan jurus-jurus tertentu yang mematikan memerlukan kunci penekanan kombinasi tombol yang gesit dan cepat.

7. RACING 
 
Pada umumnya genre Racing dibagi menjadi 3
- Arcade Racing

Yaitu permainan balapan yang lebih menekankan excitement dalam bermain. sub-genre ini populer dari mesin arcade yang jatuhnya mendarat juga di pc ataupun console,
- Racing Simulation/Simulation Race/Sim Rac 

Genre ini tdk ditekankan di kenyamanan bermain tapi di tingkat realisme dalam bermain. Ditandai dgn tingkat kesultain yang "cenderung" lebih tinggi dan butuh skill lebih.
- Semi-Simulated Race

Genre yang masuk sini adalah genre yang memiliki kedua unsur sub-genre race diatas. Game ini bisa lebih mudah dari Arcade Race ataupun bisa lebih sulit dari Simulation Race, atau ditengah2 tergantung dari pengembangan developer

8. STRATEGY
 
Strategi adalah game menguras otak karena memerlukan pemikiran yang cerdik untuk menyelesaikan permainan dengan pemikiran kita sendiri. Strategi juga sering terdapat di beberapa genre game sebagai celah untuk memainkan game tersebut dengan tepat dan lebih baik. Karena itu dengan adanya strategi, setiap orang bisa menciptakan gaya bermainnya sendiri-sendiri.

9. Sports

Sports adalah game olahraga yang gameplaynya tergantung dari jenis olah raga itu sendiri. Game sports ada bermacam - macam, misalnya Golf, American football (rugby), Sepakbola, Basket, Baseball, Gulat, Voli, Memancing, dsb.
 
10. Puzzle

Game yang santai, relax, dan asyik bagi segala usia,. Game ini memakai system gameplay yang itu –itu saja namun butuh pemikiran, kita hanya perlu mengatur suatu objek benda untuk menyelesaikan permainan. Misalnya game menyusun balok, game kartu, catur, tebak-tebakan dan lain sebagainya, namun harus diwaspadai karena game tipe ini juga ada yang mengajarkan berjudi seperti game domino, mahyong, poker, dsb.

11. Flash Game

Game ringan yang fun untuk dimainkan, diciptakan dari program sederhana yang siapa saja bisa menciptakannya asal memahami dengan teliti program pembuatnya, kapasitasnya kecil dan mudah didownload di internet.

12. Game Emulator

Emulator adalah program untuk memainkan game konsol agar bisa dimainkan di pc, beberapa konsol yang bisa dimainkan di pc dengan emulator adalah Playstation, GBC/GBA, Snes, Nintendo 64, Nintendo DS, dsb. namun jika ingin memainkan game konsol kelas berat, emulator saja tidak cukup, seperti halnya game PC, perlu komputer dengan spesifikasi yang memadai, game emulator disebut dengan ROMS dan dapat didownload di internet, jika ingin memainkan konsol game yang bermedia CD seperti playstation, install dulu program emulatornya, masukkan cd gamenya, jalankan programnya dan mainkan.
 
13. Real Moment Game

Game yang bernuansa realistis. Dengan sensor gerak kita bisa melakukan gerakan solah-olah kita sedang berinteraksi dengan objek dalam game tersebut. Game type ini sedang dikembangkan oleh beberapa pengembang game dan diramalkan akan menjamur dimasa depan kelak.
 
Referensi :

Pertemuan Ke - 12 : Perancangan Game AI


Nama : Rezky Audiansyah Putra

Kelas : 3KA12

NPM  : 18116161


Hasil PPT :  https://drive.google.com/open?id=1_IAcpCQUyuWxNgLMmLucg5zThrjV1R4W
---------------------------------------------------------------------------------------------------------------------------
 
1. Perancangan

Salah satu komponen yang kini diterapkan pada Game adalah kecerdasan buatan (Artificial Intelligence atau AI). Game dengan AI mengacu pada teknik yang digunakan dalam permainan komputer dan video untuk menghasilkan ilusi intelijen dalam perilaku non-player character (NPC). Penelitian tentang AI (Artificial Intelligence) pada NPC (Non-Player Character) dalam Game hingga saat ini masih terus di kembangkan. Artificial Intelligence tersebut dikembangkan untuk merancang perilaku Non-Player Character.


2. Shooter

Genre FPS atau First Person Shooter adalah jenis game yang mengutamakan kecepatan gerakan kita dalam permainan. Dalam jenis ini akan lebih banyak baku tembak serta kita harus bertahan hidup selama mungkin hingga permainan berakhir. Disebut First Person Shooter karena pandangan dalam game jenis ini adalah pandangan orang pertama (first person) dan disini hanya menggerakkan/ memainkan satu orang player.


3. Driving

Racing atau Driving Simulation Game Game dengan genre racing atau driving mensimulasikan pemain dalam mengendarai suatu kendaraan yang dapat berupa mobil, Motor, dan jenis kendaraan lainnya. Genre ini dapat dibagi menjadi dua jenis, yaitu arcade style dan racing simulation. Arcade style lebih menekankan pada aksi balapan antar kendaraan, sedangkan racing simulation lebih menekankan pada simulasi yang lebih dalam dan nyata. Contoh racing game dengan arcade style adalah Burnout dan Mario Kart, sedangkan contoh racing game dengan racing simulation antara lain Gran Turismo.


4. Real Time Strategy

Real Time Strategy adalah salah satu jenis game yang masih mendominasi sampai saat ini di Personal Computer. Game jenis ini memungkinkan pemain untuk memerintahkan sekelompok dari karakter kedalam suatu konflik atau memulai untuk membangun suatu peradaban. Game jenis ini menuntut pemain untuk megembangkan strategy yang mendalam dalam rangka memenangkan kompetisi di bidang ekonomi atau militer terhadap komputer atau pemain lain. Game semacam Age of Empire II,Command and Conquer Tiberian Sun adalah beberapa game yang mengedepankan strategi dan memperkenalkan sebuah kompetisi dalam bentuk real time strategy.

Real Time Strategy Games menuntut pemain untuk berpikir dan merencanakan strategy secara tepat dan cepat untuk mengarahkan dan mengatur unit mendapatkan kemenangan sesuai dengan rule yang sudah ditentukan diawal. Real Time disini memiliki arti bahwa ada aliran yang terus terjadi didalam game, sehingga menuntut pemain untuk berpikir cepat dalam menanggapi situasi yang timbul. Yang menjadi ciri khas dalam game jenis ini adalah bagaimana pemain mengumpulkan sumber daya, membangun tentara dan mengendalikan unit untuk menyerang musuh. Perhatian pemain akan dibagi menjadi 2 yaitu pada aspek ekonomi dan tempur. Game ini termasuk dalam game yang cenderung berisikan kekerasan. Unit disini memiliki arti sebuah objek dalam game yang bias dikendalikan baik oleh pemain atau komputer. Beberapa dari unit ini dibekali senjata, dan beberapa lain memiliki suatu tugas yang seperti membangun bangunan atau mata-mata. Hal ini memerlukan kecerdasan buatan yang dalam bahasa Inggris disebut “Artificial Intelligence” atau disingkan AI, yaitu intelligence adalah kata sifat yang berarti cerdas, sedangkan artificial artinya buatan. Kecerdasan buatan yang dimaksud disini merujuk pada mesin yang mampu berpikir, menimbang tindakan yang akan diambil dan mampi mengambil keputusan seperti yang dilakukan oleh manusia.

 
5. Olahraga
 
Permainan olahraga (Sports games), yaitu ragam permainan video yang menuntut keterampilan pemain untuk melakukan pertandingan olahraga secara virtual, seperti pertandingan sepak bola, basket, dan sebagainya.

 
6. Turn Based Strategi Game

Game turn-based strategy (TBS) adalah permainan strategi (biasanya beberapa jenis wargame, terutama wargame tingkat strategis) di mana pemain bergiliran saat bermain. Ini dibedakan dari strategi real time, dimana semua pemain bermain secara bersamaan. 


Referensi :
- http://e-learning.kaputama.ac.id/pluginfile.php/81/mod_resource/content/1/Kecerdasan_buatan.pdf

Pertemuan Ke - 11 : Board Game


Nama : Rezky Audiansyah Putra

Kelas : 3KA12

NPM  : 18116161


Hasil PPT : https://drive.google.com/open?id=1dtooM9wMVyUc02Y4qrOKJrWqJrPz-Sd5
---------------------------------------------------------------------------------------------------------------------------
1.1 Game Theory
Menurut Dimiyati (1992), teori permainan (game theory) adalah bagian dari ilmu pengetahuan yang berkaitan dengan pembuatan keputusan pada saat ada dua pihak atau lebih berada dalam kondisi persaingan atau konflik. Pihak-pihak yang bersaing ini disumsikan bersifat rasional dan cerdas, artinya masing-masing pihak akan melakukan strategi tindakan yang rasional untuk memenangkan persaingan itu, dan masing-masing pihak juga mengetahui strategi pihak lawannya. Selanjutnya pihak ini disebut pemain.

Menurut Ayu (1996), game theory merupakan suatu pendekatan matematis untuk merumuskan situasi persaingan dan konflik antara berbagai kepentingan. Game theorymelibatkan dua atau lebih pengambil keputusan atau yang disebut pemain. Setiap pemain dalam game theory mempunyai keinginan untuk menang.

Terdapat dua jenis strategi permainan yang dapat digunakan pada game theory, yaitu pure strategy (setiap pemain mempergunakan strategi tunggal) dan mixed strategy (setiap pemain menggunakan campuran dari berbagai strategi yang berbeda-beda). Pure strategy digunakan untuk jenis permainan yang hasil optimalnya mempunyai saddle point (semacam titik keseimbangan antara nilai permainan kedua pemain). Sedangkan mixedstrategy digunakan untuk mencari solusi optimal dari kasus game theory yang tidak mempunyai saddle point.

Types Of Game 
Teori permainan mengklasifikasikan permainan sesuai dengan jumlah pemain, jenis sasaran yang dimiliki pemain tersebut, dan informasi yang dimiliki setiap pemain tentang permainan tersebut.

1.Number Of Players


Permainan papan yang mengilhami algoritma AI berbasis giliran hampir semuanya memiliki dua pemain. Sebagian besar algoritma populer dibatasi oleh dua pemain dalam bentuknya yang paling dasar. Mereka dapat disesuaikan untuk digunakan dengan jumlah yang lebih besar, namun jarang menemukan deskripsi tentang algoritma untuk hal lain selain dua pemain.

2.The Goal of the Game

Dalam kebanyakan game strategi, tujuannya adalah untuk menang. Sebagai pemain, Anda menang jika semua lawan Anda kalah. Ini dikenal sebagai permainan zero-sum: kemenangan Anda adalah kehilangan lawan. Jika Anda mencetak 1 poin untuk menang, maka akan sama dengan skor-1 karena kalah. Ini tidak akan terjadi, misalnya, dalam permainan kasino, saat Anda semua bisa keluar lebih buruk.
Dalam permainan zero-sum tidak masalah jika Anda mencoba untuk menang atau jika Anda mencoba membuat lawan kalah; thecomeisthesame.Foranon-zero-sumgame, di mana Anda bisa menemukan semua yang Anda inginkan, Anda ingin melakukan fokus pada kemenangan Anda, mengumpulkankan semua hasil akhir (kecuali jika Anda ada orang lain)
Untuk game dengan lebih dari dua pemain, semuanya lebih kompleks. Bahkan dalam permainan zero-sum, strategi terbaik tidak selalu membuat lawan masing-masing kalah. Mungkin lebih baik untuk mengeroyok lawan terkuat, memberi keuntungan pada lawan yang lebih lemah dan berharap bisa menjemput mereka nanti.

3.Information

Dalam game seperti Chess, Drafts, Go, dan Reversi, kedua pemain mengetahui segala hal yang perlu diketahui tentang kemungkinan terjadinya hal tersebut. Mereka mengetahui berapa banyak yang harus dilakukan pada setiap kesempatan dan kesempatan untuk melakukan langkah selanjutnya. Mereka tahu semua ini sejak awal permainan. Game semacam ini disebut "informasi yang sempurna." Meskipun Anda tidak tahu mana yang akan dipilih lawan Anda, Anda memiliki pengetahuan lengkap tentang setiap gerakan yang mungkin bisa dilakukan lawan dan efek yang dimilikinya.

4. Applying Algorithms

Algoritma yang paling dikenal dan paling maju untuk game berbasis giliran dirancang untuk bekerja dengan permainan informasi dua pemain, zero-sum, sempurna. Jika Anda menulis AI bermain catur, maka ini adalah implementasi yang Anda butuhkan. Tapi banyak game komputer berbasis turn over lebih rumit, melibatkan lebih banyak pemain dan informasi yang tidak sempurna.

1.2 Algoritma Minimaxing

Sebuah komputer memainkan permainan berbasis giliran dengan melihat tindakan yang ada pada gerakan ini dan memilihnya daripadanya. Untuk memilih salah satu dari mereka, dibutuhkan stok sekarang apa yang bergerak lebih baik daripada yang lain. Pengetahuan ini diberikan ke komputer oleh programmer menggunakan heuristik yang disebut fungsi evaluasi statis.

Dalam game sederhana, ada algoritma yang bisa mencari pohon permainan untuk ditentukan langkah terbaik untuk membuat dari keadaan saat ini. Yang paling terkenal disebut algoritma Minimax Algoritma minimax adalah metode yang berguna untuk permainan dua pemain sederhana. Ini adalah metode untuk memilih langkah terbaik yang diberikan permainan bolak-balik di mana masing-masing pemain menentang yang lain bekerja tujuan yang saling eksklusif. Setiap pemain mengetahui gerakan yang mungkin dilakukan dengan kondisi permainan saat ini, maka untuk setiap gerakan, semua gerakan selanjutnya bisa terjadi ditemukan.

Pada setiap simpul di pohon (kemungkinan pergerakan) nilai yang mendefinisikan kebaikan langkah menuju pemain yang memenangkan pertandingan bisa disediakan. Jadi pada saat tertentu node, node anak (kemungkinan bergerak dari keadaan ini dalam permainan) masing-masing atribut yang menentukan kebaikan relatif dari pergerakan. Ini adalah tugas yang mudah untuk memilih langkah terbaik mengingat keadaan saat ini. Tapi mengingat bolak-balik sifat permainan dua pemain, pemain berikutnya membuat langkah yang menguntungkan mereka (dan dalam permainan zero-sum, menghasilkan defisit untuk pemain pengganti). Bagian dari simpul didefinisikan sebagai jumlah pergerakan yang diperlukan untuk mencapai titik keadaan saat ini (konfigurasi permainan). Lapisan pohon game adalah Maksimum lapisan semua simpul.

Minimax bisa menggunakan satu dari dua strategi dasar. Pada bagian pertama, seluruh permainan
Pohon dicari ke simpul daun (end-games), dan di bagian kedua, pohon itu hanya mencari kedalaman yang telah ditentukan dan kemudian dievaluasi.

1.3 Transposition Tables anda Memory


Sejauh ini algoritma yang kita lihat mengasumsikan bahwa setiap gerakan mengarah ke posisi papan yang unik. Seperti yang kita lihat sebelumnya, posisi dewan yang sama dapat terjadi sebagai hasil kombinasi gerakan yang berbeda. Dalam banyak game posisi board yang sama bahkan bisa terjadi beberapa kali dalam game yang sama. Agar pekerjaan ekstra mencari posisi dewan yang sama beberapa kali, algoritma dapat menggunakan tabel transposisi. Meskipun tabel transposisi dirancang untuk menghindari duplikasi pekerjaan pada transposisi, namun tabel tersebut memiliki manfaat tambahan. Beberapa algoritma mengandalkan tabel transposisi sebagai memori kerja posisi papan yang telah dipertimbangkan. Teknik seperti tes yang ditingkatkan memori, pendalaman berulang, dan berpikir pada giliran lawan Anda semua menggunakan tabel transposisi yang sama (dan semua diperkenalkan di bab ini). Tabel transposisi menyimpan catatan posisi papan dan hasil pencarian dari posisi itu. Ketika sebuah algoritma diberi posisi papan, pertama-tama periksa apakah papan itu ada dalam memori dan gunakan nilai yang tersimpan jika benar. Membandingkan status permainan yang lengkap adalah prosedur yang mahal, karena keadaan permainan mungkin berisi puluhan atau ratusan item informasi. Membandingkan ini dengan keadaan tersimpan dalam ingatan akan memakan waktu lama. Untuk mempercepat pemeriksaan tabel transposisi, nilai hash digunakan.

1.4 . Memori tambahan pda uji algoritma

Algoritma memory-enhanced test (MT) bergantung pada adanya tabel transposisi yang efisien untuk bertindak sebagai algoritma'memory. MT hanyalah sebuah negamax AB nol-lebar, menggunakan tabel transposisi untuk menghindari duplikat pekerjaan. Keberadaan memori memungkinkan algoritma melompati pohon pencarian melihat gerakan yang paling menjanjikan terlebih dahulu. Sifat rekursif dari algoritma negamax berarti bahwa ia tidak dapat melompat; itu harus menggelembung dan recurse down.

1.5 Pembukaan buku dan set permainan

Dalam banyak permainan, selama bertahun-tahun, pemain ahli telah membangun sebuah pengalaman tentang pergerakan mana yang lebih baik daripada yang lain di awal permainan. Tempat ini lebih jelas daripada di buku pembuka Catur. Pakar ahli mempelajari database besar kombinasi pembuka tetap, belajar tanggapan terbaik untuk bergerak. Hal ini tidak biasa untuk 20 sampai 30 langkah pertama dari permainan Catur Grandmaster yang akan direncanakan sebelumnya. Buku pembuka adalah daftar urutan bergerak, bersama dengan beberapa indikasi seberapa bagus hasil rata-rata akan menggunakan urutan tersebut. Dengan menggunakan seperangkat aturan ini, komputer tidak perlu mencari menggunakan minimaxing untuk menentukan langkah terbaik yang akan dimainkan. Ini hanya bisa memilih langkah selanjutnya dari urutan, selama titik akhir dari urutan itu bermanfaat baginya.
Membuka database buku dapat diunduh untuk beberapa permainan yang berbeda, dan untuk game terkemuka seperti database komersial Chess tersedia untuk lisensi ke dalam game baru. Untuk game berbasis giliran asli, buku pembuka (jika berguna) perlu dibuat secara manual.

1.6 Optimisasi

Meskipun dasar permainan-bermain algoritma masing-masing relatif sederhana, mereka memiliki array membingungkan optimasi yang berbeda. Beberapa pengoptimalan ini, seperti pemangkasan dan tabel transposisiAB, sangat penting untuk kinerja yang baik. Pengoptimalan lainnya cukup memanfaatkan sebagian besar kinerja. Bagian ini membahas beberapa pengoptimalan lainnya yang digunakan untuk turn-basedAI. Tidak ada cukup ruang untuk mencakup detail pelaksanaan untuk sebagian besar dari mereka. Lampiran memberi petunjuk lebih jauh
informasi tentang pelaksanaannya Selain itu, optimasi khusus yang digunakan hanya dalam jumlah yang relatif kecil dari permainan papan tidak disertakan. Catur, khususnya, memiliki keseluruhan rakit pengoptimalan khusus yang hanya berguna dalam sejumlah kecil skenario lainnya.

1.7 Turn Base strategy game

Bab ini memusatkan perhatian pada game board AI. Di hadapannya, game board AI memiliki banyak kemiripan permainan strategi berbasis toturn. Game strategi komersial jarang menggunakan teknik pencarian pohon di bab ini sebagai alat utama mereka. Kompleksitas permainan ini berarti algoritma pencarian macet sebelum mereka dapat membuat keputusan yang masuk akal. Teknik pencarian yang paling sederhana dirancang untuk permainan informasi dua pemain, zero-sum, informasi sempurna, dan banyak pengoptimalan terbaik tidak dapat disesuaikan untuk digunakan dalam permainan strategi umum. Beberapa permainan strategi berbasis turn-turn sederhana dapat langsung diperoleh dari algoritme pencarian pohon di bab ini. Konstruksi penelitian dan konstruksi, gerakan pasukan, dan aksi militer semuanya bisa menjadi bagian dari serangkaian kemungkinan pergerakan. Posisi dewan tetap statis selama sebuah pergantian. Antarmuka permainan yang diberikan di atas dapat, secara teori, diterapkan untuk mencerminkan turn- permainan berbasis Antarmuka yang diterapkan ini kemudian dapat digunakan dengan algoritma pencarian pohon reguler. 

Referensi :

Selasa, 27 November 2018

Pertemuan Ke - 10 : Teknik Pembangunan Game AI


Nama : Rezky Audiansyah Putra

Kelas : 3KA12

NPM  : 18116161


Hasil PPT :https://drive.google.com/open?id=1eRNcw_c6v4iE0YGVdUDSM44eLS5nkH5Q
---------------------------------------------------------------------------------------------------------------------------
Movement

Komputer sebagai alat untuk pemindahan data yaitu untuk  pemindahan data yang telah dibuat dan akan bisa membuka kembali file yang telah kita buat dengan cara mengcopy paste file yang telah kita buat. Contohnya dari keyboard ke layar monitor. Dalam game, movement adalah metode yang menekankan konsep gerak tubuh, meliputi konsep kesadaran tubuh, konsep usaha, konsep ruang, dan konsep keterhubungan.
Pathfinding

Pathfinding merupakan metode yang sangat dibutuhkan pada berbagai game, terutama game 3D. Path finding digunakan untuk menentukan arah pergerakan suatu objek berdasarkan keadaan lokasi dan object disekitarnya dari suatu titik ke titik lain. Pathfinding merupakan cara untuk mendapatkan rute antara dua buah point, beberapa agoritma yang dapat diterapkan antara lain brute force, BFS, DFS.
Pengambilan Keputusan

Pengambilan keputusan adalah suatu proses pemilihan dari berbagai alternatif baik kualitatif maupun kuantitatif untuk mendapat suatu alternatif terbaik guna menjawab masalah atau menyelesaikan konflik (pertentangan).

Proses penurunan suatu keputusan mengandung empat unsur, yaitu :
Model : Model menunjukkan gambaran suatu rnasalah secara kuantitatif atau kualitatif.
Kriteria: Kriteria yang dirumuskan menunjukkan tujuan dari keputusan yang diambil. Jika terdapat beberapa kriteria yang saling bertentangan, maka pengambilan keputusan harus melalui kompromi (misalnya menambah jasa langganan dan mengurangi persediaan, maka keputusan mana yang diambil perlu kompromi).
            
Pembatas: Faktor-faktor tambahan yang perlu diperhatikan dalam memecahkan masalah pengambilan keputusan. Misalnya dana yang kurang tersedia.
              
Optimalisasi: Apabila masalah keputusan telah diuraikan dengan sejelas jelasnya, maka manajer menentukan apa yang diperlukan (kriteria) dan apa yang diperbolehkan (pembatas). Pada keadaan ini pengambil keputusan siap untuk memilih pemecahan yang terbaik atau yang optimal.



Proses Pengambilan Keputusan
           
Penyelidikan: Mempelajari lingkungan atas kondisi yang memerlukan keputusan. Data mentah diperoleh, diolah, dan diuji untuk dijadikan petunjuk yang dapat mengidentifikasi persoalan.
          
Perancangan: Mendaftar, mengembangkan, dan menganalisis arah tindakan yang mungkin. Hal ini meliputi proses-proses untuk memahami persoalan, menghasilkan pemecahan, dan menguji kelayakan pemecahan tersebut.
       
Pemilihan: Memilih arah tindakan tertentu dari semua yang ada. Pilihan ditentukan dan dilaksanakan.



Jadi, proses keputusan dapat dianggap sebagai sebuah arus dari penyelidikan sampai perancangan dan kemudian pada pemilihan. Tetapi pada setiap tahap hasilnya mungkin dikembalikan ke tahap sebelumnya untuk dimulai lagi. Jadi tahapan tersebut merupakan unsur-unsur sebuah proses yang berkesinambungan.

Teori Pengambilan Keputusan

Teori pengambilan keputusan menekankan bahwa terdapat tujuh langkah yang harus ditempuh, yaitu:

1. Identifikasi permasalahan yang dihadapi
Ada ungkapan yang mengatakan bahwa suatu “permasalahan yang sudah dikenali hakikatnya dengan tepat sesungguhnya sudah separo terpecahkan.” Ungkapan ini mempunyai tiga implikasi, yaitu:
ü  Bahwa mutlak perlu mengenali secara mendasar situasi problematik yang menimbulkan ketidakseimbangan dalam kehidupan organisasi atau perusahaan.
ü  Pengenalan secara mendasar berarti “akar” penyebab timbulnya ketidakseimbangan harus digali sedalam-dalamnya.
ü   Mengambil keputusan tidak boleh puas hanya dengan diagnosis gejala-gejala yang segera tampak. Jika hanya gejala yang diidentifikasikan, sangat mungkin “terapinya” pun hanya mampu menghilangkan gejala tersebut. Padahal yang harus dihilangkan adalah “sumber penyakitnya”.

2. Pengumpulan data
Berangkat dari pandangan bahwa pengambilan keputusan memerlukan dukungan informasi yang lengkap, mutakhir, dapat dipercaya, dan diolah dengan baik. Berarti bahwa dalam pengumpulan data ada tiga hal yang mutlak mendapat perhatian, yaitu:
·         Pentingnya menggali data dari semua sumber yang layak digali, baik secara internal maupun secara eksternal. Dari segi inilah harus dilihat pentingnya akses bagi para pengolah data terhadap semua sumber data.
·         Pentingnya untuk menjamin bahwa data yang dikumpulkan relevan dengan permasalahan yang hendak diatasi.
·         Bahwa mutu data yang dikumpulkan haruslah setinggi mungkin sehingga informasi yang dihasilkan akan bermutu tinggi pula.

3. Analisis data
Analisis data harus mampu menunjukkan berbagai alternatif yang mungkin ditempuh untuk memecahkan masalah. Oleh karena itu, analisis data diarahkan pada pembentukan persepsi yang sama diantara berbagai pihak tentang arti data yang dimiliki, dengan demikian memberikan interpretasi yang sama tentang data tersebut.

 4.Analisis berbagai alternatif
Salah satu tantangan yang dihadapi dalam mengambil keputusan ialah menemukan jawaban yang paling tepat terhadap pertanyaan: Apakah dalam mengambil keputusan harus selalu terdapat berbagai alternatif? Pertanyaan ini penting karena jika seorang pengambil keputusan dihadapkan kepada hanya satu alternatif dan ia memutuskan untuk menggunakan alternatif tersebut, yang bersangkutan sudah mengambil keputusan. Bahkan teori pengambilan keputusan mengatakan bahwa jika seseorang memutuskan untuk tidak mengambil keputusan, tindakannya itu adalah pengambilan keputusan juga.

5.Pemilihan alternatif
Jika dilakukan dengan cermat, analisis berbagai alternatif akan “memberi petunjuk” tentang alternatif yang sebaiknya digunakan karena akan membuahkan solusi yang paling efektif. Alternatif di pilih dengan demikian, merupakan alternatif yang tampaknya paling baik. Pengalaman mengambil keputusan di masa lalu dan keyakinan bahwa keputusan yang diambil adalah keputusan yang terbaik.

6.Implementasi (pelaksanaan)
Apakah alternatif yang dipilih merupakan pilihan yang terbaik atau tidak diuji pada waktu digunakan dalam arti mampu tidaknya menghilangkan situasi permasalahan dan apakah permasalahan yang dihadapi tersebut dapat dipecahkan secara efektif atau tidak.

7.Evaluasi (penilaian)
Hasil pelaksanaan memerlukan penilaian yang objektif, rasional dan berdasarkan tolok ukur yang baku. Seperti dimaklumi, hasil penilaian dapat menunjukkan bahwa hasil yang di capai melampaui harapan, sekedar sesuia dengan sasaran atau kurang dari sasaran. Kesemuanya itu menjadi bahan penting dalam mengelola organisasi atau perusahaan di masa depan. 
Taktik dan strategi AI

AI dalam game biasanya memiliki kecepatan dalam taktik bermain sehingga mengharuskan pemain untuk berfikir lebih cepat untuk menyusun strategi terbaik agar dapat memperoleh skor yang maksimal. Kecerdasan buatan merupakan kecerdasan yang ditujukan oleh suatu entitas buatan, yang diciptakan dan diterapkan kedalam sebuah mesin (komputer) sehingga dapat melakukan perbuatan seperti manusia. Strategi dalma gamepun bervariasi. Salah satunya adalah dalam game Othello yaitu strategi bermain reversy, sperti jumlah pin, penguasaan sudut/x-square/c-square, jumlah pin stabil, mobility, jumlah pin tepi, parity, dan pola sisi/sudut.

Pembelajaran

Machine learning adalah teknik AI yang berkaitan dengan pembelajaran data dan menggunakannya untuk memprediksi informasi yang ada di dunia.
Machine learning dibangun dengan menggunakan algoritma. Rangkaian instruksi ini akan menyelesaikan suatu permasalahan. Contoh algoritma yang dimaksud adalah decision tree learning dan association rule learning.
Namun, algoritma machine learning yang berperan dalam kehidupan di dunia adalah jaringan saraf buatan, suatu teknik yang terinspirasi oleh cara kerja neuron otak manusia.
Sederhananya begini: suatu jaringan saraf terdiri dari beberapa lapisan neuron. Input masuk melalui lapisan pertama. Tiap neuronnya menerima input, sehingga setiap neuron memiliki muatan, dan menghasilkan output berdasarkan muatan mereka. Output dari lapisan pertama kemudian didistribusikan ke lapisan kedua untuk diproses, dan begitu seterusnya hingga output akhir dapat dihasilkan.
Kemudian hal menarik pun terjadi. Siapapun yang menjalankan jaringan dapat mendefinisikan seperti apa output akhir yang “benar” seharusnya. Setiap kali data didistribusikan melalui jaringan tersebut, hasil akhirnya dibandingkan dengan hasil yang “benar”, dan sejumlah penyempurnaan akan dilakukan hingga tercipta outputakhir yang benar. Dengan kata lain, jaringan tersebut mampu melatih dirinya sendiri.
Otak buatan ini dapat mempelajari bagaimana cara mengidentifikasi banyak hal. Misalnya kursi dalam sebuah foto,. Seiring berjalannya waktu, ia dapat mempelajari karakteristik kursi tersebut, dan meningkatkan kemampuannya dalam mengidentifikasi benda tersebut.

Referensi:
http://web.cecs.pdx.edu/~mperkows/CLASS_479/2017_ZZ_00/02__GOOD_Russel=Norvig=Artificial%20Intelligence%20A%20Modern%20Approach%20(3rd%20Edition).pdf

Senin, 19 November 2018

Pertemuan Ke - 9 : Kecerdasan Buatan dan Permainan (AI and Games)


Nama : Rezky Audiansyah Putra

Kelas : 3KA12

NPM  : 18116161


Hasil PPT : https://drive.google.com/open?id=1nCf3Cm2Yxo8amRswSx5zDFJpnMRicitb
---------------------------------------------------------------------------------------------------------------------------
  
 1.1 Kecerdasan Buatan VS Game AI  
 
Pengertian Kecerdasan Buatan

Kecerdasan buatan (bahasa Inggris: Artificial Intelligence atau AI) didefinisikan sebagai kecerdasan yang ditunjukkan oleh suatu entitas buatan. Sistem seperti ini umumnya dianggap komputer. Kecerdasan diciptakan dan dimasukkan ke dalam suatu mesin (komputer) agar dapat melakukan pekerjaan seperti yang dapat dilakukan manusia. Beberapa macam bidang yang menggunakan kecerdasan buatan antara lain sistem pakar, permainan komputer (games)logika fuzzy, jaringan syaraf tiruan dan robotika.
Penelitian dalam AI menyangkut pembuatan mesin untuk mengotomatisasikan tugas-tugas yang membutuhkan perilaku cerdas. Termasuk contohnya adalah pengendalian, perencanaan dan penjadwalan, kemampuan untuk menjawab diagnosa dan pertanyaan pelanggan, serta pengenalan tulisan tangan, suara dan wajah. Hal-hal seperti itu telah menjadi disiplin ilmu tersendiri, yang memusatkan perhatian pada penyediaan solusi masalah kehidupan yang nyata. Sistem AI sekarang ini sering digunakan dalam bidang ekonomi, obat-obatan, teknik dan militer, seperti yang telah dibangun dalam beberapa aplikasi perangkat lunak komputer rumah dan video game.

Pengertian Game
Game adalah permainan komputer yang dibuat dengan teknik dan metode animasi. Permainan game merupakan bidang AI yang sangat populer berupa permainan antara manusia melawan mesin yang mempunyai intelektual untuk berpikir. Komputer dapat bereaksi dan menjawab tindakan-tindakan yang diberikan oleh lawan mainnya.
Salah satu komputer yang ditanamkan AI untuk game bernama Deep Blue. Deep Blue adalah sebuah komputer catur buatan IBM pertama yang memenangkan sebuah permainan catur melawan seorang juara dunia (Garry Kasparov) dalam waktu standar sebuah turnamen catur. Kemenangan pertamanya (dalam pertandingan atau babak pertama) terjadi pada 10 Februari 1996, dan merupakan permainan yang sangat terkenal.
Kini telah banyak berkembang game AI yang semakin menarik, interaktif, dan dengan grafis yang sangat bagus. Ditambah dengan kemajuan teknologi jaringan komputer yang semakin cepat, sudah banyak terdapat game-game AI yang berbasiskan online. Tidak sedikit orang yang tertarik dengan game saat ini. Mereka memainkan game untuk mengisi kekosongan waktu mereka atau pun melatih skill mereka dalam berpikir.
 
Artificial Intelligence dalam Game
Salah satu unsur yang berperan penting dalam sebuah game adalah kecerdasan buatan. Dengan kecerdasan buatan, elemen-elemen dalam game dapat berperilaku sealami mungkin layaknya manusia.
Game AI adalah aplikasi untuk memodelkan karakter yang terlibat dalam permainan baik sebagai lawan, ataupun karakter pendukung yang merupakan bagian dari permainan tetapi tidak ikut bermain (NPC = Non Playable Character). Peranan kecerdasan buatan dalam hal interaksi pemain dengan permainan adalah pada penggunaan interaksi yang bersifat alami yaitu yang biasa digunakan menusia untuk berinteraksi dengan sesama manusia. Contoh media interaksi ialah:
·         Penglihatan (vision)
·         Suara (voice), ucapan (speech)
·         Gerakan anggota badan ( gesture)
Untuk pembentukan Artificial Intelligence pada game ternyata digunakan pula algoritma, yaitu jenis pohon n-ary untuk suatu struktur. Implementasi pohon (tree) ini biasa disebut game tree. Berdasarkan game tree inilah sebuah game disusun algoritma kecerdasan buatannya. Artificial intellegence yang disematkan dalam sebuah game yang membentuk analisis game tree biasanya merepresentasikan kondisi atau posisi permainan dari game sebagai suatu node, dan merepresentasikan langkah yang mungkin dilakukan sebagai sisi berarah yang menghubungkan node kondisi tersebut ke anak (child) sebagaimana representasi suatu pohon (tree).
Namun, biasanya representasi langsung tersebut mempunyai kelemahan, yaitu representasi data pohon akan menjadi sangat lebar dan banyak. Mungkin bagi sebuah mesin komputer mampu melakukan kalkulasi sebanyak apapun masalah, namun game tree yang lebar dan besar memberikan beberapa masalah, antara lain konsumsi proses memori, kapasitas penyimpanan yang cukup besar dan kinerja yang kurang pada konsol game berspesifikasi rendah. Karena itu dibentuklah beberapa algoritma dan penyederhanaan bagi sebuah game tree.
Pada salah satu contoh game klasik, yaitu tic tac toe, penyederhanaan dapat dilakukan dengan berbagai metode. Salah satu diantaranya adalah minimax. Metode ini berhasil diterapkan dan memberikan nilai reduksi yang cukup signifikan. Dan tidak hanya bisa digunakan secara monoton, minimax juga bisa digunakan untuk game-game yang lebih rumit seperti catur, tentunya dengan algoritma dan representasi berbeda.
1.2 Mode Game AI
Pathfinding
 
Metode pathfinding paling mudah ditemui pada game-game bertipe strategi dimana kita menunjuk satu tokoh untuk digerakkan ke lokasi tertentu dengan mengklik lokasi yang hendak dituju. Si tokoh akan segera bergerak ke arah yang ditentukan, dan secara “cerdas” dapat menemukan jalur terpendek ataupun menghindari dari rintangan-rintangan yang ada. Salah satu algoritma pathfindin yang cukup umum dan yang paling banyak digunakan utnuk mencari jarak terpendek secara efisien adalah algoritma A* (baca: A star). Secara umum, algoritma A* adalah mendefinisikan area pencarian menjadi sekumpulan node-node (tiles). Titik awal dan titik akhir ditentukan terlebih dulu untuk mulai penelusuran pada tiap-tiap node yang memungkinkan untuk ditelusuri. Dari sini, akan diperoleh skor yang menunjukkan besarnya biaya untuk menempuh jalur yang ditemukan, ditambah dengan nilai heuristik yang merupakan nilai biaya estimasi dari node yang ada menuju tujuan akhir. Iterasi akan dilakukan hingga akhirnya mencapai target yang dituju. 
 
Jaringan saraf tiruan (neural network)
 
Neural network cukup baik ketika diterapkan pada kasus-kasus yang sifatnya non-linier atau mengambil keputusan yang tidak dapat dilakukan dengan metode tradisional. Penerapannya seringkali pada game-game yang memerlukan kemampuan adaptif atau belajar dari pengalaman. Sebagai contoh, jika suatau ketika terjadi pertempuran antar player dengan unit komputer, dan unit komputer mengalami kekalahan, maka pada kesempatan lain yang serupa, komputer akan memilih untuk tidak bertempur. Semakin banyak pengalaman yang dialami komputer, maka komputer menjadi semakin cerdas. Prinsip dasar dari jaringan saraf tiruan ini adalah perbaikan bobot secara terus menerus agar output yang dihasilkan menjadi semakin akurat (semakin cerdas). 
 
Algoritma Genetis (genetic algorithm)
 
Algoritma genetis sedikit banyak dipengaruhi oleh teori evolusi yang dicetuskan Darwin, yaitu bahwa spesies akan terus menerus beradaptasi dengan lingkungannya dan ciri khasnya yang terletak pada kromosom, akan diturunkan pada generasi berikutnya. Generasi turunan ini menerima gabungan kromosom dari kedua induknya, yang disebut dengan crossover. Pada algoritma genetis, akan diterapkan langkah ranking fitness untuk melakukan seleksi terhadap langkah ranking fitness untuk melakukan seleksi terhadap generasi turunan yang terbaik. Pada game berbasis algorima genetis, turunan terbaik inilah yang dilibatkan ke dalam game, dimana akan digunakan oleh komputer untuk merespons perubahan-perubahan tingkah laku user.
 
sebenarnya bukan hanya 3 teknik kecerdasan buatan di atas yang dapat digunakan dalam sebuah game berbasis kecerdasan buatan masih banyak lagi teknik yang lain.
 
1.3 Algoritma, Struktur Data dan Representasi
 
Beberapa algoritma yang digunakan dalam game, mungkin salah satunya adalah algoritma yang digunakan dalam game pacman tersebut.
 
1. Decision tree
 
Decision Tree adalah salah satu metode klasifikasi yang paling populer karena mudah untuk diinterpretasi oleh manusia. Decision tree adalah model prediksi menggunakan struktur pohon atau struktur berhirarki. Konsep dari decision tree adalah mengubah data menjadi pohon keputusan dan aturan-aturan keputusan. Manfaat utama dari penggunaan decision tree adalah kemampuannya untuk mem-break down proses pengambilan keputusan yang kompleks menjadi lebih simpel sehingga pengambil keputusan akan lebih menginterpretasikan solusi dari permasalahan.
Kelebihan
Daerah pengambilan keputusan yang sbelumnya kompleks dan sangat global, dapat diubah menjadi lebih simpel dan spesifik.
Eliminasi perhitungan-perhitungan yang tidak diperlukan, karena ketika menggunakan metode decision tree maka sample diuji hanya berdasarkan criteria atau kelas tertentu.
Fleksibel untuk memilih features dari internal nodes yang berbeda, feature yang terpilih akan membedakan suatu criteria dibandingkan criteria yang lain dalam node yang sama. Kefleksibelan metode decision tree ini meningkatkan kualitas keputusan yang dihasilkan jika dibandingkan ketika menggunakan metode penghitungan satu tahap yang lebih konvensional.
Dalam analisis multivariat, dengan kriteria dan kelas yang jumlahnya sangat banyak, seorang penguji biasanya perlu untuk mengestimasikan baik itu distribusi dimensi tinggi ataupun parameter tertentu dari distribusi kelas tersebut. Metode decision tree dapat menghindari munculnya permasalahan ini dengan menggunakan criteria yang jumlahnya lebih sedikit pada setiap node internal tanpa banyak mengurangi kualitas keputusan yang dihasilkan.
Kekurangan
Terjadi overlap terutama ketika kelas-kelas dan criteria yang digunakan jumlahnya sangat banyak. Hal tersebut juga dapat menyebabkan meningkatnya waktu pengambilan keputusan dan jumlah memory yang diperlukan.
Pengakumulasian jumlah error dari setiap level dalam sebuah pohon keputusan yang besar.
Kesulitan dalam mendesain decision tree yang optimal. Hasil kualitas keputusan yang didapatkan dari metode decision tree sangat tergantung pada bagaimana pohon tersebut didesain. 
 
2. Finite State Machines (FSM)
 
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 (misal interupsi timer). Transisi keadaan ini umumnya juga disertai oleh aksi yang dilakukan oleh sistem ketika menanggapi masukan yang terjadi. Aksi yang dilakukan tersebut dapat berupa aksi yang sederhana atau melibatkan rangkaian proses yang relative kompleks. Berdasarkan sifatnya, metode FSM ini sangat cocok digunakan sebagai basis perancangan perangkat lunak pengendalian yang bersifat reaktif dan real time. 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.
Dalam bahasa pemrograman prosedural seperti bahasa C, FSM ini umumnya direalisasikan dengan menggunakan statemen kontrol switch case atau/dan if..then. Dengan menggunakan statemen-statemen kontrol ini, aliran program secara praktis akan mudah dipahami dan dilacak jika terjadi kesalahan logika.
Finite State Machine di dunia AI Game Programming, merupakan salah satu teknik yang paling sering digunakan. 
 
Kelebihan
Implementasinya mudah dan cepat
Memudahkan proses debugging. Karena telah dipecah menjadi kepingan yang lebih kecil, proses debugging kalau terjadi behavoiur yang tidak semestinya, menjadi lebih mudah
Proses komputasi yg minimal, karena sejatinya FSM hanyalah conditional statement yang dikemas dalam bentuk yang lebih elegan.
Fleksibel, dapat dikombinasikan dengan teknik AI lain misalnya fuzzy logic dan neural network. 
 
Kekurangan
Behaviour dari agen mudah diprediksi, karena tidak ada searching dan atau learning di dalam agen tersebut
Karena mudah diimplementasi, kadang programmer langsung tembak di eksekusi tanpa melakukan desain FSM terlbih dahulu. Biasanya akan terjadi FSM yang terfragmentasi
Timbul apa yang dinamakan dengan State Oscillation yaitu ketika batasan antara dua buah state terlalu tipis 
 
3. Sistem berbasis aturan (Rule Based System)
 
adalah suatu program komputer yang memproses informasi yang terdapat di dalam working memory dengan sekumpulan aturan yang terdapat di dalam basis pengetahuan menggunakan mesin inferensi untuk menghasilkan informasi baru.
Sebuah Rule-Based System dapat dibentuk dengan menggunakan sebuah assertions set, yang secara kolektif membentuk working memory, dan sebuah rule set yang menentukan aksi pada assertions set.  RBS secara relatif adalah model sederhana yang bisa diadaptasi ke banyak masalah. Namun, jika ada terlalu banyak peraturan, pemeliharaan sistem akan rumit dan terdapat banyak failure dalam kerjanya.
Kelebihan
Availability-bertambah, intelligent tutor, intelligent dB, danger-reduced, performance
multiple expertise, reability-bertambah, explanation steady, unemotional and complete response
Kekurangan
Jika terlalu banyak aturan, sistem menjadi sulit dalam me-maintain performance dan Keterbatasan dalam memutuskan teknik yang digunakan untuk suatu masalah. 
 
4. Algoritma A*
 
Menyelesaikan masalah yang menggunakan graf untuk perluasan ruang statusnya. Dengan menerapkan suatu heuristik, algoritma ini membuang langkah-langkah yang tidak perlu dengan pertimbangan bahwa langkah-langkah yang dibuang sudah pasti merupakan langkah yang tidak akan mencapai solusi yang diinginkan. Algoritma A* membangkitkan simpul yang paling mendekati solusi. Simpul ini kemudian disimpan suksesornya ke dalam list sesuai dengan urutan yang paling mendekati solusi terbaik. Kemudian, simpul pertama pada list diambil, dibangkitkan suksesornya dan kemudian suksesor ini disimpan ke dalam list sesuai dengan urutan yang terbaik untuk solusi.
Algoritma ini akan mengunjungi secara mendalam (mirip DFS) selama simpul tersebut merupakan simpul yang terbaik. Jika simpul yang sedang dikunjungi ternyata tidak mengarah kepada solusi yang diinginkan, maka akan melakukan runut balik ke arah simpul akar untuk mencari simpul anak lainnya yang lebih menjanjikan dari pada simpul yang terakhir dikunjungi. Bila tidak ada juga, maka akan terus mengulang mencari ke arah simpul akar sampai ditemukan simpul yang lebih baik untuk dibangkitkan suksesornya. Strategi ini berkebalikan dengan algoritma DFS yang mencari sampai kedalaman yang terdalam sampai tidak ada lagi suksesor yang bisa dibangkitkan sebelum melakukan runut balik, dan BFS yang tidak akan melakukan pencarian secara mendalam sebelum pencarian secara melebar selesai. A* baru berhenti ketika mendapatkan solusi yang dianggap solusi terbaik.
Algoritma A* menggabungkan jarak estimasi/heuristik [h(n)] dan jarak sesungguhnya/cost [g(n)] dalam membantu penyelesaian persoalan. Heuristik adalah nilai yang memberi harga pada tiap simpul yang memandu A* mendapatkan solusi yang diinginkan. Dengan heuristik, maka A* pasti akan mendapatkan solusi (jika memang ada solusinya). Dengan kata lain, heuristik adalah fungsi optimasi yang menjadikan algoritma A* lebih baik dari pada algoritma lainnya. Namun heuristik masih merupakan estimasi/perkiraan biasa saja. Sama sekali tidak ada rumus khususnya. Artinya, setiap kasus memiliki fungsi heuristik yang berbeda-beda. 
 
5. Algoritma Dijkstra
 
Algoritma Dijkstra adalah sebuah algoritma rakus (greedy algorithm) yang dipakai dalam memecahkan permasalahan jarak terpendek (shortest path problem) untuk sebuah graf berarah (directed graph) dengan bobot-bobot sisi (edge weights) yang bernilai tak negatif.
Misalnya, bila vertices dari sebuah graf melambangkan kota-kota dan bobot sisi (edge weights) melambangkan jarak antara kota-kota tersebut, maka algoritma Dijkstra dapat digunakan untuk menemukan jarak terpendek antara dua kota. Input algoritma ini adalah sebuah graf berarah yang berbobot (weighted directed graph)
Tujuan Algoritma Dijkstra yaitu untuk menemukan jalur terpendek berdasarkan bobot terkecil dari satu titik ke titik lainnya.
Kelemahan algoritma ini adalah semakin banyak titik akan semakin memakan waktu proses.
Jumlah titik menentukan tingkat efektifitas dari algoritma djikstra. 
 
Urutan Logika Algoritma Dijkstra
 
-Beri nilai bobot (jarak) untuk setiap titik ke titik lainnya, lalu set nilai 0 pada node awal dan
      nilai tak hingga terhadap node lain (yang belum terisi).
-Set semua node “Belum terjamah” dan set node awal sebagai “Node keberangkatan”.
-Dari node keberangkatan, pertimbangkan node tetangga yang belum terjamah dan hitung
      jaraknya dari titik keberangkatan.
-Setelah selesai mempertimbangkan setiap jarak terhadap node tetangga, tandai node
      yang telah terjamah sebagai “Node terjamah”. Node terjamah tidak akan pernah di cek
      kembali, jarak yang disimpan adalah jarak terakhir dan yang paling minimal bobotnya.
-Set “Node belum terjamah” dengan jarak terkecil (dari node keberangkatan) sebagai
      “Node Keberangkatan” selanjutnya dan lanjutkan dengan kembali ke step 3.
Dari beberapa algoritma AI diatas mungkin kita sekarang dapat mengerti bagaimana AI dalam game bekerja, atau malah kita bingung dan tidak mengerti. Ada banyak proses rumit yang jika dikerjakan terlihat akan sangat memakan waktu, sedangkan saat kita bermain game, semuanya terjadi begitu cepat dalam hitungan detik. Tetapi tu semua mungkin karena adanya komputer sebagai alat pemprosesan yang dapat mengerjakannya dalam hitungan detik. 
 
1.4 Kompleksitas Kesalahan 
 
Dalam konteks kecerdasan buatan dalam permainan video, kecurangan mengacu pada programmer agen memberikan akses ke informasi yang tersedia kepada pemain. Dalam sebuah contoh sederhana, jika agen ingin tahu apakah pemain dekatnya mereka dapat menjadi diberikan kompleks, manusia seperti sensor (melihat, mendengar, dll), atau mereka bisa menipu dengan hanya meminta mesin permainan untuk posisi pemain. Penggunaan kecurangan dalam AI menunjukkan keterbatasan "kecerdasan" dicapai artifisial, secara umum, dalam permainan di mana kreativitas strategis sangat penting, manusia dengan mudah bisa mengalahkan AI setelah minimal trial and error jika bukan untuk keuntungan ini. Kecurangan sering diimplementasikan untuk alasan kinerja di mana dalam banyak kasus mungkin dianggap dapat diterima sepanjang pengaruhnya tidak jelas bagi pemain. Sedangkan kecurangan hanya merujuk hak istimewa yang diberikan secara khusus untuk AI itu tidak termasuk kecepatan tidak manusiawi dan presisi alami untuk pemain-komputer mungkin panggilan keuntungan yang melekat komputer "kecurangan" jika mereka menghasilkan agen bertindak tidak seperti pemain manusia.
Kecurangan AI adalah aspek yang terkenal dari seri Peradaban Sid Meyer, dalam pertandingan tersebut, pemain harus membangun kerajaan dari awal, sedangkan kerajaan komputer menerima unit tambahan tanpa biaya dan dibebaskan dari pembatasan sumber daya. 
 
1.5 Jenis Game AI 
 
RTS (Real Time Strategy)
 
Game ini biasanya bersifat turn based ataupun bisa dimainkan secara bersamaan, identik dengan bermain melawan human intelegent (manusia vs manusia) yang biasanya menggunakan LAN ataupun Internet. Game ini bisa dikatakan game perang-perangan. Contoh game RTS adalah (DOTA, StarCraft, Civilization). 
 
RPG (Role Playing Game)
 
Game ini memiliki unsur yang unik, karena biasanya tidak ada tamat dalam game seperti ini (Kalaupun tamat, hanya ceritanya saja, dan kalian masih bisa leveling atau grinding sesuka hati). Kalian akan menjalankan sebuah main character yang bisa kalian costumize, mencari uang, membangun koneksi dengan NPC (non playable player) dan sebagainya. Contoh dari game RPG adalah (KOA, Skyrim, The Witcher). 
 
FPS (First Person Shooter)
 
FPS adalah game Tembak-tembakan, pukul-pukulan, tusuk-tusukan yang menggunakan sudut pandang orang pertama. Biasanya kita hanya bisa melihat tangan dari character kita. Contoh game ini FPS adalah (Call of Duty, Counter Strike, Far Cry 3). 
 
TPS (Third Person Shooter)
 
TPS sama definisinya dengan FPS. Hanya saja sudut pandangnya yang berbeda. Di TPS kita memakai sudut pandang orang ketiga. Kita bisa melihat keseluruhan character dari belakang (punggung). Contoh game TPS adalah (Dark Souls, Dark Siders, Assassins Creed). 
 
Sand Box
 
Game yang bersetting disuatu daerah, jadi kita bertualang pada suatu map yang sudah disediakan, dan kita bebas menjelajahinya tanpa harus loading ketika berpindah kesuatu daerah, biasanya game-game yang seperti ini game yang paling banyak peminatnya apalagi kita biasanya disuguhkan dengan "kebebasan" didalam game seperti ini. Contoh game Sand Box (GTA, Saints Row, Sleeping Dogs). 
 
1.6 Kecepatan dan Memori
 
Kebanyakan program AI menuntut memori yang besar dan kecepatan yang tinggi.


Referensi :
Kecerdasan buatan dalam game, Bella alysha
Artificial Intelligence, Sandi Setiawan, Andi Offset Yogyakarta, 1993
Mengenal Artificial Intelligence, Suparman, Andi Offset Yogyakarta, 1991.