Анализ проектных решений выбора аппаратно-программного комплекса вычислительных сетей на основе нейро-нечетких математических моделей
10 февраля 2005
Рубрика: Технологии.
Автор: Аваз Марахимов.
pic

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

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

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

Возможность использования данной ОС в качестве сервера приложений. Для этого ОС должна поддерживать несколько популярных универсальных API — таких, которые позволяли бы, например, выполняться в среде этой ОС приложениям Unix, Windows, MS DOS, OS/2. Эти приложения должны выполняться эффективно, а это означает, что данная ОС должна поддерживать многонитевую обработку, вытесняющую многозадачность, мультипроцессирование и виртуальную память.

Наличие мощной централизованной справочной службы (такой, например, как NDS компании Novell или Street Talk компании Banyan). Справочная служба должна обладать масштабируемостью, то есть хорошо работать при очень большом числе пользователей и разделяемых ресурсов, а для этого необходимо, чтобы база справочных данных была распределенной.

И хотя существует еще ряд не менее важных характеристик, которые надо учитывать при выборе сетевой ОС, таких, например, как степень стабильности и безопасности ОС, наличие программных средств удаленного доступа, способность работать в гетерогенной среде и так далее, реальная жизнь упрощает задачу выбора. Сегодня рынок корпоративных ОС, по мнению известного ученого В.Г.Олифер, поделен между несколькими операционными системами: примерно по одной трети имеют NetWare и Windows, 10% приходится на разные версии Unix и 20% представлены остальными типами ОС.

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

Такое положение дела обусловлено несколькими причинами:

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

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

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

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

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

