Minggu, 25 November 2018

Kecerdasan Buatan dan Permainan (AI and Games)

Kecerdasan Buatan dan Permainan (AI and Games) 

9.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.
Tujuan dari kecerdasan buatan menurut Winston dan Prendergast (1984):
1.      Membuat mesin menjadi lebih pintar (tujuan utama)
2.      Memahami apa itu kecerdasan (tujuan ilmiah)
3.      Membuat mesin menjadi lebih bermanfaat (tujuan entrepreneurial)

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. 
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.
Terdapat beberapa tipe dalam game,antara lain : 

o   Informasi lengkap = suatu game dimana permain mengetahui semua langkah yang mungkin terjadi dari dirinya sendiri dan dari lawan dan hasil akhir dari permainan. Contoh game : catur dan tic tac toe
o   Informasi tak lengkap : game dimana pemain tidak tahu semua kemungkinan langkah lawan. Contoh game : Kartu Poker dan Brigde karena semua kartu tidak diketahui oleh para pemain.

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.

9.2. Mode Game AI

A.     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.

B.     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).

C.     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.

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
1.    Daerah pengambilan keputusan yang sbelumnya kompleks dan sangat global, dapat diubah menjadi lebih simpel dan spesifik.
2.    Eliminasi perhitungan-perhitungan yang tidak diperlukan, karena ketika menggunakan metode decision tree maka sample diuji hanya berdasarkan criteria atau kelas tertentu.
3.    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.
4.    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
1.  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.
2.    Pengakumulasian jumlah error dari setiap level dalam sebuah pohon keputusan yang besar.
3. 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
1.    Implementasinya mudah dan cepat
2.    Memudahkan proses debugging. Karena telah dipecah menjadi kepingan yang lebih kecil, proses debugging kalau terjadi behavoiur yang tidak semestinya, menjadi lebih mudah
3.    Proses komputasi yg minimal, karena sejatinya FSM hanyalah conditional statement yang dikemas dalam bentuk yang lebih elegan.
4.    Fleksibel, dapat dikombinasikan dengan teknik AI lain misalnya fuzzy logic dan neural network.

Kekurangan
1.    Behaviour dari agen mudah diprediksi, karena tidak ada searching dan atau learning di dalam agen tersebut
2.    Karena mudah diimplementasi, kadang programmer langsung tembak di eksekusi tanpa melakukan desain FSM terlbih dahulu. Biasanya akan terjadi FSM yang terfragmentasi
3.    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
1.    Availability-bertambah, intelligent tutor, intelligent dB, danger-reduced, performance
2.    multiple expertise, reability-bertambah, explanation steady, unemotional and complete response

Kekurangan
1.    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
1.    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).
2.    Set semua node “Belum terjamah” dan set node awal sebagai “Node keberangkatan”.
3.    Dari node keberangkatan, pertimbangkan node tetangga yang belum terjamah dan hitung jaraknya dari titik keberangkatan.
4.    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.
5.    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

a. 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).

b. 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).

c. 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).

d. 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).

e. 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).

9.6. Kecepatan dan Memori

Kebanyakan program AI menuntut memori yang besar dan kecepatan yang tinggi.


Senin, 19 November 2018

PEMBELAJAN (LEARNING)

PEMBELAJARAN (LEARNING)


Pembelajaran dari Pengamatan

Pembelajaran adalah proses interaksi peserta didik dengan pendidik dan sumber belajar pada suatu lingkungan belajar yang meliputi guru dan siswa yang saling bertukar informasi.

Pengamatan atau observasi adalah aktivitas terhadap suatu proses atau objek dengan maksud merasakan dan kemudian memahami pengetahuan dari sebuah fenomena berdasarkan pengetahuan dan gagasan yang sudah diketahui sebelumnya, untuk mendapatkan informasi-informasi yang dibutuhkan untuk melanjutkan suatu penelitian.

Metode Observasi ialah pengamatan langsung menggunakan alat indera atau alat bantu untuk penginderaan suatu subjek atau objek. Observasi juga merupakan basis sains yang dilakukan dengan menggunakan panca indera atau instrument sebagai alat bantu penginderaan ( Purnomo, 2008).

Tujuan pembelajaran dari pengamatan adalah untuk memperoleh data atau fakta, untuk melihat, mengamati dan menghayatinya secara langsung dan nyata mengenai objek tertentu dan untuk memperoleh kesimpulan dari hasil observasi yang dilakukan peneliti.

1. Bentuk / Metode Pembelajaran

Menurut Gagne, Wagner dan  Brigsa, yang dimaksud pembelajaran adalah serangakaian kegiatan yang dirancang untuk memungkinkan terjadinya proses belajar pada siswa. Sedangkan menurut Undang-undang No. 20 tahun 2003 tentang Sisdiknas, pembelajaran adalah proses interaksi peserta didik dengan pendidik dan sumber belajar pada suatu lingkungan belajar.

Jadi dapat disimpulkan bahwa yang dimaksud metode pembelajaran adalah cara atau jalan yang ditempuh oleh guru untuk menyampaikan materi pembelajaran sehingga tujuan pembelajaran dapat dicapai. Bisa pula diambil kesimpulan bahwa metode pembelajaran merupakan strategi pembelajaran yang dipakai oleh guru sebagai media untuk mencapai tujuan pembelajaran yang telah ditetapkan.

Bentuk Pembelajaran

·         Menumbuhkan motivasi belajar anak
Motivasi berkaitan erat dengan emosi, minat, dan kebutuhan anak didik. Upaya menumbuhkan motivasi intrinsik yang dilakukan guru adalah mendorong rasa ingin tahu, keinginan mencoba, dan sikap mandiri anak didik. Sedangkan bentuk motivasi ekstrinsik adalah dengan memberikan rangsangan berupa pemberian nilai tinggi atau hadiah bagi siswa berprestasi dan sebaliknya.
·         Mengajak anak didik beraktivitas
Adalah proses interaksi edukaktif melibatkan intelek-emosional anak didik untuk meningkatkan aktivitas sehingga motivasi akan meningkat. Bentuk pelaksanaanya adalah mengajak anak didik melakukan aktivitas atau bekerja di laboratorium, di kebun/lapangan sebagai bagian dari eksplorasi pengalaman, atau mengalami pengalaman yang sam sekali baru.
·         Mengajar dengan memperhatikan perbedaan individual
Proses kegiatan belajar mengajar dilakukan dengan memahami kondisi masing-masing anak didik. Tidak tepat jika guru menyamakan semua anak didik karena setiap anak didik mempunyai bakat berlainan dan mempunyai kecepatan belajar yang bervariasi. Seorang anak didik yang hasil belajarnya jelek dikatakan bodoh. Kemudian menyimpulkan semua anak didik yang hasil belajarnya jelek dikatakan bodoh. Kondisi demikian tidak dapat dijadikan ukuran, karena terdapat beberapa faktor penyebab anak memiliki hasil belajar buruk, antara lain; faktor kesehatan, kesempatan belajar dirumah tidak ada, sarana belajar kurang, dan sebagainya.
·         Mengajar dengan umpan balik
Bentuknya antara lain; umpan balik kemampuan prilaku anak didik (perubahan tigkah laku yang dapat dilihat anak didik lainnya, pendidik atau anak didik itu sendiri), umpan balik tentang daya serap sebagai pelajaran untuk diterapkan secara aktif. Pola prilaku yang kuat diperoleh melalui partisipasi dalam memainkan peran (role play).
·         Mengajar dengan pengalihan
Pengajaran yang mengalihkan (transfer) hasil belajar kedalam situasi-situasi nyata. Guru memilih metode simulasi (mengajak anak didik untuk melihat proses kegiatan seperti cara berwudlu dan sholat) dan metode proyek (memberikan kesempatan anak untuk menggunakan alam sekitar dan atau kegiatan sehari-hari untuk bertukar pikiran baik sesama kawan maupun guru)  untuk pengalihan pengajaran yang bukan hanya bersifat ceramah atau diskusi, tetapi mengedepankan situasi nyata.
·         Penyusunan pemahaman yang logis dan psikologis
Pengajaran dilakukan dengan memilih metode yang proporsional. Dalam kondisi tertentu guru tidak dapat meninggalkan metode ceramah maupun metode pemberian tugas kepada anak didik. Hal ini dilakukan sesuai dengan kondisi materi pelajaran.
Macam-macam metode pembelajaran

a. Metode Demonstrasi
Metode pembelajaran demonstrasi adalah metode yang efektif, karena membantu siswa dalam mencari tahu jawaban melalui usaha sendiri berdasarkan data dan fakta yang ada. Model pembelajaran dengan demonstrasi merupakan penyajian pelajaran lewat peragaan dan menunjukkan kepada siswa mengenai suatu hal, proses, atau benda tertentu, baik benda yang sebenarnya maupun hanya sekadar benda tiruan.

b. Metode Diskusi
Metode pembelajaran diskusi adalah interaksi sesama siswa dengan siswa atau siswa dengan guru dalam membahas materi pelajaran tertentu.

c. Metode Pembelajaran Simposium
Metode pembelajaran simposium merupakan cara mengajar dengan membahas suatu materi pelajaran atau masalah yang kemudian dilihat dari berbagai sudut pemikiran berdasarkan keahlian.

