logo
УЧЕБНИКИ 1 Экономика / Исследование систем управления / Мыльник В

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

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

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

• определение конфигуратора;

• определение проблемы и проблематики;

• выявление целей;

• формирование критериев;

• генерирование альтернатив;

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

• оптимизация;

• декомпозиция;

• агрегирование.

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

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

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

Примеры:

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

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

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

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

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

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

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

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

Также введем величины Si для каждого qi с целью ликвидации различных размерностей величин-критериев и рассмотрим их уже безразмерные величины

Агрегированный критерий Q формируется как сумма безразмерных величин критериев qi с соответствующими весами аi:

Задача сводится к максимизации критерия

Примечания:

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

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

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

В нашем случае это задача

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

• какие именно модели надо брать?

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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