автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.01, диссертация на тему:Разработка методов и средств поддержки принятия решений для интегрированной инструментальной среды построения систем обработки информации и управления в машиностроении

кандидата технических наук
Пушкин, Алексей Юрьевич
город
Москва
год
2007
специальность ВАК РФ
05.13.01
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Разработка методов и средств поддержки принятия решений для интегрированной инструментальной среды построения систем обработки информации и управления в машиностроении»

Автореферат диссертации по теме "Разработка методов и средств поддержки принятия решений для интегрированной инструментальной среды построения систем обработки информации и управления в машиностроении"

На правах рукописи

Пушкин Алексей Юрьевич

РАЗРАБОТКА МЕТОДОВ И СРЕДСТВ ПОДДЕРЖКИ ПРИНЯТИЯ РЕШЕНИЙ ДЛЯ ИНТЕГРИРОВАННОЙ ИНСТРУМЕНТАЛЬНОЙ СРЕДЫ ПОСТРОЕНИЯ СИСТЕМ ОБРАБОТКИ ИНФОРМАЦИИ И УПРАВЛЕНИЯ В МАШИНОСТРОЕНИИ

Специальность: 05.13.01 - Системный анализ, управление и обработка информации (технические системы)

АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук

Москва - 2007

003069619

Работа выполнена в Московском Государственном Технологическом Университете «СТАНКИН»

Научный руководитель

Кандидат технических наук, профессор С Е Чекменев

Доктор технических наук, профессор Сидорин В В

Официальные оппоненты

Кандидат технических наук, Пителинский К В

Ведущее предприятие

ОАО «Научно-производственное предприятие «ЭГА»

Защита состоится «16» мая 2007г В_часов на заседании диссертационного

совета К 212 142 01 в Московском Государственном Технологическом Университете «СТАНКИН» по адресу 101472, ГСП, Москва, К-55, Вадковский

переулок, д 3-а

Отзыв о работе, заверенный печатью, в одном экземпляре просьба направлять по указанному адресу в диссертационный совет К 212 142 01

С диссертацией можно ознакомиться в библиотеке Московского Государственного Технологического Университета «СТАНКИН»

Автореферат разослан « 13 » апреля 2007г

Ученый секретарь диссертационного совета к т н

И М Тарарин

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Актуальность работы

Особенность современного этапа в развитии техники и технологии заключается в наличии значительных противоречий между потребностями в автоматизации различных аспектов практической деятельности человека и ограниченностью существующих формальных методов, которые с одной стороны доступны для переноса в компьютерную среду, а с другой - неудобны или неприменимы для описания большинства реальных задач Основные причины этого противоречия связаны со структурой и составом запаса накопленных человечеством профессиональных знаний, характеризующегося большой долей знаний, практически не поддающихся традиционным методам формализации К трудноформализуемым задачам в области машиностроения можно отнести, например, такие как

о оценка ситуации и выбор решения при управлении сложными

технологическими процессами, о задачи диагностики технических систем, о оптимизация управляющих программ для станков с ЧПУ, о прогнозирование финансово-экономических параметров предприятий и так далее

Исследования в области искусственного интеллекта позволили в определенной степени задействовать компьютер для решения трудноформализуемых задач На сегодняшний день разработан обширный инструментарий для создания и эксплуатации в промышленности и других областях деятельности человека программных комплексов с интеллектуальной поддержкой Однако автоматизация решения трудноформализуемых задач с помощью специализированного инструментария затруднена из-за того что

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

2 использование таких комплексов требует привлечения специалистов обладающих специфической квалификацией

Это приводит к тому, что автоматизация решения большинства трудноформализуемых задач с помощью специализированных инструментальных комплексов, оказывается нецелесообразной, так как стоимость решений может значительно превышать экономический эффект, получаемый в результате внедрения

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

Данная диссертационная работа посвящена проблеме проектирования и построения АСУ предприятий и машиностроительных САПР В качестве основного выделен круг задач, связанный с разработкой интеллектуальной подсистемы обработки информации и поддержки принятия решений, предназначенной как для использования в составе инструментальных сред разработки САПР, так и в составе различных информационно-программных систем

Целью работы является.

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

Для достижения поставленной цели в работе были решены следующие научные и практические задачи

• анализ и систематизация методов и средств автоматизации процесса принятия решений,

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

• разработка механизма вывода решений на основе модифицированной стратегии конфликтной резолюции,

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

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

Научная новизна заключается в следующем

• разработан способ автоматизации решения трудноформализуемых задач, связанных с проблемами выбора и принятия решений,

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

На защиту выносятся:

• новый подход к автоматизации решения трудноформализуемых задач,

• модифицированная стратегия конфликтной резолюции продукционной модели,

• реализация подсистемы поддержки принятия решений и обработки информации

Методы исследования

В работе были использованы теоретические и практические результаты исследований в области искусственного интеллекта При создании

программного обеспечения были использованы теория и технология объектно-ориентированного проектирования программных систем и реляционных баз данных

Практическая значимость работы:

Использование продукционного подхода позволяет предоставить разработчику инструмент, предоставляющий широкие возможности по обработке информации Внесение предложенных модификаций в продукционный подход позволяет с его помощью автоматизировать практически любую задачу, связанную с принятием решений и интеллектуальной обработкой информации Теоретические результаты работы и разработанная на их основе прототипная подсистема поддержки принятия решений использованы в информационном контуре предприятия ООО «ТД «За рулем» и ООО «Делкам-Москва»

Апробация работы:

Отдельные результаты работы докладывались на следующих конференциях

У1-я научная конференция МГТУ «Станкин» и «Учебно-Научного центра математического моделирования МГТУ «Станкин» - ИММ РАН» 28-29 апреля 2003г

УП-я научная конференция МГТУ «Станкин» и «Учебно-Научного центра математического моделирования МГТУ «Станкин» - ИММ РАН» 25-26 апреля 2004г

УШ-я научная конференция МГТУ «Станкин» и «Учебно-Научного центра математического моделирования МГТУ «Станкин» - ИММ РАН» 12-13 мая 2005г

Публикации:

По теме диссертации опубликовано 5 работ Структура и объем работы

Диссертация состоит из введения, четырех глав, заключения, списка литературы (136 наименований) Работа изложена на 207 страницах машинописного текста, содержит 33 рисунка, 16 таблиц и 4 приложения

СОДЕРЖАНИЕ РАБОТЫ

Во введении обосновывается актуальность темы, формулируются основные задачи, и дается общая характеристика диссертационной работы

В первой главе дается обзор существующих методов и средств создания систем поддержки принятия решений

Среди технических и методических средств разработки программного обеспечения отмечена необходимость использования среды разработки

программных продуктов, относящуюся к классу RAD-систем (систем быстрой разработки приложений) и систем контроля версий для поддержки группы разработчиков, осуществляющих создание и развитие одного программного продукта

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

Однако не менее важной является задача осуществления выбора программно-технических средств реализации и адаптации используемого подхода для создания ППР, доступной для применения в ИС различного назначения широким кругом пользователей не обладающими специальными знаниями и навыками

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

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

Можно выделить основные используемые методики и алгоритмы, применимые для использования в системах поддержки принятия решений

• традиционные логические условия с ветвлением,

• математические теории принятия решений,

• алгоритмы, использующие теоретические и практические результаты исследований искусственного интеллекта и экспертных систем

Необходимо отметить, что использование традиционных логических условий с ветвлением выглядит предпочтительнее в связи со своей наглядностью и простотой реализации Однако эти положительные качества проявляются только для небольших по сложности задач обработки информации К тому же, при каждом внесении изменений необходимо заново строить блок-схему алгоритма

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

Особенностями ситуации ПР являются следующие

• Наличие не менее двух взаимоисключающих вариантов, из которых должен быть выбран только один,

• Наличие критерия, позволяющего количественно оценивать имеющиеся варианты, и по этим оценкам осуществлять выбор

Значимым и сложным является вопрос о критериях - это связано с трудностями присвоения каждому варианту определенного числового значения В большинстве же практических случаев, возможно задать значение критерия лишь весьма приближенно и, к тому же, относительно

В общем случае задача теории принятия решений строится следующим образом

1) Устанавливаются

а все возможные способы действия - альтернативы, Ь их последовательность и числовая оценка, с цели участников процесса принятия решений, с! природа влияния на этот процесс различных случайных и детерминированных управляющих факторов

2) Подбирается соответствующая модель и метод решения задачи

На сегодняшний день теория достигла состояния, когда разработаны модели для описания практически всех задач принятия решений Существует довольно много классификаций задач ТПР а с учетом времени статические и динамические, Ь по количеству критериев один или несколько, с по характеру исходных данных детерминированные и стохастические и т д Каждому классу задач соответствуют методы теории принятия решений линейное и нелинейное программирование, критериальный анализ, теория игр и вариационных рядов и тд Все эти классификации верны, но охватывают неравноценные области проблем, многие из дисциплин перекрывают друг друга по постановке задач и методам решения Формализация самого процесса принятия решений является достаточно сложной проблемой Алгоритмы же использующие элементы искусственного интеллекта, в общем случае, обладают рядом преимуществ

• независимость знаний от механизма вывода,

• отсутствие необходимости составления блок-схем и алгоритмов обработки данных,

• масштабирование и модульность знаний

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

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

• основными являются эвристические и приближенные методы, которые в отличие от алгоритмических, не всегда гарантируют успех

Зачастую термин система, основанная на знаниях (knowledge-based system), используется в качестве синонима термина экспертная система, но понимается как система, процесс работы которой основан на применении правил отношений к символическому представлению знаний Экспертная система содержит знания в определенной предметной области, накопленные в результате практической деятельности человека, и использует их для решения проблем, специфичных для этой предметной области

К настоящему времени разработаны десятки способов представления знаний для различных предметных областей Большинство из них может быть сведено к следующим типам

• продукционные модели,

• семантические сети,

• фреймы,

• формальные логические модели

Каждый из указанных типов имеет свои преимущества, к примеру, продукционная модель представления знаний основывается на ассоциировании с соответствующими действиями набора условий в виде правил, называемых также продукциями - «ЕСЛИ условие ТО действия», а фреймы дают возможность хранить родовидовую иерархию понятий в базе знаний в явной форме

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

Однако, несмотря на недостатки продукционной модели, языки представления знаний, основанные на этой модели, составляют примерно 80% экспертных систем

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

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

В настоящее время в связи с наличием тенденции к интеллектуализации программных продуктов, в ИС увеличивается доля вычислений, связаных с задачами принятия решений различного уровня сложности и ответственности Часть таких вычислений может быть эффективно реализована с помощью Булевой логики, а часть - при применении результатов исследований искусственного интеллекта У первого метода, несмотря на очевидные преимущества — простоту реализации и высокую скорость работы, есть значительные недостатки - сложность формализации и кодирования знаний экспертов Напротив, системы искусственного интеллекта обладают широкими возможностями для автоматизации трудноформализуемых задач, однако их применение неэффективно для решения «обычных» задач, например для подсчета статистики использования базы данных предприятия

Наилучших результатов можно достигнуть, комбинируя эти два подхода для осуществления простейших, легкоформализуемых преобразований данных использовать Булеву логику, для автоматизации задач средней и высокой сложности - результаты исследований в области искусственного интеллекта

у Внутренняя логика ИС

Интерфейс пользователя

<=

Система обработки информации

V

Подсистема поддержки принятия решений

База данных,

Хранилище данных

Рис 1 Схема взаимодействия с подсистемой поддержки принятия решений

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

модульности приложений для платформы MS Windows - динамически подключаемых библиотек DLL

Проведя анализ компонент информационных систем были определены основные требования, предъявляемые к подсистеме ППР

• при реализации подсистемы ППР не должны применяться специальные языки и языки программирования задач искусственного интеллекта Использование таких языков требует привлечения специалистов в области искусственного интеллекта и экспертных систем, что влечет за собой значительные затраты на внедрение и использование подсистемы поддержки принятия решений Предпочтительным является использование языков высокого уровня,

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

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

• для применения в составе различных АСУ время, затрачиваемое на принятие решений не должно превышать определенного для задачи порога,

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

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

• простота реализации,

• наглядность базы правил,

• для осуществления отладки имеется возможность пошаговой проверки состояния памяти подсистемы

Общая блок-схема работы системы продукционного типа представлена на рис 2

Данные (намять литы;,

ПК'[1Югу)

11равнла {ирЗДуКЦКОННаЧ память) (pmduk.4ii.iii ¡Пстогу)

рис 2 Блок-схема работы системы продукционного типа

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

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

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

Модуль декодирование

исходных данных и ожидаемых переменных

При вызове задается список значений переменных которые должны быть возвращены в вызвавшую функцию

В режиме инициализации переменных обычные -правила помечаются как необработанные

Условие завершения цикла: 1. отсутствие изменений памяти данных 2, установка значения специальной переменной

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

/

Модупь отбор.1 правил в конфликтное множество

Модуль конфликтной резолтоции

-

_t_

Модуль иаюлненин Г)р>ЭБИЛ

Модуль ПОДГОТОВКИ реэупьтэгов работы к возврату подсистемы

Доступ к правилам и временной информации посредством интерфейса ODBC

' V) ! H ДОННЫХ -

.J SQL сервер

- /

Стратегия конфликтной реэопюции допускает выбор на испопнение нескольких правил на основании критерии наибольшей определенности для разных наборов данных

При измененнии эка^ния уже имеющейся

переменной происходит отмена статуса .¡(Обработано* для правил, обработанных на данном тате. Дпя обработки их с новым состоянием памяти данных

рис 3. Особенности разработанной архитектуры подсистемы поддержки принятия решений

продукционног о типа

Для хранения базы знаний предметной задачи предлагается использовать реляционную базу данных, основанную па стандарте ANSI SQL, Доступ к такой БД предполагается осуществлять, используя универсальный драйвер -ODBC, что позволит использовать в качестве сервера БД различные платформы (Microsoft SQL Server, Oracle и другие) без внесения изменений в программный код. На сервере БД база Знаний будет представлена в табличном виде, где каждому продукционному правилу соответствует одна строка, состоящая из нескольких полей: номер предметной задачи, номер группы правила, условие, действие.

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

Процесс обработки правил является циклическим и проходит следующие этапы - предварительная обработка правил, разрешение конфликтов и исполнение правил. За выполняемые действия на каждом из этапов отвечает свой модуль - модуль отбора продукционных правил а конфликтное множество, модуль конфликтной резолюции и модуль исполнения правил. Каждый из этапов состоит из нескольких действий. Первый этап. Предварительная обработка продукционных правил. На данном этапе происходит анализ правил, при этом проверяются только те, у которых признак проверки установлен в значение «правило не проверялось»,

иначе говоря — правило может быть обработано подсистемой только единожды

Это обеспечивает выполнение условия конечности обработки - вычисления прекращаются, если во время текущего цикла обработки не выполнится ни одного продукционного правила

По результату анализа, продукционные правила помечаются одним из трех видов признаков

МеткаО - правило не проверялось Изначально все правила помечены меткойО,

и по мере обработки меткаО заменяется на метку 1 и метку2

Метка1 - все компоненты правил были сопоставлены с памятью данных и

обнаружено полное совпадение, такое правило помещается в конфликтное

множество

Метка2 - все компоненты правил были сопоставлены с памятью данных и правило не выполняется Далее правила обладающие таким признаком не исполняются и исключаются из всех дальнейших операций проверки и обработки

Второй этап Разрешение конфликтов

Назначение модуля разрешения конфликтов заключается в исключении из конфликтного множества наименее значимых правил Оставшиеся в конфликтном множестве продукционные правила передаются на выполнение в модуль исполнения продукционных правил

Для работы подпрограмм данного этапа определены следующие принципы и условия

• обработке подлежат правила, находящиеся в конфликтном множестве (помеченные - метка1), •

• каждое правило выбирается в качестве эталонного для проверки однажды,

• правила, составные части условия которых полностью входят в состав эталонного считаются незначимыми и исключаются из конфликтного множества,

• все правила группируются по аналитическому атрибуту - номер подгруппы,

• алгоритм разрешения конфликтов действует только в пределах подгруппы эталонного правила

Третий этап Исполнение продукционных правил

На этом этапе происходит выполнение правил, оставшихся в конфликтном множестве после их обработки алгоритмом разрешения конфликтов Исполняются все правила с признаком метка1 После исполнения правила происходит установка признака метка2 для исключения повторного анализа и обработки

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

текущего цикла обработки, при состоянии памяти данных на конец текущего цикла обработки Возвращение правил к состоянию начала текущего правила осуществляется удалением меток1 и меток2 установленных во время работы текущего шага

Модифицированный таким образом алгоритм позволяет использовать более простые с точки зрения пользователя правила, однако за счет многократного повторения одного цикла обработки происходит некоторое снижение производительности

Переменные в памяти данных определяются только в двух случаях

1) при инициализации подпрограммы происходит загрузка в память данных исходных переменных,

2) при выполнении правил в случае, если такой переменной в памяти нет, то она добавляется

Зачастую требуется, чтобы к моменту начала обработки продукционных правил в памяти данных подсистемы уже содержалось некоторое количество переменных с присвоенными им значениями «по-умолчанию» Это может быть достигнуто несколькими способами, однако при реализации был выбран способ определения таких переменных в виде продукционных правил с пустой левой частью Такой способ позволяет в едином стиле с продукционными правилами определить необходимые значения «по-умолчанию» и предоставить пользователю единый интерфейс доступа к базе знаний

Для обработки таких правил с пустой левой частью необходимо внести незначительные изменения в алгоритм работы

1) в подпрограммы первого этапа добавить условие, что при обнаружении пустого условия для таких правил устанавливается специальный признак, и на данном цикле не обрабатываются обычные продукционные правила,

2) в алгоритм разрешения конфликтов необходимо добавить условие, что при наличии правил, задающих значения переменных «по-умолчанию» конфликтная резолюция не производится

Работу разработанного алгоритма поддержки принятия решений рассмотрим на приведенном ниже примере Исходные данные (набор фактов) =1 а2= 3 а,=1

Содержимое базы знаний системы (набор правил)

1 Р, я, = 1 ->■ я5 = 1

2 Рг я, = 1 л я4 = 1 -> я5 = 1 л я6 = 1

3 Рг я, = 2 л а2 = 2 —> о7 = О

4 Рл ->а5 = 0ля6 =1ля8 =0

5 Р5 я3 = 1 л а4 = 1 -» а5 = 1 л а, = 1 л аг = 1

6 Р6 а, = 1 л я7 = 1 -> а, = 2

7 Р1 я, = 1 я7 = 1 л я6 = 10 л я, = 1

8 />8 о, = 1 ->я8 =10

Возвращаемые факты - я6,я„

Решение указанного примера было осуществлено за 4 цикла обработки, в течение которых осуществлялись следующие вычисления

На первом цикле произошла установка значений фактов по умолчанию я5,я6,я8 из правила Р4 Состояние памяти данных я, = 1,я, = З,я3 = 1,я4 = 1,я5 = 0,я6 = 0,я8 = 0

На втором цикле произошло выполнение правил Р2,Р5 и установлены значения фактов я3,я5,я6 Состояние памяти данных я, =1,я, =3,я3 =5, я, =1,я5 =1,яб =1,я7 =1,а, =0 В связи с изменением значений фактов я3,я5,я6 была произведена подготовка к повторной обработке правил

На третьем цикле, повторно проведя анализ правил, происходит исполнение правил Р2,Р6 Правило Р5, которое исполнилось на втором цикле, не может быть выбрано в связи с изменившимся состоянием памяти и теперь условие правила не выполняется После обработки данного шага состояние памяти данных следующее я, = 1, я, = 3, я3 = 5, я4 = 1, я5 = 1, я6 = 1, а7 = 1, я8 =2

На четвертом цикле не произошло помещение правил в конфликтное множество, что явилось условием прекращения вычислений

Выполнение правила Р6 произошло благодаря наличию режима перезапуска цикла вычислений в случае изменения состояния использовавшихся правил Такая особенность позволяет создавать продукционные правила с более простыми условиями

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

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

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

• уточнить базу знаний для обеспечения возможности корректной обработки данной ситуации,

• произвести коррекцию исходных данных

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

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

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

Для осуществления практической реализации подсистемы поддержки принятия решений была выбрана среда разработки RAD-класса - Clarion компании SoftVelocity Выбор аппаратно-программной платформы IBM/PC под управлением MS Windows объясняется широкой распространенностью и как следствие, использование ее в большинстве задач автоматизации различных областей хозяйственной деятельности человека

В разрабатываемой подсистеме ППР можно выделить следующие

функциональные модули

1) Модуль памяти В связи с делением информации, используемой в процессе работы на продукционные правила и переменные, необходимо обеспечить раздельную обработку правил и переменных с помощью разных наборов функций Для памяти правил, содержащей в себе продукционные правила, необходимо использовать механизмы и принципы построения реляционных баз данных с языком управления SQL, что позволит снизить затраты на создание интерфейса доступа и корректировки продукционных правил за счет использования стандартных протоколов Для памяти данных, содержащей в себе переменные, предлагается использовать динамический массив специальной структуры, обеспечивающий присвоение переменных по мере выполнения вычислений и отсутствие необходимости изменения исходных кодов подпрограмм при изменении базы знаний Для достижения этого массив должен содержать не только значения переменных, но и их текстовые названия, по которым осуществляется поиск и присвоение

2) Модуль обработки продукционных правил Модуль обработки продукционных правил предназначен для анализа правил, записанных в текстовой форме, близкой к естественному языку В случае, если не удается произвести замену текстовой переменной в левой части продукционного правила на ее значение, то такое продукционное правило пропускается, и на следующем шаге будет выполнена повторная попытка обработки данного правила В случае успешной замены, происходит проверка выполнимости условий обрабатываемого правила В результате правило либо помечается как выполненное, и помещается в конфликтное множество, либо помечается как невыполненное, и исключается из дальнейшей обработки В случае обнаружения правил с пустой левой частью подсистема ППР на первом шаге переходит в режим инициализации и обрабатывает только такой тип правил

3) Модуль разрешения конфликтов В качестве метода конфликтной резолюции предлагается использовать разработанную в данной работе стратегию конфликтной резолюции Алгоритм работы данного модуля может быть кратко описан с помощью следующих положений

• в конфликтное множество помещаются все правила, условия которых выполнились,

• проверке подлежат все правила из конфликтного множества,

• каждое правило сопоставляется с более сложными правилами из конфликтного множества по критерию используемых переменных в его левой части В случае полного вхождения в более сложное правило, происходит исключение проверяемого правила из конфликтного множества,

• правила, оставшиеся в конфликтном множестве, должны быть переданы модулю выполнения правил для их исполнения,

• при работе в режиме инициализации переменных должны быть исполнены все правила, содержащиеся в конфликтном множестве

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

5) Модуль анализа и обработки изменений в памяти Данный модуль предназначен для обнаружения и коррекции ситуаций, когда выполнившееся правило изменяет значения уже имеющихся в памяти переменных В этом случае меняется ситуация с выполняющимися правилами данного шага - с новым состоянием памяти может выполнится другой набор правил - те правила, которые на данном шаге анализировались, но не попали в конфликтное множество из-за невыполнения условия в левой части правила Для этого, осуществляется подготовка к повторной обработке правил, анализированных на данном шаге - отменяется установка меток

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

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

Исходя из определенных на этапе анализа требований, можно выделить основные критерии оценки подсистемы

1 достоверность получаемых результатов,

2 скорость обработки данных,

3 интегрируемость в другие программные продукты

Наиболее важным является критерий достоверности получаемых результатов Это связано с тем, что данная разработка предназначена для

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

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

Технически, расчет параметров цепной передачи является комбинированной задачей - на основании ГОСТ'ов, таблиц и формул необходимо осуществить выбор нужных параметров и выполнить проверочные расчеты для подтверждения применимости Исходя из этого, можно выделить основную проблему - в процессе расчета используется различная информация -ГОСТы, формулы и опыт специалистов в предметной области На сегодняшний день эта проблема решается путем выделения расчетной части и используемых табличных данных для каждого типа изделия и детали в отдельный программный блок Это приводит к наличию большого числа блоков, использующих различные методы построения и по разному реализующие хранение и работу со статическими данными (табличная информация, ГОСТ'ы), что затрудняет создание единой инструментальной среды разработки САПР

Для тестирования программы расчета параметров цепной передачи был определен круг исходных данных - это однорядные цепи, с шагом цепи по ГОСТ'у с 12,7мм по 50,8мм На входе программы были заданы исходные данные - приводная роликовая цепь - ПР-12,7-1820-2 и число зубъев ведущей звездочки ъ = 30, на выходе получены значения параметров передачи

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

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

1 Некоторые аспекты учета требуют сложных алгоритмов формирования документов,

2 Частое внесение изменений в законодательство и как следствие постоянные изменения в организации учета на предприятии

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

перечислены денежные средства, в случае же уплаты налогов указание такой информации не требуется Обычно при автоматизации ограничиваются созданием набора типовых хозяйственных операций, которые выбирает пользователь для использования на исходном документе Фактически это означает, что пользователь обрабатывает исходные данные вручную

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

Проведя обобщение полученных в обоих внедрениях результатов можно сделать следующие выводы

• в бухгалтерской программе среднее время обработки одной исходной записи составило менее 5 секунд против 20 секунд у опытного пользователя, на все платежные поручения было затрачено 44 минуты Ручная обработка потребовала бы порядка 4-х часов, при наличии значительной вероятности ошибок пользователя,

• произведенные проверочные расчеты для результатов обоих внедрений показали правильность полученных результатов Однако в бухгалтерской программе было пропущено 4% исходных документов Это означает, что база знаний неполностью охватывает автоматизироваемую задачу бухгалтерского учета Каждый случай неполноты базы знаний требует принятия отдельного решения - расширять базу знаний или осуществлять исправление некорректной информации в исходных документах Всего было пропущено 23 из 569 исходных документов, что является малым и не оказывающим значимого влияния на результаты

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

• с одной стороны позволила добиться показанных результатов -применимости в обычных приложениях,

• ас другой стороны незначительно ограничила область применения

о подсистема не предназначена для работы в режиме обратного

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

предприятия, позволяющий оперативно вносить изменений в правила обработки информации

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

Проведенная опытная эксплуатация, показала, что эффективность использования не зависит от области применения, и одинаково качественно происходит обработка, как задач САПР, так и задач связанных с функционированием предприятия Успешное использование разработанной подсистемы позволяет сделать вывод о возможности ее применения в системах различных типов и классов - от интеллектуального контроля введенных пользователем данных и программ расчета параметров деталей машин до крупных машиностроительных САПР типа Cimagrafi или AutoCAD Mechanical Desktop

СПИСОК ПЕЧАТНЫХ РАБОТ

1 Продукционная подсистема инструментального комплекса разработки САПР машиностроения Тез докл У1-я научная конференция МГТУ Станкин и Учебно-Научного центра математического моделирования МГТУ СТАНКИН-ИММ РАН - М Янус-К, ИЦ ГОУ МГТУ «Станкин», 2003г, 243 с

2 Стратегия конфликтной резолюции продукционной подсистемы инструментальной среды разработки САПР Тез докл УП-я научная конференция МГТУ Станкин и Учебно-Научного центра математического моделирования МГТУ СТАНКИН-ИММ РАН - М Янус-К, ИЦ ГОУ МГТУ «Станкин», 2004г, 248 с

3 Использование модели распределенных вычислений для повышения производительности подсистемы поддержки принятия решений Тез докл УШ-я научная конференция МГТУ Станкин и Учебно-Научного центра математического моделирования МГТУ СТАНКИН-ИММ РАН - М Янус-К, ИЦ ГОУ МГТУ «Станкин», 2005г, 232 с

4 Пушкин А Ю Продукционная система, как компонент информационной системы предприятия М , Деп В ВИНИТИ 03 05 05 № 642-В2005, 9 с ил

5 Пушкин А Ю Продукционная система для автоматизации задач выбора и принятия решений в составе информационных систем предприятий М Научно-методический журнал «Межотраслевая информационная служба» №2-3 2005г, с 23-26

ОСНОВНЫЕ ВЫВОДЫ И РЕЗУЛЬТАТЫ РАБОТЫ

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

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

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

4 Разработана модель информационно-программной системы предприятия, предложены способы интеграции интеллектуальной подсистемы,

5 Результаты теоретических исследований и практических разработок были применены при создании подсистемы поддержки принятия решений, предназначенной для использования в качестве встраиваемой компоненты информационной системы предприятия Для проверки наличия требуемых свойств разработанная подсистема была интегрирована в состав готовых ИС предприятия Результаты опытной эксплуатации подтвердили высокую степень эффективности подсистемы,

6 Результаты проведенных исследований подтвердили, что решение актуальной научной и практической задачи создания подсистем поддержки принятия решений заключается в использовании интегрированных программных комплексов, включающих интеллектуальную подсистему продукционного типа Такое решение позволяет сократить сроки и снизить затраты на реализацию сложных информационно-программных систем

Дальнейшее развитие данной работы может быть направлено на расширение функциональности и производительности разработанной подсистемы поддержки принятия решений за счет использования математического аппарата нечеткой логики и реализации модели распределенных вычислений

Оглавление автор диссертации — кандидата технических наук Пушкин, Алексей Юрьевич

ВВЕДЕНИЕ.

ГЛАВА 1. ЗАДАЧА СОЗДАНИЯ И ИСПОЛЬЗОВАНИЯ В МАШИНОСТРОИТЕЛЬНЫХ САПР ПОДСИСТЕМ ПОДДЕРЖКИ ПРИНЯТИЯ РЕШЕНИЙ.

1.1. Современный подход к автоматизации принятия решений.

1.2. Инструментальные и программные средства разработки программного обеспечения.

1.3. Выводы.

ГЛАВА 2 МАТЕМАТИЧЕСКИЕ И ПРОГРАММНЫЕ СРЕДСТВА ПОДДЕРЖКИ ПРИНЯТИЯ РЕШЕНИЙ.

2.1. Теория принятия решений.

2.2. Рассуждения в условиях неопределенности.

2.3. Интеллектуализированные системы.

2.4. Искусственный интеллект и экспертные системы.

2.5. Классификация экспертных систем.

2.6. Базы знаний.

2.7. Математические основы продукционных систем.

2.8. Методы устранения неопределенностей и пополнения знаний.

2.8. Языки программирования задач искусственного интеллекта и языки представления знаний.

2.9. обзор современных разработок в области систем основанных на знаниях.

2.10. полученные результаты исследований и внедрения программ искусственного интеллекта и экспертных систем.

2.11. выводы.

ГЛАВА 3. ТЕОРЕТИЧЕСКАЯ РАЗРАБОТКА ПРОДУКЦИОННОЙ ПОДСИСТЕМЫ ПОДДЕРЖКИ ПРИНЯТИЯ РЕШЕНИЙ.

3.1. состав информационной системы предприятия и место продукционной подсистемы в ней.

3.2. Общие принципы функционирования подсистемы поддержки принятия решений.

3.3. Алгоритмы работы продукционных систем.

3.4. Структура подсистемы поддержки принятия решений.

3.5. Режим работы.

3.6. выводы.

ГЛАВА 4. РЕАЛИЗАЦИЯ ПОДСИСТЕМЫ ПРИНЯТИЯ РЕШЕНИЙ.

4.1. обос1 ювание и выбор программно-технических средств реализации системы.

4.2. Краткое описание разработанных программных средств.

4.3. применение разработанной подсистемы.

4.4. Оценка возможности использования подсистемы в информационных системах общего назначения.

Введение 2007 год, диссертация по информатике, вычислительной технике и управлению, Пушкин, Алексей Юрьевич

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

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

• оценка ситуации и выбор решения при управлении сложными технологическими процессами;

• задачи диагностики в областях техники, медицины и других;

• оптимизация управляющих программ для станков с ЧПУ;

• прогнозирование финансово-экономических параметров предприятий и так далее. Исследования в области искусственного интеллекта позволили в определенной степени задействовать компьютер для решения трудноформализуемых задач. На сегодняшний день разработан обширный инструментарий для создания и эксплуатации в промышленности и других областях деятельности человека программных комплексов с интеллектуальной поддержкой. К ним относятся экспертные системы, системы для поддержки принятия решения (decision support systems), системы для распознавания образов (текстов, изображения, речи), и некоторые другие.

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

Кроме того, в программировании в целом наметилась быстро развивающаяся тенденция к интеллектуализации. Так, практически все популярные программные продукты в большей, или в меньшей степени приобрели черты интеллектуальности. Запоминание действий пользователя, подсказки и рекомендации по оптимальному использованию соответствующих режимов самих программ, сложные ассоциативные поиски, оптимизация кода при программировании, сложные механизмы обеспечения корректности данных при вводе и хранении - вот неполный перечень признаков интеллектуализации современных программных средств. А это, в свою очередь, является немаловажной предпосылкой дальнейшего прогресса в разработке интеллектуальных систем.

Несмотря на все это, автоматизация решения трудноформализуемых задач с помощью специализированного инструментария затруднена из-за того что:

1. применение специализированныых инструментальных комплексов (например, таких как G2 компании GenSym) не оправдано для решения традицонных задач. Также, в силу особенностей реализации таких комплексов затруднена их интеграция с другими программными продуктами предприятия;

2. использование таких комплексов требует привлечения специалистов обладающих специфической квалификацией.

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

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

Данная диссертационная работа посвящена проблеме проектирования и построения АСУ предприятий и машиностроительных САПР с интеллектуальной поддержкой. В качестве основного выделен круг задач, связанный с разработкой интеллектуальной подсистемы обработки информации и поддержки принятия решений, предназначенной как для использования в составе инструментальных сред разработки САПР, так и в составе различных информационно-программных систем.

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

Для достижения поставленных целей в диссертационной работе решались следующие научные и практические задачи:

• анализ и систематизация методов и средств автоматизации процесса принятия решений;

• синтез требований, которым должна удовлетворять разрабатываемая подсистема и информационная система в целом;

• разработка механизма вывода решений на основе модифицированной стратегии конфликтной резолюции;

• разработка модели информационно-программной системы предприятия с интеллектуальной подсистемой;

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

В соответствии с поставленной задачей в первой главе дается обзор общего состояния рассматриваемой проблемы. Проводится анализ программного обеспечения и существующих технологий, применимых для создания подсистемы поддержки принятия решений[44,45,81]. В результате сравнения возможностей современных систем разработки представленных на мировом рынке было определено, что среда реализации должна принадлежать к классу RAD систем (Rapid Application Development - быстрая разработка приложений), что позволит в кратчайшие сроки осуществить разработку программного продукта.

Во второй главе проводится анализ методов и средств создания систем, основанных на знаниях[6,23,33,76,83,84,85,99,111,116,119,124]. Математический аппарат, используемый при создании подсистемы поддержки принятия решений, может быть основан как на теории принятия решений, так и на теоретических и практических результатах исследований искусственного интеллекта. Основываясь на мировом опыте создания интеллектуальных программных продуктах, делается вывод о том, что наиболее успешно задачи выбора и принятия решений решаются при использовании теоретических результатов исследований искусственного интеллекта - в виде экспертных систем. В результате проведенного анализа существующих методик был предложен подход к созданию подсистемы ППР для интеллектуальных САПР и ИС предприятия - в качестве основы алгоритма ППР предлагается использовать продукционный принцип построения экспертных систем, что позволит формализовать знания предметной области на языке, приближенном к естественному языку.

В третьей главе приводится описание общих принципов построения разрабатываемой подсистемы обработки данных и поддержки принятия решений. [7,9,14,15,18,34,51,66,93,94,121] Анализируется структура и основные свойства инструментальных средств разработки интеллектуальных систем. В результате анализа основных методик построения продукционных систем и требований, предъявляемых к разрабатываемой подсистем произведен синтез архитектуры автоматизированной подсистемы продукционного типа, базирующейся на модифицированной стратегии конфликтной резолюции и позволяющей эффективно решать задачи выбора и принятия решений в информационно-программных системах различного назначения. Особенностью разработанной архитектуры является - отсутствие требования по наличию специальных знаний и навыков для эксплуатации, а также наличие способности к использованию в составе различных информационно-программных систем машиностроительного предприятия.

В четвертой главе описаны методы и средства реализации прототипной подсистемы поддержки принятия решений, теоретически обоснованной в предыдущих главах. В качестве среды разработки была выбрана система RAD класса - Clarion for Windows[31,40,104]. Также приводятся описание методов и средств для проверки потребительских свойств разработанного программного продукта. Результаты осуществленных внедрений и проведенная опытная эксплуатация разработанной подсистемы поддержки принятия решений подтвердили, что система ограничений и предположений использованная при разработке не оказала отрицательного влияния на возможности подсистемы и получаемые с ее помощью результаты.

