Функція пристосованості

Матеріал з Вікіпедії — вільної енциклопедії.
(Перенаправлено з Фітнес-функція)
Перейти до: навігація, пошук

Фу́нкція пристосо́ваності (англ. fitness function) — це особливий тип цільової функції, який застосовується як порівняльний показник якості[en] для підбивання підсумку того, наскільки близьким є задане конструктивне рішення до досягнення поставлених цілей.

Зокрема, в галузях генетичного програмування та генетичних алгоритмів кожне конструктивне рішення, як правило, представляють як стрічку чисел (яку називають хромосомою). Ідея полягає в тім, щоби після кожного кола тестування або моделювання вилучати n найгірших конструктивних рішень, і розводити n нових із найкращих. Кожне конструктивне рішення, таким чином, потребує присуджування порівняльного показника якості, що вказував би, наскільки близько воно підійшло до того, щоби відповідати загальним умовам, і цей показник породжується застосуванням функції пристосованості до результатів тестування або моделювання, отриманих від цього рішення.

Причина, чому генетичні алгоритми не можна розглядати як ледачий спосіб виконання конструкторської праці, полягає саме в зусиллях, потрібних для конструювання працездатної функції пристосованості. Незважаючи на те, що з кінцевим конструкторським рішенням виходить вже не людина, а комп'ютер, саме людина має сконструювати функцію пристосованості. Якщо її сконструйовано погано, то алгоритм або збігатиметься на на неприйнятному рішенні, або зазнаватиме труднощів у тому, щоби збігтися взагалі.

Крім того, функція пристосованості мусить не лише тісно корелювати з метою конструктора, вона також мусить обчислюватися швидко. Швидкість виконання є дуже важливою, оскільки типовий генетичний алгоритм, щоби виробити корисний результат для нетривіальної задачі, мусить ітеруватися багато разів.

Може бути доцільним і наближення пристосованості[en], особливо в наступних випадках:

  • Обчислення пристосованості одного рішення є надзвичайно витратним
  • Точна модель обчислення пристосованості відсутня
  • Функція пристосованості є непевною або зашумленою.

Існує два основні класи функцій пристосованості: такий, у якому функція пристосованості не змінюється, як в оптимізації незмінної функції або тестуванні за незмінним набором тестових прикладів; і такий, у якому функція пристосованості є мінливою, як у розмежуванні ніш[en] або коеволюції набору тестових прикладів.

На функції пристосованості можна також дивитися в термінах адаптивного ландшафту, який показує пристосованість для кожної можливої хромосоми.

В багатьох випадках визначення функції пристосованості не є прямолінійним, і часто виконується ітеративно, якщо найпристосованіші рішення, вироблені ГА, не є тим, що потрібно. В деяких випадках дуже важко або навіть неможливо придумати навіть припущення про те, яким могло би бути визначення функції пристосованості. Інтерактивні генетичні алгоритми[en] беруться за це ускладнення, віддаючи обчислення зовнішнім агентам (зазвичай, людям).

Див. також[ред.ред. код]

Посилання[ред.ред. код]