6.1 Introduction
6.2 Comparison of GP with Other Approaches
6.3 Primitives of Genetic Programming
6.4 Attributes in Genetic Programming
6.5 Steps of Genetic Programming
6.6 Characteristics of Genetic Programming
6.7 Applications of Genetic Programming
6.8 Haploid Genetic Programming with Dominance
Genetic Programming
6.1 Introduction
Genetik Pemrograman mencapai tujuan pemrograman otomatis ini (juga terkadang disebut sintesis program atau induksi program) dengan membiakkan populasi secara genetik program komputer menggunakan prinsip seleksi alam Darwin dan operasi yang diilhami secara biologis.
6.2 Comparison of GP with Other Approaches
Pemrograman genetika juga berbeda dari semua pendekatan lain terhadap kecerdasan buatan, pembelajaran mesin, jaringan saraf, sistem adaptif, pembelajaran penguatan, atau logika otomatis dalam semua (atau sebagian besar) dari tujuh cara berikut:
(2) Peran transformasi point-to-point dalam pencarian
(3) Peran mendaki bukit dalam pencarian
(4) Peran determinisme dalam pencarian
(5) Peran basis pengetahuan eksplisit:
(6) Peran logika formal dalam pencarian
(7) Dasar-dasar teknik
6.3 Primitives of Genetic Programming
• Reproduksi: memilih seseorang dari dalam populasi saat ini disalin tepat ke generasi berikutnya.
• Crossover: meniru rekombinasi seksual di alam, di mana dua solusi orang tua dipilih dan bagian dari subtree mereka ditukar dan karena masing-masing fungsi menunjukkan "penutupan".
• Mutasi: menyebabkan perubahan acak pada individu sebelum diperkenalkan populasi selanjutnya.
6.3.2 Generational Genetic Programming
GP telah mengembangkan dua pendekatan utama untuk menangani masalah generasinya;
keadaan generasi dan stabil. Dalam GP generasi, ada generasi yang jelas dan berbeda, dengan setiap generasi diwakili oleh populasi yang lengkap individu.
• Crossover: meniru rekombinasi seksual di alam, di mana dua solusi orang tua dipilih dan bagian dari subtree mereka ditukar dan karena masing-masing fungsi menunjukkan "penutupan".
• Mutasi: menyebabkan perubahan acak pada individu sebelum diperkenalkan populasi selanjutnya.
GP telah mengembangkan dua pendekatan utama untuk menangani masalah generasinya;
keadaan generasi dan stabil. Dalam GP generasi, ada generasi yang jelas dan berbeda, dengan setiap generasi diwakili oleh populasi yang lengkap individu.
Primitif GP, fungsi dan terminal node, harus dirakit menjadi a struktur sebelum mereka dapat dieksekusi. Ada tiga jenis struktur utama: pohon, linier dan grafik.
6.3.4 Representation of Genetic Programming
1) Biological Representations
Biologi memang membedakan antara representasi variasional dan generatif. Mereka disebut, masing-masing, genetik dan fenotipik. Representasi genetik, dari sudut pandang reduksionis, adalah urutan linier, didistribusikan secara spasial, yang diwariskan atribut.
2) Biomimetic Representations
Representasi biologis memiliki sejumlah kualitas yang mungkin berguna untuk, tetapi tidak biasanya ditemukan, dalam representasi pemrograman genetik.
3) Enzyme Genetic Programming Representation
Gambar 6.1 menunjukkan hubungan antara representasi enzim GP. Selama evolusi, sirkuit dikodekan sebagai urutan linear dari "gen"; dimana masing-masing gen menggambarkan preferensi input, spesifisitas, gerbang logika tertentu atau terminal keluaran.
6.4 Attributes in Genetic Programming
Pemrograman genetika memiliki 16 atribut dari apa yang kadang-kadang disebut pemrograman otomatis atau sintesis program atau induksi program).
1) Dimulai dengan "Apa yang perlu dilakukan".
2) Memberitahu kami "Bagaimana melakukannya.
6.5.1 Preparatory Steps of Genetic Programming
3) Menghasilkan program komputer.
4) Penentuan ukuran program secara otomatis
5) Penggunaan kembali kode
6) Penggunaan kembali yang diparameterisasi
7) Penyimpanan internal
8) Iterasi, loop, dan rekursi
9) Pengorganisasian hierarki
10) Penentuan arsitektur program secara otomatis
11) Berbagai konstruksi pemrograman
12) Didefinisikan dengan baik
13) Bebas masalah
14) Penerapan yang luas
15) Skalabilitas
16) Bersaing dengan hasil yang diproduksi manusia
6.5 Steps of Genetic Programming
(1) himpunan terminal (mis., Variabel bebas masalah, fungsi zeroargument, dan konstanta acak) untuk setiap cabang yang akan dikembangkan program,
(2) serangkaian fungsi primitif untuk setiap cabang dari program yang akan dikembangkan,
(3) ukuran kebugaran (untuk mengukur kebugaran individu dalam populasi secara eksplisit atau implisit),
(4) parameter tertentu untuk mengendalikan proses, dan
(5) kriteria terminasi dan metode untuk menentukan hasil Runing
(3) ukuran kebugaran (untuk mengukur kebugaran individu dalam populasi secara eksplisit atau implisit),
(4) parameter tertentu untuk mengendalikan proses, dan
(5) kriteria terminasi dan metode untuk menentukan hasil Runing
1) Pembuatan Populasi Awal Program Komputer : Pemrograman genetika dimulai dengan aliran primordial ribuan program komputer yang dibuat secara acak.
2) Fitness Function : Konsep pemrograman genetik yang paling sulit dan paling penting adalah kebugaran fungsi.
3) Functions and Terminals : Set terminal dan fungsi juga merupakan komponen penting dari pemrograman genetika. Set terminal dan fungsi adalah alfabet program yang akan dibuat.
3) Functions and Terminals : Set terminal dan fungsi juga merupakan komponen penting dari pemrograman genetika. Set terminal dan fungsi adalah alfabet program yang akan dibuat.
4) Crossover Operation : Ada dua operasi utama untuk memodifikasi struktur dalam pemrograman genetik. Itu yang paling penting adalah operasi crossover.
5) Mutation : Mutasi adalah fitur penting lain dari pemrograman genetika. Ada dua jenis mutasi.
Gambar 6.5 di bawah ini adalah bagan alur yang menunjukkan langkah-langkah eksekusi dari menjalankan genetik pemrograman.
6.6.1 What We Mean by “Human-Competitive”
Pada gambar 6.6 Operasi crossover untuk pemrograman genetik. Pilihan tebal pada kedua orang tua adalah ditukar untuk membuat keturunan atau anak-anak. (Anak di sebelah kanan adalah representasi pohon parse untuk persamaan kuadrat.
Tujuan dari bidang kecerdasan buatan dan pembelajaran mesin adalah untuk membuat komputer secara otomatis menghasilkan hasil kompetitif manusia dengan rasio AI yang tinggi— tidak membuat manusia menghasilkan hasil kompetitif manusia sendiri.
Setelah generalitas suatu metode ditetapkan, “Rutinitas” berarti bahwa usaha manusia yang relatif sedikit diperlukan untuk mendapatkan metode tersebut untuk berhasil menangani masalah baru dalam domain tertentu dan berhasil menangani masalah baru dari domain yang berbeda.
6.6.4 What We Mean by “Machine Intelligence”
Istilah "pembelajaran mesin" adalah hari ini terutama terkait dengan upaya untuk mendapatkan komputer untuk memecahkan masalah itu gunakan metodologi tertentu yang kecil dan dipilih secara sewenang-wenang (banyak yang bersifat statistik).
Dalam crossover dominasi single-node dua orang tua membuat anak tunggal. Crossover
Titik dipilih secara acak seperti biasa. Dalam subpohon dipilih untuk crossover nilai dominasi dari node atas dibandingkan. Node yang memiliki dominasi lebih tinggi
nilai menggantikan yang lain. Ini diilustrasikan pada Gambar 6.12.
6.7 Applications of Genetic Programming
• Prediksi kekuatan geser balok RC dalam
• Pemodelan instalasi pengolahan air limbah - Penggunaan pemrograman genetik untuk memodelkan kinerja dinamis dari pengolahan air limbah lumpur aktif kota tanaman.
• Deteksi kecelakaan lalu lintas - Deteksi kecelakaan di jalan raya dalam aliran rendah, kondisi kecepatan tinggi mis. larut malam berdasarkan pada tiga tahun data lalu lintas menghasilkan tingkat alarm palsu hampir nol.
• Mengalir melalui baskom perkotaan - Konstruksi model jaringan pembuangan limbah untuk
menghitung risiko yang ditimbulkan oleh hujan ke cekungan dan dengan demikian memberikan peringatan sebelumnya banjir atau amblesan.
• Prediksi waktu perjalanan – Investigasi dokter umum untuk memperkirakan perjalanan jalan raya waktu6.8 Haploid Genetic Programming with Dominance
Formulir haploid berisi semua informasi yang relevan dengan masalah, dan adalah struktur yang banyak digunakan dalam algoritma evolusioner. Crossover dominasi adalah digunakan sebagai cara untuk mempertahankan dan mempromosikan gen yang sukses (yang meningkat kebugaran individu dalam generasi saat ini) ke generasi berikutnya.
• Prediksi kekuatan geser balok RC dalam
• Pemodelan instalasi pengolahan air limbah - Penggunaan pemrograman genetik untuk memodelkan kinerja dinamis dari pengolahan air limbah lumpur aktif kota tanaman.
• Deteksi kecelakaan lalu lintas - Deteksi kecelakaan di jalan raya dalam aliran rendah, kondisi kecepatan tinggi mis. larut malam berdasarkan pada tiga tahun data lalu lintas menghasilkan tingkat alarm palsu hampir nol.
• Mengalir melalui baskom perkotaan - Konstruksi model jaringan pembuangan limbah untuk
menghitung risiko yang ditimbulkan oleh hujan ke cekungan dan dengan demikian memberikan peringatan sebelumnya banjir atau amblesan.
• Prediksi waktu perjalanan – Investigasi dokter umum untuk memperkirakan perjalanan jalan raya waktu6.8 Haploid Genetic Programming with Dominance
Formulir haploid berisi semua informasi yang relevan dengan masalah, dan adalah struktur yang banyak digunakan dalam algoritma evolusioner. Crossover dominasi adalah digunakan sebagai cara untuk mempertahankan dan mempromosikan gen yang sukses (yang meningkat kebugaran individu dalam generasi saat ini) ke generasi berikutnya.
Gambar 6.11 menunjukkan contoh dominasi crossover. Dalam dominasi crossover, subtree tunggal dibuat dari orang tua dan dilampirkan ke orang tua asli di titik yang dipilih untuk crossover, karenanya menciptakan dua anak.
Dalam crossover dominasi single-node dua orang tua membuat anak tunggal. Crossover
Titik dipilih secara acak seperti biasa. Dalam subpohon dipilih untuk crossover nilai dominasi dari node atas dibandingkan. Node yang memiliki dominasi lebih tinggi
nilai menggantikan yang lain. Ini diilustrasikan pada Gambar 6.12.
Tidak ada komentar:
Posting Komentar