авторефераты диссертаций БЕСПЛАТНАЯ  БИБЛИОТЕКА

АВТОРЕФЕРАТЫ КАНДИДАТСКИХ, ДОКТОРСКИХ ДИССЕРТАЦИЙ

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


Pages:   || 2 |

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

-- [ Страница 1 ] --

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

Силич Мария Петровна ИНФОРМАЦИОННАЯ ТЕХНОЛОГИЯ РАЗРАБОТКИ ЦЕЛЕВЫХ ПРОГРАММ НА ОСНОВЕ ОБЪЕКТНО-ОРИЕНТИРОВАННОЙ МЕТОДОЛОГИИ МОДЕЛИРОВАНИЯ Специальность 05.13.01 – Системный анализ, управление и обработка информации (отрасль: информация и информационные системы)

АВТОРЕФЕРАТ

диссертации на соискание ученой степени доктора технических наук

Томск 2005 г.

2

Работа выполнена в Томском государственном университете систем управления и радиоэлектроники (ТУСУР)

Научный консультант: доктор технических наук, профессор Ехлаков Юрий Поликарпович

Официальные оппоненты: доктор технических наук, профессор Губарев Василий Васильевич доктор технических наук, профессор Марков Николай Григорьевич доктор физ.-мат. наук, профессор Кошкин Геннадий Михайлович Ведущая организация – Алтайский государственный университет, г. Бар наул.

Защита состоится « 14 » декабря 2005 г. в 15 часов на заседании диссер тационного совета Д 212.269.06 при Томском политехническом университете по адресу: 634034, г. Томск, ул. Советская, 84.

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

Автореферат разослан «_» 2005 г.

Ученый секретарь диссертационного совета к.т.н., доцент М.А. Сонькин

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

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

Заметными тенденциями последнего времени являются: усложнение про блем, перерастание их в проблематику;

повышение требований к качеству про грамм (их обоснованности, комплексности, эффективности);

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

Основным методологическим инструментом разработки целевых про грамм является аппарат системного анализа и теории принятия решений, в раз витие которого большой вклад внесли такие ученые, как Месарович М., Мако Д., Такахара И., Холл А., Янг С., Оптнер С., Акофф Р., Саймон Г., Саати Т., Черняк Ю.И., Федоренко Н.П., Перегудов Ф.И., Тарасенко Ф.П., Михалевич В.С., Волкович В.Л., Клир Дж., Волкова В.Н., Ларичев О.И. и др. Методы и мо дели, разрабатываемые в рамках этого направления, могут быть использованы как на этапе анализа проблемосодержащей системы для выявления проблемных ситуаций, существующих тенденций и ограничений, так и на этапе синтеза проблеморазрешающей системы для постановки целей, разработки системы мер и программных мероприятий, реализующих поставленные цели, а также проектирования обеспечивающих комплексов (нормативно-правового, органи зационного, информационного).

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

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

Вопросам инженерии знаний и технологии экспертных систем посвящено огромное количество трудов. Среди авторов можно выделить Минского М., Хейеса-Рота Ф., Уотермана Д., Лената Д., Уэно Х., Исидзука М., Осуга С., Фор сайта Р., Заде Л., Сугено М., Мамдани Е., Поспелова Г.С., Поспелова Д.А., По пова Э.В., Леоненкова А.В., Гаврилову Т.А.. В рамках данного направления разработано множество разнообразных методов представления слабо формали зуемых знаний, позволяющих отражать как фактуальные знания о структуре, свойствах объектов предметной области, так и операционные знания о логиче ских, причинно-следственных, ассоциативных зависимостях, в том числе учи тывающие неопределенности случайного или нечеткого характера. Использо вание экспертных знаний, таких как типовые описания различных классов сложных систем, описание зависимостей характеристик системы, стандартные основания декомпозиции, и др., могли бы значительно облегчить разработку целевых программ. В последнее время наблюдается тенденция к интеграции различных форм представления знаний, сочетанию их с традиционными проце дурами, методами обработки баз данных. Большие возможности для комплек сирования фактуального знания с процедурным предоставляет объектно ориентированный подход (ООП), активно использующийся в информационных технологиях, в частности в CASE-технологиях. Важными преимуществами данного подхода являются также возможность накапливать теоретические и опытные знания в виде библиотек классов на основе механизма наследования;

простота внесения изменений в проекты за счет использования свойств насле дования и полиморфизма.

Современные CASE-технологии, предназначенные для создания про граммных продуктов с помощью автоматизированных инструментальных средств (CASE-средств), поддерживают не только функции проектирования компонент информационной системы, но и функции моделирования систем, являющихся объектом автоматизации, как составную часть процесса проекти рования. Большинство из этих технологий используют методологию системно го подхода как концептуальную основу построения модели предметной облас ти. Это характерно и для более ранних технологий структурного анализа, так и для более поздних объектно-ориентированных технологий анализа/ проектиро вания (Object-Oriented Analysis/Design – OOA/D). Последние переживают пе риод бурного развития, что вызвано в немалой степени созданием объектного унифицированного языка моделирования UML (Unified Modeling Language) и объектно-ориентированных CASE-средств. Методы объектно ориентированного анализа и проектирования рассматриваются в работах таких авторов, как Буч Г., Румбах Дж., Джекобсон А., Шлеер С., Меллор С., Бадд Т., Йордон Э., Вендров А.М., Новоженов Ю.В. и др.

Несмотря на успехи в развитии объектно-ориентированных методов мо делирования и CASE-средств, их использование для разработки целевых про грамм не всегда приемлемо. Во-первых, они в основном предназначены для проектирования информационных систем, в связи с чем они оперируют собст венным понятийным аппаратом, ориентированным на данную область. Для обозначения многих понятий теории систем вводятся новые термины, термины же системного анализа используются зачастую некорректно, в новых ракурсах и отношениях. Разработанные языки моделирования вполне приемлемы при построении моделей информационных систем, но не всегда удобны для описа ния других предметных областей. Во-вторых, OOA/D-методы и средства ис пользуются лишь для декларативного описания структуры и свойств автомати зируемой системы. Подобное описание отражает либо существующее состоя ние системы (модель “As is”), либо желаемое (модель “To be”). Нерешенной проблемой при этом остается переход от моделей “As is” к моделям “To be”.

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

Объектно-ориентированные методологии моделирования и инструмен тальные средства поддержки, разработанные в рамках CASE-технологий, ак тивно используются в технологии реинжиниринга бизнес-процессов, предна значенной для перепроектирования существующих бизнес-систем на основе новых концепций менеджмента и использования новых информационных тех нологий. Этому сравнительно новому направлению на стыке теории менедж мента и информатики посвящены труды Хаммера М., Чампи Дж., Робсона М., Уллаха Ф., Шеера А-В., Попова Э.В., Ойхмана Е.Г., Калянова Г.Н., Зиндера Е.З.

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

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

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

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

• выявление требований к информационной технологии разработки це левых программ;

• разработка принципов, лежащих в основе технологии;

• разработка объектно-ориентированной методологии моделирования предметной области;

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

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

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

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

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

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

Получены следующие основные результаты, обладающие научной новизной:

1. Впервые сформулированы принципы создания информационной тех нологии разработки целевых программ, удовлетворяющие требованиям, предъ являемым к технологии. Предложена схема автоматизированной разработки целевых программ, основанная на выдвинутых принципах.

2. Разработана новая методология объектно-ориентированного модели рования систем OMSD (Object Model for System Design), главной особенностью которой является представление модели проблемосодержащей / проблемораз решающей системы в виде совокупности взаимосвязанных моделей пяти видов:

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

модели объектов, отражающей описание множества вариантов реали • зации компоненты системы;

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

модели компонент системы, отражающей структуру системы в виде • дерева подсистем и элементов;

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

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

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

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

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

Теоретическая значимость работы заключается в развитии теории анализа и синтеза проблеморазрешающих систем и методов семантического моделирования.

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

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

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

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

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

Связь работы с научными программами, планами, темами. Основные результаты, полученные в диссертации, нашли отражение в госбюджетных на учно-исследовательских работах, проводимых Томским государственным уни верситетом систем управления и радиоэлектроники: «Разработка научных ос нов проектирования интеллектуальных компьютерных технологий управления техническими объектами, технологическими процессами и процессами обуче ния» (номер НИР 2.1.97, номер гос. регистрации 01980002350);

«Разработка принципов построения и основ теории интеллектуальных систем обучения и управления техническими объектами и технологическими процессами» (номер НИР 1.2.02);

«Развитие теории и методов объектно-ориентированного модели рования и пространственно-временного анализа бизнес-процессов в территори ально-распределенных системах» (номер НИР 1.2.04, номер гос. регистрации 0120.0 411196).

Реализация результатов и их внедрение. Разработанные технология, методология моделирования, алгоритмы и инструментальные средства исполь зованы для создания: программы углубления энергоэффективности на террито рии Томской области на 2004-2008 г.г.;

региональной программы реформиро вания системы ресурсообеспечения населения;

технологии формирования про граммы энергетической безопасности региона;

программы совершенствования деятельности Томского технопарка;

проекта регионального учебно-научно инновационного комплекса;

информационной системы оценки финансово экономического состояния предприятия;

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

Основные положения, выносимые на защиту:

1. Предложенные принципы создания информационной технологии раз работки целевых программ и схема автоматизированной разработки ЦП, обес печивают выполнение требований, предъявляемых к основным компонентам технологии.

2. Разработанная объектно-ориентированная методология моделирования позволяет отражать различные аспекты проблемосодержащей / проблемораз решающей системы: структурированное множество типовых классов описания компонент системы в виде модели классов;

иерархию подсистем и элементов системы в виде модели компонент;

множество вариантов реализации отдель ных компонент в виде модели объектов;

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

зави симости между атрибутами различных компонент в виде модели координации.

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

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

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

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

Публикации. По теме диссертационной работы опубликовано 62 научные работы, в том числе 1 монография, 28 статей (из них 15 статей в изданиях, реко мендованных ВАК для опубликования результатов докторских диссертаций).

Апробация работы. Основные результаты диссертационной работы док ладывались и обсуждались на следующих конференциях, симпозиумах и семи нарах: Всероссийской научно-технической конференции «Синтез и проектиро вание многоуровневых систем управления» (Барнаул 1982);

Всесоюзном науч но-практическом семинаре «Прикладные аспекты управления сложными сис темами» (Кемерово, 1983);

республиканском семинаре «Опыт и проблемы раз работки территориальных АСУ» (Томск, 1983);

Всесоюзной конференции «Проблемы и методы принятия решений в организационных системах управле ния» (Москва, 1988);

Всесоюзной конференции «Территориальные неоднород ные информационно-вычислительные системы» (Новосибирск, 1988);

Всесо юзной научно-технической конференции «Человеко-машинные системы и ком плексы принятия решений» (Таганрог, 1989);

Всесоюзном совещании по экс пертным системам (Суздаль, 1990);

международных научно-практических кон ференциях СИБРЕСУРС (Новосибирск - 1996, Барнаул - 1998);

международной конференции «Теория и техника передачи, приема и обработки информации» (Харьков, 1998);

международном симпозиуме SIBCONVERS (Томск, 1999);

Всероссийских научно-технических конференциях «Энергетика: экология, на дежность, безопасность» (Томск, 1999, 2002);

Всероссийском совещании «Энергосбережение и энергетическая безопасность регионов России» (Томск, 2000);

международной научно-практической конференции «Актуальные про блемы управления-2001» (Москва, 2001);

