Решение задач динамического программирования в системе Wolfram Mathematica

Решение задач динамического программирования в системе Wolfram

Mathematica

В. Р. Кристалинский, С. Н. Черный

Аннотация— Системы компьютерной математики позволяют существенно повысить эффективность решения большого количества прикладных задач. К числу таких задач относятся задачи, которые могут решаться методом динамического программирования. Эти задачи часто возникают при рассмотрении проблем оптимального управления, в экономике и в военном деле. Как правило, в задачах такого рода требуется получить оптимальное распределение ресурсов между потребителями. Ранее решение таких задач, особенно для больших объемов данных вызывало значительные трудности. Построение многошаговой схемы решения задачи вызывает трудности двоякого рода. Во-первых, далеко не всегда просто выбрать параметры состояния системы. Во-вторых, во многих случаях трудно разбить решение задачи на этапы. Использование системы Wolfram Mathematica позволяет решать такие задачи как обычные задачи целочисленного программирования. В качестве примеров рассмотрены задача целераспределения, задача обеспечения надежности технического устройства, задача распределения ресурсов. Рассмотренная в работе методика может использоваться в научных исследованиях, при решении прикладных задач, при преподавании в высших гражданских и военных учебных заведениях дисциплин, связанных с исследованием операций и методами принятия управленческих решений.

Ключевые слова— Динамическое программирование; система Wolfram Mathematica.

Благодаря развитию компьютерной математики оказывается целесообразным сводить решение задач динамического программирования к решению задач целочисленной оптимизации. Рассмотрим некоторые примеры такого рода.

Пример 1. Задача целераспределения.

Пусть имеется различных целей. Важность цели с номером г равна Лг. Имеется т типов средств поражения. Численность средств поражения типа ] равна N.. Средство поражения типа ] поражает цель г

c вероятностью о, . Пусть X

JS

число средств

поражения типа ], распределенных для поражения цели г. Требуется определить матрицу оптимального

распределения X=

X.

J

для которой среднее

ожидаемое значение ущерба, наносимого 5, будет наибольшим.

Решение. Среднее ожидаемое значение ущерба, наносимое 5 объектам удара, находится из соотношения

F = Z Al 1 -Пг

На параметры ограничения:

=i JS

накладываются

следующие

I. Введение

Динамическое программирование - раздел математики, посвященный теории и методам решения многошаговых задач оптимального управления.

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

S

о. . > 0, A . > 0,0 <г . . = 1 -с . < 1, Z X . . = N ..

Jy' J

J,i Jyi '=1 Jyi J

Рассмотрим конкретный пример. Для удара по S = 3 целям с важностями

A1 = 20; A2 = 30; A3 = 50

выделены три типа средств поражения в количествах

N = 2; N2 = з; N3 = 2.

Вероятности поражения каждым средством объектом г-го типа задаются матрицей

Статья получена 30 декабря 2018. Рекомендована организационным комитетом III Международной научной конференции «Конвергентные когнитивно-информационные технологии»

Кристалинский Владимир Романович - Смоленский Государственный Университет

Черный Сергей Николаевич - ВА ВПВО ВС РФ

0.40 0.20 0.52

0.16 0.30 0.38 0.50 0.26 0.18

Находим решение поставленной задачи.

A= {20, 30, 50}; N1= {2, 3, 2}; N2=Length [N1]; "0.40 0.16 0.30" a = 0.20 0.38 0.50 0.52 0.26 0.18

s = 1 -a; X = Table[xji, {j, 1,3}, {i, 1,3}] ; S=3;

S N2 yrr  -.-.

F = ! ДЩ](1 -ns[[j,i]]X[[ji]];

i=1 j=1

T=True;

I х. ^ К,

1=1

х, > 0,...,хт > 0. Пусть устройство содержит три элемента, функции повышения надежности имеют вид:

/1 (х1) = 0,5х12, /2 (х2) = 0,6х22, /3 (х3) = 0,5х32,

количество ресурсов равно 5 единицам.

Тогда программа, решающая задачу имеет вид.

Щх1_]=0.5*х1Л2; 12[х2_] =0.6*х2л2; 13[х3_]=0.2*х3Л2;

Задаем целевую функцию.

Do

T=Tл! xj,i == N1[[j]]],{j, 1,3}

Do[T = T л xj i > 0,{i, 1, S},{j, 1, N2}];

X1=Flatten[X];

R = NMaximize[{F,T л X1 e Integers}, X1]; X=X/.R[[2]];

