logo search
Mylnik_ISU / Мыльник_Исследование систем управления_2001

7.2. Процедуры системного анализа

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

Перечислим этапы системного анализа, а далее подробнее рассмотрим наиболее важные из них [5]:

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

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

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

Примеры:

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

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

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

На следующем этапе системного анализа поставленные проблемы должны быть приведены к виду, когда они становятся задачами выбора подходящих средств для достижения заданных целей. Необходимо определить, что надо сделать для снятия проблемы (в отличие от последующих этапов, определяющих как это сделать). Главная трудность выявления цели связана с тем фактом, что цели являются как бы антиподом проблемы. Формулируя проблему, мы говорим в явной форме, что нам не нравится. Сделать это сравнительно просто, поскольку то, чего мы не хотим, существует. Говоря же о целях, мы пытаемся сформулировать, что же мы хотим. Мы как бы указываем направление, в котором следует “уходить” от существующей и не устраивающей нас ситуации. Трудность в том и состоит, что возможных направлений много, а выбрать нужно только одно, действительно правильное. По мере решения проблемы цель может меняться и в окончательной формулировке сильно отличается от первоначальной.

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

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

Агрегированный критерий. Пусть имеется n критериев: q1(x), q2(x),……,qn(x) и задача состоит в одновременной максимизации этих функций. Как правило, такая задача не имеет решения, так как обычно критерии взаимосвязаны и улучшение по одному критерию ведёт к ухудшению по другому.

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

Также введём величины Si для каждого qi с целью ликвидации различных размерностей величин- критериев и рассмотрим их уже безразмерные величины . Агрегированный критерий Q формируется как сумма безразмерных величин критериев qi с соответствующими весами ai:.

Задача сводится к максимизации критерия Q: Q => max.

Примечания:

Метод условной оптимизации. В предыдущем подходе использовался тот факт, что частные критерии обычно неравнозначны между собой (один из них более важен , чем другие). Наиболее явное выражение этой идеи состоит в выделении основного, главного критерия и рассмотрении остальных как дополнительных, сопутствующих. Такое различие критериев позволяет сформулировать задачу выбора как задачу нахождения условного экстремума основного критерия, предположим q1(x) : q1(x)=> max, при условии, что дополнительные критерии достигают определённых уровней ai:

qi(x) ai

(i = 2,…, n).

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

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

В нашем случае, это задача min qi(x) => max.

i x

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

Генерирование альтернатив. Формирование множества альтернатив, то есть идей о возможных способах достижения цели, является наиболее трудным, наиболее творческим этапом системного анализа. Для этого используют различные способы [5]:

Метод мозгового штурма.. Он построен на специфическом сочетании методологии и организации исследования, использования усилий исследователей – фантазёров с исследователями – аналитиками [3]. “Мозговой штурм” проводится в 2 этапа: этап генерации идей и этап практического анализа выдвинутых идей. Для этого собирается группа лиц, отобранных для генерации альтернатив. Главный принцип отбора – разнообразие профессий, квалификации, опыта, способность людей к научному воображению и развитой интуиции, интеллектуальной раскованности.

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

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

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

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

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

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

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

Декомпозиция. Это разбиение целого на части, с целью их детального изучения. Является одной из основных процедур системного анализа. Задача разбивается на подзадачи, система - на подсистемы, цели - на подцели и т.д. При необходимости этот процесс повторяется, что приводит к иерархическим древовидным структурам. Обычно объект анализа сложен, слабо структурирован, плохо формализован, поэтому операцию декомпозиции выполняет эксперт. Если поручить анализ одного и того же объекта разным экспертам, то полученные древовидные списки будут различаться. Качество построенных экспертами деревьев зависит как от их компетентности в данной области знаний, так и от применяемой методики декомпозиции.

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

Объект декомпозиции должен сопоставляться с каждым элементом модели-основания. Однако и сама модель-основание может с разной степенью детализации отображать исследуемый объект. Например, в системном анализе часто приходится использовать модель типа “жизненный цикл”, позволяющую декомпозировать анализируемый период времени на последовательные этапы от его возникновения до окончания. С помощью такой декомпозиции шахматную партию можно разбить на дебют, миттельшпиль и эндшпиль; в жизни человека принято различать молодость, зрелость и старость, но можно выделять и более мелкие этапы, например, детство, отрочество и юность. Такое же разнообразие может иметь место и при декомпозиции жизненного цикла любой проблемы. Разбиение на этапы дает представление о последовательности действий, начиная с обнаружения проблемы и кончая её ликвидацией.

