автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.01, диссертация на тему:Проектирование информационных систем с использованием метода основанного на прецедентах
Оглавление автор диссертации — кандидата технических наук Нечипоренко, Олег Анатольевич
ВВЕДЕНИЕ.
1 УПРАВЛЕНИЕ ЗНАНИЯМИ И КОРПОРАТИВНАЯ
ПАМЯТЬ.
1.1 Сложность программного обеспечения и пути ее преодоления.
1.2 Основные понятия об управлении знаниями.
1.3 Извлечение знаний.
1.4 Формализация знаний.
1.4.1 Продукционные правила.
1.4.2 Фреймы.
1.4.3 Семантические сети.
1.4.4 Исчисление предикатов.
1.4.5 Системы, основанные на прецедентах.
1.5 Теория СВЯ-систем.
1.5.1 Технология СВЯ-систем.
1.5.2 СВЯ и поисковые системы.
1.5.3 СВЯ и продукционные системы.
1.5.4 СВЯ и машинное обучение.
1.5.5 СВЯ и нейронные сети.
1.5.6 СВЯ и статистический анализ.
1.6 Применение СВЯ метода в проектировании систем.
1.7. Выводы.
2 КОНЦЕПТУАЛЬНЫЕ МОДЕЛИ ПРЕДСТАВЛЕНИЯ ЗНАНИЙ.
2.1. Основные понятия.
2.2 Повторное использование концептуальных моделей.
2.3. Расчет меры сходства для концептуальных моделей.
2.4. Онтологии.
2.5. Поиск моделей с использованием онтологий.
2.6. Образцы проектирования.
2.7. Архитектура СППР.
2.8. Выводы.
3 АВТОМАТИЗИРОВАННЫЙ ПРОЦЕСС ИЗВЛЕЧЕНИЯ ОБРАЗЦОВ ПРОЕКТИРОВАНИЯ.
3.1. Образцы проектирования и повторное использование кода.
3.2 Выделение образцов проектирования.
3.3 Выводы.
4. РАЗРАБОТКА И АНАЛИЗ ЭФФЕКТИВНОСТИ СППР.
4.1. Этапы разработки ПО.
4.2. Оценка эффективности работы СППР.
4.3 Выводы.
Введение 2003 год, диссертация по информатике, вычислительной технике и управлению, Нечипоренко, Олег Анатольевич
Актуальность проблемы. В настоящее время для различных предметных областей разрабатывается большое количество информационных и автоматизированных систем управления. Каждая такая система требует, как правило, больших затрат времени и ресурсов на создание программных объектов из которых она состоит. Поэтому организации и предприятия стараются привлечь к работе над проектами программных систем разработчиков с высокой квалификацией и большим опытом работы. Тем не менее, не всегда удается найти специалистов необходимой квалификации, а это, в свою очередь, увеличивает время разработки программы, которая в конечном итоге может оказаться неадекватной требованиям. Различные софтверные фирмы выпускают на рынок программного обеспечения средства автоматизированного проектирования программ (СА8Е-средства), которые предлагают разработчику средства для построения моделей программных систем в рамках различных методологий проектирования. Это позволяет сделать сам процесс разработки более определенным и контролируемым на различных этапах проектирования. Однако это не является панацеей или по меткому выражению Ф. Брукса [10]"серебряной пулей" и все равно требует от разработчика необходимого опыта работы. В данной диссертационной работе показана необходимость соединения интеллектуальных средств поддержки принятия решений с СА8Е-средствами, что позволит значительно повысить производительность труда разработчика автоматизированных систем управления. Такие системы позволят использовать формализованный опыт разработок в предметных областях на основе корпоративных хранилищ знаний [68].
Целью работы является создание архитектуры СППР разработчика автоматизированных систем с применением метода, основанного на прецедентах (СВЯ-метод) и вопросы ее реализации на основе современных программных средств. А также рассматриваются вопросы повышения труда разработчика систем и применения различных алгоритмов поиска информационных моделей для систем управления.
Задачи исследования:
1. Разработать архитектуру интеллектуальной системы поддержки принятия решений.
2. Рассмотреть основные элементы системы и методы их функционирования.
3. Создать алгоритмы поиска адекватных информационных моделей.
4. Разработать алгоритм выделения образцов проектирования
5. Провести экспериментальное исследование работы СППР при решении прикладной задачи проектирования.
Методы исследования. Задачи исследования решены при помощи использования так называемого СВЯ метода использования формализованных знаний и технологии нейронных сетей, а также с использованием концептуальных моделей представления информации.
Научная новизна выполненных в диссертации исследований состоит в следующем:
1. Определена архитектура системы поддержки принятия решений разработчика информационных систем.
2. Разработан способ хранения корпоративной информации на основе метода, основанного на прецедентах.
3. Представлен алгоритм расчета меры сходства моделей при их поиске в базе данных.
4. Предложен метод извлечения образцов проектирования на основе классификации моделей систем с использованием нейро-сетевой парадигмы.
5. Использована технология построения Онтологий для создания информационной базы данных СППР.
Практическая ценность. Реализация СППР разработчика ИС и АСУ позволила снизить затраты труда на разработку систем в связи с возможностью автоматизированного выбора наиболее релевантных информационных моделей. Разработчик вправе в соответствии с требованиями либо принять предложенную системой поиска модель, так как она есть, либо создать новую путем незначительных модификаций выбранной модели. СППР реализована на платформе Windows ХР с использованием реляционной СУБД Access и процедурного языка программирования С++. Механизм извлечения образцов проектирования из базы данных моделей ИС позволил разработчику проводить работу по поиску и документированию новых образцов проектирования.
Реализация результатов работы. СППР проектировщика информационных систем была внедрена на предприятиях и организациях ОАО Кубаньэнерго и ОАО Роснефть-Краснодарнефтегаз, таких как ООО "Краснодарнефтегаз-Энергия" и филиал Нефтемашсервис.
Публикации по теме диссертации. Основной материал работы опубликован в 7 научных статьях.
Основные положения, выносимые на защиту:
1. Архитектура СППР разработчика ИС и АСУ.
2. Методика формализации корпоративных знаний.
3. Алгоритмы расчета меры сходства моделей ИС.
4. Метод извлечения образцов проектирования.
5. Методология разработки ИС на базе интеллектуальных CASE-средств.
Структура и объем работы. Диссертационная работа состоит из введения, четырех разделов с выводами по каждому из них, заключения, списка ис
Заключение диссертация на тему "Проектирование информационных систем с использованием метода основанного на прецедентах"
1.7. Выводы
Итак, подводя итог можно сказать, что CBR системы довольно хорошо подходят для представления знаний в тех предметных областях, в которых знания трудно выразить в виде набора продукционных правил или других систем их представления. Их использование оправдано в следующих случаях:
1. Эксперт хорошо знает, как представить прецедент.
2. Эксперт может сравнить описание текущей проблемы и похожей проблемы, решенной ранее.
3. Эксперт может произвести адаптацию предложенного решения проблемы.
4. Прецеденты легко извлечь из различных источников информации
5. Сравнение прецедентов и процесс адаптации происходят довольно эффективно.
6. Предметная область может иметь или не иметь строгую модель представления.
7. Прецеденты используются для обучения специалистов.
8. CBR -технология очень хорошо подходит для формализованного представления проектной информации.
9. Модель программной системы описывается в виде набора концептов и отношений между ними.
2. КОНЦЕПТУАЛЬНЫЕ МОДЕЛИ ПРЕДСТАВЛЕНИЯ ЗНАНИЙ
2.1. Основные понятия
Для того, чтобы хорошо разобраться в предметной области и решить поставленные задачи, необходимо построить адекватную ей модель. Существуют различные подходы к решению этой проблемы, такие как построение математической модели, информационной и т.д. При построении информационных систем, систем автоматизированного проектирования, наиболее хорошо себя зарекомендовавшей считается концептуальная модель предметной области, являющаяся разновидностью информационной модели и семантической сети [46]. Она очень хорошо отражает структурные и функциональные элементы предметной области и отношения между ними в наглядной и удобной для восприятия человеком форме. Наиболее широкое применение концептуальные модели получили у специалистов по базам данных и знаний, а также объектно-ориентированному программированию. Любая информационная или функциональная модель, лежащая в основе программной системы, в том или ином виде есть разновидность концептуальной модели. Самой хорошо проработанной в методологическом и теоретическом планах является модель типа объект/отношение [7,15,20,22,36,60,81]. При изучении предметной области выделяют объекты и отношения между ними. Каждый объект принадлежит определенному классу объектов. Из объектов можно строить обобщенные и специализированные классы, формируя, таким образом, иерархию классов, связанных отношением наследования. Наиболее часто в концептуальных моделях используются такие отношения между концептами:
• Связи типа "часть-целое","класс-подкласс","элемент-множество"
• Функциональные связи
• Количественные (больше, меньше, равно)
• Пространственные
• Временные
• Атрибутивные (иметь свойство, иметь значение)
• Логические (И, ИЛИ, НЕ)
• Лингвистические
Преимуществом такой модели представления знаний является то, что она очень хорошо отражает организацию долговременной памяти человека, а ее основным недостатком - сложность процедуры вывода.
• Отношения бывают бинарные (отношение связывает два объекта)
• N - арные (отношения связывают более двух объектов)
Мы будем рассматривать бинарные отношения, так как парные отношения могут быть сведены к бинарным. Концептуальные модели служат хорошим средством для организации представления знаний. Формализуя наши знания о некоторой предметной области в виде концептуальной модели, мы можем хранить их в базе данных, используя для этого хорошо себя зарекомендовавшую технологию СУБД для хранения и поиска релевантной информации. Таким образом, мы напрямую подходим к решению вопроса о повторном использовании накопленных знаний. Увеличение количества и сложности типов данных, поддерживаемых современными СУБД (пользовательские типы данных, мультимедийная информация и т.д.) увеличивают наши возможности в построении эффективных баз знаний. С помощью концептуальных моделей можно представлять знания об основных объектах изучаемой системы и отношениях между ними. Отражая наши знания, организованные таким образом, на структуры данных СУБД, мы можем хранить в памяти компьютера большое количество моделей предметных областей. Для хорошей структуризации знаний, набор данных моделей можно организовать в иерархию. Для повторного использования знаний, сконцентрированных в концептуальных моделях, достаточно будет указать неполный набор объектов и/или отношений между ними и СУБД осуществит поиск с использованием технологии
СВЛ, а затем выдачу наиболее адекватных запросу моделей предметной области. После этого пользователь может выбрать из них наиболее подходящую для его нужд. Например, при проектировании баз данных, прежде всего, необходимо построить информационную модель предметной области на основе ЕЯ (сущность/связь) модели [15,22,60]. При создании объектно-ориентированного приложения строится модель объект/отношение с применением унифицированного языка моделирования (ЦМЬ) [7,8,9]. Оба этих подхода к проектированию систем являются разновидностями концептуального моделирования. В данной работе за основу будет принята вторая модель, которая и будет использоваться в дальнейшем.
2.2 Повторное использование концептуальных моделей
Теперь рассмотрим вопрос о повторном использовании моделей предметных областей при построении информационных систем. При тесном взаимодействии с экспертом в некоторой предметной области, аналитик извлекает из него необходимые для построения информационной системы знания, которые должны быть выражены в виде представления объект/отношение. Начинается процесс извлечения знаний с построения словаря предметной области, состоящего из набора терминов часто употребляемых экспертом. На начальном этапе аналитик задает эксперту вопросы и тщательно документирует его ответы, после чего проводится анализ ответов и на его основе выделяются ключевые фразы и выражения, определяющие некоторые концептуальные сущности, характерные для данной предметной области. Это могут быть концепты и их экземпляры, атрибуты, события и т.д. Далее под понятием концепт будет подразумеваться класс некоторых сущностей, которые могут соответствовать либо реальным физическим объектам, либо абстрактным. Согласовав с экспертом словарь терминов, аналитик начинает построение деревьев классификации концептов. На этом этапе строится иерархия концептов по принципу класс/подкласс.
Далее рассмотрим вопрос о повторном использовании существующих моделей. Очень часто аналитик разрабатывает информационную модель некоторой предметной области практически с нуля, то есть он не имеет на начальном этапе никаких предварительных знаний о ней. Однако в области информационных технологий работает много специалистов, и обмен опытом между ними помог бы сократить время разработки моделей ПрО. Например, имея разделяемую базу данных информационных моделей ПрО, аналитик мог бы обратиться к информационным моделям конкретных предметных областей и выбрать среди них на основе CBR-технологии те, которые удовлетворяют его требованиям. Использование сети Internet позволит в этом случае получить доступ к такой базе данных из любого подключенного к сети компьютера. На рис. 2-1 приведена упрощенная информационная модель такой базы данных. Таблица Модель будет содержать наименования всех хранящихся в ней моделей ПрО. Она содержит всего два атрибута Идентификатор и Наименование, но при желании количество атрибутов, описывающих модель можно увеличить. Таблица Концепт содержит список всех концептов (в данной ситуации под понятием концепт будет подразумеваться класс объектов), входящих в данную информационную модель. Между таблицами Концепт и Модель. Существует отношение многие-ко-многим, так как модель может содержать различное число входящих в нее концептов, а один концепт может принадлежать различным моделям. Каждый концепт может иметь некоторое число ограничений, описываемых атрибутом Условие и задающих ограничение целостности концепта. Концепт может иметь несколько ограничений, в то время как само ограничение принадлежит лишь одному концепту. Также концепт может иметь набор атрибутов, что выражается в связи многие-ко-многим между таблицами Концепт и Атрибут. Между концептами в моделях существуют бинарные связи, соединяющие два концепта некоторыми отношениями связи, имеющими атрибуты Идентификатор, Исходящий концепт, Входящий концепт и Кардинальность. Исходящий и входящий концепты обозначают два концепта, соединенные некоторой связью. Таблицы
МодельОтношение, КонцептАтрибут и МодельКонцепт являются таблицами связи с возможными дополнительными атрибутами, такими, например, как атрибут Наименование из таблицы МодельОтношение и обозначающий имя связи между двумя концептами. Поскольку одни и теже концепты могут входить в разные модели, то и отношения между двумя концептами могут также входить в разные модели под различными именами, что и отражено в информационной модели на рис. 2.1
2.3. Расчет меры сходства для концептуальных моделей
Теперь необходимо формализовать данный подход к поиску адекватной информационной модели с применением автоматизированных систем принятия решений [49]. Прежде чем начать работу с автоматизированной системой, проектировщик должен уточнить приблизительный набор требований к информационной (концептуальной) модели предметной области, выражающийся в виде списка условий (ограничений). Каждому условию проектировщик должен приписать весовой фактор, т.е. числовое выражение значимости данного условия для принятия решения. И чем больше оказывается весовой фактор, тем более значимым будет результат реализации данного условия в конкретной модели на возможность ее вхождения в список выбора адекватных моделей. Пусть у нас имеется два списка: список моделей М и список условий Р, записанные в следующем виде: где Щ ?•••? ^ весовые факторы условий, а предикаты, характеризующие условия. Предикат это логическая функция, возвращающая 1 или 0 в зависимости от истинности условия. Для расчета критерия подобия используем формулу 2.3
М = {М],М2,.,Мп}
2.1)
Р = {(Р\, ^), (р2, >у2),., (рк, )}
2.2)
Рис. 2.1 Информационная модель к к
1=1
1=1
2.3)
Рассчитав по формуле 2.3 значение 8 для каждой модели, получим следующее множество:
5А/ = {5,5 2 ,.,$„} (2.4)
Отсортировав в порядке убывания множество 8М, можно выбрать из начала множества несколько наибольших значений 8, которые и будут представлять те модели ПрО, которые наибольшей степени удовлетворяют условиям, заданным проектировщиком перед началом автоматизированного поиска. Для реализации в компьютере отсортированного списка 8М можно использовать очередь приоритетов.
Конечно, окончательный выбор той или иной модели остается за проектировщиком, тем не менее, автоматизированный поиск и выбор адекватной модели может существенно облегчить эту задачу. Имея большую базу данных информационных моделей можно значительно повысить производительность труда проектировщика, поскольку сама модель является концентрированным выражением знаний о некоторой предметной области. Созданная одним человеком информационная модель, может в случае необходимости быть использована другим, решающим аналогичные задачи. Этот процесс можно назвать повторным использованием накопленных знаний. Не ограничиваясь одним набором концептов и отношений между ними, в базе данных также можно хранить описание предметной области, варианты использования информационной системы, алгоритмы, шаблоны проектирования и т. д. Такая база данных могла бы служить неисчерпаемым источником информации для аналитика, проектировщика, программиста. Для аналитика существенным для его работы может служить описание предметной области, набор ее информационных объектов, основные требования к информационной системе данной ПрО. Для программиста важным критерием полезности хранимых в базе моделей, может служить набор алгоритмов, реализующих функциональные возможности и требования информационной системы. Перефразируя известную поговорку можно сказать: "С миру по нитке-проектировщику работающая модель".
2.4. Онтологии
Онтология (от др.-греческого онтос-сущее, логос учение, понятие)-термин, определяющий учение о бытии, сущем. В философском смысле на онтологию можно ссылаться как на определенную систему категорий, являющихся следствием определенного взгляда на мир. Сама же система категорий не должна зависеть от языка, который используется для ее описания. Понятие онтологии нашло свое применение и в искусственном интеллекте [13,21,93,94]. Здесь онтология рассматривается как формальная концепту али
68 зация знаний о предметной области. Концептуализация может иметь различные формы: логические теории первого порядка, где терминам словаря соответствуют унарные и бинарные предикаты, называемые соответственно концептами и отношениями, лингвистические описания. Сама концептуализация предполагает описание множества концептов, знаний о них и связей между ними. Таким образом, Онтологией [ОшЬег,1993] называется эксплицитная спецификация концептуализации. Формально онтология состоит из терминов, организованных в таксономию, их определений и атрибутов, а также связанных с ними аксиом и правил вывода.
Люди, организации и программные системы взаимосвязаны между собой. Способ выражения знаний даже об одних и тех же вещах и на одном и том же языке может быть столь различным, что это приводит к непониманию между людьми даже при разговоре об одном и том же предмете. Об этом много написано, в том числе в литературе, не имеющей прямого отношения к искусственному интеллекту. Непонимание становится еще более значительным в случае обмена информацией между людьми, организациями и программами. Возможности взаимодействия программных моделей, созданных в различных организациях, возможности повторного использования и распространения этих моделей весьма ограничены. Это в свою очередь приводит к повторным усилиям по созданию программных моделей, мало отличающихся от уже созданных. Такая ситуация напоминает повторное изобретение велосипеда.
Спрашивается, как можно избежать такого рода изобретений? Естественный ответ — это устранить или свести к минимуму концептуальную и терминологическую путаницу и установить однозначное понимание языка, используемого для формирования требований и спецификаций сложных систем. Такой язык должен, прежде всего, служить средством коммуникации между людьми, имеющими различный взгляд на одни и те же вещи, взаимодействия между программными системами путем трансляции в него и из него, инструментальной поддержки для повторного использования благодаря формальной спецификации, унификации представления различных моделей, автоматизации проверки корректности, переводимости различных методов моделирования в унифицированное представление.
Онтологией называют представленные на некотором языке, обладающем перечисленными ранее свойствами, знания о некоторой области интересов (среде, мире). Онтологии непременно сопутствует некоторая концепция этой области интересов. Чаще всего эта концепция выражается посредством определения базовых объектов (индивидуумов, атрибутов, процессов) и отношений между ними. Определение этих объектов и отношений между ними обычно называют концептуализацией. На определенном этапе концептуализация может быть неявной (или ментальной, т.е. существующей только в чьей-то голове). Онтология является явным представлением некоторой концептуализации и может иметь несколько форм представления:
• неформальную на каком-либо естественном языке;
• полуформальную на каком-либо структурированном подмножестве естественного языка;
• слабоформализованную на каком-либо языке из области искусственного интеллекта с формальным синтаксисом;
• формализованную на каком-либо языке из области искусственного интеллекта с формальным синтаксисом, семантикой, значимым и полным механизмом вывода,
Следующее определение онтологии, обобщает различные определения онтологии: онтологией является общепринятая и общедоступная концептуализация определенной области знаний (мира, среды), содержащая базис для моделирования этой области знаний и определяющая протоколы для взаимодействия между агентами, которые используют знания из этой области, и наконец, включающая соглашения о представлении теоретических основ данной области знаний.
Библиография Нечипоренко, Олег Анатольевич, диссертация по теме Системный анализ, управление и обработка информации (по отраслям)
1. Улучшение взаимодействия связывают с уже упомянутыми надеждами на уменьшение терминологической и концептуальной путаницы и неоднозначности понимания на основе осуществления следующих мероприятий.
2. Постановка задачи. На этом этапе изучается среда, для которой создается онтология, обдумывается, зачем нужна онтология, как и кем она будет использоваться.
3. Формирование вопросов. На этом этапе осуществляется обдумывание и формальное описание вопросов, на которые онтология должна давать ответы, выбирается программная среда для реализации онтологии.
4. Учитывая вышесказанное, онтология представляет собой базу знаний, описывающую факты, которые предполагаются всегда истинными в рамках определенного сообщества на основе общепринятого смысла используемого словаря.
5. Следовательно, для создания базы знаний предметной области, необходимо иметь онтологическую модель этой ПрО. Под формальной онтологической моделью будем принимать упорядоченную тройку вида 13.:
6. О = <Х, Я, ¥> , где X конечное множество концептов (понятий, терминов)
7. И. конечное множество отношений между концептами (понятиями, терминами) заданной предметной области
8. Б- конечное множество функций интерпретации, заданных на концептах и/или отношениях онтологии О. Существуют несколько видов онтологий: онтологии верхнего уровня, предметные онтологии, онтологии задач и онтологии приложения 92. (рис. 2.2)
9. Для решения нашей задачи поиска релевантной информационной модели, введем в рассмотрение специальный подкласс отологий простую таксономию следующим образом:0 = Т = <Х, {1за},{}> (2.5)
10. Отношение 18а представляет собой отношение наследования, а Х- предметный словарь.
11. Поиск моделей с использованием онтологий
12. МС = {(СЬ Wj), (с2, W2),.,(ck, Wk)} (2.6)
13. Каждый элемент множества ограничений Cj представляется в виде конъюнктивной нормальной формы (КНФ) и имеет вид:
14. Ci = (Pi V р2 V. V pk) л. .д(р, V pm V.V ps) (2.7)где pt некоторый предикат (условие).
15. Обобщая приведенную ранее формулу для критерия подобия, получим формулу 2.8к 1=11. S(MC) = --(2.8)к1. Х-,1
16. При использовании дерева таксономии концептов, каждое условие вида
17. Концепт.Наименование == Концеп^ преобразуется в следующий набор дизъюнктов в виде:
18. Р = (Концепт.Наименование = Концепт^ V (Концепт.Наименование == Концепт2) V (Концепт.Наименование = Концепт3) V
19. Концепт.Наименование == Концепт»)
20. Если концепт Концепт не является листовым узлом в дереве иерархии концептов. Тогда концепты Концепт2,.,Концепт» будут потомками концепта Концепт. согласно данной таксономии.
21. Название и классификация образца2. Назначение3. Применимость4. Структура5. Отношения6. Результаты7. Реализация
22. Студент, преподаватель, врач• Взаимодействие Заем, встреча, покупка, договор• Люди• Места
23. Области, связанные с людьми или предметами• События• Структуры
24. Отношения "целое-часть" и "общее-частное• Концепции1. Принципы и идеи
25. Пусть, например, у нас имеется два прецедента Р\ и Рг, имеющих некоторый набор к атрибутов А = } и набор соответствующих им весов
26. YJf{Pvai,P2.ai)*wi Similar ^-s--(2.9)1=1
27. Рис. 2.4 Образец проектирования Стратегия
28. Концепт 1 включает 0.* Синоник
29. Код Наименование Родитель Код Номер Наименование
30. Она включает два класса сущностей Концепт и Синоним, связанных между собой отношением один-ко-многим. Сущность Концепт может быть связана с некоторым набором синонимов, заменяющих в некоторых запросах сам концепт в качестве его альтернативных имен.
31. Рис. 2.6 Концептуальный граф
32. Рис. 2.7 Подграф понятия Доменвидна. Информационная модель, соответствующая данному представлению ГТ приведена на рис. 2.8.
33. Учитывая широкое применение графовых структур в моделировании, ГТ может приобретать черты более сложных моделей, например сетей Петри, диаграмм состояний и др. В качестве рабочего упрощенного алгоритма составления ГТ можно предложить следующий
34. Определите название документа, например "Системы управления базами данных".
35. Собрать от экспертов всю доступную информацию.
36. Определить количество уровней абстракции (страт), подлежащих формированию.
37. Из информации, полученной от экспертов и из литературы, выбрать основные объекты и понятия {А} и разместить их по стратам, сформировав опорные метаузлы ГТ структуры.5. Детализировать концепты.
38. Образовать метапонятия по концепции.
39. Исключить повторы, избыточность, синонимию.
40. Выявить основные отношения {К} и спроектировать эскиз ГТ структуры.
41. Сформировать ряд сценариев обхода ГТ с целью упрощения навигации.
42. Таким образом, создание базы знаний СППР проектировщика информационных систем, способствует более глубокому усвоению знаний, а визуальная спецификация усиливает прозрачность и наглядность представлений.
43. Рис. 2.8. Информационная модель ГТ.28. Выводы
44. Лучшим способом представления знаний в СВЯ-системах является использование концептуальных моделей в силу их простоты и наглядности.
45. Представлен алгоритм расчета меры сходства двух прецедентов.
46. Вводится понятие Онтологии для таксономии концептов входящих в различные предметные области.
47. Разработана архитектура интеллектуальной системы поддержки принятия решений для разработчиков информационных систем.
48. Показывается необходимость использования образцов проектирования, как основных строительных блоков моделей систем.
49. Рассмотрен вопрос представления информации в гипертекстовой базе данных.
50. В следующей части будет представлено решение задачи извлечения образцов проектирования из набора моделей ПрО на базе нейросети Кохонена.
51. АВТОМАТИЗИРОВАННЫЙ ПРОЦЕСС ИЗВЛЕЧЕНИЯ ОБРАЗЦОВ ПРОЕКТИРОВАНИЯ
52. Образцы проектирования и повторное использование кода
53. Выделение образцов проектирования
54. Рассмотрим рис. 3.2 на котором показано размещение трех соответствующих некоторым образцам кластеров на двумерной плоскости.1. Х21. МЕТ XV,'.
55. Рис. 3-1 Формальный нейрон1. XI
56. Рис. 3.2 Образцы, формирующие три кластера
57. Рис. 3.3 Произвольный выбор прототипов
58. Сформулируем некоторые свойства идеального алгоритма кластеризации:• автоматическое определение числа прототипов• сравнение прототипов• представление характерных признаков прототипа*2-* Х1
59. Рис. 3.4 Совмещение прототипов с центроидами
60. Рис 3.5 Самоорганизующаяся карта признаков
61. Обучение самоорганизующейся карты происходит последующему алгоритму:
62. Шаг 1: Если сеть не обучена, то перейти к шагу 2 иначе к шагу 7
63. Шаг 2: Для каждого кластерного элемента вычислить расстояние до вектора обучения:
64. Шаг 3: Выбрать ¿к = шт({ })
65. Шаг 4: Для к-го кластерного элемента обновить его весовой вектор в соответствии с формулой:
66. Шаг 5: Выбрать следующий образец данных Шаг 6: Перейти к шагу 1 Шаг 7: Стоп.
67. Каждый элемент модели будет представлен соответствующим нейроном входного слоя сети. Количество нейронов будет зависеть от числа базовых сущностей некоторого набора информационных моделей N и может быть рассчитано по формуле 3.3
68. Процесс формирования вектора обучения У(М0, соответствующего некоторой информационной модели М|, будет заключаться в создании множества двоичных элементов вектора, значения которых определяются по следующей формуле:
69. Способность самоорганизующейся карты признаков выделять из набора данных группы сходных между собой элементов, позволяет находить в информационных моделях повторяющиеся наборы элементов и отношений между ними, называемых образцами проектирования.
70. В случае использования тождественной функции активации, взвешенный входной сигнал оказывается в точности равным выходному (рис. 3.7)
71. Рис 3.7 Тождественная функция активации
72. Часто для удобства вычислений вводят так называемое смещение, которое вычитается из комбинированного ввода. Сдвиг в данном случае оказывается отрицательным, и комбинированный ввод вычисляется по следующей формулеп3.5)о
73. Пороговая функция с учетом смещения будет иметь вид, показанный на рис. 3.91
74. Сдвиг обычно интерпретируется как связь, исходящая от элемента, активность которого всегда равна 1.
75. Наиболее часто используемой функцией активности является сигмоидальная функция, которая непрерывно распределяет входные значения в диапазоне от О до 1. Для этого используется логистическая функция, имеющая вид5. = Т--7-ч (3.6)1 + ехр(- оу . 4
76. На рис. 3.10 показан вид логистической функции, наклон и область выходных значений которой могут быть разными.
77. Рис 3.10 Сигмоидальная функция
78. Рис 3.11 Информационная модель нейронной сети
79. Листинг 7-1 Формальный нейронifndef neuronsH #define neuronsH #include <stdlib.h> #include <vector> using namespace std;
80. Функция активации нейрона float funcact(float x);typedef float (*actfunc)(float);
81. Класс моделирующий работу формального нейрона— class Neuron{private:typedef vector<float>::iterator iter; vector<float> weights; //набор весов int count; //число весовactfuncfprop; //функция активацииpublic:------Конструктор класса-------------------
82. Добавить нейрон к слою----------------------void addNeuron(Neuron* n)neurons.pushback(n); ncount++;}--------Выбрать нейрон--------------------------
83. Рис. 3.12 Графики роста числа связей и способностей человека по их обработке33 Выводы
84. Автоматизированное извлечение образцов проектирования позволяет разработчику, не просматривая набор информационных моделей, выделять готовые образцы.
85. Время, затраченное на поиск образца, будет определяться временем обучения соответствующей нейросети.
86. Проверка на соответствие необходимым требованиям выделенного образца будет производиться аналитиком или проектировщиком.
87. Для ускорения работы нейросети использован язык программирования С++ вместе с библиотекой STL (Standard Template Library).
88. Образцы проектирования записываются в специальную базу данных и используются в процессе построения моделей систем с использованием классов объектов и отношений между ними.
89. Представлять модель нейросети также лучшего всего в виде набора классов и отношений между классами.
90. Время обучения нейросети Кохонена будет связано линейной зависимостью с количеством информационных моделей, хранящихся в базе данных.
91. ИСПОЛЬЗОВАНИЕ СППР НА ПРЕДПРИЯТИЯХ ТОПЛИВНО-ЭНЕРГЕТИЧЕСКОГО КОМПЛЕКСА41. Этапы разработки ПО
92. Интервьюирование заказчиков и экспертов предметной области2. Анкетирование3. Наблюдение
93. Изучение документов и программных систем5. Прототипирование.
94. Рис. 4.1 Бизнес-модель предметной области.
95. Рис. 4.2 Последовательность обработки запроса.
96. Оценка эффективности работы СППР.
97. В таблице 4-1 приведены факторы, влияющие на производительность разработчика ПО 67.
-
Похожие работы
- Интеллектуальная поддержка инженерного анализа на основе рассуждений по прецедентам
- Интеллектуальная система поддержки принятия решений на основе рассуждений по прецедентам
- Средства онтологической поддержки процесса проектирования шаблонной оснастки в условиях авиационных производств
- Метод адаптивного поиска образовательных ресурсов на основе онтологической модели представления знаний и алгоритма рассуждений по прецедентам
- Разработка и анализ модели информационных процессов с вариативными регламентами на основе сигнатурных прецедентов
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность