مسائل
زیادی در هوش مصنوعی و یادگیری ماشین نیاز به برنامه های کامپیوتری دارند
که خروجی های دلخواه را با توجه به ورودی های خاص ایجاد نمایند. هنگامی که
با این دید به مسئله نگاه می شود این مسائل با جستجوی فضای ممکن برنامه
های کامپیوتری جهت یافتن مناسبترین برنامه برابر میشود. مبحث "برنامه نویسی
ژنتیک" راهی جهت یافتن مناسبترین برنامه مهیا می کند.