Algoritma Genetika: Pengertian dan Strukturnya




Algoritma Genetika

Algoritma Genetika – Algoritma genetika adalah salah satu algoritma yang biasa digunakan sebagai metode dalam pembuatan aplikasi. Algoritma ini mampu memberikan solusi yang optimal sehingga dapat memecahkan masalah dengan baik.

Banyak aplikasi yang dapat dibuat dengan menerapkan metode ini, seperti sistem penunjang keputusan, bisnis, penjadwalan dan lain sebagainya. Supaya kita dapat lebih mudah memahaminya, mari kita simak pembahasan algoritma genetika secara lengkap berikut ini.




Pengertian Algoritma Genetika

Algoritma genetika adalah sebuah teknik pencarian didalam ilmu komputer untuk mencari penyelesaian perkiraan, optimasi dan permasalahan pencarian. Selain itu, algoritma ini merupakan jenis khusus dari algoritma evolusioner.

Dalam pengaplikasiannya, algoritma genetika menggunakan teknik mutasi, warisan, rekombinasi (crossover) dan seleksi alam. Oleh sebab itu, algoritma ini dapat diterapkan pada aplikasi bisnis, bidang keilmuan dan lain sebagainya.

Sejarah Algoritma Genetika

Pada tahun 1970 di Amerika Serikat, algoritma genetika berhasil dikembangkan oleh John Holland. Dibantu murid dan rekan kerjanya, John Holland mampu menghasilkan algoritma komputer ini dan menerbitkan buku yang berjudul “Adaption in Natural & Artificial Systems”.

Algoritma genetika ini khusus diterapkan untuk simulasi komputer berdasarkan kromosom dan individualnya. Kromosom mempunyai arti populasi yang bereprentasi abstrak, sedangkan individual berarti calon solusinya.

Penerapan algoritma ini dengan mengoptimasi masalah akan dipecahkan dan dikembangkan dari kromosom dan individual untuk mengembangkan solusi yang terbaik.

Struktur Algoritma Genetika

Algoritma genetika tentunya mempunyai struktur yang berbeda dari algoritma lainnya, berikut pembahasannya:

1.    Mengambil Populasi Awal

Pertama populasi awal diambil secara acak untuk mendapatkan solusi awal. Populasi awal tersebut terdiri dari sejumlah kromosom yang menjabarkan beberapa solusi yang dapat menyelesaikan permasalahan tersebut.

2.    Membuat Generasi Baru

Kedua harus membentuk generasi baru dengan menggunakan 3 operator dari algoritma genetika, yaitu seleksi atau reproduksi, crossover dan mutasi. Proses ini harus dilakukan berulang kali supaya mendapatkan jumlah kromosom yang cukup untuk membentuk generasi baru.

3.    Evaluasi Solusi

Proses terakhir ialah mengevaluasi semua populasi dengan menghitung nilai fitnes setiap kromosom sampai kriterianya terpenuhi. Namun jika kriteria belum terpenuhi maka generasi akan terbentuk lagi dan terus mengulang seperti pada proses kedua.

Biasanya ada beberapa cara untuk memenuhi kriterianya, antara lain:
  1. Berhenti di generasi baru.
  2. Berhenti setelah mendapatkan beberapa nilai fitnes generasi tertinggi secara berturut-turut.
  3. Berhenti bila dalam pencarian generasi tidak mendapatkan nilai fitnes yang lebih tinggi lagi.

Siklus Algoritma Genetika

Siklus algoritma genetika terbagi menjadi dua, yaitu sebelum revisi dan sesudah revisi. Berikut ini adalah gambaran siklus algoritma genetika:

1.    Siklus Algoritma Genetika Belum Revisi

Siklus Algoritma Genetika
Sumber: Mangtoypedia.com

2.    Siklus Algoritma Genetika Sudah Revisi


Siklus Algoritma Genetika
Sumber: Mangtoypedia.com

