Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
учебное_пособие_флп.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
675.84 Кб
Скачать

Для работы в сфере ии надо иметь:

1) Языки ии, обеспечивающие простоту модификации

программ и данных;

(Lisp-List Processing –обработка списков; Haskell ,Caml, Curry, Hope и др.)

Prolog –Programming in Logic-программирова-

ние в терминах логики)

2) Системы программирования для поддержки

составления, разработки и сопровождения программного обеспечения ПО (создание удобной среды разработки ПО)

3) Важна и структура самой машины, позволяющая с

большей эффективностью использовать эти

языки.

В настоящее время мы работаем с машинами чет-

вертого поколения, т.н. фон-неймановскими машинами. Процедурные языки программирования созданы именно под эту архитектуру. Другие языки программирования могут входить с этой архитектурой в противоречие. Правда, современные технологии обеспечивают высокие скорости работы процессоров и большие объемы достаточно дешевой памяти, так что вопрос согласования языков программирования и архитектуры компьютера не стоит сегодня так остро.

Что относится к области ИИ?

  • доказательства теорем;

  • базы данных и базы знаний;

(интересно сравнить системы БД SQL и прологовские: для выполнения тех же задач вы получаете возможность работать с развитой логикой. При этом система Visual Prolog,например, обеспечивает высокую скорость работы и имеет большую эффективность и более дружественный интерфейс.)

  • Самоорганизующиеся СУБД, способные подстраиваться под профиль конкретной задачи без администрирования.

  • задачи символьной математики;

  • эврестические задачи, моделирующие поведение человека в проблемной ситуации;

  • экспертные системы;

  • нейронные сети (используются в робототехнике, информационных технологиях)

  • логико-лингвистические модели в системах управления;

  • печать с голоса;

  • интеллектуальные игры;

  • мутационные исчисления ( набор правил для моделирования процесса эволюции по созданию Homo Sapiens).

  • Операционные системы (ОС) реального времени (для принятия решений в рамках дефицита времени)

  • Web- приложения и административные системы.

2.Основы логического программирования и язык Пролог.

2.1.Основные понятия

Процедурный стиль программирования зависит в большой степени от внутренних механизмов компьютера, так как процедурные языки ориентированы в основном на последовательное исполнение инструкций, оперирующих с памятью (операции присваивания). Однако, подавляющее большинство задач, которые решаются на компьютере, напрямую с архитектурой машины не связаны.

Логический стиль программирования строится на основе абстрактной модели, поэтому тоже никак не связан с архитектурой ЭВМ. Поскольку вычисление есть частный случай логического вывода, а алгоритм – это аксиоматическое задание функции, то весьма актуальным является возможность применения идей логического программирования для решения достаточно широкого круга задач (касающихся объектов и отношений между объектами).

Суть идеи логического программирования(ЛП): компьютеру в качестве программы можно представить не алгоритм решения задачи, а формальное ее описание в виде аксиоматической системы, тогда построение решения задачи в виде вывода можно поручить компьютеру. Это значит, что программа на Прологе не отображает последовательность действий, как это принято в процедурных языках, а представляет собой определенный набор фактов и правил, которые позволяют на их основе выполнить логический вывод. Это возможно, потому что имеются методы автоматического поиска доказательства (то есть существуют некоторые универсальные алгоритмы, которые могут быть запрограммированы). Именно поэтому эффективность ЛП зависит не только от аксиоматизации задачи, но и от качества компилятора, который реализует поиск доказательства.

Язык Пролог(Prolog-PROgramming in LOGic) –декларативный язык, так как знания в виде фактов и правил их использования представлены в декларативной форме.