Генетическое улучшение (информатика) - Genetic improvement (computer science)

В компьютерное программное обеспечение разработка, генетическое улучшение это использование оптимизация и машинное обучение методы, особенно разработка программного обеспечения на основе поиска такие методы, как генетическое программирование улучшить существующие программного обеспечения.[1][2]Улучшенный программа не обязательно вести себя идентично оригиналу. например, автоматическое исправление ошибок улучшается программный код за счет уменьшения или устранениябагги поведение.[3]В других случаях улучшенное программное обеспечение должно вести себя так же, как и старая версия, но лучше, потому что, например, оно работает быстрее,[4]он использует меньше объем памяти,[5]он использует меньше энергия[6]orit работает на компьютере другого типа.[7]GI отличается, например, отофициальный перевод программы, в том, что он в первую очередь проверяет поведение новой версии мутанта, запуская как новое, так и старое программное обеспечение на тестовые входы и сравнение их результатов и производительности, чтобы увидеть, может ли новое программное обеспечение по-прежнему делать то, что требуется от исходной программы, и теперь лучше.

Генетическое улучшение можно использовать для создания несколько версий программ, каждая адаптированный чтобы быть лучше для конкретного пользователя на конкретном компьютере.

Генетическое улучшение можно использовать с Многоцелевая оптимизация рассмотреть возможность улучшения программного обеспечения по нескольким направлениям или рассмотреть компромиссы между несколькими целями, например, попросить GI разработать программы, которые торгуют между скоростью и качеством ответов, которые они дают. Конечно, можно найти программы, которые и быстрее, и дают лучшие ответы.

В основном генетическое улучшение обычно вносит небольшие изменения или правки (также известные как мутации ) к программе исходный код но иногда мутации вносятся вкод сборки,байтовый код[8]или двоичный Машинный код.[9]

Рекомендации

  1. ^ Лэнгдон, Уильям Б. (2015). Генетически улучшенное программное обеспечение. Справочник по приложениям генетического программирования. С. 181–220. Дои:10.1007/978-3-319-20883-1_8. ISBN  978-3-319-20882-4.
  2. ^ Юстина Петке и Саэмундур О. Харальдссон, Марк Харман, Уильям Б. Лэнгдон, Дэвид Р. Уайт и Джон Р. Вудворд (2018). «Генетическое улучшение программного обеспечения: комплексное исследование» (PDF). IEEE Transactions по эволюционным вычислениям. 22 (3): 415–432. Дои:10.1109 / TEVC.2017.2693219.
  3. ^ Веймер, Уэстли; и другие. (2010). «Автоматический ремонт программ с эволюционным вычислением». Коммуникации ACM. 53 (5): 109. CiteSeerX  10.1.1.170.188. Дои:10.1145/1735223.1735249.
  4. ^ Лэнгдон, Уильям Б.; Харман, Марк (2015). «Оптимизация существующего программного обеспечения с помощью генетического программирования». IEEE Transactions по эволюционным вычислениям. 19: 118–135. Дои:10.1109 / TEVC.2013.2281544.
  5. ^ Ву, Фань; Веймер, Уэстли; Харман, Марк; Цзя, Юэ; Кринке, Йенс (2015). Глубокая оптимизация параметров. Материалы конференции 2015 г. по генетическим и эволюционным вычислениям - GECCO '15. С. 1375–1382. Дои:10.1145/2739480.2754648. ISBN  9781450334723.
  6. ^ Брюс, Бобби Р .; Петке, Юстина; Харман, Марк (2015). Снижение потребления энергии с помощью генетического улучшения. Материалы конференции 2015 г. по генетическим и эволюционным вычислениям - GECCO '15. С. 1327–1334. Дои:10.1145/2739480.2754752. ISBN  9781450334723.
  7. ^ Лэнгдон, Уильям Б.; Харман, Марк (2014). Генетически улучшенное программное обеспечение CUDA C ++. EuroGP 2014. Конспект лекций по информатике. 8599. С. 87–99. Дои:10.1007/978-3-662-44303-3_8. ISBN  978-3-662-44302-6.
  8. ^ Орлов, Михаил; Сиппер, Моше (2011). «Полет ФИНЧА через пустыню Ява». IEEE Transactions по эволюционным вычислениям. 15 (2): 166–182. CiteSeerX  10.1.1.298.6272. Дои:10.1109 / TEVC.2010.2052622.
  9. ^ Шульте, Эрик М .; Веймер, Уэстли; Форрест, Стефани (2015). Восстановление прошивки маршрутизатора COTS без доступа к исходному коду или тестовым пакетам. Труды сопутствующей публикации конференции по генетическим и эволюционным вычислениям 2015 г. - GECCO Companion '15. С. 847–854. Дои:10.1145/2739482.2768427. ISBN  9781450334884.

внешняя ссылка