MatrixForm[X]

1 0 1 0 1 2 1 1 0

Пример 2. Имеется техническое устройство 5", состоящее из т элементов. Безотказная работа каждого элемента безусловно необходима для работы всего устройства в целом.

Элементы могут отказывать (выходить из строя), причём независимо один от другого. Надёжность (вероятность безотказной работы) всего устройства равна произведению надёжностей всех элементов:

т

р = п р., 1=1

где pi - надёжность 1-го элемента.

В нашем распоряжении имеются некоторые средства К, которые можно употребить на повышение надёжности элементов.

Количество средств х., вложенное в приспособления,

повышающие надёжность 1-го элемента, доводит её до значения

Рг = ¡г (х ) .

Требуется определить оптимальное распределение средств по элементам, приводящее к наибольшей надёжности устройства в целом.

Таким образом, мы должны найти наибольшее значение функции

F[ ^ x2,..., xm ] = П fi [ Х,- ]

при следующих ограничениях

f[x1_,x2_,x3_]=f1[x1]*f2[x2]*f3[x3];

Решаем задачу целочисленной оптимизации.

NMaximize[{f[x1,x2,x3],{x1,x2,x3}.Integers,x1+x2+x3==5, х1>0,х2>0,х3>0},{х1,х2,х3}]

{0.96,{х1->2,х2->1,х3->2}}

Таким образом, в первый элемент нужно вложить 2 единицы средств, во второй - 1 единицу, в третий - 2 единицы. Тогда надежность устройства составит 0,96.

Задача 3. Имеющиеся боевые средства на каждом этапе боевых действий распределяются между двумя подразделениями. Предположим, что на очередном этапе боевых действий первому подразделению выделяется х единиц боевых средств, а второму подразделению у единиц боевых средств. Эффективность использования боевых средств для первого подразделения составляет g(x), второго подразделения к(у). Вследствие потерь количество боевых средств в первом подразделении уменьшается до ах, второго подразделения до Ьу.

Предположим, что на первом этапе количество выделенных боевых средств равно 9, а = 0.65, Ь = 0.73,

g(x) = 0.65 х2, Н(у) = 0.8 у2, число этапов боевых действий равно 3. Требуется найти оптимальное распределение боевых средств на каждом этапе боевых действий и общую их эффективность.

Приведём программу решения рассматриваемой задачи.

Задаем исходные данные

g[x_]=0.65 хЛ2;И[у_]=0.8уЛ2;

а=0.65;Ь=0.73;

и=9;

ю[х_,у_]=4у^[х];

х1+у1==и;

s1=ю[x1,y1];

х2+у2<=а х1+Ь у1;

х2+у2<=0.65 х1+0.73 у1

s2=ю[x2,y2];

s3=ю[x3,y3];

х3+у3<=0.65 х2+0.73 у2;

i=1

Задаем целевую функцию.

H[x1_,x2_,x3_,y1_,y2_,y3_]=s1+s2+s3;

Решаем задачу целочисленной оптимизации.

Ыах^7е[(Н[х1,х2,х3,у1,у2,у3],х1+у1==и,х2+у2<=а х1+Ь у1,х3+у3<=а х2+Ь

y2,{x1,x2,x3,y1,y2,y3}6Integers,x1>=0,x2>=0,x3>=0,y1>= 0,у2>=0,у3>=0},{х1,х2,х3,у1,у2,у3}]

{79.85,{х1->9,х2->0,х3->0,у1->0,у2->5,у3->3}} х1=9,у1=0,х2=0,у2=5,х3=0,у3=3.

Это означает, что первому подразделению на первом этапе выделяются 9 единиц боевых средств, второму подразделению на 1 этапе выделяется 5 единиц, на третьем три единицы. При этом общая оптимальная эффективность равна 79.85.

Пример 4. Имеется 5"= 10 районов, в одном из которых находится цель. Вероятность нахождения цели в 1-м районе равна А,. Требуется распределить N=10 поисковых единиц по районам, чтобы полная вероятность нахождения цели была максимальной. Поисковые возможности средств заданы вектором со1.

Можно показать, что данная задача сводится к следующей оптимизационной задаче.

Найти оптимальный вектор X, максимизирующий следующую функцию

р (х ) = ЕА (1 -*Х),

,=1

где е1 = 1 - ю1 при условии ' х, < N. При этом решение

1=1

должно быть целочисленным.

Программа в системе МаШетайса, решающая данную задачу имеет вид

ю={0.63,0.15,0.20,0.99,0.86,0.39,0.56,0.71,0.24,0.41}; е=1- ю ;

А={12,6,6,5,4,20,12,7,8,15};

Б=10;

N1=10;

Х=ТаЫе[х1,{1,1,Б}];

Р= ¿А[р]]* (1 -е[[1 ]]Лх,);

,=1

Т=Тгие;

N

Бо[Т=Т 'х,. <N1x^0,0,1,10}]

1=1

NMaximize[{F,T.X.Integers } ^^о^^РтесМо^ 10]

{52.93330000,{х1,1,х2,0,х3,0,х4,1,х5,1,х6,2,х7,2,х8,1,х 9-0,хц>2}}

Полученный результат означает, что в первый, четвертый, пятый и восьмой районы нужно направить одно средство, в шестой, седьмой и десятый район по 2 средства.

Пример 5. Пусть в отличие от задачи, рассмотренной в примере 4 поисковые средства разнородны, и каждое из средств поиска характеризуется своим вектором а;. В

этом случае получаем следующую задачу.

Требуется найти оптимальную матрицу ., максимизирующую функцию

S f N \

F=!д 1 -П ^

i=i V j=i

где 1 = 1 -со] 1 при ограничениях ' .= 1, и при

,=1

дополнительном условии . 1 . {1; 0}.

Программа для решения задачи в системе Ма^тайса имеет вид

' 0.4 0.4 0.2 0.5 ^

0.9 0.2 0.8 0.9

0.8 0.1 0.6 0.9

0.9 0.6 0 0.9

0.5 0 0.4 0.7

ч °.2 0.3 0.4 0.5,

g =1- œ; A={10,8,6,2}; S=4; N1=6;

.=Table[SjJ ,1,N1},{i,1,S}];

S N1

F = X A[[i]]*(1 -П j, г']]Л Sj J ));

i=1

T=True;

j=i

Do[T=T.£Sj.. ==1.Sj,i>0.Sj,<1,{j,1,M},{i,1,S}]

A1 =Flatten[ A ];

R=NMaximize[{F,T. A1 Integers}, A1 ];

a=./.R[[2]];

MatrixForm[.];

f 0 1 0 01

1 0 0 0

0 0 1 0

0 1 0 0

0 0 0 1

,0 0 1 0,

Пример 6. Пусть дана следующая задача. Имеется N активных средств (ракет). Вероятности поражения -й ракетой ]-го объекта заданы матрицей юу .

Относительные значимости (веса) объектов заданы вектором А . Если в результате обстрела ]-й объект уничтожен, то с вероятностью а]; выходит из строя ,-й объект.

Формальная постановка задачи имеет следующий вид.

со =

i=1

Требуется определить максимизирующую функцию

матрицу

[6]

F=1 a ÍI-П

j=I

I-a |i-П

при ограничениях = I и дополнительных

условиях

S,, e {I;0}

aj, j =I.

Приведем программу в системе Mathematica для решения этой задачи.

m =

a =

10.3 0 0.3 0.5 j

0.I 0.3 0.2 0. 8

0.2 0.I 0.4 0.6

v 0.I 0.4 0.2 0.6y

I I 0.3 0.6 0j

0.I I 0.I 0

0.2 0.3 I 0

V 0.7 0.6 0.3 I

[7]

[8]

[9]

[10]

[11]

e=1-œ;

A={I00,80,50,0}; S=4; NI=4;

A=Table[5j.i,{j,I,NI},{i,I,S}];

F = XАш* I-П I-a[[j,,]]*[ I)

[I4]'

[I2]

[I3]

j=i

T=True;

S}];