d. Diskusi Panel
Metode pembelajaran diskusi panel merupakan suatu pembahasan masalah yang dilakukan oleh beberapa siswa yang bertindak sebagai panelis, biasanya terdiri atas 4 – 5 orang di hadapan audiens. Berbeda dengan model diskusi lainnya, pada diskusi panel, audiens tidak terlibat dengan langsung, tetapi betugas meninjau panelis-panelis yang sedang melaksanakan diskusi.

e. Metode Simulasi
Sebagai metode pembelajaran, simulasi bisa diartikan sebagai cara menyajikan pengalaman belajar melalui penggunaan suasana dalam bentuk tiruan atau bukan sungguhan dengan tujuan memberi pemahaman mengenai teori, prinsip, atau keahlian tertentu.

f. Metode Tugas dan Resitasi
Metode pembelajaran dengan resitasi atau tugas biasanya dipakai bertujuan supaya siswa lebih mantap pada hasil belajar, disebabkan siswa mengerjakan latihan-latihan,

g. Metode Tanya Jawab
Metode tanya jawab adalah cara penyajian pelajaran dalam bentuk pertanyaan yang harus dijawab, terutama dari guru kepada sisiwa, namun dapat pula dari sisiwa kepada guru.

h. Metode Kerja Kelompok
Metode ini dilakuakan dengan cara membagi kelas menjadi beberapa kelompok, kemudian siswa diberi tugas untuk mencapai tujauan pelajaran.

2. Pembelajaran Induktif

Model pembelajaran induktif adalah sebuah pembelajaran yang bersifat langsung tapi sangat efektif untuk membantu siswa mengembangkan keterampilan berpikir tingkat tinggi dan keterampilan berpikir kritis.

Model ini dikembangkan atas dasar beberapa postulat sebagai berikut :
·         Kemampuan berpikir dapat diajarkan
·         Berpikir merupakan suatu transaksi aktif antara individu dengan data.
·         Proses berpikir merupakan suatu urutan tahapan yang beraturan (lawful).

Berpikir induktif melibatkan tiga tahapan yang dikembangkan tiga strategi cara mengajarkannya.
1. Konsep pembentukan (belajar konsep)
Tahap ini mencakup tiga langkah utama: item daftar (lembar, konsep), kelompok barang yang sama secara bersama-sama, beserta label tersebut (dengan nama konsep).
Langkah-langkah :
·         Membuat daftar konsep
·         Pengelompokkan konsep berdasarkan karakteristik yang sama
·         Pemberian label atau kategorisasi

2. Interpretasi data Strategi 
Keduanya merupakan cara mengajarkan bagaimana menginterpretasi dan menyimpulkan data. Sama halnya dengan strategi pertama (pembentukan konsep), cara ini dapat dilakukan dengan mengajukan pertanyaan-pertanyaan tertentu.
Langkah-langkah:
·         mengidentifikasi dimensi-dimensi danhubungan-hubungannya.
·         menjelaskan dimensi-dimensi danhubungan-hubungannya
·         Membuat kesimpulan

3. Penerapan prinsip-prinsip 
Strategi ini merupakan kelanjutan dari strategi pertama dan kedua. Setelah siswa dapat merumuskan suatu konsep, menginterpretasikan dan menyimpulkan data, selanjutnya mereka diharapkan dapat menerapkan suatu prinsip tertentu ke dalam suatu situasi permasalahan yang berbeda. Atau siswa diharapkan dapat menerapkan suatu prinsip untuk menjelaskan suatu fenomena baru.
Langkah-Langkah:
·         Membuat hipotesis, memprediksikonsekuensi
·         Menjelaskan teori yang mendukung hipotesis atau prediksi.
·         Menguji hipotesis/prediksi

3. Pohon Keputusan Pembelajaran

Metode pohon keputusan mengubah fakta yang sangat besar menjadi pohon keputusan yang merepresentasikan rule. Pohon keputusan adalah salah satu metode klasifikasi yang paling popular karena mudah untuk diinterpretasi oleh manusia. Konsep dari pohon keputusan adalah mengubah data menjadi pohon keputusan dan aturan-aturan keputusan.

Konsep Pohon Keputusan

Data dalam pohon keputusan biasanya dinyatakan dalam bentuk tabel dengan atribut dan record. Atribut menyatakan suatu parameter yang dibuat sebagai kriteria dalam pembentukan tree.


Konsep Data dalam Pohon Keputusan

