الگوریتمهای ژنتیک (Genetic algorithm) تکنیک جستجو در علم رایانه برای یافتن راه حل تقریبی برای بهینه سازی مدل، ریاضی و مسائل جستجو است. الگوریتم ژنتیک نوع خاصی از الگوریتمهای تکاملی است که از تکنیک های زیست شناسی فرگشتی مانند وراثت، جهش زیست شناسی و اصول انتخابی داروین برای یافتن فرمول بهینه جهت پیشبینی یا تطبیق الگو استفاده میشود. الگوریتمهای ژنتیک اغلب گزینه خوبی برای تکنیکهای پیشبینی بر مبنای رگرسیون هستند. در مدلسازی الگوریتم ژنتیک یک تکنیک برنامه نویسی است که از تکامل ژنتیکی به عنوان یک الگوی حل مسئله استفاده میکند. مسئلهای که باید حل شود دارای ورودی هایی میباشد که طی یک فرایند الگوبرداری شده از تکامل ژنتیکی به راه حلها تبدیل میشود سپس راه حلها به عنوان کاندیداها توسط تابع برازش یا تابع برازندگی (Fitness Function) مورد ارزیابی قرار میگیرند و چنانچه شرط خروج مسئله فراهم شده باشد الگوریتم خاتمه مییابد.
به طور کلی یک الگوریتم مبتنی بر تکرار است که اغلب بخشهای آن به صورت فرایندهای تصادفی انتخاب میشوند که این الگوریتمها از بخشهای تابع برازش، نمایش، انتخاب و تغییر تشکیل میشوند. الگوریتم ژنتیکی، رویه ای تکراری است که راه حل های انتخابیش را بصورت رشته ای از ژنها که کروموزوم نامیده می شوند، بازنمایی می کند. موفقیت آنها را با تابع fitness اندازه می گیرد. تابع fitness میزان نزدیکی به هدف را محاسبه می کند. در هر تکرار الگوریتم، (مانند سیستم های بیولوژیکی) راه حلهای انتخابی، برای تولید فرزند (که generation نامیده می شوند) ترکیب می شوند. والدین نسل بعدی، با توجه به fitness والدین و فرزندان نسل قبل، از بین آنها انتخاب می شوند. خود فرزندان نیز می توانند به عنوان راه حل انتخاب شوند.
توجه : فایل فوق از دو فایل مجزا ۱۲ و ۵۴ اسلایدی تشکیل شده است.