Немного о теории нечетких множеств
Теория нечетких множеств (fuzzy sets theory) ведет свое начало с 1965 г., когда профессор Лотфи Заде (Lotfi Zadeh) из университета Беркли опубликовал основополагающую работу «Fuzzy Sets» в журнале «Information and Control» [Zadeh L. Fuzzy sets // Information and Control. — 1965. — №8. — P. 338-353. ]. Прилагательное «fuzzy», которое можно перевести на русский как нечеткий, размытый, ворсистый, пушистый, введено в название новой теории с целью дистанцирования от традиционной четкой математики и аристотелевой логики, оперирующих с четкими понятиями: «принадлежит — не принадлежит», «истина — ложь». Концепция нечеткого множества зародилась у Заде «как неудовлетворенность математическими методами классической теории систем, которая вынуждала добиваться искусственной точности, неуместной во многих системах реального мира, особенно в так называемых гуманистических системах, включающих людей» [Л. Заде. Понятие лингвистической переменной и ее применение к принятию приближенных решений. М.: Мир, 1976. 167 с. ]. Революционным явилось то, что с этого момента зарождения данной теории высказывания могут принимать значения истинности не только 0 и 1, а любое значение между этими числами. За почти 40-летнюю историю своего развития данная теория дала рождение ряду серьезных научных направлений в области управления как техническими, так и гуманистическими системами. Были созданы крупные научные школы (Беркли (США), Торонто (Канада), Тулуза (Франция), Милан (Италия), Зиген (Германия), Москва, Таганрог (Россия), Рига (Латвия), Баку (Азербайджан) и общества, культивирующие данное направление (ISAFS, IFSA), ежегодно проводятся десятки научных конференций и симпозиумов, в том числе и традиционная всемирная конференция WCIS (Worldwide Conference on Intelligent System in Industrial Automation), которая была проведена в этом году в Ташкенте уже в третий раз (первая и вторая — в 2000 и 2002).

Следует отметить, что США, как правило, идущие в авангарде использования новейших теоретических разработок в области интеллектуальных систем, в течение 20 лет считали данную теорию лженаукой, до тех пор, пока в Японии не был создан первый процессор на нечеткой логике, базирующейся на теории нечетких множеств, после чего разработки в данном направлении были серьезно профинансированы и экспорт fuzzy-технологий из США был запрещен как стратегически важных научных исследований.
Началом практического применения теории нечетких множеств можно считать 1975г., когда Мамдани и Ассилиан (Mamdani and Assilian) построили первый нечеткий контроллер для управления простым паровым двигателем. В 1982 г. Холмблад и Остергад (Holmblad and Osregaad) разработали первый промышленный нечеткий контроллер, который был внедрен в управление процессом обжига цемента на заводе в Дании. Успех первого промышленного контроллера, основанного на нечетких лингвистических правилах «Если то», привел к всплеску интереса к теории нечетких множеств среди математиков и инженеров. Несколько позже Бартоломеем Коско (Bart Kosko) была доказана теорема о нечеткой аппроксимации (Fuzzy Approximation Theorem), согласно которой любая математическая система может быть аппроксимирована системой, основанной на нечеткой логике. Другими словами, с помощью естественно-языковых высказываний-правил «Если то», с последующей их формализацией средствами теории нечетких множеств можно сколько угодно точно отразить произвольную взаимосвязь «входы-выход» без использования сложного аппарата дифференциального и интегрального исчислений, традиционно применяемого в управлении и идентификации.

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

При чем здесь компьютерные сети?
Вполне логичный вопрос может задать читатель, имея в виду, что основа всех вычислительных систем — бинарная логика и ничего более. Если следовать идее основоположника теории нечетких множеств Л. Заде: «Если для проблемы разработаны методики ее решения на основе классической математики и они дают устраивающие результаты при разумных затратах времени и сил, то не следует использовать там нечетко-множественные методы. В реальном мире слишком много задач, для которых классические методы либо слишком громоздки, либо просто не применимы», то становится очевидным, что не следует заниматься разработкой основ сетевых технологий на основе нечеткой логики (по крайней мере, пока, хотя нечеткие процессоры уже давно созданы), а вот в вопросах их проектирования данная теория может быть достаточно полезна, тем более уже есть вполне реальные положительные результаты. Автором данной статьи в сотрудничестве с группой исследователей уже разработана концепция приложения теории интеллектуальных систем в задачах проектирования корпоративных информационно-вычислительных сетей, смоделированы и успешно апробированы нейро-нечеткие схемы для задачи выбора стандарта сети и оценки приемлемости этого решения в условиях нечеткой исходной информации на стадии проектирования корпоративных информационно-вычислительных систем. Результаты исследований опубликованы в ряде республиканских и зарубежных научных журналов.
Что касается задачи оценки приемлемости проектного решения по выбору программно-аппаратного комплекса корпоративной сети, то схема ее решения может быть реализована следующим образом:

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

В настоящее время существуют специальные программные средства, позволяющие решать каждый из вышеописанных этапов по отдельности. Например, задача первого этапа разрешима при использовании оболочки проектирования систем поддержки принятия решений «Adviser-2000», в котором реализована возможность многокритериального ранжирования при групповом ЛПР (с предварительным многокритериальным ранжированием экспертов по компетентности) на основе адаптированного метода недоминируемых альтернатив С.А.Орловского, представляющего простой и удобный аппарат оценки рациональности альтернативных решений в условиях нечеткой исходной информации. Для решения задачи построения нечеткой модели эффективно использовать пакет Fuzzy Logic Toolbox среды Matlab 6.5. версии 13 при условии, что исходная информация для разрабатываемых нечетких моделей в случае группового ЛПР будет заранее корректно агрегирована и формализована. К сожалению, этот вопрос в данном пакете оставлен открытым и для решения этой задачи были привлечены дополнительные ресурсы теории интеллектуальных систем в лице алгоритмов искусственных нейронных сетей.

Как все это делается?
Структурно концепцию разработанного нейро-нечеткого подхода к решению проблемы выбора программно-аппаратного комплекса ИВС можно представить, как показано на рисунке 1, на котором выделены 3 основных функциональных блока генерирования интегрированной оценки приемлемости сетевой ОС и ее аппаратной реализации.

pic

В первом блоке для получения интегрированной оценки рациональности ОС используется метод недоминируемых альтернатив, заключающийся в агрегировании нечетких высказываний группы экспертов о степени сатисфакции элементов множества A= {Windows 2000, Windows NT, Linux, Unix, Netware, AIX, Solaris}, состоящего из популярных сетевых ОС, множеству критериев G={Количество обслуживаемых клиентов. Масштабируемость. Управляемость. Сетевая производительность. Безопасность. Общая стоимость владения (Total Cost of Ownership). Стоимость аппаратной реализации}. Сбор экспертной информации осуществляется в форме матриц нечетких отношений предпочтения, элементы которых отражают степень истинности высказываний в интервале от 0 до 1 о приоритете одной ОС над другой по отдельно взятому из множества G критерию. В качестве степени истинности могут быть использованы и лингвистические выражения, которые трансформируются в числовые выражения по специальному алгоритму. Используемая для решения задачи первого этапа оболочка «Adviser-2000» оснащена блоком предварительного ранжирования элементов множества G по важности. Подробное описание решения данной задачи опубликовано в предыдущих работах автора и не является предметом данной статьи.
Как известно, при построении нечетких моделей (в частности, модель Мамдани) необходимым условием является представление входных и выходных параметров нечеткой модели в форме лингвистических переменных, значениями которых являются нечеткие переменные. Рассмотрим пример одной из лингвистических переменных, которая была использована при построении нечеткой модели Мамдани, имитирующей инженерную интуицию при оценке приемлемости сетевой ОС и ее аппаратной реализации.

Пусть лингвистическая переменная «Управляемость» принимает нечеткие значения «Нулевая», «Плохая», «Удовлетворительная», «Хорошая» и «Отличная», которые измеряются на шкале баллов от 0 до 10. Совокупность нечетких значений называют терм-множеством, каждый элемент которого определяется своей функцией принадлежности, указывающей степень проявления лингвистической оценки для каждой точки от 0 до 1. На рисунке 2 видно, что переход от одной оценки к другой не скачкообразный, а плавный, то есть, например, количественное значение 6 баллов может быть отнесено как к оценке «удовлетворительная», так и к оценке «хорошая», но с различной степенью уверенности (0,15 и 0,85 соответственно). Данный факт обеспечивает высокую адекватность при использовании нечетких понятий и категорий при формировании базы нечетких правил на основе экспертных высказываний.

Для адекватного решения задачи нечеткого моделирования в рамках указанного выше пакета Fuzzy Logic Toolbox необходимой оказалась разработка специальных программных средств, в которых реализован алгоритм обратного распространения ошибки для искусственных нейронных сетей в целях восстановления таких функций принадлежности для входных лингвистических переменных с аналогичными наименованиями, как у множества G и выходной лингвистической переменной «Приемлемость» на базе обучающей выборки 4-мерных точек, характеризующих носитель соответствующих функций принадлежности с обнаружением аномальных экспертных суждений по методу k-ближайших соседей. В результате использования разработанного пакета осуществляются построение значений лингвистических переменных, распознавание формы функции принадлежности и расчет его параметров, необходимых для использования в Fuzzy Logic Toolbox. Формализованные лингвистические переменные и наименования их значений представлены в таблице 1.

pic

Используя лингвистические оценки, эксперты сформировали нечеткие правила вывода, устанавливающие в модели Мамдани взаимосвязь между входами X=(x1,x2,…,xn) и выходом y, называемой нечеткой базой знаний (блок 1).
Полученная база знаний приведена в таблице 2.

pic
pic

Для чего это надо?
Полученная нечеткая модель имитирует инженерную интуицию и позволяет производить расчет приемлемости проектного решения, анализировать различные варианты, выбрать наиболее лучшую комбинацию параметров сетевой ОС и ее аппаратной реализации, а также выявить практически неприемлемые решения. Такая модель, несомненно, облегчает процесс синтеза проектного решения, позволяет сэкономить материальные ресурсы и время.
На таблице 3 приведены два модельных примера, которые характеризуют нечеткие требования к функциональным и экономическим параметрам проектного решения по выбору сетевой ОС и ее аппаратной реализации, а также количественное значение приемлемости таких решений.

pic

Очевидно, что первое решение является намного предпочтительнее второго и может быть реализовано на практике.
Возможности визуализации результатов моделирования позволяют также проводить анализ динамики уровня приемлемости во взаимосвязи двух каких-либо параметров при фиксированных значениях остальных. На рисунке 3 приведена поверхность приемлемости в зависимости от общей стоимости владения ОС и количества обслуживаемых клиентов, при фиксированных значениях масштабируемости — 4 балла, управляемости — 3 балла, сетевой производительности — 5 баллов, безопасности — 5 баллов, стоимости аппаратной реализации — 104 условных единиц.

pic

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

Orphus system
Подписывайтесь на канал infoCOM.UZ в Telegram, чтобы первыми узнавать об ИКТ новостях Узбекистана
В Telegram
В WhatsApp
В Одноклассники
ВКонтакте