
- •Создание мощного и гибкого инструментария интеллектуального программирования в настоящее время ведется в следующих
- •ПАРАДИГМЫ ПРОГРАММИРОВАНИЯ В ИИ
- •СИСТЕМЫ АВТОМАТИЗИРОВАННОЙ РАЗРАБОТКИ ПО
- •ЛИСП разработан в Стенфорде под руководством Дж. Маккарти в начале 60-х годов. К
- •ПРОЛОГ (начало 70-х годов, Марсельский университет) предлагает такую парадигму мышления, в рамках которой
- •ПРОЛОГ
- •ПРОЛОГ
- •ПРИМЕР ПРОГРАММЫ НА ЯЗЫКЕ ПРОЛОГ
- •“Истинно то, что военный А имеет то же самое звание, что и военный
- •Пролог
- •Совокупность утверждений, заголовки которых имеют одинаковый функтор и одну и ту же размерность,
- •Язык представления знаний CLIPS, позволяет характеризовать представленные знаний функционально, то есть в терминах
- •Упорядоченные факты состоят из символьного обозначения с последовательностью нуля или более полей, разделенных
- •;; описание класса car (машина) (defclass car
- •;;правила
Создание мощного и гибкого инструментария интеллектуального программирования в настоящее время ведется в следующих направлениях:
1.Разработка систем представления знаний путем прямого использования широко распространенных языков обработки символьной информации и языков программирования общего назначения.
2.Расширение базисных языков ИИ для систем представления знаний за счет специализированных языков и пакетов.
3.Создание языков представления знаний, специально ориентированных на поддержку определенных формализмов, и реализация соответсвующих трансляторов с этих языков.

ПАРАДИГМЫ ПРОГРАММИРОВАНИЯ В ИИ
СИСТЕМЫ АВТОМАТИЗИРОВАННОЙ РАЗРАБОТКИ ПО
Новой ветвью в технологии промышленной разработки и реализации сложных и значительных по объему систем программного обеспечения является CASE-технология (Computer Aided Software Engeneering).
Все средства поддержки CASE-технологии делятся на две большие группы:
CASE-ToolKits CASE-WorkBenches
По определению CASE-ToolKits - коллекция интегрированных программных средств, обеспечивающих автоматическое ассистирование в решении задач одного типа в процессе создания программ.
CASE-WorkBenchs системы в контексте автоматизации программирования - это интегрированные инструментальные системы, поддерживающие весь цикл создания и сопровождения программ.
ЛИСП разработан в Стенфорде под руководством Дж. Маккарти в начале 60-х годов. К концу 80-х годов ЛИСП был реализован на всех классах ЭВМ, начиная с ПК и кончая высокопроизводительными вычислительными системами. Принципы, положенные в основу языка ЛИСП: использование единого спискового представления для программ и данных; применение выражений для определения функций; скобочный синтаксис языка. Более поздние разновидности ЛИСПа: MacLisp, Interlisp.
OPS5, CLIPS – языки представления знаний, поддерживающих продукционный подход. Объекты описываются с помощью фреймов-экземпляров, прототипы которых задаются в виде определенных структур данных, опирающихся на небольшое число встроенных типов. Модуль вывода решений состоит из трех основных блоков: отождествления (поиск подходящих правил), выбора исполняемого правила из конфликтного множества правил и исполнителя выбранного правила.
ПРОЛОГ (начало 70-х годов, Марсельский университет) предлагает такую парадигму мышления, в рамках которой описание решаемой задачи представляется в виде слабо структурированной совокупности отношений.
Механизмы вывода, встроенные в ПРОЛОГ, обеспечивают поиск решения на основе перебора возможных альтернатив.
Для конструирования логических программ в Прологе используются структуры данных, называемыми логическими термами, и три вида утверждений: факты, правила и вопросы. Основная терминология была заимствована из логики.
ПРОЛОГ
В логических программах существует только один тип данных - термы. Каждый терм обозначает некоторую сущность, принадлежащую миру. С другой стороны, любой объект решаемой задачи в программе представляется термом того или иного вида. Программа состоит из множества утверждений, которые можно рассматривать как сеть отношений, существующих между термами.
Терм - есть либо переменная, либо константа, либо структура (составной терм).
Константы. Существуют два вида констант: нечисловые константы, называемые атомами и числа. Кроме того к константам относят и символьные строки.

ПРОЛОГ
формализмы
Тип данных - терм Пример представления даты в виде терма:
дата(‘четверг’,24,‘ноябрь’, 2006).
функтор компоненты
Функтор - имя отношения, компоненты - объекты отношения. Размерность структуры равна числу компонентов, входящих в
нее.
Компоненты структуры заключаются в скобки и разделяются запятой.
Виды компонент:
•атомные константы
•числовые константы
•переменные
1) Атом может содержать любой алфавитно-цифровой знак и должен заключаться в апострофы.
Примеры атомов: 'моя мать' 'Иван, да, Марья' '_ первый' 'Георгий‘ .
2) Числовые константы или просто числа. Примеры: 205, -10, 3.75.

ПРИМЕР ПРОГРАММЫ НА ЯЗЫКЕ ПРОЛОГ
“Истинно то, что военный А имеет то же самое звание, что и военный В, если истинно то, что военный А имеет звание R, и то, что военный В имеет звание R.”
В приведенном примере:
одинаковое_ звание (А, В):- -заголовок правила, военный (А,R), военный (В, R). -тело правила,
военный (А,R), -первая подцель, военный (В,R). -вторая подцель.
Иначе: ?-одинаковое_ звание (фамилия (’Абрамов’)), фамилия(‘Федоров’))
Ответ: да.
Пролог
ВОПРОСЫ Факт имеет форму структуры, в конце записи которой
ставится точка.
Вопрос, часто называемый целью, имеет форму структуры, перед которой ставится символы ?- ,
а после структуры ставится точка.
Пример вопроса:
?- военный ('Тихонов ', 'сержант ').
ответом на наш вопрос является "да". ?-военный(S, 'полковник' ).
Пролог даст ответы: S=Климов, S=Максимов