Решение задачи параметрической идентификации модели системы «двигатель-генератор» генетическим алгоритмом в системе «ГАММА-3» с использованием параллельных вычислений

А.М. Степанов,

аспир.,
Т.М. Брагин,

аспир.,
М.Ф. Степанов,
д.т.н., mfs@sstu.ru,
СГТУ, г. Саратов

Рассматриваются вопросы применения многофункциональной системы ГАММА-3 для решения задачи идентификации параметров математической модели сложного объекта управления. В качестве исследуемого объекта выступает двигатель внутреннего сгорания, соединенный гибкой муфтой с электрическим генератором. Наличие большого количества параметров в задаче идентификации обусловило использование генетического алгоритма. С целью повышения точности и сокращения затрат времени предложен модифицированный генетический алгоритм с использованием параллельных вычислений. Реализация предлагаемого алгоритма осуществлена на сервере приложений многофункциональной системы ГАММА-3 с использованием средств MPI для распараллеливания вычислений.

 

Questions of application of the multifunctional system GAMMA-3 for solution of the task of identification of parameters of mathematical model of the complex plant are considered. The researched plant is the engine of internal combustion was connected with the electrical generator by floppy joint. Presence of a plenty of parameters in the task of identification has stipulated usage of genetic algorithm. With the purpose of rise of accuracy and lowering of expenses of time, the updated genetic algorithm with usage of parallel calculations is offered. Implementation of offered algorithm is carried out on the server of applications of the multifunctional system GAMMA-3 with usage of resources MPI for parallel calculations.

 

Одной из важнейших задач, решаемых в процессе проектирования и исследования систем управления, является задача параметрической идентификации объекта управления. При этом часто структура математической модели объекта может быть определена на основе априорных сведений о конструкции объекта. Однако точные значения параметров такой модели в большинстве случаев известны лишь в виде областей возможных значений (допустимые отклонения от некоторого «номинального» значения). С другой стороны, параметры объекта могут изменяться в ходе эксплуатации, что приводит к несоответствию закона управления, построенного на основе исходных априорных данных. Вследствие указанных причин значимость параметрической идентификации весьма высока.

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

Математические модели составных частей объекта в виде дифференциальных уравнений:

Двигатель: 

(1)

Турбокомпрессор: 

(2)

Впускной коллектор:

(3)

Выпускной коллектор:

(4)

Упругая муфта

(5)

 

 

Механическая часть генератора:

(6)

Электрическая часть генератора:

.

(7)

В матричной форме записи:

.

(8)

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

Для параметров приведенной модели существуют априорные оценки их значений. Однако точность их предварительного определения незначительна. Возможный разброс значений от некоторого, считающегося номинальным значением, достигает двукратной величины, т.е. значение параметра, например,  может находиться в диапазоне . В таких условиях (большое количество параметров и большой возможный разброс значений) большинство методов идентификации не справляется с поставленной задачей. Одной из групп алгоритмов, позволяющих получить приемлемые результаты, являются генетические алгоритмы. За счет целенаправленного отбора порождаемых членов популяции осуществляется постепенное приближение к искомым значениям параметров модели объекта. Однако даже в приведенной, относительно небольших размеров, задаче, затраты времени на решение задачи идентификации оказываются неприемлемо большими. Выход может быть найден за счет применения параллельных вычислений при наличии достаточных вычислительных ресурсов. При этом классический генетический алгоритм необходимо модифицировать, выделив в нем фрагменты, которые можно выполнять параллельно. Эффективность распараллеливания обычно определяют отношением затрат времени при параллельной и последовательной обработке. Следует учитывать, что 100% распараллеливания достичь практически невозможно. К тому же наличие накладных расходов на сетевое взаимодействие между вычислительными узлами снижает общий эффект от распараллеливания.

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

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

Проведем модификацию генетического алгоритма.

Модифицированный генетический алгоритм параметрической идентификации (МГАПИ)

1. Генерация начального приближения.

2. Сортировка особей популяции по возрастанию критерия близости модели и исходных данных.

3. Запомнить значение критерия для лучшей особи.

4. Выделение элитных особей с наименьшим значением критерия.

5. Построение нового поколения посредством скрещивания лучших особей текущего поколения.

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

7. Объединение в одном наборе элитных особей и особей нового поколения, а также мутированных особей текущего поколения при их наличии.

8. Сортировка объединенного набора особей по возрастанию критерия качества.

