Rangkaian saraf kabur dan algoritma genetik. Masalah moden sains dan pendidikan. Menggunakan logik kabur untuk melaraskan pekali pengawal PID

ISBN 978-5-9912-0320-3 Tapak web penerbit: www.techbook.ru Rangkaian saraf, algoritma genetik dan kabur sistem <...> saraf rangkaian, algoritma genetik dan kabur sistem: Per. daripada bahasa Poland<...>BBK 30.17 Alamat Internet penerbit www.techbook.ru Penerbitan saintifik Rutkowska Danuta, Pilinski Maciej, Rutkowski Leszek SARAF RANGKAIAN, ALGORITMA GENETIK DAN SISTEM FUZZY edisi ke-2, Editor stereotaip A.S.<...> Adaptif berwajaran linear penambah dengan keluaran sigmoid.<...> Contoh pengoptimuman <...> Contoh pengoptimuman fungsi menggunakan program Evolver . <...>Menyelesaikan masalah gabungan menggunakan program Evolver . <...> Contoh pengoptimuman fungsi menggunakan program FlexTool.<...> Contoh pengoptimuman fungsi menggunakan program Evolver . <...>Berikut adalah dua algoritma algoritma terbalik pengedaran kesilapan algoritma <...>Berikut adalah dua algoritma melatih rangkaian saraf berbilang lapisan: klasik dan paling biasa digunakan algoritma terbalik pengedaran kesilapan, dan juga jauh lebih pantas algoritma, berdasarkan kaedah kuasa dua terkecil berulang.<...> algoritma melatih rangkaian ini: algoritma terbalik pengedaran kesilapan dan berulang algoritma <...>Oleh itu, dalam bab ini kita akan membincangkan elemen asas rangkaian saraf berbilang lapisan - sistem perceptron dan jenis Adaline (dengan output linear dan bukan linear), selepas itu kita akan menentukan dua algoritma melatih rangkaian ini: algoritma terbalik pengedaran kesilapan dan berulang algoritma kaedah kuasa dua terkecil.<...>Perceptron 23 Hyperplane<...>

Rangkaian_neural,_algoritma_genetik_dan_sistem_kabur.pdf

D. Rutkovskaya M. Pilińskiy L. Rutkovskiy Rangkaian saraf, algoritma genetik dan sistem kabur Hotline-Telecom WYDAWNICTWO NAUKOWE PWN edisi ke-2

Muka surat 1

Rangkaian_neural,_algoritma_genetik_dan_sistem_kabur_(1).pdf

edisi ke-2

muka surat 3

UDC 681.322 BBK 30.17 R90 Rutkovskaya D., Pilinsky M., Rutkovsky L. R90 Rangkaian saraf, algoritma genetik dan sistem kabur: Trans. daripada bahasa Poland I. D. Rudinsky. – ed. ke-2, stereotaip. – M.: Hotline – Telekom, 2013. – 384 p.: ill. ISBN 978-5-9912-0320-3. Buku ini ditumpukan kepada isu-isu "pengkomputeran pintar". Mengandungi pengetahuan asas tentang algoritma genetik, pengaturcaraan evolusi, sistem kabur, serta sambungan kawasan ini dengan rangkaian saraf. Bagi pekerja saintifik dan kejuruteraan dalam bidang sains komputer dan teknologi komputer, terlibat dalam penciptaan dan penggunaan sistem pintar, serta pelajar siswazah dan sarjana muda pelbagai kepakaran dalam bidang teknologi komputer. BBK 30.17 Alamat penerbit di Internet www.techbook.ru Penerbitan saintifik Rutkowska Danuta, Pilinski Maciej, Rutkowski Leszek NEURAL NETWORKS, ALGORITMA GENETIK DAN SISTEM KAbur Edisi ke-2, stereotaip Editor A. S. Popov. Reka letak komputer umum V. Levy Covered oleh T. Popov. pada 01/09/2013. Format 60x90/16. Percetakan digital Academic ed. l. 24. Edaran 200 salinan. Ed. No. 13320 ISBN 978-5-9912-0320-3 © Rutkovskaya D., Pilinsky M., Rutkovsky L. 1997, 2013 © Penerbitan rumah Wydawnictwo Naukowe PWN, 1997 © 1999.2, terjemahan dari Polish D.204. 2013 © Rumah penerbitan "Hotline-Telecom", 2004, 2013

muka surat 4

Kandungan Prakata. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Prakata kepada edisi Rusia. . . . . . . . . . . . . . . . . . . . . . . 12 1. Pengenalan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Rujukan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2. Rangkaian neural berbilang lapisan dan algoritma untuk latihan mereka 18 2.1. pengenalan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.2. Neuron dan modelnya. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.3. Perceptron. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.4. Sistem jenis Adaline. . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.4.1. Penambah berwajaran linear. . . . . . . . . . . . . . . 26 2.4.2. Penambah berwajaran linear adaptif. . . . . 30 2.4.3. Penambah berwajaran linear suai dengan keluaran sigmoid. . . . . . . . . . . . . . . . . . . . . . . 31 2.5. Algoritma penyebaran ralat ke belakang. . . . . . . . . . 33 2.6. Penggunaan kaedah kuasa dua terkecil berulang untuk melatih rangkaian saraf. . . . . . . . . . . . . . . . . . . . . 37 Rujukan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 3. Set kabur dan inferens kabur. . . . . . . . . . . . . . . . 45 3.1. pengenalan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3.2. Konsep asas dan definisi teori set kabur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3.3. Operasi pada set kabur. . . . . . . . . . . . . . . . . . . 56 3.4. Prinsip pengembangan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 3.5. Nombor kabur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 3.6. Norma segi tiga. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 3.7. Hubungan kabur dan sifatnya. . . . . . . . . . . . . . . . . . 78 3.8. Keluaran kabur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 3.8.1. Peraturan asas inferens dalam logik binari. . . . . . 83 3.8.2. Peraturan asas inferens dalam logik kabur. . . . . . 84 3.8.2.1. Peraturan ponens modus kabur umum. . . 84 3.8.2.2. Peraturan modus kabur umum tollens. . . 87 3.8.3. Peraturan implikasi kabur. . . . . . . . . . . . . . . . . . 88

muka surat 5

6 Isi 3.9. Kawalan kabur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 3.9.1. Modul kawalan kabur klasik. . . . . . 92 3.9.1.1. Asas peraturan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 3.9.1.2. Blok pengkaburan. . . . . . . . . . . . . . . . . . . . . . 94 3.9.1.3. Blok pembangunan penyelesaian. . . . . . . . . . . . . . . . . . 94 3.9.1.4. Blok defuzzification. . . . . . . . . . . . . . . . . . . . . 105 3.9.2. Kaedah kawalan kabur Takagi-Sugeno. . . . . . . 106 3.10. Mereka bentuk asas peraturan kabur berdasarkan data berangka. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 3.10.1. Pembinaan peraturan kabur. . . . . . . . . . . . . . . . . 110 3.10.2. Tugas parkir lori. . . . . . . . . . . . . . . . . . . 115 3.10.3. Catatan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 Rujukan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 4. Algoritma genetik. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 4.1. pengenalan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 4.2. Algoritma genetik dan kaedah pengoptimuman tradisional. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 4.3. Konsep asas algoritma genetik. . . . . . . . . . 126 4.4. Algoritma genetik klasik. . . . . . . . . . . . . . . . 130 4.5. Ilustrasi pelaksanaan algoritma genetik klasik. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 4.6. Pengekodan parameter masalah dalam algoritma genetik 139 4.7. Teorem asas mengenai algoritma genetik. . . . . . . . . 144 4.8. Pengubahsuaian algoritma genetik klasik. . . 157 4.8.1. Kaedah pemilihan. . . . . . . . . . . . . . . . . . . . . . . . . . . 157 4.8.2. Prosedur pembiakan khas. . . . . . . . . . . . . . . 160 4.8.3. Pengendali genetik. . . . . . . . . . . . . . . . . . . . . . 161 4.8.4. Kaedah pengekodan. . . . . . . . . . . . . . . . . . . . . . . . . 163 4.8.5. Menskala fungsi kecergasan. . . . 164 4.8.6. Niche dalam algoritma genetik. . . . . . . . . . . . . . . . 166 4.8.7. Algoritma genetik untuk pengoptimuman pelbagai kriteria. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 4.8.8. Mikroalgoritma genetik. . . . . . . . . . . . . . . . . . 169 4.9. Contoh pengoptimuman fungsi menggunakan program FlexTool. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 4.10. Algoritma evolusi. . . . . . . . . . . . . . . . . . . . . . . . 206 4.11. Aplikasi algoritma evolusi. . . . . . . . . . . . . . 213

muka surat 6

Kandungan 7 4.11.1. Contoh pengoptimuman fungsi menggunakan program Evolver. . . . . . . . . . . . . . . . . . . . . . . . . 214 4.11.2. Menyelesaikan masalah gabungan menggunakan program Evolver. . . . . . . . . . . . . . . . . . . . . . . . . 246 4.12. Algoritma evolusi dalam rangkaian saraf. . . . . . . . 250 4.12 1. Aplikasi bebas algoritma genetik dan rangkaian saraf. . . . . . . . . . . . . . . . . . . . . . . . . 252 4.12.2. Rangkaian saraf untuk menyokong algoritma genetik. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 4.12.3. Algoritma genetik untuk menyokong rangkaian saraf. . . . . . . . . . . . . . . . . . . . . . . . . . 253 4.12.4. Aplikasi algoritma genetik untuk melatih rangkaian saraf. . . . . . . . . . . . . . . . . . . 256 4.12.5. Algoritma genetik untuk memilih topologi rangkaian saraf. . . . . . . . . . . . . . . . . . . . . . . . . . 256 4.12.6. Sistem interaksi adaptif. . . . . . 257 4.12.7. Kitaran evolusi biasa. . . . . . . . . . . . . . . . . . . . . 257 4.12.7.1. Evolusi berat sambungan. . . . . . . . . . . . . . . . . . . 259 4.12.7.2. Evolusi seni bina rangkaian. . . . . . . . . . . . . . . 261 4.12.7.3. Evolusi peraturan pembelajaran. . . . . . . . . . . . . . . 264 4.13. Contoh pemodelan algoritma evolusi dalam aplikasi pada rangkaian saraf. . . . . . . . . . . . . . . . . . 266 4.13.1. Program Evolver dan BrainMaker. . . . . . . . . . . . . . 268 4.13.2. program GTO. . . . . . . . . . . . . . . . . . . . . . . . . . . 274 Rujukan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303 5. Modul kawalan saraf kabur. . . . . . . . . . . . . . . . 307 5.1. Modul kawalan kabur dengan struktur yang ditentukan dalam proses penyahfuzzan. . . . . . . . . . . 308 5.1.1. pengenalan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 5.1.2. Reka bentuk modul. . . . . . . . . . . . . . . . . . . . . . . . . 309 5.1.3. Struktur modul. . . . . . . . . . . . . . . . . . . . . . . . . . . 311 5.1.4. Menggunakan algoritma perambatan balik. . . . . . . . . . . . . . . . . . . . . 313 5.1.5. Pengubahsuaian modul. . . . . . . . . . . . . . . . . . . . . . . 320 5.1.6. Aplikasi modul kawalan kabur untuk meramalkan siri masa rawak. . . . 322 5.1.7. Penggunaan modul kawalan kabur untuk menyelesaikan masalah letak kereta trak. . . . . . . . . . . . . 326 5.1.8. Catatan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330

muka surat 7

8 Kandungan 5.2. Perwakilan modul kawalan kabur dalam bentuk rangkaian neural standard. . . . . . . . . . . . . . . . . . . . . . . 330 5.3. Modul kawalan kabur dengan rangkaian saraf untuk melakukan penyahfuzzan. . . . . . . . . . . . . . . . . . . . . . 333 5.3.1. pengenalan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 5.3.2. Reka bentuk modul. . . . . . . . . . . . . . . . . . . . . . . . . 334 5.3.3. Struktur modul. . . . . . . . . . . . . . . . . . . . . . . . . . . 335 5.3.4. Algoritma pembelajaran modul. . . . . . . . . . . . . . . . . . 337 5.3.5. Penyelesaian masalah penstabilan bandul terbalik. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342 5.3.6. Catatan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348 5.4. Modul kawalan kabur dengan keupayaan untuk membetulkan peraturan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348 5.4.1. pengenalan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348 5.4.2. Fasa pembelajaran berasaskan organisasi kendiri. . . . . . 349 5.4.3. Fasa pembelajaran diselia. . . . . . . . . . . . . . . . . . . . 354 5.4.4. Catatan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356 5.5. Modul kawalan kabur jenis Takagi-Sugeno: kes pembolehubah linguistik bebas. . . . . . 356 5.5.1. pengenalan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356 5.5.2. Pelaksanaan saraf fungsi keahlian. . 357 5.5.3. Modul Takagi-Sugeno. . . . . . . . . . . . . . . . . . . . . . . 359 5.5.4. Pelaksanaan syarat. . . . . . . . . . . . . . . . . . . . . . . . . 359 5.5.5. Pelaksanaan kesimpulan. . . . . . . . . . . . . . . . . . . . . . 361 5.5.6. Catatan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 5.6. Modul kawalan kabur jenis Takagi-Sugeno: kes pembolehubah linguistik bersandar. . . . . . . 365 5.6.1. pengenalan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 5.6.2. Rangkaian saraf untuk inferens kabur. . . . . . . . . . 366 5.6.3. Struktur sistem. . . . . . . . . . . . . . . . . . . . . . . . . . 368 5.6.4. Kaedah pengajaran. . . . . . . . . . . . . . . . . . . . . . . . . . . . 372 5.6.5. Menyelesaikan masalah parkir lori. . . . . . . . . . . . 374 5.6.6. Catatan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378 Rujukan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 Indeks subjek. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381

muka surat 8

Prakata Abad kedua puluh berakhir dengan revolusi dalam pemprosesan maklumat. Kami telah menyaksikan peningkatan pesat dalam jumlah data yang tersedia dan peningkatan dalam kelajuan pemprosesan dan penghantarannya, serta kapasiti peranti storan. Jelas kelihatan bahawa fenomena ini bukan sahaja saling berkaitan, tetapi juga menguatkan satu sama lain. Dalam situasi peningkatan seperti runtuhan salji dalam jumlah maklumat dan kuasa pengkomputeran, persoalan yang jelas timbul: bagaimana kita boleh meningkatkan keupayaan kita untuk memahami dunia di sekeliling kita, mempunyai keupayaan teknikal yang begitu besar dan terus berkembang? Bantuan datang daripada kaedah matematik klasik terbukti yang dicipta oleh karya Newton, Leibniz, Euler dan jenius lain pada masa lalu, yang meletakkan asas untuk algoritma pengkomputeran moden. Terima kasih kepada mereka, kami mempunyai prosedur pengkomputeran khusus untuk mengenali imej dan pertuturan, untuk mengawal sistem pelbagai kelas dan menyelesaikan masalah lain yang serupa. Bebas daripada arah ini, penyelidikan dalam bidang kecerdasan buatan membawa kepada penciptaan sistem pakar dan ramalan berdasarkan pemprosesan simbolik dan menggunakan asas peraturan. Walau bagaimanapun, semua pendekatan yang disenaraikan di atas melibatkan penggunaan sama ada teknik pengiraan yang sangat khusus atau pangkalan pengetahuan khusus, yang paling kerap disertakan dalam korset logik binari yang tegar. Satu lagi had penggunaan kaedah ini adalah berkaitan dengan fakta bahawa mereka tidak menyelesaikan masalah secara langsung apabila menggunakan sistem pengkomputeran dengan seni bina sejagat, biasa kepada kebanyakan aplikasi praktikal. Ini membawa kita kepada asal usul dan sifat teknologi pengkomputeran yang membentuk subjek buku ini. Teknologi-teknologi ini, digabungkan dalam kesusasteraan Inggeris di bawah nama Kecerdasan Pengiraan, memungkinkan untuk mendapatkan penyelesaian berterusan atau diskret hasil daripada pembelajaran daripada data yang tersedia. Salah satu subkelas kumpulan kaedah yang dibincangkan terdiri daripada rangkaian saraf yang menggunakan algoritma stokastik untuk melatih model dengan guru atau melalui organisasi diri. Ia direka bentuk untuk memproses data digital yang bising, yang daripadanya algoritma pembelajaran membina model proses satu arah atau berulang yang menarik minat kami. Model-model ini dicirikan oleh struktur biasa yang terdiri daripada unsur tak linear yang disambungkan oleh rangkaian sambungan linear yang luas dan selalunya dilengkapi dengan maklum balas tempatan atau global. Apabila proses pemodelan, keupayaan rangkaian saraf boleh dipertingkatkan melalui penggunaan teknologi pemprosesan maklumat berdasarkan set kabur dan inferens kabur. Kaedah ini dikaitkan dengan menganggar fungsi keahlian unsur kepada set menggunakan pengendali logik kabur. Pendekatan yang dicadangkan bukan sahaja melemahkan keperluan untuk ketepatan data dalam proses pembinaan