Проведенная опытная эксплуатация, показала, что эффективность использования не зависит от области применения, и одинаково качественно происходит обработка, как задач САПР, так и задач связанных с функционированием предприятия. Успешное использование разработанной подсистемы позволяет сделать вывод о возможности ее применения в системах различных типов и классов - от интеллектуального контроля введенных пользователем данных и программ расчета параметров деталей машин до крупных машиностроительных САПР, например, AutoCAD Mechanical Desktop.

В приложениях приводятся блок-схемы алгоритмов основных программных модулей и справки об использовании результатов работы.

Научная новизна диссертационного исследования заключается в следующем:

• разработан способ автоматизации решения трудноформализуемых задач, связанных с проблемами выбора и принятия управляющих решений;

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

Практическое применение. Использование продукционного подхода позволяет предоставить разработчику инструмент, предоставляющий широкие возможности по обработке информации. Внесение предложенных модификаций в продукционный подход позволяет с его помощью автоматизировать практически любую задачу, связанную с принятием решений и интеллектуальной обработкой информации. Теоретические результаты работы и разработанная на их основе прототипная подсистема поддержки принятия решений использованы в информационном контуре предприятия ООО «ТД «За рулем» и ООО «Делкам-Москва».

Заключение диссертация на тему "Разработка методов и средств поддержки принятия решений для интегрированной инструментальной среды построения систем обработки информации и управления в машиностроении"

4.5. Основные выводы и результаты работы

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

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

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

4. Разработана модель информационно-программной системы предприятия, предложены способы интеграции интеллектуальной подсистемы;

5. Результаты теоретических исследований и практических разработок были применены при создании подсистемы поддержки принятия решений, предназначенной для использования в качестве встраиваемой компоненты информационной системы предприятия. Для проверки наличия требуемых свойств разработанная подсистема была интегрирована в состав готовых ИС предприятия. Результаты опытной эксплуатации подтвердили высокую степень эффективности подсистемы;

6. Результаты проведенных исследований подтвердили, что решение актуальной научной и практической задачи создания подсистем поддержки принятия решений заключается в использовании интегрированных программных комплексов, включающих интеллектуальную подсистему продукционного типа. Такое решение позволяет сократить сроки и снизить затраты на реализацию сложных информационно-программных систем.

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

Библиография Пушкин, Алексей Юрьевич, диссертация по теме Системный анализ, управление и обработка информации (по отраслям)

1. Адаменко А. «Логическое программирование и Visual Prolog», Санкт

2. Петербург, Изд. БХВ-Петербург, 2003г., 990 с.

3. Адаменко А., Кучуков А. «Логическое программирование и Visual Prolog (+CD-ROM)», Санкт-Петербург, изд. БХВ-Петербург, 2003 г., 992с.:ил.

4. Александровский А. Д. «Delphi 5», Москва, изд. ЛАЙТ Лтд, 2001г., 511с.:ил.

5. Алексеев А.В., Борисов А.Н., Вилюмс Э.Р., Слядзь Н.Н., Фомин С.А. «Интеллектуальные системы принятия проектных решений», Москва, изд. Zinatne, 1997 г., 320 с.:ил.

6. Аналитические технологии XXI века из первых рук http://www.neuroproject.ru/

7. Андрейчиков А.В. «Экспертная система для начальных стадий проектирования технических систем», Москва, изд. программные продукты и системы, 1989 г., 160 с.

8. Апраушева Н.Н. «Элементарный курс теории принятия решений», Москва, изд. Вычислительный центр РАН, 2000 г.

9. Архангельский А.Я. «Программирование в Delphi 6», Москва, изд. БИНОМ, 2001г., 1120 с.:ил.

10. Архипенков С., Голубев Д., Максименко О. «Хранилища данных. От концепции до внедрения», Москва, изд. ДИАЛОГ-МИФИ, 2002 г.

11. Барскиц А.Б. «Нейронные сети: распознавание, управление, принятие решений», Москва, 2004 г., 176 с.:ил.

12. Боггс У. «UML и Rational Rose», Москва, изд. ЛОРИ, 2000г., 580 с.

13. Боггс У., Боггс М. «UML Rational Rose», Москва, изд. ЛОРИ, 2001 г., 582 с.:ил.

14. Бондарев В.Н., Аде Ф.Г. «Искусственный интеллект: Учебное пособие для вузов», Москва, 2002 г., 347 с.

15. Борисов А.Н. «Обработка нечеткой информации в системах принятия решений», Москва, изд. Радио и связь, 1989г., 303 с.

16. Боровиков В. «STATISTICA искусство анализа данных на компьютере», 2-е издание Санкт-Петербург, изд. Питер, 2003г., 688 с.:ил.

17. Братко И. «Алгоритмы искусственного интеллекта на языке PROLOG» 3-е издание Москва, изд. Вильяме, 2004г., 640 с.:ил.

18. Буч «Визуальное моделирование с помощью Rational Rose 2002 и UML», Москва, изд. Вильяме, 2003г., 192 с.

19. Вагин В.Н. «Дедукция и обобщение в системах принятия решений», Москва, изд. Наука, 1988 г., 423 с.

20. Васильев В. И., Коноваленко В. В., Горелов Ю. И. «Имитационное управление неопределенными объектами», Краснодар, изд. Наукова думка, 1989 г., 216с.

21. Вольфенгаген В.Э. «Комбинаторная логика в программировании. Вычисления с объектами в примерах и задачах», Москва, изд. ЮрИнфоР, 2003г., 336 с.

22. Вороновский Г.К.,. Махотило К.В, Петрашев С.Н., Сергеев С.А. «Генетические алгоритмы, искусственные нейронные сети и проблемы виртуальной реальности», Харьков, изд. ОСНОВА, 1997 г., 112 с.

23. Гаврилова Т.А., Хорошевский В.Ф. «Базы знаний интеллектуальных систем», Санкт-Петербург, изд. Питер, 2001г., 384 с.:ил.

24. Гаврилова Т.А., Червинская К.Р. «Извлечение и структурирование знаний для экспертных систем», Москва, изд. Горячая линия Телеком-Радио и связь, 1992 г., 387 с.

25. Герман О.В. Введение в теорию экспертных систем и обработку знаний, Мн., изд. Дизайн ПРО, 1995. 255 с.

26. Гольдштейн Б.С., Ехриель И.М., Рерле Р.Д. «Интеллектуальные сети», Москва, изд. Горячая линия Телеком-Радио и связь, 2003 г., 504 с.:ил.

27. Горбань А.Н. «Методы нейроинформатики», сборник научных трудов, Красноярск, изд. КГТУ, 1998г., 204 с.

28. Горбань А.Н., Дунин-Барковский B.JL, Кирдин А.Н. «Нейроинформатика», Новосибирск, изд. Наука, Сибирское предприятие РАН, 1998 г. 296с.

29. Городняя JI.B. «Основы функционального программирования: Курс лекций», Москва, изд. ИНТУИТ.РУ, 2004 г., 272 с.

30. Громов Г.Р. «Автоформализация профессиональных знаний», Москва, изд. Микропроцессорные средства и системы, № 3,1986г., 80-91 с.

31. Девятков В.В. «Системы искусственного интеллекта», Москва, изд. Издательство МГТУ им Н,Э, Баумана, 2001 г., 352 с.:ил.

32. Дегтярев И. «Язык программирования Clarion 5.0. Неофициальное руководство пользователя по созданию приложения для Internet», Москва, изд. Майор, 2002 г., 208 с.:ил.

33. Дейт К. Дж. «Введение в системы баз данных» 6-е издание, Москва, изд. Вильяме, 1998г., 848с.

