Программная и аппаратная реализация нечетких регуляторов
Лекция № 14. 4.2. Программная и аппаратная реализация нечетких регуляторов
На практике для реализации алгоритмов нечеткой логики используются следующие возможные способы:
а) реализация нечетких алгоритмов с помощью соответствующего программного обеспечения (ПО);
б) разработка специальных "нечетких" компьютеров, предназначенных для обработки данных, информации и знаний с помощью команд естественного языка и правил вывода, похожих на те, которые использует человек;
в) аналоговая или аналого-цифровая реализация на базе больших (БИС) и сверхбольших (СБИС) интегральных схем.
На рис. 4.14 показано примерное соотношение перечисленных способов построения нечетких регуляторов в 1992 г. (фактически) и 1997 г. (прогноз) [16].
Как видно из этого рис., имеет место тенденция к сокращению удельного веса нечетких регуляторов, реализуемых программными средствами на основе обычных ЭВМ, и, наоборот, возрастает применение специально разработанного для этих целей оборудования, реализуемого на базе последних достижений микроэлектроники и вычислительной техники.
Основная проблема в программной реализации алгоритмов нечеткой логики (Fuzzy - Software) - необходимость обработки большого объема
Рекомендуемые материалы
информации в реальном времени. Так, при использовании функций принадлежности, запоминаемых с помощью 64-х 4-битовых значений, обработка 49 правил с двумя входами и одной выходной величиной (функции принадлежности которой заданы в виде набора изолированных значений - singletons) на 32-разрядной ЭВМ IBM-80386-20 МГц занимает' , около 170 мкс, что соответствует примерно 300.000 правил/с. Время, требуемое для обработки 25 правил с семью входами и тремя выходами, составляет уже около 1 мс, что соответствует скорости обработки информации 60.000 правил/с. Для решения этой же задачи компьютеру' IBM-80486-DX/2-50 МГц потребуется около 120 мкс, что составляет примерно 400.000 правил/с.
Значительное повышение быстродействия нечетких регуляторов достигается путем аппаратной реализации их алгоритмов. Различают 3 поколения специального аппаратного обеспечения нечеткой логики. Первое поколение "нечетких" БИС (Fuzzy Chips), основанное на аналоговой микроэлектронике, поступило на рынок в 1987 г. На рис. 4.15 приведен пример схемной реализации простого нечеткого регулятора [17].
6.2. Организационно-технические мероприятия по световой маскировке - лекция, которая пользуется популярностью у тех, кто читал эту лекцию.
Здесь каждая из входных величин xi и Х2 фаззифицируется с помощью трех функций принадлежности. Условия лингвистических правил, выраженные с помощью союза "И", реализуются с помощью операций пересечения (min). Предусмотрена специальная матрица, устанавливающая конкретный вид данных правил. Нечеткие значения выходной величины здесь рассматриваются как одноточечные подмножества (singletons), функции принадлежности которых определяются с помощью 5 операций объединения (max) и подаются затем на схему дефаззификации.
Второе поколение нечетких регуляторов - это СБИС, сочетающие аналоговый и цифровой принцип действия и программируемые пользователем как чистые цифровые схемы с мажорированием. Примерами этих СБИС являются выпускаемые с 1990 г. интегральные схемы OMRON FP-3000, TOGAI-Infra Logic F 110, легко подключаемые к датчикам и исполнительным механизмам. В то же время, они являются недостаточно гибкими, поскольку они имеют или жестко заданный характер связей (OMRON), или малый набор стандартных команд (TOGAI).
Третье поколение нечетких регуляторов (начиная с 1992 г.) представляет собой "нечеткие" компьютеры (Fuzzy-Computers), или "нечеткие" процессоры (Fuzzy-Processors), обеспечивающие не только удобное взаимодействие оператора и ЭВМ (а значит, и ускорение сроков проектирования, оптимизации и доводки системы управления), но и повышение скорости обработки информации за счет организации параллельных вычислений, использования векторных процессоров, транспьютеров и т.п. Примером такого процессора является СБИС высокой степени интеграции (70.000 транзисторов), разработанная в 1992 г. американскими специалистами Ватанабе, Симоном, Детлофом и Юнтом по заказу Национальной Аэрокосмической Ассоциации (NASA). Эта СБИС может обслуживать нечеткую систему управления с четырьмя входами и двумя выходными величинами, заданными с помощью 64 функций принадлежности по 4 бита, записанных в памяти. Обеспечивается возможность реализации 102 правил вывода с использованием метода Максимума-Минимума и дефаззификации на основе вычисления центра тяжести. За счет параллельной обработки информации достигается скорость обработки, равная 580.000 вычислений каждого из 102 правил в секунду, т.е. правил/с.
Фирмами "Сименс" и "Информ" совместно разработан "нечеткий" процессор FUZZY-166, построенный на основе 16-разрядного микропроцессора и предназначенный для работы с 10 аналоговыми входами, а также 60 цифровыми входами и выходами. При разработке процессора использовались язык Ассемблера с сокращенным набором команд и стандартный компилятор для языка СИ, а также система программирования нечетких данных "Fuzzy-Werkbank" фирмы "Информ".
Имеются сообщения о "нечетком" микроконтроллере Neural Logix ADS 230, выполненном на основе искусственной нейронной сети и предназначенном для работы с IBM-совместимыми компьютерами [16]. В данной разработке используется микропроцессор NLX230, который выполняет 30-106 правил/с.