24 В данной работе рассматривается класс са

advertisement
24
ИЗВЕСТИЯ ВолгГТУ
УДК 004.75
И. В. Степанченко, В. Г. Семенов, В. В. Сургутанов
РЕАЛИЗАЦИЯ ГЕНЕТИЧЕСКОГО АЛГОРИТМА АДАПТАЦИИ ПАРАМЕТРОВ РЕГУЛЯТОРА
В РАСПРЕДЕЛЕННОЙ ВЫЧИСЛИТЕЛЬНОЙ СИСТЕМЕ
Камышинский технологический институт (филиал)
Волгоградского государственного технического университета (stilvi@mail.ru)
В работе представлены результаты исследований реализации генетического алгоритма в распределенной вычислительной
среде, заключающиеся в определение области применимости такого алгоритма для настройки ПИД-регулятора. Дана структура разработанной распределенной вычислительной системы. Приводится описание поискового алгоритма адаптации параметров регулятора, функционирующего в распределенной вычислительной системе. Представлены результаты некоторых вычислительных экспериментов и рекомендации по использованию распределенных вычислительных структур.
Ключевые слова: Распределенная вычислительная система, удаленный вызов методов, технологии Jini и JavaSpaces,
параллельные вычисления, генетический алгоритм, адаптивный алгоритм прямого поиска, распределенная совместно
используемая память, решающий сервис, вычислительный сервис, тестовые задачи.
I. V. Stepanchenko, V. G. Semenov, V. V. Surgutanov
IMPLEMENTATION OF THE GENETIC ADAPTATION ALGORITHM OF REGULATOR
PARAMETERS IN THE DISTRIBUTED COMPUTING SYSTEM
The paper presents research results of implementation of the genetic algorithm in the distributed computing environment. Tasks of
such algorithm applicability consisting in definition for tuning PID-regulator are presented. The structure of the distributed computing
system is presented. The genetic algorithm of a search by using the distributed computing system is considered. The estimation method
of distributed computing systems parameters is suggested. The few results of numerical experiments are included to illustrate the features
of the developed approach and recommendations of the distributed structures using are presented.
Distributed computing system, Java platform, remote method invocation, Jini and JavaSpaces specifications, parallel computing,
genetic algorithm, adaptive direct search algorithm, distributed shared memory, decisive service, computing service, estimation tasks.
В данной работе рассматривается класс самонастраивающихся систем (СНС) [1], в которых структура регулятора задана (заранее выбрана), требуется определить лишь алгоритм
настройки его коэффициентов (алгоритм адаптации). В качестве алгоритма адаптации используется поисковый алгоритм, который
включается в структуру регулятора (в данной
работе ПИД-регулятора).
Отметим, что включение контура адаптации
в структуру ПИД-регулятора не является бесспорно полезным, если учесть вносимое ими
запаздывание. Казалось бы, включение такого
контура в структуру ПИД-регулятора должно
привести к получению алгоритмов имеющих
гораздо лучшие значения показателей качества
управления, но поисковые алгоритмы адаптации являются настолько вычислительно емкими, что они могут внести слишком большое
информационное запаздывание, из-за которого
не только будет утеряно преимущество адаптации, но и ухудшится качество, достижимое
ПИД-регулятором без адаптации [2]. Поэтому
возникает задача ускорения работы поискового
алгоритма.
Из возможных алгоритмов адаптации выбран генетический алгоритм (ГА) [3, 4], поскольку он допускает эффективное распараллеливание (достаточно распределить между
элементами распределенной вычислительной
системы непересекающиеся подмножества значений настраиваемых параметров) и с его по-
мощью можно находить глобальный экстремум
функции v-независимых переменных. Проведем соотнесение физического смысла биологических терминов, которыми традиционно оперируют ГА с терминами теории управления:
популяция – совокупность параметров регулятора; индивидуум популяции – параметр регулятора; хромосома – значение параметра регулятора; естественный отбор – выбор наилучшего значения функции; поколение – итерация
расчетов; генетические операторы (мутация,
кроссовер, инверсия), рекомбинация хромосом –
процессы формирования новых значений параметров регулятора, функция пригодности – целевая функция, у которой ищется экстремум.
Сущность работы ГА заключается в следующем:
выбирается произвольная точка начального
приближения m(0) целевой функции f(m) векторного аргумента m = [m1, m2, ... mv]Т;
процесс поиска экстремума организуется
как итеративный.
Каждый d-й шаг итеративного процесса
представляет собой следующие действия:
определяется значение целевой функции,
если достигнуто требуемое значение, то процесс останавливается;
формируется новая совокупность параметров регулятора, путем выбора наилучших значений, состоящая из h значений наборов параметров (существуют варианты ГА с постоянным и переменным числом h);
ИЗВЕСТИЯ ВолгГТУ
в новой совокупности группируются значения параметров регулятора (обычно выбираются комбинации по два значения для применения
генетических операторов, в ГА это называется
"панмиксией", хотя можно объединять и больше значений параметров);
к каждой группе параметров применяется
последовательность генетических операторов
(порядок и параметры которых являются настроечными в генетических алгоритмах): кроссовер, мутация и инверсия [3, 4].
Для повышения быстродействия управляющей системы с контуром адаптации, в котором
реализован генетический алгоритм, применяются различные методы. В данной работе рассматривается один из них – распределение алгоритмов обработки информации и управления между
элементами вычислительной системы.
Под распределенной системой в данной работе понимается система, в которой компоненты, располагаемые на соединенных посредством сети компьютерах, взаимодействуют и координируют свои действия только с помощью
механизма передачи сообщений [5]. Такое определение ведет к следующим характеристикам
распределенной системы: параллельность работы компонентов, отсутствие единого времени
и независимые отказы компонентов.
В ходе выполнения работы была создана
распределенная вычислительная система, которая состоит из пяти компонентов: распределенной совместно используемой памяти, клиентской программы, вычислительного сервиса,
решающего сервиса, коммуникационного сервиса, причем число компонентов в конкретной
системе и их физическое расположение в гетерогенной сети может быть различным. Компьютеры (или вычислительные устройства), на
которых находятся компоненты, могут иметь
различную конфигурацию технического и программного обеспечения, а также различные типы соединений с удаленными ресурсами.
Приведем краткое описание каждого компонента распределенной вычислительной системы для гетерогенной сети:
1. Распределенная совместно используемая
память (РСИП) – это сервис, реализованный
согласно спецификации технологий Jini [6] и
JavaSpaces [7]. Основными функциями сервиса
являются: принимать запросы, поступающие от
вычислительных сервисов, обрабатывать их
и возвращать результат.
2. Клиентская программа представляет собой Java-приложение, основной функцией ко-
25
торого является предоставление пользовательского интерфейса для задания настроечных параметров прикладной задачи. Это приложение
принимает значения параметров, проверяет их
на допустимость, после чего формирует компонент данных, описывающих задачу. Далее, клиентская программа передает этот компонент
данных в РСИП через коммуникационный сервис, согласно спецификации семантики записи
компонента. Дальнейшая функция клиентской
программы сводится к ожиданию появления
результата выполнения задачи в РСИП. После
его извлечения клиентская программа отображает этот результат на экране – задача считается решенной.
3. Решающий сервис – это Java-приложение, которое посылает запрос системе РСИП на
поиск компонента данных, описывающего задачу. В случае нахождения компонента система
РСИП передает его решающему сервису. Задача этого сервиса – сформировать задания, являющиеся блоками, которые возможно распараллелить, и которые содержат данные, подлежащие обработке, и/или код, выполняющий
обработку этих данных. Сформированные задания помещаются в РСИП. После этого решающий сервис собирает результаты решения
сгенерированных им заданий, формирует общий результат решения задачи и помещает его
в РСИП.
4. Вычислительный сервис – это Java-приложение, функцией которого является вычисление задачи, сформированной решающим сервисом. Он ждет появления задания в РСИП,
извлекает его, производит необходимые вычисления и помещает результат вычислений обратно в РСИП.
5. Коммуникационный сервис – совокупность программных средств, предназначенных
для соединения компонентов системы с РСИП,
необходимость которого регламентируется неоднородностью архитектуры подсетей.
Последовательность работы основных компонент распределенного приложения показана
на рис. 1.
В работе проводились две группы вычислительных экспериментов:
определение предельных вычислительных
характеристик распределенной системы на специально разработанной абстрактной задаче;
оценка эффективности реализации алгоритма адаптации параметров ПИД-регулятора
в процессе управления на базе распределенной
вычислительной системы.
26
ИЗВЕСТИЯ ВолгГТУ
РЕШАЮЩИЙ СЕРВИС
35000
1. Ожидание появления
компонента данных в РСИП
30000
3. Помещение компонента данных в РСИП
3. Формирование заданий,
содержащих данные и код
4. Ожидание результата
вычисления задачи
4. Помещение заданий
в РСИП
Время вычислений, мс
КЛИЕНТСКАЯ ПРОГРАММА
Решающих сервисов – 2
25000
20000
Решающих сервисов – 1
15000
10000
5000
0
1
2
3
4
5
6
7
Число вычислительных сервисов
5. Получение результата
вычисления задачи и отображение его на экране
6. Формирование результата
выполнения задачи и помещение его в РСИП
РАСПРЕДЕЛЕННАЯ СОВМЕСТНО
ИСПОЛЬЗУЕМАЯ ПАМЯТЬ
3. Вычисление задания и
помещение его результата в РСИП
1. Ожидание появления
задания в РСИП
ВЫЧИСЛИТЕЛЬНЫЙ СЕРВИС
Рис. 1. Схема работы основных компонентов распределенного приложения
Вычислительные эксперименты проводились в локальной сети, объединяющей от двух
до восьми персональных компьютеров, как в однородной среде, так и в гетерогенной. Номинальная загрузка трафика сети во время экспериментов не превышала 8 %.
Проводился эксперимент по выявлению тенденции в изменении производительности решения задачи настройки параметров регулятора генетическим алгоритмом за счет распределения
его на несколько вычислительных ресурсов в зависимости от количества компьютеров.
Неизменяемые параметры задачи: параметры системы управления, количество итераций –
поколений (параллельных блоков задачи) равно
10000. Варьируемые параметры задачи – количество вычислительных сервисов (каждый сервис выполнялся на отдельном компьютере).
В ходе выполнения эксперимента было выявлено (рис. 2): увеличение производительности вычислений при добавлении новых вычислительных сервисов (компьютеров) происходит
не линейно, а по кривой с насыщением. Этот
эффект объясняется тем, что необходимы затраты на передачу данных, на координацию
вычислительных сервисов и организацию распределенной системы. Возможна ситуация, в которой решающий сервис не будет успевать собирать данные о решении подзадач и координировать раздачу новых подзадач.
Рис. 2. Зависимость времени решения задачи от количества вычислительных сервисов (для сравнения, вычисление
задачи на одном компьютере без распределенной системы
составляет 22054 мс)
П р и м е ч а н и е. На рис. 2 время вычислений
является средним значением, относительная погрешность эксперимента не превышает 5 %.
Если же попытаться далее увеличивать количество решающих сервисов по отношению
к количеству вычислительных сервисов, то
можно обнаружить, что система будет наращивать производительность также непропорционально – сервис РСИП будет не успевать за количеством данных, передаваемых другими сервисами. Таким образом, приходится находить
баланс между количеством всех сервисов.
Результаты проведенных экспериментов позволяют сделать следующие выводы. Выбор
распределенного алгоритма настройки параметров определяется следующими параметрами
и характеристиками:
интервалом дискретизации, принятым в цифровой системе управления;
параметрами технических средств реализации распределенной системы;
количеством вычислительных, решающих
и РСИП сервисов;
количеством подзадач и объемом передаваемых данных;
достижимым улучшением показателей качества и стоимостью разработки и внедрения
распределенной системы.
Проведенные эксперименты показывают,
что применение распределенной вычислительной системы достаточно эффективно для задач
настройки параметров ПИД-регулятора, если
используются свободные вычислительные ресурсы уже существующей вычислительной сети для систем управления с достаточно большим интервалом дискретизации, измеряемым
минутами или часами. В этом случае, настройка помогает улучшить значения показателей
качества на 5–10 %, особенно при сменах режима управления (задающего воздействия).
ИЗВЕСТИЯ ВолгГТУ
В заключение отметим, что в области использования распределенных систем имеются
огромные резервы снижения стоимости и повышения качества управления сложными производственными комплексами. Можно ожидать
быстрого расширения сферы использования
распределенных вычислительных систем в качестве техники управления.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Методы классической и современной теории автоматического управления: Учебник в 3-х т. Т. 3: Методы
современной теории автоматического управления [Текст] /
Под ред. Н. Д. Егупова. – М.: Изд-во МГТУ им. Н. Э. Баумана, 2000. – 748 с.
27
2. Крушель Е. Г. Программный комплекс для исследования цифровых систем управления с информационным
запаздыванием [Текст] / Е. Г. Крушель, И. В. Степанченко //
Датчики и системы. 2002. № 11. С.12–14.
3. Goldberg D. E. Genetic Algorithms in Search,
Optimization and Machine Learning [Текст] / D.E. Goldberg,
Addison-Wesley Publishing Company, 1989.
4. Porter B. Genetic Tuning of Digital PID Controllers
[Текст] / B. Porter, A. H. Jones / Electronics Letters. 1992. –
Vol. 28. № 9. – P. 843–844.
5. Coulouris G. Distributed systems. Concepts and
design [Текст] / G. Coulouris, J. Dollimore, T. Kindberg. 3-d
edition. Pearson Education Limited, 2001. – 772 p.
6. Edwards W. K. Core Jini. [Текст] / Edwards W. K. 2-d
edition. Sun Microsystems Press, 2001. – 1004 p.
7. Freeman E. JavaSpaces. Principles, patterns and
practice [Текст] / E. Freeman, S. Hupfer, K. Arnold. AddisonWesley Publishing Company, 2001. – 364 p.
УДК 621.892
Н. В. Федотова, Д. А. Кривошеин, В. П. Дмитренко
РАЗРАБОТКА МАТЕМАТИЧЕСКОЙ МОДЕЛИ СТОЧНЫХ ВОД,
ЗАГРЯЗНЕННЫХ СМАЗОЧНО-ОХЛАЖДАЮЩИМИ ЖИДКОСТЯМИ (СОЖ)
"МАТИ" – Российский государственный технологический университет им. К. Э. Циолковского (cad@vstu.ru)
Работа посвящена математической модели сточных вод, загрязненных смазочно-охлаждающими жидкостями.
Ключевые слова: математическое моделирование, смазочно-охлаждающие жидкости.
N. V. Fedotova, D. A. Krivoshein, V. P. Dmitrenko
DEVELOPMENT OF THE MATHEMATICAL MODEL OF SEWAGE
WITH LUBRICANTING COOLING LIQUIDS
The paper is devoted to of the mathematical model of sewage with lubricanting cooling liquids.
Mathematical modeling, lubricanting cooling liquids.
Смазочно-охлаждающие жидкости (СОЖ)
применяются при обработке деталей на металлорежущих станках. При резании со смазкой и
охлаждением достигается многократное увеличение стойкости режущих инструментов,
улучшается чистота поверхности и повышается
точность обрабатываемых деталей, уменьшаются силы резания и расходуемая мощность,
обеспечивается надежное удаление стружки из
зоны резания [1]. При реализации оборотной
системы водоснабжения механических цехов
предприятий производится очистка стоков от
нерастворимых примесей, в том числе СОЖ.
Основным методом очистки является седиментация, которая заключается в отстаивании капель СОЖ.
Одним из факторов, замедляющих движение капель СОЖ к поверхности воды при отстаивании, является вязкость стоков, которая
в основном зависит от вида присутствующих
составных частиц дисперсной фазы, а также
разности плотностей дисперсной фазы и дисперсионной среды. Поэтому исследование вяз-
кости стоков играет важную роль при прогнозировании эффективности их очистки.
Целью настоящей работы явилась разработка математической модели вязкости стоков, загрязненных СОЖ.
Для исследования были выбраны два типа
СОЖ: СОЖ-1 – "Купрол" и СОЖ-2 – "Медьсодержащая присадка" [2, 3].
Их использовали в качестве моделей промышленных стоков, полученных путем смешения водопроводной воды и СОЖ в различной
концентрации (%): 5, 10, 20, 30, 40, 50, 60, 70,
80, 90, 100. Исследуемые стоки (эмульсии) готовили с использованием лопастной мешалки.
Перемешивание проводили в течение 5 мин со
скоростью 900 об/мин.
Кинематический коэффициент вязкости
эмульсий измеряли при комнатной температуре с использованием визкозиметра ВПЖ-1
по методике [4]. Число параллельных опытов
при измерении коэффициента кинематической вязкости составило 6. Ошибка эксперимента при измерении коэффициента вязко-
Download