международном симпозиуме «Ин формационные и системные технологии в индустрии, образовании и науке» (Караганда, 2003);

пятой научно-практической конференции «Современные средства и системы автоматизации» (Томск, 2004);

международных русско корейских симпозиумах KORUS (Томск -1998, Новосибирск-1999, Томск-2001, Ульсан-2003, Томск-2004, Новосибирск-2005).

Структура и объем работы. Диссертационная работа включает: введе ние, пять глав, заключение, список литературы из 229 наименований, 8 прило жений. Общий объем диссертации составляет 386 страниц машинописного тек ста. Работа содержит 78 рисунков, 11 таблиц.

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

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

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

- использование типовой последовательности этапов, соответствующей общесистемной последовательности принятия решений, с конкретизацией эта пов, адаптирующей ее для применения в некоторой предметной области;

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

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

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

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

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

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

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

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

• гибкость, простота адаптации, настройки на конкретную предметную область;

• наглядность и обозримость формируемой модели проблемосодержа щей / проблеморазрешающей системы;

• использование при построении моделей опыта экспертов;

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

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

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

• схема применения этапов разработки ЦП должна быть итеративной – по типу спиральной или макетной схемы (принцип итеративности);

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

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

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

Обобщенная схема автоматизированной разработки целевых программ, основанная на предложенных принципах, приведена на рис. 1.

Инструментальная система Mst FM FP I M Разработчик R D W FP D - процедура сбора информации W – процедура реализации решений I - исходное описание R – целевая программа. F --модель предметной области лей M Mst - библиотека типовых моделей M процедуры построения моде FP - процедуры принятия решений Рис. 1. Схема автоматизированной разработки целевых программ Инструментальная система, построенная по принципу систем поддержки, вместо единой процедуры, содержит библиотеку процедур, которые наряду с неавтоматизированными процедурами принятия решений могут использоваться на различных этапах разработки целевой программы. Декларативная модель М служит интегрирующим звеном для множества процедур. Подсистема модели рования FM инструментального средства позволяет разработчику формировать модель, используя при этом библиотеку типовых моделей Mst и библиотеку процедур FP.

Во второй главе предлагается объектно-ориентированная методология моделирования систем OMSD (Object Model for System Design). Модель пред метной области, формируемая в процессе разработки целевой программы, представляет собой совокупность моделей процесса разработки, проблемосо держащей и проблеморазрешающей систем. Модель любой из систем, в свою очередь, содержит множество взаимосвязанных моделей пяти видов (рис. 2):

классов (ClassModel), объектов (ObjectModel), зависимостей атрибутов (Attrib uteModel), компонент (ComponentModel), координации (CoordinateModel).

ClassModel MC AttributeModel MA ComponentModel MS ObjectModel MO CoordinateModel MK Рис. 2. Составляющие объектно-ориентированной модели системы Модель компонент отражает структуру системы в виде дерева подсистем и элементов. Каждой из компонент сопоставляется модель объектов, позво ляющая рассматривать компоненту как некий целостный объект, описываемый набором характеристик (атрибутов) и выполняемых им действий (методов).

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

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

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

Модель классов содержит дерево наследования классов и множество ме тодов для работы с классами:

C CC M = T, P.

C in Дерево T = C, R отражает множество классов С, связанных отноше C нием наследования (inheritance) R in C C. Множество методов P включает методы наследования, позволяющие создавать новые классы, наследуя их от имеющихся классов, и методы обобщения, позволяющие автоматически или в диалоговом режиме формировать дерево наследования.

Класс ci C представляет собой кортеж:

c i = n(ci ), {n(c j )}, A(ci ), P(c i ), где n(ci) – имя класса;

n(cj) – имя класса-предка ( c j R in ci ), A(c i ) = {a m } – мно жество атрибутов класса, включающее подмножества новых, наследуемых и перекрывающих атрибутов;

P(ci ) = { p n } – множество методов (присоединен ных процедур) класса, включающее подмножества новых, наследуемых и пере крывающих методов.

Каждый из атрибутов задается тройкой:

a m = n(a m ), t (a m ), D(a m ), где n(am) – имя атрибута (может быть составным, включающим имя класса);

t(am) – тип атрибута (String, Real, Integer, Date, Time, Object, …);

D(a m ) = {d k } – множество значений (домен) атрибута.

Домен задается в зависимости от типа атрибута. Например, для атрибута типа Real или Integer – в виде интервала, для атрибута типа String – в виде списка строк, для атрибута типа Object – в виде имени класса (списка имен классов). Если описание домена опущено, атрибут может принимать лю бое значение соответствующего типа.

Посредством атрибутов типа Object в описание объекта может вклю чаться описание другого объекта. Например, атрибуты подсистемы могут со держать ссылки на объекты, описывающие элементы данной подсистемы или некоторые комплексные свойства, которые сами описываются множеством соб ственных атрибутов.

Множество методов класса P(ci) содержит обязательное подмножество методов доступа к значениям атрибутов P a (c i ) P(c i ), которые могут быть двух типов: get_value – метод получения значения;

set_value – метод задания значения.

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

Введение понятия перекрывающих атрибутов позволяет на основе обобщенных описаний создавать более узкие.

Модель объектов создается на базе некоторого класса и представляет со бой множество мультиобъектов и множество методов для работы с мультиобъ ектами:

M O (ci ) = {O p (c i )}, P O.

Мультиобъектом называется множество объектов (набор реализаций) од ного класса, выделенных в соответствии с некоторым признаком p:

O p (c i ) = {o k | o k = o( p ), c(o k ) = c i } O(c i ).

Каждый объект содержит множество значений атрибутов, дополненных факторами уверенности.

o k = n(o k ), n(c), {d k (a m ) / cf (d k (a m ))}, где n(ok) – имя объекта;

n(c)| c = c(ok) – имя класса, на базе которого реализован объект;

d k (am ) D(am ) | am A(c(ok )) – значение атрибута;

cf (d k (a m )) [0;

1] – фактор уверенности в значении атрибута.

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

Выделяют три основных типа базовых признаков: время, пространство и группа (аналогично понятию «базы», введенному Клиром в его системологии).

O Множество методов модели объектов P включает методы формирова ния, генерации объектов и методы поиска решений (поиска объектов по задан ному шаблону, сравнения и оценки объектов, вывода закономерностей и др.).

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

2000, 2001, 2002, Энергопотребление (2000, N-ская обл.):

Энергопотребление N-ская N-ская N-ская Энергопотребление (2001, N-ская обл.):

обл. обл. обл.

Энергопотребление (2002, N-ская обл.): Энергоемкость ВРП, 182 126 Потребление энергоресурсов т.у.т./т.руб Год: 2002 Годовой прирост -4,3 -2,2 -0, Регион: N-ская обл. энергоемкости, % Энергоемкость ВРП, т.у.т./т.руб: 100 Электроемкость 150 105 81, Годовой прирост энергоемкости, %:

-0,7 ВРП, кВтч/т.руб Электроемкость ВРП, кВтч/т.руб: 81, Годовой прирост -4,8 -2,99 -1, Годовой прирост электроемкости, %:

-1, электроемкости, % Рис. 3. Пример мультиобъекта в графической нотации и в табличной форме Модель зависимостей атрибутов используется для отражения каузаль ных отношений между атрибутами, описывающими компоненту системы. Мо дель создается на базе некоторого класса c и включает множество атрибутов данного класса A(c), множество ненаправленных отношений зависимости (de pendence) Rd и множество отношений функциональной зависимости (functional A dependence) Rfd, а также множество методов P формирования зависимостей и логического вывода:

M A (c) = A(c), R d, R fd, P A.

Rfd Направленное отношение функциональной зависимости ( (a1, K a n ) R fd a 0 ), связывающее атрибут-функцию a 0 с атрибутами аргументами a1, K a n, может быть получено на базе ненаправленного отноше ния зависимости Rd путем «разрешения» сопоставляемого ему выражения (на пример, уравнения), относительно выбранного атрибута.

Множество отношений функциональной зависимости представляют со бой сеть зависимостей (рис. 4). В истоках сети находятся базовые атрибуты {ai}B, значения которых не зависят от значений других атрибутов. В стоках сети располагаются целевые атрибуты {ai}G, значения которых определяют целевое состояние компоненты системы. Отношение функциональной зависимости можно представить, как объект стандартного класса ‘FuncDependence’, содер жащий имена атрибутов-аргументов, имя атрибута-функции, закономерность (вид функциональной зависимости), а также методы для прямого и обратного вывода значений атрибутов.

a1 ‘fd’ + n(a10):

a5 FuncDependence a a2 I1: n(a8) I2: n(a9) O: n(a10) a6 a FD: f (a8, a9) a a7 Forward_reason ();

a9 Backward_reason ();

a Рис. 4. Сеть функциональных зависимостей атрибутов Закономерность, показывающая, как именно значение атрибута-функции определяется значениями атрибутов-аргументов, задается в виде совокупности m конъюнктивных правил Rlk вида:

Rlk : (d (a1 ) Dk (a1 )) & K & (d (an ) Dk (an )) (d (a0 ) = f k (a1,K an )) / cf ( Rlk ), где d (ai ) - текущее значение атрибута a i ;

Dk (ai ) D(ai ) - допустимая область атрибута a i ;

f k (a1,K an ) - функция, представленная либо в виде конкретного значения, либо в виде формулы, либо в виде некоторой процедуры-функции;

cf ( Rlk ) [0;

1] - фактор уверенности правила.

Область допустимых значений Dk (ai) в условной части правила задается либо в виде списка (для лингвистических значений), либо в виде интервалов (для числовых значений). Она может состоять из одного значения и, наоборот, совпадать со всей областью определения атрибута (атрибут может принимать любое значение), а также задаваться в виде дизъюнкции нескольких областей.

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

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

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

От типового класса ‘FuncDependence’ могут быть наследованы классы, описывающие специальные виды зависимостей. Один из специальных видов зависимостей – отношение оценочной зависимости (estimated dependence) Red.

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

зави симость степени реализации стратегии от выполнения тех или иных мероприя тий и т.д. Закономерность отношения оценочной зависимости (a1, K a n ) R ed a представлена правилами, содержащими в консеквенте взвешенную сумму зна чений атрибутов-аргументов:

d (a1 ) Dk (a1 ) & K & d (a n ) Dk (a n ) d (a 0 ) = v1 d (a1 ) + K + v n d (a n ) / cf, где d (a i ) [0;

1] – текущее значение атрибута a i (t(ai) = Real);

Dk (a i ) – до пустимая область атрибута a i ;

vi [0;

1] – степень влияния i-го атрибута-аргу n мента на атрибут-функцию ( v i = 1 );

cf [0;

1] - фактор уверенности правила.

i = Перечислим основные достоинства модели зависимостей атрибутов. Мо дель позволяет объединять различные формы операционного знания. Деклара тивное описание зависимостей дает возможность легко изменять вид зависимо стей, не меняя методы, их обрабатывающие. Структурирование исполняемых утверждений посредством функциональной сети повышает наглядность, «про зрачность» модели и существенно снижает трудоемкость вывода.

Модель компонент отражает структуру системы и включает множество подсистем S и множество элементов E, связанных различного рода отношения ми (рис. 5):

M S = S, E, R ag, R cn, R as, P S.

Среди отношений выделяется, прежде всего, отношение агрегации (ag gregation) R ag S S, связывающее материнскую систему с ее дочерними под системами. Множество отношений данного типа составляет дерево подсистем.