Установив, что декомпозиция осуществляется с помощью некоторой модели, сквозь которую мы как бы рассматриваем расчленяемое целое, далее следует ответить на естественно возникающие вопросы: 1) модели какой системы следует брать в качестве оснований декомпозиции? 2) какие именно модели надо брать? Всякий анализ проводится для чего-то, и именно эта цель анализа и определяет, какую систему следует рассматривать. Например, анализируя цель “выяснить этиологию и патогенез ишемической болезни сердца”, в качестве исследуемой системы можно взять сердечно-сосудистую систему. А можно выбрать конкретный кардиологический институт. В первом случае декомпозиция будет порождать перечень подчинённых подцелей научного, во втором - организационного характера. Можно также рассматривать и такую процедуру анализа, когда перед каждым очередным актом декомпозиции заново ставится вопрос не только о том, по какой модели проводить декомпозицию, но и о том, не следует ли взять модель иной системы, нежели ранее.

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

Начнём с обсуждения требований к древовидной структуре, которая получится как итог работы по всему алгоритму. С количественной стороны эти требования сводятся к двум противоречивым принципам: полноты (проблема должна быть рассмотрена максимально всесторонне и подробно) и простоты ( все дерево должно быть максимально компактным - “вширь” и “вглубь”). Эти принципы относятся к количественным характеристикам (размерам) дерева. Компромиссы между ними вытекают из качественного требования - главной цели: свести сложный объект анализа к конечной совокупности простых подобъектов либо (если это не удаётся) выяснить конкретную причину неустранимой сложности.

Принцип простоты требует сокращать размеры дерева. Размеры “вширь” определяются числом элементов модели, служащей основанием декомпозиции. Поэтому принцип простоты вынуждает брать как можно более компактные модели-основания. Наоборот, принцип полноты заставляет брать как можно более развитые, подробные модели. Компромисс достигается с помощью понятия существенности : в модель-основание включаются только компоненты, существенные по отношению к цели анализа Перейдём теперь к вопросу о размерах дерева “вглубь”, т.е. о числе “этажей” дерева, числе уровней декомпозиции. Желательно, чтобы оно было небольшим (принцип простоты), но принцип полноты требует, чтобы в случае необходимости можно было продолжать декомпозицию как угодно долго до принятия решения о её прекращении по данной ветви (разные ветви иногда могут иметь различную длину). Такое решение принимается в нескольких случаях. Первый, к которому мы обычно стремимся, наступает, когда декомпозиция привела к получению результата (подцели, подфункции, подзадачи и т.п.), не требующего дальнейшего разложения, т.е. результата простого, понятного, реализуемого, обеспеченного, заведомо выполнимого; будем называть его элементарным. Для некоторых задач (например, математических, технических и т.п.) понятие элементарности может быть конкретизировано до формального признака, в других задачах анализа оно неизбежно остаётся неформальным и проверка фрагментов декомпозиции на элементарность поручается экспертам.

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

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

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

1.Определение 2.Определение

объекта анализа целевой системы

5.Очередной 3.Выбор фрейма

объект (формальной

декомпозиции модели)

6. Операция 4.Определение

декомпозиции референтной

модели

(основания)

7.Полученные 8. Проверка да

фрагменты очередного

фрагмента на

элементарность

нет

11. отчет

нет 9.Все ли фреймы да 10. Все ли

использованы? основания да

детализированы?

нет

Рис.7.1. Укрупнённая блок-схема алгоритма декомпозиции

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

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

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

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

Агрегирование в классы является эффективной, но далеко не тривиальной процедурой. Если представлять класс как результат действия агрегата-оператора, то такой оператор имеет вид “ЕСЛИ < условия на агрегируемые признаки>, ТО < имя класса>”. Иногда класс непосредственно задается совокупностью признаков, а в ряде случаев, наоборот, требуется доопределить оператор, выявив экспериментально, при каких условиях на признаки объект будет принадлежать заданному классу.

Статистики как агрегаты . Важный пример агрегирования данных даёт статистический анализ[ 5 ]. Среди различных агрегатов особое место занимают достаточные статистики, т.е. такие агрегаты, которые извлекают всю полезную информацию об интересующем нас параметре из совокупности наблюдений. Однако при агрегировании обычно потери информации неизбежны, и достаточные статистики не являются в этом отношении исключением. В таких условиях становятся важными оптимальные статистики, то есть. позволяющие свести неизбежные в этих условиях потери к минимуму в некотором заданном смысле. Наглядный пример статистического агрегирования представляет собой факторный анализ, в котором несколько переменных сводятся в один фактор. Именно потому, что при рассмотрении реальных данных самым важным является построение модели-агрегата при отсутствии информации, необходимой для теоретического синтеза статистики, Тьюки предложил назвать эту область “анализом данных”, оставляя за математической статистикой задачи алгоритмического синтеза и теоретического анализа статистики.

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

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

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