Pengaplikasian Algoritma Genetika

Berdasarkan pembahasan sebelumnya algoritma ini sangat cocok diaplikasikan kedalam beberapa bidang aplikasi, diantaranya:
  1. Algoritma genetika seringkali digunakan untuk menyelesaikan masalah dengan menggunakan multi kriteria.
  2. Algoritma genetika sangat cocok digunakan untuk menyelesaikan permasalahan optimasi yang rumit hanya dengan menggunakan metode sederhana..
  3. Algoritma ini banyak digunakan pada aplikasi binis, keilmuan dan teknik komputer ataupun industry.

Komponen Algoritma Genetika

Algoritma genetika mempunyai 5 komponen utama dalam penyelesaian masalahnya, diantaranya:

1.    Teknik Pengkodean

Teknik pengkodean adalah suatu cara yang dilakukan dengan memberikan kode pada gen dari kromosom. Pengkodean gen dapat menggunakan data berupa bit, elemen permutasi, bilangan real, daftar aturan, elemen program dan lainnya.

Selanjutnya pengkodean tersebut akan di impelemtasikan pada operator genetika (reproduksi, crossover dan mutasi). Berikut ini contoh untuk melakukan pengkodean pada gen kromosom:
  • Bilangan real seperti 77.34, 67.98, 65.65 dan sebagainya.
  • Daftar aturan seperti P1, P2, P3, P4 dan sebagainya.

2.    Mengambil Populasi Awal

Mengambil populasi awal merupakan sebuah proses yang tujuannya untuk mendapatkan solusi-solusi baru. Ada beberapa cara untuk mengambil populasi awal, diantaranya:
  1. Permutasi Gen
Cara ini dapat digunakan untuk mengambil populasi awal dengan menggunakan permutasi Josephus didalam permasalahan kombinatorial.

Kita bisa berumpama dengan menentukan titik awal dan selangnya dari 1 sampai 9. Selanjutnya kita coba piih titik awalnya 7 dan selangnya 2.

Caranya Titik awal + selang = hasil  ( 7 + 2 = 9)

Lakukan cara tersebut sampai berulang-ulang sehingga menghasilkan satu lintasan. Hasil permutasi ini ialah 9-2-4-6-8-1-3-5-7.

3.    Seleksi Populasi

Proses ini bertujuan untuk memilih individu yang akan diproses untuk di crossover ataupun dimutasi sehingga mendapatkan nilai yang baik. Semakin tinggi nilai fitnes maka akan besar kemungkinan individu tersebut terpilih.

4.    Crossover

Crossover merupakan salah satu operator dari algoritma genetika yang mengambil dua induk untuk membuat kromosom baru. Berikut ini contoh flowchart dari crossover:
Crossover Algoritma Genetika
Sumber: Mangtoypedia.com


5.    
Mutasi

Mutasi adalah salah satu operator yang bertujuan untuk menggantikan gen yang hilang akibat proses seleksi. Adapun flowchart dari mutasi, yaitu:
Mutasi algoritma genetika
Sumber: Mangtoypedia.com




Kesimpulan

Gimana sudah paham ya arti dari algoritma genetika? Namun, supaya kita menjadi lebih mengenal algoritma ini mangtoy sudah merangkum beberapa point penting.

Pertama algoritma genetika merupakan sebuah algoritma yang dibuat untuk menyelesaikan suatu masalah dengan mencari solusi melalui pencarian acak. Point kedua yaitu pencarian berdasarkan proses-proses dari teori genetika yang menggunakan fikiran manusia. Point ini bermaksud untuk mencari solusi yang tepat dan optimal.

Demikianlah pembahasan mengenai pengertian dan struktur algoritma genetika secara lengkap. Semoga informasi yang sudah disajikan dapat menjadi ilmu yang bermanfaat untuk kita semua. Terimakasih.









Seorang pria introvert yang suka banget ilmu teknologi dan senang menggali informasi.

Posting Komentar