Главная страница  Программы проектирования 

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [ 49 ] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100]

Обозначим (rXr)-матрицу

]w\Wdi = P{T,c) (7.23)

и г-мерный вектор

Adt = D(T,c). (7.24)

Тогда согласно (2.13) искомое значение 6* будет:

b = p-i{T, cOD(r, сО. (7.25)

Многократным повторением изложенной процедуры можно достичь заданной окрестности оптимального значения с* = = lim (с+б").

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

1. Преобразование исходной модели управляемого движения к каноническому виду (7.14); для этого вычислить матрицы К, Ф и G по (7.12), (7.13) и (7.15) соответственно.

2. Интегрирование дифференциального уравнения (7.19) замкнутой системы и дифференциального уравнения (7.10) эталонной системы при ?м(0) =о.

3. Интегрирование матричного уравнения (7.20) для функций чувствительности.

4. Интегрирование выражений Р( с«)УУТ, Р(0, с«)=0; D(;, c«)=4WA, D(0, с)«=0.

5. Вычисление 6* по (2.15) при t=T и нового вектора с"" = =с«--6

Повторяя процедуры при s=0, 1..... можно вычислить искомые параметры с требуемой степенью приближения J{c)-J(с*). Существенно, что сход1мость вычислительного процесса достигается при таком начальном значении с", которое обеспечивает устойчивость замкнутой системы (прием, исключающий необходимость специального определения с", см. § 7.5).

УПРАВЛЕНИЕ ВЫХОДОМ СИСТЕМЫ

Определение параметров Ck закона управления осуществляется из условия приближения выходной переменной x(t)-y(t), что достигается минимизацией функционала (7.6). Представляя х(/, с) в виде приближенной зависимости х(/, с)«х(;, с-Ь -f-Ti(, сб*, выходную переменную представим в виде

x{t, c)x{t, c)+qr\(t, c06 x(t, c«)=qx(/, c«). (7.26)

Здесь матрица чувствительности dx(t, с)"

nit, cO =



определяется из дифференциального уравнения

r]{t, c«) = (A+bc"H)Ti( с«)+Ьх{/, с*)Н Ti(0, с)=0. (7.27)

При этом вектор-функция х(, с*) есть вектор состояния замкнутой системы:

х(, с) = (А+Ьс"Н)х( с«), х(0, с*)=Хо. (7.28)

Подставив (7.26) в (7.6), получим функционал вида

J (6) ~ { [q- Tl (t. с) f-A (t, c)]2 dt, A [t, c)=y{t)-x (t, c»).

Экстремальное значение fi, реализующее минимум /(fi*), определяется из уравнения

] r]4t, c«)q[qTi( c)b-A(t, c)]dt=0.

Как и в предыдущей задаче, вычислительный процесс можно строить по схеме

6»=R-i(r, с)у(Т, с»), (7.29)

где 7(Г, c5) = JTi(/, c*)qA(/, c«)d/-r-мерный вектор; R{T, с«) = о

Т1(, c*)qqTi(/, c)dt - матрица размера гХг. о

Таким образом, структура алгоритма оптимизации остается прежней: интегрирование уравнений (7.8), (7.27) и (7.28); вычисление вектора у и матрицы R; вычисление поправок согласно (7.29). Эта процедура повторяется для c«+ = c*--fi* столько раз, сколько необходимо для достижения заданной окрестности с*.

Пример. Для иллюстрации эффективности работы алгоритма приведем результаты моделирования процесса оптимизации системы третьего порядка. Принято

О 1

О О

1 О-о 1 -и -6

-8 -\2 -6 Ь-=(0 О 1); qT = qT„=.(i о 0).

Данные, характеризующие протекание вычислительного процесса, представлены в табл. 7.1. Окончание процесса фиксировалось по признаку (6)(6*) 0,5-10". Можно видеть, что практически за четыре цикла оптимизации достигаются оптимальные значения параметров, равные c*i=2,0, с*2=1,0, с*з=0. В этом случае A--bcH = F, если Н - единичная матрица.

Вычислительный процесс, организованный по синтезированному алгоритму, может сходиться медленно или совсем расходиться для систем порядка 5... 6 и выше. Это возможно, когда степень многочлена числителя передаточной функции управляемого объекта существенно меньше степени многочлена знаменателя. В та-



Таблица 7.1

2,502

1,136

0,5231

0,026

2,007

0,9800

0,0096

0,0027

1,999

0,9887

-0,94-10-»

0,45-10-*

2,000

1,000

-0.48-10-г

0,50-10-W

ких ситуациях матрица R(T, с*) оказывается плохо обусловленной. Худший случай соответствует нулевой степени многочлена числителя передаточной функции объекта. Тогда в уравнениях (7.26) вектор q=(l 0... 0).

Отмеченные особенности легко устраняются, если выходную переменную х определять как линейную комбинацию всех составляющих вектора х:

x{t, c)=qt, с»), q=(qi...qn), qiO, 2, ...,n. (7.30)

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

РЕГУЛЯРИЗАЦИЯ АЛГОРИТМОВ

Пусть собственное движение управляемой системы (7.1) неустойчиво. В этом случае в алгоритме оптимизации нельзя принимать с=0, так как вычислительный процесс будет расходящимся. Рассмотрим универсальный прием, применение которого обеспечивает сходимость последовательных приближений с", с,... Его идея заключается в том, что исходная математическая модель неустойчивого объекта с помощью замены переменных (координат состояния) преобразуется к такому виду, чтобы движение преобразованной системы было устойчивым. Затем к новой математической модели применяется алгоритм оптимизации. При этом вопрос о сходимости вычислительного процесса решается автоматически. Процедуру соответствующих преобразований будем называть регуляризацией алгоритма.

Рассматриваем управляемую систему (7.1), считая, что х(оо при -оо. Определим вектор состояния

х*(0=-х(/)е-«, x=const>0. (7.31)

Для новых переменных уравнения замкнутой системы принимают вид

x* (/) = (А-х1)x*(/)-f bu*(t), х* (t) =qx*(t),

u*(x*)=cHx*(0. (7.32)

Если постоянная x такова, что все корни характеристического уравнения det[A-(x-f-p)I]=0 расположены в левой полуплоско-




[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [ 49 ] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100]

0.1064