Радиотехника и электроника, 2021, T. 66, № 3, стр. 291-308

Повышение точности аппроксимации микропроцессорных нечетких вычислителей с поддержкой функций принадлежности произвольного вида

А. Е. Васильев *

Санкт-Петербургский политехнический университет Петра Великого
195251 Санкт-Петербург, Политехническая ул., 29, Российская Федерация

* E-mail: avasil@aivt.ftk.spbstu.ru

Поступила в редакцию 27.03.2019
После доработки 05.09.2019
Принята к публикации 26.11.2019

Полный текст (PDF)

Аннотация

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

ВВЕДЕНИЕ

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

Особую актуальность эта проблема приобретает в случаях применения нечетких вычислений в бортовых микропроцессорных и микроконтроллерных системах управления, для которых экстенсивные решения зачастую неприемлемы: повышение темпа вычислений путем увеличения тактовой частоты влечет за собой увеличение риска сбоя вычислительного процесса, а увеличение сложности аппаратных ресурсов – снижение показателей надежности и повышение стоимости бортового вычислителя [4].

1. ФАКТОРЫ, ВЛИЯЮЩИЕ НА ТОЧНОСТЬ АППАРАТНЫХ НЕЧЕТКИХ ВЫЧИСЛИТЕЛЕЙ

Реализация нечеткого вычислителя на базе микропроцессорной платформы осуществляется разработчиком с учетом действия ряда технических ограничений: принятых в данном микропроцессоре способов кодирования баз нечетких знаний (наиболее значимым является способ представления функций принадлежности входных и выходных лингвистических переменных), допустимой сложности этих баз, разрядности данных, а также значения тактовой частоты микропроцессора.

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

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

2. СПОСОБЫ ПРЕДСТАВЛЕНИЯ БАЗ НЕЧЕТКИХ ЗНАНИЙ В МИКРОПРОЦЕССОРНЫХ НЕЧЕТКИХ ВЫЧИСЛИТЕЛЯХ И СРЕДСТВА ИХ ТЕХНИЧЕСКОЙ РЕАЛИЗАЦИИ

Анализ существующих методов проектирования микропроцессорных нечетких вычислителей и взаимосвязанных с ними технических решений [7, 8] показывает, что наиболее распространенным является представление нечеткого описания как совокупности правил кусочно-линейной аппроксимации гиперповерхности, соответствующей исходной функции преобразования, и строящегося с применением методов кластеризации совокупности данных “вход–выход” (рис. 1–4). Такой подход обладает рядом привлекательных свойств: гарантированной результативностью применения, высокой степенью автоматизации, реализуемостью на любых микропроцессорных средствах с аппаратной поддержкой нечетких вычислений. К предсказуемым недостаткам, проистекающим из использования фактологической информации, не отражающей в полной мере функциональные взаимозависимости лингвистических переменных, является относительно невысокая точность нечетких вычислений, большая ресурсоемкость описания и, как следствие – относительно невысокая вычислительная производительность таких нечетких преобразователей (рис. 5).

Рис. 1.

Пример аппроксимируемой поверхности: аналитическая модель аппроксиматора (а); вид поверхности сбоку (б); вид поверхности сверху (в).

Рис. 2.

Задание термов двух входных переменных (x1 – слева; x2 – справа). Вверху: шаги последовательного приближения исходных зависимостей; внизу: построение функций принадлежности.

Рис. 3.

Кластеризация данных и задание термов выходной переменной.

Рис. 4.

Фрагмент системы правил нечеткого вычислителя.

Рис. 5.

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

В то же время, как отмечается в [9], существующие технические решения в области микропроцессорной техники способны обеспечить эффективную реализацию нечетких вычислителей с поддержкой произвольных задаваемых разработчиком функций принадлежности. Как показывает практика применения (рис. 6–9), подобные решения позволяют обеспечить на порядок более ресурсоэкономичную (с точки зрения сложности базы нечетких знаний) и на порядок более точную (в сравнении с получаемой классическим подходом) систему нечеткой обработки данных [10].

Рис. 6.

Пример аппроксимируемой поверхности: аналитическая модель аппроксиматора (а); внешний вид (б)–(в); анализ проекций сечений на плоскость zOx1 (г) и zOx2 (д).

Рис. 7.

Задание нелинейных функций принадлежности для термов переменных: x1 (а) и x2 (б).

Рис. 8.

Построение нечеткого аппроксиматора: определение диапазонов изменения величин (а); задание термов выходной переменной (б); задание правил нечеткого аппроксиматора (в).

Рис. 9.

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

Указанный метод, основанный на анализе “онтологий данных” (взаимосвязей в проекциях гиперповерхности значений функции) также имеет ограниченную область применения: он позволяет свести погрешность вычислений до уровня единицы младшего разряда для любой функции n переменных, представимой в виде суперпозиции n функций одной переменной; в иных случаях на границах действия правил по причине изменения форм проекций будут наблюдаться нелинейные искажения аппроксимируемой поверхности (рис. 10).

Рис. 10.

