Kecerdasan Buatan dan Permainan (AI and Games)
9.1. Kecerdasan Buatan vs. Game AI
Kecerdasan Buatan atau kecerdasan yang ditambahkan kepada suatu sistem yang bisa diatur dalam konteks ilmiah atau Intelegensi Artifisial (bahasa Inggris: Artificial Intelligence atau hanya disingkat AI) didefinisikan sebagai kecerdasan entitas ilmiah. 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.
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
9.2. Mode Game AI
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.
Minimax yang merupakan salah satu metode penerapan (implementasi) pohon n-ary pada suatu game, menandakan bahwa implementasi struktur (pohon khusunya) sangatlah diperlukan pada pembuatan dan penerapan Artificial Intelligence, dan tidak menutup kemungkinan ilmu dan metode baru yang lebih canggih akan ditemukan di masa depan.
9.3. Algoritma, Struktur Data dan Representasi
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.
Finite State Machine(FSM) ini memiliki kelebihan dan kekurangan,antara lain :
§ 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.
9.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.
9.5. Jenis Game AI
Jenis-Jenis Game
· Fun Games : Permainannya seperti skate board, bilyard, catur, puzzle, tetris, golf, Windows Entertainment Pack Games dan semua permainan yang animasinya sedikit dan pembuatannya relatif mudah. Permainan semacam ini terlihat mudah dari segi grafiknya tetapi biasanya sulit dalam algoritma.
· Arcade Games :Semua permainan yang mudah dimengerti, menyenangkan dan grafiknya bagus walau biasanya sederhana. Pengertian mudah dimengerti dan menyenangkan dikarenakan permainan ini hanyalah berkisar pada hal-hal yang disenangi umum seperti pukul memukul, tembak menembak, tusuk menusuk, kejar mengejar dan semua yang mudah dan menyenangkan. Yang termasuk kedalam permainan jenis ini adalah Prince of Persia, Street Fighter, Golden Axe, Grand Prix, Robocop.
· Strategic Games :Biasanya permainan strategi perang atau bisa juga permainan lain tetapi tetap saja memerlukan strategi untuk memenangkannya seperti startegi bisnis dan strategi politik.
· Adventure Games : Terbagi atas tiga macam yaitu petualangan biasa (Multi Layered Adventur), Dungeon-Underworld Adventure (3D Adventure) dan Roll Playing Game Adventure. Grafik jenis permainan ini benar-benar sulit. Contoh beberapa permainan jenis ini adalah Space Quest IV, Labyrinth of Word, War II dan Diablo.
Simulation Games
Dari semua jenis permainan yang ada, masing-masing memiliki tingkat kesulitan dan kemudahannya, jika bukan algoritmanya maka akan mudah dalam hal animasinya, akan tetapi games simulasi bisa disebut sebagai jenis permainan yang paling sulit, baik algoritma pembuatannya maupun animasinya. Permainan jenis ini juga yang paling membuat pusing dibandingkan dengan permainan jenis lainnya.Algoritmanya sangat sulit sebab harus memperhitungkan semua kejadian dalam kondisi sebenarnya. Berbagai efek animasi yang dibuat tidak cukup bermodalkan ahli grafik dan algoritma saja, tetapi sedikitnya harus mengerti persoalan matematika, teknik dan fisika. Contoh permainan jenis ini adalah Stellar7, F-15 Strike Eagle, Flight Simulator 98, F-14 Tomcat, F-16 Falcon, Jet Fighter.
9.6. Kecepatan dan Memori
Kebanyakan program AI menuntut memori yang besar dan kecepatan yang tinggi. Memori yang besar dan memiliki kecepatan yang besar dapat mempengaruhi kinerja program.
9.7. AI Engine
Pengembangan Game
Perkembangan Game yang pesat pada masa ini juga membutuhkan sesuatu yang berbeda pada rule permainannya. Sebuah sistem game, jika sudah dimainkan sampai tuntas oleh seorang player, maka ketika player yang sama memulai lagi permainan dari awal, maka rule permainannya akan sama. namun berbeda untuk game-game yang telah ada saat ini. sistem dalam game, dapat belajar mengenali pola permainan dari player dan ketika player tersebut memulai permainan kembali, maka sistem ini akan menggunakan rule yang berbeda untuk pemain yang sama ini. sehingga game menjadi lebih menarik dan menantang untuk dimainkan.
Contoh aplikasi kecerdasan buatan dalam bentuk game sangat banyak sekali, ada yang berbentuk game PC, dan ada pula yang berbentuk game jaringan. Contoh aplikasi game yaitu game Tic Tac Toe. Game Tic tac toe adalah sebuah permainan yang menggunakan papan berukuran n baris dan n kolom sehingga ukuran papan menjadi n x n misalkan 3 x 3.
Game ini merupakan game yang mengasah kemampuan berpikir manusia, dimana setiap pemain harus menyusun gambar secara vertikal, horizontal, miring kiri, dan miring kanan agar memperoleh nilai. Apabila pemain tidak dapat membentuk formasi gambar yang diinginkan maka permain dinyatakan kalah. Dan apabila pola gambar seimbang maka permainan dinyatakan drow atau seri. Permainan ini mengasah kemampuan berpikir sehingga para pemain harus melakukan tindakan yang baik dan memperhitungkan apa akibat dari tindakan yang dilakukan tersebut.
Menggunakan Heuristik di Permainan
Game yang penting tes-tempat tidur untuk algoritma heuristik. Dua-orang game yang lebih rumit dari teka-teki yang sederhana karena mereka melibatkan lawan tak terduga.
o Minimax Prosedur
The Game of Nim: Sejumlah token ditempatkan pada meja di antara dua lawan. Pada masing-masing gerakan pemain harus membagi tumpukan token menjadi dua tumpukan tak kosong dari berbagai ukuran. Jadi, 6 token dapat dibagi menjadi 5 dan 1, 4 dan 2, tetapi tidak 3 dan 3. Pemain pertama yang mampu bergerak kehilangan permainan.
Untuk sejumlah kecil token ruang pencarian dapat dicari secara mendalam. Gambar berikut memberikan ruang lengkap untuk permainan 7-token.
Dalam permainan dua-orang, Anda harus mengasumsikan bahwa lawan Anda memiliki pengetahuan yang sama yang Anda lakukan dan berlaku sebaik yang Anda lakukan. Jadi pada setiap tahap permainan Anda harus menganggap lawan membuat langkah terbaik yang tersedia. Ini adalah dasar dari prosedur minimax.
Dalam minimax, para pemain yang disebut sebagai MAX (pemain) dan MIN (lawan). Keduanya mencoba untuk memaksimalkan gerakan mereka. MAX pemain, mencoba untuk memaksimalkan nilainya. Dan MIN adalah lawan mencoba untuk meminimalkan skor MAX.
Prosedur Minimax pada Pencarian Ruang Lengkap
Label setiap tingkat dari ruang pencarian sesuai dengan yang bergerak itu di tingkat itu.
Mulai di node daun, setiap label simpul daun dengan 1 atau 0 tergantung pada apakah itu adalah kemenangan bagi MAX (1) atau MIN (0).
Merambat ke atas: jika negara induk MAX, memberikan MAX anak-anaknya.
Merambat ke atas: jika negara induk MIN, MIN memberikan anak-anaknya.
Pertimbangkan grafik minimax untuk Nim permainan. Nilai di negara masing-masing mewakili nilai negara terbaik yang pemain ini bisa berharap untuk mencapai. Nilai-nilai yang diperoleh digunakan untuk memilih di antara alternatif bergerak.
o Heuristik Minimax
Untuk permainan yang paling tidak mungkin untuk memperluas grafik untuk node daun. Sebaliknya strategi n-pindah melihat-depan adalah digunakan. Ruang negara diperluas ke tingkat n. Setiap node daun di subgraf ini diberikan nilai sesuai dengan fungsi evaluasi heuristik. Nilai kemudian disebarkan kembali ke simpul akar. Nilai disebarkan kembali mewakili nilai heuristik dari negara terbaik yang dapat dicapai dari simpul tersebut.
Contoh: Program catur Samuel menggunakan jumlah tertimbang sebagai fungsi evaluasi. Ini menggunakan algoritma pembelajaran sederhana untuk menyesuaikan bobot setelah menang dan kerugian, sehingga program perbaikan dari waktu ke waktu.
o Prosedur Alpha-Beta
Alpha-beta pruning adalah prosedur untuk mengurangi jumlah perhitungan dan mencari selama minimax. Minimax adalah pencarian dua-pass, satu lulus digunakan untuk menetapkan nilai-nilai heuristik ke node pada kedalaman ply dan yang kedua digunakan untuk menyebarkan nilai-nilai sampai pohon.
Alpha-beta hasil pencarian secara mendalam-pertama. Sebuah nilai alpha adalah nilai awal atau sementara terkait dengan node MAX. Karena MAX node diberi nilai maksimum antara anak-anak mereka, nilai alpha tidak dapat menurunkan, hanya bisa naik. Sebuah nilai beta adalah nilai awal atau sementara terkait dengan node MIN. Karena node MIN diberi nilai minimum antara anak-anak mereka, nilai beta tidak pernah dapat meningkatkan, hanya bisa turun.
Misalnya, alpha node MAX = 6. Kemudian cari tidak perlu mempertimbangkan setiap cabang yang berasal dari keturunan MIN yang memiliki nilai beta yang kurang-dari-atau-sama dengan 6. Jadi, jika Anda tahu bahwa node MAX memiliki alpha 6, dan Anda tahu bahwa salah satu keturunan MIN yang memiliki beta yang kurang dari atau sama dengan 6, Anda tidak perlu mencari lebih jauh di bawah simpul MIN. Ini disebut pemangkasan alpha.
Alasannya adalah bahwa tidak peduli apa yang terjadi di bawah simpul MIN, tidak dapat mengambil nilai yang lebih besar dari 6. Jadi nilainya tidak dapat diperbanyak sampai dengan (alpha) orangtua MAX nya.
Demikian pula, jika nilai beta node MIN itu = 6, anda tidak perlu mencari lebih jauh di bawah MAX keturunan yang telah memperoleh nilai alpha dari 6 atau lebih. Ini disebut pemangkasan beta.
Alasannya lagi adalah bahwa apa pun yang terjadi di bawah simpul MAX, tidak dapat mengambil nilai yang kurang dari 6. Jadi nilainya tidak dapat diperbanyak sampai dengan (beta) MIN orangtua nya.
Aturan untuk Alpha-beta Pemangkasan
Alpha Pemangkasan: pencarian dapat dihentikan di bawah setiap simpul MIN memiliki nilai beta kurang dari atau sama dengan nilai alpha dari setiap leluhur MAX nya.
Pemangkasan beta: Pencarian bisa dihentikan di bawah setiap simpul MAX memiliki nilai alpha lebih besar dari atau sama dengan nilai beta dari setiap leluhur MIN nya.
Sumber:
- http://vanzlife.blogspot.com/2017/11/kecerdasan-buatan-dan-permainan-ai-and.html
- http://stcahyani.blogspot.com/2017/11/kecerdasan-buatan-dan-permainan-ai-and.html
- https://adiazep.wordpress.com/2018/01/10/kecerdasan-buatan-permainan-ai-games/
- http://20bayuriyadi.blogspot.com/2017/11/kecerdasan-buatan-dan-permainan-ai-and.html

EmoticonEmoticon