Индуктивное программирование
-
Определение индуктивного программирования
- Индуктивное программирование изучает программы на основе неполных спецификаций.
- Включает обучение алгоритмов на основе обучающих данных и оценок.
-
Методы индуктивного программирования
- Используют различные языки программирования, включая функциональные и логические.
- Включают индуктивное логическое программирование и другие парадигмы.
-
История и развитие
- Начались в 1970-х, получили теоретическую основу.
- Разделились на этапы преобразования примеров в нерекурсивные программы и поиска закономерностей.
- Логическое программирование стимулировало развитие индуктивного логического программирования.
- Генетическое программирование и системы индуктивного программирования ADATE и MagicHaskeller расширили подходы.
-
Современные подходы
- Переосмысление синтеза программ на основе систем перезаписи и функционального программирования.
- Использование умеренного поиска и фоновых знаний, автоматическое создание подпрограмм.
-
Области применения
- Разработка программного обеспечения, изучение языков, планирование ИИ, веб-майнинг, преобразование данных.
- Перспективные приложения в интеллектуальных агентах, играх, робототехнике, персонализации, ИИ и человеческих интерфейсах.
-
Ссылки и рекомендации
- Ссылки на литературу и сообщество индуктивного программирования.
Полный текст статьи: