Анализ инструментальных средств проектирования интеллектуальных информационных систем

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

екте можно формировать путем использования статистической обработки информации и информации о результатах имитационных экспериментов. В последнее время все чаще начинают использовать методы автоматизированного заполнения БЗ.

2.3 Инструментальные средства проектирования интеллектуальных информационных систем

 

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

ИИС представляют собой некоторый программный комплекс, позволяющий решать производственный и экономические задачи на уровне человека - оператора или управленца (эксперта). Однако очевидно, что любую программу можно написать на машинно - ориентированном языке (ассемблере) или на универсальном языке высокого уровня (ПЛ/1, Си, Бейсик, Алгол, Ада, Фортран, Паскаль и т.д.). В этой связи возникает вполне справедливый вопрос: зачем рассматривать специализированные средства, для изучения которых требуется определенное время, если универсальным языком высокого уровня (либо языком ассемблера) владеет практически любой программист? Ответ на этот вопрос взят из практики: процесс программирования систем ИИ на специализированных средствах занимает в 2-3 раза меньше времени, чем на универсальных. Однако следует всегда помнить, что параметры эффективности (объем памяти и быстродействие) ИИС, реализованных на базе специализированных средств, в большинстве случаев ниже, чем при реализации ИИС на универсальных средствах.

Еще одним фактором, существенным для выбора ИИС инструментальных программных средств при разработке ИИС, является потенциальная возможность взаимодействия с программными средствами, используемыми на различных уровнях иерархии интегрированных корпоративных информационных систем.

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

Рассмотрим наиболее известные и широко применяемые программные средства интеллектуальных систем.

 

2.3.1 Анализ традиционных языков программирования и представления знаний

Одним из самых популярных языков программирования в системах ИИ является язык LISP. Этот язык был создан в 60-х годах американским ученым Дж. Маккарти и его учениками. На сегодняшний день существует около 20 диалектов этого языка. Наиболее известными являются INTERLISP, FRANZLISP, QLISP, COMMONLISP. На языке LISP написаны многие экспертные системы (MYCIN, INTERNIST, KEE и др.), системы естественно-языкового общения (MARGIE, SHRDLU, ДИЛОС и др.), интеллектуальные операционные системы (FLEX).

Популярность языка LISP в первую очередь объясняется тем, что он с помощью довольно простых конструкций позволяет писать сложные и изящные системы обработки символьной информации. К сожалению, почти все существующие LISP - системы имеют низкую вычислительную эффективность. Именно это не дает возможность языку LISP выйти за рамки академических экспериментальных систем. Однако бурное повышение производительности современных компьютеров, а также разработка LISP - машин типа С/330, SYMBOLICS и т.д. вселяет оптимизм в отношении будущего языка.

Язык LISP имеет очень простой синтаксис, поскольку возможны только две его конструкции: атом и список.

Атом - элементарная конструкция языка LISP, характеризуемая своим именем и значением. В некоторых LISP - системах с атомом связывается также определенный список свойств. Примерами атомов могут служить: А, В, А1, ВРЕМЯ ВЫЛЕТА, ВЫПУСК, АИ-93 и т.д.

Список - конструкция LISP, состоящая из множества атомов и подсписков. В LISP принята скобочная нотация описания списков. Примеры списков (А1, А2,…,АК), (А,В) (ВРЕМЯ ВЫЛЕТА, 15_40) (ВЫПУСК АИ-93).

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

Рекурсивность LISP удобна при решении очень популярной в искусственном интеллекте задачи поиска по дереву, которая является довольно обобщенной и охватывает широкий класс конкретных задач, начиная шахматными и кончая задачами принятия решений или управления сложными объектами. В каждом конкретном случае вершины дуги будут иметь свою семантику. Например, при решении шахматной задачи вершинам могут соответствовать возможные позици