9. Выделение из объединенного набора заданного количества лучших по значению критерия качества особей с отбрасыванием худших.

10. Если значение критерия для лучшей особи из нового поколения меньше заданного, то завершить работу.

11. Если количество итераций алгоритма меньше максимально допустимого, то идти к п. 3, иначе завершить работу.

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

Рассмотрим возможности применения параллельных вычислений в рамках алгоритма МГАПИ. Генерация новых членов популяции, вычисление критерия качества для них можно выполнять параллельно с последующим объединением их на одном вычислительном узле (процессе) для выполнения сортировки и отбора наиболее приспособленных «особей» по значению критерию качества. Тогда алгоритм МГАПИ с применением параллельных вычислений примет следующий вид.

 

Модифицированный генетический алгоритм параметрической идентификации с использованием параллельных вычислений (МГАПИ-П)

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

2. Все процессы: получение исходных данных, нижней и верхней границ допустимого изменения искомых параметров.

3. Все процессы: Генерация начального приближения с вычислением критерия качества для каждой особи подмножества популяции, обрабатываемого данным процессом.

4. Все процессы: Передача головному процессу генотипа порожденного подмножества популяции.

5. Головной процесс: Получение и сбор подмножеств генотипа популяции от всех процессов.

6. Головной процесс: Сортировка особей популяции по возрастанию критерия близости модели и исходных данных.

7. Головной процесс: Рассылка отсортированного генотипа популяции по всем доступным вычислительным узлам

8. Все процессы: Получение отсортированного генотипа популяции.

9. Головной процесс: Запомнить значение критерия качества для лучшей особи.

10. Головной процесс: Выделение элитных особей с наименьшим значением критерия.

11. Все процессы: Порождение особей нового поколения путем скрещивания генов выделенного для данного процесса подмножества лучших особей популяции.

12. Все процессы: Передача головному процессу генотипа порожденного подмножества нового поколения популяции.

13. Головной процесс: Получение и сбор подмножеств генотипа нового поколения популяции от всех процессов.

14. Головной процесс: Объединение в одном наборе элитных особей текущего поколения и особей нового поколения.

15. Головной процесс: Сортировка объединенного набора особей по возрастанию критерия качества.

16. Головной процесс: Если значение критерия для лучшей особи из объединенного набора меньше запомненного лучшего значения критерия, то сохранить новое значение критерия как лучшее. Идти к п. 20.

17. Головной процесс: Выполнить мутацию особей текущего поколения.

18. Головной процесс: Объединение в одном наборе элитных особей текущего поколения, особей нового поколения и мутированных особей текущего поколения.

19. Головной процесс: Сортировка объединенного набора особей по возрастанию критерия качества.

20. Головной процесс: Выделение из объединенного набора заданного количества лучших по значению критерия особей с отбрасыванием худших.

21. Головной процесс: Миграция – рассылка отсортированного генотипа популяции по всем доступным вычислительным узлам (процессам).

22. Все процессы: Получение отсортированного генотипа популяции.

23. Все процессы: Если номер популяции меньше максимально допустимого, то идти к п. 10. Иначе завершить работу.

24. Головной процесс: Вывод результатов работы.

Для решения задач с использованием параллельных вычислений применялся MPI. Программа решения задачи идентификации с использованием параллельных вычислений на основе MPI составлена на языке С++ в Visual Studio 2005 Express Edition. Она включена в состав сервера приложений многофункциональной системы ГАММА-3 [4]. В системе ГАММА-3 её использование осуществляется командой ga_ident языка ГАММА.

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

В задаче идентификации определим границы интервала вариации искомых параметров: , где  – номинальное значение параметра, известное на основе априорной информации. В качестве исходных данных использованы нормализованные результаты экспериментальных исследований двигателя-генератора тепловоза 2ТЭ116 на испытательном стенде. В качестве возмущения использовалась резистивная нагрузка генератора.

В качестве исходных данных в задаче идентификации заданы экспериментальные данные: 1) скорость вращения коленвала двигателя ; 2) скорость вращения вала турбокомпрессора ; 3) давление турбонаддува на выходе компрессора ; 4) напряжение на выходе генератора , при подаче и снятии внешнего возмущения

.

Указанные данные были нормализованы и приведены к относительной форме в отклонениях от номинального значения. В качестве критерия качества идентификации примем приведенную оценку близости переходных процессов объекта и идентифицированной модели