muka surat 9

10 Model prakata, tetapi juga membolehkan anda menerangkan sistem kompleks menggunakan pembolehubah yang nilainya ditentukan secara intuitif. Paradigma pemodelan, pengurusan, pembuatan keputusan, dll. membawa kepada pembentukan hujah linguistik fungsi logik. Fungsi sedemikian yang menggambarkan objek sebenar boleh diperhalusi semasa proses latihan menggunakan data yang tersedia. Pendekatan lain ialah merumus peraturan inferens secara langsung semasa proses pembelajaran. Ini menentukan interpenetrasi dan pelengkap model dan sistem saraf berdasarkan logik kabur. Pengendali linguistik yang kami gunakan dalam komunikasi harian dan proses pembelajaran berulang bersama-sama membawa kepada model logik-algebra pintar, yang ditakrifkan oleh konsep Kecerdasan Pengiraan. Intelektualiti dalam hal ini difahami sebagai keupayaan untuk menggunakan pengetahuan yang terkumpul dalam proses pembelajaran, sebagai keupayaan untuk menjana peraturan inferens, dan sebagai keupayaan untuk menyamaratakan maklumat. Algoritma evolusi dianggap sebagai kelas penting algoritma pembelajaran yang telah memperkayakan teknologi saraf dan kabur. Mereka beroperasi pada populasi kromosom, dinilai oleh fungsi kecergasan, dan menggunakan penentu evolusi dan genetik perubahan dalam jujukan bit atau nombor. Dengan cara ini, ruang penyelesaian yang mungkin diterokai dengan berkesan. Penyelesaian optimum dicari dalam satu siri penghampiran berturut-turut bagi hujah dengan nilai terbaik bagi fungsi kecergasan yang dijana hasil daripada mutasi dan persilangan kromosom. Penulis nota ini, sebagai pengerusi Kecerdasan Pengiraan: Jawatankuasa Simposium Meniru Kehidupan, yang diadakan di Orlando pada tahun 1994, berada di barisan hadapan penggabungan ketiga-tiga bidang saintifik ini dan kemunculan cabang pengetahuan penting yang baharu. Beliau berbesar hati mengalu-alukan Rangkaian Neural, Algoritma Genetik dan Sistem Fuzzy, sebuah buku perintis mengenai pasaran penerbitan Poland. Selain membincangkan elemen asas rangkaian saraf, menerangkan sistem kabur dan algoritma genetik evolusi, karya ini juga mengandungi hasil saintifik asal pengarang. Buku ini menyediakan butiran pelaksanaan penyelesaian teknikal tertentu, termasuk pelbagai pemproses dan sistem pembelajaran berdasarkan logik kabur. Banyak perhatian diberikan kepada penggunaan praktikal beberapa pakej perisian aplikasi. Secara tematik, buku ini berkaitan dengan arahan saintifik persidangan All-Polish mengenai rangkaian saraf dan aplikasinya, yang dianjurkan oleh Profesor L. Rutkowski dan Persatuan Rangkaian Neural Poland pada tahun 1994 dan 1996. Penerbitan ini, di bawah pimpinan Profesor L. Rutkovsky, sangat relevan, berharga dan unik. Ia memenuhi ceruk besar dalam pasaran saintifik dan teknikal yang luas di Poland. Buku ini amat berguna kepada jurutera pelbagai kepakaran, ahli ekonomi, ahli fizik, ahli matematik dan saintis komputer, serta pelajar

Muka surat 10

Prakata 11 daripada ini dan bidang pengetahuan yang berkaitan. Penulis harus mengucapkan tahniah di atas pencapaian besar karya ilmiah yang cemerlang ini. Buku ini bukan sahaja harus meningkatkan pengiktirafan terhadap pencapaian mereka, tetapi juga menarik barisan baru peminat disiplin saintifik yang menarik ini. Julai 1996 Jacek Jurada Ahli IEEE. Universiti Louisville, Amerika Syarikat

1

Artikel ini menerangkan varian membina struktur algoritma genetik, serta kemungkinan menggunakan algoritma sedemikian dalam tugas melatih rangkaian saraf. Artikel tersebut menganalisis dan menyerlahkan kelebihan algoritma genetik dalam mencari penyelesaian optimum berbanding kaedah klasik. Reka bentuk setiap langkah algoritma genetik diterangkan secara terperinci, termasuk operasi pelbagai operasi mutasi, seperti mutasi tambahan dan pengendali mutasi klasik. Di samping itu, pengendali mutasi baharu dicadangkan, yang merangkumi algoritma operasi pengendali mutasi yang diterangkan di atas. Terdapat juga rajah untuk mempersembahkan data rangkaian saraf tiruan dalam bentuk bahan genetik untuk kemungkinan pemprosesan data selanjutnya menggunakan algoritma genetik, termasuk rajah untuk menukar data yang disimpan dalam matriks kepada satu kromosom, yang membolehkan mengurangkan bilangan lelaran dalam proses melatih rangkaian.

algoritma genetik

latihan rangkaian saraf

1. Aksenov S.V., Novoseltsev V.B. Organisasi dan penggunaan rangkaian saraf (kaedah dan teknologi) / disunting oleh. ed. V.B. Novoseltseva. – Tomsk: NTL Publishing House, 2006. – 128 p.

2. Batyrshin I.Z. Sistem hibrid kabur. Teori dan amalan / ed. N.G. Yarushkina. – M.: FIZMATLIT, 2007. – 208 p.

3. Gladkov L.A. Algoritma genetik / L.A. Gladkov, V.V. Kureichik, V.M. Kureichik. – M.: FIZMATLIT, 2006. – 320 p.

4. Osovsky S. Rangkaian saraf untuk pemprosesan maklumat / trans. daripada Poland I.D. Rudinsky. – M.: Kewangan dan Perangkaan, 2002. – 344 p.

Algoritma genetik boleh dianggap sebagai cara yang paling boleh diterima untuk melaraskan pekali pemberat rangkaian saraf tiruan. Ini disebabkan oleh fakta bahawa pada peringkat awal sama sekali tidak ada maklumat tentang arah pergerakan dari segi penetapan berat matriks. Di bawah keadaan ketidakpastian, kaedah evolusi, termasuk algoritma genetik, mempunyai peluang tertinggi untuk mencapai keputusan yang diperlukan. Algoritma genetik klasik beroperasi pada sistem nombor binari, walaupun baru-baru ini sering terdapat kerja di mana pengendali algoritma genetik melakukan operasi pada set nombor nyata. Ini membolehkan anda mengembangkan dengan ketara kemungkinan menggunakan algoritma yang diterangkan.

