Кіріспе
"Сызықтық генетикалық бағдарламалау" "сызықтық бағдарламалау" деп аталатын нәрсемен байланысы жоқ. Сызықтық генетикалық бағдарламалау (СЖБ) – генетикалық бағдарламалаудың нақты бір әдісі, онда популяциядағы компьютерлік бағдарламалар императивті бағдарламалау тілінен немесе машина тілінен алынған нұсқаулар тізбегі ретінде ұсынылады. "Сызықтық" деген сөз нұсқаулар тізбегінің әдетте сызықтық тәртіппен орындалуына байланысты қолданылады. Басқа бағдарламалардағы сияқты, СЖБ-дегі дерек ағыны граф ретінде модельделуі мүмкін, бұл тізілімдердегі мәліметтердің қайта қолданылуын және құрылымдық тұрғыдан пайдасыз кодтың (интрондар) болуын көрсетеді – бұл генетикалық ұсыныстың екі маңызды айырмашылығы, дәстүрлі ағаш негізді генетикалық бағдарламалаудан (АЖБ) өзгеше. Басқа генетикалық бағдарламалау әдістері сияқты, сызықтық генетикалық бағдарламалау бағдарламалық популяцияны іске қосу үшін деректерді қабылдауды талап етеді. Бағдарламаның нәтижесі (оның мінез-құлқы) мақсатты мінез-құлыққа сәйкес келе ме, жоқ па, оны бағалау үшін жарамдылық функциясы қолданылады. Дегенмен, СЖБ жоғарыда аталған екі ерекшелігінің арқасында ағаш генетикалық бағдарламалаудан көбінесе тиімді болады: аралық нәтижелер (тізілімдерде сақталады) қайта пайдаланылуы мүмкін және интрондарды жоюға арналған қарапайым алгоритм бар. Сызықтық генетикалық бағдарламалауды ағаш генетикалық бағдарламалаудағы сызықтық ағаш бағдарламаларымен шатастырмау керек, олар өзгермелі санындағы біржақты функциялар мен жалғыз терминалдан тұрады. Сызықтық ағаш ГБ биттік тізбек генетикалық алгоритмдерінен ерекшеленеді, себебі популяция әртүрлі ұзындықтағы бағдарламаларды қамтуы мүмкін, сондай-ақ екіден астам функция түрі немесе екіден астам терминал түрі болуы мүмкін.
Linear genetic programming should not be confused with linear tree programs in tree genetic programming, program composed of a variable number of unary functions and a single terminal. Note that linear tree GP differs from bit string genetic algorithms since a population may contain programs of different lengths and there may be more than two types of functions or more than two types of terminals.