УДК 62.50 + 517.11 + 519.92
М.А. Марценюк, И.П. Селетков ПРИВЕДЕНИЕ КОНЕчНОгО НЕчЕТКОгО АВТОМАТА
к нечеткой комбинационной схеме с блоком памяти
M.A. Martsenyuk, I.P. Seletkov CONVESION OF FuZZY FINITE AuTOMATA
to fuzzy combinational circuit
Рассмотрены модели логического автомата и комбинационной схемы, построенные с использованием нечеткой логики. Показано, что нечеткий автомат и нечеткая комбинационная схема обладают большей гибкостью в настройках, позволяют проще описать предметную область, чем их «четкие» аналоги. Также на конкретном примере проведено сравнение нечеткого автомата и комбинационной схемы, решающих одну и ту же задачу. показано, что при прочих равных условиях нечеткая комбинационная схема обладает на порядок большим быстродействием, чем нечеткий автомат.
НЕЧЕТКАЯ ЛОГИКА; НЕЧЕТКИЙ АВТОМАТ; НЕЧЕТКАЯ КОМБИНАЦИОННАЯ СХЕМА; АЛГОРИТМ МАМДАНИ.
In this paper finite logical automata and combinational circuit models using fuzzy logic are considered. It is shown that fuzzy finite automata and fuzzy combinational circuit simplify the programming of material area and are more flexible than their traditional non-fuzzy analogs. The comparison of automata and circuit implemented with the help of a specific example demonstrates that a fuzzy circuit generates the same output much faster than fuzzy automata.
FUZZY LOGIC; FUZZY AUTOMATA; FUZZY COMBINATIONAL CIRCUIT; MAMDANI'S ALGHORITM.
Введенное Заде в 1965 г. [1] понятие «нечеткого множества» позволило построить аппарат нечеткой логики и использовать его для тех приложений, где знания человека-эксперта плохо формализуются [2, 3]. В дальнейшем получили распространение «нечеткие автоматы с памятью» [4—7]. В настоящее время теория нечетких автоматов активно развивается, для них построено несколько видов моделей, отличающихся от традиционных (четких) автоматов наличием нечетких состояний и нечетких переходов между состояниями [8—11]. Однако при конкретной реализации таких автоматов встречаются некоторые трудности, препятствующие их широкому распространению. Дело в том, что «память» автомата задается неявно с помощью введения «состояний» автомата и переходов между ними. Поэтому при решении задач
трудно сделать оптимальный выбор числа состояний, как это обсуждается в работах [12—19] (для четких автоматов) и [8—11] (для нечетких автоматов). Другими словами, обращение к концепции состояний усложняет анализ предметной области и процедуру расчета выходного сигнала на каждом шаге работы автомата. Автоматы без памяти (комбинационные схемы) хотя и не имеют указанного недостатка, но без необходимой доработки не могут решить всего класса прикладных задач.
Цель данной работы состоит в том, чтобы определить условия реализации нечеткого автомата с помощью модифицированной нечеткой комбинационной схемы (МНКС), которая анализирует содержимое внешнего блока памяти (ВБП). Оказывается, что таким путем можно сохранить функциональность нечеткого автомата с конечной
памятью (НАКП) без обращения к понятию «состояния». МНКС, соответствующая автомату, в каждый момент времени t анализирует содержимое ВБП, хранящего несколько последовательных значений входных параметров x(t), взятых в моменты времени t - £Д?, где к принимает значения к = 0, 1, ..., p. Такой подход оказывается эффективным при решении многих конкретных задач. проблема выбора числа состояний сводится к выбору объема (или «глубины») памяти ВБП, равного р +1. Также облегчается и подбор функций истинности, соответствующих знаниям экспертов предметной области, что позволяет более эффективно добиться соответствия нечеткой модели и описываемой с ее помощью предметной области. Кроме того, для МНКС проще формулируются нечеткие правила вывода, т. к. в этом случае возникает возможность использовать известные алгоритмы нечеткого управления, предложенные Мамдани [20], Такаги-Сугено [21], в наших работах [22, 23] и др.
В настоящей статье кратко описывается схема работы четкого автомата. Показано, что переход обычного «четкого» автомата к «четкой» модифицированной комбинационной схеме возможен только для автомата с конечной памятью (АКП). Понятие об АКП введено в работе Брауэра [12]. Значение выходной переменной у(?) АКП в текущий момент времени t может быть выражено в виде функции от значений входных сигналов за конечный промежуток времени. Показано, что и нечеткий авто мат с конечной памятью может быть сведен к соответствующей модифицированной нечеткой комбинационной схеме.
Дается более удобная, чем обычно [4—11], формализация описания работы нечеткого автомата, работы нечеткой комбинационной схемы. С самого начала вводятся лингвистические переменные, которыми описываются входные и выходные переменные, а также состояния автомата, определяются «универсумы» (универсальные множества), на которых определены нечеткие множества, описывающие значения лингвистических переменных. Автоматные функции задаются на языке вве-
денных лингвистических переменных, что позволяет формализовать процесс перехода от нАКП к мнКС и процесс нечеткого вывода выходных параметров.
Описывается методика преобразования нечеткого автомата с конечной памятью к модифицированной комбинационной схеме, анализирующей текущее содержание внешнего блока памяти. На конкретном примере нечеткого автомата, обеспечивающего регулирование температуры некоторого объекта, демонстрируются преимущества предлагаемого подхода.
Представление «четкого» автомата в виде модифицированной комбинационной схемы
Как известно, логические («четкие») автоматы с памятью (см., например, [12, 13]) описываются кортежем {х, у, 5, ¥, О}, где х — набор векторов входных переменных, у — набор векторов выходных сигналов, я — набор состояний автомата, ¥ и О — функция переходов и функция выходов соответ-
ственн°: а = ^А, х), у = <?(*„ х). Для конечных автоматов каждый из наборов векторов х и у, а также набор состояний А являются конечными.
В конкретных приложениях используются также автоматы с конечной памятью АКП (рис. 1 а), понятие о которых было введено в [12]. Работа таких автоматов оказывается эквивалентной отображению вида
У = М - рД Г , ..., -Д t , ХГ , У -дД ? ,...
..., yt-2дГ, у-Д?)' (1)
где хРм, ... ■> , — значение векторов входной переменной; у^,..., у(, у-значения векторов выходной переменной; р и д — конечные положительные целые числа, д < р.
Легко видеть, что отображение (1) для конечного автомата может быть реализовано с помощью комбинационной схемы (КС), анализирующей ВБП. В текущий момент времени ^ в ВБП хранится совокупность аргументов отображения (1)
хиРм, ...' -А , , у-аД' У г-2дс' у-ДС ' а роль комбинационной схемы состоит в том, чтобы в зависимости от содержания ВБП определить значение выходной пере-
менной у1 в соответствии с (1). Далее мы ограничиваемся более простым, но практически важным случаем, когда отображение (1) имеет вид
У = К - - м г»...»- - д г >-). (2) Это значит, что для работы КС в блоке памяти достаточно сохранять значения
а)
только входных переменных в текущий момент времени / и в предшествующие моменты времени t -Аt > ... > t - рАt. Далее, параметр р будем называть «глубиной» памяти входных переменных. применение развиваемого подхода для более общего случая, соответствующего зависимости (1), не представляет особых затруднений.
^ \ л'
Рис. 1. Алгоритм работы автомата «умный отец» (а) и соответствующей комбинационной схемы, анализирующей внешний блок памяти (б)
Таким образом, предполагается, что содержанием М ВБП (рис. 1 б) является последовательность из р + 1 входных перемен-
ных M (t) = {xt _
pA t'
xt - A t, xt}. Содержание памяти М обновляется на каждом шаге по типу FIFO (first input, first output). Комбинационная схема анализирует набор значений входных переменных xt pAt, ..., xt-A, xt, которые находятся в данный момент в ВБП. Каждому набору xt pAt,..., л:,-A, xt сопоставляется определенное значение выходной переменной yt.
Для иллюстрации рассмотрим в упрощенном виде автомат «умный отец» (рис. 1 а), предложенный в книге Ю.Г. Карпова [13]. В зависимости от оценок сына x, принимающих значения 2 или 5, автомат выбирает одну из возможных реакций отца: y0 — ругать сына, y1 — успокаивать сына, y2 — надеяться, y3 — радоваться. Представление этого автомата в виде комбинационной схемы, анализирующей внешний БП, получено в работе [14] (рис. 1 б).
Для простоты в данной статье рассматривается автомат Мура. Число реакций отца сокращено с 6 до 4. Представление полного автомата «умный отец» в виде комбинационной схемы приведено в [14].
Таблица 1
Таблица переходов между состояниями и выходных сигналов «четкого» автомата «умный отец»
x S
SO S1 S2 S3
2 SO SO S1 S1
5 S2 S2 S3 S3
У y0 y1 y2 y3
таблица 2 Зависимость реакции автомата «умный отец»
xk-1, xk Реакция отца
2, 2 yo
5, 2 y1
2, 5 y2
5, 5 y3
Автомат «умный отец» можно также задать с помощью таблицы переходов между состояниями и выходных сигналов (табл. 1).
Как можно убедиться путем непосредственной проверки, этот автомат имеет конечную память. Действительно, оказывается, что в каком бы из состояний 50, 51, 52, 53 ни находился автомат в момент времени t - Аt, при заданной последовательности из двух входных переменных х(_А(, xt автомат выдает одно и то же значение выходной переменной у. То есть в данном случае реализуется отображение yt = к(х(х(), показанное в табл. 2. Отсюда следует, что он может быть реализован в виде комбинационной схемы и внешнего блока памяти (рис. 1 б), который хранит две последние оценки М) = , х(}. Схема «анализирует» содержимое ячеек блока памяти
м0(0 = х,^, м^о = х.
Нечеткий автомат
Модель нечеткого автомата используется в следующих случаях: когда предметная область описывается экспертом лингвистическими (словесными) правилами; трудно разработать достаточно простую математическую модель предметной области; необходима высокая гибкость в настройках системы управления; требуется расширить область значений входных параметров «четкого» автомата без введения дополнительных состояний и др.
Будем исходить из того, что в основе модели нечеткого автомата НАКП лежит некоторый четкий автомат с конечной памятью (АКП). Для описания этого АКП вводятся переменные х, у, я (см. обозначения, введенные в предыдущем разделе), принимающие значения на конечных множествах А, В, С (х е А, у е В, $е С). Для АКп также считаются известными автоматные функции ^ х,),
у( = <7(^, х,), которые могут быть заданы табличным способом. Далее, при переходе к модели нечеткого автомата, множества А, В, С мы будем считать «универсальными» множествами, на которых будут задаваться нечеткие подмножества, описывающие лингвистические переменные.
от последовательности входных сигналов x, ,, x.
Для описания НАКП введем «лингвистические» переменные: а, в, у, где а, в — входная и выходная переменные, а у — переменная состояния. Каждая из величин а, в и у принимает значения из наборов {а0,а!,...,аи}, (в0,в1,-,в]}, {у 0, у!,..., у№} соответственно. Величины а,., , е [0, и], Ру, у £ [О, V], Ук, к е [О, м;] количественно описываются нечеткими подмножествами введенных выше универсумов А, В, С соответственно с помощью функций принадлежности (л), () или цук (^). Далее мы будем отождествлять лингвистические переменные и описывающие их нечеткие множества.
Алгоритм работы нечеткого автомата формулируется на языке лингвистических переменных. переходы между состояниями автомата и значение выходного сигнала выражаются нечеткими автоматными функциями:
у,+д, =Г(а,, у,), в =в(а^, У,). (3)
Как и в случае четкого конечного автомата, функции Г и В могут быть заданы табличным методом (см., например, табл. 3). Эти таблицы совпадают с аналогичными таблицами автоматных функций четкого автомата, но с тем отличием, что как в заголовки таблиц, так и в их ячейки должны быть подставлены соответствующие лингвистические переменные. Автоматные функции нАКп могут быть заданы и с помощью более кратких индексных обозначений:
Z Ei,n,m ai Л Yn ^ Ym;
alli, n
Z Si,n,у ai Л Yn ^ Pу ,
(4)
где введены матрицы переходов в, т и выходов 8, п у автомата, компоненты которых принимают значения, равные нулю или единице, в соответствии с заданными конкретными правилами «если ..., то...». В таком же виде могут быть выражены автоматные функции и АКП. Логические связки л, ^ между нечеткими множествами могут быть реализованы по известным правилам, введенным Заде. В случае автомата Мура выходной сигнал определяется толь-
ко текущим состоянием автомата и правила (4) сводятся к следующему виду:
Z Si, n, m а Л Yn ^ Ym; Z8n, у Yn ""> Ру • (5)
alli, n alln
Отметим, что состояния нечеткого автомата описываются с помощью лингвистической переменной y- Значения этой переменной задаются нечеткими подмножествами универсального множества состояний С, включающего все состояния АКП, и описываются функциями принадлежности ц.^ (£) • Поэтому можно сказать, что у НАКП с разной степенью активны сразу несколько состояний соответствующего ему АКП, причем степень активности определяется функцией ц.^ (s).
Для численной реализации работы НКАП будем считать, что в текущий момент времени t известны параметры xt, st. Практически входные и выходные параметры нечеткого автомата (как и у четкого), задаются некоторыми «четкими» числами. Например, на входе автомата — это показания датчиков, а на выходе — уровень сигнала управления [4—6]. Отличие нечеткого автомата от «четкого» заключается в использовании другого алгоритма преобразования входного сигнала в выходной.
Вычислительная процедура строится следующим образом. Для заданных значений xt, st с помощью функций (x), Ц. (s) определяем их степени принадлежности нечетким множествам а., , которые представляют собой некоторые наборы чисел, лежащих на отрезке [0, 1]. Для вычисления величин yt+At, st+At воспользуемся известным алгоритмом Мамдани [20] и правилами Заде оперирования над нечеткими множествами [1]. Здесь могут быть также применены алгоритмы и других авторов [2, 3, 21—23]. Как и в работе [23], введем вспомогательные функции Q(s), R(y), позволяющие кратко представить алгоритм Мамдани:
Q(s) = V Si, m тМЦа; (xt X Ц.п (st ), Ц.т (s));
i, n, m ' ' ' '
R(y) = V. Si, n,у min(^i(xtX Ц.п(stX Цр;(y)).
(6)
С помощью этих функций найдем средние значения
all i, n
J sQ(s)ds J yR(y)dy
— all S
s =
у = ally ^ .. , (7)
J Q(s)ds ' J R(y)dy '
ally
которые (после округления до целого числа) мы отождествим со значениями параметров s, y в момент времени t + At :
s,+At = round (s); y+At = round (y). (8)
На этом завершается обработка значения входного сигнала, и автомат ожидает поступление на вход следующего сигнала.
Модифицированная нечеткая комбинационная схема
Прежде чем перейти к решению основной задачи данной работы - построению мнКс, соответствующей заданному НАКП, в этом разделе рассмотрим принцип работы мнКс.
Алгоритм работы мнКс определяется набором правил, сформулированных экспертом на языке лингвистических переменных а ив, соответствующих входным и выходным параметрам (введение лингвистической переменной состояний здесь не требуется). Они имеют значения а о, а 1,..., а ^, Po, Рц., Pv, которые количественно описываются функциями (x) и (y), (пример функций см. на рис. 4). Входные и выходные параметры принимают значения на универсальных множествах A, B, так что x е А, y е B. В момент времени t на вход комбинационной схемы подается последовательность значений входного параметра at_ At, ..., аt_At, at за некоторый промежуток времени (p + 1)At. Значение выходного сигнала задается некоторой функцией р, = Н(а t_pAt,..., а , а t). Эта функция может быть задана как таблица (см., например, табл. 7). Для дальнейшего использования перепишем ее в виде индексной записи:
pj = H (а ¡Р '...'а/1»а i о). (9)
Функциональная зависимость H задается правилами вида «Если ..., то ...» и в терминах логических операций над нечеткими множествами может быть сформулирована в индексной записи следующим образом:
Л 5р, ..., /1,/о,jар Л ...
allip, ..., /1, i0
... Ла/1 Ла/о ^ р j .
(10)
Значения компонент матрицы выходно-
го сигнала
5
ip, ..., i 1, i0, j
определяются задан-
ными правилами «Если ..., то ...».
Количественная реализация мнКс сводится к нахождению параметра у, по заданной последовательности значений входного параметра х( _ р А, ..., х( , х(. По этим величинам входного параметра находим значения функций принадлежности для всех значений входной лингвистической переменной а (х_А ),..., Ца,0 0х,_А, ) , Ца/0 (х ) ,
которые являются некоторыми числами из отрезка [0, 1]. Для вычисления у, в соответствии с алгоритмом Мамдани [20] строим вспомогательную функцию ¥( у), имеющую следующий вид:
V(у) = . У„ Ар ... i0 i т1П(^а«р (х, _ рА, ) Л ...
(11)
р, ..., !0, |
... 0(х, ) Л^Ру ( у)).
с помощью этой функции найдем сред нее значение
— all y
У = У
J yV(y)dy
J V(y)dy '
(12)
all y
которое (после округления до целого числа) мы отождествим со значениями параметра y в момент времени t:
yt = round (y). (13)
на этом завершается обработка очередного значения входного сигнала, и МНКС ожидает поступление на вход следующего сигнала.
Построение МНКС по заданному НАКП
Для любого нечеткого автомата с конечной памятью можно построить эквивалентную нечеткую комбинационную схему, анализирующую содержимое внешнего блока памяти. Выходной сигнал мнКс, вообще говоря, не будет в точности совпадать с сигналом НАКП, но будет соответствовать ему с высокой точностью. Отметим, что для связи АКП и мКс выполняется полное со-
ответствие выходных сигналов.
Для построения МНКС необходимо найти функцию р у = H (а р,..., а а, а 10) по заданным автоматным функции НАКП. Эта задача может быть решена следующим образом. Будем считать, что нам известна функция yt = h(xt_рa,...|)xt_At,xt), которая задает мКс для четкого автомата АКП, на основе которого построен НАКП. Поскольку таблицы переходов четкого и нечеткого автоматов совпадают, то будут совпадать и функции выходов соответствующих им комбинационных схем. Более конкретно это можно выразить следующим образом. Записывая функцию (9) в табличном виде (10), мы можем утверждать, что эта таблица в точности совпадает с соответствующей таблицей для четкой комбинационной схемы.
Решение задачи терморегулирования
Эффективность использования введенных понятий НАКП и МНКС и их сравнение между собой покажем на примере задачи управления температурным режимом в производственной установке, в которой необходимо поддержание постоянной температуры T = To (т. н. «температура уставки»). В системе наблюдается отток тепла во внешнюю среду Q = -kQ(T - T). Возможны случайные колебания температуры, вызванные внешними факторами P(t). Требуется рассчитать мощности нагревателя wh(t) и охладителя wc(t), позволяющие в случае внешних случайных воздействий вернуть температуру объекта к значению уставки. также при формировании выходного сигнала wc, wh требуется проанализировать историю изменения входной температуры T, чтобы минимизировать время отклика и перерегулирование (т. н. «заброс»).
Общее уравнение теплового баланса выглядит следующим образом:
С^Г = - kQ (T - т) + p (t)
+ kh ■ wh(t) - kc ■ wc(t),
(16)
где кк — коэффициент теплоотдачи нагревателя; кс — коэффициент теплопоглощения охладителя; Т — температура окружающей среды.
Ввиду того что в уравнении в общем виде есть нелинейный компонент Р(1), его решение численными методами потребует большого количества времени. С другой стороны, эта же система может быть легко описана с помощью лингвистических правил:
«если температура среды «слишком низкая», то нужно подать «высокую» мощность на нагреватель и «низкую» на охладитель»;
«если температура среды «слишком высокая», то нужно подать «низкую» мощность на нагреватель и «высокую» на охладитель»;
«если температура среды «близка к уста-вочному значению», то нужно подать «низкую» мощность на нагреватель и «низкую» на охладитель.
В связи с этим данную задачу предпочтительнее решать методами нечеткой логики.
Обозначим параметры, используемые при формировании управляющего воздействия следующим образом:
Т — текущая температура среды в производственной установке, Т е [Тт;п, Ттах]°С;
ис — мощность охладителя,
^ е [0. кстах]Вт;
ик — мощность нагревателя, ик е [0, ик^Вт.
В дальнейшем параметр Т играет роль входа, а параметры ис и ик — выходов системы.
Анализ правил позволяет выделить следующие значения лингвистических переменных:
а0 = «температура среды низкая», а1 = «температура среды близка к уставочному значению», а2 = «температура среды высокая»;
вс0 = «мощность охладителя низкая», в с = «мощность охладителя высокая»;
вко = «мощность нагревателя низкая», в к = «мощность нагревателя высокая».
нАкП-терморегулятор. Построим четкий автомат Мура, который по определению [12, 13, 15] формирует управляющий сигнал в зависимости от своего текущего состояния. В рассматриваемой системе возможны три управляющих воздействия: нагрев, охлаждение, стационарный режим.
Нагрев
Поддержание текущей температуры
Охлаждение
Рис. 2. Схема состояний и переходов нечеткого автомата Мура для управления температурой
Нагрев Поддержание текущей Охлаждение
температуры
Рис. 3. Схема состояний и переходов нечеткого автомата Мура с конечной памятью для управления температурой
С учетом этого введем лингвистическую переменную у для описания состояния автомата со значениями у0 = «нагрев», = «без изменений», у2 = «охлаждение».
Количественно она описывается множеством допустимых номеров состояний автомата 5 е = [0,2], на котором для каждого значения лингвистической переменной ук, к е {0,1,2} определены нечеткие подмножества, заданные функциями принадлежности, рис. 4 г.
Построим схему состояний автомата (рис. 2).
К сожалению, такой автомат обладает бесконечной памятью, т. к. сколь угодно длинная последовательность входных сигналов а0 -а2 - (а0 - а2) может перевести автомат в любое из его состояний. Внесем корректировку в схему состояний с учетом наличия постоянного оттока тепла из системы (рис. 3).
На языке введенных лингвистических переменных исходные правила формулируются следующим образом:
«Если в момент времени t состояние автомата у = ух («поддержание») и температура среды а = а 1 («близка к уставоч-ному значению»), то в момент времени t + Дt состояние автомата будет у' = (поддержание»), температура охладителя вс = вс0 («низкая»), температура нагревателя р/г = рИ0 («низкая»).
Все правила для описания переходов и выходов в автомате удобнее сформулировать в виде таблицы (табл. 3).
по табл. 3 сформируем матрицы переходов и выходов (табл. 4—6).
Количественное описание всех лингвистических переменных (при Т0 = 200 °С) зададим функциями истинности (Т), 1рс (™с)> () и цтт (5), изображенными на рис. 4.
Таблица 3
Таблица переходов и выходов нечеткого автомата «терморегулирование» на языке лингвистических переменных
а У
То Ъ У 2
а0 У'о Т'о У о
а1 У'1 У '1 У' 1
а2 У' 2 У' 2
Рс Ш, вСо
рй РЙ1 вйо вйо
Матрица переходов е. п т
«терморегулирование»
Таблица 4 нечеткого автомата
т
1, п 0 1 2
0, 0 1 0 0
0, 1 1 0 0
0, 2 1 0 0
1, 0 0 1 0
1, 1 0 1 0
1, 2 0 1 0
2, 0 0 1 0
2, 1 0 0 1
2, 2 0 0 1
Таблица 5
Матрица выходного сигнала для охладителя 6сп нечеткого автомата «терморегулирование»
] п
0 1 2
0 1 1 0
1 0 0 1
Таблица 6
Матрица выходного сигнала для нагревателя Ькп ] нечеткого автомата «терморегулирование»
] п
0 1 2
0 0 1 1
1 1 0 0
(17)
Дальнейший расчет управляющего воздействия осуществляется по алгоритму, описанному выше.
МНКС-терморегулятор. Построим
мнКс для управления температурным режимом в описанной выше установке на основе разработанного ранее НАКП.
Проанализируем последовательности значений входных параметров, которые обрабатывает автомат. например, подстановкой в функцию В(а0, у0) вместо состояния у0 различных функций переходов Г в это состояние, получаем набор зависимостей выходного параметра от значений входных параметров на один шаг глубже (раньше) по времени:
рс0 = в(а,0, у0) = в(а0, г(а0, у0)) =
= в (1)(а o, а o, У о);
Рс0 = в(а0, у0 ) = в(а0, г(а0, у:)) = = в(1)(а 0, а 0, у 1);
Рс0 = в(а0, у0) = в(а0, г(а0, у2)) = = в°1)(а^ а0, У2).
Из формул видно, что в каком бы состоянии у0, у1 или у2 не находился автомат в момент времени t _ А,, если последовательность значений температуры объекта характеризуется лингвистическими термами а0 и а0 («низкая» и снова «низкая»), тогда необходимо на охладитель подать напряжение рс0 («низкое»). Другими словами, данный результат зависит от входных параметров и не зависит от состояния:
р с0=В (а0, а 0). (18)
В итоге мы получаем одно из лингвистических правил, которое описывает работу нечеткой комбинационной схемы. Аналогично находятся остальные правила. Запишем их коротко в табл. 7.
Алгоритм выбора выходных сигналов МНКС также можно привести в виде блок-схемы (рис. 5).
По табл. 7 сформируем матрицы выходов (табл. 8, 9).
Сравнение результатов работы НАКП, МНКС и ПИД-регулятора. Сравним управляющие воздействия, полученные обоими
а)
>@ в 5 ^
в к
Н ЗК
3 &
и Й
В § £ »
о &
1 - «низкая»
2 - «равна уставочному
значению»
3 - «высокая»
200 250 300
Температура объекта Т, °С
б)
>5 §
1 - «низкая»
2 - «высокая»
20 40 60
Мощность охладителя пс, Вт
в)
1 - «низкая»
2 - «высокая»
20 40 60
Мощность нагревателя Вт
г)
§ я
!? «
1,5
0,5
1 1 1 1 2 3
/"\ "
/ \ / \
/ \
/ v / ^
1-" > '1 ■
-1
1 - «нагрев»
2 - «без изменений»
3 - «охлаждение»
2 3
Номер состояния «
Рис. 4. Функции истинности термов лингвистических переменных: а - «температура среды»; б - «мощность охладителя»; в - «мощность нагревателя»;
г - «состояние автомата»
Таблица 7
Зависимость выходных сигналов МНКС «терморегулирование» от входных
ай' ая вс вк
- а0 вСо вк 1
-, а1 вСо вк о
а0, а2 вСо вко
ар а2 ш вко
а2 а2 вко
алгоритмами с помощью численнои модели объекта в среде МаШСАБ. Расчет температуры в модели осуществляется по закону (16). Коэффициенты в модели имеют значения кд = 0,01, кс = 0,3, кк = 0,3. Температура внешнеИ среды Т = 20 °С. Сформируем внешнее «случайное» воздействие на температуру объекта в момент времени t = 2. Такое воздействие в реальной производственной установке может быть связано с добавлением
в нее нового реагента, температура которого отличается от температуры уставки.
рассчитаем изменение температуры под управлением НАКП, МНКС и, для демонстрации эффективности, ПИД-регулятора с коэффициентами кп = 2, ки = 1,5, кд = 1,3 (рис. 6). Приведенные коэффициенты были подобраны эмпирически в ходе эксперимента так, чтобы минимизировать заброс и колебания.
Сравним быстродействие всех моделей. Для этого найдем суммарное время, потребовавшееся для расчета приведенных выше последовательностей температур (табл. 10).
По результатам моделирования можно сделать следующие выводы:
• МНКС формирует управляющий сигнал, аналогичный управляющему сигналу НАКП с высокой точностью;
• МНКС работает быстрее НАКП;
• нечеткие устройства по скорости формирования управляющего сигнала не уступают ПИД-регулятору;
Рис. 5. Блок-схема алгоритма выборауправляющего воздействия в МНКС «терморегулирование»
Таблица 8 Матрица для расчета мощности охладителя
с<1, <0, 1
6с,, ,„ . МНКС «терморегулирование»
Таблица 9 матрица для расчета мощности нагревателя
6к
<1, <0,1
МНКС «терморегулирование»
<1, <0 ]
0 1
0, 0 1 0
0, 1 1 0
0, 2 1 0
1, 0 1 0
1, 1 1 0
1, 2 0 1
2, 0 1 0
2, 1 1 0
2, 2 0 1
<1, <0 ]
0 1
0, 0 0 1
0, 1 1 0
0, 2 1 0
1, 0 1
1, 1 1 0
1, 2 1 0
2, 0 1
2, 1 1 0
2, 2 1 0
У 250
из н м
и
Ю О св
св
5? В
I
Н
200
150
0 1 2 3 4 5 6 7
8 9 10 11 12 13 14 15 Шаги по времени г
Рис. 6. Температура среды в производственной установке. Компенсирование возмущений с помощью НАКП, МНКС, ПИД-регулятора:
1 — температура уставки Т = 200 °С; 2 — температура объекта под управлением ПИД-регулятора; 3 — температура объекта под управлением НАКП; 4 — температура объекта под управлением МНКС
• нечеткие устройства обладают большой гибкостью в настройках, в связи с чем их намного легче настроить для достижения эффективного управления, чем ПИД-регулятор;
• в случае нечетких устройств не составляет труда добиться отсутствия эффекта перерегулирования.
Показано, что работу нечеткого автомата с конечной памятью можно описать с помощью модифицированной нечеткой комбинационной схемы. Результирующие сигналы автомата и схемы в обоих случаях совпадают между собой с высокой точностью. Нечеткие комбинационные схемы, так же как и нечеткие автоматы, обладают гибкостью
Таблица 10
Полные времена расчетов изменения температуры в установке под управлением различных устройств
Управляющее устройство Время расчета, с
НАКП 0,047
МНКС 0,015
ПИД-регулятор 0,016
настройки и более широкой областью допустимых значений входных параметров по сравнению с «четкими» автоматами.
Однако нечеткие комбинационные схе-
мы обладают большей простотой реализации по сравнению с нечеткими автоматами, т. к. при их построении можно напрямую применять широко известные алгоритмы нечеткого логического вывода. Быстродействие МНКС оказывается выше, чем быстродействие НАКП.
Быстродействие нечетких устройств оказывается на уровне быстродействия ПИД-регулятора. Однако нечеткие устройства обладают большей простотой настройки по сравнению с ПИД-регулятором, что позволяет избавиться от эффекта перерегулирования.
список литературы
1. Zadeh L.A. Fuzzy Sets // Information and Control. 1965. Vol. 8. Pp. 338-353.
2. Mohammadian M., Sarker R.A., Yao X. Computational intelligence in control. Idea Group Publishing, 2003.
3. Пегат А. Нечеткое моделирование и управление. Пер. с англ. М.: Бином, 2009. 798 с.
4. Santos E. Maximin automata // Information and Control. 1968. Vol. 13. Pp. 363-377.
5. Topencharov V., Stoeva S. Fuzzy-topological automata // Fuzzy Sets and Systems. 1985. Vol. 16. Iss. 1. Pp. 65-74.
6. Reyneri L.M. An Introduction to Fuzzy State Automata. Biological and Artificial Computation: From Neuroscience to Technology // Lecture Notes in Computer Science. 1997. Vol. 1240. Pp. 273-283.
7. Malik D.S., Mordeson J.N., Sen M.K. Minimization of fuzzy finite automata // Information Sciences. 1999. Vol. 113(3-4). Pp. 323-330.
8. Mordeson J.N., Malik D.S. Fuzzy automata and languages: theory and applications. Chapman & Hall/CRC, 2002.
9. Belohlavek R., Krupka M. Approximate minimization of fuzzy automata. Palacky University, 2007.
10. Bartolomiej P. A traffic model based on fuzzy cellular automata // J. of Cellular Automata, 2013. Vol. 8. No. 3-4. Pp. 261-282.
11. Micic I., Jancic Z., Ignjatovic J, Ciric M. Determinization of fuzzy automata by means of the degrees of language inclusion. [электронный ресурс] / URL: http://arxiv.org/abs/1410.6063 (дата обращения 09.12.2014).
12. Брауэр В. Введение в теорию конечных автоматов. Пер. с нем. М.: Радио и связь, 1987. 392 с.
13. Карпов Ю.Г. Теория автоматов. СПб.: Питер, 2003. 208 с.
14. Марценюк М.А. Операторно-логические
схемы как средство изучения алгоритмов в учебных курсах по математике и информатике // Прикладная информатика. 2010. № 5(23). с. 43-54.
15. Хопкрофт Д., Мотвани Р., Ульман Д. Введение в теорию автоматов, языков и вычислений. М.: ИД «Вильямс», 2002. С. 528.
16. Berstel J., Boasson L., Carton O., Fagnot I. Minimization of Automata, Automata: from Mathematics to Applications, European Mathematical Society [электронный ресурс] / URL: http://arxiv.org/abs/1010.5318 (дата обращения 09.12.2014).
17. Campeanu C. Simplifying Nondeterministic Finite Cover Automata // Electronic Proceedings in Theoretical Computer Science. 2014. Vol. 151. Pp. 162-173.
18. Anderson J.A. Automata Theory with Modern Applications. Cambridge University Press, 2006.
19. Lei H., Li Y.M. Minimization of states in automata theory based on finite lattice-ordered monoids // Information Sciences. 2007. Vol. 177(6). Pp. 1413-1421.
20. Mamdani E.H. Application of fuzzy algorithms for the control of a simple dynamic plant // In Proc. IEEE. 1974. Pp. 121-159.
21. Takagi T., Sugeno M. Fuzzy identification of systems and applications to modelling and control // IEEE Trans. On SMC 15. 1985. Pp. 116-132.
22. Марценюк М.А., Поляков В.Б., Селетков И.П. Матричная реализация алгоритмов нечеткого вывода // научно-технические ведомости СПбГПУ. Информатика. Телекоммуникации. Управление. СПб.: Изд-во СПбГПУ, 2012. № 6(162). С. 133-141.
23. Марценюк М.А. Матричное представление нечеткой логики // нечеткие системы и мягкие вычисления. Научный журнал Российской ассоциации нечетких систем и мягких вычислений. 2007. Т. 2. № 3. С. 7-35.
references
1. Zadeh L.A. Fuzzy Sets, Information and Control, 1965, Vol. 8, Pp. 338-353.
2. Mohammadian M., Sarker R.A., Yao X.
Computational intelligence in control. Idea Group Publishing, 2003.
3. Pegat A. Nechetkoe modelirovanie i upravlenie
[Fuzzy logic modelling and control], Moscow: Binom Publ., 2009, 798 p. (rus)
4. Santos E. Maximin automata, Information and Control, 1968, Vol. 13, Pp. 363-377.
5. Topencharov V., Stoeva S. Fuzzy-topological automata, Fuzzy Sets and Systems, 1985, Vol. 16,
Issue 1, Pp. 65-74.
6. Reyneri L.M. An Introduction to Fuzzy State Automata. Biological and Artificial Computation: From Neuroscience to Technology, Lecture Notes in Computer Science, 1997, Vol. 1240, Pp. 273-283.
7. Malik D.S., Mordeson J.N., Sen M.K. Minimization of fuzzy finite automata, Information Sciences, 1999, Vol. 113(3-4), Pp. 323-330.
8. Mordeson J.N., Malik D.S. Fuzzy automata and languages: theory and applications. Chapman & Hall/CRC, 2002.
9. Belohlavek R., Krupka M. Approximate minimization of fuzzy automata. Palacky University, 2007.
10. Bartolomiej P. A traffic model based on fuzzy cellular automata, Journal of Cellular Automata, 2013, Vol. 8, No. 3-4, Pp. 261-282.
11. Micic I., Jancic Z., Ignjatovic J, Ciric M.
Determinization of fuzzy automata by means of the degrees of language inclusion. Available: http://arxiv. org/abs/1410.6063 (Accessed 09.12.2014).
12. Brauer Yu. Vvedenie v teoriyu konechnyih avtomatov. Moscow: Radio i svyaz Publ., 1987, 392 p. (rus)
13. Karpov U.G. Teoriya avtomatov. St. Petersburg: Piter Publ., 2003, 208 p. (rus)
14. Martsenyuk M.A. Operatorno-logicheskie shemi kak sredstvo isucheniya algoritmov v ychebnih kursah po matematike i informatike, Prikladnaya matematika [Science journal of applied informatics], 2010, No. 5(23), Pp. 43-54. (rus)
15. Hopkroft D., Motvani R., Ulman D. Vvedenie v teoriyu avtomatov, yazyikov i vyichisleniy [Introduction to Automata Theory, Languages, and Computation]. Moscow: Vilyams Publ., 2002, 528 p. (rus)
16. Berstel J., Boasson L., Carton O., Fagnot I.
Minimization of Automata, Automata: from Mathematics to Applications, European Mathematical Society. Available: http://arxiv.org/abs/1010.5318 (Accessed 09.12.2014).
17. Campeanu C. Simplifying Nondeterministic Finite Cover Automata, Electronic Proceedings in Theoretical Computer Science, 2014, Vol. 151, Pp. 162-173.
18. Anderson J.A. Automata Theory with Modern Applications. Cambridge university Press, 2006.
19. Lei H., Li Y.M. Minimization of states in automata theory based on finite lattice-ordered monoids, Information Sciences, 2007, Vol. 177(6), Pp. 1413-1421.
20. Mamdani E.H. Application of fuzzy algorithms for the control of a simple dynamic plant, In Proc. IEEE, 1974, Pp. 121-159.
21. Takagi T., Sugeno M. Fuzzy identification of systems and applications to modelling and control, IEEE Trans. On SMC 15, 1985, Pp. 116-132.
22. Martsenyuk M.A., Polyakov V.B., Selet-kov I.P. Matrichnaya realizatsiya algoritmov nechet-kogo vyivoda [Matrix Implementation of Fuzzy Inference Algorithms], Nauchno-tehnicheskie vedomosti SPbGPU. Informatika. Telekommunikatsii. Upravlenie [St. Petersburg State Polytechnical University Journal. Computer Science. Telecommunications and Control System]. St. Petersburg: SPbGPU Publ., 2012, No. 6(162), Pp. 133-141. (rus)
23. Martsenyuk M.A. Matrichnoe predstavlenie nechetkoy logiki [Matrix Representation of Fuzzy Logic], Nechetkie sistemyi i myagkie vyichisleniya. Nauchnyiy zhurnal Rossiyskoy assotsiatsii nechetkih sistem i myagkih vyichisleniy [Fuzzy Systems and Soft Computing. Science Journal of Russian Association of Fuzzy Systems and Soft Computing], 2007, Vol. 2, No. 3, Pp. 7-35. (rus)
МАРЦЕНЮК Михаил Андреевич — заведующий кафедрой компьютерных систем и телекоммуникаций Пермского государственного национального исследовательского университета, доктор физико-математических наук.
614990, Россия, г. Пермь, ул. Букирева, д. 15. E-mail: [email protected]
MARTSENYUK, Mikhail A. Perm State University. 614113, Bukireva Str. 15, Perm, Russia. E-mail: [email protected]
СЕЛЕТКОВ Илья Павлович — аспирант кафедры компьютерных систем и телекоммуникаций Пермского государственного национального исследовательского университета. 614990, россия, г. пермь, ул. Букирева, д. 15. E-mail: [email protected]
SELETKOV, Ilya P. Perm State University. 614113, Bukireva Str. 15, Perm, Russia. E-mail: [email protected]
© Санкт-Петербургский государственный политехнический университет, 2014