Mari kita pertimbangkan model matematik masalah yang dikemukakan. Diberikan vektor X dengan dimensi 256, yang merupakan imej yang dikodkan bagi watak yang boleh dikenali. Terdapat juga vektor Y dengan dimensi 10, yang mencerminkan hasil pengecaman yang diperlukan, menunjukkan sama ada simbol itu tergolong dalam sampel rujukan. Kita perlu mencari matriks berat W, unsur-unsurnya ialah nombor nyata dalam selang supaya kesamaan kekal:

X* W=Y (1)

Ia adalah perlu untuk mengkonfigurasi matriks berat W menggunakan algoritma genetik. Dalam rangka masalah yang sedang diselesaikan, matriks yang sedang dipertimbangkan mempunyai dimensi berikut: bilangan baris ialah 10, yang mewakili semua aksara yang menerangkan angka Arab; bilangan lajur ditentukan oleh saiz ruang yang diperuntukkan untuk setiap aksara, 256 lajur.

Untuk kejelasan dan kemudahan pemahaman, setiap lajur matriks berat harus dianggap sebagai kromosom, yang akan membawa kepada kehadiran 256 kromosom, yang bersama-sama akan mencerminkan setiap individu. Walau bagaimanapun, dalam pelaksanaan praktikal adalah lebih mudah untuk menggunakan struktur yang lebih mudah, walaupun kurang visual. Ini disebabkan oleh fakta bahawa agak sukar untuk melaksanakan operasi silang dan mutasi apabila terdapat beberapa kromosom. Setiap individu dalam algoritma genetik yang sedang dibangunkan boleh diwakili sebagai hanya satu kromosom, yang akan memudahkan pelaksanaan perisian pada komputer dengan ketara. Ini boleh dicapai dengan cara berikut. Kromosom akan bermula dari lajur pertama matriks berat, dan setiap lajur berikutnya hanya akan ditambah pada penghujung kromosom "tunggal" yang sedia ada. Kaedah ini digambarkan dalam Rajah 1.

nasi. 1. Penjelmaan matriks beratW kepada vektor pemberatVw.

Algoritma genetik klasik terdiri daripada beberapa peringkat yang paling penting. Malah, peringkat ini boleh disusun mengikut kronologi.

  1. INISIALISASI - pembentukan populasi awal.
  2. PENILAIAN KECERGASAN - pengiraan fungsi kecergasan untuk setiap individu (dalam kes kami, kromosom).
  3. PEMILIHAN - pemilihan berdasarkan penilaian kesesuaian kromosom yang paling disesuaikan, yang akan diberi hak untuk mengambil bahagian dalam operasi silang.
  4. CROSSINGOVER - lintasan dua individu.
  5. MUTASI ialah perubahan buatan yang disengajakan dalam gen tertentu dalam kromosom seseorang individu.
  6. PEMBENTUKAN PENDUDUK BARU - mengurangkan bilangan individu berdasarkan penilaian kecergasan berserta pemilihan individu “terbaik”.
  7. MENYEMAK KRITERIA BERHENTI ALGORITMA - jika keadaan carian yang diperlukan tercapai - keluar, jika tidak - pergi ke peringkat No. 3.
  8. MENGEKSTRAK PENYELESAIAN TERBAIK - penyelesaian terbaik adalah individu yang mempunyai nilai maksimum fungsi kecergasan.

Semua peringkat yang diterangkan adalah benar-benar adil dalam rangka masalah yang sedang diselesaikan. Pelaksanaan praktikal langkah pertama mana-mana algoritma genetik dalam kebanyakan kes adalah tidak lebih daripada pemulaan rawak. Setiap gen pada mana-mana kromosom diberikan nilai rawak daripada julat nilai yang boleh diterima. Sehubungan itu, apabila menetapkan matriks berat W, setiap gen akan menerima maklumat genetik dalam bentuk nilai rawak dalam segmen . Pelaksanaan perisian kaedah inisialisasi ini adalah yang paling mudah dan mempunyai kelebihan dan kekurangannya. Kelebihannya adalah seperti berikut.

  • Tiada algoritma tambahan diperlukan.
  • Permulaan adalah pantas dan tidak memuatkan komputer.
  • Peluang untuk mencapai optimum tempatan telah dikurangkan.

Sebagai kelemahan, kita boleh perhatikan kekurangan pengetahuan terkumpul tentang pekali boleh laras dalam algoritma yang dibangunkan. Oleh itu, hasil daripada peringkat permulaan, terdapat populasi penyelesaian siap sedia. Walaupun tidak masuk akal, kita boleh bercakap tentang kehadiran penyelesaian sudah pada peringkat pertama. Selepas mendapat populasi awal, peralihan dibuat ke peringkat kedua - penilaian kecergasan.

Menilai kecergasan individu dalam populasi melibatkan pengiraan nilai fungsi kecergasan bagi setiap ahli populasi. Dan semakin tinggi nilai ini, semakin individu itu memenuhi keperluan masalah yang sedang diselesaikan. Dalam rangka masalah yang sedang diselesaikan, matriks berat adalah sebahagian daripada rangkaian saraf yang melakukan pengecaman corak. Dan dengan itu, algoritma genetik dilaksanakan pada peringkat latihan rangkaian saraf. Dalam erti kata lain, adalah perlu untuk membawa matriks berat kepada bentuk di mana ralat dalam mengenali imej rujukan akan menjadi minimum. Oleh itu, fungsi kecergasan menganggarkan ralat pengecaman setiap imej rujukan, dan semakin kecil ralat, semakin tinggi nilai fungsi kecergasan. Tugasnya adalah untuk meminimumkan ralat pengecaman. Untuk melakukan ini, anda perlu membandingkan vektor yang terhasil Y' dengan sampel rujukan Y.

Peringkat pemilihan melibatkan pemilihan individu yang bahan genetiknya akan mengambil bahagian dalam pembentukan populasi penyelesaian seterusnya, i.e. dalam mencipta generasi akan datang. Pilihan yang diterangkan dibuat mengikut prinsip pemilihan semula jadi, terima kasih kepada individu yang mempunyai nilai tertinggi fungsi kecergasan mempunyai peluang maksimum. Terdapat pelbagai jenis kaedah pemilihan yang agak besar. Salah satu yang paling terkenal dan kerap digunakan ialah kaedah "roulette". Nama ini secara intuitif membantu memahami prinsipnya. Setiap individu menerima sektor tertentu pada "roda", saiznya secara langsung bergantung pada nilai fungsi kecergasan.

Ia berikutan bahawa semakin tinggi nilai fungsi kecergasan, semakin besar saiz sektor pada "roda roulette". Jelas sekali, lebih besar sektor, lebih tinggi kebarangkalian "kemenangan" untuk individu yang sepadan. Dan, sebagai akibatnya, kebarangkalian memilih individu tertentu ternyata berkadar dengan nilai fungsi kecergasannya. Penggunaan kaedah "roulette" sering membawa kepada penumpuan pramatang algoritma, yang terdiri daripada fakta bahawa individu terbaik, tetapi bukan yang optimum, mula menguasai populasi. Selepas beberapa generasi, populasi akan terdiri hampir keseluruhannya daripada salinan individu terbaik. Walau bagaimanapun, adalah sangat tidak mungkin penyelesaian yang dicapai akan menjadi optimum, kerana populasi awal dijana secara rawak dan hanya mewakili sebahagian kecil daripada ruang carian. Untuk mengelakkan penumpuan pramatang algoritma genetik, penskalaan fungsi kecergasan digunakan. Menskala fungsi kecergasan membolehkan kita menghapuskan situasi di mana individu biasa dan terbaik mula membentuk bilangan keturunan yang sama dalam generasi berikutnya, yang merupakan fenomena yang sangat tidak diingini. Perlu diingatkan bahawa penskalaan juga menghalang kes apabila, walaupun terdapat kepelbagaian populasi yang ketara, nilai purata fungsi kecergasan berbeza sedikit daripada maksimum. Jadi, menskalakan fungsi kecergasan tidak lebih daripada mengubah penampilannya. Terdapat tiga transformasi utama: pemotongan linear, kuasa dan sigma. Algoritma yang dibangunkan menggunakan transformasi potong sigma.