34. Джексон П. «Введение в экспертные системы», 3-е издание Москва, изд. Вильяме, 2001г., 624 с.:ил.

35. Дрезнер X., Хостманн Б., Ф. Байтендийк, Inside Gartner Group (рус.), «Вниманию руководства: Обновленные Волшебные Квадраты Gartner для систем интеллектуальной поддержки бизнеса», февраль 2003 г.

36. Дубов Ю.А., Травкин С.И., Якимец В.Н. «Многокритериальные модели формирования и выбора вариантов систем», Москва, изд. Наука, 1986 г., 295 с.

37. Дунаев С. «Технологии Интернет программирования», Санкт-Петербург, изд. БХВ Петербург, 2001г., 480 с.:ил.

38. Дюк В.А. «Data Mining интеллектуальный анализ данных», Санкт-Петербург , изд. Санкт-Петербургский институт информатики и автоматизации РАН, 2003 г. 100 с.

39. Зарипов Р.Х. «Машинный поиск вариантов при моделировании творческого процесса», Москва, изд. Наука, 1983г., 232 с.

40. Иванов К.А. «Справочник: Искусственный интеллект. Книга 1. Системы общения и экспертные системы», Москва, изд. Горячая линия Телеком- Радио и связь, 1990 г., 464 с.:ил.

41. Информационно- познавательный журнал для разработчика Clarion http://www.kirsoft.com.ru/cw/

42. Искусственный интеллект Краткое описание построения нейронных сетей. http://www.geocities.com/SiliconValley/Bridge/3557/russian/ai.htm

43. Искусственный интеллект- взгляд в будущее http://aifuture.chat.ru/

44. Калан Р. «Основные концепции нейронных сетей», Москва, изд. Вильяме, 2003 г., 288 с.:ил.

45. Кватрани Т. «Rational Rose и UML. Визуальное моделирование», Москва, изд. ДМК, 2001г., 175 с.

46. Комафорд К., «Корпоративная отчетность: Серверная архитектура для распределенного доступа к информации» февраль 1999 г., http://www.osp.ru/os/2003/04/

47. Комашинский В.И., Смирнов Д.А. «Нейронные сети и их применение в системах», Москва, изд. Горячая линия- Телеком, 2002 г., 386 с.

48. Коннолли Т., Бегг К., Страчан А. «Базы данных: проектирование, реализация и сопровождение», Москва, изд. Вильяме, 2000г., 1120 с.

49. Корнеев В.В., Гареев А.Ф., Васютин С.В., Райх В.В. «Базы данных. Интеллектуальная обработка информации», Москва, изд. Нолидж, 2001 г., 352 с.:ил.

50. Короткий С. «Нейронные сети: алгоритмы обратного распространения» http://www.neuropower.de/rus/books/003/n2.zip

51. Короткий С. «Нейронные сети: основные положения» http://www.neuropower.de/rus/books/003/nl.zip

52. Кочин Д., Димитриади Г., Афанасьев В. «Методы поддержки принятия решений», Россия, изд. Едиториал УРСС, 2001 г., 72 с.

53. Круглов В.В., Борисов В.В. «Исскуственные нейронные сети. Теория и практика», Москва, изд. Горячая линия-Телеком- Радио и связь, 2002 г., 382 с.:ил.

54. Кузнецов В. Е. «Представление в ЭВМ неформальных процедур», Москва, ихд. Наука, 1989г., 158с.

55. Кулик Б.А. «Логика естественных рассуждений», Санкт-Петербург, изд. Невский проспект, 2001 г., 128 с.:ил.

56. Кушнир А. «Системы искусственного интеллекта. Лекция», Москва, изд. Маркетинг, .2001 г., 36 с.

57. Кьюсиака Э. «Искусственный интеллект. Применение в интегрированных производственных системах», Москва, изд. Машиностроение, 1991 г., 544 с.:ил.

58. Лаборатория искусственного интеллекта, нейронные сети http://lii.newmail.ru/

59. Лавров С.С. «Представление и использование знаний в автоматизированных системах», Москва, изд. Микропроцессорные средства и системы, № 3, 1986г., 38-43 с.

60. Лед и пламя: статья об искусственном интеллекте http://homes.arealcity.com/ai/

61. Липаев В.В. «обеспечение качества программных средств. Методы и стандарты», Москва, изд. Синтег, 2001г., 380 с.

62. Лихтциндер Б.Я., Кузякин М.А., Росляков А.В., Фомичев С.М. «Интеллектуальные сети и связи», Москва, изд. Эко-Трендз, 2002 г., .206 с.:ил.

63. Ларичев О.И. «Теория и методы принятия решений», Москва, изд. Мир,1990 г., 425 с.:ил.

64. Лорьер Ж.-Л. «Системы искусственного интеллекта»,Москва, изд. Мир,1991 г., 342 с.:ил.

65. Люгер Дж.Ф. «Искусственный интеллект: стратегии и методы решения сложных проблем» 4-е издание, Москва, изд. Вильяме, 2003 г., 864 с.:ил.

66. Масленников Е.В. «Экспертное знание. Интеграционный подход и его приложение в социологическом исследовании», Москва, изд. Наука, 2001 г., 228с.

67. Мендельсон Э. «Введение в математическую логику» перевод с английского, Москва, изд. Мир, 1984 г., 320 с.

68. Микони С.В. «Модели и базы знаний», Санкт-Петербург, изд. СПГЭТУ, .1998 г., 164 с.

69. Минский М. «Фреймы для представления знаний», Москва, изд. Энергия, 1979 г., 320 с.

70. Мюллер Р.Дж. «Базы данных и UML/ Проектирование», Москва, изд. ЛОРИ, 2002г., 420 с.

71. Набебин А.А. «Логика и Пролог в дискретной математике», Москва, изд. МЭИ, 1996 г. 452 с.

72. Назаров А.В. Лоскутов А.И. «Нейросетевые алгоритмы прогнозирования и оптимизации систем», Москва, изд. Наука и техника, 2003 г., 384 с.:ил.

73. Научно-исследовательская лаборатория «Проблемы искусственного интеллекта» http://www.kcn.ru/tatru/science/aipl/index.htm

74. Нейлор К. «Как построить свою экспертную систему», Москва, изд. Энергоатомиздат, 1991 г., 287 с.

75. Нейронные сети http://www.neusciences.com/

76. Нильсон Н. «Искусственный интеллект. Методы поиска решений», Москва, изд. Мир, 1973 г. 586 с.:ил.

77. Описание экспертных систем http://inf.tu-chel.ac.ru/~pollak/expert

78. Орфали Р., Харки Д., Эдварде Д. «Основы CORBA», Москва, изд. Горячая линия-Телеком- Малип, 1999 г., 318 с.:ил.

79. Осуги С. «Приобретение знаний» перевод с японского, Москва, изд. Мир, 1990г., 304 с.

80. Официальный сайт компании AMZI! http://www.amzi.com

81. Полещук Н. «AutoCad 2000 и Visual LISP», 2-е издание Санкт-Петербург, изд. Питер, 2001г., 672 с.:ил.

82. Полянский А. «Среда программирования Delphi 5-6», Москва, изд. Познавательная книга Плюс, 2001г., 415 с.

83. Понамарев В. «Базы данных в Delphi 7», Санкт-Петербург, изд. Питер Паблишинг, 2003г., 224 с.

84. Попов Э.В. «Экспертные системы реального времени», Москва, изд. ЦРДЗ, 1995 г., Материалы семинара с.5-22

85. Попов Э.В. «Экспертные системы», Москва, изд. Наука, 1987 г., 283 с.

86. Попов Э.В., Фоминых И.Б., Кисель Е.Б. «Статические и динамические экспертные системы: классификация, состояния, тенденции», Москва, изд. ЦРДЗ, 1995 г., 213 с.

87. Поспелов Г.С., Поспелов Д.А. «Искусственный интеллект- прикладные системы», Москва, изд. Знание, 1985 г., 452 с.

88. Поспелова Д.А. «Нечеткие множества в моделях управления и искусственного интеллекта», Москва, изд. Наука, 1986 г., 312 с.

89. Причард Д. «СОМ и CORBA. Просто и доступно», Москва, изд. Лори,2001 г., 372 с.:ил.

90. Романовский И.В. «Дискретный анализ», 3-е издание, Санкт-Петербург, изд. БХВ Петербург, 2003г., 320 с.:ил.

91. Романычева Э.Т. «Трехмерное моделирование в AutoCad 14. AutoLISP», Москва, изд. ЛАЙТ Лтд, 1999г., 352 с.

92. Рутковская Д. «Нейронные сети, генетические алгоритмы и нечеткие системы», Москва, изд. Горячая линия-Телеком, 2004 г., 452 с.:ил.

93. Рыбина Г.В. «Проектирование систем, основанных на знаниях», Москва, изд. МИФИ, 2000 г., 104 с.:ил.

94. Салливан Т. «Данных больше, доступ - лучше», статья Computer World 38/2001 г. http://www.osp.ru/os/2003/04

95. Салливан Т., «Это надо рисовать: Программное обеспечение анализа данных становится более выразительным», статья ComputerWorld 42/2000 г. http://www.osp.ru/os/2003/04/

96. Сигел Дж. «CORBA 3», Москва, изд. Горячая линия-Телеком- Малип,2002 г., 412 с.:ил.

97. Системы искусственного интеллекта http://penguin.photon.ru/doc/ai.shtml

98. Смит К.У., Ульямс JI. Дж. «Эффективные решения: практическое руководство по созданию гибкого и масштабируемого программного обеспечения», Москва, изд. Вильяме, 2003 г., 448 с.:ил.

99. Советов Б.Я., Яковлев С.А. «Моделирование систем. Практикум» 2-е издание, Москва, изд. Высшая школа, 2003 г., 295 с.:ил.

100. Сойер Б., Фостер Д. «Программирование экспертных систем на Паскале», перевод с английского, Москва, изд. Финансы и статистика, 1990г., 191с.

101. Соломенцев Ю.М., Митрофанов В.Г. «Автоматизированное проектирование и производство в машиностроении», Москва, изд. Машиностроение, 1986 г., 256 с.

102. Сотник СЛ. «Курс лекций по предмету: Основы проектирования систем с искусственным интеллектом», г. Днепродзержинск, изд. Днепродзержинск, 2000 г. 183 с.

103. Спирли Э. «Корпоративные хранилища данных. Планирование, разработка, реализация», том.1 перевод с английского, Москва, изд. Вильяме, 2001 г.

104. Справочное руководство по Clarion Professional Developer http://www.citforum.ru/programming/clarion/clal.shtml

105. Тененбаум Э. «Современные операционные системы», 2-е издание Санкт-Петербург, изд. Питер, 2004г., 1040 с.:ил.

106. Теория и практика моделирования нейронных сетей, Neural Bench, http://www.neuralbench.ru

107. Тимофеев А.В. «Роботы и искусственный интеллект», Москва, изд. Наука, 1978г., 192 с.

108. Тыугу Э.Х. «Интеграция знаний», Москва, изд. Техническая кибернетика, № 5,1989г., с.З 13

109. У. Росс Эшби, «Искусственный интеллект», справочник в 3-х книгах, Москва, изд. Мир, 1990г.

110. Уоссермена Ф. «Нейрокомпьютерная техника» http://www.sihf.spb.ru/lib/ANN02.htm

111. Уотерман Д. «Руководство по экспертным системам», Москва, изд. Мир, 1989 г., 234 с.

112. Федоров А.Г. «Базы данных», Москва, изд. КомпьютерПресс, 2001г.,255 с.

113. Филиппов В.А. «Интеллектуальный анализ данных: методы и средства», Урал, изд. Едиториал УРСС, .2001 г., 52с.

114. Хансен Г. «Базы данных: разработка и управление», Москва, изд. БИНОМ, 1999г., 699 с.115. 2Хант Э. «Искусственный интеллект», Москва, изд. Мир, 1978 г., 558 с.

115. Хейес-Рот Ф., Уотерман Д., Ленат Д. «Построение экспертных систем», Москва, изд. Мир, 1987 г., 125 с.

116. Хювёнен Э., Сеппянен Й. «Мир Лиспа» в 2 томах, перевод с финского, Москва, изд.Мир, 1990г., 768 с.

117. Цветкова В.Д. «Автоматизация проектирования технических систем и процессов» сборник научных трудов, Минск, изд. Институт технической кибернетики АН БССР, 1979 г., 120 с.

118. Частиков А.П., Белов Д.Л. Гаврилова Т.А. «Разработка экспертных систем. Среда CLIPS», Санкт-Петербург, изд. БХВ Петербург, 2003 г., 608 с.

119. Щавелёв Л. В. «Способы аналитической обработки данных для поддержки принятия решений», Иваново, изд. Ивановский государственный энергетический университет; 2000 г. 160 с.

120. Щавелёв Л.В. «Оперативная аналитическая обработка данных: концепции и технологии», Иваново, изд. Ивановский государственный энергетический университет, 2001 г. 40 с.

121. Электронный каталог журналов Отделения Математики РАН http://math.ras.ru/

122. Элти Д., Кумбс М. «Экспертные системы: концепции и примеры», перевод с английского, Москва, изд. Финансы и статистика, 1987г., 191с.

123. Browston L., Farrell R., Kant E., Martin N. «Programming expert systems in OPS5», Massachusetts, Addison-Wesley Publishing company.INC., 1986,471p.

124. Clocksin W.E. Mellish C.S. «Programing in Prolog», 1981 г., Русский перевод: Клоксин У., Меллиш К. «Программирование на языке ПРОЛОГ», Москва, изд. Мир, 1987г.

125. Corduroy «Lisp», New York, 1994,456 c.

126. Doores J., Reiblein A.R., Vadera S. «Prolog- programming for tomorrow», Sigma Press *Wilmslow, Русский перевод: Дж. Доорс, А.Р. Рейблейн, С. Вадера «Пролог-язык программирования будущего», Москва, изд. Финансы и статистика, 1990г., 144 с.:ил.

127. Harms D. «Clarion Database& SQL», Canada, 2004,624p.

128. Harms D. «Clarion Tips & Texniques», Canada, 2004,630p.

129. Harms D. «Programming Objects in Clarion. Second Edition », Canada, 2004,240p

130. Kimbal R. The Data Warehouse Toolkit: Practical Techniques for Building Dimensional Data Warehouses. John Willey&Sons, 1996

131. Lawton G. «Open Source Security: Opportunity or Oxymoron?» IEEE Computer, March 2002. IEEE Computer Society, 2002

132. Sommerville S. «Software Engineering», New York, Addison Wesley, 2000 Русский передвод: Соммервилл И. «Инженерия программного обеспечения», 6-е издание Москва, изд. Вильяме, 2002 г., 624с.:ил.

133. Thomsen Е. OLAP Solutions: Building Multidimensional Information Systems. Wiley Computer Publishing, 1997

134. Rosenberg Kevin M. A multi-platform SQL interface for Common Lisp http://clsql.b9.com