Implementasi Algoritma Genetika Pada Perhitungan Perkalian Berbasis Metode Trachtenberg Sendi Novianto
Abstract : The calculation of multiplication is one part of the world of mathematics, theoretical calculations have been introduced lesson to us since we are at primary school level. At the elementary school level, we are taught to count by counting multiplicative decrease, which is our method requires considerable time to be able to solve a problem. Trachtenberg method is one method that is useful to be able to perform calculations quickly and accurately, especially on the computation of multiplication. This proposal discusses the research related to multiplicative form of simulation calculations based on the Trachtenberg method using genetic algorithms. Hopefully, by the finding of this research, there can be other patterns of multiplication calculation process is faster, more accurate and also easy to understand . Keywords : The calculation of multiplication, metode trachtenberg, berhitung cepat, jakow trachtenberg, algoritma genetika
PENDAHULUAN Matematika adalah salah satu dari sekian banyak mata pelajaran yang diajarkan pada tingkat dasar pendidikan atau bahkan juga saat ini sudah diajarkan pada tingkat taman kanak-kanak. Pada era perkembagan teknologi, ilmu matematika sangat diperlukan guna mendukung perkembangan tersebut. Rendahnya minat anak-anak [4] pendidikan tingkat dasar terhadap mata pelajaran matematika selama ini menandakan bahwa pelajaran matematika kurang diminati dan sering kali dianggap sulit. Metode Trachtenberg adalah salah satu metode yang dapat digunakan untuk melakukan perhitungan perkalian dengan cepat dan akurat [5]. Algoritma genetika adalah salah satu cara dari kecerdasan buatan computer yang berguna untuk memecahkan suatu permasalahan yang ada, dengan dasar hal tersebut, penulis mencoba untuk menggunakan algoritma genetika untuk mencari susunan pola dari perhitungan metode Trachtenberg.
Sendi Novianto adalah Dosen Fakultas Ilmu Komputer UDINUS Semarang 53
Techno.Com, Vol. 9 No. 2, Mei 2010
54
METODE TRACHTENBERG Metode Trachtenberg adalah suatu metode perhitungan matematika yang ditemukan oleh Jakow Trachtenberg [2]. Untuk mempelajari perkaliannya, metode ini dibagi menjadi beberapa tahap yaitu [1] : Perkalian Sebelas Aturan dari perkalian sebelas adalah : a. Angka Terakhir dari bilangan yang dikalikan ditulis sebagai angka paling kanan dari jawaban. b. Tiap angka selanjutnya ditambahkan pada angka disebelah kanan itu. c. Angka pertama bilangan yang dikalikan menjadi angka paling kiri pada jawabannya. Contoh : 6 3 3 x 1 1 Langkah 1 : 6 3 3 x 1 1 3 (aturan pertama) Langkah 2 : 6 3 3 x 1 1 63
(aturan kedua 3 + 3 = 6)
Langkah 3 : 6 3 3 x 1 1 9 6 3 (aturan kedua 6 + 3 = 9) Langkah 4 : 6 3 3 x 1 1 6 9 6 3 (aturan ketiga) Perkalian Sembilan Aturan dari perkalian sembilan adalah : a. Kurangkan angka paling kanan dari sepuluh, ini memberikan angka paling kanan jawaban. b. Ambil tiap angka berikutnya secara berurutan sampai yang terakhir, kurangkan dari sembilan dan tambahkan tetangganya. c. Pada langkah terakhir, bila anda sampai pada 0 (yang ditambahkan di depan bilangannya) kurangkan satu dari tetangganya dan gunakan hasilnya sebagai angka paling kiri pada jawabannya. Contoh : 8 7 6 9 x 9 Langkah 1 : 8 7 6 9 x 9 1 (aturan pertama 10 – 9 = 1) Langkah 2 : 8 7 6 9 x 9
Implementasi Algoritma Genetika (Novianto)
55
*2 1 (aturan kedua 9 – 6 + 9 = 12) Langkah 3 : 8 7 6 9 x 9 9 2 1 (aturan kedua 9 – 7 + 6 + 1 simpanan=9) Langkah 4 : 8 7 6 9 x 9 8 9 2 1 (aturan kedua 9 – 8 + 7 = 8) Langkah 5 : 8 7 6 9 x 9 7 8 9 2 1 (aturan ketiga 8 – 1 = 7)
Perkalian Delapan Aturan dari perkalian delapan adalah : a. Angka paling kanan kurangkan dari sepuluh dan kalikan dua. b. Angka ditengah, kurangkan dari sembilan dan hasilnya kalikan dua yang kemudian ditambahkan dengan tetangganya. c. Angka paling kiri, kurangkan dua dari angka bilangan paling kiri. Contoh : 7 8 9 x 8 Langkah 1 : 7 8 9 x 8 2 (10 – 9 x 2 = 2) Langkah 2 : 7 8 9 x 8 (9 – 8) x 2 + 9 = 11
*1 2
Langkah 3 : 7 8 9 x 8 (9 – 7 = 2 x 2 = 4 + 8 + 1 = 13)
*312
Langkah 4 : 7 8 9 x 8 6 3 1 2 (7 – 2 + 1 = 6) Perkalian Tujuh Aturan dari perkalian tujuh adalah : a. Kalikan angkanya dengan 2 dan tambahkan setengah tetangganya, tambahkan lima jika angkanya ganjil. Contoh : 4 2 4 2 x 7 Langkah 1 : 4 2 4 2 x 7 4 (lipat duakan angka 2) Langkah 2 : 4 2 4 2 x 7
Techno.Com, Vol. 9 No. 2, Mei 2010
56
9 4 (lipat duakan 4, ditambah ½ tetangganya) Langkah 3 : 4 2 4 2 x 7 694
(lipat duakan 2, ditambah ½ tetangganya)
Langkah 4 : 4 2 4 2 x 7 9694
(lipat duakan 4, ditambah ½ tetangga)
Langkah 5 : 4 2 4 2 x 7 29694
(kelipatan 2 dari 0 = 0 + ½ 4 = 2)
Perkalian Enam Aturan dari perkalian enam adalah : a. Kepada setiap angka tambahkan setengah dari tetangganya di sebelah kanan. b. Jika angkanya ganjil maka ditambahkan dengan lima. Contoh : 8 x 6 Langkah 1 : 8 x 6 8 (tidak ada tetangganya, 8 + ½ x 0 = 8) Langkah 2 : 8 x 6 48
(0 + ½ x 8 = 4)
Perkalian Lima Aturan dari perkalian lima adalah : a. kepada setiap angka tambahkan setengah dari tetangganya di sebelah kanan. b. Jika angkanya ganjil maka ditambahkan dengan lima. Contoh : 4 2 6 x 5 Langkah 1 : 4 2 6 x 5 0 (lihat angka setelah 6 adalah 0 x ½ = 0) Langkah 2 : 4 2 6 x 5 3 0 ( ½ x 6 = 3) Langkah 3 : 4 2 6 x 5 1 3 0 ( ½ x 2 = 1) Langkah 4 : 4 2 6 x 5
Implementasi Algoritma Genetika (Novianto)
57
2 1 3 0 ( ½ x 4 = 2)
Perkalian Empat Aturan dari perkalian empat adalah : a. Kurangkan angka paling kanan dari sepuluh, jika angkanya ganjil maka ditambahkan dengan lima. b. Kurangkan angka-angka berikutnya dari sembilan, tambahkan lima jika angkanya ganjil, lalu tambahkan dengan setengah tetangganya. c. Dibawah angka nol di depan bilangannya dituliskan setengah dari tetangga angka nol tersebut dikurangi satu. Contoh : 2 0 6 8 4 x 4 Langkah 1 : 2 0 6 8 4 x 4 6 ( 10 – 4 = 6) Langkah 2 : 2 0 6 8 4 x 4 3 6 (9 – 8) + ½ x 4 = 3 Langkah 3 : 2 0 6 8 4 x 4 7 3 6 (9 – 6) + ½ x 8 = 7 Langkah 4 : 2 0 6 8 4 x 4 *2 7 3 6 (9 – 0) + ½ x 6 = *2 Langkah 5 : 2 0 6 8 4 x 4 8 2 7 3 6 (9 – 2) + ½ x 0 = 7 + 1 = 8 Langkah 6 : 2 0 6 8 4 x 4 0 8 2 7 3 6 ( ½ x 2 – 1 = 0)
Perkalian Tiga Aturan dari perkalian dengan tiga adalah : a. Angka pertama kurangkan dari sepuluh dan kalikan dua, tambahkan lima jika angkanya ganjil. b. Angka tengah, kurangkan dari sembilan lalu kalikan dua dan tambahkan setengah dari tetangganya, tambahkan lima jika angkanya ganjil. c. Angka kiri, dibagi dua lalu dikurangi dua. Contoh : 2 5 8 8 x 3 Langkah 1 : 2 5 8 8 x 3
Techno.Com, Vol. 9 No. 2, Mei 2010
58
4 (10 – 8) x 2 = 4 Langkah 2 : 2 5 8 8 x 3 6 4 (9 – 8) x 2 + ½ 8 = 6 Langkah 3 : 2 5 8 8 x 3 * 7 6 4 (9 – 5) x 2 + 5 + ½ 8 = * 7 Langkah 4 : 2 5 8 8 x 3 * 7 7 6 4 (9 – 2) x 2 + ½ 5 + 1 = * 7 Langkah 5 : 2 5 8 8 x 3 0 7 7 6 4 ( ½ x 2 + (1-2) = 0)
Algoritma Genetika Algoritma genetika adalah suatu algoritma pencarian yang bersifat stokastik, berbasis pada mekanisme dari seleksi alam [3] dan genetika. Algoritma genetika sangat tepat digunakan untuk penyelesaian masalah optimasi yang kompleks dan sukar jika diselesaikan dengan menggunakan metode yang konvensional. Suatu algoritma genetika yang sederhana umumnya terdiri dari tiga operator yaitu operator reproduksi, operator crossover dan operator mutasi. Struktur umum dari suatu algoritma genetika dapat didefinisikan dengan langkah-langkah sebagai berikut : a. Membangkitkan populasi awal Populasi awal ini dibangkitkan secara random, sehingga didapatkan solusi awal. Populasi itu sendiri terdiri dari sejumlah kromosom yang merepresentasikan solusi yang diinginkan. b. Membentuk generasi baru Dalam membentuk generasi, digunakan tiga operator yang telah disebutkan diatas, yaitu operator reproduksi/seleksi, crossover dan mutasi. Proses ini dilakukan berulang-ulang sehingga didapatkan jumlah kromosom yang cukup untuk membentuk generasi baru dimana generasi baru ini merupakan representasi dari solusi baru. c. Evaluasi solusi Proses ini akan mengevaluasi setiap populasi dengan menghitung nilai fitness setiap kromosom dan mengevaluasinya sampai terpenuhi kriteria berhenti. Bila kriteria berhenti belum terpenuhi maka akan dibentuk lagi generasi baru dengan mengulangi langkah 2. Beberapa kriteria berhenti yang sering digunakan antara lain : Berhenti pada generasi tertentu Berhenti setelah dalam beberapa generasi berturut-turut didapatkan nilai fitness tertinggi tidak berubah. Berhenti bila dalam n generasi berikut tidak didapatkan nilai fitness yang lebih tinggi.
Implementasi Algoritma Genetika (Novianto)
59
Sebelum algoritma genetika dilakukan, ada dua hal penting yang harus dilakukan, yaitu pendefinisian kromosom dan fungsi fitness atau fungsi obyektif. Dua hal ini juga memegang peranan penting dalam genetika untuk menyelesaikan suatu masalah.
Gambar 1. Blok Diagram Algoritma Genetika
Gambar 2. Mesin Roulete
Techno.Com, Vol. 9 No. 2, Mei 2010
60
Gambar 3. Blok Diagram Cross Over
PEMBAHASAN Rancangan Penelitian Dari algoritma genetika diatas, maka penetepan kromosom untuk permasalahan perkalian, digunakan model string bit dengan panjang bit sebanyak 4 buah. Bit tersebut direpresentasikan sebagai berikut : 0 : 0000 1 : 0001 2 : 0010 3 : 0011 4 : 0100 5 : 0101 6 : 0110 7 : 0111
Implementasi Algoritma Genetika (Novianto)
61
8 : 1000 9 : 1001 + : 1010 - : 1011 * : 1100 / : 1101
Sedangkan sisa kromosom yang ada, yaitu 1110 dan 1111 tidak digunakan. Setelah bentuk model dari kromosom yang akan digunakan telah diketahui, maka saatnya untuk memasuki langkah penggunaan algoritma genetika yaitu : a. Membangkitkan populasi awal Contoh hasil populasi awal secara acak 0010001010101110101101110010 setelah di parsing dan dipisahkan menjadi 0010 0010 1010 1110 1011 0111 0010 lalu hasil dari parsing tersebut di dekodekan jadi 2
2
+
n/a
-
7
2
setelah itu lalu memasuki tahap aturan pembacaan dekoder yaitu mengikuti format : angka -> operator -> angka -> operator ..... sehingga dari format diatas menghasilkan formasi : 2 + 7 b. Membentuk generasi baru Pembentukan generasi baru dapat dilakukan dengan cara Cross Over, sebagai contoh jika terdapat parent dengan susunan kromosom sebagai berikut : 10001001110010010 01010001001000011 lalu pilih posisi acak semisal 9, kemudian balik semua nilai bit tersebut ke lawannya, sehingga menjadi: 10001001101000011 01010001010010010
Techno.Com, Vol. 9 No. 2, Mei 2010
62
c. Evaluasi Solusi Proses ini akan mengevaluasi setiap populasi dengan menghitung nilai fitness setiap kromosom dan mengevaluasinya sampai terpenuhi kriteria berhenti. Bila kriteria berhenti belum terpenuhi maka akan dibentuk lagi generasi baru dengan mengulangi langkah 2. Beberapa kriteria berhenti yang sering digunakan antara lain : Berhenti pada generasi tertentu Berhenti setelah dalam beberapa generasi berturut-turut didapatkan nilai fitness tertinggi tidak berubah. Berhenti bila dalam n generasi berikut tidak didapatkan nilai fitness yang lebih tinggi.
KESIMPULAN Pada penelitian ini nantinya diharapkan dapat mengetahui apakah metode Trachtenberg sudah optimal jika dipandang dari sisi algoritma genetika, atau kemungkinan penemuan pola baru dalam perkalian yang lebih mudah untuk dipahami dan dimengerti jika dibandingkan dengan metode Trachtenberg.
DAFTAR PUSTAKA [1]. [2]. [3]. [4]. [5].
Susmiyanti, S.Pd, dkk, Matematika SD Kelas V, Pemkot Semarang, PT. Mascom Graphy Cutler, Ann and McShane, Rudolph, "The Trachtenberg Speed System of Basic Mathematics ". 1960 Dani, S.G. S.G. Dani , "Vedic Maths' : myths and facts". 1993 AIMS. "Stacking the facts". Education Foundation. 2002 Giri, Swami Sarveshwarananda." Yoga and Meditation for Kids". 2006