УДК 681.2 ISSN 1992-6502 (Print)
DOI 10.54708/19926502_2022_26296126 ISSN 2225-2789 (Online)
MODEL OF DECISION MAKING ОN CONTROL OF CASSETTE CONVEYOR MOVEMENT
IN MECHANICAL PROCESSING PRODUCTION
I. S. Zeynalabdiyeva
Sumgait State University
irada0907@mail. ru Submitted 2022, May 12
Abstract. A fuzzy inference mechanism is presented to control the movement of a cassette conveyor in the production of machining. In MATLAB environment, fuzzification of input and output linguistic variables is implemented using the Fuzzy Logic Toolbox package. As a result of fuzzification of input and output linguistic variables , a base of fuzzy production rules was formed. The degrees of truth of conditions in the fuzzy production rules are calculated. The activation and accumulation procedures were performed and all the values of the degrees of truth for each rule were found. Using the Mam-dani algorithm and the center of gravity method, the quantitative estimates of the output linguistic variable were obtained. An interactive window of all input and output linguistic variables by means of trapezoidal membership functions is presented.
Keywords: fuzzy inference; production rule; fuzzification; mtmbership function; cassette conveyor.
МОДЕЛЬ ПРИНЯТИЯ РЕШЕНИЙ ПО УПРАВЛЕНИЮ ДВИЖЕНИЕМ КАССЕТНОГО КОНВЕЙЕРА В ПРОИЗВОДСТВЕ МЕХАНООБРАБОТКИ
И. С. Зейналабдыева
Сумгаитский государственный университет irada0907@mail. ru Поступила в редакцию 12.05.2022
Аннотация. Представлен механизм нечеткого логического вывода для управления движением кассетного конвейера при производстве механической обработки. В среде MATLAB реализована фаззификация входных и выходных переменных с использованием пакета Fuzzy Logic Toolbox. В результате фаззификации входных и выходных переменных для управления движением кассетного конвейера сформированы базы нечетких продукционных правил. Вычислены степени истинности условий в правилах нечеткой продукции, выполнены процедуры активизации и аккумуляции, найдены значения степеней истинности заключений для каждого правила. С применением алгоритма Мамдани с помощью метода центра тяжести получены количественные оценки выходной переменной. Представлено интерактивное окно для входных и выходных переменных с использованием трапециевидных функций принадлежности.
Ключевые слова: нечеткий вывод; продукционные правила; фаззификация; функция принадлежности; кассетный конвейер.
126 2022, Т. 26, № 2 (96)
ВВЕДЕНИЕ
В неопределенной среде моделирования динамических взаимодействующих процессов применяются различные математические и эвристические методы, в частности, теория конечных автоматов, модели параллельно функционирующих асинхронных процессов, сетевые и продукционные модели. Однако при более сложных взаимодействиях активных элементов применение перечисленных подходов не дает желаемого эффекта. Системы, основанные на применении новых принципов обработки информации с использованием методов искусственного интеллекта [1], которые оперируют со знаниями, воспринятыми от человека-эксперта в определенной предметной области, позволяют решать подобные задачи в реальном масштабе времени. Основная проблема при этом заключается в создании базы знаний и разработке эффективных методов представления знаний и систем логического вывода. Нечеткий вывод занимает основное место в нечеткой логике и системах нечеткого управления. Процесс нечеткого вывода представляет собой некоторую процедуру или алгоритм получения нечетких заключений на основе нечетких условий или предпосылок с использованием инструментов аппарата нечеткой логики.
Для создания современных методов управления сложных процессов приходится разрабатывать и уточнять модели, описывающие различные процессы в неопределенной среде. При этом происходит процесс накопления информации, экспертные модели должны быть дополнены и уточнены по мере накопления новых опытных данных, полученных в модельных и экспериментальных условиях. В этой связи разработка модели принятия решений управления кассетного конвейера в производстве механообработки на основе современных методов искусственного интеллекта является актуальной научно-технической задачей.
БАЗА ПРОДУКЦИОННЫХ ПРАВИЛ УПРАВЛЕНИЯ ДВИЖЕНИЕМ КАССЕТНОГО КОНВЕЙЕРА
При разработке модели нечеткого вывода в системе принятия решений по управлению технологическим процессом кассетного конвейера решаются следующие основные задачи: создание базы нечетких продукционных правил; определение входных и выходных переменных и их терм-множеств; фаззификация лингвистических переменных; реализация процедуры агрегирования всех подусловий входных лингвистических переменных и определение их степени истинности; активизация заключений в правилах нечеткой продукции и реализация процедуры дефаззификации выходных переменных.
База правил систем нечеткого вывода предназначена для формального представления эмпирических знаний или знаний экспертов в различных проблемных областях. Входная и выходная лингвистические переменные считаются заданными, если для них определены базовые терм-множества с соответствующими функциями принадлежности для каждого терма [3]. При этом в качестве функций принадлежности термов, как правило, используются трапециевидные функции принадлежности.
В системах нечеткого вывода используются правила нечетких продукций, в которых условия и заключения сформированы в терминах нечетких лингвистических высказываний следующего вида [2-4]: ПРАВИЛО «#»:
ЕСЛИ A1 есть aj И A2 есть а2, ТО A3 есть а3, где A A A3 - названия лингвистических переменных; ap a2, a3 - их значения, которым соответствуют отдельные лингвистические термы из базового терм-множества отдельных лингвистических переменных.
Для фаззификации входных и выходных переменных «коэффициент загрузки входного накопителя обрабатывающего устройства», «скорость движения кассетного конвейера» и «вен-
тиль пневмодвигателя кассетного конвейера» использована трапециевидная функция принадлежности, которая задается следующими выражениями [5]:
^ (~Х, , ~Х 2 , Х^з , ~Х 4 ) —
0,
х - Х!
Х2 " Х1
1,
Х 4 - Х
Х 4 - -■3'
0,
если х < х1;
если х2 < х < х3;
если х3 < х < х4 ;
если х1 < х4 < х;
где х х х х4 - некоторые произвольные действительные числа, удовлетворяющие условию
Х1 ^ Х2 ^Х3 ^ Х4
Далее рассматривается каждое из подусловий вида «А. есть а» системы нечеткого вывода, где а - некоторый терм с известной функцией принадлежности ц(х), тем самым количественное значение Ь. — ц(а.). Эти значения являются результатом фаззификации подусловий «А. есть а». Процедура фаззификации заканчивается тогда, когда будут найдены все значения Ь1 — ц(а.) для каждого из подусловий всех правил, входящих в рассматриваемую базу правил системы нечеткого вывода.
Целью фаззификации является установление соответствия между конкретным значением переменной системы нечеткого вывода и значением функции принадлежности соответствующего ей терма входной лингвистической переменной [3]. После завершения этой процедуры для всех входных переменных должны быть определены конкретные значения функций принадлежности по каждому из лингвистических термов, которые используются в подусловиях базы правил системы нечеткого вывода [6].
Процедура фаззификации выполняется следующим образом: до начала этого процесса должны быть известны конкретные значения всех входных переменных, т.е. множество значений а. £ X. (X. - универсум лингвистической переменной А. ).
Для формирования базы правил систем нечетких продукций определяются входные и выходные лингвистические переменные. В качестве входной лингвистической переменной следует формально использовать следующее: «коэффициент загрузки входного накопителя», «скорость движения кассетного конвейера». В качестве терм-множеств входных лингвистических переменных используются следующие множества:
тх1
нуль; близко к нулю; отрицательно близко к нормальному;
положительно близко кнормальному
Ч
ТХ2 = (минимальное; среднее; максимальное).
В результате фаззификации входных и выходных лингвистических переменных база нечетких продукций для управления движением кассетного конвейера в производстве механообработки состоит из следующих правил:
ПРАВИЛО 1: ЕСЛИ коэффициент загрузки входного накопителя обрабатывающего устройства - нуль; близок к нулю [0,8, 1, 1,2, 1,4] И скорость движения кассетного конвейера - минимальная [2,5, 10, 13], ТО повернуть вентиль пневмодвигателя кассетного конвейера на большой угол вправо [69, 74, 80, 85];
ПРАВИЛО 2: ЕСЛИ коэффициент загрузки входного накопителя обрабатывающего устройства - нуль, близок к нулю [1,1, 1,3, 1,5, 1,7] И скорость движения кассетного конвейера - сред-
2
няя [8, 11, 16, 19], ТО повернуть вентиль пневмодвигателя кассетного конвейера на большой угол вправо [65, 70, 76, 81];
ПРАВИЛО 3: ЕСЛИ коэффициент загрузки входного накопителя обрабатывающего устройства - нуль, близок к нулю [1,4, 1,6, 1,8, 2,0] И скорость движения кассетного конвейера -максимальная [14, 17, 22, 25], ТО повернуть вентиль пневмодвигателя кассетного конвейера на небольшой угол вправо [60, 65,71,76];
ПРАВИЛО 4: ЕСЛИ коэффициент загрузки входного накопителя обрабатывающего устройства - отрицательный, близок к нормальному [1,7, 1,9, 2,1, 2,3] И скорость движения кассетного конвейера - минимальная [14, ,17, 22, 25], ТО повернуть вентиль пневмодвигателя кассетного конвейера на небольшой угол вправо [30, 35,41,46];
ПРАВИЛО 5: ЕСЛИ коэффициент загрузки входного накопителя обрабатывающего устройства - отрицательный, близок к нормальному [1,8, 2,0, 2,4, 2,6] И скорость движения кассетного конвейера - средняя [26, 29, 34, 37], ТО оставить вентиль пневмодвигателя кассетного конвейера без изменений [33, 38, 43, 48];
ПРАВИЛО 6: ЕСЛИ коэффициент загрузки входного накопителя обрабатывающего устройства - отрицательный, близок к нормальному [2,3, 2,5, 2,7, 2,9] И скорость движения кассетного конвейера - максимальная [32, 35, 41, 44], ТО повернуть вентиль пневмодвигателя кассетного конвейера на небольшой угол влево [38, 42, 45, 50];
ПРАВИЛО 7: ЕСЛИ коэффициент загрузки входного накопителя обрабатывающего устройства - положительный, близок к нормальному [2,6, 2,8, 3,0, 3,2] И скорость движения кассетного конвейера - минимальная [39, 42, 46, 49], ТО повернуть вентиль пневмодвигателя кассетного конвейера на небольшой угол влево [25, 30, 34, 39];
ПРАВИЛО 8: ЕСЛИ коэффициент загрузки входного накопителя обрабатывающего устройства - положительный, близок к нормальному [2,9, 3,1, 3,4, 3,6] И скорость движения кассетного конвейера - средняя [45, 48, 55, 58], ТО повернуть вентиль пневмодвигателя кассетного конвейера на большой угол влево [20, 25, 31, 36];
ПРАВИЛО 9: ЕСЛИ коэффициент загрузки входного накопителя обрабатывающего устройства - положительный, близок к нормальному [3,1, 3,5, 3,7, 3,9] И скорость движения кассетного конвейера - максимальная [47, 50, 56, 59], ТО повернуть вентиль пневмодвигателя кассетного конвейера на большой угол влево [15, 20, 24, 29].
Для фаззификации входной лингвистической переменной «коэффициент загрузки входного накопителя обрабатывающего устройства» значения всех термов на универсуме [0, 4] задаются в виде следующих трапециевидных нечетких чисел:
^ 1 = <1,0; 1,2; 0,20; 0,20>; ^ 2 = <1,3; 1,5; 0,20; 0,20>; ^ 3 = <1,6; 1,8; 0,20; 0,20>;
^ 4 = <1,9; 2,1; 0,20; 0,20>; ^ 5 = <2,0; 2,4; 0,20; 0,20>; ^ 6 = <2,5; 2,7; 0,20; 0,20>;
^ 7 = <2,8; 3,0; 0,20; 0,20>; ^ 8 = <3,1; 3,4; 0,20; 0,20>; ^ 9 = <3,5; 3,7; 0,20; 0,20>.
На рис. 1 представлено интерактивное окно, где фаззифицируются 9 термов лингвистической переменной «коэффициент загрузки входного накопителя обрабатывающего устройства» посредством трапециевидных функций принадлежности на универсуме [0, 4].
Для фаззификации входной лингвистической переменной «скорость движения кассетного конвейера» значения всех термов на универсуме [0, 60] задаются в виде следующих трапециевидных нечетких чисел:
Ж 1 = <5,0; 10,0; 3,0; 3,0>; Ж 2 = <11,0; 16,0; 3,0; 3,0>; Ж 3 = <17,0; 22,0; 3,0; 3,0>;
Ж 4 = <23,0; 28,0; 3,0; 3,0>; Ж 5 = <29,0; 34,0; 3,0; 3,0>; Ж 6 = <35,0; 41,0; 3,0; 3,0>;
Ж 7 = <42,0; 46,0; 3,0; 3,0>; Ж 8 = <48,0; 55,0; 3,0; 3,0>; Ж 9 = <50,0; 56,0; 3,0; 3,0>.
УеБШк УСАТУ
2022, Уо!. 26, N0. 2 (96) 129
О 0.5 1 1 5 2 2.5 3 3.5 4 -input variable 'routr-
Current Variable Name inpull Type input Range Щ [0 4] Current Membership Function (click on MF to select) Name mf1 TWe trapmf T
Params [0.811.21.4]
Display Range ■ Help [ Close
Ready
Рис. 1. Трапециевидные функции принадлежности нечетких множеств, отображающие термы входной лингвистической переменной «коэффициент загрузки входного накопителя обрабатывающего устройства»
На рис. 2 представлено интерактивное окно, где фаззифицируются 9 термов лингвистической переменной «скорость движения кассетного конвейера» посредством трапециевидных функций принадлежности на универсуме [0, 60].
Рис. 2. Трапециевидные функции принадлежности нечетких множеств, отображающие термы входной лингвистической переменной «скорость движения кассетного конвейера»
Нечеткие множества входных лингвистических переменных определяются в виде:
X (коэффициент загрузки входного накопителя) = 0,100/х1 + 0,300/х2 + 0,400/х3 + + 0,600/х4 + 0,800/х5 + 1,000/х6 + 0,700/х7 + 0,200/х8 + 0,090/х9;
Х2 (скорость движения кассетного конвейера) = 0,125/х1 + 0,255/х2 + 0,335/х3 + + 0,625/х4 + 0,721/х5 + 1,000/х6 + 0,475/х7 + 0,265/х8 + 0,097/х9.
Для фаззификации выходной лингвистической переменной «вентиль пневмодвигателя кассетного конвейера» значения всех термов на универсуме [0, 90] задаются в виде следующих трапециевидных нечетких чисел:
ZV 1 = <74,0; 80,0; 5,0; 5,0>; ZV 2 = <70,0; 76,0; 5,0; 5,0>; ZV 3 = <65,0; 71,0; 5,0; 5,0>;
ZV 4 = <35,0; 41,0; 5,0; 5,0>; ZV 5 = <38,0; 43,0; 5,0; 5,0>; ZV 6 = <42,0; 45,0; 5,0; 5,0>;
ZV 7 = <30,0; 34,0; 5,0; 5,0>; ZV 8 = <25,0; 31,0; 5,0; 5,0>; ZV 9 = <20,0; 24,0; 5,0; 5,0>.
На рис. 3 представлено интерактивное окно, где фаззифицируются 9 термов лингвистической переменной «вентиль пневмодвигателя кассетного конвейера» посредством трапециевидных функций принадлежности на универсуме [0, 90].
Результат агрегирования степени истинности условий в правилах нечеткой продукции представлен в табл.1.
Таблица 1. Агрегирование входных лингвистических переменных «коэффициент загрузки входного накопителя», «скорость движения кассетного накопителя»
Степень истинности подусловия «коэффициент загрузки входного накопителя» Степень истинности подусловия «скорость движения кассетного конвейера» Степень истинности условий
0,100 0,125 0,100
0,300 0,255 0,255
0,400 0,335 0,335
0,600 0,625 0,600
0,800 0,721 0,721
1,000 1,000 1,000
0,700 0,475 0,475
0,200 0,265 0,200
0,090 0,097 0,090
Membership Function Editor: 21 fevra — □ X
File Edit View
О 10 20 30 40 50 60 70 6090
_.'ülLül yjlljblL '.'ülL'üll'_
Current Variable Name output! Type output Range [090] Current Membership Function (click on MFto select)
Name
T™e trimf
Params
Display Range [0 90] Help | Close
Changing parameter for MF Э to [15 20 24 29J
Рис. 3. Трапециевидные функции принадлежности нечетких множеств, отображающие термы выходной лингвистической переменной «вентиль пневмодвигателя кассетного конвейера»
В качестве терм-множеств выходной лингвистической переменныхой будем использовать множество:
ТХ3 =
небольшойуголвправо; нанебольшой уголвправо; без изменений; на небольшойуголвлево;набольшойугол влево
Нечеткие множества выходной лингвистической переменной определяются следующим образом:
Х3 (вентиль пневмодвигателя кассетного конвейера) = 0,097/х1 + 0,180/х2 + 0,253/х3 + + 0,397/х4 + 0,607/х5 + 1,000/х6 + 0,720/х7 + 0,295Х + 0,125/х9.
Дефаззификация в системах нечеткого вывода представляет собой процедуру нахождения ненечеткого значения для каждой из выходных лингвистических переменных. Цель дефаззи-фикации заключается в том, чтобы, используя результаты аккумуляции всех входных лингвистических переменных, получать обычное количественное значение для каждой из выходных переменных, которые могут быть использованы устройствами, внешними по отношению к системе нечеткого вывода. Процедура дефаззификации считается законченной тогда, когда для каждой из выходных переменных будут определены итоговые количественные значения в форме некоторого действительного числа.
Результат активизации заключений в правилах нечеткой продукции представлен в табл. 2.
Таблица 2. Результат активизации заключений в правилах нечеткой продукции
Степень истинности условий Значение функции принадлежности подзаключений Значение функции принадлежности выходной переменной
0,100 0,097 0,097
0,255 0,180 0,180
0,335 0,253 0,253
0,600 0,397 0,397
0,721 0,607 0,607
1,000 1,000 1,000
0,475 0,720 0,475
0,200 0,295 0,200
0,090 0,125 0,090
Трехмерное отображение результата дефаззификации выходной переменной «вентиль пневмодвигателя кассетного конвейера» изображено на рис. 4.
Рис. 4. Трехмерное отображение результата дефаззификации выходной переменной «вентиль пневмодвигателя кассетного конвейера»
ЗАКЛЮЧЕНИЕ
Разработана модель управления движением кассетного конвейера в производстве механообработки на основе нечеткого вывода. Определены структура и правила срабатывания нечеткого алгоритма управления, сформирована база правил. На основе компьютерного эксперимента осуществлена фаззификация всех термов входных переменных. Вычислены степени истинности условий в правилах нечеткой продукции, выполнены процедуры активизации и аккумуляции, найдены значения степеней истинности подзаключений для каждого правила. Реализована в трехмерном пространстве процедура дефаззификации входных и выходной переменных системы в среде Matlab с использованием пакета расширения Fuzzy Logic Toolbox. Представлено интерактивное окно входных и выходной лингвистических переменных, построенное с использованием трапециевидных функций принадлежности.
СПИСОК ЛИТЕРАТУРЫ
1. Васильев В. И., Ильясов Б. Г. Интеллектуальные системы управления. Теория и практика. М.: Радиотехника, 2009. 392 с. [ V. I. Vasiliev, B. G. Ilyasov, Intelligent control systems. Theory and practice, (in Russian). Moscow: Radiotehnika, 2009. ]
2. Борисов В. В., Круглов В. В., Федулов А. С. Нечеткие модели и сети. М.: Телеком, 2012. 725 с. [ V. V. Borisov, V. V. Kruglov, A. S. Fedulov, Fuzzy models and networks, (in Russian). Moscow: Telekom, 2012. ]
3. Леоненков А. В. Нечеткое моделирование в среде MATLAB и fuzzy TECH. Санкт-Петербург: БХВ-Петербург, 2005. 717 с. [ A. V. Leonenkov, Fuzzy modeling in MATLAB and fuzzy TECH, (in Russian). St. Petersburg: BHV-Peterburg, 2005. ]
4. Дьяконов В. П. MATLAB. Полный самоучитель. М.: ДМК Пресс, 2012. 768 с. [ V. P. Dyakonov, MATLAB. Complete tutorial, (in Russian). Moscow: DMK Press, 2012. ]
5. Мустафаев В. А. Анализ нечетких продукционных моделей динамических взаимодействующих процессов // Вестник компьютерных и информационных технологий. 2012. № 5 (95). С. 25-30. [ V. A. Mustafayev, "Analysis of fuzzy production models of dynamical connected process", (in Russian), in Vestnik kompyuternyh i informacionnyh tehnologij, no. 5 (95), pp. 25-30, 2012. ]
6. Mustafayev V. A., Zeynalabdiyeva I. S., Kravets O. Ya. Control model of parallel functioning production modules as fuzzy Petri nets // Journal of Physics: Conference Series. 2021. Vol. 2094 (1). Article number 011004. DOI: 10.1088/1742-6596/2094/2/022003.
ОБ АВТОРЕ
ЗЕЙНАЛАБДЫЕВА Ирада Самед кызы, докторант каф. информационных технологий и программирования, Сумгаитский государственный университет
ZEYNALABDIYEVA, Irada Samed, doctoral student, Dept. of Information Technology and Programming, Sumgait State University. Language: Russian.
Source: Vestnik UGATU (scientific journal of Ufa State Aviation Technical University), vol. 26, no. 2 (96), pp. 126-133, 2022. ISSN 2225-2789 (Online), ISSN 1992-6502 (Print).