ЗНАЙ ИНТУИТ, Лекция, Диагностичен проблем при формулиране на интервали
При този избор целевата функция ще бъде неотрицателна в целия диапазон от допустими стойности и ще приеме стойността 0 само при решения на диагностичния проблем на интервала .
Въпреки това, при класическото разбиране на целевата функция като функция на фитнеса, е необходимо най-пригодните лица да бъдат оценени по-високо от по-слабо приспособените. Това може лесно да се постигне чрез нормализиране на целевата функция и нейното обръщане:
По този начин целевата функция ще приеме стойности в диапазона от 0 до 1. В този случай по-голяма стойност на целевата функция съответства на по-голяма степен на хромозомна годност, т.е. тази целева функция е "истинска" фитнес функция . Очевидно при решенията на интервалния диагностичен проблем целевата функция ще приеме стойността 1.
По време на изследването на зададения интервален диагностичен проблем е написана програма, която решава този проблем. Сърцевината на програмата е C изпълнение на прост генетичен алгоритъм, което се нарича SGA-C v. 1.1 (Прост генетичен алгоритъм на C) и представлява интерпретация на кода от книгата на Goldberg D.E. "Генетични алгоритми в търсенето, оптимизацията и машинното обучение" (1989) в C.
SGA-C изпълнява прост генетичен алгоритъм, който съдържа оператори за селекция, кросоувър и мутация и механизъм за задаване на вероятността за използване на тези оператори. По този начин SGA-C позволява на изследователя да персонализира своите специфични нужди чрез набор от функции във файла app.c. За да се реши зададеният интервален диагностичен проблем, бяха написани следните функции: