Operation Research and Analysis
Dipublikasikan oleh Siti Nur Rahmawati pada 22 Agustus 2022
Metode optimasi stokastik (SO) adalah metode optimasi yang menghasilkan dan menggunakan variabel acak. Untuk masalah stokastik, variabel acak muncul dalam rumusan masalah optimasi itu sendiri, yang melibatkan fungsi tujuan acak atau kendala acak. Metode optimasi stokastik juga mencakup metode dengan iterasi acak. Beberapa metode optimasi stokastik menggunakan iterasi acak untuk memecahkan masalah stokastik, menggabungkan kedua arti dari optimasi stokastik. Metode optimasi stokastik menggeneralisasi metode deterministik untuk masalah deterministik.
Metode untuk fungsi stokastik
Data masukan sebagian acak muncul di bidang-bidang seperti estimasi dan kontrol waktu nyata, optimasi berbasis simulasi di mana simulasi Monte Carlo dijalankan sebagai perkiraan sistem aktual, dan masalah di mana ada kesalahan eksperimental (acak) dalam pengukuran kriteria. Dalam kasus seperti itu, pengetahuan bahwa nilai fungsi terkontaminasi oleh "noise" acak mengarah secara alami ke algoritme yang menggunakan alat inferensi statistik untuk memperkirakan nilai "sebenarnya" fungsi dan/atau membuat keputusan optimal secara statistik tentang langkah selanjutnya. Metode kelas ini meliputi:
Metode pencarian acak
Di sisi lain, bahkan ketika kumpulan data terdiri dari pengukuran yang tepat, beberapa metode memasukkan keacakan ke dalam proses pencarian untuk mempercepat kemajuan. Keacakan tersebut juga dapat membuat metode kurang sensitif terhadap kesalahan pemodelan. Selanjutnya, keacakan yang disuntikkan dapat memungkinkan metode untuk lolos dari optimum lokal dan akhirnya mendekati optimum global. Memang, prinsip pengacakan ini dikenal sebagai cara yang sederhana dan efektif untuk mendapatkan algoritme dengan kinerja bagus yang hampir pasti secara seragam di banyak kumpulan data, untuk berbagai macam masalah. Metode optimasi stokastik semacam ini meliputi:
Sebaliknya, beberapa penulis berpendapat bahwa pengacakan hanya dapat meningkatkan algoritma deterministik jika algoritma deterministik dirancang dengan buruk sejak awal. Fred W. Glover[20] berpendapat bahwa ketergantungan pada elemen acak dapat mencegah pengembangan komponen deterministik yang lebih cerdas dan lebih baik. Cara di mana hasil algoritma optimasi stokastik biasanya disajikan (misalnya, hanya menyajikan rata-rata, atau bahkan yang terbaik, dari N berjalan tanpa menyebutkan spread), juga dapat menghasilkan bias positif terhadap keacakan.
Sumber Artikel: en.wikipedia.org
Operation Research and Analysis
Dipublikasikan oleh Siti Nur Rahmawati pada 22 Agustus 2022
Matematika komputasional melibatkan penelitian matematika dalam matematika serta di bidang sains di mana komputasi memainkan peran sentral dan esensial, dan menekankan algoritma, metode numerik, dan komputasi simbolis.
Matematika terapan komputasional terdiri dari penggunaan matematika untuk memungkinkan dan meningkatkan komputasi komputer dalam matematika terapan. Matematika komputasi juga dapat merujuk pada penggunaan komputer untuk matematika itu sendiri. Ini termasuk penggunaan komputer untuk perhitungan matematis (aljabar komputer), studi tentang apa yang dapat (dan tidak dapat) dikomputerisasi dalam matematika (metode efektif), perhitungan mana yang dapat dilakukan dengan teknologi saat ini (teori kompleksitas), dan bukti mana yang dapat diperoleh. dilakukan pada komputer (asisten bukti).
Bidang matematika komputasi
Matematika komputasi muncul sebagai bagian yang berbeda dari matematika terapan pada awal 1950-an. Saat ini, matematika komputasi dapat merujuk atau mencakup:
Sumber Artikel: en.wikipedia.org
Operation Research and Analysis
Dipublikasikan oleh Siti Nur Rahmawati pada 22 Agustus 2022
Dalam matematika komputasi, metode iteratif adalah prosedur matematika yang menggunakan nilai awal untuk menghasilkan urutan peningkatan solusi perkiraan untuk kelas masalah, di mana pendekatan ke-n diturunkan dari yang sebelumnya. Implementasi spesifik dari metode iteratif, termasuk kriteria terminasi, adalah algoritma dari metode iteratif. Metode iteratif disebut konvergen jika barisan yang bersesuaian konvergen untuk aproksimasi awal yang diberikan. Sebuah analisis konvergensi matematis ketat dari metode iteratif biasanya dilakukan; namun, metode iteratif berbasis heuristik juga umum.
Sebaliknya, metode langsung berusaha memecahkan masalah dengan urutan operasi yang terbatas. Dengan tidak adanya kesalahan pembulatan, metode langsung akan memberikan solusi eksak (misalnya, menyelesaikan sistem persamaan linear dengan eliminasi Gauss). Metode iteratif seringkali merupakan satu-satunya pilihan untuk persamaan nonlinier. Namun, metode iteratif seringkali berguna bahkan untuk masalah linier yang melibatkan banyak variabel (kadang-kadang dalam urutan jutaan), di mana metode langsung akan sangat mahal (dan dalam beberapa kasus tidak mungkin) bahkan dengan daya komputasi terbaik yang tersedia.
Titik tetap yang menarik
Jika suatu persamaan dapat dimasukkan ke dalam bentuk f(x) = x, dan solusi x adalah titik tetap tarik-menarik dari fungsi f, maka dapat dimulai dengan titik x1 pada cekungan tarik-menarik x, dan misalkan xn+ 1 = f(xn) untuk n 1, dan barisan {xn}n 1 akan konvergen ke solusi x. Di sini xn adalah aproksimasi atau iterasi ke-n dari x dan xn+1 adalah iterasi berikutnya atau n+1 dari x. Sebagai alternatif, superskrip dalam tanda kurung sering digunakan dalam metode numerik, agar tidak mengganggu subskrip dengan arti lain. (Misalnya, x(n+1) = f(x(n)).) Jika fungsi f terdiferensialkan secara kontinu, syarat yang cukup untuk konvergensi adalah bahwa jari-jari spektral turunan dibatasi secara ketat oleh satu di sekitar titik tetap. Jika kondisi ini berlaku pada titik tetap, maka lingkungan yang cukup kecil (cekungan tarik-menarik) harus ada.
Sistem linier
Dalam kasus sistem persamaan linear, dua kelas utama metode iteratif adalah metode iteratif stasioner, dan metode subruang Krylov yang lebih umum.
Metode iteratif stasioner
pengantar
Metode iteratif stasioner menyelesaikan sistem linier dengan operator yang mendekati yang asli; dan berdasarkan pengukuran kesalahan dalam hasil (sisa), bentuk "persamaan koreksi" yang proses ini diulang. Meskipun metode ini sederhana untuk diturunkan, diimplementasikan, dan dianalisis, konvergensi hanya dijamin untuk kelas matriks yang terbatas.
Definisi
Sebuah metode iteratif didefinisikan oleh
dan untuk sistem linier tertentu dengan solusi eksak kesalahan oleh
Metode iteratif disebut linier jika terdapat matriks sedemikian itu
dan matriks ini disebut matriks iterasi. Metode iteratif dengan matriks iterasi tertentu disebut konvergen jika berikut ini berlaku
Sebuah teorema penting menyatakan bahwa untuk suatu metode iteratif dan matriks iterasinya konvergen jika dan hanya jika jari-jari spektralnya lebih kecil daripada kesatuan, yaitu
Metode iteratif dasar bekerja dengan membagi matriks menjadi
dan di sini matriks harus mudah dibalik. Metode iteratif sekarang didefinisikan sebagai
Dari sini berikut bahwa matriks iterasi diberikan oleh
Contoh
Contoh dasar metode iteratif stasioner menggunakan pemisahan matriks seperti
di mana hanyalah bagian diagonal dari , dan adalah bagian segitiga bawah dari . Masing-masing, adalah bagian segitiga atas dari .
Metode Richardson:
Metode Jacobi:
Metode Jacobi teredam:
Metode Gauss–Seidel:
Metode over-relaksasi (SOR):
Relaksasi berlebihan berurutan (SSOR):
Metode iteratif stasioner linier juga disebut metode relaksasi.
Metode subruang Krylov
Metode subruang Krylov bekerja dengan membentuk basis dari barisan pangkat matriks yang berurutan dikalikan dengan residual awal (urutan Krylov). Pendekatan ke solusi kemudian dibentuk dengan meminimalkan residu atas subruang yang terbentuk. Metode prototipikal dalam kelas ini adalah metode gradien konjugasi (CG) yang mengasumsikan bahwa matriks sistem {\displaystyle A}A adalah pasti-positif simetris. Untuk simetris (dan mungkin tidak terbatas) {\displaystyle A}Satu bekerja dengan metode residual minimal (MINRES). Dalam kasus matriks non-simetris, metode seperti metode residual minimal umum (GMRES) dan metode gradien bikonjugasi (BiCG) telah diturunkan.
Konvergensi metode subruang Krylov
Karena metode ini membentuk basis, terbukti bahwa metode tersebut konvergen dalam N iterasi, di mana N adalah ukuran sistem. Namun, dengan adanya kesalahan pembulatan, pernyataan ini tidak berlaku; apalagi, dalam praktiknya N bisa sangat besar, dan proses iteratif mencapai akurasi yang cukup jauh lebih awal. Analisis metode ini sulit, tergantung pada fungsi spektrum operator yang rumit.
Prakondisi
Operator aproksimasi yang muncul dalam metode iteratif stasioner juga dapat digabungkan dalam metode subruang Krylov seperti GMRES (sebagai alternatif, metode Krylov yang telah diprakondisikan dapat dianggap sebagai percepatan metode iteratif stasioner), di mana mereka menjadi transformasi dari operator asli ke kondisi yang mungkin lebih baik. satu. Konstruksi preconditioners adalah area penelitian yang besar.
Sejarah
Jamshīd al-Kāsh menggunakan metode iteratif untuk menghitung sinus 1° dan dalam The Treatise of Chord and Sine dengan presisi tinggi. Metode iteratif awal untuk memecahkan sistem linier muncul dalam surat Gauss kepada seorang siswanya. Dia mengusulkan pemecahan sistem persamaan 4-kali-4 dengan berulang kali memecahkan komponen di mana sisa adalah yang terbesar [rujukan?].
Teori metode iteratif stasioner didirikan dengan kokoh dengan karya D.M. Muda mulai tahun 1950-an. Metode gradien konjugasi juga ditemukan pada 1950-an, dengan pengembangan independen oleh Cornelius Lanczos, Magnus Hestenes dan Eduard Stiefel, tetapi sifat dan penerapannya disalahpahami pada saat itu. Baru pada tahun 1970-an disadari bahwa metode berbasis konjugasi bekerja sangat baik untuk persamaan diferensial parsial, terutama tipe eliptik.
Sumber Artikel: en.wikipedia.org
Operation Research and Analysis
Dipublikasikan oleh Siti Nur Rahmawati pada 22 Agustus 2022
Dalam optimasi matematika dan ilmu komputer, heuristik (dari bahasa Yunani "Saya menemukan, menemukan") adalah teknik yang dirancang untuk memecahkan masalah lebih cepat ketika metode klasik terlalu lambat atau untuk menemukan solusi perkiraan ketika metode klasik gagal untuk menemukan solusi yang tepat. . Hal ini dicapai dengan perdagangan optimalitas, kelengkapan, akurasi, atau presisi untuk kecepatan. Di satu sisi, itu bisa dianggap sebagai jalan pintas.
Fungsi heuristik, juga disebut heuristik, adalah fungsi yang memberi peringkat alternatif dalam algoritma pencarian pada setiap langkah percabangan berdasarkan informasi yang tersedia untuk memutuskan cabang mana yang akan diikuti. Misalnya, mungkin mendekati solusi yang tepat.
Definisi dan motivasi
Tujuan dari heuristik adalah untuk menghasilkan solusi dalam kerangka waktu yang wajar yang cukup baik untuk memecahkan masalah yang dihadapi. Solusi ini mungkin bukan yang terbaik dari semua solusi untuk masalah ini, atau mungkin hanya mendekati solusi yang tepat. Tapi tetap berharga karena menemukannya tidak membutuhkan waktu yang lama.
Heuristik dapat menghasilkan hasil sendiri, atau mereka dapat digunakan bersama dengan algoritma optimasi untuk meningkatkan efisiensinya (misalnya, mereka dapat digunakan untuk menghasilkan nilai benih yang baik).
Hasil tentang NP-hardness dalam ilmu komputer teoretis menjadikan heuristik satu-satunya pilihan yang layak untuk berbagai masalah optimasi kompleks yang perlu diselesaikan secara rutin dalam aplikasi dunia nyata.
Heuristik mendasari seluruh bidang Kecerdasan Buatan dan simulasi komputer berpikir, karena mereka dapat digunakan dalam situasi di mana tidak ada algoritma yang diketahui.
Trade-off
Kriteria trade-off untuk memutuskan apakah akan menggunakan heuristik untuk memecahkan masalah yang diberikan meliputi:
Dalam beberapa kasus, mungkin sulit untuk memutuskan apakah solusi yang ditemukan oleh heuristik cukup baik, karena teori yang mendasari heuristik tidak terlalu rumit.
Contoh
Masalah yang lebih sederhana
Salah satu cara untuk mencapai perolehan kinerja komputasi yang diharapkan dari heuristik terdiri dari pemecahan masalah yang lebih sederhana yang solusinya juga merupakan solusi untuk masalah awal.
Masalah penjual keliling
Contoh pendekatan dijelaskan oleh Jon Bentley untuk memecahkan masalah penjual keliling (TSP):
sehingga dapat memilih urutan menggambar menggunakan pen plotter. TSP dikenal sebagai NP-hard sehingga solusi optimal untuk masalah ukuran sedang pun sulit untuk dipecahkan. Sebaliknya, algoritma serakah dapat digunakan untuk memberikan solusi yang baik tetapi tidak optimal (ini adalah perkiraan untuk jawaban yang optimal) dalam waktu yang cukup singkat. Heuristik algoritma serakah mengatakan untuk memilih apa pun yang saat ini merupakan langkah terbaik berikutnya terlepas dari apakah itu mencegah (atau bahkan membuat tidak mungkin) langkah baik nanti. Ini adalah heuristik dalam praktik yang mengatakan itu adalah solusi yang cukup baik, teori mengatakan ada solusi yang lebih baik (dan bahkan dapat mengatakan seberapa jauh lebih baik dalam beberapa kasus).
Mencari
Contoh lain dari heuristik membuat algoritma lebih cepat terjadi pada masalah pencarian tertentu. Awalnya, heuristik mencoba setiap kemungkinan pada setiap langkah, seperti algoritma pencarian ruang penuh. Tapi itu bisa menghentikan pencarian kapan saja jika kemungkinan saat ini sudah lebih buruk daripada solusi terbaik yang sudah ditemukan. Dalam masalah pencarian seperti itu, heuristik dapat digunakan untuk mencoba pilihan yang baik terlebih dahulu sehingga jalur yang buruk dapat dihilangkan lebih awal (lihat pemangkasan alfa-beta). Dalam kasus algoritma pencarian terbaik-pertama, seperti pencarian A*, heuristik meningkatkan konvergensi algoritma sambil mempertahankan kebenarannya selama heuristik dapat diterima.
Newell dan Simon: hipotesis pencarian heuristik
Dalam pidato penerimaan Penghargaan Turing mereka, Allen Newell dan Herbert A. Simon membahas hipotesis pencarian heuristik: sistem simbol fisik akan berulang kali menghasilkan dan memodifikasi struktur simbol yang diketahui sampai struktur yang dibuat cocok dengan struktur solusi. Setiap langkah berikutnya tergantung pada langkah sebelumnya, sehingga pencarian heuristik mempelajari jalan apa yang harus dikejar dan mana
perlu diabaikan dengan mengukur seberapa dekat langkah saat ini dengan solusi. Oleh karena itu, beberapa kemungkinan tidak akan pernah dihasilkan karena kemungkinannya kecil untuk menyelesaikan solusi.
Metode heuristik dapat menyelesaikan tugasnya dengan menggunakan pohon pencarian. Namun, alih-alih menghasilkan semua cabang solusi yang mungkin, heuristik memilih cabang yang lebih mungkin menghasilkan hasil daripada cabang lainnya. Ini selektif pada setiap titik keputusan, memilih cabang yang lebih mungkin menghasilkan solusi.
Perangkat lunak antivirus
Perangkat lunak antivirus sering menggunakan aturan heuristik untuk mendeteksi virus dan bentuk malware lainnya. Pemindaian heuristik mencari kode dan/atau pola perilaku yang umum pada kelas atau keluarga virus, dengan seperangkat aturan yang berbeda untuk virus yang berbeda. Jika file atau proses eksekusi ditemukan berisi pola kode yang cocok dan/atau melakukan rangkaian aktivitas tersebut, pemindai menyimpulkan bahwa file tersebut terinfeksi. Bagian paling canggih dari pemindaian heuristik berbasis perilaku adalah bahwa ia dapat bekerja melawan virus yang sangat acak yang memodifikasi/bermutasi (polimorfik) yang tidak dapat dengan mudah dideteksi dengan metode pemindaian string yang lebih sederhana. Pemindaian heuristik memiliki potensi untuk mendeteksi virus di masa depan tanpa mengharuskan virus untuk pertama kali terdeteksi di tempat lain, diserahkan ke pengembang pemindai virus, dianalisis, dan pembaruan deteksi untuk pemindai yang diberikan kepada pengguna pemindai.
Jebakan
Beberapa heuristik memiliki teori dasar yang kuat; mereka diturunkan secara top-down dari teori atau diperoleh berdasarkan data eksperimental atau dunia nyata. Yang lain hanyalah aturan praktis berdasarkan pengamatan atau pengalaman dunia nyata bahkan tanpa melihat teori. Yang terakhir terkena lebih banyak jebakan.
Ketika heuristik digunakan kembali dalam berbagai konteks karena telah terlihat "berfungsi" dalam satu konteks, tanpa terbukti secara matematis untuk memenuhi serangkaian persyaratan tertentu, ada kemungkinan bahwa kumpulan data saat ini tidak selalu mewakili kumpulan data masa depan ( lihat: overfitting) dan "solusi" yang diklaim itu ternyata mirip dengan kebisingan.
Analisis statistik dapat dilakukan ketika menggunakan heuristik untuk memperkirakan kemungkinan hasil yang salah. Untuk menggunakan heuristik untuk memecahkan masalah pencarian atau masalah knapsack, perlu untuk memeriksa apakah heuristik tersebut dapat diterima. Diberikan fungsi heuristik dimaksudkan untuk mendekati jarak optimal sebenarnya ke simpul tujuan dalam grafik berarah berisi total simpul atau simpul berlabel "diterima" berarti secara kasar bahwa heuristik meremehkan biaya untuk tujuan atau secara formal bahwa untuk semua di mana
Jika heuristik tidak dapat diterima, heuristik mungkin tidak akan pernah menemukan tujuannya, baik dengan berakhir di jalan buntu grafik atau dengan melompat-lompat di antara dua node dan dengan .
Etimologi
Kata "heuristik" mulai digunakan pada awal abad ke-19. Ini dibentuk secara tidak teratur dari kata Yunani heuriskein, yang berarti "menemukan".
Sumber Artikel: en.wikipedia.org
Operation Research and Analysis
Dipublikasikan oleh Siti Nur Rahmawati pada 22 Agustus 2022
Dalam ilmu komputer dan optimasi matematika, metaheuristik adalah prosedur tingkat tinggi atau heuristik yang dirancang untuk menemukan, menghasilkan, atau memilih heuristik (algoritma pencarian parsial) yang dapat memberikan solusi yang cukup baik untuk masalah optimasi, terutama dengan informasi yang tidak lengkap atau tidak sempurna. atau kapasitas komputasi yang terbatas. Metaheuristik sampel subset dari solusi yang dinyatakan terlalu besar untuk benar-benar dihitung atau dieksplorasi. Metaheuristik dapat membuat asumsi yang relatif sedikit tentang masalah optimasi yang sedang dipecahkan dan mungkin dapat digunakan untuk berbagai masalah.
Dibandingkan dengan algoritma optimasi dan metode iteratif, metaheuristik tidak menjamin bahwa solusi optimal global dapat ditemukan pada beberapa kelas masalah. Banyak metaheuristik menerapkan beberapa bentuk optimasi stokastik, sehingga solusi yang ditemukan bergantung pada himpunan variabel acak yang dihasilkan. Dalam optimasi kombinatorial, dengan mencari lebih dari satu set besar solusi yang layak, metaheuristik sering dapat menemukan solusi yang baik dengan upaya komputasi yang lebih sedikit daripada algoritma optimasi, metode iteratif, atau heuristik sederhana. Dengan demikian, mereka adalah pendekatan yang berguna untuk masalah optimasi. Beberapa buku dan makalah survei telah diterbitkan tentang masalah ini.
Kebanyakan literatur tentang metaheuristik adalah eksperimental di alam, menggambarkan hasil empiris berdasarkan eksperimen komputer dengan algoritma. Tetapi beberapa hasil teoretis formal juga tersedia, seringkali pada konvergensi dan kemungkinan menemukan optimum global. Banyak metode metaheuristik telah diterbitkan dengan klaim kebaruan dan kemanjuran praktis. Sementara bidang ini juga menampilkan penelitian berkualitas tinggi, banyak dari publikasinya memiliki kualitas yang buruk; kekurangan termasuk ketidakjelasan, kurangnya elaborasi konseptual, eksperimen yang buruk, dan ketidaktahuan literatur sebelumnya.
Properti
Ini adalah properti yang menjadi ciri sebagian besar metaheuristik:
Klasifikasi
Diagram Euler dari klasifikasi yang berbeda dari metaheuristik.
Ada berbagai macam metaheuristik dan sejumlah properti untuk mengklasifikasikannya.
Pencarian lokal vs. pencarian global
Salah satu pendekatannya adalah dengan mengkarakterisasi jenis strategi pencarian. Salah satu jenis strategi pencarian adalah perbaikan pada algoritma pencarian lokal sederhana. Algoritma pencarian lokal yang terkenal adalah metode hill climbing yang digunakan untuk menemukan lokal optimum. Namun, mendaki bukit tidak menjamin menemukan solusi optimal global.
Banyak ide metaheuristik diusulkan untuk meningkatkan heuristik pencarian lokal untuk menemukan solusi yang lebih baik. Metaheuristik tersebut termasuk simulasi anil, pencarian tabu, pencarian lokal berulang, pencarian lingkungan variabel, dan GRASP. Metaheuristik ini dapat diklasifikasikan sebagai metaheuristik pencarian berbasis lokal atau pencarian global.
Metaheuristik pencarian global lainnya yang tidak berbasis pencarian lokal biasanya adalah metaheuristik berbasis populasi. Metaheuristik tersebut meliputi optimasi koloni semut, komputasi evolusioner, optimasi gerombolan partikel, algoritma genetika, dan algoritma optimasi pengendara
Solusi tunggal vs berbasis populasi
Dimensi klasifikasi lainnya adalah solusi tunggal vs pencarian berbasis populasi. Pendekatan solusi tunggal berfokus pada modifikasi dan peningkatan solusi kandidat tunggal; metaheuristik solusi tunggal termasuk simulasi anil, pencarian lokal berulang, pencarian lingkungan variabel, dan pencarian lokal terpandu. Pendekatan berbasis populasi memelihara dan meningkatkan beberapa solusi kandidat, seringkali menggunakan karakteristik populasi untuk memandu pencarian; metaheuristik berbasis populasi meliputi komputasi evolusioner, algoritme genetika, dan optimasi gerombolan partikel. Kategori lain dari metaheuristik adalah Swarm intelligence yang merupakan perilaku kolektif dari agen yang terdesentralisasi dan terorganisir sendiri dalam suatu populasi atau swarm. Pengoptimalan koloni semut, pengoptimalan kawanan partikel, pengoptimalan kognitif sosial adalah contoh dari kategori ini.
Hibridisasi dan algoritma memetika
Sebuah metaheuristik hibrida adalah salah satu yang menggabungkan metaheuristik dengan pendekatan optimasi lainnya, seperti algoritma dari pemrograman matematika, pemrograman kendala, dan pembelajaran mesin. Kedua komponen metaheuristik hibrida dapat berjalan secara bersamaan dan bertukar informasi untuk memandu pencarian.
Di sisi lain, algoritma Memetic mewakili sinergi pendekatan evolusioner atau berbasis populasi dengan pembelajaran individu yang terpisah atau prosedur perbaikan lokal untuk pencarian masalah.
Contoh algoritme memetika adalah penggunaan algoritme pencarian lokal alih-alih operator mutasi dasar dalam algoritme evolusi.
Metaheuristik paralel
Metaheuristik paralel adalah salah satu yang menggunakan teknik pemrograman paralel untuk menjalankan beberapa pencarian metaheuristik secara paralel; ini dapat berkisar dari skema terdistribusi sederhana hingga pencarian bersamaan yang berinteraksi untuk meningkatkan solusi keseluruhan.
Metaheuristik yang terinspirasi alam dan berbasis metafora
Artikel utama: Kecerdasan kawanan dan Daftar metaheuristik yang terinspirasi metafora
Bidang penelitian yang sangat aktif adalah desain metaheuristik yang diilhami alam. Banyak metaheuristik baru-baru ini, terutama algoritma berbasis komputasi evolusioner, terinspirasi oleh sistem alami. Alam bertindak sebagai sumber konsep, mekanisme dan prinsip untuk merancang sistem komputasi buatan untuk menangani masalah komputasi yang kompleks. Metaheuristik tersebut termasuk simulasi anil, algoritma evolusioner, optimasi koloni semut dan optimasi gerombolan partikel. Sejumlah besar metaheuristik yang terinspirasi metafora baru-baru ini mulai menarik kritik di komunitas riset karena menyembunyikan kurangnya kebaruan mereka di balik metafora yang rumit.
Aplikasi
Metaheuristik digunakan untuk optimasi kombinatorial di mana solusi optimal dicari melalui ruang pencarian diskrit. Contoh masalah adalah masalah salesman keliling di mana ruang pencarian solusi kandidat tumbuh lebih cepat daripada eksponensial saat ukuran masalah meningkat, yang membuat pencarian menyeluruh untuk solusi optimal menjadi tidak layak. Selain itu, masalah kombinatorial multidimensi, termasuk sebagian besar masalah desain di bidang teknik seperti pencarian bentuk dan pencarian perilaku, menderita kutukan dimensi, yang juga membuatnya tidak layak untuk pencarian lengkap atau metode analisis. Metaheuristik juga banyak digunakan untuk penjadwalan jobshop dan masalah pemilihan pekerjaan. Metaheuristik populer untuk masalah kombinatorial termasuk simulasi anil oleh Kirkpatrick et al., algoritma genetika oleh Holland et al., pencarian pencar dan tabu search oleh Glover. Tinjauan literatur tentang optimasi metaheuristik, menyarankan bahwa Fred Glover yang menciptakan kata metaheuristik.
Kerangka Pengoptimalan Metaheuristik (MOFs)
MOF dapat didefinisikan sebagai '' seperangkat alat perangkat lunak yang menyediakan implementasi yang benar dan dapat digunakan kembali dari satu set metaheuristik, dan mekanisme dasar untuk mempercepat implementasi heuristik bawahan mitranya (mungkin termasuk pengkodean solusi dan operator khusus teknik) , yang diperlukan untuk memecahkan contoh masalah tertentu menggunakan teknik yang disediakan''.
Ada banyak alat pengoptimalan kandidat yang dapat dianggap sebagai MOF dari berbagai fitur: Comet, EvA2, evolvica, Evolutionary::Algorithm, GAPlayground, jaga, JCLEC, JGAP, jMetal, n-genes, Open Beagle, Opt4j, ParadisEO/EO , Pisa, Pembuat Jam, FOM, Hypercube, HotFrame, Templar, EasyLocal, iOpt, OptQuest, JDEAL, Toolkit Algoritma Pengoptimalan, HeuristicLab, MAFRA, Localizer, GALIB, DREAM, Discropt, MALLBA, MAGMA, Metaheuristics.jl, UOF dan Perencana Opta.
Kontribusi
Banyak metaheuristik yang berbeda ada dan varian baru terus diusulkan. Beberapa kontribusi paling signifikan di bidang ini adalah:
Sumber Artikel: en.wikipedia.org
Operation Research and Analysis
Dipublikasikan oleh Siti Nur Rahmawati pada 22 Agustus 2022
Dalam optimasi matematis, daerah fisibel, himpunan fisibel, ruang pencarian, atau ruang solusi adalah himpunan semua titik yang mungkin (kumpulan nilai dari variabel pilihan) dari masalah optimasi yang memenuhi kendala masalah, yang berpotensi termasuk pertidaksamaan, persamaan, dan pertidaksamaan. batasan bilangan bulat. Ini adalah kumpulan kandidat solusi awal untuk masalah, sebelum kumpulan kandidat dipersempit.
Misalnya, pertimbangkan masalah meminimalkan fungsi sehubungan dengan variabel dan , tunduk pada dan Di sini himpunan layak adalah himpunan pasangan (x,y) yang nilai x paling sedikit 1 dan paling banyak 10 dan nilai y paling sedikit 5 dan paling banyak 12. Himpunan masalah yang layak terpisah dari fungsi tujuan, yang menyatakan kriteria yang akan dioptimalkan dan yang dalam contoh di atas adalah
Dalam banyak masalah, himpunan layak mencerminkan kendala bahwa satu atau lebih variabel harus non-negatif. Dalam masalah pemrograman bilangan bulat murni, himpunan layak adalah himpunan bilangan bulat (atau beberapa subset daripadanya). Dalam masalah pemrograman linier, himpunan layak adalah politop cembung: wilayah dalam ruang multidimensi yang batas-batasnya dibentuk oleh hyperplanes dan sudut-sudutnya adalah simpul.
Kepuasan kendala adalah proses menemukan titik di wilayah yang layak.
Daerah fisibel tertutup dari masalah program linier dengan tiga variabel adalah polihedron cembung.
Himpunan layak cembung
Dalam masalah pemrograman linier, serangkaian kendala linier menghasilkan wilayah layak cembung dari nilai-nilai yang mungkin untuk variabel-variabel tersebut. Dalam kasus dua variabel daerah ini berbentuk poligon sederhana cembung.
Himpunan layak cembung adalah himpunan di mana ruas garis yang menghubungkan dua titik layak hanya melalui titik layak lainnya, dan tidak melalui sembarang titik di luar himpunan layak. Himpunan layak cembung muncul dalam banyak jenis masalah, termasuk masalah pemrograman linier, dan mereka sangat menarik karena, jika masalah memiliki fungsi tujuan cembung yang dimaksimalkan, umumnya akan lebih mudah diselesaikan dengan adanya konveks. himpunan layak dan setiap optimum lokal juga akan menjadi optimum global.
Tidak ada set yang layak
Jika kendala dari masalah optimasi saling bertentangan, tidak ada titik yang memenuhi semua kendala dan dengan demikian wilayah yang layak adalah himpunan nol. Dalam hal ini masalah tidak memiliki solusi dan dikatakan tidak layak.
Himpunan layak terbatas (atas) dan himpunan layak tak terbatas (bawah). Set di bagian bawah berlanjut selamanya ke arah kanan.
Himpunan layak terbatas dan tidak terbatas
Himpunan layak terbatas (atas) dan himpunan layak tak terbatas (bawah). Set di bagian bawah berlanjut selamanya ke arah kanan.
Himpunan yang layak dapat dibatasi atau tidak dibatasi. Sebagai contoh, himpunan fisibel yang didefinisikan oleh himpunan kendala {x ≥ 0, y ≥ 0} tidak terbatas karena di beberapa arah tidak ada batasan seberapa jauh seseorang dapat pergi dan masih berada di daerah fisibel. Sebaliknya, himpunan layak yang dibentuk oleh himpunan kendala {x ≥ 0, y ≥ 0, x + 2y ≤ 4} dibatasi karena luasnya pergerakan ke segala arah dibatasi oleh kendala.
Dalam masalah pemrograman linier dengan n variabel, kondisi yang diperlukan tetapi tidak mencukupi untuk himpunan layak untuk dibatasi adalah bahwa jumlah kendala paling sedikit n + 1 (seperti yang diilustrasikan oleh contoh di atas).
Jika himpunan layak tidak terbatas, mungkin ada atau mungkin tidak optimal, tergantung pada spesifikasi fungsi tujuan. Sebagai contoh, jika daerah fisibel didefinisikan oleh himpunan kendala {x ≥ 0, y ≥ 0}, maka masalah memaksimalkan x + y tidak optimal karena setiap kandidat solusi dapat ditingkatkan dengan meningkatkan x atau y; namun jika masalahnya adalah untuk meminimalkan x + y, maka ada optimum (khususnya pada (x, y) = (0, 0)).
Solusi kandidat
Dalam optimasi dan cabang matematika lainnya, dan dalam algoritma pencarian (topik dalam ilmu komputer), solusi kandidat adalah anggota dari himpunan solusi yang mungkin di wilayah yang layak dari masalah yang diberikan. Solusi kandidat tidak harus menjadi solusi yang mungkin atau masuk akal untuk masalah—hanya dalam himpunan yang memenuhi semua kendala; yaitu, dalam himpunan solusi yang layak. Algoritma untuk menyelesaikan berbagai jenis masalah optimasi sering mempersempit himpunan solusi kandidat ke subset dari solusi layak, yang poinnya tetap sebagai solusi kandidat sementara solusi layak lainnya selanjutnya dikeluarkan sebagai kandidat.
Ruang dari semua solusi kandidat, sebelum titik fisibel dikeluarkan, disebut daerah fisibel, himpunan fisibel, ruang pencarian, atau ruang solusi. Ini adalah himpunan semua solusi yang mungkin yang memenuhi kendala masalah. Kepuasan kendala adalah proses menemukan titik dalam himpunan yang layak.
Algoritma genetika
Dalam kasus algoritma genetik thm, solusi kandidat adalah individu dalam populasi yang dikembangkan oleh algoritma.
Kalkulus
Dalam kalkulus, solusi optimal dicari dengan menggunakan uji turunan pertama: turunan pertama dari fungsi yang dioptimalkan disamakan dengan nol, dan setiap nilai dari variabel pilihan yang memenuhi persamaan ini dipandang sebagai solusi kandidat (sementara yang tidak dikesampingkan sebagai calon). Ada beberapa cara di mana solusi kandidat mungkin bukan solusi yang sebenarnya. Pertama, mungkin memberikan minimum ketika maksimum sedang dicari (atau sebaliknya), dan kedua, mungkin tidak memberikan minimum atau maksimum melainkan titik pelana atau titik belok, di mana jeda sementara dalam kenaikan lokal. atau jatuhnya fungsi terjadi. Solusi kandidat tersebut mungkin dapat dikesampingkan dengan menggunakan uji turunan kedua, yang kepuasannya cukup untuk solusi kandidat setidaknya optimal secara lokal. Ketiga, solusi kandidat mungkin optimum lokal tetapi bukan optimum global.
Dalam mengambil antiturunan dari monomial bentuk solusi kandidat menggunakan rumus kuadratur Cavalieri adalah Kandidat solusi ini sebenarnya benar kecuali jika
Pemrograman linier
Serangkaian kendala pemrograman linier pada dua variabel menghasilkan wilayah nilai yang mungkin untuk variabel tersebut. Masalah dua variabel yang dapat diselesaikan akan memiliki wilayah layak dalam bentuk poligon sederhana cembung jika dibatasi. Dalam algoritma yang menguji titik-titik yang layak secara berurutan, setiap titik yang diuji pada gilirannya merupakan solusi kandidat.
Dalam metode simpleks untuk menyelesaikan masalah program linier, sebuah simpul dari politop yang layak dipilih sebagai kandidat solusi awal dan diuji optimalitasnya; jika ditolak sebagai optimal, simpul yang berdekatan dianggap sebagai kandidat solusi berikutnya. Proses ini dilanjutkan sampai solusi kandidat ditemukan menjadi yang optimal.
Sumber Artikel: en.wikipedia.org