Do[T=T.£^.j == I S > 0 .S < I ,{j,I,NI},{i,I,

AI=Flatten [A];

R=NMaximize[{F,T AIIntegers}, AI];

A= A/.R[[2]];

MatrixForm[A]

I 0 0 0

0 0 0 0

0 0 I I

0 I 0 0

БИБЛИОГРАФИЯ

[I5]

[I6]

[I7]

[I8]

[I9]

[20]

[1] Беллман Р. Прикладные задачи динамического программирования. - Рипол Классик, 2013.

[2] Вентцель Е.С. Исследование операций.- М.: Советское радио, 1972.-357 с.

[3] Вентцель Е. С. Элементы динамического программирования.-

М.: Наука, 1964.-176 с. [21]

[4] Сутягина Н. И. Метод динамического программирования при принятии микроэкономического решения //Вестник НГИЭИ. -2014. - №. 11 (42).

[5] Посыпкин М. А., Син С. Т. Т. О распараллеливании метода динамического программирования для задачи о ранце

//International Journal of Open Information Technologies. - 2017. -Т. 5. - №. 7.

Гусева А. В., Бурковский В. Л., Гусев К. Ю. Моделирование процесса принятия решений на основе аппарата динамического программирования //ББК 3.30 (я4) Новые технологии в научных исследованиях, проектировании, управлении, производстве: труды Междунар. науч.-техн. конф. Воронеж: ФГБОУ ВО «Воронежский государственный технический университет», 2017, Т. 1, 404 с. ISBN 978-5-7731-0567-1. - 2017. - С. 252. Карасева Р. Б. Оптимальное распределение инвестиций по объектам вложения методами динамического программирования //Концепт. - 2016. - №. 7.

Рахмангулов А. Н., Мишкуров П. Н. Проблемы использования методов динамического программирования для оперативного управлении вагонопотоками //Современные проблемы транспортного комплекса России. - 2018. - Т. 2. - №. 1. - С. 279285.

Елизаров Д. Э., Бурковский В. Л. Модель оптимального развития структуры мультисервисных сетей на основе аппарата динамического программирования //Вестник Воронежского государственного технического университета. - 2016. - Т. 12. -№. 1.

Байрамуков С. Х., Долаева З. Н., Омаров А. О. О методах динамического программирования процессов комплексной модернизации жилищного фонда //Вестник Дагестанского государственного технического университета. Технические науки. - 2015. - Т. 38. - №. 3.

Григорьев А. М. Решение задачи об оптимальном распределении заданий методом динамического программирования с применением параллельных вычислений //Вестник Удмуртского университета. Математика. Механика. Компьютерные науки. -2017. - Т. 27. - №. 1. - С. 129-137.

Елизаров Д. Э., Бурковский В. Л. Модификация метода Беллмана решения динамической задачи о ранце //Вестник Воронежского государственного технического университета. - 2015. - Т. 11. -№. 5.

Фролов С. В. Формирование оптимальной инвестиционной политики предприятий с помощью метода динамического \ программирования //МОЛОДЫЕ ИССЛЕДОВАТЕЛИ шразования. - 2017. - С. 313.

Пегачкова Е. А., Кузнецова Е. Л., Горбунова Ю. А. Управление беспилотным самолетом методом динамического программирования в теории графов //Известия Тульского государственного университета. Технические науки. - 2016. - №. 11-2.

Посыпкин М. А., Си Т. Т. С. Сравнительный анализ эффективности различных вариантов метода динамического программирования для решения оптимизационных задач на этапе размещения элементов микросхем //Проблемы разработки перспективных микро-и наноэлектронных систем (МЭС). - 2014. - №. 2. - С. 97-100.

Zhang, Huaguang, et al. "Leader-based optimal coordination control for the consensus problem of multiagent differential games via fuzzy adaptive dynamic programming." IEEE Transactions on Fuzzy Systems 23.1 (2015): 152-163. https://arxiv.org/pdf/1711.11419.pdf Liu, Derong, and Qinglai Wei. "Policy iteration adaptive dynamic programming algorithm for discrete-time nonlinear systems." IEEE Trans. Neural Netw. Learning Syst. 25.3 (2014): 621-634. doi=10.1.1.667.917

Wei, Qinglai, et al. "Multibattery optimal coordination control for home energy management systems via distributed iterative adaptive dynamic programming." IEEE Transactions on Industrial Electronics 62.7 (2015): 4203-4214.

Jiang, Yu, and Zhong-Ping Jiang. "Robust adaptive dynamic programming and feedback stabilization of nonlinear systems." IEEE Transactions on Neural Networks and Learning Systems 25.5 (2014): 882-893.

Jiang, Yu, and Zhong-Ping Jiang. "Global adaptive dynamic programming for continuous-time nonlinear systems." IEEE Transactions on Automatic Control 60.11 (2015): 2917-2929. Yin, Jiateng, et al. "Energy-efficient metro train rescheduling with uncertain time-variant passenger demands: An approximate dynamic programming approach." Transportation Research Part B: Methodological 91 (2016): 178-210.

http://or.nsfc.gov.cn/bitstream/00001903-5/489277/1/99879031.pdf

i=I

i=I

K = I

[22] Tang, Yufei, et al. "Power system stability control for a wind farm based on adaptive dynamic programming." IEEE Transactions on Smart Grid 6.1 (2015) doi= 166-177. 10.1109

[23] Tassa, Yuval, Nicolas Mansard, and Emo Todorov. "Control-limited differential dynamic programming." Robotics and Automation (ICRA), 2014 IEEE International Conference on. IEEE, 2014. https://homes.cs.washington.edu/~todorov/papers/TassaICRA14.pdf

[24] Wei, Qinglai, and Derong Liu. "Adaptive dynamic programming for optimal tracking control of unknown nonlinear systems with application to coal gasification." IEEE Transactions on Automation Science and Engineering 11.4 (2014): 1020-1036. https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6656960

[25] Wei, Qinglai, et al. "Finite-approximation-error-based discrete-time iterative adaptive dynamic programming." IEEE Transactions on Cybernetics 44.12 (2014): 2820-2833. doi= 10.1109

On solving dynamic programming problems in the Wolfram Mathematica system

V.R. Kristalinskii, S.N. Chernyi

Abstract— The computer mathematics systems can make sufficiently higher the effectiveness of solving of many applied problems, particularly probems, which can be solved using the method of dynamical programming. Such problems are considered very often by solving the problems of the optimal governing in economics and military science. In this problems is usually needs to obtain the optimal distribution of the resources between the consumers. Earlier the solution of such problems particularly for the big volumes of data was connected with serious difficulties. The construction of the multistep scheme of the solution connected with the difficulties of two sorts. By the first, it is not simple to choose the parameters of the state of the system. By the second, in many cases it is difficult to divide the solution on the steps. The usage of Wolfram Mathematica system allows to solve such problems as usual problems of the integer programming. As the examples in the work were considered the problem of target distribution, the problem of reliability of the technical system, the problem of the distribution of the resources and some other. This methodic can be used in the scientific researches, by the solving of applied problems, by the teaching in the civil and military educational organizations of the disciplines connected with the operation research and the governing solutions.

Keywords— Dynamical programming, system Wolfram Mathematica.

REFERENCES

[1] Bellman R. Prikladny'e zadachi dinamicheskogo programmirovaniya. - Ripol Klassik, 2013.

[2] Ventcel' E.S. Issledovanie operacij.- M.: Sovetskoe radio, 1972.-357 s.

[3] Ventcel' E. S. E'lementy' dinamicheskogo programmirovaniya.- M.: Nauka, 1964.-176 s.

[4] Sutyagina N. I. Metod dinamicheskogo programmirovaniya pri prinyatii mikroe'kono-micheskogo resheniya //Vestnik NGIE'I. -2014. - №. 11 (42).

[5] Posy'pkin M. A., Sin S. T. T. O rasparallelivanii metoda dinamicheskogo program-mirovaniya dlya zadachi o rance //International Journal of Open Information Technologies. - 2017. -T. 5. - №. 7.

[6] Guseva A. V., Burkovskij V. L., Gusev K. Yu. Modelirovanie processa prinyatiya reshe-nij na osnove apparata dinamicheskogo programmirovaniya //BBK 3.30 (ya4) Novy'e texnologii v nauch-ny'x issledovaniyax, proektirovanii, upravlenii, proizvodstve: trudy' Mezhdunar. nauch.-texn. konf. Voronezh: FGBOU VO «Voronezhskij gosudarstvenny'j texnicheskij universitet», 2017, T. 1, 404 s. ISBN 978-5-7731-0567-1. - 2017. - S. 252.

[7] Karaseva R. B. Optimal'noe raspredelenie investicij po ob''ektam vlozheniya metoda-mi dinamicheskogo programmirovaniya //Koncept. - 2016. - №. 7.

[8] Raxmangulov A. N., Mishkurov P. N. Problemy' ispol'zovaniya metodov dinamicheskogo programmirovaniya dlya operativnogo upravlenii vagonopotokami //Sovremenny'e problemy' trans-portnogo kompleksa Rossii. - 2018. - T. 2. - №. 1. - S. 279-285.

[9] Elizarov D. E\, Burkovskij V. L. Model' optimal'nogo razvitiya struktury' mul'ti-servisny'x setej na osnove apparata dinamicheskogo programmirovaniya //Vestnik Voronezhskogo gosu-darstvennogo texnicheskogo universiteta. - 2016. - T. 12. - №. 1.

[10] Bajramukov S. X., Dolaeva Z. N., Omarov A. O. O metodax dinamicheskogo programmi-rovaniya processov kompleksnoj modernizacii zhilishhnogo fonda //Vestnik Dagestanskogo gosudarst-vennogo texnicheskogo universiteta. Texnicheskie nauki. - 2015. -T. 38. - №. 3.

[11] Grigor'ev A. M. Reshenie zadachi ob optimal'nom raspredelenii zadanij metodom di-namicheskogo programmirovaniya s primeneniem parallel'ny'x vy'chislenij //Vestnik Udmurtskogo universiteta. Matematika. Mexanika. Komp'yuterny'e nauki. - 2017. - T. 27. - №. 1. - S. 129-137.

[12] Elizarov D. E'., Burkovskij V. L. Modifikaciya metoda Bellmana resheniya dinamiche-skoj zadachi o rance //Vestnik Voronezhskogo gosudarstvennogo texnicheskogo universiteta. - 2015. - T. 11. - N°. 5.

[13] Frolov S. V. Formirovanie optimal'noj investicionnoj politiki predpriyatij s pomoshh'yu metoda dinamicheskogo programmirovaniya //MOLODY'E ISSLEDOVATELI OBRAZOVA-NIYa. - 2017. - S. 313.

[14] Pegachkova E. A., Kuzneczova E. L., Gorbunova Yu. A. Upravlenie bespilotny'm samole-tom metodom dinamicheskogo programmirovaniya v teorii grafov //Izvestiya Tul'skogo gosudarstvenno-go universiteta. Texnicheskie nauki. - 2016. - №. 11-2.

[15] Posy'pkin M. A., Si T. T. S. Sravnitel'ny'j analiz e'ffektivnosti razlichny'x varian-tov metoda dinamicheskogo programmirovaniya dlya resheniya optimizacionny'x zadach na e'tape razmeshhe-niya e'lementov mikrosxem //Problemy' razrabotki perspektivny'x mikro-i nanoe'lektronny'x sistem (ME'S). - 2014. - №. 2. - S. 97-100.

[16] Zhang, Huaguang, et al. "Leader-based optimal coordination control for the consensus problem of multiagent differential games via fuzzy adaptive dynamic programming." IEEE Transactions on Fuzzy Systems 23.1 (2015): 152-163. https://arxiv.org/pdf/1711.11419.pdf

[17] Liu, Derong, and Qinglai Wei. "Policy iteration adaptive dynamic programming algorithm for discrete-time nonlinear systems." IEEE Trans. Neural Netw. Learning Syst. 25.3 (2014): 621-634. doi=10.1.1.667.917

[18] Wei, Qinglai, et al. "Multibattery optimal coordination control for home energy management systems via distributed iterative adaptive dynamic programming." IEEE Transactions on Industrial Electronics 62.7 (2015): 4203-4214.

[19] Jiang, Yu, and Zhong-Ping Jiang. "Robust adaptive dynamic programming and feedback stabilization of nonlinear systems." IEEE Transactions on Neural Networks and Learning Systems 25.5 (2014): 882-893.

[20] Jiang, Yu, and Zhong-Ping Jiang. "Global adaptive dynamic programming for continuous-time nonlinear systems." IEEE Transactions on Automatic Control 60.11 (2015): 2917-2929.

[21] Yin, Jiateng, et al. "Energy-efficient metro train rescheduling with uncertain time-variant passenger demands: An approximate dynamic programming approach." Transportation Research Part B: Methodological 91 (2016): 178-210. http://or.nsfc.gov.cn/bitstream/00001903-5/489277/1/99879031.pdf

[22] Tang, Yufei, et al. "Power system stability control for a wind farm based on adaptive dynamic programming." IEEE Transactions on Smart Grid 6.1 (2015) doi= 166-177. 10.1109

[23] Tassa, Yuval, Nicolas Mansard, and Emo Todorov. "Control-limited differential dynamic programming." Robotics and Automation

(ICRA), 2014 IEEE International Conference on. IEEE, 2014. https://homes.cs.washington.edu/~todorov/papers/TassaICRA14.pdf [24] Wei, Qinglai, and Derong Liu. "Adaptive dynamic programming for optimal tracking control of unknown nonlinear systems with application to coal gasification." IEEE Transactions on Automation

Science and Engineering 11.4 (2014): 1020-1036. https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6656960 [25] Wei, Qinglai, et al. "Finite-approximation-error-based discrete-time iterative adaptive dynamic programming." IEEE Transactions on Cybernetics 44.12 (2014): 2820-2833. doi= 10.1109