использования диаграмм моделирования и процедур предобучения. Приведены результаты практического применения указанного метода.
Работа выполнена при частичной поддержке гранта РФФИ №06-08-01612а и инновационным НИОКР.
список литературы
1. Perry S. W., Wong H.-S., Guan L. Adaptive image processing a computational intelligence perspective // SPIE Press Book. 2003. 270 р.
2. Seul M., O'Gorman L., Sammon M. J. Practical algorithms for image analysis. Description, examples and code. Cambrige University Press, 2000. 295 р.
3. Bow S.-T. Pattern recognition and image preprocessing. NY: M. Dekker, 2002. 698 с.
4. Timofeev A. V., Andreev V., Gulenko I. E., Derin O. A., Litvinov M. V. Design and implementation of multi-agent man-machine interface on the base of virtual reality models // 9th Int. Conf. SPEEC0M'2004. St.Petersburg, 2004. P. 670—675.
5. Хайкин С. Нейронные сети: полный курс / Пер. с англ. М.: Издательский дом „Вильям^', 2006. 1104 с.
6. Timofeev A. V. Parallel Structures and Self-Organization of Heterogeneous Polynomial Neural Networks for Pattern Recognition and Diagnostics of States // Pattern Recognition and Image Analysis. 2007. Vol. 17, N 1. P. 163—169.
Сведения об авторах
Адиль Васильевич Тимофеев — Санкт-Петербургский институт информатики и автоматизации РАН,
E-mail: [email protected]
Олег Александрович Дерин — Санкт-Петербургский институт информатики и автоматизации РАН,
E-mail: [email protected]
Рекомендована институтом Поступила в редакцию
06.05.08 г.
УДК 681.34
И. В. Ковалев, О. И. Завьялова, А. Н. Лайков
ФОРМИРОВАНИЕ ИЗБЫТОЧНОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ОТКАЗОУСТОЙЧИВЫХ СИСТЕМ УПРАВЛЕНИЯ
Предлагается применять мультиверсионную методологию реализации программного обеспечения с целью повышения отказоустойчивости систем управления. Представлен метод многоатрибутивного принятия решений при формировании избыточного программного обеспечения.
Ключевые слова: мультиверсионное программное обеспечение, избыточность, отказоустойчивость, системы управления, многокритериальное принятие решений.
Введение. Развитие современных систем управления характеризуется повышением сложности входящего в их состав программного обеспечения, которое реализует функции обработки данных и выдачи соответствующих управляющих воздействий объектам управления. Связано это с тем, что объекты и сами системы управления могут быть распределены в пространстве, обладать избыточностью основных элементов и подсистем, в процессе управления могут использоваться сложные расчеты данных большого объема.
Повышение уровня сложности программных средств систем управления требует увеличения количества контролируемых параметров (атрибутов), характеризующих процессы функционирования.
Системы управления в таких критичных областях, как авиационная, ракетно-космическая техника, атомная промышленность, химическое производство, сложные системы электроснабжения, должны обладать высоким уровнем надежности.
Исследования последних лет показывают, что функционирование систем управления существенно зависит от надежности их программного обеспечения [1]. Применяя метод избыточного проектирования и реализации программных средств, можно не только обеспечить заданный уровень надежности, но и гарантировать отказоустойчивость систем данного класса.
Одним из перспективных подходов к созданию отказоустойчивого программного обеспечения является мультиверсионное программирование [2]. Предполагается, что в пакет программ включается нескольких компонент, дублирующих друг друга по своему целевому назначению. Это позволяет предупредить случайные сбои, причем функционирование программного обеспечения застраховано и от сбоев, вызванных ошибками, допущенными при проектировании и разработке.
Основное преимущество мультиверсионного программного обеспечения состоит в том, что отказ системы может произойти только в том случае, если откажет существенное число программных модулей. Вероятность отказа системы обратно пропорциональна числу ее модулей. Следовательно, чем больше модулей, тем выше вероятность корректного функционирования мультиверсионного программного обеспечения и всей системы управления в целом.
Однако повышение надежности программного обеспечения с использованием избыточности требует дополнительных ресурсов. Поэтому основной вопрос, встающий перед проектировщиком, заключается в минимизации затрат и использовании ресурсов при введении избыточных модулей.
Проблема выбора компонент программного обеспечения системы из множества вариантов, как правило, оказывается многоатрибутивной, так как наряду с повышением надежности работы системы необходимо решать ряд других задач, таких как снижение финансовых затрат на разработку, внедрение и модификацию системы, повышение быстродействия процессора.
Эта задача может быть решена путем принятия решений при многих критериях, ориентирующихся на задачи с дискретным пространством решений. К настоящему времени разработано большое число моделей и методов многоатрибутивного принятия решений, учитывающих различные уровни информации о предпочтениях эксперта. Эффективность работы этих методов подтверждается многолетним опытом их применения в различных областях, где встает задача выбора лучшего варианта из ряда предложенных.
Метод многоатрибутивного принятия решений. Формирование программного обеспечения систем управления, состоящего из избыточного набора программных модулей, позволяет выделить ряд характеристик, или атрибутов, этих модулей для возможности оптимального выбора.
Для решения задачи формирования оптимального состава избыточного программного обеспечения предлагается многоатрибутивный метод, основанный на вычислении максимального приближения к идеальному решению.
Предлагаемый метод учитывает наилучший и наихудший варианты решения. С помощью метода можно оценить т альтернатив, представляющих собой способы формирования избыточного программного обеспечения, каждому из которых соответствует п атрибутов, при этом выполняется следующая последовательность шагов.
Шаг 1. Нормализация матрицы решения. На этом шаге атрибуты, имеющие различные измерения, преобразуются в безразмерные атрибуты, что позволит в дальнейшем их сравнивать. Элемент т^ нормализованной матрицы Я вычисляется как
ГЧ = ХУ,
1
т
.2
X 4 •
г=1
где Ху — элементы исходном матрицы решении.
Шаг 2. Построение взвешенной нормализованной матрицы решения. Для нормализо-
_ п
ванной матрицы решения задаются весовые параметры (веса) Wi, I = 1, п , X wi = 1, после чего
г=1
каждый столбец матрицы R умножается на соответствующий весовой коэффициент.
Шаг 3. Определение идеального и идеального негативного решения. Определим две ис-
* _
кусственно сформированные альтернативы А и А , являющиеся наиболее предпочтительной (идеальное решение) и наименее предпочтительной (идеальное негативное) альтернативами соответственно:
* * * * * А = {(тах\уеД (тт\уе/) \i = 1, 2, т} = {, V2, ...,Уу, ^ },
i i
А = {(т1П \(тах \Уе3) \ i = 1 2, т} = { У1 , У2, , уп },
i ,
где 3={] = 1, 2, ..., п \у — атрибуты, связанные с критерием „выгода"}; 3 ={у = 1, 2, ..., п \у — атрибуты, связанные с критерием „стоимость"}.
Шаг 4. Вычисление степени удаленности. „Расстояние" каждой альтернативы от наилучшего и наихудшего варианта вычисляется как
В* =
Б. = ' \
п _
X (лу - )2 , г = 1' т'
У=1
X (уу - У- )2 , г = 1' т.
У=1
Шаг 5. Вычисление относительной близости альтернативы Аг к А может быть осуществлено следующим образом:
С г* = В,- / (В,* + В,-), 0 < О < 1, , = ТТ^ .
*_
Очевидно, что С,* = 1, если А, = А , и Сг* = 0, если А, = А . Альтернатива А, тем ближе к
*
А , чем Сг* ближе к единице.
Шаг 6. Ранжирование порядка предпочтений. Набор вариантов А, теперь может быть ранжирован в соответствии со значениями С,*. Наилучшему решению будет соответствовать наибольшее значение С,*.
Выбор весовых коэффициентов при многоатрибутивном принятии решений. При выборе оптимального состава избыточного программного обеспечения, согласно предлагаемому методу многоатрибутивного принятия решений, требуется назначать весовые коэффициенты атрибутам, соответствующие их важности. Для определения веса возможен подход, при котором ранжируются атрибуты по важности, а затем ранги преобразуются в весовые коэффициенты [3]:
w, = 2l-s'Si, / = 1П, (1)
wi = 1 -(^ -1) / п, , = \П, (2)
где , = 1, п — номер атрибута; si = 1, п — ранг ,-го атрибута.
Согласно выражению (1) задается наибольшая значимость атрибутов высокого ранга (5г- = 1, 2) (рис. 1). Формула (2) задает линейное снижение весовых коэффициентов (рис. 2).
Рис. 1 Рис. 2
п
Для перехода к wi, удовлетворяющим условию нормировки X Wi = 1, необходимо сле-
г=1
дующее преобразование:
^ = X wi, i = 1 п .
/ 1=1
Заключение. Большое количество модулей избыточного программного обеспечения систем управления, а также ограничения по стоимости и другим параметрам ставят перед проектировщиком задачу принятия решений по формированию программного обеспечения с учетом ряда критериев. Выбрать лучший вариант программного обеспечения из всего множества возможных реализаций позволяют методы многоатрибутивного принятия решений.
Предложенный в настоящей статье многоатрибутивный метод был реализован в рамках системы поддержки принятия решений, которая использовалась при формировании структурно сложного программного обеспечения космического комплекса связи „Гонец-М", при создании информационно-управляющего блока мобильного измерительного комплекса диагностики и мониторинга ядерных объектов и сооружений на Горно-химическом комбинате (Железногорск) [4, 5], а также модернизации информационно-управляющей системы Отделения федерального казначейства по Красноярску [6, 7].
Полученный уровень отказоустойчивости систем управления свидетельствует о целесообразности применения метода избыточности программного обеспечения при разработке и реализации критичных по надежности систем в различных областях науки и производства.
список литературы
1. Поздняков Д. А., Титовский И. С. Краткий обзор методов повышения качества программных средств систем управления // Вестник НИИ СУВПТ. Вып. 12. Красноярск: НИИ СУВПТ, 2003. С. 57—60.
2. Аниконов А. В., Слободин М. Ю., Царев Р. Ю. Программно-аппаратное обеспечение отказо- и катастро-фоустойчивых систем управления и обработки информации. М.: Макс-пресс, 2006.
3. Брахман Т. Р. Многокритериальность и выбор в технике. М.: Радио и связь, 1984.
4. Царев Р. Ю. Система поддержки принятия решений при формировании мультиверсионного программного обеспечения // Программные продукты и системы. 2007. № 1. С. 57—59.
5. Программная система „МиШРогш у1.0" (Система многоатрибутивного формирования мультиверсионных программных средств) / И. В. Ковалев, Р. Ю. Царев, М. Ю. Слободин, А. А. Усольцев. М.: ВНТИЦ, 2004. № 50200400275.
6. Ковалев И. В., Семенько Т. И., Царев Р. Ю. Методология оценки и повышения надежности программно-информационных технологий и структур. Красноярск: ИПЦ КГТУ, 2005.
7. Программная система «МУ-ЭМ88 у1.0» (Система поддержки принятия решений при создании мультиверсион-ной структуры программного обеспечения) / И. В. Ковалев, Р. Ю. Царев, Т. И. Семенько, С. Н. Ежеманская. М.: ВНТИЦ, 2004. №50200401373.
Игорь Владимирович Ковалев Ольга Игоревна Завьялова Алексей Николаевич Лайков
Сведения об авторах Сибирский государственный аэрокосмический университет им. акад. М. Ф. Решетнева, Красноярск, E-mail: [email protected] Сибирский федеральный университет, Красноярск, E-mail: [email protected]
Сибирский государственный аэрокосмический университет им. акад. М. Ф. Решетнева, Красноярск
Рекомендована кафедрой НПО ПМ
Поступила в редакцию 12.01.08 г.