.

(9)

где ,  – значения в момент времени  i-го выхода модели и объекта соответственно.

На рис. 1 приведены графики, иллюстрирующие нормализованные значения экспериментальных данных.

Проведем ряд исследований, по результатам которых отберем наилучший вариант по выбранному критерию. Параметры генетического алгоритма будем изменять следующим образом: максимальное количество поколений – от 8 до 120; количество «взрослых» особей – от 32 до 496; количество «дочерних» особей – от 16 до 248; количество «элитных» особей – от 2 до 31.

Исходный текст программы на языке ГАММА для проведения исследований:

clc

clear all

Po=[2 0.8 1 0.9 0.1 3 2 1 0.5 1.5 0.2 0.1 0.1 0.1 1 0.01 0.1 1.5 0.2 0.01 400 0.07 1 1 1 1 1 1];

kMin = 0.5;

kMax = 2;

aVpar=[0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0];

[aPar,A,B,M,C,D,G]=ga_ident(Po,kMin,kMax,aVpar);

рис. 1. Нормализованные экспериментальные данные (относительные безразмерные величины отклонений от номинальных значений) системы двигатель-генератор при действии управления перемещение рейки топливного насоса высокого давления вида  и внешнего возмущения (нагрузки на выходе генератора) вида , где plant[1] – относительное изменение скорости вращения вала двигателя, plant[2] – относительное изменение скорости вращения ротора турбокомпрессора, plant[3] – относительное изменение давления на выходе турбокомпрессора, plant[4] – относительное изменение напряжение на выходе генераторе

рис. 2.

рис. 3.

Результаты исследования (значение критерия качества идентификации) представлены для классического алгоритма на рис. 2, для модифицированного алгоритма – на рис. 3. Для трехмерной визуализации результатов применялся МАТЛАБ, поскольку трехмерная визуализация в системе ГАММА-3 пока не реализована.

рис. 4

рис. 5

Приведенные результаты свидетельствуют о том, что модифицированный алгоритм обеспечивает равномерное снижение значения интегрального критерия оценки точности идентификации (см. рис. 4) и позволяет достичь более высокой точности идентификации. Графики переходных процессов в системе объекта управления и идентифицированной модели, полученные в системе ГАММА-3, представлены на рис. 5.

В результате проведенных исследований построена математическая модель системы двигатель-генератор. Разработан модифицированный генетический алгоритм параметрической идентификации, исследованы его свойства, разработан генетический алгоритм параметрической идентификации с использованием параллельных вычислений, осуществлена его реализация в виде встроенной команды языка ГАММА многофункциональной системы ГАММА-3, решена задача параметрической идентификации системы двигатель-генератор по экспериментальным данным.

Работа выполнена при финансовой поддержке РФФИ (грант 09-07-00200-а).

Литература

1.  Александров А.Г. Система ГАММА – интегрированная среда проектирования систем управления / А.Г.Александров, М.Ф. Степанов, Л.С.Михайлова // Системы проектирования, технологической подготовки производства и управления этапами жизненного цикла промышленного продукта (CAD/CAM/PDM – 2009). Материалы 9-й международной конференции. Под ред. Е.И.Артамонова. - М.: Ин-т проблем управления им. В.А.Трапезникова РАН, 2009.

2.  Александров А.Г. Система ГАММА-3 и ее применение / А.Г.Александров, Л.С.Михайлова, М.Ф.Степанов // Автоматика и телемеханика, 2011, № 10. С. 19-27.

3.  Александров А.Г. О развитии концепции автоматического решения задач теории управления в системе ГАММА-3 / А.Г.Александров, Л.С.Михайлова, М.Ф.Степанов, Т.М.Брагин, А.М.Степанов // Мехатроника, автоматизация, управление. 2011. № 9.

4.  Александров А.Г. Организация структуры технических и программных средств распределённой интегрированной среды ГАММА для проектирования систем управления / А.Г.Александров, Л.С.Михайлова, М.Ф.Степанов // Системы проектирования, технологической подготовки производства и управления этапами жизненного цикла промышленного продукта (CAD/CAM/PDM-2011). Труды 10-й Международной конференции. Под ред. Е.И.Артамонова.- М.: Ин-т проблем управления им. В.А.Трапезникова РАН.- 2011.

5.  http://www.inoventica.ru/informacionnyj_centr/tehnologii.