Иллюстрация ограничения одношагового метода: аналитическая модель аппроксиматора (а); внешний вид (б) и формы сечений (в) исходной поверхности; нечеткая аппроксимация поверхности (г); погрешность нечеткой аппроксимации (д).

3. ПОДХОД К АВТОМАТИЗАЦИИ СИНТЕЗА МИКРОПРОЦЕССОРНЫХ НЕЧЕТКИХ ВЫЧИСЛИТЕЛЕЙ

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

Сказанное выше иллюстрирует рис. 11.

Рис. 11.

Структура нечеткого вычислителя с многоступенчатой коррекцией.

Изначально (шаг 0) с применением основных методов и средств проектирования разрабатывается основной нечеткий аппроксиматор Y0*, обладающий, очевидно, некоторой погрешностью аппроксимации. В случае, если эта погрешность (шаг 1.1) представляется разработчику неудовлетворительной, проектируется (шаг 1.2) нечеткий корректор, аппроксимирующий поверхность ошибки (или выбранный разработчиком фрагмент этой поверхности). Таким образом, ансамбль Y1* двух нечетких элементов (исходного и корректирующего) аппроксимирует исходную функциональную зависимость с лучшим качеством. Дальнейшее выполнение аналогичных шагов – анализа результирующей погрешности и построение корректирующего эту погрешность элемента – позволяет продолжать повышение точности аппроксимации. Учет ограничений по сложности реализации, определяемой исходя из совокупной сложности баз нечетких знаний основного и корректирующих нечетких узлов, позволяет осуществить обоснованное завершение итераций синтеза. Таким образом, синтез структуры нечеткого вычислителя проходит в условиях антагонизма цели синтеза (максимизации точности аппроксимации) и ограничений процесса синтеза (результирующей сложности вычислителя); решение задачи в подобной постановке возможно на основе принципа Беллмана–Заде [11]. Структура результирующего нечеткого вычислителя Y* обведена на рис. 11 пунктирной линией.

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

4. ПРИМЕР РЕАЛИЗАЦИИ

Рассмотрим применение описанного подхода на примере нечеткой аппроксимации вычислительно-сложной нелинейной функции, показанной на рис. 12.

Рис. 12.

Пример аппроксимируемой поверхности: аналитическая модель аппроксиматора (а); внешний вид (б).

На шаге 0, исходя из анализа формы аппроксимируемой поверхности, разработчиком задается исходная база нечетких знаний вычислителя (рис. 13). База описывает центральный пик, достигаемый в случае близости входных переменных к категории “центр” (правило 1), и слабо выпуклую вверх краевую часть поверхности, достигающую максимального значения в случае нахождения как минимум одной входной переменной вблизи центра своего диапазона (правила 2–4), и снижающуюся до минимального значения при одновременном нахождении входных переменных у краев своего диапазона (правило 5).

Рис. 13.

Исходный нечеткий аппроксиматор: термы входных переменных х1 и х2 (а) и выходной переменной (б); база правил (в).

Результат аппроксимации этим нечетким вычислителем показан на рис. 14. Максимальная приведенная погрешность (при использовании разрядной сетки минимально возможной ширины, для данного случая равной 8 битам) составляет 9%. Ее величина и области основного проявления являются, как отмечалось выше, следствием непостоянства формы сечений поверхности (в данном случае шпилеобразная форма сечения в центральной области сменяется дугообразной по краям).

Рис. 14.

Результат первичной аппроксимации: поверхность (а) и погрешность аппроксимации при восьмикратном увеличении (б).

Следуя предлагаемой методике, проанализируем поверхность погрешности. В ней прослеживаются три характерные области:

1) область “дефицита амплитуды” (включает четыре расположенных симметрично относительно центра колоколообразных участка, устремленных навершием к центральной оси – на этих участках аппроксимированная поверхность лежит ниже заданной);

2) область “хребтов” (включает четыре узких участка, крестообразно прорезающих поверхность – на этих участках аппроксимированная поверхность лежит выше заданной);

3) центральная область, характеризующая недостаточную результирующую амплитуду пика.

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

Первый нечеткий корректор (табл. 1) устраняет погрешность в области “дефицита амплитуды”. Функции, описывающие термы входных переменных, получены путем проецирования области “дефицита амплитуды” на плоскости, ограничивающие пространство значений функции. Значения термов-синглтонов выходной переменной определяются исходя из максимального и минимального значений величин корректирующей поправки, генерируемой данным нечетким корректором. Система правил описывает ситуации назначения выходу максимального и минимального значения (напомним, что результирующее выходное значение вычисляется на основе степеней справедливости всего ансамбля правил).

Таблица 1.

Первый нечеткий корректор

Этапы синтеза Визуальное представление
Определение сечений исходной поверхности ошибки, подлежащих аппроксимации
Задание термов входных переменных и выходной переменной
Задание базы правил и функции преобразования корректора (показана в увеличенном масштабе)
Оценка результата аппроксимации с корректором; оценка остаточной погрешности (показана в увеличенном масштабе)  

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

Таблица 2.

Второй нечеткий корректор