Proses pada pohon keputusan adalah mengubah bentuk data (tabel) menjadi model pohon, mengubah model pohon menjadi rule, dan menyederhanakan rule. Manfaat utama dari penggunaan pohon keputusan adalah kemampuannya untuk membreak down proses pengambilan keputusan yang kompleks menjadi lebih simpel sehingga pengambil keputusan akan lebih menginterpretasikan solusi dari permasalahan. Pohon Keputusan juga berguna untuk mengeksplorasi data, menemukan hubungan tersembunyi antara sejumlah calon variabel input dengan sebuah variabel target.
Pohon keputusan merupakan himpunan aturan IF...THEN. Setiap path dalam tree dihubungkan dengan sebuah aturan, di mana premis terdiri atas sekumpulan node-node yang ditemui, dan kesimpulan dari aturam terdiri atas kelas yang terhubung dengan leaf dari path.

Konsep Dasar Pohon Keputusan

Bagian awal dari pohon keputusan ini adalah titik akar (root), sedangkan setiap cabang dari pohon keputusan merupakan pembagian berdasarkan hasil uji, dan titik akhir (leaf) merupakan pembagian kelas yang dihasilkan.
Pohon keputusan mempunyai 3 tipe simpul yaitu:
1. Simpul akar, dimana tidak memiliki cabang yang masuk dan memiliki cabang lebih dari satu, terkadang tidak memiliki cabang sama sekali. Simpul ini biasanya berupa atribut yang paling memiliki pengaruh terbesar pada suatu kelas tertentu.
2. Simpul internal, dimana hanya memiliki 1 cabang yang masuk, dan memiliki lebih dari 1 cabang yang keluar.
3. Simpul daun, atau simpul akhir dimana hanya memiliki 1 cabang yang masuk, dan tidak memiliki cabang sama sekali dan menandai bahwa simpul tersebut merupakan label kelas.

Tahap awal dilakukan pengujian simpul akar, jika pada pengujian simpul akar menghasilkan sesuatu maka proses pengujian juga dilakukan pada setiap cabang berdasarkan hasil dari pengujian. Hal ini berlaku juga untuk simpul internal dimana suatu kondisi pengujian baru akan diterapkan pada simpul daun. Pada umumnya proses dari sistem pohon keputusan adalah mengadopsi strategi pencarian top-down untuk solusi ruang pencariannya. Pada proses mengklasifikasikan sampel yang tidak diketahui, nilai atribut akan diuji pada pohon keputusan dengan cara melacak jalur dari titik akar sampai titik akhir, kemudian akan diprediksikan kelas yang ditempati sampel baru tersebut.
Pohon keputusan banyak digunakan dalam proses data mining karena memiliki beberapa kelebihan, yaitu:
·         Tidak memerlukan biaya yang mahal saat membangun algoritma.
·         Mudah untuk diinterpetasikan.
·         Mudah mengintegrasikan dengan sistem basis data.
·         Memiliki nilai ketelitian yang lebih baik.
·         Dapat menemukan hubungan tak terduga dan suatu data.
·         Dapat menggunakan data pasti/mutlak atau data kontinu.
·         Mengakomodasi data yang hilang.

 4. Pembelajaran Ensemble

Kenyataan bahwa pendekatan ensemble learning mampu memberikan solusi prediksi yang lebih akurat daripada model-model tunggal dapat ditemui dari berbagai paper di jurnal ilmiah. Teknik-teknik ensemble yang mengandalkan variasi dari pendekatan random forest dan boosting mampu memberikan prediksi dengan akurasi yang sangat baik. Random forest bekerja dengan membuat model-model penyusun ensemble sedemikian rupa sehingga berbagai kemungkinan dapat terakomodir secara maksimal, sedangkan boosting bekerja secara iterative sehingga kasus-kasus yang tidak mudah diprediksi menjadi bukan masalah lagi.
Kemampuan pendekatan ensemble ini tidak hanya tertuang pada berbagai paper ilmiah, namun juga dapat dilihat pada penyelesaian kasus-kasus aplikatif seperti yang dapat dilihat pada kompetisi data science Kaggl. Kompetisi ini terbuka bagi pegiat data science dan data mining untuk memberikan solusi prediktif dari kasus-kasus yang disampaikan oleh banyak perusahaan besar berskala internasional.
Setiap tim atau individu dipersilakan mengembangkan solusi dan menyajikan prediksinya untuk kemudian dinilai. Mereka yang memberikan prediksi dengan akurasi yang paling tinggi yang dinyatakan sebagai pemenang. Peringkat tiga besar dalam lima tahun terakhir dari kompetisi ini didominasi oleh mereka yang menggunakan pendekatan ensemble yang digabungkan dengan berbagai macam algoritma dasar.
Sumber: Prof. Dr. Hamalik, Oemar 2001. Proses Belajar Mengajar. Bumi Aksara.Jakarta