Некоторые сведения о нечетких нейронных системах управления
Нейронные сети и нечеткая логика могут решать задачи, которые оказываются не по силам традиционным системам управления. В этой статье рассматривается работа таких систем и преимущества, которые они дают в таких областях, как скоростная обработка изображений.
Пока инженеры, работавшие в области автоматического управления, занимались переходом от традиционных электромеханических и аналоговых технологий управления на цифровые мехатронные системы управления, объединяющие компьютеризированные алгоритмы анализа и принятия решений, на горизонте появились новые компьютерные технологии, способные вызвать еще более значительные изменения. Нейронные сети и нечеткая логика уже нашли широкое применение и в скором времени способны изменить способы построения и программирования систем автоматического управления.
Традиционные компьютеры имеют фоннеймановскую архитектуру, в основе которой лежит последовательная обработка и выполнение явно заданных команд. Искусственные нейронные сети (ИНС) строятся на базе другой архитектуры. Они собираются из очень простых процессорных блоков, объединенных в систему с высоким уровнем параллелизма. Эта система выполняет неявные команды, в основе которых лежит распознавание образов на входах данных от внешних истоков.
Нечеткая логика так же переворачивает традиционные представления с ног на голову. Вместо результатов точных измерений, устанавливающих положение величины на заданной шкале (например «температура 23оC»), нечеткая информация показывает степень принадлежности к нечетко определенным перекрывающимся множествам («на более холодной стороне теплого»).
Определения
Компьютеры (или, более точно, «машины логического вывода»), использующие эти концепции, способны решать сложные задачи, которые оказываются не по силам традиционным системам управления.
Искусственная нейронная сеть (ИНС), согласно Викпедии, – это «взаимосвязанная совокупность искусственных ‘нейронов’, которая использует математическую или вычислительную модель для обработки информации, опирающейся на связанность вычислителей».
В большинстве случаев ИНС представляет адаптивную систему, которая изменяет свою структуру под влиянием внешней или внутренней информации, проходящей через сеть. Вместо расчета числовых результатов по входным числовым данным ИНС моделируют сложные взаимосвязи между входами и выходами или обнаруживают закономерности в данных.
Элементарные узлы (называемые также «нейроны», «нейроды», «процессорные элементы» или «блоки») соединяются вместе и образуют сеть узлов. Полезный эффект от их применения вытекает из способности реализовывать алгоритмы логического вывода, которые изменяют силы или веса сетевых соединений для получения необходимого потока сигнала.
В этом примере искусственной нейронной сети переменная h, представляющая трехмерный вектор, зависит от входной переменной x. Далее g, двумерная векторная переменная, зависит от h, и, наконец, выходная переменная f зависит от g.
Наиболее интересна возможность обучения, которая на практике означает оптимизацию некоторой величины, часто называемой «ценой», которая показывает правильность результата в контексте решаемой задачи.
Например, цена в классической задаче коммивояжера – это время, необходимое для полного объезда территории торговли с остановками во всех требуемых пунктах и прибытия в исходную точку. Более короткий маршрут дает лучшее решение.
Для решения этой задачи фон-неймановские компьютеры должны установить все возможные маршруты, после чего по очереди проверить каждый маршрут, складывая временные задержки для определения суммарной задержки для данного маршрута.После вычисления сумм для всех возможных маршрутов компьютер просто выбирает самый короткий.
В отличие от этого ИНС рассматривают все маршруты параллельно с целью нахождения конфигураций, которые минимизируют полное время маршрута. Использование этих конфигураций минимизирует итоговый маршрут. Обучение состоит в определении конфигураций, которые на основе предыдущего опыта обеспечивают стратегии оптимизации маршрута.
Нечеткая логика (снова согласно Викпедии) выведена из теории нечетких множеств, имеющей дело с рассуждениями, которые в большей степени являются приближенными, чем точным. Истинность в нечеткой логике показывает принадлежность к нечетко определенным множествам. В нечеткой логике решения могут быть приняты на основе неточно определенных, но, тем менее, очень важных характеристик. Нечеткая логика допускает изменение значений принадлежности к множеству в диапазоне 0 до 1 включительно, а также использование таких неопределенных понятий, как “немного”, “до некоторой степени”и“очень”. Это особым образом позволяет реализовывать частичную принадлежность к множеству.
Основное приложение можно описать поддиапазонами непрерывной переменной. Например, диапазон температур антиблокировочной тормозной системы может иметь несколько отдельных функций принадлежности, определяющих температурные интервалы, необходимые для правильного управления тормозами. Каждая функция отображает принадлежность значения температуры к истинностному значению в диапазоне 0 до 1 . Эти истинностные значения могут использоваться далее для выбора способа управления тормозной системы.
Быстрая нечеткая логика для управления в реальном времениНесмотря на то, что любой микроконтроллер или компьютер могут реализовать алгоритмы нечеткой логики в программном виде, это может оказаться неэффективным из-за низкого быстродействия и потребности в большом объеме памяти. Джим Сибигтрот, системный инженер по автомобильной продукции отделения микроконтроллеров Transportation and Standard Products Group, входящей в Freescale Semiconductor, говорит, что микроконтроллеры HC12 и HCS12 компании очень эффективно решают эту задачу за счет добавления четырех команд, специально разработанных для реализации основных частей механизма логического вывода нечеткой логики. «Основная программа для универсального механизма логического вывода, которая обрабатывает невзвешенные правила, занимает приблизительно 57 байтов объектного кода (приблизительно 24 строки ассемблерного кода)», – сообщает он. Сибигтрот отмечает, что модель HCS12 с частотой 25 МГц может выполнить полную последовательность вывода для двух входных и одного выходного параметра с семью пометками для каждого входа и выхода примерно за 20 мкс. Эквивалентная программа для MC68HC11 с частотой 8 МГц (без команд нечеткой логики) заняла бы приблизительно 250 байтов объектного кода и примерно 750 мкс времени. Даже если бы MC68HC11 мог обработать программу с такой же скоростью, что и HCS12, команды нечеткой логики уменьшают программу в 4 раза и сокращают время выполнения в 12 раз. Такие короткие интервалы распознавания позволяют использовать алгоритмы нечеткой логики в системах управления в режиме реального времени без дорогостоящего компьютерного оборудования или больших программ. |
Обработка изображений
С помощью принятия решений в ИНС, основанной на нечеткой логике, можно создать мощную систему управления. Очевидно, что две эти концепции хорошо работают вместе: алгоритм логического вывода с тремя нечеткими состояниями (например, холодный, теплый, горячий) мог бы быть реализован в аппаратном виде при использовании истинностных значений (0.8, 0.2, 0.0) в качестве входных значений для трех нейронов, каждый из которых представляет одно из трех множеств. Каждый нейрон обрабатывает входную величину в соответствии со своей функцией и получает выходное значение, которое далее будет входным значением для второго слоя нейронов, и т.д.
Например, нейрокомпьютер для обработки изображений может снять многочисленные ограничения по видеозаписи,освещению и настройкам аппаратуры. Такая степень свободы становится возможной благодаря тому, что нейронная сеть позволяет построить механизм распознавания с помощью изучения примеров. В результате система может быть обучена распознаванию годных и бракованных изделий при сильном и слабом освещении, при их расположении под разными углами и т.д. Механизм логического вывода начинает работать с“оценки”условий освещения (другими словами, устанавливает степень сходства с другими условиями освещения, при которых система знает, как действовать). После этого система выносит решение о содержании изображения используя критерии, основанные на данных условиях освещения. Поскольку система рассматривает условия освещения как нечеткие понятия, механизм логического вывода легко определяет новые условия по известным примерам.
Чем больше примеров изучает система, тем больший опыт приобретает механизм обработки изображений. Этот процесс обучения может быть достаточно легко автоматизирован, например, за счет предварительной сортировки по группам деталей с близкими свойствами для обучения по областям сходств и различий. Эти наблюдаемые сходства и различия могут далее предоставлять информацию ИНС, задача которой состоит в сортировке поступающих деталей по этим категориям. Таким образом, успех работы системы зависит не от стоимости оборудования, а от количества изображений, необходимых для обучения и построения надежного механизма логического вывода.
Нейрокомпьютер для обработки изображений подходит для приложений,где диагностика опирается на опыт и экспертную оценку оператора, а не на модели и алгоритмы. Процессор может построить механизм распознавания из простых комментариев к изображению, сделанных оператором, затем извлечь характеристики или векторы признаков из объектов, снабженных комментариями, и передать их в нейронную сеть. Векторы признаков, описывающие видимые объекты, могут быть такими простыми как значения строки пикселей, гистограмма или распределение интенсивности, профили распределения интенсивности или градиенты по соответствующим осям. Более сложные признаки могут включать элементы вейвлет-преобразования и быстрого преобразования Фурье.
Обобщения
После обучения на примерах нейронная сеть способна к обобщению и может классифицировать ситуации, никогда ранее не наблюдавшиеся, связывая их со схожими ситуациям из примеров. С другой стороны, если система склонна к излишней свободе и обобщению ситуаций, ее поведение в любое время может быть скорректировано за счет обучения противоположным примерам.
С точки зрения нейронной сети эта операция заключается в уменьшении областей влияния существующих нейронов для согласования с новыми примерами, которые находятся в противоречии с существующим отображением пространства решений.
Важным фактором, определяющим признание ИНС, является самостоятельное и адаптивное обучение. Это означает, что устройство должно обладать способностью изучать объект с минимальным участием оператора или вообще без его вмешательства. В будущем, например, куклы, могли бы узнавать лицо ребенка, разворачивающего их впервые, и спрашивать его имя. Самостоятельное обучение для сотового телефона могло бы заключаться в изучении отпечатка пальца его первого владельца. Идентификация владельца также может быть усилена за счет совмещения в одном устройстве распознавания лица, отпечатка пальца и речи.
В условиях самостоятельного обучения устройство должно строить свой собственный механизм распознавания, который будет лучше всего функционировать в его рабочей среде. Например, интеллектуальная кукла должна распознать своего первоначального владельца независимо от цвета его волос и кожи, местонахождения или времени года.
На первых порах механизм должен использовать все методики выделения признаков, которые он знает. Это приведет к формированию ряда промежуточных механизмов, каждый из которых предназначен для идентификации тех же самых категорий объектов, но основан на наблюдении различных особенностей (цвет, зернистость, контраст, толщина границ и т.д.). После этого общий механизм может дать оценку работе промежуточных механизмов, выбирая те из них, которые дают лучшую производительность и/или точность.
Пример сортировки рыбы
Компания PiscesVMK производит технологическое оборудование для переработки рыбы на борту и на прибрежных заводах. Клиенты фирмы – рыбоперерабатывающие суда, выполняющие круглогодичный лов различных сортов рыбы в Северном море и Атлантическом океане. Эти потребители хотят заполнить свои трюмы как можно быстрее уловом наивысшего качества при минимальной численности работников.
Как правило, рыба доставляется на борт с помощью сетей и выгружается в емкости на конвейере, который переносит их через машины очистки, нарезки и филетирования. Возможные отклонения включают неподходящий сорт, повреждение рыбы, наличие больше одной рыбы в емкости и ее неправильное положение перед поступлением в машину нарезки. Реализация такого контроля традиционными средствами обработки изображений затруднена, поскольку размеры, форму и объем сложно описать математически. Кроме того, эти параметры могут меняться в зависимости от места плавания и сезона.
Pisces установила более 20 систем, базирующихся на интеллектуальной камере Iris от Matrox и механизме распознавания CogniSight от General Vision. Камера монтируется над конвейером так, чтобы рыба проходила под ней как раз перед попаданием в филетирующую машину. Камера связана с контроллером Siemens Simatic S7-224 (ПЛК) и с локальной сетью (LAN). Стробоскопический источник света, установленный рядом с камерой, запускается каждый раз, когда новая емкость появляется в поле зрения. Соединение камеры с локальной сетью необходимо для выполнения трех операций: настройки преобразователя, гарантирующей фокусировку и надлежащий контраст изображения, обучения механизма распознавания и доступа к статистике, непрерывно сообщающей о количестве кондиционной и некондиционной рыбы.
На этом рисунке «холодный», «теплый» и «горячий» представляют множества, охватывающие всю шкалу температур. Точка на этой шкале имеет три «истинностных значения» – по одному для каждого из трех множеств – которые указывают относительное сходство с каждым множеством. Для конкретного значения температуры три истинностных значения (0.8, 0.2, 0.0) могут интерпретироваться как описание температуры объектов в терминах “довольно холодный”, “чуть теплый” и “не горячий”.
Настройка преобразователя происходит только однажды во время установки камеры в водонепроницаемом корпусе. Обучение выполняется в начале каждого плавания с помощью образцов рыбы из первого улова или с помощью загрузки уже существующего файла.
Как только камера получает базу знаний, она может начать распознавание рыбы автономно, без связи с персональным компьютером. ИНС сортирует ее по категориям «принято», «забраковано», «на переработку» или «пусто». Этот сигнал идет в ПЛК, управляющий двумя щетками, которые направляют соответствующую рыбу в емкости для удаления или переработки. ПЛК также связан с магнитным датчиком, который вырабатывает сигнал запуска каждый раз, когда емкость с рыбой проходит под камерой.
В настоящее время Pisces уже установила более 20 систем на 5 различных рыболовецких флотилиях в Норвегии, Исландии, Шотландии и Дании. Система оценивает 360 конвейерных емкостей в минуту на линиях сельди, но она может работать еще быстрее.
Для сети из 80 нейронов достигнута 98%-ая точность при классификации 16 тонн рыбы. Рыбаки довольны системой благодаря ее надежности, гибкости и легкости в использовании. Преимущества: сокращение срока плавания, повышение качества улова и доходов, распределяемых между меньшим числом рыбаков.
В средствах дискретного производства нейронные сети нашли применение в управлении транспортными средствами, распознавании образов в радарных системах, опознавании личности, распознавании объектов, рукописного текста, жестов и речи.
Нечеткая логика уже используется для управления автомобилем и другими подсистемами транспортного средства, такими как система ABS и круиз-контроль, а также кондиционерами, камерами, цифровой обработкой изображений, искусственным интеллектом компьютерных игр и распознаванием образов в удаленных сенсорных системах.
Подобные технологии «мягких вычислений» также используются для создания надежных зарядных устройство для батарей дыхательного аппарата. В отраслях непрерывного и периодического производства нечеткая логика и нейронные сети являются основой некоторых самонастраивающихся регуляторов. Некоторые микроконтроллеры и микропроцессоры оптимизированы для работы с нечеткой логикой, так что системы могут работать еще быстрей (см. ниже “Быстрая нечеткая логика для управления в реальном времени”).