, (2)

di mana A- sebilangan kecil, biasanya dari 1 hingga 5; - nilai purata fungsi kecergasan untuk populasi; δ ialah sisihan piawai populasi. Jika nilai yang terhasil bagi fungsi yang diubah adalah negatif, ia disamakan dengan 0.

Ia juga mungkin untuk mengubah suai kaedah pemilihan ini ke tahap tertentu atau membina pemilihan berdasarkan sintesis beberapa kaedah sekaligus.

Peringkat seterusnya dalam algoritma genetik ialah penggabungan semula atau persilangan. Setiap bahagian kromosom individu mengandungi beban maklumat tertentu. Matlamat penggabungan semula adalah untuk mendapatkan gabungan ruang kromosom di mana individu akan mewakili penyelesaian terbaik yang mungkin dengan bahan genetik semasa. Akibatnya, matlamat utama operasi persilangan adalah untuk akhirnya mendapatkan ciri paling berfungsi yang terdapat dalam set penyelesaian awal. Mekanisme sedemikian untuk menyelesaikan masalah pengoptimuman, tidak seperti kaedah sedia ada, tidak menggantikan satu penyelesaian dengan yang lain, tetapi memperoleh penyelesaian baru yang mungkin melalui pertukaran maklumat antara mereka.

Persilangan ialah pengendali paling penting bagi algoritma genetik, kerana dengan bantuan pengendali silanglah maklumat ditukar antara penyelesaian. Keturunan mengandungi gabungan ciri-ciri khusus kedua-dua ibu bapa. Kecekapan mana-mana algoritma genetik adalah berkadar terus dengan kecekapan operasi silangan atas. Di samping itu, prestasi algoritma genetik bergantung kepada kejayaan crossover di tempat pertama. Dalam rangka masalah yang sedang diselesaikan, pengendali silang tertib telah dilaksanakan. Persilangan tertib menjalankan transformasi rutin langkah demi langkah bahan genetik, menghampiri penyelesaian yang optimum.

Dalam Rajah. Rajah 2 menggambarkan proses mendapatkan individu baharu menggunakan silang tertib. Terdapat dua kromosom induk: Vw1 dan Vw2. Bahan genetik ialah nombor nyata dari 0 hingga 1. Persilangan tersusun berfungsi seperti berikut. Pada mulanya, "titik pemotongan" ditentukan secara rawak. Dalam langkah seterusnya, keturunan pertama New_Vw1 mewarisi bahagian kiri kromosom Vw1 induk. Baki gen kromosom baharu diisi menggunakan maklumat yang disimpan dalam induk kedua Vw2. Algoritma mengimbas kromosom Vw2 dari awal dan mengekstrak gen yang berbeza daripada gen yang sudah ada dalam keturunan lebih daripada e = 0.02. Nilai kecil e dinyatakan dalam algoritma untuk menentukan "perkaitan" gen. Dengan setiap langkah seterusnya, dan terutamanya pada peringkat akhir algoritma, adalah wajar untuk mengurangkan nilai nilai ini untuk mencapai hasil yang lebih tepat. Prosedur yang sama dilakukan apabila mendapatkan anak kedua New_Vw2. Keturunan kedua New_Vw2 mewarisi bahagian kiri kromosom Vw2 induk. Baki gen kromosom yang terhasil diisi menggunakan maklumat yang terdapat dalam induk kedua Vw1.

nasi. 2. Prinsip operasi lintasan tertib.

Algoritma menganalisis kromosom Vw1 daripada gen pertama dan menjalankan pengekstrakan tertib gen yang berbeza daripada gen yang sudah ada dalam keturunan lebih daripada e = 0.02. Hasil daripada setiap pengendali lintasan, dua individu baharu muncul dalam populasi. Untuk mengawal bilangan operasi silang, pekali silang digunakan K k, yang menentukan bahagian keturunan yang dihasilkan pada setiap lelaran. Bilangan keturunan ditentukan oleh formula berikut:

Kira p =bulat(Saiz p* K k)*2, (3)

di mana Saiz p- saiz populasi, Kira p- bilangan keturunan yang terhasil, bulat- operasi pembundaran.

Pekali silang tinggi K k membolehkan anda meningkatkan bilangan kawasan ruang carian dan mengurangkan risiko jatuh ke dalam optimum tempatan, namun, nilai parameter ini yang terlalu besar akan membawa kepada peningkatan dalam masa berjalan algoritma, serta berlebihan. penerokaan kawasan yang tidak menjanjikan ruang carian.

Peringkat seterusnya dalam algoritma genetik ialah mutasi. Mutasi ialah perubahan yang membawa kepada manifestasi sifat baru secara kualitatif bahan genetik. Mutasi berlaku secara rawak dan menyebabkan perubahan mendadak dalam struktur genotip.

Apabila menyelesaikan masalah pengoptimuman, mutasi gen adalah yang paling penting, yang dalam kebanyakan kes mempengaruhi satu atau lebih gen. Mutasi boleh kelihatan seperti apa sahaja, sama ada gen menukar kedudukan mereka, atau menyalin makna gen lain, dsb. Dalam setiap algoritma genetik, adalah perlu untuk menentukan jenis mutasi. Dalam algoritma genetik yang sedang dipertimbangkan, gen mengandungi nombor nyata dari 0 hingga 1. Menurut ini, pengendali mutasi mesti membuat perubahan khusus kepada bahan genetik, i.e. menukar nilai gen tertentu tanpa bergantung kepada gen sedia ada. Intipati pengendali mutasi yang dibangunkan adalah seperti berikut. Sebilangan gen rawak juga diasingkan secara rawak pada kromosom yang dikaji. Kadar mutasi K m menentukan keamatan mutasi. Ia menentukan bahagian gen yang bermutasi dalam lelaran semasa, berdasarkan jumlah bilangannya. Jika kadar mutasi terlalu kecil, maka situasi akan timbul di mana banyak gen berguna tidak akan wujud dalam populasi. Pada masa yang sama, menggunakan nilai pekali mutasi yang besar akan membawa kepada banyak gangguan rawak dan meningkatkan masa carian dengan ketara. Keturunan tidak lagi menyerupai ibu bapa mereka, dan algoritma tidak lagi dapat belajar berdasarkan pemeliharaan ciri keturunan. Transformasi digunakan pada gen yang dipilih, yang menyebabkan nilai gen semasa berubah dengan jumlah yang kecil. Nilai dipilih sedemikian rupa sehingga selepas menukar nilai saya- gen ke dia berada dalam segmen itu.

nasi. 3. Mutasi rawak berdasarkan kenaikan.

Dalam Rajah. Rajah 3 menunjukkan bagaimana mutasi dilakukan menggunakan kenaikan. Gen bernombor 2 dan 45 telah berjaya menerima nilai baru, yang akan membawa kepada perubahan dalam bacaan fungsi kecergasan individu yang bermutasi. Walaupun mutasi gen nombor 6 ternyata tidak boleh diterima dan sewajarnya diabaikan. Penggunaan mutasi berdasarkan -increment membolehkan pengenalan bahan genetik baru ke dalam populasi. Ini akan membawa kepada peningkatan dalam ruang carian, yang diperlukan untuk carian yang berkesan untuk optimum. Sudah tentu, masuk akal untuk menggunakan pengendali mutasi klasik, yang berdasarkan perubahan rawak dalam susunan gen. Ini juga membawa kepada keputusan yang agak baik sudah pada peringkat awal algoritma genetik. Apabila menyelesaikan masalah yang sedang dipertimbangkan, pengendali mutasi berbilang titik juga digunakan. Algoritma secara rawak memilih beberapa gen mengikut pekali keamatan mutasi, nilai yang kemudiannya berubah dengan nilai gen jiran. Kerja pengendali mutasi berbilang titik klasik ditunjukkan dalam Rajah. 4.

