Сайт Информационных Технологий

Michailov V. V.

Russia, St.Petersburg, St.Petersburg Institute for Informatics and Automation RAS

E-mail iv@iias.spb.ru

SOFT COMPUTING ON ALGORITHMIC NETWORKS

The principles of realization of technologies of soft computing on algorithmic networks consisting in formation of algorithmic basis, expansion of structure of operations above networks and inclusion in structure of tool system of additional procedures are considered. As an example are used of fuzzy logic and neural networks.

Михайлов В.В.

Россия, Санкт-Петербург, Санкт-Петербургский институт информатики и автоматизации РАН

E-mail iv@iias.spb.ru

МЯГКИЕ ВЫЧИСЛЕНИЯ НА АЛГОРИТМИЧЕСКИХ СЕТЯХ

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

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

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

Рассмотрим принципы построения системы, ориентированной на работу с нечетной логикой. В качестве алгоритмического базиса по [3] можно выбрать следующий набор операций: отрицание , конъюнкцию , дизъюнкцию , импликацию , эквивалентность . Используя правило суперпозиции и перестановки входов из операторов базиса можно построить произвольную логическую формулу. Аргументами формул являются нечеткие логические высказывания, степень истинности или ложности которых принимает значение на замкнутом интервале [0,1]. Для анализа нечетких логических формул в состав базиса должна быть включена операция оценки равносильности формул , которая определяется на всех наборах аргументов:

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

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

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

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

Моделирование нейронных сетей. Парадигма нейронной сети (НС) включает нейродинамику, топологию НС, и алгоритмы обучения [5]. Стандартный нейронный элемент содержит суммирующую и трансформационную функции. Количество вариантов суммирующих функций около 10 (например, взвешенная сумма входных переменных, минимальный или максимальный элемент, мажоритарная функция и др.) а трансформационных функций — около 20, в число которых входят “линейная, сигмоидальная функции, элементы пороговой логики, sin, шаговая и ряд других. Общее число возможных типов нейронных элементов достигает 200 и такое расширение базиса не представляется оправданным. По этой причине в качестве элементов базиса нейронных АС будем использовать не нейронные элементы, а наборы трансформационных и суммирующих функций. Это позволяет почти на порядок сократить число компонент базиса, сохранив необходимое разнообразие формируемых на их основе типов нейронных элементов.

Количества нейронных элементов в НС достигает 105 и более. Алгоритмические сети с таким количеством операторов полностью утрачивают наглядность, а их поэлементный ввод не реален. В связи с этим за элементарный компонент нейронной алгоритмической сети и, соответственно, за оператор алгоритмического базиса примем слой трансформационных (суммирующих) функций, в результате соединения которых формируется слой параллельно работающих однотипных нейронных элементов. Все типы суммирующих функций алгоритмического базиса будут включать операцию настройку весов суммы. Этим обеспечивается возможность организации различных вариантов межуровневых соединений нейронных элементов (все со всеми, произвольные соединения, случайные связи и др.). Для формирования НС с обратными связями в состав алгоритмического базиса включаем слой элементов памяти. Таким образом, алгоритмический базис нейронных АС будет содержать около 30 типов операторов. Реализация операторов в АС матричного типа [2] не представляет сложности.

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

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

ЛИТЕРАТУРА

  1. Иванищев В.В., Михайлов В.В. Алгоритмические сети и мягкие вычисления. Труды Международной конференции по мягким вычислениям и измерениям SCM-98. СПб.1998. С. 145-150.
  2. Михайлов В.В. Матричные алгоритмические сети и их применение. // Теоретические основы и прикладные задачи интеллектуальных информационных технологий. - СПб.: Изд. “Анатолия”,1998. С.207-221.
  3. ИванищевВ.В., Марлей В.Е. Введение в теорию алгоритмических сетей. СПб.: Изд. СПбГТУ, 2000.-180 с.
  4. Zadeh L.A. Fuzzy logic, neural network and soft computing.//Communication of the ACM, 1994, vol.37,N3.-P.77-84.
  5. Reddy G.N. Artificial Neural Networks.USA,Lamar University, 1995. - 294 p.
  6. Иванищев В.В., Михайлов В.В. Автоматизация моделирования экологических систем. СПб., Изд. СПбГТУ, 2000.-172 с.

Site of Information Technologies
Designed by  inftech@webservis.ru.