Этапы синтеза Визуальное представление
Определение сечений исходной поверхности ошибки, подлежащих аппроксимации
Задание термов входных переменных
и выходной переменной
Задание базы правил
и функции преобразования корректора (показана в увеличенном масштабе)
Оценка результата аппроксимации
с корректором;
оценка остаточной погрешности (показана в увеличенном масштабе)
 

Третий нечеткий корректор (табл. 3) устраняет погрешность в области “пика”.

Таблица 3.

Третий нечеткий корректор

Этапы синтеза Визуальное представление
Определение сечений исходной поверхности ошибки, подлежащих аппроксимации  
Задание термов входных переменных
и выходной переменной
Задание базы правил
и функции преобразования корректора (показана в увеличенном масштабе)
Оценка результата аппроксимации
с корректором;
оценка остаточной погрешности (показана в увеличенном масштабе)

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

Таблица 4.

Четвертый нечеткий корректор

Этапы синтеза Визуальное представление
Определение сечений исходной поверхности ошибки, подлежащих аппроксимации
Задание термов входных переменных
и выходной переменной
Задание базы правил
и функции преобразования корректора (показана в увеличенном масштабе)
 
Оценка результата аппроксимации
с корректором;
оценка остаточной погрешности (показана в увеличенном масштабе)

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

Рисунок 15 иллюстрирует результативность применения подхода для рассмотренного примера с четырьмя итерациями. Приведенная погрешность аппроксимации заданной поверхности составила менее 1.5%, что означает шестикратное улучшение точности аппроксимации.

Рис. 15.

Результативность применения метода нечеткой коррекции: исходная зависимость (а); поверхность аппроксимации без коррекции (б); поверхность аппроксимации с коррекцией (в).

5. ПЕРСПЕКТИВНЫЕ ВАРИАНТЫ ТЕХНИЧЕСКОЙ РЕАЛИЗАЦИИ ПОДХОДА

Наряду с предложенным вариантом технической реализации на базе специализированных микропроцессорных вычислителей, который обеспечивает высокую надежность и потенциально наивысшую техническую эффективность и наиболее пригоден для случаев применения в бортовой аппаратуре автономных систем управления, представляется перспективным также воплощение идеи на компонентной базе общего назначения – различного рода универсальных параллельных вычислителях, в частности, использующих архитектуру CUDA. Это позволит обеспечить высокую производительность нечеткой аппроксимации и для вычислительных систем общего назначения. Как показывает анализ публикаций, практические потребности такого рода возникают в различных областях техники регулярно (см., напр., [16]). Используя устоявшуюся терминологию, в предлагаемой реализации ядрами будут выступать отдельные нечеткие вычислители, обрабатывающие поток исходных данных, поступающий от основного вычислителя, и связанные между собой в соответствии с общей структурой (рис. 11). Результирующий поток данных возвращается основному вычислителю.

ЗАКЛЮЧЕНИЕ

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

Список литературы

  1. Rabelo L., Bhide S., Gutierrez E. Artificial intelligence: Advances in research and applications. N.Y.: Nova Sci. Publ., 2018.

  2. Пегат А. Нечеткое моделирование и управление. М.: БИНОМ, 2013.

  3. Fuzzy Logic Application HandBook. Mount Prospect: Intel Corporation, 1994.

  4. Xu H., Xing Q., Wang W. // Systems Eng. Electron. 2018. V. 40. № 3. P. 563.

  5. Васильев А.Е., Гиганова В.И. // Изв. РАН. Теория и системы управления, 2014. № 6. С. 34.

  6. Васильев А.Е. Встраиваемые системы автоматики и вычислительной техники. Микроконтроллеры. М.: Горячая линия-Телеком, 2018.

  7. Fazendeiro P., De Oliveira J.V. // IEEE Trans. 2015. V. FS-23. № 1. P. 85.

  8. Bao C., Peng H., He D., Wang J. // Pattern Analysis and Applications. 2018. V. 21. № 3. P. 803.

  9. Васильев А.Е., Шилов М.М. Микроконтроллер с аппаратным нечетким вычислителем переменной структуры. Пат. РФ на изобретение № 2477525. Опубл. 10.03.2013. Бюлл. № 7.

  10. Васильев А.Е., Васильянов Г.С., Кабесас Тапиа Д.Ф. и др. // РЭ. 2017. Т. 62. № 12. С. 1243.

  11. Bellman R., Zadeh L. // Management Sci. 1970. V. 17. № 4. P. B141.

  12. Mitaim S., Kosko B. // IEEE Trans. 2001. V. FS-9. № 4. P. 637.

  13. Van Leekwijck W., Kerre E. // Fuzzy Sets and Systems. 1999. V. 108. № 2. P. 159.

  14. Saletic D., Velasevic D., Mastorakis N. // Recent Advances in Computers, Computing and Communications. 2002. P. 247.

  15. Круглов В.В. // Математическая морфология: электрон. математич. и медико-биологич. журн. 2001. Т. 3. № 4. С. 69.

  16. Грубов В.В., Недайвозов В.О. // Письма в ЖТФ. 2018. Т. 44. № 10. С. 103.

Дополнительные материалы отсутствуют.