Penggunaan beberapa jenis pengendali mutasi dalam satu algoritma membolehkan carian berkesan untuk penyelesaian optimum. Ini memungkinkan untuk memperoleh keputusan yang baik dalam tempoh masa yang singkat, serta mengenal pasti "kejiranan penyelesaian" yang paling sesuai untuk kajian.

Pengendali mutasi digunakan untuk keturunan individu yang diperoleh selepas operasi silang. Individu dengan mutasi kekal dalam populasi sehingga permulaan peringkat "pembentukan populasi baru". Bilangan individu yang bermutasi ditentukan oleh formula:

,

di mana K m k- pekali mutasi klasik; K m δ- pekali mutasi berdasarkan δ- mengimbangi; K m- pekali mutasi umum; Kira m- bilangan individu yang telah mengalami mutasi; Kira p- bilangan keturunan; bulat- operasi pembundaran.

nasi. 4. Pengendali mutasi berbilang titik klasik.

Ia boleh dilihat daripada formula bahawa algoritma membolehkan anda melaraskan keseimbangan antara pengendali mutasi berbilang titik klasik dan mutasi berdasarkan d- kenaikan. Menggunakan fungsi ini, anda boleh melaraskan algoritma kepada keadaan tugas tertentu. Apabila perkadaran penggunaan pengendali mutasi klasik meningkat, ketelitian carian di sekitar penyelesaian terbaik berdasarkan bahan genetik semasa meningkat, dan dengan peningkatan dalam perkadaran mutasi berdasarkan -kenaikan, jumlah ruang carian berkembang dengan sewajarnya dan komposisi genetik populasi dikemas kini.

Peringkat seterusnya dalam algoritma genetik yang dibangunkan ialah pembentukan populasi baru. Jumlah populasi telah berkembang ditentukan oleh kadar mutasi keseluruhan K m dan pekali silang K k. Secara umum, saiz populasi semasa dikira menggunakan formula berikut:

Saiz p =Saiz p+Kira p+Kira m, (5)

di mana Kira p- bilangan anak yang diperolehi, Kira m- bilangan individu yang diperolehi akibat mutasi, dan Saiz p- saiz populasi.

Peringkat pembentukan populasi baru bertujuan untuk mengembalikan saiz populasi kepada nilai asalnya. Kepentingan fungsi kecergasan individu - ibu bapa yang sudah berada dalam populasi - diketahui. Algoritma menilai kesesuaian individu - keturunan yang diperoleh hasil daripada operasi silang, serta penilaian individu yang diperoleh hasil daripada pengendali mutasi. Berdasarkan nilai yang diperolehi bagi fungsi kecergasan untuk setiap individu populasi baharu, individu yang mempunyai nilai fungsi kecergasan yang paling rendah akan dikeluarkan. Algoritma melaksanakan tugas ini dengan mengalih keluar individu dengan nilai minimum fungsi kecergasan secara berurutan sehingga saiz populasi kembali kepada nilai awal. Bilangan individu "mati" dikira dengan formula:

Kira d =Kira p+Kira m, (6)

di mana Kira d- bilangan individu "mati", Kira p- bilangan keturunan yang diperolehi, Kira m- bilangan individu yang diperoleh menggunakan pengendali mutasi.

Pada peringkat pembentukan populasi baru, carian juga dijalankan untuk penyelesaian terbaik - individu dengan nilai maksimum fungsi kecergasan. Operasi ini dilakukan selepas saiz populasi telah kembali kepada nilai asalnya. Selepas memilih individu terbaik, algoritma memindahkan kawalan proses ke peringkat seterusnya - menyemak hentian algoritma.

Menentukan kriteria berhenti untuk algoritma genetik secara langsung bergantung pada spesifik masalah yang sedang diselesaikan dan maklumat yang tersedia tentang objek carian. Dalam kebanyakan masalah pengoptimuman yang nilai optimum fungsi kecergasan diketahui, algoritma boleh dihentikan apabila individu terbaik mencapai nilai ini, mungkin dengan beberapa ralat. Masalah yang sedang diselesaikan sebenarnya tidak mempunyai maklumat tentang nilai optimum fungsi kecergasan. Dalam erti kata lain, algoritma berusaha untuk memaksimumkan fungsi kecergasan, dengan mengambil kira bahawa ralat pengecaman cenderung kepada sifar. Oleh itu, algoritma yang dicipta melaksanakan mekanisme untuk menghentikan carian, berdasarkan ketiadaan perubahan dalam fungsi kecergasan individu terbaik semasa bilangan lelaran tertentu, yang ditetapkan sebagai parameter algoritma genetik. Di samping itu, algoritma menyediakan untuk menghentikan kerjanya selepas beberapa lelaran tertentu, yang juga dinyatakan sebagai parameter. Sekiranya keadaan berhenti dipenuhi, maka algoritma menghasilkan sebagai penyelesaian optimum yang diwakili oleh individu terbaik yang ditentukan pada peringkat pembentukan populasi baru. Jika syarat tidak dipenuhi, maka algoritma memindahkan kawalan ke peringkat pemilihan.

Oleh itu, sebagai hasil daripada kerja algoritma genetik, satu set pekali pemberat diperoleh yang memastikan operasi rangkaian saraf yang betul. Ia juga perlu diperhatikan fakta bahawa penggunaan pengendali mutasi khas memungkinkan untuk mengurangkan masa latihan rangkaian. Satu set latihan 180 elemen telah dipilih untuk latihan. Masa latihan pada set ini menggunakan algoritma genetik yang diterangkan menggunakan mutasi berasaskan kenaikan, rangkaian Wang-Mendel kabur ialah 2 minit. 50 saat, latihan menggunakan algoritma menggunakan pengendali mutasi berbilang titik klasik berlangsung selama 3 minit. 10 saat, dan penggunaan operator mutasi hibrid memungkinkan untuk mengurangkan masa latihan kepada 1 minit. 20 saat. Oleh itu, algoritma genetik yang terhasil membolehkan kita mengurangkan masa mencari penyelesaian terbaik dalam rangka kerja.

CROSSINGOVER - lintasan dua individu.

Pautan bibliografi

Mishchenko V.A., Korobkin A.A. MENGGUNAKAN ALGORITMA GENETIK DALAM LATIHAN RANGKAIAN SARAF // Masalah moden sains dan pendidikan. – 2011. – No. 6.;
URL: http://science-education.ru/ru/article/view?id=5138 (tarikh akses: 03/23/2020). Kami membawa kepada perhatian anda majalah yang diterbitkan oleh rumah penerbitan "Akademi Sains Semula Jadi"

Pengawal PID yang diterangkan di atas mempunyai penunjuk kualiti yang lemah apabila mengawal sistem tak linear dan kompleks, serta apabila terdapat maklumat yang tidak mencukupi tentang objek kawalan. Ciri-ciri pengawal selia dalam beberapa kes boleh diperbaiki menggunakan kaedah logik kabur, rangkaian saraf dan algoritma genetik. Kaedah yang disenaraikan dipanggil "pengkomputeran lembut" di luar negara, menekankan perbezaannya daripada "pengkomputeran keras", yang terdiri daripada keupayaan untuk beroperasi dengan data yang tidak lengkap dan tidak tepat. Gabungan kaedah yang disenaraikan (pengawal kabur-PID, neuro-PID, neuro-kabur-PID dengan algoritma genetik) boleh digunakan dalam satu pengawal.

Kelemahan utama pengawal rangkaian kabur dan saraf ialah kesukaran untuk menyediakannya (menyusun asas peraturan kabur dan melatih rangkaian saraf).

5.7.1. Logik kabur dalam pengawal PID

Inferens kabur dilakukan seperti berikut. Mari kita anggap bahawa kawasan perubahan ralat dibahagikan kepada set, kawasan perubahan tindakan kawalan dibahagikan kepada set, dan dengan bantuan pakar adalah mungkin untuk merumuskan peraturan berikut untuk operasi pengawal selia [Astrom]:

Peraturan 1: jika = dan =, maka =

Peraturan 2: jika = dan =, maka =

Peraturan 3: jika = dan =, maka =

Peraturan 4: jika = dan =, maka =

