برنامه‌نویسی ژنتیک خطی

برنامه‌نویسی ژنتیک خطی (به انگلیسی: Linear Genetic Programming) نوعی از برنامه‌نویسی ژنتیک است که در آن شیوه نمایش برنامه‌ها به صورت خطی و به صورت فهرستی از دستورها است. این دستورها اعمال ریاضی(یا منطقی) را روی مجموعه‌ای از رجیسترها اجرا می‌کنند و داده‌ها را از رجیسترهای فقط خواندنی یا به دیگر کلام خانه‌های حافظه می‌خوانند. این دستور‌ها می‌توانند از یک زبان برنامه‌نویسی یا کد بومی ماشین باشند. عمل‌گرهای ازدواج و جهش در برنامه‌نویسی ژنتیک خطی مشابه همتاهایشان در الگوریتم ژنتیک هستند.[۱]

دلیل نام‌گزاری این نوع از برنامه‌نویسی ژنتیک، خطی بودن اجرای برنامه‌ها در آن است. توجه کنید که برنامه‌نویسی ژنتیک خطی با درخت خطی در برنامه‌نویسی ژنتیک درختی متفاوت است.

برنامه‌نویسی ژنتیک خطی با موفقیت قابل توجه در بسیاری از حوزه‌ها از جمله مدل‌سازی سامانه و کنترل سامانه استفاده شده است.[۲][۳]

برنامه‌نوسی ژنتیک پشته‌ای نوع خاصی از برنامه‌نویسی ژنتیک است که دستور‌ها و داده‌ها همه روی یک پشته ذخیره شده و یک به یک از روی پشته pop شده و اجرا می‌شوند.

منابع

ویرایش
  1. Brameier, Markus; Banzhaf, Wolfgang (2007). Linear Genetic Programming [برنامه‌نویسی ژنتیک خطی] (به انگلیسی) (1 ed.). New York: Springer.
  2. Brameier, Markus; Banzhaf, Wolfgang (2001). "A Comparison of Linear Genetic Programming and Neural Networks in Medical Data Mining" [مقایسه‌ٔ برنامه‌نویسی ژنتیک خطی و شبکه‌های عصبی در استخراج داده‌های پزشکی]. IEEE Transactions on Evolutionary Computation (به انگلیسی) (۵): 17–26.
  3. Guven, A. (2009). "Linear genetic programming for time-series modelling of daily flow rate" [برنامه‌نویسی ژنتیک خطی برای مدل‌سازی سری‌زمانی نرخ جریان روزانه]. Earth Systems Science (به انگلیسی) (118): 137–146.