Дерево, как правило, формируется путем последовательной декомпозиции. При этом могут использоваться стандартные основания декомпозиции, задаваемые в виде объектов класса «DecomposeBase».

S Sl (s0) E 1-1 S1 S2 E 2- E 1-2 E 2- ‘db’ + n(s1):

DecomposeBase Sl (s1) P: n(s1) Sl (s2) D1: n(s11) S S11 S S D2: n(s12) E 11-1 E 22- S - отношение агрегации Sl (si) - подуровень, порожденный - отношениеприсоединения подсистемой si - отношение ассоциации Рис. 5. Отношения между компонентами системы Еще один вид отношений - отношение присоединения (connection) cn R S E, которое устанавливается между подсистемой и присоединяемым к ней элементом. При этом в класс, сопоставляемый подсистеме, вводится атри бут типа Object, указывающий на элемент. Значением этого атрибута в реа лизации класса является имя мультиобъекта, сопоставленного элементу.

Помимо связей, отражающих структурные отношения (агрегации и при соединения), между подсистемами или между элементами могут устанавли ваться отношения ассоциации(association) R as S S, R as E E. Они отра жают коммуникационные, пространственные, временные, разнообразные эмпи рические отношения. Для упрощения рассматриваются только отношения ассо циации внутри одного подуровня (подуровень составляют дочерние подсисте мы одной материнской системы и присоединенные элементы).

Модель компонент выступает каркасом для всех остальных моделей, т.к.

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

s i = n( s i ), c( s i ), M O (c( s i )), M A (c( s i )), {M K (c( s i ))}, ei = n(ei ), c(ei ), M O (c(ei )), M A (c(ei )).

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

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