Peraturan 5: jika = dan =, maka =

Peraturan 6: jika = dan =, maka =

Peraturan 7: jika = dan =, maka =

Peraturan 8: jika = dan =, maka =

Peraturan 9: jika = dan =, maka =.

Peraturan yang diberikan selalunya ditulis dalam bentuk jadual yang lebih padat (Rajah 5.91).

Menggunakan peraturan, anda boleh mendapatkan nilai pembolehubah kawalan pada output pengawal kabur. Untuk melakukan ini, anda perlu mencari fungsi keahlian pembolehubah kepada set yang terbentuk hasil daripada melaksanakan operasi inferens pada set yang termasuk dalam sistem peraturan (5.118).

e

nasi. 5.91. Perwakilan peraturan kabur dalam bentuk jadual

Operasi "DAN" dalam peraturan (5.118) sepadan dengan persilangan set, dan hasil penggunaan semua peraturan sepadan dengan operasi gabungan set [Rutkovskaya]. Fungsi keahlian untuk persilangan dua set, sebagai contoh, dan (lihat Peraturan 1) didapati sebagai [Rutkovskaya]

Fungsi keahlian yang diperoleh daripada persilangan atau kesatuan set boleh ditakrifkan dalam pelbagai cara, bergantung kepada maksud masalah yang diselesaikan. Dalam pengertian ini, teori set kabur itu sendiri juga kabur. Dalam [Rutkovskaya] 10 definisi berbeza fungsi keahlian untuk persilangan set diberikan, tetapi ia tidak menyatakan yang mana satu harus dipilih untuk menyelesaikan masalah tertentu. Khususnya, mereka menggunakan operasi yang lebih mudah difahami untuk mencari fungsi keahlian dalam kes persilangan dan penyatuan set, yang mempunyai analogi dengan peraturan pendaraban dan penambahan kebarangkalian:

Walau bagaimanapun, menggunakan dua kaedah pertama untuk mencari fungsi keahlian biasanya lebih disukai, kerana pada masa yang sama, kebanyakan peraturan yang dibangunkan untuk set biasa [Uskov] dipelihara.

Fungsi keahlian untuk setiap set yang termasuk dalam pembolehubah kabur dalam peraturan (5.118) diperoleh dalam bentuk [Rutkovskaya]

Di sini, setiap daripada 9 persamaan sepadan dengan salah satu peraturan (5.118). Fungsi keahlian yang terhasil bagi tindakan kawalan, yang diperoleh selepas menggunakan kesemua 9 peraturan, didapati sebagai kesatuan fungsi keahlian semua peraturan:

Sekarang bahawa fungsi keahlian yang terhasil dari tindakan kawalan telah diperoleh, persoalan timbul tentang apakah nilai khusus tindakan kawalan yang harus dipilih. Jika kita menggunakan tafsiran kebarangkalian bagi teori set kabur, menjadi jelas bahawa nilai sedemikian boleh diperolehi dengan analogi dengan jangkaan matematik tindakan kawalan dalam bentuk:

.

Kaedah defuzzifikasi ini adalah yang paling biasa, tetapi bukan satu-satunya.

Untuk membina pengawal kabur, undang-undang kawalan P, I, PI dan PD PD+I, PI+D dan PID biasanya digunakan [Mann]. Isyarat input untuk sistem inferens kabur ialah isyarat ralat, kenaikan ralat, kuasa dua ralat dan kamiran ralat [Mann]. Melaksanakan pengawal PID kabur adalah bermasalah kerana ia mesti mempunyai jadual peraturan tiga dimensi mengikut tiga istilah dalam persamaan pengawal PID, yang amat sukar untuk diselesaikan menggunakan jawapan pakar. Sebilangan besar struktur pengawal kabur seperti PID boleh didapati dalam artikel [Mann].

Penalaan akhir pengawal kabur atau penalaan dekat dengan yang optimum masih menjadi tugas yang sukar. Untuk tujuan ini, algoritma latihan style="color:red"> dan kaedah carian genetik digunakan, yang memerlukan sumber dan masa pengkomputeran yang besar.

Menggunakan logik kabur untuk melaraskan pekali pengawal PID

Penalaan pengawal yang dilakukan menggunakan kaedah yang digariskan dalam bahagian "Pengiraan parameter" dan "Penalaan dan penyesuaian automatik" tidak optimum dan boleh diperbaiki dengan penalaan selanjutnya. Pelarasan boleh dilakukan oleh operator berdasarkan peraturan (lihat bahagian “Penalaan manual berdasarkan peraturan”) atau secara automatik, menggunakan blok logik kabur (Gamb. 5.92). Blok logik kabur (blok kabur) menggunakan asas peraturan penalaan dan kaedah inferens kabur. Penalaan kabur mengurangkan overshoot, mengurangkan masa penyelesaian dan meningkatkan keteguhan pengawal PID [Yesil].

Proses autotala pengawal menggunakan blok logik kabur bermula dengan mencari anggaran awal pekali pengawal. Ini biasanya dilakukan dengan kaedah Ziegler-Nichols, berdasarkan tempoh ayunan semula jadi dalam sistem tertutup dan keuntungan gelung. Seterusnya, fungsi kriteria dirumuskan, yang diperlukan untuk mencari nilai optimum parameter penalaan menggunakan kaedah pengoptimuman.

Dalam proses penalaan pengawal, beberapa langkah digunakan [Hsuan]. Pertama, julat isyarat input dan output blok autotala, bentuk fungsi keahlian parameter yang diperlukan, peraturan inferens kabur, mekanisme inferens logik, kaedah penyahfuzzan dan julat faktor skala yang diperlukan untuk menukar pembolehubah tajam menjadi kabur dipilih.

Carian parameter pengawal dilakukan menggunakan kaedah pengoptimuman. Untuk melakukan ini, fungsi sasaran dipilih sebagai kamiran daripada jumlah kuasa dua ralat kawalan dan masa penyelesaian. Kadar peningkatan pembolehubah keluaran objek kadangkala ditambah pada kriteria pengecilan.

Sebagai parameter yang diperlukan (parameter yang perlu dicari), kedudukan maksima fungsi keahlian (lihat Rajah 5.90) ​​dan faktor skala pada input dan output blok kabur dipilih. Kepada masalah pengoptimuman, sekatan ditambah pada julat perubahan dalam kedudukan fungsi keahlian. Pengoptimuman fungsi kriteria boleh dilakukan, contohnya, menggunakan algoritma genetik.

Perlu diingatkan bahawa dalam kes di mana terdapat maklumat yang mencukupi untuk mendapatkan model matematik yang tepat bagi sesuatu objek, pengawal tradisional akan sentiasa lebih baik daripada pengawal kabur kerana apabila mensintesis pengawal kabur, data awal diberikan lebih kurang.

5.7.2. Rangkaian saraf tiruan

Rangkaian saraf, seperti logik kabur, digunakan dalam pengawal PID dalam dua cara: untuk membina pengawal itu sendiri dan untuk membina blok untuk melaraskan pekalinya. Rangkaian saraf mempunyai keupayaan untuk "belajar", yang membolehkan anda menggunakan pengalaman pakar untuk mengajar rangkaian saraf seni melaraskan pekali pengawal PID. Pengawal rangkaian saraf adalah serupa dengan pengawal terkawal jadual (lihat bahagian "Kawalan berasaskan jadual">), tetapi berbeza dalam kaedah penalaan khas ("latihan") yang dibangunkan untuk rangkaian saraf dan kaedah interpolasi data.

Tidak seperti pengawal kabur, di mana seorang pakar mesti merumuskan peraturan penalaan dalam pembolehubah linguistik, apabila menggunakan rangkaian saraf, pakar tidak diperlukan untuk merumuskan peraturan - sudah cukup baginya untuk menyediakan pengawal sendiri beberapa kali semasa proses " melatih” rangkaian saraf.

