Содержание к диссертации
Введение
ГЛАВА 1. Обзор методов и моделей выбора программных продуктов 11
1.1 Проблема выбора программных продуктов 11
1.2 Модели выбора наилучшей альтернативы 13
1.3 Методы и модели построения систем, основанных на знаниях
1.3.1 Методы извлечения знаний 23
1.3.2 Модель предметной области на основе онтологии 27
1.3.3 Модели представления знаний 31
1.3.4 Средства построения систем, основанных на знаниях 35
1.4 Системы выбора программных продуктов 38
Выводы по главе 1 41
ГЛАВА 2. Методика, модели и алгоритмы выбора программных продуктов на основе онтологии 42
2.1 Онтология предметной области 45
2.1.1 Область бизнес предпочтений 47
2.1.2 Область пользовательских предпочтений 52
2.2 Оригинальный язык представления знаний 56
2.2.1 Описание языка представления знаний 57
2.2.2 Генерация базы правил 59
2.3 Алгоритм приобретения знаний из программной документации 63
2.3.1 Онтология программной документации 65
2.3.2 Структурирование документа 67
2.3.3 Формирование правила на основе приобретенных знаний 68
Выводы по главе 2 71
ГЛАВА 3. Модель выбора наилучшего программного продукта на основе нечеткой меры 73
3.1 Алгоритм расчета интегральной оценки программного продукта по функциональным возможностям з
3.2 Численный метод оптимизации нечеткой меры на основе империалистического алгоритма 81
3.3 Алгоритм выбора наилучшего программного продукта по пользовательским предпочтениям 86
Выводы по главе 3 89
ГЛАВА 4. Программный комплекс для выбора программных продуктов 91
4.1 Разработка архитектуры веб-ориентированного программного комплекса.. 91
4.2 Выбор средств реализации 95
4.3 Описание программного комплекса 98
Выводы по главе 4 100
ГЛАВА 5. Применение методики, моделей и алгоритмов при выборе программных продуктов экономического назначения 102
5.1 Настройка веб-ориентированного программного комплекса 105
5.2 Выбор наилучшего программного продукта 109
5.3 Результаты тестирования программного комплекса 112
Выводы по главе 5 117
Заключение 119
Список сокращений и условных обозначений 121
Список литературы
- Методы и модели построения систем, основанных на знаниях
- Оригинальный язык представления знаний
- Численный метод оптимизации нечеткой меры на основе империалистического алгоритма
- Описание программного комплекса
Методы и модели построения систем, основанных на знаниях
В сети Интернет имеются различные сервисы, способные выдать набор программных продуктов (товаров) по различным параметрам (раздел 1.4). Однако такие сервисы не предоставляют возможности рассматривать и анализировать программные продукты по функциональным возможностям с целью выбора конкретного наиболее подходящего варианта. В связи с этим задача выбора наилучшего 1111 из нескольких вариантов с учетом предпочтений пользователя является актуальной. При этом альтернативы оцениваются по нескольким параметрам, что вносит сложность в анализ и обработку данных.
Под выбором наилучшего 1111 понимается такой выбор альтернативы, в которой с учетом всех разнообразных и противоречивых предпочтений будет определена общая ценность, максимально способствующая достижению поставленной цели.
В рассматриваемом объекте исследования содержатся как количественные, так и качественные предпочтения, причем качественные преобладают. Поэтому необходимо использовать методы, позволяющие осуществлять выбор из множества альтернатив, где параметры имеют различные типы шкал измерения в условиях неопределенности. Ниже представлены основные типы шкал, применяемые при экспертном оценивании [95]: качественные шкалы: номинальная шкала, шкала порядка, шкала гиперпорядка; количественные шкалы: шкала интервалов, шкала отношений, шкала разностей, абсолютная шкала, степенная шкала.
При решении поставленной в диссертационной работе задачи для описания параметров 1111 используются следующие типы шкал: номинальная шкала - используется для измерения значений качественных признаков - значением такого признака является наименование класса эквивалентности, к которому принадлежит рассматриваемый объект; шкала порядка - строится на отношении тождества и порядка. Субъекты в данной шкале ранжированы; шкала интервалов - построение такой шкалы позволяет большую часть свойств существующих числовых систем приписывать числам, полученным на основе субъективных оценок.
Для получения и обработки количественными методами качественной информации используются вербально-числовые шкалы, в состав которых входят содержательно описываемые наименования ее градаций и соответствующие им количественные значения или числовые интервалы. Широкое распространение для нормализации характеристик получила вербально-числовая шкала Харрингтона [34, 42, 52, 65], представленная в таблице 1.1.
Формула определяет функцию с двумя участками насыщения (в d=0 nd = 1) и линейным участком (от d = 0,2 до d = 0,8). Интервал от -2 до 5 на шкале частных показателей является промежутком эффективных значений. Следует отметить, что для учета неравномерности роста предпочтений альтернатив рекомендуется использовать именно нелинейные функции для нормализации характеристик [73]. Задачи выбора наилучшей альтернативы отличаются большим разнообразием и решаются различными методами и моделями на основе: 1) количественных характеристик: многокритериальная теория полезности [44, 45] (R.L. Kini, К. Raifa), эвристические методы [23]; 2) качественных характеристик, которые сразу же переводятся в количественный вид: метод анализа иерархий [82, 125] (T.L. Saaty), методы теории полезности [71, 72] (В.В. Подиновский, V. Pareto), методы теории нечетких множеств [22, 40, 59, 108, 135, 137, 138] (А.Н. Аверкин, И.З. Батыршин, В.Б. Тарасов, Н.Г. Ярушкина, P. Angelov, D. Dubois, W. Pedrycz, R.R. Yager, L. Zadeh); 3) количественных характеристик, использующих индикаторы сравнения: методы сравнительного превосходства [101, 124] (В. Roy); 4) качественных характеристик без перехода к количественному виду: методы вербального анализа решений [48, 49] (О.И. Ларичев). Решаемая в диссертационной работе задача, является задачей выбора в условиях неопределенности, так как информация, необходимая для определения наилучшей альтернативы является качественной. Методы теории полезности, метод анализа иерархий и методы теории нечетких множеств в наибольшей степени удовлетворяют требованиям универсальности в условиях неопределенности [49].
Многокритериальная теория полезности. Процедура построения функции полезности требует привлечения значительных объемов информации и является достаточно трудоемкой. Достоинством является возможность оценки любого количества альтернативных вариантов с использованием полученной функции. Однако в случае неустойчивой исходной информации применение методов теории полезности становится малоэффективным [44, 48].
Метод анализа иерархий. Метод отличается простотой и соответствует интуитивным представлениям. Наиболее часто различные модификации метода применяются для оценки качества программного обеспечения. В работе [104] выбор пакета программного обеспечения для имитационного моделирования основан на нечетком методе анализа иерархий; здесь по семи основным критериям проводится оценка шести программных продуктов. Метод анализа иерархий предложено использовать в работе [115] для выбора одной из двух систем ERP (Enterprise Resource Planning) по восьми критериям. Методология анализа среды функционирования применена в работе [126] для выбора программного обеспечения системы маршрутизации отличительной особенностью применённого подхода является описание характеристик программных продуктов в порядковых (ранговых) шкалах. Главным недостатком этого подхода является большое количество требуемой экспертной информации, которая представляет собой множество оценок предпочтительности, полученных в процессе попарного сравнения альтернатив. Также метод имеет ограничение на количество одновременно сравниваемых альтернатив [82].
Теория нечетких множеств. Нечетко-множественный подход позволяет наилучшим образом формализовать нечеткие качественные высказывания в терминах естественного языка. Формализация нечетких понятий профессионального языка пользователя обеспечивается введением понятий лингвистической переменной, нечеткого множества [22, 59].
Нечетким выводом называется получение заключения в виде нечеткого множества, соответствующего текущим значениям входов, с использованием нечеткой базы знаний и нечетких операций [89, 99].
Оригинальный язык представления знаний
Кроме того, каждому ВУ соответствует одноименный условный (универсальный) подвид учета. К нему принадлежат те программы, которые не относятся к выделенным подвидам учета. То есть к представленному выше списку также будет относиться значение ОУиУУ. Для того, чтобы их различить введено значение ОУиУУ.
Данные подвиды охватывают не только интересующие виды учета, но и включают анализ конкретного состава решаемых учетных задач.
Вид и подвид деятельности. Вид деятельности является важной характеристикой предприятия, а значит и программного продукта, выбираемого для его автоматизации. Здесь определяется прикладная область, для которой подбирается программа. Существует общероссийский классификатор видов экономической деятельности [62], на основе которого были выделены значения:
К перечисленным видам деятельности добавлен «Универсальный вид деятельности» (УВД). Это связано с тем, что существуют универсальные 1111, которые предназначены для автоматизации задач, имеющихся в различных видах деятельности.
Для уточнения прикладной области некоторые виды деятельности были декомпозированы на подвиды деятельности: ЖКХ: квартплата, субсидии; здравоохранение и социальные услуги: медицинские услуги (М), стоматология; образование: центр сертифицированного образования (ЦСО), психодиагностика, питание; оптовая и розничная торговля: ювелирная торговля, книги, бытовая техника, аптека и оптика, одежда и обувь, стройматериалы, касса; производство: издательское дело и полиграфическая промышленность, молочное производство, мясное производство, хлебобулочное и кондитерское производство, фармпроизводство, машиностроение, управление инженерными данными (PDM), управление ремонтами, строительные материалы; сельское хозяйство, охота и лесоводство: лесозавод, птицефабрика, элеватор, сельско-хозяйственное предприятие; строительство: сметная документация, девелопмент; транспорт, складское хозяйство и связь: управление складом, управление авотранспортом, управление перевозками; услуги: служба технической поддержки, страхование, кадровое агентство, гостиница (Г), автосервис, ломбард, общественное питание; электроэнергия, газ и водоснабжение: водоканал, теплосеть.
Кроме того, по аналогии с ВУ, каждому виду деятельности соответствует одноименный условный (универсальный) подвид деятельности. К нему принадлежат те программы, которые не относятся к выделенным подвидам деятельности.
Выявленные подвиды охватывают не только интересующие виды деятельности, но и их специализированные направления. Версия. У программ системы «1С:Предприятие 8» есть характеристика, связанная с размером предприятия. Существуют следующие версии программ: БАЗОВАЯ - предназначена для работы одного пользователя, и ориентирована на малые предприятия. Кроме того, обновления для данной версии предоставляются бесплатно через Интернет; ПРОФ - подходят для организаций больших масштабов, то есть предполагает сетевой вариант работы. Также имеет ряд других преимуществ по сравнению с БАЗОВОЙ версией. Данное основание помогает выделить 1111, ориентированные на предприятия различного масштаба.
После того как основные понятия предметной области сформированы необходимо определить отношения (связи) между ними. В данной работе предлагается определять связи между понятиями, используя отношения is_a и define (определяет).
Однако не все представленные выше понятия объединяются в единую онтологию. В связи с этим введено понятие программного продукта, как искомого объекта. В результате получен следующий вид онтологии (рисунок 2.2). ПрограммныйПродукт
С одной стороны онтология дает представление о том, какие знания требуются для будущего программного комплекса, с другой - представление о структуре этих знаний. В диссертационной работе в соответствующих разделах описано использование онтологии при формировании анкет для экспертов и диалогов с пользователем (раздел 5.1), а также при построении базы правил (раздел 2.2). Ниже рассмотрен этап выделения пользовательских предпочтений.
Программные продукты системы «1С:Предприятие 8» обладают различными характеристиками или функциональными возможностями.
Для выделения области пользовательских предпочтений все имеющиеся функциональные возможности были сгруппированы по различным признакам (понятиям). В рассматриваемой задаче наиболее подходящим понятием под условие уникальности набора характеристик в отдельно взятой области пользовательских предпочтений оказалось понятие «Подвид деятельности». Некоторые наборы функциональных возможностей показаны в таблице 2.2.
Функциональные возможности выбираются экспертами исходя из того, чтобы пользователь выбирал 1111 на основе собственных желаний и потребностей, таким образом, чтобы этот выбор зависел не только от параметров предприятия (бизнес предпочтений).
Онтология может быть представлена на одном из языков описания {OWLIRDFIXML) для дальнейшего использования.
Таким образом, предложен подход к анализу предметной области на основе онтологического подхода. Разработана онтология предметной области. При ее разработке для уменьшения количества параметров выделена область бизнес предпочтений - определяющие понятия предметной области, которые являются характерными как для 1111, так и для пользователя (предприятия). Для эффективного решения задачи выбора наилучшего программного продукта выделена область пользовательских предпочтений таким образом, что каждая альтернатива оценивается только по «уникальным» параметрам. Выделение области пользовательских предпочтений позволило значительно уменьшить область исследования (подвиду деятельности соответствует до 50 программных продуктов).
Численный метод оптимизации нечеткой меры на основе империалистического алгоритма
Интегральная оценка необходима для сравнения программных продуктов. Она позволяет объективно оценивать возможности 1111, а также облегчает процесс сравнения, делая его нагляднее.
Программные продукты обладают набором качественных и количественных характеристик - функциональных возможностей. Сравнение 1111 предлагается проводить только по тем характеристикам, которые относятся к определенному подвиду деятельности и не затрагивают характеристики из других областей. Список наиболее важных функциональных возможностей формируется с привлечением экспертов (раздел 2.1). На этапе построения онтологии эксперты формируют частные оценки функциональных возможностей 1111 и устанавливают шкалы измерения для них.
Данные оценки характеризуют степень реализации функциональных возможностей. На рисунке 3.1 представлены примеры шкал с качественными оценками программного продукта экономического назначения.
Нормирование количественных значений функциональных возможностей, исходя из алгоритма, осуществляется в два этапа. Сначала с использованием обобщенной функции Харрингтона по формуле (1.1). Каждое значение M)k пересчитывается в числовые отметки dj = ехр[-ехр(-М Л)] в диапазоне от -2 до 5, так как этот интервал является промежутком эффективных значений функции Харрингтона (рисунок 1.1). Выбор этого промежутка на шкале частных показателей обусловлен тем, что именно в этих точках значения на шкале желательности уже практически близки к граничным, но еще могут существенно меняться в зависимости от значений параметров. При этом если наибольшему из всех значений характеристик 1111 «присвоить» значение «5», а наименьшему «-2», то все остальные расположатся между ними, образуя масштабируемую последовательность значений. Следующим этапом нормирования является пересчет полученных значений dj в отметки на интервале от 0 до 1.
После того как выполнено нормирование всех характеристик, осуществляется расчет интегральной оценки ук.
Расчет интегральной оценки, предлагаемый в диссертационной работе, реализован в рамках основных этапов нечеткого вывода [51, 96, 99]. Ниже этапы рассматриваются в контексте решаемой задачи [10].
Формирование базы правил. Множество правил RFs = {rf\, rf2, ..., rfs] определяет взаимосвязи между входными и выходной переменными и представляются в форме: ЕСЛИ антецедент ТО консеквент .
Входными лингвистическими переменными являются нормированные оценки Mik Выходной лингвистической переменной является интегральная оценка Ук. Все лингвистические переменные описываются нечеткими терм-множествами, заданными треугольными функциями принадлежности на интервале от 0 до 1.
Функции принадлежности для входных и выходной переменных в данной работе представлены в виде треугольных функций. Треугольная функция принадлежности описывается тремя параметрами (а, Ъ, с), степень принадлежности вычисляется как
При построении функций принадлежности следует учитывать то обстоятельство, что теория нечетких множеств не требует абсолютно точного задания функций принадлежности. Зачастую бывает достаточно зафиксировать лишь наиболее характерные значения и вид функции принадлежности. Поэтому предусмотрена возможность задать значения параметров функций и количество термов для проведения эксперимента. Фаззификация. Данный этап называют приведением к нечеткости [51].
Здесь определяются значения функций принадлежности нечетких множеств (термов) на основе исходных данных. Целью этапа фаззификации является установление соответствия между конкретным значением отдельной входной переменной системы нечеткого вывода и значением функции принадлежности соответствующего ей терма входной лингвистической переменной.
После того как получены нормированные оценки рассматриваются субусловия нечетких правил RFs. Для каждого из субусловий правил находится множество значений В ={&,-}, где bj = piFs(Mik).
Агрегирование. Антецедент правила в данной работе является составным, т.е. включает субусловия, связанные между собой при помощи логической операции «И». Для определения результата используется формула нечеткой конъюнкции.
Целью этого этапа является определение степени истинности условий для каждого правила системы нечеткого вывода.
После того как получено множество В рассматриваются условия нечетких правил RFs. Для каждого из правил находится множество значений В = Щ , где bj - логическая операция «И» со значениями bj.
Активизация. На этом этапе происходит переход от условий к субзаключениям правил. Активизация в системах нечеткого вывода представляет собой процедуру нахождения степени истинности каждого из субзаключений правил нечетких продукций.
Описание программного комплекса
Каждый из перечисленных выше входных данных является определяющим, и в зависимости от ответов пользователя снижается количество вариантов для выбора требуемого 1111. Решения этих вопросов уже вполне достаточно для того, чтобы сформировать первоначальные бизнес предпочтения к искомому 1111. На основе данных предпочтений веб-ориентированный программный комплекс предоставляет пользователю от 2 до 10 ППС1С.
Пользователь, получив результаты, имеет право дальше самостоятельно более глубоко разобраться с предложенными альтернативами, сравнить их достоинства и недостатки, выбрать наиболее подходящий вариант. Причем определяющим «достоинством» при этом является цена на ППС1С. Пользователь сразу отметет не интересующие его альтернативы по ценовому фильтру.
Однако данное ограничение не решает проблему выбора, а дополнительный анализ является трудоемкой задачей. Поэтому покупателю предлагается выбрать наилучший программный продукт системы «1С:Предприятие 8» с помощью сервиса оценки по функциональным возможностям. Подробный пример выбора ППС1С по интегральной оценке функциональных возможностей представлен в главе 3. Таким образом, представленные в работе модели и алгоритмы нашли свое применение для выбора программных продуктов системы «1С:Предприятие 8». На основе моделей и алгоритмов предложен инструмент хранения и обработки знаний - веб-ориентированный программный комплекс. Ниже представлены результаты тестирования.
В текущем разделе проведено тестирование веб-ориентированного программного комплекса разработанного на основе предложенных моделей и алгоритмов.
Программный комплекс апробирован на пятидесяти шести клиентах ООО «Информационно-технологическая сервисная компания», уже работающих с пятнадцатью различными программными продуктами «1С:Предприятие 8» в восьми видах деятельности: государственное управление и оборона: «1С:Бухгалтерия государственного учреждения 8», «1С:Зарплата и кадры бюджетного учреждения 8»; жилищно-коммунальное хозяйство: «1С:Бухгалтерия 8. БАЗОВАЯ версия», «1С:Предприятие 8. Учет в управляющих компаниях ЖКХ, ТСЖ и ЖСК»; здравоохранение и социальные услуги: «1С:Бухгалтерия 8. БАЗОВАЯ версия», «1С:Бухгалтерия государственного учреждения 8»; образование: «1С:Дошкольное питание 8», «ІСЗарплата и кадры бюджетного учреждения 8», «1С:Зарплата и управление персоналом 8»; 113 оптовая и розничная торговля: «1С:Зарплата и управление персоналом 8», «1С:Платежные документы 8», «1С:Розница 8. Аптека», «1С:Управление торговлей 8»; производство: «1С:Бухгалтерия 8», «1С:Зарплатаи управление персоналом 8», «1С:Комплексная автоматизация 8», «1С:Предприятие 8. Молокозавод», «1С:Предприятие 8. Фармпроизводство», «1С:Управление производственным предприятием 8»; транспорт, складское хозяйство и связь: «1С:Бухгалтерия 8», «ІСЗарплата и управление персоналом 8», «1С:Предприятие 8. Управление Автотранспортом. Проф»; услуги: «1С:Бухгалтерия 8», «1С:Бухгалтерия 8. БАЗОВАЯ версия», «ІСЗарплата и управление персоналом 8», «1С:Комплексная автоматизация 8», «1С:Платежные документы 8». Все клиенты проходившие тестирование были разделены на три подгруппы по длительности использования ППС1С: до года (17 клиентов), от одного года до двух лет (14 клиентов), более двух лет (25 клиентов).
На основе экспертных оценок функциональных возможностей и пользовательских предпочтений также был проведен ряд экспериментов. Для проверки адекватности данных, полученных с использованием численного метода, проведено соотнесение результатов с рекомендациями экспертов. Эксперимент проводился на одиннадцати программных продуктах системы «1С:Предприятие 8» из одной области применения (медицина). Множество входных данных состоит из одиннадцати таблиц экспертных оценок по десяти функциональным возможностям 1111, а также 11 векторов интегральных оценок. Каждая таблица содержит оценки пяти экспертов по одному 1111. Одна из таких таблиц представлена ниже (таблица 5.4). где УП - учет пациентов, КФ - коечный фонд, МУ - медицинские услуги, РО -регламентированные отчеты, УО - управленческие отчеты, СУ - складской учет, П - планирование, ВК - взаиморасчеты с клиентами,РЗП - расчет заработной платы, УП - управление персоналом.
При извлечении нечеткой меры в империалистическом алгоритме использовалось 592 страны (решения) и 5 империй (лучших решений). Результаты извлечения нечеткой меры представлены в таблице 5.5.
Метод апробирован на пользователях, уже работающих с программными продуктами системы «1С:Предприятие 8». Предлагалось сформировать оценки функциональных возможностей желаемого ПП (таблица 5.6). По данным требованиям и с использованием полученных нечетких мер формировались интегральные оценки желаемых 1111. В результате сравнения интегральных оценок требований пользователей с интегральными оценками 1111 определялся наилучший программный продукт для каждого пользователя (таблица 5.6).