K d fd K M (s0) = A(s0), R, R, P, ag cn где A(s0) = A(c ((s0)) U (U A(c ((si))) U (U A(c ((ej))) | (s0 R si), (s0 R ej) – множе d fd ство атрибутов координационной модели, R, R - межуровневые и межподсис K темные зависимости, P - методы модели координации.

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

A(c( s0)) a10 a20 a Межуровневая зависимость a11 a21 a12 a22 a13 a a31 a32 a A(c( s2)) A(c( s1)) A(c( s3)) Межподсистемная зависимость Рис. 6. Координационная модель подуровня Множество методов P K включает методы формирования модели, методы интеграции и методы координации.

Модель используется для согласования вариантов подсистем подуровня (или элементов) друг с другом и с вариантом материнской подсистемы.

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

Для модели объектов разработаны два новых алгоритма. Алгоритм гене рации объектов предназначен для формирования вариантов компоненты систе мы на основе заданного класса. Исходными данными является описание класса c. Необходимо сформировать мультиобъект O p (c) = {o k }, содержащий множе ство вариантов реализации класса. Предлагается модифицированный блочно лабиринтный метод морфологического анализа.

Для того, чтобы обеспечить более логичную последовательность форми рования вариантов предлагается осуществлять предварительное ранжирование атрибутов. Все множество комбинируемых атрибутов A K = {a i }, i = 1, n K раз бивается на кластеры, соответствующие различным аспектам описания компо ненты. В каждом кластере выделяется один основной атрибут, определяющий основную характеристику по данному аспекту. Остальные атрибуты кластера являются дополнительными характеристиками. Сначала ранжируются основ ные атрибуты кластеров по убыванию важности, затем – атрибуты каждого кластера (по убыванию важности кластеров). Таким образом, при генерации ва риантов сначала комбинируются атрибуты, задающие «каркас» вариантов, за тем «каркас» дополняется деталями (от наиболее важных до наименее значи мых).

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

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

N ios = ( N ob / n K ) / | D(a i +1 ) |, где N ob – общее обозримое количество вариан тов, | D(a i +1 ) | - количество значений атрибута, комбинируемого с оставшими ся вариантами на следующем шаге. Введенные ограничения на количество комбинаций допускают рассмотрение не всех возможных комбинаций. Однако расположение значений атрибутов в порядке предпочтения обеспечивает рас смотрение комбинаций с наилучшими значениями атрибутов.

Второй алгоритм предназначен для выбора решений (сценариев дейст вий) в неопределенной ситуации. Исходными данными является класс c1 для описания состояния среды и класс c 2 для описания сценария действий. Необ ходимо выбрать наиболее предпочтительный сценарий действий o j | c(o j ) = c с учетом возможных ситуаций oi | c(oi ) = c1.

Создается объектное описание возможных ситуаций (состояний среды) O (c1 ) = {oi } и вариантов сценариев действий O p 2 (c 2 ) = {o j } на основе соот p ветствующих классов. Затем формируется комбинированный мультиобъект O p (c) = {o k } путем комбинирования объектов-ситуаций и объектов-сценариев.

Каждому объекту o k O p (c), полученному в результате комбинирования объ ектов oi и o j, сопоставляется значение критерия K ij (o k ). Фактор уверенности критерия определяется исходя из факторов уверенности, рассчитываемых для ситуаций и сценариев. Интегральная оценка j-го сценария действий по крите рию определяется как взвешенное среднее оценок для каждой из возможных ситуаций:

n K ij (o k ) cf ( K ij (o k )) K j = i =1.

n cf ( K ij (o k )) i = Это дискретный вариант центроидного метода преобразования множества нечетких значений к четкому значению. Оптимальным решением является сце нарий с максимальной оценкой.

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

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

Алгоритм прямого вывода предназначен для решения задачи интерпрета ции на модели функциональных зависимостей атрибутов. Исходными данными являются значения базовых атрибутов: D B = {d (a i ) / cf (d (a i ))}, a i {a i } B.

Требуется найти все возможные значения целевого атрибута {d (a c ) / cf (d (a c ))}, соответствующие исходным данным.

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

ат рибуты, отстоящие от целевого на одно ребро;

атрибуты, отстоящие от целево го на два ребра и т.д. Для удобства полученная последовательность переписы вается в обратном порядке (от базовых атрибутов до заданного атрибута):

Q = a1, a 2, K, a c 1, a c.

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

Для каждого небазового атрибута a i в ходе логического вывода может возникать «ветвление» по числу правил с истинной левой частью. Для органи зации вывода с «ветвлениями» предлагается использовать стратегию «сначала вглубь». При первом «проходе» по «пути вывода» для любого из атрибутов a i «срабатывает» первое правило с истинным условием. Его текущее значение и фактор уверенности запоминается в модели объектов – в первом экземпляре соответствующего класса: d (a i ), cf (d (a i )) o1. Кроме того, запоминается но мер «сработавшего» правила ni*. Дойдя до конца «пути вывода» Q, мы полу чаем первый вариант решения. На следующем этапе осуществляется возврат к последней точке ветвления. Сначала это последний в «пути вывода» атри * бут a c. Для данного атрибута ищется истинное правило с номером nc n c. Ес ли такое правило находится, то генерируется новый экземпляр класса, содер жащего данный атрибут. В него копируются значения и факторы уверенности атрибутов, стоящих в «пути вывода» перед a c, и дописываются d (a c ), cf (d (a c )), выведенные с помощью последнего правила. Номер этого правила запоминается, как номер последнего «сработавшего» правила ni*. Перебрав та ким же образом все «ветви» для рассматриваемой точки ветвления, переходим к атрибуту, стоящему в «пути вывода» перед атрибутом, который был точкой ветвления на предыдущем этапе. Для данного атрибута перебираются все воз можные «ветви». По каждой из них процесс вывода осуществляется от зафик сированной точки «ветвления» до целевых атрибутов. Затем поднимаемся к предыдущей точке «ветвления» и т.д. пока не достигнем базовых атрибутов.

Процесс вывода может быть изображен в виде дерева И/ИЛИ (рис. 7).

Q:

a1 d(a1) a2 d(a2) d(a3) a Rl1 Rl Rl1 Rl a4 d1(a4) d2(a4) d1(a5) d2(a5) a Rl Rl1 Rl2 Rl … a6 d1(a6) d2(a6) d3(a6) d4(a6) Рис. 7. Пример дерева И/ИЛИ для алгоритма прямого вывода Для задачи поиска допустимого решения на модели функциональных за висимостей атрибутов предлагается алгоритм обратного вывода. Исходными данными является заданное значение d (a c ) целевого атрибута. Требуется най ти все возможные комбинации значений базовых атрибутов: {d (ai )}, a i {ai } B, обеспечивающие достижение заданного значения целевого атрибута, Алгоритм осуществляет обратный вывод аналогично алгоритму прямого вывода. Для каждого небазового атрибута из «пути вывода» выполняется метод обратного вывода соответствующего отношения зависимости, содержащего дан ный атрибут как атрибут-функцию. Метод осуществляет поиск правила, содер жащего в заключении значение, совпадающее с выводимым значением или вхо дящее в допустимую область для данного атрибута, и записывает области значе ний атрибутов-аргументов, содержащиеся в условной части, в модель объектов.

При этом если для некоторого атрибута a i ранее уже была определена допусти мая область значений D1 (a i ), находится пересечение данной области с областью D2 (a i ), записанной в правиле: D3 (a i ) = D1 (a i ) D2 (a i ). Если D3 (a i ) =, то правило отбрасывается, в противном случае текущей областью становится об ласть пересечения (рис. 8). В случае, если в заключении правила записано не конкретное значение атрибута-функции, а формула или процедура-функция, то генерируются различные комбинации значений атрибутов-аргументов, осуще ствляются вычисления и затем уже проверяется, входит ли вычисленное значе ние в допустимую область.

Q:

d(a6) a Rl Rl … a5 D1(a5) a4 D1(a4) Rl1 Rl Rl … Rl a3 D1(a3) … a2 D1(a2) D3(a2) D2(a2) a1 D1(a1) Рис. 8. Пример дерева И/ИЛИ для алгоритма обратного вывода В процессе поиска решения могут возникать «ветвления». Во-первых, в допустимую область значений атрибута может входить несколько различных значений, стоящих в правых частях разных правил. Во-вторых, к одному и тому же значению некоторого атрибута могут приводить несколько разных правил с различными левыми частями. Для организации вывода с «ветвлениями» пред лагается так же, как и в алгоритме прямого вывода, использовать стратегию «сначала вглубь». При первом «проходе» для любого из атрибутов «срабатыва ет» первое правило с истинным заключением. Номера «сработавших» правил запоминаются. После «прохода» до конца «пути вывода» осуществляется воз врат к последней точке «ветвления», потом - к предпоследней и т.д.

Основными достоинствами предложенных алгоритмов вывода являются:

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

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

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

Для поиска оптимальных решений на модели функциональных зависимо стей атрибутов предложены алгоритмы оптимизации методом прямого и об ратного вывода. Целевое состояние задается ограничениями {D Og (a i )}, ai {ai }Og, а также критерием эффективности a ikr, на множестве значений ко торого задается отношение доминирования: d1 f K f d k f K | d k D(a ikr ). Не * обходимо найти вариант, т.е. объект o k, содержащий определенную комбина цию значений атрибутов, обеспечивающую выполнение ограничений и дости жение наилучшего значения критерия d k (a ikr ). В общем случае вариантов с * одним и тем же наилучшим значением критерия может быть несколько.

При поиске решения методом прямого вывода генерируются различные комбинации значений базовых атрибутов {d (a i ) | a i {a i } B }, для каждой из ко торых с помощью алгоритма прямого вывода для решения задачи интерпрета ции определяется соответствующие значения атрибутов, определяющих целе вое состояние. В процессе выполнения алгоритма проверяется выполнение ог раничений для атрибутов a i {a i }Og, а также сравнивается значение критерия для текущего варианта d k (a ikr ) с текущим наилучшим значением критерия d k (a ikr ). Если очередной вариант улучшает значение критерия, то он запоми * нается и текущим наилучшим значением критерия становится значение крите рия для данного варианта. Работа алгоритма продолжается, пока не будут пере браны все комбинации значений базовых атрибутов.

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

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

m T pr = z i (k m +1 + (v m +1 k m + 2 ) + K + (v m +1 K v n 1 k n )), i = где z i – количество значений i-го базового атрибута, i = 1, m (m – количество базовых атрибутов);

k j – количество правил для j-го атрибута из «пути выво да», v j – количество «ветвлений» для j-го атрибута, j = m + 1, n (n – общее ко личество атрибутов).

Максимальная трудоемкость алгоритма обратного вывода, определяется по формуле:

Tob = z n (k n + ( wn k n 1 ) + K + ( wn K wm + 2 k m +1 )), где z n – количество значений n-го атрибута (критерия);

w j – количество «ветв лений» для j-го атрибута в «пути вывода», j = n m, n.

При этом предполагается, что правила не содержат формулы и процедуры.

Если же некоторое правило включает формулу или процедуру, то его обработка эквивалентна обработке совокупности «обычных» правил, общее количество ко торых равно количеству комбинаций значений атрибутов-аргументов. На рис. 9.

приведены графики зависимости максимальной трудоемкости алгоритмов пря мого и обратного вывода от количества базовых атрибутов для модели, имеющей следующие характеристики: n = 10, i zi = 5;

j kj = 25;

vj = 2;

wj = 5.

трудоемкость Прямой вывод Обратный вывод 1 2 3 4 5 6 7 8 количество истоков Рис. 9. Зависимость трудоемкости алгоритмов прямого и обратного вывода от количества истоков в сети Как видно из графика, что решение задачи оптимизации методом прямого вывода эффективно при небольшом количестве базовых атрибутов и методом обратного вывода – когда количество базовых атрибутов значительно превы шает число остальных.

Алгоритм формирования оценочных зависимостей в составе модели функциональных зависимостей решает две основных проблемы, связанных с построением оценочных отношений: преобразование значений атрибутов аргументов, измеряемых на некоторой предметной шкале (шкале абсолютных значений), в значения на универсальной шкале [0;

1] и определение степеней влияния атрибутов-аргументов на атрибут-функцию.

Первая проблема решается путем сопоставления исходным атрибутам a j ( j = 1, n) атрибутов a i (i = 1, n), измеряемых на универсальной шкале (рис. 10).

Если исходный атрибут a j имеет тип Integer или Real, то преобразование значений осуществляется на основе функции отображения : D(a j ) [0;

1]. Ес ли исходный атрибут a j имеет тип String, то для каждого из лингвистических значений d k D(a j ) строится функция принадлежности µ d k на универсальной шкале, и для преобразования используется процедура дефаззификации.

a7 = v4 a4 + v5 a5 + v6 a a1 a a7 a a2 a a3 a Рис. 10. Пример сети функциональных зависимостей, содержащей отношение оценочной зависимости Для выявления степеней влияния vi атрибутов-аргументов a i (i = 1, n) на атрибут-функцию a 0 предлагается использовать один из методов выявления предпочтений, например, метод парных сравнений или ранжирования. Оценка степени согласованности выявленных приоритетов интерпретируется, как фак тор уверенности правила.

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

Модель функциональных отношений, содержащая отношения оценочной зависимости, может использоваться для решения двух задач: для оценки со стояния компоненты системы и для оценки влияния базового атрибута на целе вой атрибут. И в том, и в другом случае используется алгоритм прямого вывода на модели зависимости. Для первой задачи, таким образом, вывод осуществля ется аналогично алгоритму нечеткого вывода Сугено. Однако исходные данные могут быть представлены не только в виде нормированных балльных значений, но и в виде значений, измеряемых на некоторой «предметной» шкале. Решение второй задачи можно сравнить с вычислением глобального приоритета методом анализа иерархий (МАИ) Саати. Однако, в отличие от МАИ предложенный ал горитм позволяет определять не только оценку влияния базового атрибута на целевой атрибут, но и фактор уверенности в данной оценке, а также лингвисти ческое значение оценки. В процессе вывода могут использоваться различные правила, учитывающие различные условия, различные мнения экспертов (групп экспертов) и различные степени согласованности мнений экспертов Для модели координации разработан алгоритм нахождения оптимального сочетания локальных вариантов дочерних подсистем. Исходными данными яв ляются: выбранный обобщенный вариант реализации материнской системы o( s 0 ), межподсистемные и межуровневые зависимости. Межуровневые зави симости представлены функцией затрат и функцией качества. Первая связывает атрибут материнской подсистемы z, отражающий глобальные затраты на реали зацию варианта подуровня, с атрибутами zi, отражающими локальные затраты n дочерних подсистем: z = z i (при этом для z задана допустимая область i Dk ( z ) = [0, z*] ). Вторая связывает критерий эффективности подуровня K, в ка честве которого выступает критерий материнской подсистемы, с локальными n n критериями Ki дочерних подсистем: K = vi K i (при этом v i = 1 ). Межпод i i системные зависимости, устанавливаемые для каждой пары дочерних подсис тем s1 и s2, связанных отношением ассоциации, как правило, представлены в fd виде функций атрибутов одной подсистемы от атрибутов другой: (a0 (s1)) R (a1 (s2), … an(s2)). Необходимо найти непротиворечивое сочетание локальных вариантов дочерних подсистем o( s1 ), o( s 2 ), K o( s n ), обеспечивающее наи лучшее значение критерия эффективности подуровня и удовлетворяющее огра ничению, наложенному на суммарные затраты.

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

Для каждой дочерней подсистемы формируется ограничение z i z i*, где z i* = vi z *. Ограничение вносится в частную модель подсистемы Для учета при решении локальных задач оптимизации межподсистемных зависимостей предлагается использовать метод «распространения ограниче ний», в котором выбор оптимальных вариантов для каждой из дочерних под систем осуществляется последовательно, причем для первой подсистемы реше ние находится без учета межподсистемных зависимостей, а для остальных – с учетом уже выбранных вариантов для предыдущих подсистем. Последователь ность перебора подсистем Q = s1, s 2, K, s n 1, s n формируется по «слоям» аналогично методу нахождения «пути вывода» в алгоритмах прямого и обрат ного вывода на модели зависимостей атрибутов. Первый «слой» составляет подсистема, имеющая наибольший «вес». За ней следуют подсистемы второго «слоя», связанные с подсистемой предыдущего «слоя», в порядке убывания ве са и т.д.

Затем из последовательности Q выбирается очередная подсистема si и оп ределяется локальный оптимальный вариант o( s i ) с учетом ограничений на ло кальные затраты и межподсистемных ограничений. При этом значения атрибу тов уже рассмотренных подсистем, соответствующие выбранным вариантам этих подсистем, выступают ограничениями для текущей подсистемы, атрибуты же еще не рассмотренных подсистем, рассматриваются как свободные пере менные.

При переходе к следующей подсистеме осуществляется перераспределе ние уровня допустимых затрат между подсистемами. Находится разница между уровнем допустимых затрат для текущей подсистемы и реальными затратами на выбранный оптимальный вариант: z = z i* z i, которая перераспределяется между оставшимися подсистемами. Для каждой из подсистем s j, j = i + 1, n, стоящих в последовательности Q следом за текущей подсистемой si, к ранее определенному уровню допустимых затрат z * добавляется «остаток» j vj z j = z. Соответствующие ограничения на локальные затраты v i +1 + K + v n вносятся в частные модели подсистем. После того, как будут перебраны все подсистемы, проверяется, имеется ли «остаток». Если z 0, то принимается решение, либо закончить поиск, считая найденную комбинацию вариантов под систем квазиоптимальной, либо перераспределить остаток между подсистема ми и пройти еще одну итерацию.

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

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

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

Разработка ЦП Подготовка Постановка целей Организация выполнения Создание Формирование Календарное оргструктуры целей и задач планирование Планирование Планирование Создание работы значений критериев обеспечений Анализ Синтез программы Нормативно-правового Организационного Построение модели Построение модели Информационного Анализ ситуации Вариантный выбор Ретроспективный Генерация вариантов Оценивание Сравнительный Оценка вариантов Оценка эффективности Причинный Выбор варианта Оценка угроз Обсуждение и проверка Обсуждение и проверка Рис. 11. Модель компонент процесса разработки программы Для формирования модели использовались стандартные основания де композиции. Каждому подуровню модели компонент может быть сопоставлена диаграмма отношений ассоциации, отражающая взаимосвязи между этапами.

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

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

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

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

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

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

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

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

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

Для построения объектно-ориентированных моделей систем и их исполь зования для анализа и выработки оптимальных решений разработан программ ный комплекс «OMPS». Комплекс позволяет создавать визуальные модели сис тем, содержащие: описания компонент системы в виде мультиобъектов, соз данных на базе классов;

отношения между мультиобъектами;

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

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

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

Microsoft Visio Специальные +надстройки клиенты XML данные Java сервер приложений HTTP интерфейс Контейнер модели Контекстные данные Сервисный контроллер Контекст модели/ Хранение Объектная Вывод решений данных структура Рис. 12. Архитектура комплекса «OMPS».

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

В качестве базового инструмента пользователя для редактирования и на стройки модели выступает пакет Visio из состава Microsoft Office c дополни тельными программными надстройками. Данная среда обладает встроенными возможностями не только для построения разнообразных диаграмм, но и их гибкой настройки для конкретных задач, в том числе с помощью интегриро ванного языка разработки VBA. Специальное клиентское программное обеспе чение, реализующее функции редактирования классов, зависимостей и подсис тем, а также генерации мультиобъектов, обеспечивает более удобный интер фейс, нежели стандартный пакет Visio.

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

Для поддержки процессов моделирования функциональных зависимостей между атрибутами, описывающими сложные системы и их компоненты, разра ботан инструментальный комплекс «WinEsisp». Комплекс относится к классу оболочек экспертных систем и предоставляет непрограммирующему пользова телю удобные средства для быстрого создания прототипов экспертных систем в статических предметных областях. Создание базы знаний, содержащей модель функциональных отношений, осуществляется путем ввода информации в диа логовом режиме. Редактор базы знаний содержит ряд специализированных ре дакторов – для ввода информации об атрибутах, для ввода правил-продукций, формул, построения функций принадлежности и т.д. Встроенный механизм ло гического вывода может быть использован для решения задач интерпретации, поиска допустимого решения и поиска оптимального решения. Удобный поль зовательский интерфейс и сервисные возможности (развитая справочная систе ма, настройка опций, подсистема объяснений и формирования отчетов) облег чает пользователю создание базы знаний, ее тестирование и проведение экспе риментов.

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

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

Технология используется в Томском центре управления энергосбереже нием для синтеза региональных систем в сфере энергосбережения. В частности, на ее основе была разработана программа углубления энергетической эффек тивности на территории Томской области на 2004-2008 г.г. Проведенный в ходе разработки ретроспективный и сравнительный анализ состояния сферы энерго сбережения с использованием объектной модели позволил оценить уровень энергосбережения региона;

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

низкое качество услуг;

высокая степень износа основных фондов;

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



Pages:   || 2 |
 




 
2013 www.netess.ru - «Бесплатная библиотека авторефератов кандидатских и докторских диссертаций»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.