Rangkaian saraf telah dicadangkan pada tahun 1943 oleh McCulloch dan Pitts hasil daripada kajian aktiviti saraf dan neuron biologi. Neuron Buatan ialah blok berfungsi dengan satu output dan input yang melaksanakan penjelmaan bukan linear secara amnya , di manakah pekali pemberat (parameter) untuk pembolehubah input; - anjakan berterusan; -" fungsi pengaktifan" neuron, sebagai contoh, bentuk (fungsi sigmoid), di mana terdapat beberapa parameter. Rangkaian saraf (Rajah 5.93) terdiri daripada banyak neuron yang saling berkaitan, bilangan sambungan boleh beribu-ribu. Disebabkan oleh fungsi pengaktifan yang tidak linear dan sejumlah besar pekali yang boleh disesuaikan ([Kato] menggunakan 35 neuron dalam lapisan input dan 25 dalam lapisan output, manakala bilangan pekali ialah 1850), rangkaian saraf boleh melakukan pemetaan bukan linear bagi banyak isyarat masukan kepada banyak isyarat keluaran.

Struktur tipikal sistem kawalan automatik dengan pengawal PID dan rangkaian saraf sebagai unit penalaan automatik ditunjukkan dalam Rajah. 5.94 [Kawafuku, Kato]. Rangkaian saraf dalam struktur ini memainkan peranan sebagai penukar berfungsi, yang bagi setiap set isyarat menjana pekali pengawal PID (kaedah ralat perambatan belakang) [Terekhov]. Kaedah lain untuk mencari minimum juga digunakan, termasuk algoritma genetik, penyepuhlindapan simulasi dan kuasa dua terkecil.

Proses latihan rangkaian saraf adalah seperti berikut (Rajah 5.95). Pakar diberi peluang untuk melaraskan parameter pengawal dalam sistem kawalan automatik tertutup di bawah pelbagai pengaruh input. Diandaikan bahawa pakar boleh melakukan ini dengan kualiti yang mencukupi untuk amalan. Rajah masa (osilogram) pembolehubah yang diperolehi dalam sistem yang dilaraskan oleh pakar direkodkan dalam arkib dan kemudian disalurkan ke rangkaian saraf yang disambungkan kepada pengawal PID (Rajah 5.95

nasi. 5.95. Skim untuk melatih rangkaian saraf dalam blok penalaan automatik

Tempoh proses pembelajaran adalah halangan utama kepada penggunaan meluas kaedah rangkaian saraf dalam pengawal PID [Uskov]. Kelemahan lain rangkaian saraf ialah ketidakupayaan untuk meramal ralat kawalan untuk tindakan input yang bukan sebahagian daripada set isyarat latihan; kekurangan kriteria untuk memilih bilangan neuron dalam rangkaian, tempoh latihan, julat dan bilangan pengaruh latihan. Tiada satu pun penerbitan yang mengkaji keteguhan atau margin kestabilan pengawal selia.

5.7.3. Algoritma genetik

1. Pemilihan populasi awal kromosom bersaiz N.

2. Penilaian kecergasan kromosom dalam populasi.

3. Menyemak keadaan algoritma berhenti.

4. Pemilihan kromosom.

5. Aplikasi pengendali genetik.

6. Pembentukan populasi baru.

7. Pergi ke langkah 2.

Untuk algoritma berfungsi, anda perlu menetapkan had bawah dan atas perubahan dalam parameter yang diperlukan, kebarangkalian persilangan, kebarangkalian mutasi, saiz populasi dan bilangan maksimum generasi.

Populasi awal kromosom dijana secara rawak. Kecergasan kromosom dinilai menggunakan fungsi objektif dalam bentuk yang dikodkan. Seterusnya, kromosom dengan kecergasan yang lebih baik dikumpulkan ke dalam satu kumpulan, di mana operasi genetik persilangan atau mutasi dilakukan. Persilangan membolehkan anda mendapatkan keturunan yang menjanjikan daripada dua ibu bapa. Pengendali mutasi membuat perubahan pada kromosom. Dalam kes pengekodan binari, mutasi terdiri daripada menukar bit rawak dalam perkataan binari.

nasi. 5.97), maka pertukaran maklumat genetik berlaku, terletak di sebelah kanan kedudukan yang dipilih [Fleming].

Selepas melaksanakan algoritma genetik, perwakilan binari dinyahkodkan kepada kuantiti kejuruteraan.

Penilaian kesesuaian kromosom dalam populasi untuk menganggar pekali pengawal selia PID boleh dipilih, sebagai contoh, sebagai

,

di mana nilai semasa ralat kawalan, ialah masa.

Pemilihan kromosom dijalankan menggunakan kaedah rolet. Roda rolet mempunyai sektor, dan lebar sektor adalah berkadar dengan fungsi kecergasan. Oleh itu, semakin besar nilai fungsi ini, semakin besar kemungkinan pemilihan kromosom yang sepadan dengannya.

Radas set kabur dan logik kabur telah lama berjaya digunakan untuk menyelesaikan masalah di mana data sumber tidak boleh dipercayai dan tidak diformalkan dengan baik. Kekuatan pendekatan ini.

Penerangan tentang syarat dan kaedah menyelesaikan masalah dalam bahasa yang hampir dengan semula jadi;

Kesejagatan: mengikut teorem FAT (Teorem Penghampiran Kabur), dibuktikan oleh B. Kosko pada tahun 1993, mana-mana sistem matematik boleh dianggarkan oleh sistem berdasarkan logik kabur;

Kecekapan (dikaitkan dengan kesejagatan), dijelaskan oleh beberapa teorem yang serupa dengan teorem kesempurnaan untuk rangkaian saraf tiruan, sebagai contoh, teorem bentuk: untuk setiap fungsi berterusan sebenar yang ditakrifkan pada set padat dan untuk satu arbitrari, terdapat sistem pakar kabur yang menjana fungsi output sedemikian

di mana adalah simbol jarak yang diterima antara fungsi.

Pada masa yang sama, sistem kabur juga mempunyai kelemahan tertentu:

Set awal peraturan fuzzy postulated dirumuskan oleh pakar manusia dan mungkin berubah menjadi tidak lengkap atau bercanggah;

Jenis dan parameter fungsi keahlian yang menerangkan pembolehubah input dan output sistem dipilih secara subjektif dan mungkin tidak mencerminkan realiti sepenuhnya.

Untuk menghapuskan, sekurang-kurangnya sebahagiannya, kelemahan ini, adalah dicadangkan untuk mencipta sistem kabur adaptif, melaraskan, semasa ia berfungsi, peraturan dan parameter fungsi keahlian. Salah satu contoh sistem sedemikian yang paling berjaya ialah rangkaian neural kabur.

Rangkaian saraf kabur secara rasminya sama dalam struktur dengan rangkaian saraf berbilang lapisan dengan latihan, contohnya, menggunakan algoritma perambatan belakang, tetapi lapisan tersembunyi di dalamnya sepadan dengan peringkat fungsi sistem kabur:

Lapisan pertama neuron melaksanakan fungsi memperkenalkan fuzzifikasi berdasarkan fungsi keahlian yang ditentukan bagi input;

Lapisan kedua memaparkan satu set peraturan kabur;

Lapisan ketiga melaksanakan fungsi penyahfuzzifikasi.

Setiap lapisan ini dicirikan oleh satu set parameter (fungsi keahlian, peraturan keputusan kabur, fungsi pengaktifan, berat sambungan), yang dikonfigurasikan pada asasnya dengan cara yang sama seperti untuk rangkaian saraf konvensional.

Di bawah ini kita membincangkan aspek teori untuk mencipta rangkaian sedemikian, iaitu, radas logik kabur dan rangkaian neural kabur itu sendiri berhubung dengan masalah membuat keputusan di bawah keadaan ketidakpastian.

Di samping itu, dalam bab ini, perhatian penting diberikan kepada pertimbangan algoritma genetik, yang, seperti rangkaian neural kabur, tergolong dalam kelas sistem hibrid. Aplikasi yang paling popular adalah di mana algoritma genetik digunakan dalam proses melatih rangkaian saraf, termasuk yang kabur, untuk mencari struktur optimum dan set pekali pemberat.