root/applications/dual/IterativeLocal/text/bpkomplet.lyx @ 1372

Revision 1119, 251.9 kB (checked in by vahalam, 15 years ago)
Line 
1#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
2\lyxformat 345
3\begin_document
4\begin_header
5\textclass scrreprt
6\begin_preamble
7\usepackage[czech]{babel}
8\end_preamble
9\use_default_options true
10\language czech
11\inputencoding auto
12\font_roman default
13\font_sans default
14\font_typewriter default
15\font_default_family default
16\font_sc false
17\font_osf false
18\font_sf_scale 100
19\font_tt_scale 100
20
21\graphics default
22\paperfontsize default
23\spacing single
24\use_hyperref false
25\papersize a4paper
26\use_geometry false
27\use_amsmath 1
28\use_esint 1
29\cite_engine basic
30\use_bibtopic false
31\paperorientation portrait
32\secnumdepth 2
33\tocdepth 2
34\paragraph_separation indent
35\defskip medskip
36\quotes_language german
37\papercolumns 1
38\papersides 1
39\paperpagestyle default
40\tracking_changes false
41\output_changes false
42\author ""
43\author ""
44\end_header
45
46\begin_body
47
48\begin_layout Standard
49\align left
50\begin_inset ERT
51status open
52
53\begin_layout Plain Layout
54
55
56\backslash
57thispagestyle{empty}
58\end_layout
59
60\end_inset
61
62
63\end_layout
64
65\begin_layout Standard
66\align center
67
68\size large
69České vysoké učení technické v Praze
70\end_layout
71
72\begin_layout Standard
73\align center
74
75\size large
76Fakulta jaderná a fyzikálně inženýrská
77\end_layout
78
79\begin_layout Standard
80\begin_inset VSpace bigskip
81\end_inset
82
83
84\end_layout
85
86\begin_layout Standard
87\align center
88Katedra matematiky
89\end_layout
90
91\begin_layout Standard
92\align center
93Obor: Inženýrská informatika
94\end_layout
95
96\begin_layout Standard
97\align center
98Zaměření: Softwarové inženýrství
99\end_layout
100
101\begin_layout Standard
102\begin_inset VSpace bigskip
103\end_inset
104
105
106\end_layout
107
108\begin_layout Standard
109\align center
110\begin_inset Graphics
111        filename logo_cvut.eps
112        lyxscale 20
113        scale 20
114
115\end_inset
116
117
118\end_layout
119
120\begin_layout Standard
121\begin_inset VSpace bigskip
122\end_inset
123
124
125\end_layout
126
127\begin_layout Standard
128\align center
129
130\size larger
131\color black
132Iterativní lokální dynamické programování pro návrh duálního řízení
133\end_layout
134
135\begin_layout Standard
136\begin_inset VSpace smallskip
137\end_inset
138
139
140\end_layout
141
142\begin_layout Standard
143\align center
144
145\size larger
146\color black
147Iterative local dynamic programming for dual control
148\end_layout
149
150\begin_layout Standard
151\begin_inset VSpace bigskip
152\end_inset
153
154
155\end_layout
156
157\begin_layout Standard
158\align center
159
160\size largest
161\color black
162BAKALÁŘSKÁ
163\size larger
164 
165\size largest
166PRÁCE
167\end_layout
168
169\begin_layout Standard
170\begin_inset VSpace vfill
171\end_inset
172
173
174\end_layout
175
176\begin_layout Standard
177\align center
178Vypracoval: Michal Vahala
179\end_layout
180
181\begin_layout Standard
182\align center
183Vedoucí práce: Ing.
184 Václav Šmídl, Ph.D.
185\end_layout
186
187\begin_layout Standard
188\align center
189Rok: 2010
190\end_layout
191
192\begin_layout Standard
193\begin_inset Newpage newpage
194\end_inset
195
196
197\end_layout
198
199\begin_layout Standard
200\begin_inset ERT
201status open
202
203\begin_layout Plain Layout
204
205
206\backslash
207thispagestyle{empty}
208\end_layout
209
210\end_inset
211
212
213\end_layout
214
215\begin_layout Standard
216zadání práce
217\end_layout
218
219\begin_layout Standard
220\begin_inset Newpage newpage
221\end_inset
222
223
224\end_layout
225
226\begin_layout Standard
227\begin_inset ERT
228status open
229
230\begin_layout Plain Layout
231
232
233\backslash
234thispagestyle{empty}~
235\end_layout
236
237\end_inset
238
239
240\end_layout
241
242\begin_layout Standard
243\begin_inset VSpace vfill
244\end_inset
245
246
247\end_layout
248
249\begin_layout Subsubsection*
250Prohlášení
251\end_layout
252
253\begin_layout Standard
254Prohlašuji, že jsem svou bakalářskou práci vypracoval samostatně a použil
255 jsem pouze podklady uvedené v přiloženém seznamu.
256\end_layout
257
258\begin_layout Standard
259\begin_inset VSpace bigskip
260\end_inset
261
262
263\end_layout
264
265\begin_layout Standard
266\noindent
267\align left
268V Praze dne \SpecialChar \ldots{}
269\SpecialChar \ldots{}
270\SpecialChar \ldots{}
271\SpecialChar \ldots{}
272\SpecialChar \ldots{}
273 
274\begin_inset space \hfill{}
275\end_inset
276
277\SpecialChar \ldots{}
278\SpecialChar \ldots{}
279\SpecialChar \ldots{}
280\SpecialChar \ldots{}
281\SpecialChar \ldots{}
282\SpecialChar \ldots{}
283
284\end_layout
285
286\begin_layout Standard
287\noindent
288\align block
289\begin_inset space \hfill{}
290\end_inset
291
292Michal Vahala
293\begin_inset ERT
294status open
295
296\begin_layout Plain Layout
297
298~~
299\end_layout
300
301\end_inset
302
303
304\end_layout
305
306\begin_layout Standard
307\begin_inset Newpage newpage
308\end_inset
309
310
311\end_layout
312
313\begin_layout Standard
314\begin_inset ERT
315status open
316
317\begin_layout Plain Layout
318
319
320\backslash
321thispagestyle{empty}~
322\end_layout
323
324\end_inset
325
326
327\end_layout
328
329\begin_layout Standard
330\begin_inset VSpace vfill
331\end_inset
332
333
334\end_layout
335
336\begin_layout Subsubsection*
337Poděkování
338\end_layout
339
340\begin_layout Standard
341Především bych chtěl poděkovat vedoucímu práce Ing.
342 Václavu Šmídlovi, Ph.D.
343 za odborné vedení, cenné rady a připomínky.
344 Dále pak svým rodičům za poskytnuté zázemí a v neposlední řadě i své přítelkyni
345 Bc.
346 Pavle Procházkové za trpělivost a podporu.
347 
348\begin_inset VSpace defskip
349\end_inset
350
351
352\end_layout
353
354\begin_layout Standard
355\begin_inset space \hfill{}
356\end_inset
357
358Michal Vahala
359\end_layout
360
361\begin_layout Standard
362\begin_inset Newpage newpage
363\end_inset
364
365
366\end_layout
367
368\begin_layout Standard
369\begin_inset ERT
370status open
371
372\begin_layout Plain Layout
373
374
375\backslash
376thispagestyle{empty}
377\end_layout
378
379\end_inset
380
381
382\end_layout
383
384\begin_layout Description
385
386\emph on
387Název
388\begin_inset space \space{}
389\end_inset
390
391práce:
392\emph default
393\color black
394
395\begin_inset ERT
396status open
397
398\begin_layout Plain Layout
399
400~
401\end_layout
402
403\end_inset
404
405
406\begin_inset Newline newline
407\end_inset
408
409Iterativní lokální dynamické programování pro návrh duálního řízení
410\end_layout
411
412\begin_layout Description
413\begin_inset VSpace defskip
414\end_inset
415
416
417\end_layout
418
419\begin_layout Description
420
421\emph on
422Autor:
423\emph default
424 Michal Vahala
425\end_layout
426
427\begin_layout Description
428
429\emph on
430Obor:
431\emph default
432 Inženýrská informatika
433\end_layout
434
435\begin_layout Description
436
437\emph on
438Druh
439\begin_inset space \space{}
440\end_inset
441
442práce:
443\emph default
444 Bakalářská práce
445\end_layout
446
447\begin_layout Description
448
449\emph on
450Vedoucí
451\begin_inset space \space{}
452\end_inset
453
454práce:
455\emph default
456 Ing.
457 Václav Šmídl, Ph.D.
458\end_layout
459
460\begin_layout Description
461
462\emph on
463Abstrakt:
464\emph default
465 Tato práce se zabývá algoritmem
466\emph on
467iterativního lokálního dynamického programování
468\emph default
469jako jednou z metod pro řešení problému duálního řízení.
470 Zmiňovaný algoritmus byl implementován pro jednoduchý systém, integrátor
471 s neznámým ziskem.
472 Dosažené výsledky byly porovnány s řízením získaným pomocí jiných metod,
473 zejména použitím principu separace.
474 Dále byl algoritmus testován i pro složitější systém, konkrétně jde o synchronn
475í motor s permanentními magnety.
476 Práce obsahuje obecnou teorii týkající se duálního řízení, popis užitých
477 algoritmů a systémů pro testování a konkrétní přehled získaných výsledků.
478 Závěrem jsou diskutovány vlastnosti a použitelnost algoritmu
479\emph on
480iterativního lokálního dynamického programování.
481\end_layout
482
483\begin_layout Description
484
485\emph on
486Klíčová
487\begin_inset space \space{}
488\end_inset
489
490slova:
491\emph default
492 duální řízení, dynamické programování, iterativní lokální dynamické programován
493í, integrátor s neznámým ziskem, synchronní motor s permanentními magnety
494\end_layout
495
496\begin_layout Standard
497\begin_inset VSpace bigskip
498\end_inset
499
500
501\end_layout
502
503\begin_layout Description
504
505\emph on
506Title:
507\emph default
508\color black
509
510\begin_inset ERT
511status open
512
513\begin_layout Plain Layout
514
515~
516\end_layout
517
518\end_inset
519
520
521\begin_inset Newline newline
522\end_inset
523
524Iterative local dynamic programming for dual control
525\end_layout
526
527\begin_layout Description
528\begin_inset VSpace defskip
529\end_inset
530
531
532\end_layout
533
534\begin_layout Description
535
536\emph on
537Author:
538\emph default
539 Michal Vahala
540\end_layout
541
542\begin_layout Description
543
544\emph on
545Abstract:
546\emph default
547 The thesis is concerned with the
548\emph on
549iterative local dynamic programming
550\emph default
551 algorithm as one of the methods used for solving a dual control problem.
552 The algorithm has been implemented for a simple system -- integrator with
553 an unknown gain.
554 Obtained results have been compared with a control designed by other methods,
555 especially by using a separation principle.
556 Next, the algorithm has been tested on a more complicated system, namely
557 permanent magnet synchronous machine.
558 The thesis contains general dual control theory, used algorithms and systems
559 descriptions and list of gained results.
560 Lastly, the features and usability of the
561\emph on
562iterative local dynamic programming
563\emph default
564 algorithm are discussed.
565 
566\end_layout
567
568\begin_layout Description
569
570\emph on
571Key
572\begin_inset space \space{}
573\end_inset
574
575words:
576\emph default
577 dual control, dynamic programming, iterative local dynamic programming,
578 integrator with unknown gain, permanent magnet synchronous machine
579\end_layout
580
581\begin_layout Standard
582\begin_inset Newpage newpage
583\end_inset
584
585
586\end_layout
587
588\begin_layout Standard
589\begin_inset ERT
590status open
591
592\begin_layout Plain Layout
593
594
595\backslash
596thispagestyle{empty}
597\end_layout
598
599\end_inset
600
601
602\end_layout
603
604\begin_layout Standard
605\begin_inset CommandInset toc
606LatexCommand tableofcontents
607
608\end_inset
609
610
611\end_layout
612
613\begin_layout Standard
614\begin_inset Newpage newpage
615\end_inset
616
617
618\end_layout
619
620\begin_layout Standard
621\begin_inset ERT
622status open
623
624\begin_layout Plain Layout
625
626
627\backslash
628thispagestyle{empty}
629\end_layout
630
631\end_inset
632
633
634\end_layout
635
636\begin_layout Chapter*
637Seznam použitého označení
638\end_layout
639
640\begin_layout Labeling
641\labelwidthstring 00.00.0000
642
643\emph on
644iLDP
645\emph default
646 iterativní lokální dynamické programování
647\end_layout
648
649\begin_layout Labeling
650\labelwidthstring 00.00.0000
651
652\emph on
653LQG
654\emph default
655 lineárně kvadraticky gaussovské řízení (Linear-Quadratic-Gaussian)
656\end_layout
657
658\begin_layout Labeling
659\labelwidthstring 00.00.0000
660
661\emph on
662iLQG
663\emph default
664 iterativní LQG
665\end_layout
666
667\begin_layout Standard
668\begin_inset Newpage newpage
669\end_inset
670
671
672\end_layout
673
674\begin_layout Addchap
675Úvod
676\end_layout
677
678\begin_layout Standard
679Skutečný svět se nikdy nechová přesně podle matematických rovnic, protože
680 ty jsou vždy jen jakýmsi zjednodušením nebo přiblížením.
681 V reálném světě se vyskytuje mnoho neznámých veličin, poruch, nepředvídatelných
682 vlivů a ani naše měřící přístroje nejsou přesné.
683 Chceme-li efektivně řídit nějaký systém, musíme si být těchto vlivů vědomi
684 a zahrnout je do našich uvažování.
685 Situace se však ještě může zkomplikovat, když jeden nebo více parametrů
686 neznáme.
687 To může nastat z různých důvodů, například příslušné čidlo nebo měřící
688 přístroj nemůžeme nebo nechceme (například z důvodu vysoké ceny) instalovat
689 a tedy o velikosti příslušné hodnoty můžeme jen usuzovat ze známých dat.
690 Ještě složitější situace nastane, když uvažujeme neznámý parametr proměnný.
691 
692\end_layout
693
694\begin_layout Standard
695
696\color black
697Máme tedy dva cíle, musíme systém co nejlépe řídit a současně se snažit
698 o co nejpřesnější určení neznámých parametrů.
699 Tyto dva postupy jsou však obecně v rozporu, protože parametry se nejlépe
700 určují, když je systém vybuzen a nechová se optimálně.
701 Právě tento rozpor a nalezení kompromisu, který povede k jeho řešení, je
702 podstatou duálního řízení.
703\end_layout
704
705\begin_layout Standard
706
707\color black
708Pro přiblížení ilustrujme problém na jednoduchém příkladě: Uvažujme elektromotor
709 s možností řídit napětí na vstupu motoru a měřit příslušné proudy.
710 Jedná se tedy o systém se dvěma vstupy a dvěma výstupy.
711 Cílem našeho řízení je dosažení požadovaných otáček rotoru.
712 Ovšem otáčky a ani polohu hřídele měřit nemůžeme.
713 Máme o nich však znalost v podobě počátečních středních hodnot a variancí.
714 Naší snahou je co nejpřesněji určit hodnotu otáček a polohy hřídele a současně
715 systém řídit tak, abychom dosáhli požadované hodnoty otáček.
716 Tyto dvě snahy jsou ale v rozporu, protože nejvíce informací o neznámých
717 parametrech získáme, když je motor vybuzen.
718 Tedy například se prudce rozjíždí, brzdí, rychle mění rychlost nebo kmitá,
719 což se projevuje v proudech, které máme možnost měřit.
720 Ale právě vybuzení motoru je v rozporu se snahou o dobré řízení, protože
721 chyba, které se dopustíme, je většinou nepřijatelná.
722 Naopak, když se systém snažíme řídit bez dostatečné znalosti jeho parametrů,
723 s velkou pravděpodobností selžeme.
724\end_layout
725
726\begin_layout Standard
727\begin_inset VSpace bigskip
728\end_inset
729
730
731\end_layout
732
733\begin_layout Standard
734Námětem této bakalářské práce je algoritmus
735\emph on
736iterativního lokálního dynamického programování
737\emph default
738(
739\emph on
740iLDP
741\emph default
742) jako jedna z metod pro řešení problému duálního řízení.
743 Algoritmus byl navržen a popsán v článku
744\color black
745
746\begin_inset CommandInset citation
747LatexCommand cite
748key "TodorovTassaILDP"
749
750\end_inset
751
752
753\color inherit
754.
755 Jak už prozrazuje název algoritmu, jedná se o iterační metodu.
756 Tedy stručně řečeno, algoritmus vyjde od nějakého počátečního řízení, které
757 je ovšem nutno dodat jako apriorní informaci a v cyklech (iteracích) tuto
758 řídící strategii vylepšuje za účelem získání řízení optimálního.
759 Dále se jedná o metodu lokální, což můžeme jednoduše chápat tak, že kandidáti
760 na
761\begin_inset Quotes gld
762\end_inset
763
764vylepšení
765\begin_inset Quotes grd
766\end_inset
767
768 řízení jsou vybíráni z jistého, zatím blíže nespecifikovaného okolí původní
769 řídící strategie.
770 Nakonec algoritmus využívá obecné schéma dynamického programování, které
771 bude blíže popsáno v dalším textu.
772\end_layout
773
774\begin_layout Standard
775\begin_inset VSpace bigskip
776\end_inset
777
778
779\end_layout
780
781\begin_layout Standard
782Cílem této práce bylo seznámit se s obecnou tématikou duálního řízení a
783 detailněji s konkrétním algoritmem - iterativním lokálním dynamickým programová
784ním.
785 Následně tento algoritmus implementovat a aplikovat na jednoduchý systém.
786 Otestovat jeho funkčnost a schopnost řídit, a to i v porovnání s jinými
787 metodami a algoritmy.
788 Dále se pokusit implementovat algoritmus
789\emph on
790iLDP
791\emph default
792 pro složitější systém blíže praktické aplikaci, konkrétně se jedná o synchronní
793 motor s permanentními magnety.
794 Otestovat funkčnost a případně srovnat s dostupnými výsledky jiných řídících
795 strategií.
796 Na základě získaných výsledků posoudit výhody a nevýhody algoritmu a jeho
797 použitelnost pro další úlohy.
798\end_layout
799
800\begin_layout Standard
801Hlavním přínosem práce je otestování vlastností algoritmu
802\emph on
803iLDP
804\emph default
805 na jiných problémech, než pro které byla vyvinuta autory; objevení kladů
806 a záporů algoritmu a dále díky srovnání s jinými algoritmy získání přehledu,
807 pro které praktické aplikace je vhodnější, respektive méně vhodný než srovnávan
808é metody.
809 Prvotní očekávání pro srovnání algoritmu
810\emph on
811iLDP
812\emph default
813 a řízení získaného pomocí principu separace jsou, že
814\emph on
815iLDP
816\emph default
817 bude pomalejší co do výpočetního času, avšak přesnost získaných výsledků
818 bude lepší.
819 Dále je očekávána nezanedbatelná závislost výsledného řízení na volbě použitých
820 aproximací.
821\end_layout
822
823\begin_layout Standard
824\begin_inset Newpage newpage
825\end_inset
826
827
828\end_layout
829
830\begin_layout Chapter
831Teorie duálního řízení
832\begin_inset CommandInset label
833LatexCommand label
834name "cha:Teorie-duálního-řízení"
835
836\end_inset
837
838
839\end_layout
840
841\begin_layout Section
842Základní pojmy
843\end_layout
844
845\begin_layout Subsection
846Systém a řízení
847\end_layout
848
849\begin_layout Subsubsection
850Systém
851\end_layout
852
853\begin_layout Standard
854Základním pojmem, se kterým budeme v textu pracovat, je
855\emph on
856systém
857\emph default
858.
859 Obdobně jako základní pojmy zejména v matematických vědách (bod, množina,
860 algoritmus,\SpecialChar \ldots{}
861), nelze tento pojem exaktně definovat.
862 Systém si můžeme představit jako jistý
863\begin_inset Quotes gld
864\end_inset
865
866objekt
867\begin_inset Quotes grd
868\end_inset
869
870, často bude reprezentovat objekt skutečného světa.
871 Hlavní vlastností systému je, že má zpravidla jeden nebo více vstupů, pomocí
872 kterých mu můžeme předávat informaci -- řízení a jeden nebo více výstupů,
873 což jsou hodnoty, které pozorujeme.
874 Co se odehrává uvnitř systému však obecně nevíme.
875 Řízení, které budeme dodávat systému na vstup, bude v textu značeno písmenem
876 
877\emph on
878
879\begin_inset Formula $u$
880\end_inset
881
882
883\emph default
884.
885 Písmenem
886\emph on
887
888\begin_inset Formula $y$
889\end_inset
890
891
892\emph default
893 bude označena pozorovaná hodnota na výstupu.
894 
895\end_layout
896
897\begin_layout Standard
898Chování systému, to je jakým výstupem reaguje na vstup, popisujeme dle
899\begin_inset CommandInset citation
900LatexCommand cite
901key "MelicharLS"
902
903\end_inset
904
905 obecně diferenciální rovnicí, respektive soustavou diferenciálních rovnic
906 vyšších řádů.
907 Jedná se o takzvaný
908\color black
909vnější popis
910\color inherit
911.
912 Tento druh popisu pohlíží na systém
913\begin_inset Quotes gld
914\end_inset
915
916zvenku
917\begin_inset Quotes grd
918\end_inset
919
920 bez skutečné znalosti, co se odehrává uvnitř systému a jaká je jeho podstata.
921 Vnější popis obvykle obdržíme při odvození modelu systému z fyzikálních
922 rovnic.
923 Omezení, která z něj plynou, se snažíme odstranit zavedením
924\color black
925vnitřního (stavového) popisu
926\color inherit
927, kdy soustavu diferenciálních rovnic vyššího řádu převedeme vhodnou volbou
928 nových proměnných
929\emph on
930
931\begin_inset Formula $x$
932\end_inset
933
934
935\series bold
936 
937\series default
938\emph default
939na soustavu diferenciálních rovnic prvního řádu.
940 Proměnné
941\emph on
942
943\begin_inset Formula $x$
944\end_inset
945
946
947\series bold
948 
949\series default
950\emph default
951označujeme jako
952\color black
953stavové proměnné
954\color inherit
955.
956\end_layout
957
958\begin_layout Subsubsection
959Řízení
960\end_layout
961
962\begin_layout Standard
963Naším úkolem je pro zadaný systém nalézt regulátor, tedy obecně řízení
964\emph on
965
966\begin_inset Formula $u$
967\end_inset
968
969
970\emph default
971 takové, které dodané na vstup způsobí, že systém se bude
972\begin_inset Quotes gld
973\end_inset
974
975chovat podle našich požadavků
976\begin_inset Quotes grd
977\end_inset
978
979.
980 To zpravidla znamená, že hodnoty výstupní veličiny
981\series bold
982\emph on
983
984\begin_inset Formula $y$
985\end_inset
986
987
988\series default
989\emph default
990 dosáhnou nebo se přiblíží s danou přesností požadované hodnotě v podobě
991 referenčního signálu, který regulátor dostává z vnějšku a současně dodrží
992 předem stanovená omezení.
993 Práce je ovšem zaměřena na řízení složitějších systémů, u kterých jeden
994 nebo více parametrů neznáme přesně.
995 Tedy některý (více) z koeficientů v rovnicích popisujících systém není
996 znám.
997 Máme však o něm jistou statistickou informaci v podob
998\color black
999ě jeho
1000\color inherit
1001 očekávané hodnoty a variance.
1002 Navíc je-li systém nelineární, jsou výsledné rovnice příliš složité a tedy
1003 analyticky neřešitelné.
1004 Pro numerické řešení jsou rovnice systému zpravidla převáděny do diskrétního
1005 tvaru.
1006\end_layout
1007
1008\begin_layout Standard
1009Řízení obecně dělíme podle
1010\begin_inset CommandInset citation
1011LatexCommand cite
1012key "MelicharLS"
1013
1014\end_inset
1015
1016 na dva typy:
1017\emph on
1018Přímovazební řízení
1019\emph default
1020 užíváme v případě, kde je k dispozici přesný matematický model systému
1021 a je vyloučen výskyt neurčitostí.
1022 Toto řízení nevyužívá žádné zpětné informace od systému a regulátor pracuje
1023 pouze s referenčním signálem.
1024 Naproti tomu
1025\emph on
1026zpětnovazební řízení
1027\emph default
1028 využívá i informace o skutečném výstupu systému a snaží se tak eliminovat
1029 chyby v důsledku neurčitostí a nepřesnosti modelu.
1030\end_layout
1031
1032\begin_layout Subsubsection
1033Duální řízení
1034\end_layout
1035
1036\begin_layout Standard
1037Naším cílem je navrhnout regulátor pro zadaný systém s neznámými parametry.
1038 Úkoly jsou tedy dva: 1.
1039
1040\emph on
1041 opatrnost
1042\emph default
1043 - efektivně systém řídit a 2.
1044
1045\emph on
1046 buzení
1047\emph default
1048- určit neznámé parametry.
1049 Tyto dva přístupy jsou ale obecně v rozporu.
1050 Abychom mohli systém dobře řídit, potřebujeme znát parametry co nejpřesněji.
1051 Nejvíce informací o parametrech však získáme, když je systém vybuzen a
1052 nechová se optimálně.
1053 Tyto pojmy není snadné kvantifikovat, ale velmi často se projevují v konkrétníc
1054h řídících schématech.
1055 Naším úkolem je pokusit se nalézt nějaký kompromis mezi oběma úkoly.
1056 Právě tento přístup je označován jako
1057\emph on
1058duální řízení
1059\emph default
1060 
1061\begin_inset CommandInset citation
1062LatexCommand cite
1063key "BertsekasDPOC"
1064
1065\end_inset
1066
1067.
1068 
1069\end_layout
1070
1071\begin_layout Section
1072Dynamické programování
1073\end_layout
1074
1075\begin_layout Subsection
1076Formulace problému
1077\end_layout
1078
1079\begin_layout Standard
1080V textu budeme pracovat zpravidla s diskrétním systémem, ve smyslu systému
1081 s diskrétním časem, protože výpočty jsou prováděny ve většině případů problemat
1082iky duálního řízení numericky.
1083 Rovnice popisující systém jsou však zpravidla ve spojitém tvaru (model
1084 často vychází ze skutečnosti, popřípadě fyzikálních zákonů).
1085 V tomto případě provádíme diskretizaci.
1086 
1087\end_layout
1088
1089\begin_layout Standard
1090Dále budeme v textu předpokládat konečný časový horizont a ztrátovou funkci
1091 aditivní v čase.
1092 Je samozřejmě možno uvažovat i složitější úlohy řízení systémů nevyhovujících
1093 těmto požadavků, těmi se však zabývat nebudeme.
1094\end_layout
1095
1096\begin_layout Standard
1097Základní problém je formulován podle
1098\begin_inset CommandInset citation
1099LatexCommand cite
1100key "BertsekasDPOC"
1101
1102\end_inset
1103
1104 následovně:
1105\end_layout
1106
1107\begin_layout Standard
1108\begin_inset VSpace defskip
1109\end_inset
1110
1111
1112\end_layout
1113
1114\begin_layout Standard
1115Uvažujme stavový popis diskrétního dynamického systému
1116\begin_inset Formula \begin{equation}
1117\begin{array}{cc}
1118x_{k+1}=f_{k}(x_{k},u_{k},w_{k}), & k=0,\ldots,N-1\end{array},\label{eq:zakladniproblem}\end{equation}
1119
1120\end_inset
1121
1122kde
1123\begin_inset Formula $x_{k}$
1124\end_inset
1125
1126 je stavová proměnná,
1127\begin_inset Formula $u_{k}$
1128\end_inset
1129
1130 řízení a
1131\begin_inset Formula $w_{k}$
1132\end_inset
1133
1134 náhodná porucha, vše v čase
1135\begin_inset Formula $k$
1136\end_inset
1137
1138 při celkovém časovém horizontu
1139\begin_inset Formula $N$
1140\end_inset
1141
1142.
1143 Na řízení
1144\begin_inset Formula $u_{k}$
1145\end_inset
1146
1147 klademe omezení, že může nabývat pouze hodnot z neprázdné množiny
1148\begin_inset Formula $U_{k}(x_{k})$
1149\end_inset
1150
1151 závislé na stavu
1152\begin_inset Formula $x_{k}$
1153\end_inset
1154
1155.
1156 Náhodná porucha
1157\begin_inset Formula $w_{k}$
1158\end_inset
1159
1160 je charakterizována rozdělením pravděpodobnosti
1161\begin_inset Formula $P_{k}$
1162\end_inset
1163
1164, které může explicitně záviset na
1165\begin_inset Formula $x_{k}$
1166\end_inset
1167
1168 a
1169\begin_inset Formula $u_{k}$
1170\end_inset
1171
1172, ne však na předchozích poruchách
1173\begin_inset Formula $w_{k-1},\ldots,w_{0}$
1174\end_inset
1175
1176.
1177\end_layout
1178
1179\begin_layout Standard
1180Dále uvažujme množinu řízení, jedná se o posloupnost funkcí
1181\begin_inset Formula \[
1182\pi=\{\mu_{0},\ldots,\mu_{N-1}\},\]
1183
1184\end_inset
1185
1186kde
1187\begin_inset Formula $\mu_{k}$
1188\end_inset
1189
1190 přiřazuje stavu
1191\begin_inset Formula $x_{k}$
1192\end_inset
1193
1194 přípustné řízení
1195\begin_inset Formula $u_{k}=\mu_{k}(x_{k})$
1196\end_inset
1197
1198, to je takové, že
1199\begin_inset Formula $\mu_{k}(x_{k})\in U_{k}(x_{k})$
1200\end_inset
1201
1202, množinu přípustných řešení označme
1203\begin_inset Formula $\Pi$
1204\end_inset
1205
1206.
1207 Máme-li dány počáteční stav
1208\begin_inset Formula $x_{0}$
1209\end_inset
1210
1211 a přípustné řešení
1212\begin_inset Formula $\pi$
1213\end_inset
1214
1215, můžeme stavy
1216\begin_inset Formula $x_{k}$
1217\end_inset
1218
1219 a poruchy
1220\begin_inset Formula $w_{k}$
1221\end_inset
1222
1223 považovat za náhodné veličiny s rozdělemím definovaným systémem rovnic
1224 
1225\begin_inset CommandInset ref
1226LatexCommand ref
1227reference "eq:zakladniproblem"
1228
1229\end_inset
1230
1231, kde za řízení
1232\begin_inset Formula $u_{k}$
1233\end_inset
1234
1235 dosadíme hodnotu funkce
1236\begin_inset Formula $\mu_{k}$
1237\end_inset
1238
1239 v
1240\begin_inset Formula $x_{k}$
1241\end_inset
1242
1243.
1244\end_layout
1245
1246\begin_layout Standard
1247Pro dané ztráty v jednotlivých časech -- funkce
1248\begin_inset Formula $g_{k}$
1249\end_inset
1250
1251, pak definujeme očekávanou ztrátu
1252\begin_inset Formula $\pi$
1253\end_inset
1254
1255 v
1256\begin_inset Formula $x_{0}$
1257\end_inset
1258
1259 jako
1260\begin_inset Formula \[
1261J_{\pi}(x_{0})=\mathbf{E}\left\{ g_{N}(x_{N})+\sum_{k=0}^{N-1}g_{k}\left(x_{k},\mu_{k}(x_{k}),w_{k}\right)\right\} \]
1262
1263\end_inset
1264
1265kde je očekávaná hodnota počítána přes náhodné veličiny
1266\begin_inset Formula $w_{k}$
1267\end_inset
1268
1269 a
1270\begin_inset Formula $x_{k}$
1271\end_inset
1272
1273.
1274 Optimální řízení
1275\begin_inset Formula $\pi^{*}$
1276\end_inset
1277
1278 je právě to, které minimalizuje ztrátu
1279\begin_inset Formula \[
1280J_{\pi^{*}}(x_{0})=\min_{\pi\in\Pi}J_{\pi}(x_{0}).\]
1281
1282\end_inset
1283
1284Optimální ztrátu označme
1285\begin_inset Formula $J^{*}(x_{0})$
1286\end_inset
1287
1288.
1289\end_layout
1290
1291\begin_layout Subsection
1292Přístup dynamického programování
1293\end_layout
1294
1295\begin_layout Standard
1296Dynamické programování dle
1297\begin_inset CommandInset citation
1298LatexCommand cite
1299key "ViriusZA"
1300
1301\end_inset
1302
1303 je jedním ze způsobů návrhu algoritmů pro řešení jistých typu optimalizačních
1304 problémů.
1305 Konkrétně se uplatňuje v případě, že se jedná o diskrétní optimalizační
1306 úlohu; na řešení daného problému můžeme nahlížet jako na konečnou posloupnost
1307 rozhodnutí a platí
1308\emph on
1309princip optimality
1310\emph default
1311.
1312\end_layout
1313
1314\begin_layout Subsubsection
1315Princip optimality
1316\end_layout
1317
1318\begin_layout Standard
1319Nechť
1320\begin_inset Formula $\pi^{*}=\left\{ \mu_{0}^{*},\mu_{1}^{*},\ldots,\mu_{N-1}^{*}\right\} $
1321\end_inset
1322
1323 je optimální řídící strategie pro
1324\color black
1325základní
1326\color inherit
1327 problém a předpokládejme, že když aplikujeme řízení
1328\begin_inset Formula $\pi^{*}$
1329\end_inset
1330
1331, daný stav
1332\begin_inset Formula $x_{i}$
1333\end_inset
1334
1335 se vyskytne v čase
1336\begin_inset Formula $i$
1337\end_inset
1338
1339 s pozitivní pravděpodobností.
1340 Uvažujme podproblém, kdy ve stavu
1341\begin_inset Formula $x_{i}$
1342\end_inset
1343
1344 a čase
1345\begin_inset Formula $i$
1346\end_inset
1347
1348 chceme minimalizovat
1349\emph on
1350náklady na pokračování
1351\emph default
1352 (v anglické literatuře označováno jako
1353\color black
1354
1355\begin_inset Quotes gld
1356\end_inset
1357
1358cost-to-go
1359\color inherit
1360
1361\begin_inset Quotes grd
1362\end_inset
1363
1364) od času
1365\begin_inset Formula $i$
1366\end_inset
1367
1368 do
1369\begin_inset Formula $N$
1370\end_inset
1371
1372
1373\begin_inset Formula \[
1374\mathbf{E}\left\{ g_{N}(x_{N})+\sum_{k=i}^{N-1}g_{k}(x_{k},\mu_{k}(x_{k}),w_{k})\right\} \]
1375
1376\end_inset
1377
1378Potom úsek strategie
1379\family roman
1380\series medium
1381\shape up
1382\size normal
1383\emph off
1384\bar no
1385\noun off
1386\color none
1387
1388\begin_inset Formula $\left\{ \mu_{i}^{*},\mu_{i+1}^{*},\ldots,\mu_{N-1}^{*}\right\} $
1389\end_inset
1390
1391 je optimální pro tento podproblém.
1392\begin_inset VSpace medskip
1393\end_inset
1394
1395
1396\end_layout
1397
1398\begin_layout Standard
1399Intuitivně je princip optimality velmi jednoduchý.
1400 Jestliže úsek strategie
1401\begin_inset Formula $\left\{ \mu_{i}^{*},\mu_{i+1}^{*},\ldots,\mu_{N-1}^{*}\right\} $
1402\end_inset
1403
1404 nebude optimální, budeme schopni dále zredukovat cenu přechodem k optimální
1405 strategii pro podproblém.
1406\end_layout
1407
1408\begin_layout Standard
1409Princip optimality umožňuje optimální strategii konstruovat postupně.
1410 Nejdříve nalezneme optimální strategii pro koncový podproblém zahrnující
1411 poslední krok.
1412 Poté rozšiřujeme podproblém od konce přidáním předposledního kroku a tak
1413 dále.
1414 Takto může být vytvořena optimální strategie pro celý problém.
1415\end_layout
1416
1417\begin_layout Standard
1418Algoritmus dynamického programování je tedy založen na následující myšlence:
1419 Algoritmus pracuje iterativně a řeší
1420\color black
1421koncové
1422\color inherit
1423 podproblémy pro daný časový úsek, při tom využívá řešení předchozích
1424\color black
1425koncových
1426\color inherit
1427 podproblémů pro kratší časové úseky.
1428 Převzato z
1429\begin_inset CommandInset citation
1430LatexCommand cite
1431key "BertsekasDPOC"
1432
1433\end_inset
1434
1435.
1436\end_layout
1437
1438\begin_layout Subsubsection
1439Formulace algoritmu dynamického programování
1440\end_layout
1441
1442\begin_layout Standard
1443Podle
1444\begin_inset CommandInset citation
1445LatexCommand cite
1446key "BertsekasDPOC"
1447
1448\end_inset
1449
1450, pro každý počáteční stav
1451\begin_inset Formula $x_{0}$
1452\end_inset
1453
1454 je optimální cena
1455\begin_inset Formula $J^{*}(x_{0})$
1456\end_inset
1457
1458 základního problému rovna
1459\begin_inset Formula $J_{0}(x_{0})$
1460\end_inset
1461
1462, získané z posledního kroku následujícího algoritmu, který prochází zpět
1463 časy od
1464\begin_inset Formula $N-1$
1465\end_inset
1466
1467 do
1468\begin_inset Formula $0$
1469\end_inset
1470
1471:
1472\begin_inset Formula \[
1473J_{N}(x_{N})=g_{N}(x_{N})\]
1474
1475\end_inset
1476
1477
1478\end_layout
1479
1480\begin_layout Standard
1481\begin_inset Formula \begin{equation}
1482J_{k}(x_{k})=\min_{u_{k}\in U_{k}(x_{k})w_{k}}\mathbf{E}\left\{ g_{k}(x_{k},u_{k},w_{k})+J_{k+1}(f_{k}(x_{k},u_{k},w_{k}))\right\} \label{eq:Jkeqmin}\end{equation}
1483
1484\end_inset
1485
1486
1487\begin_inset Formula \[
1488k=0,1,\ldots,N-1\]
1489
1490\end_inset
1491
1492
1493\end_layout
1494
1495\begin_layout Standard
1496kde je očekávaná hodnota počítána podle náhodné veličiny
1497\begin_inset Formula $w_{k}$
1498\end_inset
1499
1500, která obecně závisí na
1501\begin_inset Formula $x_{k}$
1502\end_inset
1503
1504 a
1505\begin_inset Formula $u_{k}$
1506\end_inset
1507
1508.
1509 Dále, když
1510\begin_inset Formula $u_{k}^{*}=\mu_{k}^{*}(x_{k})$
1511\end_inset
1512
1513 minimalizuje pravou stranu rovnice
1514\begin_inset CommandInset ref
1515LatexCommand eqref
1516reference "eq:Jkeqmin"
1517
1518\end_inset
1519
1520 pro každé
1521\begin_inset Formula $x_{k}$
1522\end_inset
1523
1524 a
1525\begin_inset Formula $k$
1526\end_inset
1527
1528, stretegie
1529\begin_inset Formula $\pi^{*}=\left\{ \mu_{1}^{*},\ldots,\mu_{N-1}^{*}\right\} $
1530\end_inset
1531
1532 je optimální.
1533\begin_inset VSpace medskip
1534\end_inset
1535
1536
1537\end_layout
1538
1539\begin_layout Standard
1540Hodnotu
1541\begin_inset Formula $J_{k}(x_{k})$
1542\end_inset
1543
1544 je možno interpretovat jako optimální cenu pro
1545\emph on
1546
1547\begin_inset Formula $(N-k)$
1548\end_inset
1549
1550
1551\emph default
1552-tý krok problému začínajícího ve stavu
1553\begin_inset Formula $x_{k}$
1554\end_inset
1555
1556 a čase
1557\begin_inset Formula $k$
1558\end_inset
1559
1560 a končícího v čase
1561\begin_inset Formula $N$
1562\end_inset
1563
1564.
1565 Následně označujeme
1566\begin_inset Formula $J_{k}(x_{k})$
1567\end_inset
1568
1569 náklady na pokračování (
1570\color black
1571
1572\begin_inset Quotes gld
1573\end_inset
1574
1575cost-to-go
1576\color inherit
1577
1578\begin_inset Quotes grd
1579\end_inset
1580
1581) ve stavu
1582\begin_inset Formula $x_{k}$
1583\end_inset
1584
1585 a čase
1586\begin_inset Formula $k$
1587\end_inset
1588
1589, a
1590\begin_inset Formula $J_{k}$
1591\end_inset
1592
1593 označujeme jako funkci nákladů na pokračování (
1594\color black
1595
1596\begin_inset Quotes gld
1597\end_inset
1598
1599cost-to-go
1600\color inherit
1601 function
1602\begin_inset Quotes grd
1603\end_inset
1604
1605) v čase
1606\begin_inset Formula $k$
1607\end_inset
1608
1609.
1610 
1611\end_layout
1612
1613\begin_layout Standard
1614Ideálně bychom chtěli využít algoritmus dynamického programování k získání
1615 
1616\begin_inset Formula $J_{k}$
1617\end_inset
1618
1619 vyjádřené v uzavřeném tvaru nebo k získání optimální strategie.
1620 Existuje mnoho případů, kdy je daná úloha řešitelná analyticky, obzvláště
1621 za zjednodušujících předpokladů.
1622 To je velmi užitečné zejména pro lepší náhled do problematiky a jako vodítko
1623 pro složitější modely.
1624 Avšak ve většině případů není analytické řešení možné, pak je třeba použít
1625 numerické řešení pomocí algoritmu dynamického programování.
1626 Tento přístup může být časově velmi náročný, zejména minimalizaci v rovnici
1627 
1628\begin_inset CommandInset ref
1629LatexCommand eqref
1630reference "eq:Jkeqmin"
1631
1632\end_inset
1633
1634 je třeba provést pro každou hodnotu
1635\begin_inset Formula $x_{k}$
1636\end_inset
1637
1638.
1639 Stavový prostor musí být diskretizován, nejedná-li se o konečnou množinu,
1640 a výpočetní nároky pak narůstají proporcionálně k počtu možných hodnot
1641 
1642\begin_inset Formula $x_{k}$
1643\end_inset
1644
1645.
1646 Nicméně dynamické programování je pouze obecný přístup pro iterativní optimaliz
1647aci při uvažování nejistoty v systému.
1648\end_layout
1649
1650\begin_layout Section
1651Vliv neznalosti na systém
1652\end_layout
1653
1654\begin_layout Subsection
1655Úplná a neúplná stavová informace
1656\end_layout
1657
1658\begin_layout Standard
1659V optimálním případě by bylo možno měřit všechny stavové veličiny systému
1660 a na jejich základě libovolným způsobem upravovat jeho dynamické vlastnosti.
1661 Ve skutečnosti ale zpravidla není možné všechny stavy změřit a musíme se
1662 rozhodovat pouze na základě informací, které máme k dispozici.
1663 V takovém případě mluvíme o
1664\emph on
1665neúplné informaci o stavu systému
1666\emph default
1667 
1668\begin_inset CommandInset citation
1669LatexCommand cite
1670key "StechaTDS,BertsekasDPOC"
1671
1672\end_inset
1673
1674.
1675 Může to být způsobeno například nedostupností hodnot některých stavů, použité
1676 měřící přístroje mohou být nepřesné nebo náklady na získání přesné hodnoty
1677 stavu mohou být příliš omezující.
1678 Případy tohoto typu modelujeme zpravidla tak, že v každém kroku regulátor
1679 obdrží jisté pozorování skutečné hodnoty stavu, které ovšem může být ovlivněno
1680 a narušeno stochastickou nejistotou.
1681 Teoreticky se však problém s neúplnou informací o stavu neodlišuje od úloh
1682 s úplnou stavovou informací, protože existují způsoby, jak převést (redukovat)
1683 systém s neúplnou informací na systém s úplnou.
1684 Tyto postupy obecně vedou na algoritmy využívající dynamické programování,
1685 ale jsou výpočetně mnohem náročnější, než v případě úplné informace.
1686 Dva možné postupy redukce převzaté z
1687\begin_inset CommandInset citation
1688LatexCommand cite
1689key "BertsekasDPOC"
1690
1691\end_inset
1692
1693 budou následovat po formulaci problému:
1694\end_layout
1695
1696\begin_layout Subsubsection
1697Formulace problému s neúplnou informací o stavu
1698\end_layout
1699
1700\begin_layout Standard
1701Nejdříve formulujme základní problém s neúplnou stavovou informací, který
1702 následně redukujeme na systém s informací úplnou.
1703 Uvažujme rozšíření základního problému
1704\begin_inset CommandInset ref
1705LatexCommand ref
1706reference "eq:zakladniproblem"
1707
1708\end_inset
1709
1710, kde ale regulátor, namísto přístupu ke stavu systému, získává pouze pozorování
1711 
1712\begin_inset Formula $z_{k}$
1713\end_inset
1714
1715 ve tvaru
1716\begin_inset Formula \begin{equation}
1717z_{0}=h_{0}(x_{0},v_{0}),\quad z_{k}=h_{k}(x_{k},u_{k-1},v_{k}),\quad k=1,2,\ldots,N-1,\label{eq:zaklprobneuplnystav}\end{equation}
1718
1719\end_inset
1720
1721kde
1722\begin_inset Formula $v_{k}$
1723\end_inset
1724
1725 reprezentuje náhodnou poruchu pozorování charakterizovanou rozdělením pravděpod
1726obnosti
1727\begin_inset Formula $P_{v_{k}}$
1728\end_inset
1729
1730, která závisí na současném stavu a všech předchozích stavech, řízeních
1731 a poruchách.
1732 Dále také počáteční stav
1733\begin_inset Formula $x_{0}$
1734\end_inset
1735
1736 považujeme za náhodnou veličinu s rozdělením
1737\begin_inset Formula $P_{x_{0}}$
1738\end_inset
1739
1740.
1741\end_layout
1742
1743\begin_layout Standard
1744Soubor informací dostupných regulátoru v čase
1745\begin_inset Formula $k$
1746\end_inset
1747
1748 označme
1749\begin_inset Formula $I_{k}$
1750\end_inset
1751
1752 informačním vektorem.
1753 Tedy
1754\begin_inset Formula \begin{eqnarray*}
1755I_{k} & = & (z_{0},\ldots,z_{k},u_{0},\ldots,u_{k-1}),\quad k=1,\ldots,N-1,\\
1756I_{0} & = & z_{0}.\end{eqnarray*}
1757
1758\end_inset
1759
1760Uvažujme množinu přípustných řízení jako posloupnost funkcí
1761\begin_inset Formula $\pi=\{\mu_{0},\ldots,\mu_{N-1}\}$
1762\end_inset
1763
1764, kde každá funkce
1765\begin_inset Formula $\mu_{k}$
1766\end_inset
1767
1768 přiřazuje informačnímu vektoru
1769\begin_inset Formula $I_{k}$
1770\end_inset
1771
1772 řízení
1773\begin_inset Formula $\mu_{k}(I_{k})\in U_{k}$
1774\end_inset
1775
1776, pro všechna
1777\begin_inset Formula $I_{k}$
1778\end_inset
1779
1780, kde
1781\begin_inset Formula $k=0,\ldots,N-1$
1782\end_inset
1783
1784.
1785 Chceme najít přípustnou řídící strategii, to jest posloupnost
1786\begin_inset Formula $\pi$
1787\end_inset
1788
1789, která minimalizuje očekávanou ztrátu
1790\begin_inset Formula \[
1791J_{\pi}=\mathbf{E}\left\{ g_{N}(x_{N})+\sum_{k=0}^{N-1}g_{k}\left(x_{k},\mu_{k}(I_{k}),w_{k}\right)\right\} ,\]
1792
1793\end_inset
1794
1795kde je očekávaná hodnota počítána přes náhodné veličiny
1796\begin_inset Formula $x_{0}$
1797\end_inset
1798
1799 a
1800\begin_inset Formula $w_{k},v_{k}$
1801\end_inset
1802
1803 pro
1804\begin_inset Formula $k=0,\ldots,N-1$
1805\end_inset
1806
1807.
1808 Veličiny
1809\begin_inset Formula $x_{k}$
1810\end_inset
1811
1812 a
1813\begin_inset Formula $z_{k}$
1814\end_inset
1815
1816 se vypočítají z rovnic
1817\begin_inset CommandInset ref
1818LatexCommand ref
1819reference "eq:zakladniproblem"
1820
1821\end_inset
1822
1823 respektive
1824\begin_inset CommandInset ref
1825LatexCommand ref
1826reference "eq:zaklprobneuplnystav"
1827
1828\end_inset
1829
1830, přičemž v nich položíme
1831\begin_inset Formula $u_{k}=\mu_{k}(I_{k})$
1832\end_inset
1833
1834.
1835\end_layout
1836
1837\begin_layout Subsubsection
1838Redukce na systém s úplnou stavovou informací
1839\end_layout
1840
1841\begin_layout Standard
1842Tento postup je založen na myšlence definovat nový systém, jehož stav v
1843 čase
1844\begin_inset Formula $k$
1845\end_inset
1846
1847 je množina všech hodnot, kterých může využít regulátor při tvorbě řízení.
1848 Jako stav nového systému tedy volíme informační vektor
1849\begin_inset Formula $I_{k}$
1850\end_inset
1851
1852 a získáme systém
1853\begin_inset Formula \begin{equation}
1854I_{k+1}=(I_{k,}z_{k+1},u_{k}),\quad I_{0}=z_{0},\quad k=0,\ldots,N-2.\label{eq:rednewsystem}\end{equation}
1855
1856\end_inset
1857
1858Na tento systém povahy základního problému s úplnou informací můžeme pohlížet
1859 tak, že
1860\begin_inset Formula $I_{k}$
1861\end_inset
1862
1863 je stav.
1864 Řízení
1865\begin_inset Formula $u_{k}$
1866\end_inset
1867
1868 a pozorování
1869\begin_inset Formula $z_{k}$
1870\end_inset
1871
1872 lze pak chápat jako náhodné poruchy.
1873 Dále rozdělení pravděpodobnosti
1874\begin_inset Formula $z_{k+1}$
1875\end_inset
1876
1877 závisí explicitně pouze na stavu
1878\begin_inset Formula $I_{k}$
1879\end_inset
1880
1881 a řízení
1882\begin_inset Formula $u_{k}$
1883\end_inset
1884
1885.
1886 Ztrátovou funkci vyjádřenou pro nový systém je možno zapsat jako
1887\begin_inset Formula \[
1888\mathbf{E}\left\{ g_{k}\left(x_{k},u_{k},w_{k}\right)\right\} =\mathbf{E}\left\{ \mathbf{E}_{x_{k},w_{k}}\left\{ g_{k}\left(x_{k},u_{k},w_{k}\right)\mid I_{k},u_{k}\right\} \right\} .\]
1889
1890\end_inset
1891
1892Tedy ztráta během jednoho kroku vyjádřená jako funkce nového stavu
1893\begin_inset Formula $I_{k}$
1894\end_inset
1895
1896 a řízení
1897\begin_inset Formula $u_{k}$
1898\end_inset
1899
1900 je
1901\begin_inset Formula \begin{equation}
1902\tilde{g}_{k}(I_{k,}u_{k})=\mathbf{E}_{x_{k},w_{k}}\left\{ g_{k}\left(x_{k},u_{k},w_{k}\right)\mid I_{k},u_{k}\right\} .\label{eq:rednewztrata}\end{equation}
1903
1904\end_inset
1905
1906Původní základní problém s neúplnou stavovou informací byl tedy převeden
1907 na úlohu s úplnou stavovou informací s rovnicí popisující systém
1908\begin_inset CommandInset ref
1909LatexCommand ref
1910reference "eq:rednewsystem"
1911
1912\end_inset
1913
1914 a ztrátou během jednoho kroku
1915\begin_inset CommandInset ref
1916LatexCommand ref
1917reference "eq:rednewztrata"
1918
1919\end_inset
1920
1921.
1922 Nyní je pro něj možno napsat algoritmus dynamického programování.
1923 
1924\end_layout
1925
1926\begin_layout Subsubsection
1927Postačující statistika
1928\end_layout
1929
1930\begin_layout Standard
1931Při užití algoritmu dynamického programování za neúplné stavové informace
1932 je hlavní problém v jeho vyhodnocování ve stavovém prostoru, jehož dimenze
1933 neustále roste.
1934 S každým dalším měřením dimenze stavu a tedy informační vektor
1935\begin_inset Formula $I_{k}$
1936\end_inset
1937
1938 narůstá, proto se snažíme redukovat množství dat skutečně potřebných pro
1939 účely řízení.
1940 Hledáme tedy popis známý jako
1941\emph on
1942postačující statistika
1943\emph default
1944, který bude mít menší dimenzi než
1945\begin_inset Formula $I_{k}$
1946\end_inset
1947
1948, ale současně zahrne veškerý důležitý obsah
1949\begin_inset Formula $I_{k}$
1950\end_inset
1951
1952 potřebný pro řízení.
1953 Jako postačující statistiku označme funkci
1954\begin_inset Formula $S_{k}$
1955\end_inset
1956
1957 informačního vektoru
1958\begin_inset Formula $I_{k}$
1959\end_inset
1960
1961, tedy
1962\begin_inset Formula $S_{k}(I_{k})$
1963\end_inset
1964
1965 takovou, že minimalizuje ztrátu v algoritmu dynamického programování přes
1966 všechna přípustná řízení.
1967 To můžeme zapsat pro vhodnou funkci
1968\begin_inset Formula $H_{k}$
1969\end_inset
1970
1971 jako
1972\begin_inset Formula \begin{eqnarray*}
1973J_{k}(I_{k}) & = & \min_{u_{k}\in U_{k}}H_{k}(S_{k}(I_{k}),u_{k}).\end{eqnarray*}
1974
1975\end_inset
1976
1977Po funkci
1978\begin_inset Formula $S_{k}$
1979\end_inset
1980
1981 samozřejmě chceme, aby byla charakterizována menší množinou čísel, než
1982 informační vektor
1983\begin_inset Formula $I_{k}$
1984\end_inset
1985
1986, abychom získali výhody z jejího použití.
1987 Obecně existuje mnoho funkcí, které mohou sloužit jako postačující statistika.
1988 Triviálním příkladem může být identita
1989\begin_inset Formula $S_{k}(I_{k})=I_{k}$
1990\end_inset
1991
1992.
1993 
1994\end_layout
1995
1996\begin_layout Standard
1997Závisí-li rozdělení pravděpodobnosti poruchy pozorování
1998\begin_inset Formula $v_{k}$
1999\end_inset
2000
2001 explicitně pouze na bezprostředně předcházejícím stavu, řízení a poruše
2002 systému, tedy na
2003\begin_inset Formula $x_{k},u_{k},w_{k}$
2004\end_inset
2005
2006, a nezávisí na předchozích hodnotách
2007\begin_inset Formula $x_{k-1},\ldots,x_{0},u_{k-1},\ldots,u_{0},w_{k-1},\ldots,w_{0},v_{k-1},\ldots,v_{0}$
2008\end_inset
2009
2010, můžeme za postačující statistiku volit podmíněné rozdělení pravděpodobnosti
2011 
2012\begin_inset Formula $P_{x_{k}|I_{k}}$
2013\end_inset
2014
2015, o kterém lze ukázat (viz
2016\begin_inset CommandInset citation
2017LatexCommand cite
2018key "BertsekasDPOC"
2019
2020\end_inset
2021
2022), že
2023\begin_inset Formula \[
2024J_{k}(I_{k})=\min_{u_{k}\in U_{k}}H_{k}(P_{x_{k}|I_{k}},u_{k})=\overline{J}_{k}(P_{x_{k}|I_{k}}),\]
2025
2026\end_inset
2027
2028kde
2029\begin_inset Formula $H_{k}$
2030\end_inset
2031
2032 a
2033\begin_inset Formula $\overline{J}_{k}$
2034\end_inset
2035
2036 jsou vhodné funkce.
2037 Optimální řízení pak získáme ve tvaru funkcí podmíněného rozdělení pravděpodobn
2038osti
2039\begin_inset Formula $\mu_{k}(I_{k})=\overline{\mu}_{k}(P_{x_{k}|I_{k}})$
2040\end_inset
2041
2042 pro
2043\begin_inset Formula $k=0,\ldots,N-1$
2044\end_inset
2045
2046.
2047 Tato reprezentace může být velmi užitečná, protože nám umožňuje rozložit
2048 optimální řízení na dvě nezávislé časti:
2049\end_layout
2050
2051\begin_layout Enumerate
2052
2053\emph on
2054pozorovatel
2055\emph default
2056 (estimátor), který v čase
2057\begin_inset Formula $k$
2058\end_inset
2059
2060 použije měření
2061\begin_inset Formula $z_{k}$
2062\end_inset
2063
2064 a řízení
2065\begin_inset Formula $u_{k-1}$
2066\end_inset
2067
2068 k vygenerování rozdělení pravděpodobnosti
2069\begin_inset Formula $P_{x_{k}|I_{k}}$
2070\end_inset
2071
2072
2073\end_layout
2074
2075\begin_layout Enumerate
2076
2077\emph on
2078regulátor
2079\emph default
2080 (akurátor), který generuje vstupy (řízení) pro systém jako funkci rozdělení
2081 pravděpodobnosti
2082\begin_inset Formula $P_{x_{k}|I_{k}}$
2083\end_inset
2084
2085
2086\end_layout
2087
2088\begin_layout Standard
2089Tento rozklad pak umožňuje navrhovat každou z částí samostatně podle charakteru
2090 konkrétní úlohy.
2091\end_layout
2092
2093\begin_layout Subsection
2094Kalmanův filtr
2095\begin_inset CommandInset label
2096LatexCommand label
2097name "sub:Kalmanův-filtr"
2098
2099\end_inset
2100
2101
2102\end_layout
2103
2104\begin_layout Standard
2105Chceme řešit následující problém, viz
2106\begin_inset CommandInset citation
2107LatexCommand cite
2108key "StechaTDS"
2109
2110\end_inset
2111
2112: Máme lineární systém s neúplnou stavovou informací a snažíme se odhadnout
2113 (rekonstruovat, estimovat) stav systému z měřitelných vstupních a výstupních
2114 veličin.
2115 Dále předpokládejme, že měření výstupu a popřípadě i vstupu je zatíženo
2116 chybou měření.
2117 Tyto nepřesnosti měření můžeme modelovat jako aditivní šum.
2118 Odhadování (rekonstrukci, estimaci) potom navrhujeme pomocí stochastických
2119 metod.
2120 Řešení vede na takzvaný
2121\emph on
2122Kalmanův filtr
2123\emph default
2124.
2125\end_layout
2126
2127\begin_layout Standard
2128\begin_inset VSpace medskip
2129\end_inset
2130
2131
2132\end_layout
2133
2134\begin_layout Standard
2135Následující formulace problému a popis algoritmu Kalmanova filtru je převzat
2136 z
2137\begin_inset CommandInset citation
2138LatexCommand cite
2139key "BertsekasDPOC"
2140
2141\end_inset
2142
2143, kde lze také nalézt odvození příslušných rovnic: Máme dva náhodné vektory
2144 
2145\begin_inset Formula $x$
2146\end_inset
2147
2148 a
2149\begin_inset Formula $y$
2150\end_inset
2151
2152, které jsou svázány sdruženým rozdělením pravděpodobnosti tak, že hodnota
2153 jednoho poskytuje informaci o hodnotě druhého.
2154 Známe hodnotu
2155\begin_inset Formula $y$
2156\end_inset
2157
2158 a chceme určit (odhadnout) hodnotu
2159\begin_inset Formula $x$
2160\end_inset
2161
2162 tak, aby střední kvadratická odchylka mezi
2163\begin_inset Formula $x$
2164\end_inset
2165
2166 a jeho odhadem byla minimální.
2167\end_layout
2168
2169\begin_layout Standard
2170Takový odhad můžeme zístat v nejjednodušším případě metodou nejmenších čtverců,
2171 ale pro tento způsob je třeba velkého počtu měření.
2172 Jako lepší způsob se ale jeví využít sekvenční struktury problému a iterativně
2173 použít Kalmanův filtr, kdy odhad v čase
2174\begin_inset Formula $k+1$
2175\end_inset
2176
2177 získáme na základě jednoduchých rovnic pouze z předchozího odhadu a nového
2178 měření v čase
2179\begin_inset Formula $k$
2180\end_inset
2181
2182, žádná předchozí měření nejsou explicitně zahrnuta.
2183\end_layout
2184
2185\begin_layout Standard
2186V dalším textu označme
2187\begin_inset Formula $\hat{x}_{k|k-1}$
2188\end_inset
2189
2190 apriorní odhad stavu, tedy odhad stavu v čase
2191\begin_inset Formula $k$
2192\end_inset
2193
2194 na základě informací až do času
2195\begin_inset Formula $k-1$
2196\end_inset
2197
2198.
2199 Analogicky
2200\begin_inset Formula $\Sigma_{k|k-1}$
2201\end_inset
2202
2203 označuje apriorní kovarianční matici.
2204 Aposteriorní odhad stavu označme
2205\begin_inset Formula $\hat{x}_{k|k}$
2206\end_inset
2207
2208, to jest odhad v čase
2209\begin_inset Formula $k$
2210\end_inset
2211
2212 na základě informací až do času
2213\begin_inset Formula $k$
2214\end_inset
2215
2216.
2217 Aposteriorní kovarianční matice je pak označena
2218\begin_inset Formula $\Sigma_{k|k}$
2219\end_inset
2220
2221.
2222 
2223\end_layout
2224
2225\begin_layout Standard
2226\begin_inset VSpace bigskip
2227\end_inset
2228
2229
2230\end_layout
2231
2232\begin_layout Subsubsection
2233Systém
2234\end_layout
2235
2236\begin_layout Standard
2237Uvažujme lineární dynamický systém bez řízení (
2238\begin_inset Formula $u_{k}\equiv0$
2239\end_inset
2240
2241) ve tvaru
2242\begin_inset Formula \[
2243x_{k+1}=A_{k}x_{k}+w_{k},\; k=0,1,\ldots,N-1,\]
2244
2245\end_inset
2246
2247kde
2248\begin_inset Formula $x_{k}$
2249\end_inset
2250
2251 je vektor stavu,
2252\begin_inset Formula $w_{k}$
2253\end_inset
2254
2255 je vektor náhodné poruchy a matice
2256\begin_inset Formula $A_{k}$
2257\end_inset
2258
2259 považujeme za známé.
2260 Dále rovnice měření je
2261\begin_inset Formula \[
2262z_{k}=C_{k}x_{k}+v_{k},\; k=0,1,\ldots,N-1,\]
2263
2264\end_inset
2265
2266kde
2267\begin_inset Formula $z_{k}$
2268\end_inset
2269
2270 je vektor pozorování (měřených veličin) a
2271\begin_inset Formula $v_{k}$
2272\end_inset
2273
2274 vektor šumu.
2275 Nechť
2276\begin_inset Formula $x_{0},w_{0},\ldots,w_{N-1},v_{0},\ldots,v_{N-1}$
2277\end_inset
2278
2279 jsou vektory nezávislých náhodných veličin s daným rozdělením pravděpodobnosti,
2280 takovým, že
2281\begin_inset Formula \[
2282\mathrm{E}\{w_{k}\}=\mathrm{E}\{v_{k}\}=0,\; k=0,1,\ldots,N-1.\]
2283
2284\end_inset
2285
2286Označme
2287\begin_inset Formula \[
2288S=\mathrm{E}\left\{ \left(x_{0}-\mathrm{E}\{x_{0}\}\right)\left(x_{0}-\mathrm{E}\{x_{0}\}\right)^{T}\right\} ,\; M_{k}=\mathrm{E}\{w_{k}w_{k}^{T}\},\; N_{k}=\mathrm{E}\{v_{k}v_{k}^{T}\},\]
2289
2290\end_inset
2291
2292a nechť matice
2293\begin_inset Formula $N_{k}$
2294\end_inset
2295
2296 je pozitivně definitní pro všechny časy
2297\begin_inset Formula $k$
2298\end_inset
2299
2300.
2301\end_layout
2302
2303\begin_layout Subsubsection
2304Algoritmus Kalmanova filtru
2305\end_layout
2306
2307\begin_layout Standard
2308Předpokládejme, že máme spočítaný odhad
2309\begin_inset Formula $\hat{x}_{k|k-1}$
2310\end_inset
2311
2312 společně s kovarianční maticí
2313\begin_inset Formula $\Sigma_{k|k-1}=\mathrm{E}\left\{ \left(x_{k}-\hat{x}_{k|k-1}\right)\left(x_{k}-\hat{x}_{k|k-1}\right)^{T}\right\} $
2314\end_inset
2315
2316.
2317 V čase
2318\begin_inset Formula $k$
2319\end_inset
2320
2321 získáme další měření
2322\begin_inset Formula $z_{k}=C_{k}x_{k}+v_{k}$
2323\end_inset
2324
2325.
2326 Nyní můžeme získat aposteriorní odhad stavu
2327\begin_inset Formula $\hat{x}_{k|k}$
2328\end_inset
2329
2330 v čase
2331\begin_inset Formula $k$
2332\end_inset
2333
2334 jako
2335\begin_inset Formula \begin{equation}
2336\hat{x}_{k|k}=\hat{x}_{k|k-1}+\Sigma_{k|k-1}C_{k}^{T}\left(C_{k}\Sigma_{k|k-1}C_{k}^{T}+N_{k}\right)^{-1}\left(z_{k}-C_{k}\hat{x}_{k|k-1}\right),\label{eq:kalmanaposkk}\end{equation}
2337
2338\end_inset
2339
2340dále pak apriorní odhad stavu
2341\begin_inset Formula $\hat{x}_{k+1|k}$
2342\end_inset
2343
2344 v čase
2345\begin_inset Formula $k+1,$
2346\end_inset
2347
2348 tedy
2349\begin_inset Formula $\hat{x}_{k+1|k}=A_{k}\hat{x}_{k|k}$
2350\end_inset
2351
2352.
2353 Apriorní kovarianční matici v čase
2354\begin_inset Formula $k+1$
2355\end_inset
2356
2357 vypočítáme z
2358\begin_inset Formula \[
2359\Sigma_{k+1|k}=A_{k}\Sigma_{k|k}A_{k}^{T}+M_{k},\]
2360
2361\end_inset
2362
2363kde aposteriorní kovarianční matici
2364\begin_inset Formula $\Sigma_{k|k}=\mathrm{E}\left\{ \left(x_{k}-\hat{x}_{k|k}\right)\left(x_{k}-\hat{x}_{k|k}\right)^{T}\right\} $
2365\end_inset
2366
2367 můžeme získat z rovnice
2368\begin_inset Formula \[
2369\Sigma_{k|k}=\Sigma_{k|k-1}-\Sigma_{k|k-1}C_{k}^{T}\left(C_{k}\Sigma_{k|k-1}C_{k}^{T}+N_{k}\right)^{-1}C_{k}\Sigma_{k|k-1}.\]
2370
2371\end_inset
2372
2373Přidáním počátečních podmínek
2374\begin_inset Formula $\hat{x}_{0|-1}=\mathrm{E}\{x_{0}\}$
2375\end_inset
2376
2377 a
2378\begin_inset Formula $\Sigma_{0|-1}=S$
2379\end_inset
2380
2381 získáme
2382\emph on
2383algoritmus Kalmanova filtru
2384\emph default
2385, který ve své podstatě rekurzivně generuje posloupnost lineárních odhadů
2386 založených na metodě nejmenších čtverců.
2387\end_layout
2388
2389\begin_layout Standard
2390Dále je možno vyjádřit rovnici
2391\begin_inset CommandInset ref
2392LatexCommand ref
2393reference "eq:kalmanaposkk"
2394
2395\end_inset
2396
2397 ve tvaru
2398\begin_inset Formula \[
2399\hat{x}_{k|k}=A_{k-1}\hat{x}_{k-1|k-1}+\Sigma_{k|k}C_{k}^{T}N_{k}^{-1}\left(z_{k}-C_{k}A_{k-1}\hat{x}_{k-1|k-1}\right),\]
2400
2401\end_inset
2402
2403který při uvažování systému se vstupem
2404\begin_inset Formula \[
2405x_{k+1}=A_{k}x_{k}+B_{k}u_{k}+w_{k},\; k=0,1,\ldots,N-1,\]
2406
2407\end_inset
2408
2409umožňuje vypočítat rekurzivně aposteriorní odhady stavů
2410\begin_inset Formula $\hat{x}_{k|k}$
2411\end_inset
2412
2413 v časech
2414\begin_inset Formula $k$
2415\end_inset
2416
2417 z rovnice
2418\begin_inset Formula \[
2419\hat{x}_{k|k}=A_{k-1}\hat{x}_{k-1|k-1}+B_{k-1}u_{k-1}+\Sigma_{k|k}C_{k}^{T}N_{k}^{-1}\left(z_{k}-C_{k}A_{k-1}\hat{x}_{k-1|k-1}\right),\]
2420
2421\end_inset
2422
2423přičemž rovnice pro výpočet aposteriorní kovarianční matice
2424\begin_inset Formula $\Sigma_{k|k}$
2425\end_inset
2426
2427 zůstávají nezměněny.
2428\end_layout
2429
2430\begin_layout Section
2431Spojité systémy
2432\end_layout
2433
2434\begin_layout Subsection
2435Deterministické systémy se spojitým časem
2436\end_layout
2437
2438\begin_layout Standard
2439I když zpravidla pracujeme s diskrétními systémy, zejména z důvodů výpočtů
2440 na počítači, teorie optimálního řízení spojitých systémů může být velmi
2441 užitečná.
2442 Poskytuje totiž důležité principy, které jsou velmi často používány při
2443 návrhu algoritmů pro duální řízení.
2444 Konkrétně se jedná o Hamilton-Jacobi-Bellmanovu rovnost a Pontryaginův
2445 princip minima.
2446\end_layout
2447
2448\begin_layout Subsubsection
2449Spojitý systém
2450\end_layout
2451
2452\begin_layout Standard
2453Dynamický systém se spojitým časem uvažujeme dle
2454\begin_inset CommandInset citation
2455LatexCommand cite
2456key "BertsekasDPOC"
2457
2458\end_inset
2459
2460 ve tvaru
2461\begin_inset Formula \begin{eqnarray}
2462\dot{x}(t) & = & f(x(t),u(t)),\;0\leq t\leq T,\label{eq:spojsystemHJBP}\\
2463x(0) & = & x_{0},\nonumber \end{eqnarray}
2464
2465\end_inset
2466
2467kde
2468\begin_inset Formula $x(t)$
2469\end_inset
2470
2471 je stavový vektor v čase
2472\begin_inset Formula $t$
2473\end_inset
2474
2475,
2476\begin_inset Formula $\dot{x}(t)$
2477\end_inset
2478
2479 je vektor prvních derivací podle času v čase
2480\begin_inset Formula $t$
2481\end_inset
2482
2483,
2484\begin_inset Formula $u(t)\in U$
2485\end_inset
2486
2487 je řídící vektor v čase
2488\begin_inset Formula $t$
2489\end_inset
2490
2491,
2492\begin_inset Formula $U$
2493\end_inset
2494
2495 je množina omezení řízení a
2496\begin_inset Formula $T$
2497\end_inset
2498
2499 je časový horizont.
2500 O funkci
2501\begin_inset Formula $f$
2502\end_inset
2503
2504 předpokládáme, že je spojitě diferencovatelná vzhledem k
2505\begin_inset Formula $x$
2506\end_inset
2507
2508 a spojitá vzhledem k
2509\begin_inset Formula $u$
2510\end_inset
2511
2512.
2513 Rovnice
2514\begin_inset CommandInset ref
2515LatexCommand ref
2516reference "eq:spojsystemHJBP"
2517
2518\end_inset
2519
2520 představuje soustavu
2521\begin_inset Formula $n$
2522\end_inset
2523
2524 diferenciálních rovnic prvního řádu.
2525 Naším cílem je nalezení přípustné řídící trajektorie
2526\begin_inset Formula $\left\{ u(t)\mid t\in[0,T]\right\} $
2527\end_inset
2528
2529 a odpovídající stavové trajektorie
2530\family roman
2531\series medium
2532\shape up
2533\size normal
2534\emph off
2535\bar no
2536\noun off
2537\color none
2538
2539\begin_inset Formula $\left\{ x(t)\mid t\in[0,T]\right\} $
2540\end_inset
2541
2542 takové, že minimalizují ztrátovou funkci ve tvaru
2543\begin_inset Formula \[
2544h(x(T))+\int_{0}^{T}g\left(x(t),u(t)\right)dt,\]
2545
2546\end_inset
2547
2548o funkcích
2549\begin_inset Formula $g$
2550\end_inset
2551
2552 a
2553\begin_inset Formula $h$
2554\end_inset
2555
2556 předpokládáme, že jsou spojitě diferencovatelné vzhledem k
2557\begin_inset Formula $x$
2558\end_inset
2559
2560 a
2561\begin_inset Formula $g$
2562\end_inset
2563
2564 je spojitá vzhledem k
2565\begin_inset Formula $u$
2566\end_inset
2567
2568.
2569\end_layout
2570
2571\begin_layout Subsubsection
2572Hamilton-Jacobi-Bellmanova rovnost
2573\end_layout
2574
2575\begin_layout Standard
2576Hamilton-Jacobi-Bellmanova rovnost je parciální diferenciální rovnicí, která
2577 je splněna optimální funkcí nákladů na pokračování
2578\begin_inset Formula $J^{*}(t,x)$
2579\end_inset
2580
2581.
2582 Tato rovnice je analogií algoritmu dynamického programování ve spojitém
2583 čase.
2584 Rovnici lze psát podle
2585\begin_inset CommandInset citation
2586LatexCommand cite
2587key "BertsekasDPOC"
2588
2589\end_inset
2590
2591 ve tvaru
2592\begin_inset Formula \begin{eqnarray}
25930 & = & \min_{u\in U}\left[g(x,u)+\nabla_{t}J^{*}(t,x)+\nabla_{x}J^{*}(t,x)^{T}f(x,u)\right],\quad\forall t,x,\label{eq:hjbrovnostJ}\\
2594J^{*}(T,x) & = & h(x).\nonumber \end{eqnarray}
2595
2596\end_inset
2597
2598Jedná se tedy o parciální diferenciální rovnici s okrajovou podmínkou.
2599 O funkci
2600\begin_inset Formula $J^{*}(t,x)$
2601\end_inset
2602
2603 jsme předpokládali diferencovatelnost, apriorně ale její diferencovatelnost
2604 neznáme a tedy nevíme, jestli
2605\begin_inset Formula $J^{*}(t,x)$
2606\end_inset
2607
2608 řeší rovnici
2609\begin_inset CommandInset ref
2610LatexCommand ref
2611reference "eq:hjbrovnostJ"
2612
2613\end_inset
2614
2615.
2616 Můžeme však použít následující tvrzení, jehož formulaci i důkaz lze nalézt
2617 v
2618\begin_inset CommandInset citation
2619LatexCommand cite
2620key "BertsekasDPOC"
2621
2622\end_inset
2623
2624:
2625\end_layout
2626
2627\begin_layout Description
2628Věta
2629\begin_inset space \space{}
2630\end_inset
2631
2632o
2633\begin_inset space \space{}
2634\end_inset
2635
2636dostatečnosti:
2637\begin_inset ERT
2638status open
2639
2640\begin_layout Plain Layout
2641
2642~
2643\end_layout
2644
2645\end_inset
2646
2647
2648\begin_inset Newline newline
2649\end_inset
2650
2651Nechť je funkce
2652\begin_inset Formula $V(t,x)$
2653\end_inset
2654
2655 spojitě diferencovatelná vzhledem k
2656\begin_inset Formula $t$
2657\end_inset
2658
2659 a
2660\begin_inset Formula $x$
2661\end_inset
2662
2663 a nechť je řešením Hamilton-Jacobi-Bellmanovy rovnosti:
2664\begin_inset Formula \begin{eqnarray}
26650 & = & \min_{u\in U}\left[g(x,u)+\nabla_{t}V(t,x)+\nabla_{x}V(t,x)^{T}f(x,u)\right],\quad\forall t,x,\label{eq:hjbrovnostV}\\
2666V(T,x) & = & h(x),\quad\forall x.\nonumber \end{eqnarray}
2667
2668\end_inset
2669
2670Předpokládejme dále, že
2671\begin_inset Formula $\mu^{*}(t,x)$
2672\end_inset
2673
2674 dosáhne minima v rovnosti
2675\begin_inset CommandInset ref
2676LatexCommand ref
2677reference "eq:hjbrovnostV"
2678
2679\end_inset
2680
2681 pro všechna
2682\begin_inset Formula $t$
2683\end_inset
2684
2685 a
2686\begin_inset Formula $x$
2687\end_inset
2688
2689.
2690 Nechť
2691\family roman
2692\series medium
2693\shape up
2694\size normal
2695\emph off
2696\bar no
2697\noun off
2698\color none
2699 
2700\begin_inset Formula $\left\{ x^{*}(t)\mid t\in[0,T]\right\} $
2701\end_inset
2702
2703 označuje stavovou trajektorii získanou při dané počáteční podmínce
2704\begin_inset Formula $x^{*}(0)=x_{0}$
2705\end_inset
2706
2707 a řídící trajektorii
2708\family default
2709\series default
2710\shape default
2711\size default
2712\emph default
2713\bar default
2714\noun default
2715\color inherit
2716
2717\begin_inset Formula $u^{*}(t)=\mu^{*}(t,x^{*}(t)),\; t\in[0,T]$
2718\end_inset
2719
2720.
2721 Pak
2722\begin_inset Formula $V$
2723\end_inset
2724
2725 je rovno optimální funkci nákladů na pokračování, tedy
2726\begin_inset Formula \[
2727V(t,x)=J^{*}(t,x),\quad\forall t,x.\]
2728
2729\end_inset
2730
2731Navíc řídící trajektorie
2732\begin_inset Formula $\left\{ u^{*}(t)\mid t\in[0,T]\right\} $
2733\end_inset
2734
2735 je optimální.
2736 
2737\end_layout
2738
2739\begin_layout Subsubsection
2740Pontryaginův princip minima
2741\end_layout
2742
2743\begin_layout Standard
2744Pontryaginův princip minima je důležitým teorémem optimálního řízení.
2745 Poskytuje nutnou (ne však postačující) podmínku pro optimální trajektorii,
2746 je úzce spřízněn s Hamilton-Jacobi-Bellmanovou rovností a lze ho z ní podle
2747 
2748\begin_inset CommandInset citation
2749LatexCommand cite
2750key "BertsekasDPOC"
2751
2752\end_inset
2753
2754 také odvodit.
2755 Princip minima je výhodné formulovat pomocí Hamiltoniánu.
2756 Označme
2757\begin_inset Formula $p$
2758\end_inset
2759
2760 gradient optimální funkce nákladů na pokračování pro optimální stavovou
2761 trajektorii
2762\begin_inset Formula $p(t)=\nabla_{x}J^{*}\left(t,x^{*}(t)\right)$
2763\end_inset
2764
2765 a definujme Hamiltonián jako funkci zobrazující trojice vektorů
2766\begin_inset Formula $(x,u,p)$
2767\end_inset
2768
2769 do reálných čísel
2770\begin_inset Formula \[
2771H(x,u,p)=g(x,u)+p^{T}f(x,u).\]
2772
2773\end_inset
2774
2775Rovnice pro systém pak může být zapsána v kompaktním tvaru
2776\begin_inset Formula \[
2777\dot{x}^{*}(t)=\nabla_{p}H\left(x^{*}(t),u^{*}(t),p(t)\right).\]
2778
2779\end_inset
2780
2781Obdobně může být zapsána pro
2782\begin_inset Formula $p$
2783\end_inset
2784
2785 takzvaná
2786\emph on
2787adjungovaná rovnice
2788\emph default
2789
2790\begin_inset Formula \[
2791\dot{p}(t)=-\nabla_{x}H\left(x^{*}(t),u^{*}(t),p(t)\right).\]
2792
2793\end_inset
2794
2795Pontryaginův princip minima je podle
2796\begin_inset CommandInset citation
2797LatexCommand cite
2798key "BertsekasDPOC"
2799
2800\end_inset
2801
2802 formulován následovně:
2803\end_layout
2804
2805\begin_layout Description
2806Princip
2807\begin_inset space \space{}
2808\end_inset
2809
2810minima:
2811\begin_inset ERT
2812status open
2813
2814\begin_layout Plain Layout
2815
2816~
2817\end_layout
2818
2819\end_inset
2820
2821
2822\begin_inset Newline newline
2823\end_inset
2824
2825Nechť
2826\family roman
2827\series medium
2828\shape up
2829\size normal
2830\emph off
2831\bar no
2832\noun off
2833\color none
2834
2835\begin_inset Formula $\left\{ u^{*}(t)\mid t\in[0,T]\right\} $
2836\end_inset
2837
2838 je optimální řídící trajektorie a nechť
2839\begin_inset Formula $\left\{ x^{*}(t)\mid t\in[0,T]\right\} $
2840\end_inset
2841
2842 je odpovídající stavová trajektorie, to jest
2843\begin_inset Formula \[
2844\dot{x}^{*}(t)=f\left(x^{*}(t),u^{*}(t)\right),\quad x^{*}(0)=x_{0}.\]
2845
2846\end_inset
2847
2848Nechť dále
2849\begin_inset Formula $p(t)$
2850\end_inset
2851
2852 je řešením adjungované rovnice
2853\begin_inset Formula \[
2854\dot{p}(t)=-\nabla_{x}H\left(x^{*}(t),u^{*}(t),p(t)\right),\]
2855
2856\end_inset
2857
2858s okrajovou podmínkou
2859\begin_inset Formula $p(T)=\nabla h\left(x^{*}(T)\right)$
2860\end_inset
2861
2862.
2863 Pak pro všechna
2864\begin_inset Formula $t\in[0,T]$
2865\end_inset
2866
2867
2868\begin_inset Formula \[
2869u^{*}(t)=\arg\min_{u\in U}H\left(x^{*}(t),u,p(t)\right).\]
2870
2871\end_inset
2872
2873Navíc existuje konstanta
2874\begin_inset Formula $C$
2875\end_inset
2876
2877 taková, že
2878\begin_inset Formula \[
2879H\left(x^{*}(t),u^{*}(t),p(t)\right)=C,\quad\forall t\in[0,T].\]
2880
2881\end_inset
2882
2883
2884\end_layout
2885
2886\begin_layout Section
2887Algoritmy pro duální řízení
2888\end_layout
2889
2890\begin_layout Standard
2891Metody pro nalezení optimálního řízení lze obecně rozdělit do dvou základních
2892 kategorií na
2893\emph on
2894globální
2895\emph default
2896a
2897\emph on
2898lokální
2899\emph default
2900viz
2901\begin_inset CommandInset citation
2902LatexCommand cite
2903key "TodorovWeiweiILQG,TodorovTassaILDP"
2904
2905\end_inset
2906
2907
2908\emph on
2909.
2910
2911\emph default
2912 
2913\end_layout
2914
2915\begin_layout Standard
2916Globální metody, používané zejména v posilovaném učení
2917\color black
2918(
2919\begin_inset Quotes gld
2920\end_inset
2921
2922Reinforcement Learning
2923\color inherit
2924
2925\begin_inset Quotes grd
2926\end_inset
2927
2928), jsou založeny na na
2929\color black
2930Bellmanově principu optimality, Hamilton-Jacobi-Bellmanově rovnosti
2931\color inherit
2932 a dynamickém programování.
2933 Tyto algoritmy hledají globálně optimální zpětnovazební řízení pro všechny
2934 stavy obecného stochastického systému a proto podléhají nebezpečí
2935\begin_inset Quotes gld
2936\end_inset
2937
2938problému dimenzionality
2939\begin_inset Quotes grd
2940\end_inset
2941
2942 nebo také rozměrnosti (z anglického
2943\begin_inset Quotes eld
2944\end_inset
2945
2946curse of dimensionality
2947\begin_inset Quotes erd
2948\end_inset
2949
2950 doslovně -
2951\emph on
2952kletba rozměrnosti
2953\emph default
2954).
2955 Jednoduše můžeme tento problém chápat tak, že při numerickém řešení úlohy
2956 jsou počítačem procházeny všechny body diskretizovaného stavového a řídícího
2957 prostoru, jejichž počet s rostoucím počtem dimenzí extrémně (exponenciálně)
2958 rychle roste.
2959 Výpočet pro mnohadimenzionální úlohy se pak stává co do paměťových nároků,
2960 ale hlavně z hlediska výpočetního času prakticky nerealizovatelným.
2961\end_layout
2962
2963\begin_layout Standard
2964Lokální metody, častěji studované v teorii řízení, souvisí s
2965\color black
2966Pontryaginovým principem maxima
2967\color inherit
2968.
2969 Jejich podstatou je nalezení řízení, které je pouze lokálně optimální v
2970 okolí nějaké
2971\begin_inset Quotes gld
2972\end_inset
2973
2974extremální
2975\begin_inset Quotes grd
2976\end_inset
2977
2978 trajektorie.
2979 Většinou je užito deterministických prostředků jako řešení soustavy obyčejných
2980 diferenciálních rovnic (například střelbou nebo relaxací).
2981 Tento přístup ale vede na přímovazební
2982\color red
2983 
2984\color black
2985řízení
2986\color red
2987 
2988\color inherit
2989a nelze užít pro stochastické úlohy.
2990 Vyhýbá se ale problému dimenzionality, což umožňuje řešit i komplexnější
2991 problémy.
2992\end_layout
2993
2994\begin_layout Standard
2995V poslední době je snaha vyvíjet nové algoritmy, které kombinují výhody
2996 obou výše zmíněných přístupů.
2997 Příkladem může být
2998\emph on
2999iterativní LQG
3000\emph default
3001 (
3002\emph on
3003iLQG
3004\emph default
3005).
3006 Tento algoritmus je založen na linearizaci nelineární úlohy v každém bodě
3007 reprezentativní trajektorie a následném řešení modifikované Riccatiho rovnice.
3008 Výhodou
3009\emph on
3010iLQG
3011\emph default
3012 je, že jejím výsledkem je zpětnovazební řízení.
3013 Metoda je ale stále deterministická a nedokáže se vypořádat s nekvadratickými
3014 ztrátovými funkcemi a požadavky na omezené řízení.
3015 
3016\end_layout
3017
3018\begin_layout Standard
3019S výše zmíněnými problémy se snaží vypořádat modifikovaná
3020\emph on
3021iLQG
3022\emph default
3023, která bude použita pro srovnání s ústřední metodou této práce
3024\emph on
3025iLDP
3026\emph default
3027.
3028 Do kategorie smíšených metod spadá i metoda
3029\emph on
3030iLDP
3031\emph default
3032, která bude podrobně popsána v následující kapitole.
3033 
3034\end_layout
3035
3036\begin_layout Chapter
3037Algoritmy pro návrh řízení
3038\begin_inset CommandInset label
3039LatexCommand label
3040name "cha:Algoritmy-pro-návrh"
3041
3042\end_inset
3043
3044
3045\end_layout
3046
3047\begin_layout Section
3048Výběr algoritmů pro srovnání
3049\end_layout
3050
3051\begin_layout Subsection
3052Princip separace
3053\end_layout
3054
3055\begin_layout Standard
3056
3057\emph on
3058Princip separace
3059\emph default
3060 nebo také
3061\emph on
3062separační teorém pro lineární systémy s kvadratickou ztrátovou funkcí
3063\emph default
3064 zaujímá důležité místo v moderní teorii řízení.
3065 Intuitivně je velmi jednoduchý.
3066 Podle
3067\begin_inset CommandInset citation
3068LatexCommand cite
3069key "BertsekasDPOC"
3070
3071\end_inset
3072
3073 je formulován následovně:
3074\end_layout
3075
3076\begin_layout Standard
3077Optimální řízení pro lineární systém může být rozděleno do dvou částí:
3078\end_layout
3079
3080\begin_layout Enumerate
3081
3082\emph on
3083pozorovatel
3084\emph default
3085 (estimátor), který využívá měřená data k odhadu stavu systému,
3086\end_layout
3087
3088\begin_layout Enumerate
3089
3090\emph on
3091regulátor
3092\emph default
3093 (akurátor), který generuje ze stavu, respektive jeho odhadu, řízení pro
3094 systém.
3095\end_layout
3096
3097\begin_layout Standard
3098Navíc část optimálního řízení označená jako
3099\emph on
3100pozorovatel
3101\emph default
3102 je optimálním řešením problému určování (estimace) stavu nezávisle na uvažování
3103 řízení a část označená jako
3104\emph on
3105regulátor
3106\emph default
3107je optimální řešení řídícího problému za předpokladu úplné stavové informace.
3108 Každá část tedy může být navrhována nezávisle na sobě jako optimální řešení
3109 příslušných problémů estimace a regulace.
3110\end_layout
3111
3112\begin_layout Subsection
3113LQG
3114\begin_inset CommandInset label
3115LatexCommand label
3116name "sub:LQGkp1"
3117
3118\end_inset
3119
3120
3121\end_layout
3122
3123\begin_layout Standard
3124Řízení
3125\emph on
3126LQG
3127\emph default
3128 (z anglického
3129\begin_inset Quotes gld
3130\end_inset
3131
3132Linear-Quadratic-Gaussian
3133\begin_inset Quotes grd
3134\end_inset
3135
3136) je primárně navrženo pro řízení lineárních systémů s kvadratickou ztrátovou
3137 funkcí a Gaussovským šumem.
3138 Existují však různé modifikace i pro nelineární systémy.
3139 Algoritmus
3140\emph on
3141LQG
3142\emph default
3143 je založen právě na
3144\emph on
3145principu separace
3146\emph default
3147,
3148\emph on
3149 
3150\emph default
3151kdy pozorovatel a regulátor jsou navrhovány zvlášť.
3152 Optimálním pozorovatelem je zde Kalmanův filtr a lze jej užít například
3153 ve tvaru, jak byl uveden v části
3154\begin_inset CommandInset ref
3155LatexCommand ref
3156reference "sub:Kalmanův-filtr"
3157
3158\end_inset
3159
3160.
3161 Optimálním regulátorem pak řízení označované jako LQ regulátor, které může
3162 být formulováno podle
3163\begin_inset CommandInset citation
3164LatexCommand cite
3165key "BertsekasDPOC"
3166
3167\end_inset
3168
3169 následovně:
3170\end_layout
3171
3172\begin_layout Paragraph
3173LQ regulátor
3174\end_layout
3175
3176\begin_layout Standard
3177pro lineární systém
3178\begin_inset Formula \[
3179x_{k+1}=A_{k}x_{k}+B_{k}u_{k}+w_{k},\quad k=0,1,\ldots,N-1,\]
3180
3181\end_inset
3182
3183s kvadratickou ztrátovou funkcí
3184\begin_inset Formula \[
3185\mathbf{E}\left\{ x_{N}^{T}Q_{N}x_{N}+\sum_{k=0}^{N-1}\left(x_{k}^{T}Q_{k}x_{k}+u_{k}^{T}R_{k}u_{k}\right)\right\} ,\]
3186
3187\end_inset
3188
3189při uvažování neúplné stavové informace je optimální řízení v každém čase
3190 rovno
3191\begin_inset Formula \[
3192\mu_{k}^{*}(I_{k})=L_{k}\mathrm{E}\left\{ x_{k}\mid I_{k}\right\} ,\]
3193
3194\end_inset
3195
3196kde matice
3197\begin_inset Formula $L_{k}$
3198\end_inset
3199
3200 je dána rovností
3201\begin_inset Formula \[
3202L_{k}=-\left(R_{k}+B_{k}^{T}K_{k+1}B_{k}\right)^{-1}B_{k}^{T}K_{k+1}A_{k},\]
3203
3204\end_inset
3205
3206přičemž matice
3207\begin_inset Formula $K_{k}$
3208\end_inset
3209
3210 získáme rekurzivně z Riccatiho rovnice
3211\begin_inset Formula \begin{eqnarray*}
3212K_{N} & = & Q_{N},\\
3213K_{k} & = & A_{k}^{T}\left(K_{k+1}-K_{k+1}B_{k}\left(R_{k}+B_{k}^{T}K_{k+1}B_{k}\right)^{-1}B_{k}^{T}K_{k+1}\right)A_{k}+Q_{k}.\end{eqnarray*}
3214
3215\end_inset
3216
3217
3218\end_layout
3219
3220\begin_layout Subsection
3221Zobecněné iterativní LQG řízení
3222\end_layout
3223
3224\begin_layout Standard
3225V článku
3226\begin_inset CommandInset citation
3227LatexCommand cite
3228key "TodorovWeiweiILQG"
3229
3230\end_inset
3231
3232 je popsán algoritmus
3233\emph on
3234zobecněného iterativního LQG
3235\emph default
3236řízení (
3237\emph on
3238iLQG
3239\emph default
3240) pro účely nalezení lokálního zpětnovazebního řízení nelineárních stochastickýc
3241h systémů s kvadratickou ztrátou, ale navíc lze požadovat i omezené vstupy.
3242 Obecně zahrnutí požadavku na omezené vstupy do ztrátové funkce způsobí
3243 porušení její kvadratičnosti, zmiňovaný algoritmus však řeší problém jinak,
3244 konkrétně následnou korekcí rovnic pro výpočet řízení.
3245 Dále s nelinearitou se algoritmus vypořádává tak, že systém v každém časovém
3246 kroku linearizuje vzhledem k reprezentativní trajektorii.
3247 Linearizovaný systém je pak řešen klasickým přístupem
3248\emph on
3249LQG
3250\emph default
3251, avšak v jeho průběhu je do výpočtů ještě zasahováno.
3252 Jsou prováděny úpravy dílčích výsledků a opravy chyb z důvodu práce s linearizo
3253vaným nelineárním systémem pro zajištění konvergence algoritmu.
3254 Samotný algoritmus je odvozen a detailně popsán v
3255\begin_inset CommandInset citation
3256LatexCommand cite
3257key "TodorovWeiweiILQG"
3258
3259\end_inset
3260
3261, odkud je převzat následující zestručněný popis:
3262\end_layout
3263
3264\begin_layout Paragraph
3265iLQG lokální řízení
3266\end_layout
3267
3268\begin_layout Standard
3269pro obecně nelineární stochastický systém
3270\begin_inset Formula \begin{eqnarray}
3271x_{k+1} & = & x_{k}+f(x_{k},u_{k})\cdot\Delta k+F(x_{k},u_{k})\cdot e_{k},\; k=0,1,\ldots,N-1,\label{eq:systemilqgdef}\\
3272x_{(k=0)} & = & x_{0},\nonumber \end{eqnarray}
3273
3274\end_inset
3275
3276se ztrátovou funkcí
3277\begin_inset Formula \[
3278\mathrm{E}\left\{ h(x_{N})+\sum_{k=0}^{N-1}l(k,x_{k},u_{k})\right\} \]
3279
3280\end_inset
3281
3282je lokálně optimální řízení, které konstruujeme iterativně.
3283 Každá iterace začíná s posloupností přímovazebních řízení
3284\begin_inset Formula $\overline{u}_{k}$
3285\end_inset
3286
3287 a odpovídající bezšumovou trajektorií
3288\begin_inset Formula $\overline{x}_{k}$
3289\end_inset
3290
3291 získanou aplikací
3292\begin_inset Formula $\overline{u}_{k}$
3293\end_inset
3294
3295 na systém
3296\begin_inset CommandInset ref
3297LatexCommand ref
3298reference "eq:systemilqgdef"
3299
3300\end_inset
3301
3302 s nulovým šumem.
3303 To je možno provést například pomocí Eulerovy integrace.
3304 Pak linearizujeme systém a kvadratizujeme ztrátu podél trajektorií
3305\begin_inset Formula $\overline{x}_{k}$
3306\end_inset
3307
3308 a
3309\begin_inset Formula $\overline{u}_{k}$
3310\end_inset
3311
3312.
3313 Následně získaný lineární systém s kvadratickou ztrátou vyjádříme v odchylkách
3314 stavových a řídících veličin od bezšumové trajektorie
3315\begin_inset Formula $\delta x_{k}=x_{k}-\overline{x}_{k}$
3316\end_inset
3317
3318 a
3319\begin_inset Formula $\delta u_{k}=u_{k}-\overline{u}_{k}$
3320\end_inset
3321
3322.
3323 Veličiny charakterizující modifikovaný problém získané v každém čase
3324\begin_inset Formula $k$
3325\end_inset
3326
3327 z
3328\begin_inset Formula $(\overline{x}_{k},\overline{u}_{k})$
3329\end_inset
3330
3331 jsou
3332\begin_inset Formula \begin{eqnarray*}
3333A_{k} & = & I+\frac{\partial f}{\partial x}\cdot\Delta k,\quad B_{k}=\frac{\partial f}{\partial u}\cdot\Delta k,\\
3334\mathbf{c}_{i,k} & = & F^{[i]}\cdot\sqrt{\Delta k},\quad C_{i,k}=\frac{\partial F^{[i]}}{\partial u}\cdot\sqrt{\Delta k},\\
3335q_{k} & = & l\cdot\Delta k,\quad\mathbf{q}_{k}=\frac{\partial l}{\partial x}\cdot\Delta k,\\
3336Q_{k} & = & \frac{\partial^{2}l}{\partial x\partial x}\cdot\Delta k,\quad P_{k}=\frac{\partial^{2}l}{\partial u\partial x}\cdot\Delta k,\\
3337\mathbf{r}_{k} & = & \frac{\partial l}{\partial u}\cdot\Delta k,\quad R_{k}=\frac{\partial^{2}l}{\partial u\partial u},\end{eqnarray*}
3338
3339\end_inset
3340
3341kde
3342\begin_inset Formula $F^{[i]}$
3343\end_inset
3344
3345 označuje
3346\begin_inset Formula $i$
3347\end_inset
3348
3349-tý sloupec matice
3350\begin_inset Formula $F$
3351\end_inset
3352
3353 a veličiny
3354\begin_inset Quotes gld
3355\end_inset
3356
3357q
3358\begin_inset Quotes grd
3359\end_inset
3360
3361 se počítají v čase
3362\begin_inset Formula $k=N$
3363\end_inset
3364
3365 z funkce
3366\begin_inset Formula $h$
3367\end_inset
3368
3369 namísto
3370\begin_inset Formula $l$
3371\end_inset
3372
3373.
3374\end_layout
3375
3376\begin_layout Standard
3377Dále zaveďme označení
3378\begin_inset Formula \begin{eqnarray*}
3379\mathbf{g}_{k} & = & \mathbf{r}_{k}+B_{k}^{T}\mathbf{s}_{k+1}+\sum_{i}C_{i,k}^{T}S_{k+1}\mathbf{c}_{i,k},\\
3380G_{k} & = & P_{k}+B_{k}^{T}S_{k+1}A_{k},\\
3381H_{k} & = & R_{k}+B_{k}^{T}S_{k+1}B_{k}+\sum_{i}C_{i,k}^{T}S_{k+1}C_{i,k}.\end{eqnarray*}
3382
3383\end_inset
3384
3385Zpětnovazební řízení pak hledáme ve tvaru
3386\begin_inset Formula $\delta u_{k}(\delta x)=\mathbf{l}_{k}+L_{k}\delta x$
3387\end_inset
3388
3389, kde
3390\begin_inset Formula $\mathbf{l}_{k}=-H_{k}^{-1}\mathbf{g}_{k}$
3391\end_inset
3392
3393 a
3394\begin_inset Formula $L_{k}=-H_{k}^{-1}G_{k}$
3395\end_inset
3396
3397.
3398 Přičemž parametry
3399\begin_inset Formula $S_{k}$
3400\end_inset
3401
3402 a
3403\begin_inset Formula $\mathbf{s}_{k}$
3404\end_inset
3405
3406 jsou počítány rekurzivně z rovnic
3407\begin_inset Formula \begin{eqnarray}
3408S_{k} & = & Q_{k}+A_{k}^{T}S_{k+1}A_{k}+L_{k}^{T}H_{k}L_{k}+L_{k}^{T}G_{k}+G_{k}^{T}L_{k},\label{eq:rovniceSproiLQG}\\
3409\mathbf{s}_{k} & = & \mathbf{q}_{k}+A_{k}^{T}\mathbf{s}_{k+1}+L_{k}^{T}H_{k}\mathbf{l}_{k}+L_{k}^{T}\mathbf{g}_{k}+G_{k}^{T}\mathbf{l}_{k}.\nonumber \end{eqnarray}
3410
3411\end_inset
3412
3413V důsledku linearizace obecně nelineárního systému mohou vyjít některá vlastní
3414 čísla matice
3415\begin_inset Formula $H$
3416\end_inset
3417
3418 nulová nebo záporná.
3419 Řešení tohoto problému spolu s ošetřením požadavku na omezené vstupy
3420\begin_inset Formula $u$
3421\end_inset
3422
3423 je detailně popsáno v
3424\begin_inset CommandInset citation
3425LatexCommand cite
3426key "TodorovWeiweiILQG"
3427
3428\end_inset
3429
3430.
3431 Pokud však nepotřebujeme vyhovět požadavku na nekladná vlastní čísla matice
3432 
3433\begin_inset Formula $H$
3434\end_inset
3435
3436 a omezené vstupy, lze rovnice
3437\begin_inset CommandInset ref
3438LatexCommand ref
3439reference "eq:rovniceSproiLQG"
3440
3441\end_inset
3442
3443 zjednodušit a pokud dále šum nezávisí na řízení (tedy
3444\begin_inset Formula $C_{i,k}=0$
3445\end_inset
3446
3447), rovnice
3448\begin_inset CommandInset ref
3449LatexCommand ref
3450reference "eq:rovniceSproiLQG"
3451
3452\end_inset
3453
3454 se redukuje na Riccatiho rovnici klasického LQ regulátoru.
3455\end_layout
3456
3457\begin_layout Section
3458Algoritmus iterativního lokálního dynamického programování
3459\end_layout
3460
3461\begin_layout Standard
3462Algoritmus
3463\emph on
3464iLDP
3465\emph default
3466 byl vytvořen pro účely nalezení stochastického optimálního řízení v mnohadimenz
3467ionálních stavových a řídících prostorech.
3468 Tento případ je častý zejména při řízení biologických pohybů.
3469 Metoda je popsána autory v článku
3470\begin_inset CommandInset citation
3471LatexCommand cite
3472key "TodorovTassaILDP"
3473
3474\end_inset
3475
3476
3477\emph on
3478 
3479\emph default
3480a z tohoto zdroje je také převzata
3481\emph on
3482.
3483 
3484\end_layout
3485
3486\begin_layout Standard
3487Základní popis algoritmu, tak jak ho autoři podali, je však pouze šablonou
3488 a mnoho detailů a dílčích částí je ponecháno na vyřešení při konkrétní
3489 realizaci.
3490 To se týká hlavně použitých aproximací pro jednotlivé funkce, zejména aproximac
3491e Bellmanovy funkce a aproximace hledaného regulátoru.
3492 Dále, protože algoritmus využívá hledání minima, není v základním popisu
3493 algoritmu vyřešen konkrétní typ minimalizace.
3494 Použitý minimalizační algoritmus se samozřejmě liší podle konkrétního problému,
3495 zejména jedná-li se o minimalizaci omezenou nebo neomezenou.
3496 Ještě je třeba zmínit, že pro algoritmus je nutno zvolit parametr
3497\begin_inset Quotes gld
3498\end_inset
3499
3500velikosti
3501\begin_inset Quotes grd
3502\end_inset
3503
3504 okolí, protože se jedná o lokální metodu.
3505\end_layout
3506
3507\begin_layout Standard
3508\begin_inset VSpace defskip
3509\end_inset
3510
3511
3512\end_layout
3513
3514\begin_layout Subsection
3515Formulace problému
3516\end_layout
3517
3518\begin_layout Standard
3519Naším úkolem je nalézt řízení
3520\begin_inset Formula $u=\pi(t,x)$
3521\end_inset
3522
3523, které minimalizuje očekávanou ztrátu
3524\end_layout
3525
3526\begin_layout Standard
3527\align center
3528\begin_inset Formula \[
3529J(\pi)=E_{\omega}\left(h(x)+\int_{0}^{T}l(x,\pi(t,x))dt\right),\]
3530
3531\end_inset
3532
3533
3534\end_layout
3535
3536\begin_layout Standard
3537obecně pro spojitý systém:
3538\end_layout
3539
3540\begin_layout Standard
3541\begin_inset Formula \begin{eqnarray}
3542d\mathbf{x} & = & f(x,u)dt+F(x,u)d\omega,\nonumber \\
3543x(0) & = & x_{0},\label{eq:systemSpoj}\\
3544t & \in & [0,T],\nonumber \end{eqnarray}
3545
3546\end_inset
3547
3548
3549\end_layout
3550
3551\begin_layout Standard
3552v diskrétním tvaru:
3553\end_layout
3554
3555\begin_layout Standard
3556\begin_inset Formula \begin{eqnarray}
3557x_{k+1}-x_{k} & = & f(x,u)\cdot\Delta k+F(x,u)e_{k},\nonumber \\
3558x_{(k=0)} & = & x_{0},\label{eq:systemDis}\\
3559k & \in & \{0,1,\ldots,N\},\nonumber \\
3560\Delta k & = & \frac{T}{N},\nonumber \end{eqnarray}
3561
3562\end_inset
3563
3564
3565\end_layout
3566
3567\begin_layout Standard
3568kde hledáme řízení
3569\begin_inset Formula $u=\pi(k,x)$
3570\end_inset
3571
3572, které minimalizuje očekávanou ztrátu
3573\end_layout
3574
3575\begin_layout Standard
3576\begin_inset Formula \[
3577J(\pi)=E\left(h(x)+\sum_{k=0}^{N-1}l_{k}(x,\pi(k,x))\cdot\Delta k\right).\]
3578
3579\end_inset
3580
3581
3582\end_layout
3583
3584\begin_layout Subsection
3585Osnova algoritmu
3586\begin_inset CommandInset label
3587LatexCommand label
3588name "sub:iLDP-Osnova-algoritmu"
3589
3590\end_inset
3591
3592
3593\end_layout
3594
3595\begin_layout Standard
3596Algoritmus pracuje iteračně, každá iterace začne s řízením
3597\begin_inset Formula $\pi$
3598\end_inset
3599
3600 a vytvoří zlepšení
3601\begin_inset Formula $\pi'$
3602\end_inset
3603
3604.
3605 Přičemž prvotní řešení
3606\begin_inset Formula $\pi_{0}$
3607\end_inset
3608
3609 musíme algoritmu dodat jako apriorní informaci.
3610 Pro zajištění globální konvergence je možno nové řešení hledat jako konvexní
3611 kombinaci starého a algoritmem nalezeného řešení
3612\begin_inset Formula \[
3613\pi^{nové}=\alpha\pi'+(1-\alpha)\pi;\;0<\alpha\leq1;\; J(\pi^{nové})<J(\pi).\]
3614
3615\end_inset
3616
3617
3618\end_layout
3619
3620\begin_layout Standard
3621V každé iteraci proběhne nejprve přípravná fáze, kdy se z řízení
3622\begin_inset Formula $\pi(k,x)$
3623\end_inset
3624
3625 generuje průměrná trajektorie
3626\begin_inset Formula $\bar{x}(k)$
3627\end_inset
3628
3629 řešením rovnice
3630\begin_inset CommandInset ref
3631LatexCommand ref
3632reference "eq:systemSpoj"
3633
3634\end_inset
3635
3636 respektive
3637\begin_inset CommandInset ref
3638LatexCommand ref
3639reference "eq:systemDis"
3640
3641\end_inset
3642
3643
3644\emph on
3645.
3646 
3647\emph default
3648Následně se počítá aproximace
3649\begin_inset Formula $\tilde{V}(k,x)$
3650\end_inset
3651
3652 Bellmanovy funkce
3653\begin_inset Formula $V(k,x)$
3654\end_inset
3655
3656 v čase odzadu, tj.
3657 od
3658\begin_inset Formula $N$
3659\end_inset
3660
3661 k
3662\begin_inset Formula $1$
3663\end_inset
3664
3665.
3666 Současně počítáme i aproximaci řízení
3667\begin_inset Formula $\pi'(k,x)\ldots\pi'(N-1,x)$
3668\end_inset
3669
3670.
3671 Tedy pro každý čas
3672\begin_inset Formula $k$
3673\end_inset
3674
3675 takový, že
3676\begin_inset Formula $k=N-1\ldots1$
3677\end_inset
3678
3679 jdeme zpět, přičemž pokládáme v koncovém čase
3680\begin_inset Formula $N$
3681\end_inset
3682
3683 hodnotu aproximace Bellmanovy funkce
3684\begin_inset Formula $\tilde{V}(N,x)=h(x)$
3685\end_inset
3686
3687 a provádíme následující čtyři kroky:
3688\end_layout
3689
3690\begin_layout Enumerate
3691Generujeme množinu stavů
3692\begin_inset Formula $\left\{ x^{(n)}\right\} _{n=1\ldots M}$
3693\end_inset
3694
3695 shromážděných kolem průměrného stavu
3696\begin_inset Formula $\bar{x}(k)$
3697\end_inset
3698
3699.
3700\end_layout
3701
3702\begin_layout Enumerate
3703Pro každé
3704\begin_inset Formula $x^{(n)}$
3705\end_inset
3706
3707 vypočítáme optimální řízení
3708\begin_inset Formula $u^{(n)}$
3709\end_inset
3710
3711 minimalizací Hamiltoniánu
3712\begin_inset Formula \[
3713H(k,x,u)=l(x,u)+f(x,u)^{T}\tilde{V}_{x}(k+1,x)+\frac{1}{2}\mathbf{tr}\left(\sum(x,u)\tilde{V}_{xx}(k+1,x)\right)\]
3714
3715\end_inset
3716
3717s inicializačním bodem
3718\begin_inset Formula $\pi(k,x^{(n)})$
3719\end_inset
3720
3721.
3722 Kde
3723\begin_inset Formula $\Sigma(x,u)=F(x,u)F(x,u)^{T}$
3724\end_inset
3725
3726.
3727 Tedy optimální řízení v čase
3728\begin_inset Formula $k$
3729\end_inset
3730
3731 pro stav
3732\begin_inset Formula $n$
3733\end_inset
3734
3735 hledáme jako
3736\begin_inset Formula \[
3737u^{(n)}=\arg\min_{u}H(k,x,u).\]
3738
3739\end_inset
3740
3741
3742\end_layout
3743
3744\begin_layout Enumerate
3745Pro každé
3746\begin_inset Formula $x(k)$
3747\end_inset
3748
3749 aproximujeme
3750\begin_inset Formula $v^{(n)}=V(k,x^{(n)})$
3751\end_inset
3752
3753 použitím Hamilton-Jacobi-Bellmanovy rovnosti
3754\begin_inset Formula \[
3755V(k,x^{(n)})\approx\Delta k\cdot H(k,x^{(n)},u^{(n)})+\tilde{V}(k+1,x^{(n)}).\]
3756
3757\end_inset
3758
3759
3760\end_layout
3761
3762\begin_layout Enumerate
3763Vypočítáme novou aproximaci funkce
3764\begin_inset Formula $\tilde{V}(k,x)$
3765\end_inset
3766
3767 z množiny bodů
3768\begin_inset Formula $\left\{ x^{(n)},v^{(n)}\right\} $
3769\end_inset
3770
3771 a aproximaci řízení
3772\begin_inset Formula $\pi'(k,x^{(n)})$
3773\end_inset
3774
3775 definované pro všechna
3776\begin_inset Formula $x$
3777\end_inset
3778
3779 jako z množiny bodů
3780\begin_inset Formula $\left\{ x^{(n)},u^{(n)}\right\} $
3781\end_inset
3782
3783.
3784\end_layout
3785
3786\begin_layout Subsection
3787Detaily implementace
3788\end_layout
3789
3790\begin_layout Standard
3791Uvedený obecný popis algoritmu může být aplikován mnoha způsoby v závislosti
3792 na konkrétních volbách v každém z kroků algoritmu.
3793 Jedná se zejména o následující případy:
3794\end_layout
3795
3796\begin_layout Description
3797Volba
3798\begin_inset space ~
3799\end_inset
3800
3801okolí
3802\begin_inset space ~
3803\end_inset
3804
3805v
3806\begin_inset space ~
3807\end_inset
3808
3809
3810\emph on
3811bodě
3812\begin_inset space ~
3813\end_inset
3814
38151.
3816
3817\emph default
3818 
3819\emph on
3820
3821\begin_inset ERT
3822status open
3823
3824\begin_layout Plain Layout
3825
3826~
3827\end_layout
3828
3829\end_inset
3830
3831
3832\emph default
3833
3834\begin_inset Newline newline
3835\end_inset
3836
3837Zde se projevuje lokálnost metody.
3838 Množina stavů
3839\begin_inset Formula $\left\{ x^{(n)}\right\} $
3840\end_inset
3841
3842 je vybrána z okolí průměrného stavu
3843\begin_inset Formula $\bar{x}(k)$
3844\end_inset
3845
3846.
3847 Toto okolí a způsob výběru množiny je třeba konkrétně specifikovat.
3848 Pro účely implementace algoritmu bylo okolí specifikováno parametrem
3849\begin_inset Formula $\rho^{2}$
3850\end_inset
3851
3852.
3853 Množina stavů
3854\begin_inset Formula $\left\{ x^{(n)}\right\} $
3855\end_inset
3856
3857 pak byla generována náhodně jako náhodná veličina s normálním rozdělením
3858 se střední hodnotou rovnou průměrnému stavu
3859\begin_inset Formula $\bar{x}(k)$
3860\end_inset
3861
3862 a rozptylem specifikovaným parametrem
3863\begin_inset Formula $\rho^{2}$
3864\end_inset
3865
3866.
3867\begin_inset Newline newline
3868\end_inset
3869
3870Počet vzorků
3871\begin_inset Formula $M$
3872\end_inset
3873
3874 je nutno zvolit při implementaci algoritmu.
3875 Obecně je nejlepší volit maximální možné číslo, ovšem s rostoucím počtem
3876 vzorků rostou i paměťové nároky a výpočetní čas algoritmu.
3877\end_layout
3878
3879\begin_layout Description
3880Minimalizace
3881\begin_inset space ~
3882\end_inset
3883
3884v
3885\begin_inset space ~
3886\end_inset
3887
3888
3889\emph on
3890bodě
3891\begin_inset space ~
3892\end_inset
3893
38942.
3895
3896\emph default
3897 
3898\begin_inset ERT
3899status open
3900
3901\begin_layout Plain Layout
3902
3903~
3904\end_layout
3905
3906\end_inset
3907
3908
3909\begin_inset Newline newline
3910\end_inset
3911
3912Pro minimalizaci lze použít například minimalizační funkce programu
3913\emph on
3914Matlab
3915\emph default
3916z balíku
3917\emph on
3918 Optimization Toolbox
3919\emph default
3920, konkrétně se jedná o funkce
3921\family typewriter
3922fminunc
3923\family default
3924 respektive
3925\family typewriter
3926fmincon
3927\family default
3928 pro neomezenou, respektive omezenou minimalizaci.
3929 V případě, kdy je možno spočítat minimalizaci analyticky, jedná se samozřejmě
3930 o nejlepší způsob.
3931\end_layout
3932
3933\begin_layout Description
3934Použití
3935\begin_inset space ~
3936\end_inset
3937
3938aproximací
3939\begin_inset space ~
3940\end_inset
3941
3942v
3943\emph on
3944
3945\begin_inset space ~
3946\end_inset
3947
3948bodě
3949\begin_inset space ~
3950\end_inset
3951
39524.
3953
3954\emph default
3955 
3956\begin_inset ERT
3957status open
3958
3959\begin_layout Plain Layout
3960
3961~
3962\end_layout
3963
3964\end_inset
3965
3966
3967\begin_inset Newline newline
3968\end_inset
3969
3970Aproximace je třeba zvolit ještě před zahájením výpočtu algoritmu, avšak
3971 právě v
3972\emph on
3973bodě 4.
3974
3975\emph default
3976 je třeba je vypočítat z množiny párů hodnot.
3977 Konkrétně se jedná o aproximaci Bellmanovy funkce
3978\begin_inset Formula $\tilde{V}$
3979\end_inset
3980
3981 a aproximaci řízení
3982\begin_inset Formula $\pi$
3983\end_inset
3984
3985.
3986 Volíme aproximace v jednodušším tvaru z důvodu výpočetní náročnosti, protože
3987 jsou počítány opakovaně.
3988 Dále je nutno vygenerovat dostatečný počet
3989\begin_inset Formula $M$
3990\end_inset
3991
3992 vzorků
3993\begin_inset Formula $\left\{ x^{(n)}\right\} $
3994\end_inset
3995
3996 v
3997\emph on
3998bodě 1.
3999\emph default
4000,
4001\emph on
4002 
4003\emph default
4004abychom měli dostatek dat pro určení koeficientů aproximací.
4005 I když nám volnost ve volbě aproximací přináší relativně velkou svobodu
4006 při návrhu algoritmu
4007\emph on
4008iLDP
4009\emph default
4010, jedná se současně i o největší slabinu, protože autoři explicitně neuvádějí,
4011 jaké aproximace volit.
4012 Následně, při implementaci algoritmu pro systém s větším počtem dimenzí,
4013 může být Bellmanova funkce velmi složitá a právě její vhodnou aproximaci
4014 se nemusí podařit nalézt.
4015\end_layout
4016
4017\begin_layout Subsection
4018Konkrétní použité aproximace
4019\begin_inset CommandInset label
4020LatexCommand label
4021name "sub:Konkrétní-použité-aproximace-iLDP"
4022
4023\end_inset
4024
4025
4026\end_layout
4027
4028\begin_layout Standard
4029Výpočet hodnot a aproximací
4030\begin_inset Formula $\tilde{V}\;(\tilde{V}_{x},\tilde{V}_{xx})$
4031\end_inset
4032
4033 je opakovaný.
4034 Je tedy třeba vysoké optimalizace, proto je použita lineární aproximace
4035 ve tvaru lineární kombinace dvakrát diferencovatelných základních funkcí
4036 
4037\begin_inset Formula $\phi(x)\in\mathbf{R}^{P}$
4038\end_inset
4039
4040, kde
4041\begin_inset Formula $P<N$
4042\end_inset
4043
4044.
4045 Jako základní funkce mohou být voleny například funkce
4046\begin_inset Formula $1,\: x_{i},\: x_{i}x_{j},\: x_{i}^{2}x_{j}$
4047\end_inset
4048
4049.
4050 Aproximace je volena jako časově proměnná, kdy
4051\begin_inset Formula $\tilde{V}(k,x)=\phi(x-\bar{x}(k))^{T}\mathbf{w}(k)$
4052\end_inset
4053
4054, kde
4055\begin_inset Formula $\mathbf{w}(k)$
4056\end_inset
4057
4058 je parametrický vektor závislý na čase
4059\begin_inset Formula $k$
4060\end_inset
4061
4062.
4063 
4064\end_layout
4065
4066\begin_layout Standard
4067Označme
4068\begin_inset Formula $\tilde{V}_{x}=\phi_{x}^{T}\mathbf{w}$
4069\end_inset
4070
4071 a
4072\begin_inset Formula $\tilde{V}_{xx}=\phi_{xx}^{T}\mathbf{w}$
4073\end_inset
4074
4075 první a druhou derivaci aproximace Bellmanovy funkce podle proměnné
4076\begin_inset Formula $x$
4077\end_inset
4078
4079, respektive
4080\emph on
4081vektor
4082\emph default
4083a
4084\emph on
4085matici
4086\emph default
4087 parciálních derivací podle složek vektoru
4088\begin_inset Formula $x$
4089\end_inset
4090
4091.
4092 Parametry aproximace pro jednotlivé časy
4093\begin_inset Formula $\mathbf{w}$
4094\end_inset
4095
4096 se určí lineární regresí.
4097 Pro
4098\begin_inset Formula $\mathbf{v}=\left[v^{(1)}\ldots v^{(M)}\right]$
4099\end_inset
4100
4101 vektor cílových hodnot a matici
4102\begin_inset Formula $\mathbf{\Phi}=\left[\phi(x^{(1)}-\bar{x}(k))\ldots\phi(x^{(M)}-\bar{x}(k))\right]$
4103\end_inset
4104
4105 je minimální kvadratická odchylka
4106\begin_inset Formula $\parallel\mathbf{v}-\mathbf{\Phi}^{T}\mathbf{w}\parallel^{2}$
4107\end_inset
4108
4109 pro volbu parametru
4110\begin_inset Formula $\mathbf{w}=\left(\mathbf{\Phi\Phi}^{T}\right)^{-1}\mathbf{\Phi v}$
4111\end_inset
4112
4113.
4114 
4115\end_layout
4116
4117\begin_layout Standard
4118Protože je průměrná trajektorie
4119\begin_inset Formula $\bar{x}(k)$
4120\end_inset
4121
4122 konstantní v iteraci algoritmu, je z důvodu urychlení výpočtu aproximace
4123 vycentrována v tomto bodě.
4124 Množina
4125\begin_inset Formula $\left\{ x^{(n)}\right\} $
4126\end_inset
4127
4128 je časově proměnná, abychom nemuseli v každém kroku počítat
4129\begin_inset Formula $\left(\mathbf{\Phi\Phi}^{T}\right)^{-1}\mathbf{\Phi}$
4130\end_inset
4131
4132, položíme
4133\begin_inset Formula $x^{(n)}=\bar{x}(k)+\varepsilon^{(n)}$
4134\end_inset
4135
4136, kde
4137\begin_inset Formula $\left\{ \varepsilon^{(n)}\right\} $
4138\end_inset
4139
4140 je stejná pro všechny časy
4141\begin_inset Formula $k$
4142\end_inset
4143
4144.
4145 Množina
4146\begin_inset Formula $\left\{ x^{(n)}\right\} $
4147\end_inset
4148
4149 se pak jakoby pohybuje podél trajektorie
4150\begin_inset Formula $\bar{x}(k)$
4151\end_inset
4152
4153.
4154 Tedy
4155\begin_inset Formula $\tilde{V}(k,x^{(n)})=\phi(\varepsilon^{(n)})^{T}\mathbf{w}(k)$
4156\end_inset
4157
4158 a
4159\begin_inset Formula $\Phi$
4160\end_inset
4161
4162 je konstantní nejen v čase, ale i v iteracích algoritmu a matici
4163\begin_inset Formula $\left(\mathbf{\Phi\Phi}^{T}\right)^{-1}\mathbf{\Phi}$
4164\end_inset
4165
4166 je možno předpočítat (což by nešlo při závislosti na stavech).
4167\end_layout
4168
4169\begin_layout Subsection
4170Předběžný odhad vlatností algoritmu
4171\begin_inset CommandInset label
4172LatexCommand label
4173name "sub:Předběžný-odhad-vlatností"
4174
4175\end_inset
4176
4177
4178\end_layout
4179
4180\begin_layout Standard
4181V tomto odstavci jsou uvedeny předběžné odhady vlastností algoritmu, jeho
4182 výhody a nevýhody.
4183 Tyto odhady byly učiněny na základě popisu algoritmu, dále podle samotného
4184 hodnocení autorů v článku
4185\begin_inset CommandInset citation
4186LatexCommand cite
4187key "TodorovTassaILDP"
4188
4189\end_inset
4190
4191 a následně i v průběhu implementace metody.
4192 Později budou konfrontovány s pozorováními získaných výsledků a závěry
4193 simulací, aby bylo zřejmé, která očekávání byla naplněna a která nikoliv.
4194 Tento postup může být velmi užitečný zejména z důvodu posouzení, které
4195 charakteristické vlastnosti algoritmu
4196\emph on
4197iLDP
4198\emph default
4199 jsou patrny pouze při letmém prostudování a naopak, pro které je nutno
4200 algoritmus implementovat a otestovat.
4201\end_layout
4202
4203\begin_layout Paragraph
4204Výhody
4205\end_layout
4206
4207\begin_layout Itemize
4208duální metoda (lépe se vypořádá s neznalostí oproti neduálním metodám, například
4209 
4210\emph on
4211LQG
4212\emph default
4213)
4214\end_layout
4215
4216\begin_layout Itemize
4217lepší zvládnutí šumu
4218\end_layout
4219
4220\begin_layout Itemize
4221rychlejší dosažení požadované hodnoty
4222\end_layout
4223
4224\begin_layout Itemize
4225možnost aplikace na mnoharozměrové stavové a řídící prostory
4226\end_layout
4227
4228\begin_layout Itemize
4229univerzálnost (vychází z obecných principů) a svoboda výběru konkrétních
4230 aproximací a minimalizací
4231\end_layout
4232
4233\begin_layout Paragraph
4234Nevýhody
4235\end_layout
4236
4237\begin_layout Itemize
4238vyšší časová náročnost
4239\end_layout
4240
4241\begin_layout Itemize
4242numerické výpočty (minimalizace)
4243\end_layout
4244
4245\begin_layout Itemize
4246nepřesnost v důsledku aproximace klíčových funkcí v algoritmu a problémy
4247 s jejich volbou
4248\end_layout
4249
4250\begin_layout Itemize
4251implementační složitost
4252\end_layout
4253
4254\begin_layout Itemize
4255lokálnost metody a tedy i nalezeného řešení
4256\end_layout
4257
4258\begin_layout Itemize
4259volba okolí (lokální metoda)
4260\end_layout
4261
4262\begin_layout Standard
4263\begin_inset Newpage newpage
4264\end_inset
4265
4266
4267\end_layout
4268
4269\begin_layout Chapter
4270Systémy pro testování
4271\begin_inset CommandInset label
4272LatexCommand label
4273name "cha:Systémy-pro-testování"
4274
4275\end_inset
4276
4277
4278\end_layout
4279
4280\begin_layout Section
4281Jednoduchý systém
4282\begin_inset CommandInset label
4283LatexCommand label
4284name "sec:Jednoduchý-systém-pro-testovani"
4285
4286\end_inset
4287
4288
4289\end_layout
4290
4291\begin_layout Subsection
4292Popis problému
4293\end_layout
4294
4295\begin_layout Standard
4296Tato úloha byla převzata z článku
4297\begin_inset CommandInset citation
4298LatexCommand cite
4299key "ThompsonCluettSIDP"
4300
4301\end_inset
4302
4303.
4304 Sami autoři
4305\begin_inset CommandInset citation
4306LatexCommand cite
4307key "ThompsonCluettSIDP"
4308
4309\end_inset
4310
4311 pak přejali tento problém z
4312\begin_inset CommandInset citation
4313LatexCommand cite
4314key "AstromHelmerssonDCIUG"
4315
4316\end_inset
4317
4318.
4319\end_layout
4320
4321\begin_layout Standard
4322Jedná se o integrátor s neznámým ziskem, tedy lineární časově invariantní
4323 systém s jedním vstupem a jedním výstupem
4324\end_layout
4325
4326\begin_layout Standard
4327\begin_inset Formula \begin{eqnarray}
4328y_{k+1} & = & y_{k}+bu_{k}+\sigma e_{k},\nonumber \\
4329b & \sim & \mathcal{N}(\hat{b},P),\label{eq:simplesystem}\\
4330e_{k} & \sim & \mathcal{N}(0,1),\nonumber \\
4331\mathrm{cov}(e_{k},b_{k}) & = & 0,\;\forall k,\nonumber \end{eqnarray}
4332
4333\end_inset
4334
4335
4336\end_layout
4337
4338\begin_layout Standard
4339kde
4340\begin_inset Formula $y_{k}$
4341\end_inset
4342
4343 je výstup nebo také stav procesu v čase
4344\begin_inset Formula $k$
4345\end_inset
4346
4347,
4348\begin_inset Formula $u_{k}$
4349\end_inset
4350
4351 je řízení v čase
4352\begin_inset Formula $k$
4353\end_inset
4354
4355.
4356 Varianci šumu
4357\begin_inset Formula $\sigma^{2}$
4358\end_inset
4359
4360 předpokládáme známou, stejně jako počáteční hodnoty systému
4361\begin_inset Formula $y_{0}$
4362\end_inset
4363
4364,
4365\begin_inset Formula $\hat{b}_{0}$
4366\end_inset
4367
4368 a
4369\begin_inset Formula $P_{0}$
4370\end_inset
4371
4372.
4373 Úkolem je nalézt zpětnovazební řízení
4374\begin_inset Formula \[
4375u_{k}^{*}=u_{k}^{*}(y_{k},y_{k-1},\ldots,y_{0},u_{k-1},u_{k-2},\ldots,u_{0}),\;0\leq k\leq N-1\]
4376
4377\end_inset
4378
4379 minimalizující očekávanou ztrátu
4380\begin_inset Formula \begin{eqnarray}
4381J_{0} & = & \left\{ \sum_{k=0}^{N-1}g_{k}\right\} ,\nonumber \\
4382g_{k} & = & (y_{k+1}-r_{k+1})^{2},\label{eq:simplesystemctgg}\end{eqnarray}
4383
4384\end_inset
4385
4386
4387\end_layout
4388
4389\begin_layout Standard
4390pro daný časový horizont
4391\begin_inset Formula $N$
4392\end_inset
4393
4394 a referenční signál, tj.
4395 požadovanou hodnotu výstupu, ve formě posloupnosti
4396\begin_inset Formula $\left\{ r_{k}\right\} _{k=1}^{N}$
4397\end_inset
4398
4399.
4400 Diskrétní časový krok
4401\begin_inset Formula $\Delta k$
4402\end_inset
4403
4404 pokládáme roven jedné časové jednotce, tedy
4405\begin_inset Formula $\Delta k=1$
4406\end_inset
4407
4408.
4409\end_layout
4410
4411\begin_layout Subsection
4412Úpravy rovnic
4413\end_layout
4414
4415\begin_layout Standard
4416Při řešení tohoto problému je výhodné podle
4417\begin_inset CommandInset citation
4418LatexCommand cite
4419key "AstromHelmerssonDCIUG"
4420
4421\end_inset
4422
4423 nahlížet na systém jako úlohu s postačující statistikou
4424\begin_inset Formula $H_{k}=[y_{k},\hat{b}_{k},P_{k}].$
4425\end_inset
4426
4427 Kde
4428\begin_inset Formula $y_{k}$
4429\end_inset
4430
4431 reprezentuje původní stav
4432\begin_inset Formula $y_{k}$
4433\end_inset
4434
4435, dále
4436\begin_inset Formula $\hat{b}_{k}$
4437\end_inset
4438
4439 je střední hodnota neznámého parametru
4440\begin_inset Formula $b$
4441\end_inset
4442
4443 a
4444\begin_inset Formula $P_{k}$
4445\end_inset
4446
4447 jeho variance.
4448\end_layout
4449
4450\begin_layout Standard
4451Pak první rovnici v
4452\begin_inset CommandInset ref
4453LatexCommand ref
4454reference "eq:simplesystem"
4455
4456\end_inset
4457
4458 doplníme rovnicemi, ze kterých mohou být rekurzivně napočítány parametry
4459 
4460\begin_inset Formula $\hat{b}_{k}$
4461\end_inset
4462
4463 a
4464\begin_inset Formula $P_{k}$
4465\end_inset
4466
4467
4468\begin_inset Formula \begin{eqnarray}
4469\hat{b}_{k+1} & = & \hat{b}_{k}+K_{k}(y_{k+1}-y_{k}-\hat{b}_{k}u_{k}),\nonumber \\
4470P_{k+1} & = & (1-K_{k}u_{k})P_{k},\label{eq:simplesystemexbp}\\
4471K_{k} & = & \frac{u_{k}P_{k}}{u_{k}^{2}P_{k}+\sigma^{2}}.\nonumber \end{eqnarray}
4472
4473\end_inset
4474
4475Ztráta v čase
4476\begin_inset Formula $k$
4477\end_inset
4478
4479 je
4480\begin_inset Formula \[
4481J_{k}=\min_{u_{k}}\mathrm{E}_{e_{k},b}\left\{ g_{k}+J_{k+1}\mid y_{k},y_{k-1},\ldots,u_{k-1},u_{k-2},\ldots\right\} ,\]
4482
4483\end_inset
4484
4485kde se střední hodnota počíta přes
4486\begin_inset Formula $e_{k}$
4487\end_inset
4488
4489 a
4490\begin_inset Formula $b$
4491\end_inset
4492
4493.
4494 Systém
4495\begin_inset CommandInset ref
4496LatexCommand ref
4497reference "eq:simplesystem"
4498
4499\end_inset
4500
4501 je lineární, gaussovský a máme k dispozici sdruženou hustotu rozdělení
4502 pravděpodobnosti
4503\begin_inset Formula $f(b_{k})=N(\hat{b}_{k},P_{k})$
4504\end_inset
4505
4506, jejíž parametry se vyvíjejí rekurzivně podle
4507\begin_inset CommandInset ref
4508LatexCommand ref
4509reference "eq:simplesystemexbp"
4510
4511\end_inset
4512
4513.
4514 Je tedy možno upravit ztrátovou funkci
4515\begin_inset Formula $J_{k}$
4516\end_inset
4517
4518, dosadíme-li za
4519\begin_inset Formula $g_{k}=(y_{k+1}-r_{k+1})^{2}$
4520\end_inset
4521
4522 z
4523\begin_inset CommandInset ref
4524LatexCommand ref
4525reference "eq:simplesystemctgg"
4526
4527\end_inset
4528
4529 a následně z
4530\begin_inset CommandInset ref
4531LatexCommand ref
4532reference "eq:simplesystem"
4533
4534\end_inset
4535
4536 za
4537\begin_inset Formula $y_{k+1}=y_{k}+bu_{k}+\sigma e_{k}$
4538\end_inset
4539
4540:
4541\begin_inset Formula \begin{eqnarray*}
4542J_{k} & = & \min_{u_{k}}\mathrm{E}_{e_{k},b}\left\{ (y_{k}+bu_{k}+\sigma e_{k}-r_{k+1})^{2}+J_{k+1}\mid y_{k},y_{k-1},\ldots,u_{k-1},u_{k-2},\ldots\right\} \\
4543 & = & \min_{u_{k}}\mathrm{E}_{e_{k}}\left\{ (y_{k}+\hat{b}u_{k}+\sigma e_{k}-r_{k+1})^{2}+P_{k}u_{k}^{2}\mid y_{k},y_{k-1},\ldots,u_{k-1},u_{k-2},\ldots\right\} +\\
4544 &  & +\min_{u_{k}}\mathrm{E}_{e_{k},b}\left\{ J_{k+1}\mid y_{k},y_{k-1},\ldots,u_{k-1},u_{k-2},\ldots\right\} \end{eqnarray*}
4545
4546\end_inset
4547
4548A ztráta v čase
4549\begin_inset Formula $k$
4550\end_inset
4551
4552 je pak vyjádřena ve tvaru
4553\begin_inset Formula \[
4554g_{k}=(y_{k}-r_{k+1})^{2}+P_{k}u_{k}^{2}.\]
4555
4556\end_inset
4557
4558
4559\end_layout
4560
4561\begin_layout Standard
4562Následně lze zadání úlohy formulovat jako:
4563\begin_inset Formula \begin{eqnarray}
4564\mathrm{Rovnice\: systému:}\quad\left[\begin{array}{c}
4565y_{k+1}\\
4566\hat{b}_{k+1}\\
4567P_{k+1}\end{array}\right] & = & \left[\begin{array}{c}
4568y_{k}+\hat{b}_{k}u_{k}\\
4569\hat{b}_{k}+\frac{u_{k}P_{k}}{u_{k}^{2}P_{k}+\sigma^{2}}(y_{k+1}-y_{k}-\hat{b}_{k}u_{k})\\
4570(1-\frac{u_{k}P_{k}}{u_{k}^{2}P_{k}+\sigma^{2}}u_{k})P_{k}\end{array}\right]+\left[\begin{array}{c}
4571\sigma e_{k}\\
45720\\
45730\end{array}\right]\nonumber \\
4574\mathrm{Ztráta\: v\:čase}\: k\mathrm{:}\hspace{5em}g_{k} & = & (y_{k}-r_{k+1})^{2}+P_{k}u_{k}^{2}\label{eq:simplesysuplnaybP}\end{eqnarray}
4575
4576\end_inset
4577
4578
4579\end_layout
4580
4581\begin_layout Subsection
4582Aplikace metody CE
4583\begin_inset CommandInset label
4584LatexCommand label
4585name "sub:Aplikace-metody-CE-naJS"
4586
4587\end_inset
4588
4589
4590\end_layout
4591
4592\begin_layout Standard
4593Princip metody označené jako CE (z anglického
4594\begin_inset Quotes gld
4595\end_inset
4596
4597Certainty Equivalence
4598\begin_inset Quotes grd
4599\end_inset
4600
4601) je velmi jednoduchý.
4602 Neznámé parametry v systému nahradíme jejich očekávanými hodnotami a dále
4603 všechny výpočty provádíme, jako kdyby byly parametry známé.
4604 Takto získané řízení samozřejmě není duální a pokud se skutečná hodnota
4605 neznámého parametru výrazněji odchyluje od očekávané hodnoty, se kterou
4606 počítáme, dopouštíme se značné chyby.
4607 Zmiňovaná metoda je použita jako první přiblížení a hlavně pro srovnání
4608 s dalšími algoritmy.
4609\end_layout
4610
4611\begin_layout Subsubsection
4612Triviální CE regulátor
4613\end_layout
4614
4615\begin_layout Standard
4616Při návrhu prvního, nejjednoduššího regulátoru uvažujeme pouze rovnici
4617\begin_inset CommandInset ref
4618LatexCommand ref
4619reference "eq:simplesystem"
4620
4621\end_inset
4622
4623 a nahradíme v ní parametr
4624\begin_inset Formula $b$
4625\end_inset
4626
4627 jeho očekávanou hodnotou
4628\begin_inset Formula $\hat{b}$
4629\end_inset
4630
4631, což vede na
4632\begin_inset Formula \[
4633y_{k+1}=y_{k}+\hat{b}u_{k}+\sigma e_{k}.\]
4634
4635\end_inset
4636
4637Se ztrátovou funkcí nebudeme explicitně počítat.
4638 Místo toho předpokládáme, že ztráta bude minimální, dosáhneme-li požadované
4639 hodnoty
4640\begin_inset Formula $r_{k+1}$
4641\end_inset
4642
4643 v jednom kroku.
4644 Položíme tedy
4645\begin_inset Formula $y_{k+1}=r_{k+1}$
4646\end_inset
4647
4648, šum neuvažujeme (respektive jej nahradíme jeho střední hodnotou, což je
4649 nula) a z rovnice vyjádříme řízení
4650\begin_inset Formula $u_{k}$
4651\end_inset
4652
4653 v čase
4654\begin_inset Formula $k$
4655\end_inset
4656
4657 jako
4658\begin_inset Formula \[
4659u_{k}=\frac{r_{k+1}-y_{k}}{\hat{b}}.\]
4660
4661\end_inset
4662
4663Zde je samozřejmě nutné předpokládat, že očekávaná hodnota
4664\begin_inset Formula $\hat{b}$
4665\end_inset
4666
4667 není rovna nule.
4668 Tento předpoklad může být omezující, protože z pohledu původní rovnice
4669 s neznámým parametrem
4670\begin_inset Formula $b$
4671\end_inset
4672
4673 nastane problém pouze, když samotný parametr
4674\begin_inset Formula $b$
4675\end_inset
4676
4677 nabývá hodnoty nula.
4678 To pak zřejmě řízení nemá na systém žádný vliv.
4679 Chceme-li tento přístup použít pro libovolné
4680\begin_inset Formula $\hat{b}$
4681\end_inset
4682
4683 (tedy i pro
4684\begin_inset Formula $\hat{b}=0$
4685\end_inset
4686
4687), je možno například volit jmenovatel zlomku ve výrazu pro řízení místo
4688 
4689\begin_inset Formula $\hat{b}$
4690\end_inset
4691
4692 jako
4693\begin_inset Formula $\hat{b}+\varepsilon$
4694\end_inset
4695
4696 s vhodným parametrem
4697\begin_inset Formula $\varepsilon$
4698\end_inset
4699
4700, následně pak
4701\begin_inset Formula \[
4702u_{k}=\frac{r_{k+1}-y_{k}}{\hat{b}+\varepsilon},\quad\hat{b}+\varepsilon\neq0.\]
4703
4704\end_inset
4705
4706
4707\end_layout
4708
4709\begin_layout Subsection
4710Algoritmus LQG
4711\end_layout
4712
4713\begin_layout Standard
4714Algoritmus
4715\emph on
4716LQG
4717\emph default
4718 (
4719\begin_inset Quotes gld
4720\end_inset
4721
4722Linear-Quadratic-Gaussian
4723\begin_inset Quotes grd
4724\end_inset
4725
4726) je vhodný k nalezení řízení pro lineární systémy s kvadratickou ztrátovou
4727 funkcí a gaussovským šumem.
4728 To je sice případ zde uvažovaného
4729\emph on
4730jednoduchého systému
4731\emph default
4732, ale algoritmus
4733\emph on
4734LQG
4735\emph default
4736 není v základní implementaci
4737\begin_inset CommandInset ref
4738LatexCommand ref
4739reference "sub:LQGkp1"
4740
4741\end_inset
4742
4743 duální.
4744 Nedokáže si tedy poradit s neznámým parametrem
4745\begin_inset Formula $b$
4746\end_inset
4747
4748 a je nutné použít nějaké aproximace.
4749 Opět tedy využijeme principu CE a nahradíme parametr
4750\begin_inset Formula $b$
4751\end_inset
4752
4753 jeho očekávanou hodnotou
4754\begin_inset Formula $\hat{b}$
4755\end_inset
4756
4757.
4758 
4759\emph on
4760LQG
4761\emph default
4762 algoritmus využívá Kalmanova filtru a dokáže tedy lépe zvládat šumy a nepřesnos
4763ti měření.
4764\end_layout
4765
4766\begin_layout Subsubsection
4767LQG regulátor
4768\end_layout
4769
4770\begin_layout Standard
4771Jak již bylo zmíněno v předchozím textu, řízení
4772\emph on
4773LQG
4774\emph default
4775 je založeno na principu separace, tedy estimátor a regulátor jsou navrhovány
4776 zvlášť.
4777 Máme-li k dispozici matice, popisující systém, stačí pro nalezení řízení
4778 pouze dosadit do rovnic v částech
4779\begin_inset CommandInset ref
4780LatexCommand ref
4781reference "sub:Kalmanův-filtr"
4782
4783\end_inset
4784
4785 a
4786\begin_inset CommandInset ref
4787LatexCommand ref
4788reference "sub:LQGkp1"
4789
4790\end_inset
4791
4792.
4793 Tento postup můžeme aplikovat na matice získané z rovnice
4794\begin_inset CommandInset ref
4795LatexCommand ref
4796reference "eq:simplesystem"
4797
4798\end_inset
4799
4800, pak získáme jednoduché řízení, které ale předpokládá parametr
4801\begin_inset Formula $b$
4802\end_inset
4803
4804 známý a jedná se tedy o princip CE.
4805 Matice systému budou v tomto případě
4806\begin_inset Formula \begin{eqnarray*}
4807A & = & 1,\quad B=\hat{b},\\
4808C & = & 1,\quad N=\sigma.\end{eqnarray*}
4809
4810\end_inset
4811
4812A úpravou ztrátové funkce
4813\family roman
4814\series medium
4815\shape up
4816\size normal
4817\emph off
4818\bar no
4819\noun off
4820\color none
4821
4822\begin_inset Formula \begin{eqnarray*}
4823\mathbf{E}\left\{ \sum_{k=0}^{N-1}g_{k}\right\}  & = & \mathbf{E}\left\{ \sum_{k=0}^{N-1}\left(y_{k+1}-r_{k+1}\right)^{2}\right\} \\
4824 & = & \mathbf{E}\left\{ \sum_{k=0}^{N-1}\psi_{k+1}^{2}\right\} =\mathrm{E}\left\{ \sum_{k=0}^{N-1}\left(\psi_{k+1}^{T}Q_{k}\psi_{k+1}\right)\right\} ,\end{eqnarray*}
4825
4826\end_inset
4827
4828kde
4829\begin_inset Formula $\psi_{k}$
4830\end_inset
4831
4832 reprezentuje rozdíl
4833\begin_inset Formula $y_{k}-r_{k}$
4834\end_inset
4835
4836, získáme matice
4837\begin_inset Formula $Q$
4838\end_inset
4839
4840 a
4841\begin_inset Formula $R$
4842\end_inset
4843
4844 ve tvaru
4845\begin_inset Formula \[
4846Q=1,\quad R=0.\]
4847
4848\end_inset
4849
4850
4851\family default
4852\series default
4853\shape default
4854\size default
4855\emph default
4856\bar default
4857\noun default
4858\color inherit
4859 
4860\end_layout
4861
4862\begin_layout Standard
4863Nebo se můžeme pokusit o aplikaci na systém
4864\begin_inset CommandInset ref
4865LatexCommand ref
4866reference "eq:simplesysuplnaybP"
4867
4868\end_inset
4869
4870, který vznikl úpravou systému
4871\begin_inset CommandInset ref
4872LatexCommand ref
4873reference "eq:simplesystem"
4874
4875\end_inset
4876
4877 a odhaduje očekávanou hodnotu a varianci neznámého parametru
4878\begin_inset Formula $b$
4879\end_inset
4880
4881, ale není lineární.
4882 Je tedy třeba systém
4883\begin_inset CommandInset ref
4884LatexCommand ref
4885reference "eq:simplesysuplnaybP"
4886
4887\end_inset
4888
4889 linearizovat, nejlépe v každém časovém kroku
4890\begin_inset Formula $k$
4891\end_inset
4892
4893.
4894 Potřebujeme tedy nějakou reprezentativní trajektorii a systém následně
4895 linearizujeme rozvojem do prvního řádu do Taylorovy řady se středem v této
4896 trajektorii a tento postup opakujeme pro každý čas
4897\begin_inset Formula $k$
4898\end_inset
4899
4900.
4901 Následně získáme matice linearizovaného systému
4902\begin_inset Formula \begin{eqnarray*}
4903A_{k} & =\frac{\partial}{\partial(y_{k},\hat{b}_{k},P_{k})}\left[\begin{array}{c}
4904y_{k+1}\\
4905\hat{b}_{k+1}\\
4906P_{k+1}\end{array}\right]= & \left(\begin{array}{ccc}
49071 & u_{k} & 0\\
4908-\frac{u_{k}P_{k}}{u_{k}^{2}P_{k}+\sigma^{2}} & 1-\frac{u_{k}^{2}P_{k}}{u_{k}^{2}P_{k}+\sigma^{2}} & \frac{u_{k}\sigma^{2}\left(y_{k+1}-y_{k}-\hat{b}u_{k}\right)}{\left(u_{k}^{2}P_{k}+\sigma^{2}\right)^{2}}\\
49090 & 0 & 1-\frac{u_{k}^{2}P_{k}\left(u_{k}^{2}P_{k}+2\sigma^{2}\right)}{\left(u_{k}^{2}P_{k}+\sigma^{2}\right)^{2}}\end{array}\right),\\
4910B_{k} & =\frac{\partial}{\partial u_{k}}\left[\begin{array}{c}
4911y_{k+1}\\
4912\hat{b}_{k+1}\\
4913P_{k+1}\end{array}\right]= & \left(\begin{array}{c}
4914\hat{b}\\
4915\frac{\left(P_{k}\sigma^{2}-u_{k}^{2}P_{k}^{2}\right)\left(y_{k+1}-y_{k}+2\hat{b}u_{k}\right)}{\left(u_{k}^{2}P_{k}+\sigma^{2}\right)^{2}}\\
4916-\frac{2u_{k}P_{k}^{2}\sigma^{2}}{\left(u_{k}^{2}P_{k}+\sigma^{2}\right)^{2}}\end{array}\right).\end{eqnarray*}
4917
4918\end_inset
4919
4920Matice pro výpočet Kalmanova filtru jsou v čase konstantní a rovny
4921\begin_inset Formula \[
4922C_{k}=\left(\begin{array}{ccc}
49231 & 0 & 0\end{array}\right),\quad N_{k}=\sigma.\]
4924
4925\end_inset
4926
4927Pro ztrátovou funkci upravíme ztrátu systému
4928\begin_inset CommandInset ref
4929LatexCommand ref
4930reference "eq:simplesysuplnaybP"
4931
4932\end_inset
4933
4934 
4935\family roman
4936\series medium
4937\shape up
4938\size normal
4939\emph off
4940\bar no
4941\noun off
4942\color none
4943následovně
4944\begin_inset Formula \begin{eqnarray*}
4945\mathbf{E}\left\{ \sum_{k=0}^{N-1}g_{k}\right\}  & = & \mathbf{E}\left\{ \sum_{k=0}^{N-1}\left((y_{k}-r_{k+1})^{2}+P_{k}u_{k}^{2}\right)\right\} \\
4946 & = & \mathbf{E}\left\{ \sum_{k=0}^{N-1}\left(\psi_{k}^{2}+P_{k}u_{k}^{2}\right)\right\} =\mathrm{E}\left\{ \sum_{k=0}^{N-1}\left(\psi_{k}^{T}Q_{k}\psi_{k}+u_{k}^{T}R_{k}u_{k}\right)\right\} \end{eqnarray*}
4947
4948\end_inset
4949
4950kde
4951\begin_inset Formula $\psi_{k}$
4952\end_inset
4953
4954 reprezentuje rozdíl
4955\begin_inset Formula $y_{k}-r_{k+1}$
4956\end_inset
4957
4958.
4959 Pak matice pro kvadratickou ztrátovou funkci
4960\begin_inset Formula $Q$
4961\end_inset
4962
4963 a
4964\begin_inset Formula $R$
4965\end_inset
4966
4967 jsou
4968\begin_inset Formula \begin{eqnarray*}
4969Q_{N} & = & \theta,\\
4970Q_{k} & = & \left(\begin{array}{ccc}
49711 & 0 & 0\\
49720 & 0 & 0\\
49730 & 0 & 0\end{array}\right),\\
4974R_{k} & = & P_{k}.\end{eqnarray*}
4975
4976\end_inset
4977
4978
4979\end_layout
4980
4981\begin_layout Standard
4982
4983\family roman
4984\series medium
4985\shape up
4986\size normal
4987\emph off
4988\bar no
4989\noun off
4990\color none
4991Tato verze
4992\family default
4993\series default
4994\shape default
4995\size default
4996\emph on
4997\bar default
4998\noun default
4999\color inherit
5000LQG
5001\family roman
5002\series medium
5003\shape up
5004\size normal
5005\emph off
5006\bar no
5007\noun off
5008\color none
5009 řízení je aplikována na upravené rovnice systému s postačující statistikou
5010 a je tedy na místě otázka, zda se již jedná o duální přístup.
5011 Na tomto místě je však těžké pouze na základě tvaru rovnic odpovědět, a
5012 proto bude tento problém diskutován až na základě výsledků simulací v kapitole
5013 
5014\begin_inset CommandInset ref
5015LatexCommand ref
5016reference "cha:Výsledky"
5017
5018\end_inset
5019
5020.
5021\end_layout
5022
5023\begin_layout Subsection
5024iLQG
5025\end_layout
5026
5027\begin_layout Standard
5028Metoda
5029\emph on
5030iLQG
5031\emph default
5032 je v podstatě rozšířením základního algoritmu pro nalezení LQ řízení a
5033 v triviálním případě se na tento algoritmus i redukuje.
5034 Proto většinu z veličin charakterizujících systém, potřebných pro výpočet
5035 
5036\emph on
5037iLQG
5038\emph default
5039 řízení, můžeme převzít z předchozí části o aplikaci
5040\emph on
5041LQG
5042\emph default
5043 regulátoru.
5044 Postup jejich výpočtu je totiž prakticky totožný.
5045 
5046\end_layout
5047
5048\begin_layout Subsubsection
5049iLQG řízení
5050\end_layout
5051
5052\begin_layout Standard
5053Veličiny budou uvedeny pouze pro případ jednoduchého systému s postačující
5054 statistikou, odhadující parametr
5055\begin_inset Formula $b.$
5056\end_inset
5057
5058 Obecný tvar parametrů vychází z systému definovaného v
5059\begin_inset CommandInset ref
5060LatexCommand ref
5061reference "eq:systemilqgdef"
5062
5063\end_inset
5064
5065.
5066\end_layout
5067
5068\begin_layout Standard
5069\begin_inset Formula \begin{eqnarray*}
5070A_{k} & = & I+\frac{\partial f}{\partial x}\cdot\Delta k=\left(\begin{array}{ccc}
50711 & u_{k} & 0\\
5072-\frac{u_{k}P_{k}}{u_{k}^{2}P_{k}+\sigma^{2}} & 1-\frac{u_{k}^{2}P_{k}}{u_{k}^{2}P_{k}+\sigma^{2}} & \frac{u_{k}\sigma^{2}\left(y_{k+1}-y_{k}-\hat{b}u_{k}\right)}{\left(u_{k}^{2}P_{k}+\sigma^{2}\right)^{2}}\\
50730 & 0 & 1-\frac{u_{k}^{2}P_{k}\left(u_{k}^{2}P_{k}+2\sigma^{2}\right)}{\left(u_{k}^{2}P_{k}+\sigma^{2}\right)^{2}}\end{array}\right),\\
5074B_{k} & = & \frac{\partial f}{\partial u}\cdot\Delta k=\left(\begin{array}{c}
5075\hat{b}\\
5076\frac{\left(P_{k}\sigma^{2}-u_{k}^{2}P_{k}^{2}\right)\left(y_{k+1}-y_{k}+2\hat{b}u_{k}\right)}{\left(u_{k}^{2}P_{k}+\sigma^{2}\right)^{2}}\\
5077-\frac{2u_{k}P_{k}^{2}\sigma^{2}}{\left(u_{k}^{2}P_{k}+\sigma^{2}\right)^{2}}\end{array}\right),\\
5078\mathbf{c}_{i,k} & = & F^{[i]}\cdot\sqrt{\Delta k}=\left(\begin{array}{c}
5079\sigma\\
50800\\
50810\end{array}\right),\\
5082C_{i,k} & = & \frac{\partial F^{[i]}}{\partial u}\cdot\sqrt{\Delta k}=0,\\
5083q_{k} & = & l\cdot\Delta k=(y_{k}-r_{k+1})^{2}+P_{k}u_{k}^{2},\\
5084\mathbf{q}_{k} & = & \frac{\partial l}{\partial x}\cdot\Delta k=\left(\begin{array}{c}
50852(y_{k}-r_{k+1})\\
50860\\
5087u_{k}^{2}\end{array}\right),\\
5088Q_{k} & = & \frac{\partial^{2}l}{\partial x\partial x}\cdot\Delta k=\left(\begin{array}{ccc}
50892 & 0 & 0\\
50900 & 0 & 0\\
50910 & 0 & 0\end{array}\right),\\
5092P_{k} & = & \frac{\partial^{2}l}{\partial u\partial x}\cdot\Delta k=\left(\begin{array}{c}
50930\\
50940\\
50952u_{k}\end{array}\right),\\
5096\mathbf{r}_{k} & = & \frac{\partial l}{\partial u}\cdot\Delta k=2P_{k}u_{k},\\
5097R_{k} & = & \frac{\partial^{2}l}{\partial u\partial u}=2P_{k}.\end{eqnarray*}
5098
5099\end_inset
5100
5101
5102\end_layout
5103
5104\begin_layout Standard
5105Obdobná otázka jako v předchozím případě řízení
5106\emph on
5107LQG
5108\emph default
5109, zda se jedná o duální metodu, bude opět diskutována na základě výsledků
5110 simulací v kapitole
5111\begin_inset CommandInset ref
5112LatexCommand ref
5113reference "cha:Výsledky"
5114
5115\end_inset
5116
5117.
5118\end_layout
5119
5120\begin_layout Subsection
5121iLDP
5122\begin_inset CommandInset label
5123LatexCommand label
5124name "sub:iLDP-js-implementace"
5125
5126\end_inset
5127
5128
5129\end_layout
5130
5131\begin_layout Standard
5132Algoritmus implementujeme podle základní osnovy uvedené v
5133\begin_inset CommandInset ref
5134LatexCommand ref
5135reference "sub:iLDP-Osnova-algoritmu"
5136
5137\end_inset
5138
5139, přičemž detaily implementace jsou voleny následovně:
5140\end_layout
5141
5142\begin_layout Description
5143Volba
5144\begin_inset space ~
5145\end_inset
5146
5147okolí
5148\emph on
5149
5150\begin_inset ERT
5151status open
5152
5153\begin_layout Plain Layout
5154
5155~
5156\end_layout
5157
5158\end_inset
5159
5160
5161\emph default
5162
5163\begin_inset Newline newline
5164\end_inset
5165
5166Množina stavů
5167\begin_inset Formula $\left\{ x^{(n)}\right\} $
5168\end_inset
5169
5170 je volena jako náhodná veličina s normálním rozdělením se střední hodnotou
5171 rovnou průměrnému stavu
5172\begin_inset Formula $\bar{x}(k)$
5173\end_inset
5174
5175 a rozptylem specifikovaným parametrem
5176\begin_inset Formula $\rho^{2}$
5177\end_inset
5178
5179.
5180 Tedy
5181\begin_inset Formula $x_{k}^{(n)}=\overline{x}(k)+\varepsilon_{k}^{(n)}$
5182\end_inset
5183
5184, kde
5185\begin_inset Formula $\varepsilon_{k}^{(n)}\sim\mathcal{N}(0,\rho^{2})$
5186\end_inset
5187
5188 .
5189 Samotný parametr
5190\begin_inset Formula $\rho^{2}$
5191\end_inset
5192
5193 pak volíme v řádu šumu, popřípadě o řád větší, aby okolí postihlo možné
5194 změny trajektorie v důsledku šumu, ale současně nezasahovalo příliš daleko.
5195\begin_inset Newline newline
5196\end_inset
5197
5198Počet vzorků
5199\begin_inset Formula $M$
5200\end_inset
5201
5202 je zde konkrétně volen
5203\begin_inset Formula $100$
5204\end_inset
5205
5206, což se ukazuje jako dostatečné množství dat pro výpočet koeficientů aproximací.
5207\end_layout
5208
5209\begin_layout Description
5210Minimalizace
5211\begin_inset ERT
5212status open
5213
5214\begin_layout Plain Layout
5215
5216~
5217\end_layout
5218
5219\end_inset
5220
5221
5222\begin_inset Newline newline
5223\end_inset
5224
5225Zde použitá minimalizace je neomezená, je tedy užito minimalizační funkce
5226 programu
5227\emph on
5228Matlab
5229\emph default
5230(
5231\emph on
5232Optimization Toolbox
5233\emph default
5234)
5235\family typewriter
5236fminunc
5237\family default
5238.
5239\end_layout
5240
5241\begin_layout Description
5242Aproximace
5243\begin_inset space ~
5244\end_inset
5245
5246řízení
5247\begin_inset ERT
5248status open
5249
5250\begin_layout Plain Layout
5251
5252~
5253\end_layout
5254
5255\end_inset
5256
5257
5258\begin_inset Newline newline
5259\end_inset
5260
5261Aproximace zpětnovazebního řízení v tomto případě vychází z
5262\emph on
5263triviálního CE regulátoru
5264\emph default
5265 navrženého v
5266\begin_inset CommandInset ref
5267LatexCommand ref
5268reference "sub:Aplikace-metody-CE-naJS"
5269
5270\end_inset
5271
5272, který rozšiřuje
5273\begin_inset Formula \begin{eqnarray*}
5274\mathrm{CE\: regulátor:}\hspace{3em}u_{k} & = & \frac{r_{k+1}-y_{k}}{\hat{b}+\varepsilon},\quad\hat{b}+\varepsilon\neq0,\\
5275\mathrm{Aproximace\:\mathrm{řízení}}\mathrm{:\quad}\pi(k,x) & = & \frac{r_{k+1}-K_{1}y_{k}}{K_{2}\hat{b}_{k}+K_{3}P_{k}+K_{4}}.\end{eqnarray*}
5276
5277\end_inset
5278
5279Koeficienty aproximace
5280\begin_inset Formula $K_{1\ldots4}$
5281\end_inset
5282
5283 vypočítáme v každém čase
5284\begin_inset Formula $k$
5285\end_inset
5286
5287 z množiny hodnot
5288\begin_inset Formula $\left\{ x^{(n)},u^{(n)}\right\} $
5289\end_inset
5290
5291 lineární regresí, tedy metodou nejmenších čtverů.
5292 Provedeme následující úpravy
5293\begin_inset Formula \begin{eqnarray*}
5294\left(K_{2}\hat{b}_{k}+K_{3}P_{k}+K_{4}\right)\pi(k,x) & = & r_{k+1}-K_{1}y_{k},\\
5295\left(\begin{array}{cccc}
5296y_{k} & \hat{b}_{k}\pi(k,x) & P_{k}\pi(k,x) & \pi(k,x)\end{array}\right)\left(\begin{array}{c}
5297K_{1}\\
5298K_{2}\\
5299K_{3}\\
5300K_{4}\end{array}\right) & = & r_{k+1}.\end{eqnarray*}
5301
5302\end_inset
5303
5304Rovnici označíme jako
5305\begin_inset Formula \[
5306\Psi K=R.\]
5307
5308\end_inset
5309
5310Následně dosadíme do
5311\begin_inset Formula $\Psi$
5312\end_inset
5313
5314 vypočítaná
5315\begin_inset Formula $x_{k}$
5316\end_inset
5317
5318 za
5319\begin_inset Formula $\left(\begin{array}{ccc}
5320y_{k} & \hat{b}_{k} & P_{k}\end{array}\right)^{T}$
5321\end_inset
5322
5323a odpovídající vypočítaná
5324\begin_inset Formula $u$
5325\end_inset
5326
5327 za
5328\begin_inset Formula $\pi(k,n)$
5329\end_inset
5330
5331, kdy dosazujeme celé vektory v
5332\begin_inset Formula $n$
5333\end_inset
5334
5335.
5336 Tedy výsledné
5337\begin_inset Formula $\Psi$
5338\end_inset
5339
5340 je maticí rozměru
5341\begin_inset Formula $n\times4$
5342\end_inset
5343
5344.
5345 Aby mohla být rovnice splněna, položíme
5346\begin_inset Formula $R=r_{k+1}\left(\begin{array}{cccc}
53471 & 1 & \ldots & 1\end{array}\right)^{T}$
5348\end_inset
5349
5350, tedy sloupcový vektor ze samých
5351\begin_inset Formula $r_{k+1}$
5352\end_inset
5353
5354.
5355 A koeficienty
5356\begin_inset Formula $K$
5357\end_inset
5358
5359 vypočítáme metodou nejmenších čtverců jako
5360\begin_inset Formula \[
5361K=\left(\Psi^{T}\Psi\right)^{-1}\Psi R.\]
5362
5363\end_inset
5364
5365
5366\end_layout
5367
5368\begin_layout Description
5369Aproximace
5370\begin_inset space ~
5371\end_inset
5372
5373Bellmanovy
5374\begin_inset space ~
5375\end_inset
5376
5377funkce
5378\begin_inset ERT
5379status open
5380
5381\begin_layout Plain Layout
5382
5383~
5384\end_layout
5385
5386\end_inset
5387
5388
5389\begin_inset Newline newline
5390\end_inset
5391
5392Aproximace Bellmanovy funkce je volena po vzoru
5393\begin_inset CommandInset ref
5394LatexCommand ref
5395reference "sub:Konkrétní-použité-aproximace-iLDP"
5396
5397\end_inset
5398
5399 jako lineární kombinace devíti základních funkcí
5400\begin_inset Formula \[
54011,\; y_{k},\;\hat{b}_{k},\;\ln P_{k},\; y_{k}^{2},\; y_{k}\hat{b}_{k},\; y_{k}\ln P_{k},\;\hat{b}_{k}^{2},\;\hat{b}_{k}\ln P_{k}.\]
5402
5403\end_inset
5404
5405Koeficienty aproximace se určují lineární regresí podle vzorce uvedeného
5406 v
5407\begin_inset CommandInset ref
5408LatexCommand ref
5409reference "sub:Konkrétní-použité-aproximace-iLDP"
5410
5411\end_inset
5412
5413.
5414 Proměnná
5415\begin_inset Formula $P_{k}$
5416\end_inset
5417
5418 vystupuje v souboru základních funkcí v logaritmu z výpočetních důvodů.
5419 Nejdříve bylo užito základních funkcí pro
5420\begin_inset Formula $P_{k}$
5421\end_inset
5422
5423 bez logaritmů, ale výpočet koeficientů aproximace selhával, protože matice
5424 
5425\begin_inset Formula $\Phi\Phi^{T}$
5426\end_inset
5427
5428 vystupující ve vzorci pro lineární regresi byla blízko singulární matici.
5429 To způsobilo problémy při její následné inverzi, proto bylo
5430\begin_inset Formula $P_{k}$
5431\end_inset
5432
5433 nahrazeno v bázových funkcích
5434\begin_inset Formula $\ln P_{k}$
5435\end_inset
5436
5437.
5438\end_layout
5439
5440\begin_layout Section
5441Synchronní motor s permanentními magnety
5442\begin_inset CommandInset label
5443LatexCommand label
5444name "sec:Synchronní-motor-PMSP-upravy"
5445
5446\end_inset
5447
5448
5449\end_layout
5450
5451\begin_layout Subsection
5452Popis systému
5453\end_layout
5454
5455\begin_layout Standard
5456Následující model popisuje synchronní elektromotor s rotorem tvořeným permanentn
5457ími magnety.
5458 Systém je popsán standardními rovnicemi synchronního stroje s permanentními
5459 magnety ve stacionárním tvaru
5460\begin_inset Formula \begin{eqnarray}
5461\frac{di_{\alpha}}{dt} & = & -\frac{R_{s}}{L_{s}}i_{\alpha}+\frac{\Psi_{PM}}{L_{s}}\omega\sin\vartheta+\frac{u_{\alpha}}{L_{s}},\nonumber \\
5462\frac{di_{\beta}}{dt} & = & -\frac{R_{s}}{L_{s}}i_{\beta}-\frac{\Psi_{PM}}{L_{s}}\omega\cos\vartheta+\frac{u_{\beta}}{L_{s}},\label{eq:pmsmspojity}\\
5463\frac{d\omega}{dt} & = & \frac{k_{p}p_{p}^{2}\Psi_{PM}}{J}\left(i_{\beta}\cos\vartheta-i_{\alpha}\sin\vartheta\right)-\frac{B}{J}\omega-\frac{p_{p}}{J}T_{L},\nonumber \\
5464\frac{d\vartheta}{dt} & = & \omega.\nonumber \end{eqnarray}
5465
5466\end_inset
5467
5468
5469\end_layout
5470
5471\begin_layout Standard
5472Zde
5473\begin_inset Formula $i_{\alpha,\beta}$
5474\end_inset
5475
5476 reprezentují proudy a
5477\begin_inset Formula $u_{\alpha,\beta}$
5478\end_inset
5479
5480 napětí na statoru.
5481 Poloha (úhel otočení) rotoru je označen
5482\begin_inset Formula $\vartheta$
5483\end_inset
5484
5485 a
5486\begin_inset Formula $\omega$
5487\end_inset
5488
5489 je pak rychlost otáčení.
5490 Dále
5491\begin_inset Formula $R_{s}$
5492\end_inset
5493
5494 je rezistance a
5495\begin_inset Formula $L_{s}$
5496\end_inset
5497
5498 induktance statoru.
5499 
5500\begin_inset Formula $\Psi_{PM}$
5501\end_inset
5502
5503 má význam magnetického toku permanentních magnetů rotoru,
5504\begin_inset Formula $B$
5505\end_inset
5506
5507 tření a
5508\begin_inset Formula $T_{L}$
5509\end_inset
5510
5511 je zatěžovací moment.
5512 Konstanta
5513\begin_inset Formula $p_{p}$
5514\end_inset
5515
5516 označuje počet párů pólů a
5517\begin_inset Formula $k_{p}$
5518\end_inset
5519
5520 Parkovu konstantu.
5521\end_layout
5522
5523\begin_layout Standard
5524Cílem je návrh řízení bez senzorů, kdy čidla pro měření polohy a otáček
5525 nejsou (z různých důvodů) přítomna.
5526 Tedy jediné měřitelné veličiny jsou:
5527\begin_inset Formula \[
5528y(t)=\left(i_{\alpha}(t),i_{\beta}(t)\right),u_{\alpha}(t),u_{\beta}(t).\]
5529
5530\end_inset
5531
5532Které samozřejmě můžeme měřit jen s určitou přesností.
5533 Dále předpokládáme, že vstupy
5534\begin_inset Formula $u_{\alpha}$
5535\end_inset
5536
5537 a
5538\begin_inset Formula $u_{\beta}$
5539\end_inset
5540
5541 jsou omezené a tato omezení jsou známa.
5542 Nyní chceme dosáhnout požadovaných otáček rotoru
5543\begin_inset Formula $\overline{\omega}(t)$
5544\end_inset
5545
5546 (skutečnou hodnotu
5547\begin_inset Formula $\omega(t)$
5548\end_inset
5549
5550 neznáme, pouze ji odhadujeme ze známých hodnot
5551\begin_inset Formula $y(t)$
5552\end_inset
5553
5554).
5555\end_layout
5556
5557\begin_layout Subsection
5558Úprava rovnic
5559\begin_inset CommandInset label
5560LatexCommand label
5561name "sub:Úprava-rovnic-PMSM"
5562
5563\end_inset
5564
5565
5566\end_layout
5567
5568\begin_layout Subsubsection
5569Diskretizace
5570\end_layout
5571
5572\begin_layout Standard
5573Provedení diskretizace modelu
5574\begin_inset CommandInset ref
5575LatexCommand ref
5576reference "eq:pmsmspojity"
5577
5578\end_inset
5579
5580 pomocí Eulerovy metody vede na následující diskrétní popis:
5581\begin_inset Formula \begin{eqnarray*}
5582i_{\alpha,k+1} & = & \left(1-\frac{R_{s}}{L_{s}}\Delta k\right)i_{\alpha,k}+\frac{\Psi_{PM}}{L_{s}}\Delta k\omega_{k}\sin\vartheta_{k}+\frac{\Delta k}{L_{s}}u_{\alpha,k},\\
5583i_{\beta,k+1} & = & \left(1-\frac{R_{s}}{L_{s}}\Delta k\right)i_{\beta,k}-\frac{\Psi_{PM}}{L_{s}}\Delta k\omega_{k}\cos\vartheta_{k}+\frac{\Delta k}{L_{s}}u_{\beta,k},\\
5584\omega_{k+1} & = & \left(1-\frac{B}{J}\Delta k\right)\omega_{k}+\frac{k_{p}p_{p}^{2}\Psi_{PM}}{J}\Delta k\left(i_{\beta,k}\cos\vartheta_{k}-i_{\alpha,k}\sin\vartheta_{k}\right)-\frac{p_{p}}{J}T_{L}\Delta k,\\
5585\vartheta_{k+1} & = & \vartheta_{k}+\omega_{k}\Delta k.\end{eqnarray*}
5586
5587\end_inset
5588
5589Kde
5590\begin_inset Formula $\Delta k$
5591\end_inset
5592
5593 označuje diskrétní časový okamžik.
5594 Předpokládáme, že parametry modelu známe, můžeme tedy provést následující
5595 substituci za účelem zjednodušení:
5596\begin_inset Formula $a=1-\frac{R_{s}}{L_{s}}\Delta k$
5597\end_inset
5598
5599,
5600\begin_inset Formula $b=\frac{\Psi_{PM}}{L_{s}}\Delta k$
5601\end_inset
5602
5603,
5604\begin_inset Formula $c=\frac{\Delta k}{L_{s}}$
5605\end_inset
5606
5607,
5608\begin_inset Formula $d=1-\frac{B}{J}\Delta k$
5609\end_inset
5610
5611,
5612\begin_inset Formula $e=\frac{k_{p}p_{p}^{2}\Psi_{PM}}{J}\Delta k$
5613\end_inset
5614
5615.
5616 Pro jednoduchost uvažujme model bez zatížení, tedy zatěžovací moment
5617\begin_inset Formula $T_{L}$
5618\end_inset
5619
5620 je nulový a zjednodušený model je:
5621\begin_inset Formula \begin{eqnarray}
5622i_{\alpha,k+1} & = & ai_{\alpha,k}+b\omega_{k}\sin\vartheta_{k}+cu_{\alpha,k},\nonumber \\
5623i_{\beta,k+1} & = & ai_{\beta,k}-b\omega_{k}\cos\vartheta_{k}+cu_{\beta,k},\label{eq:pmsmdiskretni}\\
5624\omega_{k+1} & = & d\omega_{k}+e\left(i_{\beta,k}\cos\vartheta_{k}-i_{\alpha,k}\sin\vartheta_{k}\right),\nonumber \\
5625\vartheta_{k+1} & = & \vartheta_{k}+\omega_{k}\Delta k.\nonumber \end{eqnarray}
5626
5627\end_inset
5628
5629Tyto rovnice můžeme chápat jako popis systému se stavem
5630\begin_inset Formula $x_{k}=\left(i_{\alpha,k},i_{\beta,k},\omega_{k},\vartheta_{k}\right)$
5631\end_inset
5632
5633, kde předchozí soustavu rovnic zapíšeme jako
5634\begin_inset Formula $x_{k+1}=g(x_{k},u_{k})$
5635\end_inset
5636
5637.
5638\end_layout
5639
5640\begin_layout Subsubsection
5641Odhad stavu
5642\end_layout
5643
5644\begin_layout Standard
5645O skutečném stavu systému
5646\begin_inset Formula $x_{k}$
5647\end_inset
5648
5649 máme informaci pouze v podobě měření
5650\begin_inset Formula $y_{k}=\left(i_{\alpha,k},i_{\beta,k}\right)$
5651\end_inset
5652
5653.
5654 Vlastní vývoj stavových proměnných může být ovlivněn šumem, pro jednoduchost
5655 předpokládáme Gaussovský šum s nulovou střední hodnotou a kovarianční maticí
5656 
5657\begin_inset Formula $M_{k}$
5658\end_inset
5659
5660.
5661 Pozorování stavu, tedy výstup
5662\begin_inset Formula $y_{k}$
5663\end_inset
5664
5665, je zatížen chybou měření, která je způsobena zaokrouhlením skutečné hodnoty
5666 na rozlišovací hodnotu stupnice přístroje.
5667 Z důvodu zjednodušení ale předpokládáme, že chyba měření bude mít ve výsledku
5668 normální rozdělení s nulovou střední hodnotou a kovarianční maticí
5669\begin_inset Formula $N_{k}$
5670\end_inset
5671
5672.
5673 K stejnému závěru bychom mohli dojít i použitím
5674\emph on
5675centrální limitní věty
5676\emph default
5677 z teorie pravděpodobnosti.
5678 Tedy na vnitřní stav systému i na výstup můžeme pohlížet jako na náhodné
5679 veličiny s normálním rozdělením
5680\begin_inset Formula \begin{eqnarray*}
5681x_{k+1} & \sim & \mathcal{N}\left(g(x_{k}),M_{k}\right),\\
5682y_{k} & \sim & \mathcal{N}\left(\left(\begin{array}{c}
5683i_{\alpha,k}\\
5684i_{\beta,k}\end{array}\right),N_{k}\right).\end{eqnarray*}
5685
5686\end_inset
5687
5688Nyní využijeme toho, že Kalmanův filtr je optimálním pozorovatelem lineárního
5689 systému s Gaussovským šumem.
5690 Zde uvažovaný systém
5691\begin_inset CommandInset ref
5692LatexCommand ref
5693reference "eq:pmsmdiskretni"
5694
5695\end_inset
5696
5697 není lineární, ale můžeme využít nelineární verze Kalmanova filtru, označované
5698 jako
5699\emph on
5700rozšířený Kalmanův filtr
5701\emph default
5702 (Extended Kalman filter), který systém linearizuje v každém časovém kroku.
5703 Rovnice pro výpočet odhadu stavu pak budou následující
5704\begin_inset Formula \begin{eqnarray}
5705\hat{x}_{k+1} & = & g(\hat{x}_{k})-K\left(y_{k+1}-h(\hat{x}_{k})\right),\nonumber \\
5706K & = & P_{k}C_{k}^{T}\left(C_{k}P_{k}C_{k}^{T}+N_{k}\right)^{-1},\label{eq:pmsp-odhadstavu-rovnice}\\
5707P_{k+1} & = & A_{k}\left(P_{k}-P_{k}C_{k}^{T}\left(C_{k}P_{k}C_{k}^{T}+N_{k}\right)^{-1}C_{k}P_{k}\right)A_{k}^{T}+M_{k},\nonumber \end{eqnarray}
5708
5709\end_inset
5710
5711kde funkce
5712\begin_inset Formula $h$
5713\end_inset
5714
5715 je
5716\begin_inset Formula $h(x_{k})=\left(i_{\alpha,k},i_{\beta,k}\right)^{T}$
5717\end_inset
5718
5719 a matice
5720\begin_inset Formula $A_{k}$
5721\end_inset
5722
5723 a
5724\begin_inset Formula $C_{k}$
5725\end_inset
5726
5727 získáme linearizací systému v každém kroku, tedy
5728\begin_inset Formula \begin{eqnarray*}
5729A_{k}=\frac{d}{dx_{k}}g(x_{k},u_{k}) & = & \left(\begin{array}{cccc}
5730a & 0 & b\sin\vartheta_{k} & b\omega_{k}\cos\vartheta_{k}\\
57310 & a & -b\cos\vartheta_{k} & b\omega_{k}\sin\vartheta_{k}\\
5732-e\sin\vartheta_{k} & e\cos\vartheta_{k} & d & -e\left(i_{\alpha,k}\cos\vartheta_{k}+i_{\beta,k}\sin\vartheta_{k}\right)\\
57330 & 0 & \Delta k & 1\end{array}\right),\\
5734C_{k}=\frac{d}{dx_{k}}h(x_{k}) & = & \left(\begin{array}{cccc}
57351 & 0 & 0 & 0\\
57360 & 1 & 0 & 0\end{array}\right).\end{eqnarray*}
5737
5738\end_inset
5739
5740
5741\end_layout
5742
5743\begin_layout Subsubsection
5744Ztrátová funkce
5745\end_layout
5746
5747\begin_layout Standard
5748Cílem je dosáhnout požadovaných otáček rotoru
5749\begin_inset Formula $\overline{\omega}$
5750\end_inset
5751
5752.
5753 Pro zjednodušení uvažujme aditivní kvadratickou ztrátovou funkci
5754\begin_inset Formula \[
5755J=\mathrm{E}\left\{ \sum_{k=0}^{N-1}l(x_{k},u_{k})\right\} ,\]
5756
5757\end_inset
5758
5759kdy ztráta v každém časovém kroku
5760\begin_inset Formula $k$
5761\end_inset
5762
5763 je
5764\begin_inset Formula \[
5765l(x_{k},u_{k})=(\omega_{k}-\overline{\omega}_{k})^{2}+r(u_{\alpha,k}^{2}+u_{\beta,k}^{2}),\]
5766
5767\end_inset
5768
5769kde
5770\begin_inset Formula $r$
5771\end_inset
5772
5773 je vhodný parametr penalizace za vstupy, který je ovšem potřeba doladit.
5774 Tento výraz můžeme upravit do maticové podoby
5775\begin_inset Formula \begin{eqnarray*}
5776l(x_{k},u_{k}) & = & \left(\omega_{k}-\overline{\omega}_{k}\right)Q\left(\omega-\overline{\omega}_{k}\right)+\left(u_{\alpha,k},u_{\beta,k}\right)\left(\begin{array}{cc}
5777r & 0\\
57780 & r\end{array}\right)\left(\begin{array}{c}
5779u_{\alpha,k}\\
5780u_{\beta,k}\end{array}\right)\\
5781 & = & \psi_{k}^{T}Q\psi_{k}+u_{k}^{T}Ru_{k},\end{eqnarray*}
5782
5783\end_inset
5784
5785kde
5786\begin_inset Formula $\psi_{k}$
5787\end_inset
5788
5789 značí rozdíl vektoru stavu a pořadované hodnoty
5790\begin_inset Formula $\psi_{k}=x_{k}-\overline{x}_{k}$
5791\end_inset
5792
5793 a matice
5794\begin_inset Formula $Q$
5795\end_inset
5796
5797 a
5798\begin_inset Formula $R$
5799\end_inset
5800
5801 pak mají tvar
5802\begin_inset Formula \begin{eqnarray*}
5803Q & = & \left(\begin{array}{cccc}
58040 & 0 & 0 & 0\\
58050 & 0 & 0 & 0\\
58060 & 0 & 1 & 0\\
58070 & 0 & 0 & 0\end{array}\right),\\
5808R & = & \left(\begin{array}{cc}
5809r & 0\\
58100 & r\end{array}\right).\end{eqnarray*}
5811
5812\end_inset
5813
5814
5815\end_layout
5816
5817\begin_layout Subsection
5818Aplikace iLDP
5819\end_layout
5820
5821\begin_layout Standard
5822K implementaci
5823\emph on
5824iLDP
5825\emph default
5826 algoritmu je nutno podotknout, že jsem zatím nevytvořil funkční verzi.
5827 Je to zejména z důvodu, že se nepodařilo nalézt vhodnou aproximaci Bellmanovy
5828 funkce.
5829 Přesto je zde uveden postup aplikace tohoto algoritmu.
5830\end_layout
5831
5832\begin_layout Subsubsection
5833Postačující statistika
5834\end_layout
5835
5836\begin_layout Standard
5837Pro aplikaci
5838\emph on
5839iLDP
5840\emph default
5841 metody je vhodné nejdříve zavést postačující statistiku.
5842 Volme tedy
5843\begin_inset Formula $\tilde{S}_{k}=\left(\hat{x}_{k},P_{k}\right)$
5844\end_inset
5845
5846, kde
5847\begin_inset Formula $\hat{x}_{k}$
5848\end_inset
5849
5850 má význam odhadu stavu a
5851\begin_inset Formula $P_{k}$
5852\end_inset
5853
5854 kovarianční matice, přičemž tyto parametry se vyvíjejí v čase podle rovnic
5855 
5856\begin_inset CommandInset ref
5857LatexCommand ref
5858reference "eq:pmsp-odhadstavu-rovnice"
5859
5860\end_inset
5861
5862.
5863 Následně, kdybychom chtěli zahrnout do aproximace Bellmanovy funkce všechny
5864 členy
5865\begin_inset Formula $\tilde{S}_{k}$
5866\end_inset
5867
5868, jednalo by se o příliš velké množství dat.
5869 Samotný vektor
5870\begin_inset Formula $\hat{x}_{k}$
5871\end_inset
5872
5873 má v každém čase
5874\begin_inset Formula $k$
5875\end_inset
5876
5877 čtyři složky a kovarianční matice
5878\begin_inset Formula $P_{k}$
5879\end_inset
5880
5881 pak šestnáct složek.
5882 Hledáme-li aproximaci Bellmanovy funkce po vzoru
5883\begin_inset CommandInset ref
5884LatexCommand ref
5885reference "sub:Konkrétní-použité-aproximace-iLDP"
5886
5887\end_inset
5888
5889, získáme dvacet členů prvního řádu a mnohonásobně víc členů druhého řádu.
5890 V takovémto případě je implementace algoritmu prakticky nemožná, omezíme
5891 se tedy na postačující statistiku ve tvaru
5892\begin_inset Formula $S_{k}=\left(\hat{x}_{k},P_{k}^{(3,3)},P_{k}^{(4,4)}\right)$
5893\end_inset
5894
5895, odhadu stavu a variancí odhadů složek rychlosti a otáček, které právě
5896 nemůžeme měřit.
5897\end_layout
5898
5899\begin_layout Subsubsection
5900Detaily implementace algoritmu
5901\end_layout
5902
5903\begin_layout Standard
5904Základní návrh implementace vychází z verze algoritmu pro jednoduchý systém
5905 viz
5906\begin_inset CommandInset ref
5907LatexCommand ref
5908reference "sub:iLDP-js-implementace"
5909
5910\end_inset
5911
5912, kterou modifikuje a rozšiřuje.
5913\end_layout
5914
5915\begin_layout Standard
5916Okolí
5917\begin_inset Formula $\left\{ x^{(n)}\right\} $
5918\end_inset
5919
5920 je voleno opět jako náhodná veličina s normálním rozdělením se střední
5921 hodnotou rovnou průměrnému stavu
5922\begin_inset Formula $\bar{x}(k)$
5923\end_inset
5924
5925 a rozptylem specifikovaným parametrem
5926\begin_inset Formula $\rho^{2}$
5927\end_inset
5928
5929.
5930 Počet vzorků
5931\begin_inset Formula $M$
5932\end_inset
5933
5934 je ponechán na hodnotě
5935\begin_inset Formula $100$
5936\end_inset
5937
5938, i když byly testovány i jiné hodnoty.
5939 
5940\end_layout
5941
5942\begin_layout Standard
5943Protože se úloha řízení synchronního motoru snaží do jisté míry přiblížit
5944 realitě, uvažujeme vstupy jako omezené.
5945 Tedy předpokládáme, že zdroj nemůže dodat na vstup libovolné napětí, ale
5946 je třeba dodržet jistá omezení.
5947 Zde budou omezení vstupů reprezentována podmínkou
5948\begin_inset Formula \[
5949u_{\alpha}^{2}+u_{\beta}^{2}\leq u_{max}^{2},\]
5950
5951\end_inset
5952
5953kde
5954\begin_inset Formula $u_{max}$
5955\end_inset
5956
5957 předpokládáme jako zadanou konstantu.
5958 Pro minimalizaci v algoritmu
5959\emph on
5960iLDP
5961\emph default
5962 je tedy třeba užít omezené minimalizace, zde je použita minimalizační funkce
5963 programu
5964\emph on
5965Matlab
5966\emph default
5967(
5968\emph on
5969Optimization Toolbox
5970\emph default
5971)
5972\family typewriter
5973fmincon
5974\family default
5975.
5976\end_layout
5977
5978\begin_layout Subsubsection
5979Volba aproximací
5980\end_layout
5981
5982\begin_layout Standard
5983Aproximaci Bellmanovy funkce vytvoříme na základě postačující statistiky
5984 
5985\begin_inset Formula $S_{k}=\left(\hat{x}_{k},P_{k}^{(3,3)},P_{k}^{(4,4)}\right)$
5986\end_inset
5987
5988, tedy dle
5989\begin_inset CommandInset ref
5990LatexCommand ref
5991reference "sub:Konkrétní-použité-aproximace-iLDP"
5992
5993\end_inset
5994
5995 volíme lineární kombinace základních funkcí a na základě zkušeností s jednoduch
5996ým systémem použijeme místo variancí jejich logaritmy.
5997 Soubor základních funkcí je pak
5998\begin_inset Formula \begin{gather*}
59991,\;\hat{x}_{k}^{(1)},\ldots,\hat{x}_{k}^{(4)},\;\ln P_{k}^{(3,3)},\;\ln P_{k}^{(4,4)},\;\left(\hat{x}_{k}^{(1)}\right)^{2},\;\hat{x}_{k}^{(1)}\hat{x}_{k}^{(2)},\ldots,\hat{x}_{k}^{(1)}\hat{x}_{k}^{(4)},\\
6000\hat{x}_{k}^{(1)}\ln P_{k}^{(3,3)},\;\hat{x}_{k}^{(1)}\ln P_{k}^{(4,4)},\;\left(\hat{x}_{k}^{(2)}\right)^{2},\;\hat{x}_{k}^{(2)}\hat{x}_{k}^{(3)},\;\hat{x}_{k}^{(2)}\hat{x}_{k}^{(4)},\\
6001\hat{x}_{k}^{(2)}\ln P_{k}^{(3,3)},\;\hat{x}_{k}^{(2)}\ln P_{k}^{(4,4)},\;\left(\hat{x}_{k}^{(3)}\right)^{2},\;\hat{x}_{k}^{(3)}\hat{x}_{k}^{(4)},\;\hat{x}_{k}^{(3)}\ln P_{k}^{(3,3)},\\
6002\hat{x}_{k}^{(3)}\ln P_{k}^{(4,4)},\;\left(\hat{x}_{k}^{(4)}\right)^{2},\;\hat{x}_{k}^{(4)}\ln P_{k}^{(3,3)},\;\hat{x}_{k}^{(4)}\ln P_{k}^{(4,4)}.\end{gather*}
6003
6004\end_inset
6005
6006Ale i takový soubor základních funkcí může být příliš velký, proto byla
6007 zkoušena i možnost s vynecháním prvních dvou členů
6008\begin_inset Formula $\hat{x}_{k}$
6009\end_inset
6010
6011, tedy proudů
6012\begin_inset Formula $i_{\alpha}$
6013\end_inset
6014
6015 a
6016\begin_inset Formula $i_{\beta}$
6017\end_inset
6018
6019.
6020 Naopak byly přidány kvadráty logaritmů variancí.
6021 Druhý možný soubor je tedy
6022\begin_inset Formula \begin{gather*}
60231,\;\hat{x}_{k}^{(3)},\;\hat{x}_{k}^{(4)},\;\ln P_{k}^{(3,3)},\;\ln P_{k}^{(4,4)},\;\left(\hat{x}_{k}^{(3)}\right)^{2},\;\hat{x}_{k}^{(3)}\hat{x}_{k}^{(4)},\\
6024\hat{x}_{k}^{(3)}\ln P_{k}^{(3,3)},\;\hat{x}_{k}^{(3)}\ln P_{k}^{(4,4)},\;\left(\hat{x}_{k}^{(4)}\right)^{2},\;\hat{x}_{k}^{(4)}\ln P_{k}^{(3,3)},\\
6025\hat{x}_{k}^{(4)}\ln P_{k}^{(4,4)},\;\left(\ln P_{k}^{(3,3)}\right)^{2},\;\ln P_{k}^{(3,3)}\ln P_{k}^{(4,4)},\;\left(\ln P_{k}^{(4,4)}\right)^{2}.\end{gather*}
6026
6027\end_inset
6028
6029
6030\end_layout
6031
6032\begin_layout Standard
6033Aproximace řízení byla volena a zkoušena v několika různých tvarech.
6034 Jednalo se o přímovazební řízení
6035\begin_inset Formula $\pi(k,x)=\overline{u}_{k}$
6036\end_inset
6037
6038, kde hodnotu řízení
6039\begin_inset Formula $\overline{u}_{k}$
6040\end_inset
6041
6042 získáme jako střední hodnotu přes vzorky
6043\begin_inset Formula $n$
6044\end_inset
6045
6046 všech řízení
6047\family roman
6048\series medium
6049\shape up
6050\size normal
6051\emph off
6052\bar no
6053\noun off
6054\color none
6055
6056\begin_inset Formula $\left\{ u^{(n)}\right\} $
6057\end_inset
6058
6059 v čase
6060\begin_inset Formula $k$
6061\end_inset
6062
6063.
6064 Dále, protože se jedná o točivý stroj, byla testována zpětnovazební aproximace
6065 řízení ve tvaru lineární kombinace funkcí
6066\begin_inset Formula $\sin\vartheta,\;\cos\vartheta,\;\sin^{2}\vartheta,\;\cos^{2}\vartheta$
6067\end_inset
6068
6069.
6070 Nakonec byla ještě zkoušena aproximace získaná vyjádřením veličiny
6071\begin_inset Formula $u_{k}$
6072\end_inset
6073
6074 z rovnic systému a doplnění o koeficienty po vzoru nalezení aproximace
6075 řízení v
6076\begin_inset CommandInset ref
6077LatexCommand ref
6078reference "sub:iLDP-js-implementace"
6079
6080\end_inset
6081
6082.
6083\end_layout
6084
6085\begin_layout Subsubsection
6086Problém aplikace iLDP
6087\end_layout
6088
6089\begin_layout Standard
6090Žádný z výše uvedených postupů nevedl k nalezení funkčního řízení, pro zadaný
6091 problém synchronního motoru s permanentními magnety.
6092 Jako zásadní problém zde shledávám netriviální úkol nalezení vhodných aproximac
6093í.
6094 V případě vícerozměrného nelineárního systému to může být velmi náročné
6095 a nahodilé zkoušení volby různých aproximací zřejmě nemusí vést k cíli.
6096 Jednou z možností je vyjít z jednodušší metody, například
6097\emph on
6098LQG
6099\emph default
6100 nebo modifikované
6101\emph on
6102iLQG
6103\emph default
6104, a aproximace vytvořit po vzoru jejích funkcí.
6105 Pak bychom však obdrželi v podstatě stejně
6106\begin_inset Quotes gld
6107\end_inset
6108
6109přesnou
6110\begin_inset Quotes grd
6111\end_inset
6112
6113 metodu jako je ta, ze které jsme vyšli, jenom by byl náš algoritmus
6114\emph on
6115 iLDP
6116\emph default
6117 časově náročnější z důvodu numerických výpočtů.
6118 Vhodným kandidátem na metodu, z níž by bylo možné vyjít, je algoritmus
6119 
6120\emph on
6121LQG
6122\emph default
6123, pomocí kterého se podařilo implementovat funkční řízení.
6124\end_layout
6125
6126\begin_layout Subsection
6127Algoritmus LQG
6128\end_layout
6129
6130\begin_layout Standard
6131Zde navržený algoritmus
6132\emph on
6133LQG
6134\emph default
6135 není duální, neurčitosti v systému tedy zvládá hůře než případná duální
6136 metoda.
6137 Dále algoritmus předpokládá lineární systém a kvadratickou ztrátu.
6138 Ztrátu jsme z důvodu jednoduchosti jako kvadratickou volili již na počátku,
6139 je ale třeba linearizovat systém v každém časovém kroku.
6140 Dále
6141\emph on
6142LQG
6143\emph default
6144 je založeno na principu separace, tedy estimátor a regulátor navrhujeme
6145 zvlášť.
6146 Estimátorem zvolíme rozšířený Kalmanův filtr, jehož rovnice jsou uvedeny
6147 v části
6148\begin_inset CommandInset ref
6149LatexCommand ref
6150reference "sub:Úprava-rovnic-PMSM"
6151
6152\end_inset
6153
6154.
6155 Jako regulátor použijeme LQ regulátor, který je popsán v
6156\begin_inset CommandInset ref
6157LatexCommand ref
6158reference "sub:LQGkp1"
6159
6160\end_inset
6161
6162.
6163\end_layout
6164
6165\begin_layout Subsubsection
6166Požadovaná hodnota
6167\end_layout
6168
6169\begin_layout Standard
6170Protože jednoduchý systém v
6171\begin_inset CommandInset ref
6172LatexCommand ref
6173reference "sec:Jednoduchý-systém-pro-testovani"
6174
6175\end_inset
6176
6177 byl lineární, bylo prakticky jedno, na jakou požadovanou hodnotu jej řídíme.
6178 Díky linearitě můžeme totiž hodnoty vždy posunout.
6179 Regulátor LQ je navržen pro lineární systém, předpokládá tedy linearitu
6180 a hledá řízení pouze na nulovou hodnotu.
6181 Tedy snaží se minimalizovat odchylku od nuly.
6182 Zde uvažovaný systém je ale nelineární, a když chceme řídit na nenulovou
6183 požadovanou hodnotu, v tomto případě jde o požadované otáčky
6184\begin_inset Formula $\overline{\omega}$
6185\end_inset
6186
6187, nelze pouze nalézt LQ řízení na nulu a následně řešení posunout.
6188 Je proto třeba požadovanou hodnotu již od počátku zahrnout do našich uvažování
6189 a přidat ji do systému jako novou stavovou proměnnou, byť může být v celém
6190 časovém vývoji systému konstantní.
6191\end_layout
6192
6193\begin_layout Standard
6194Provedeme tedy substituci.
6195 Chceme
6196\family roman
6197\series medium
6198\shape up
6199\size normal
6200\emph off
6201\bar no
6202\noun off
6203\color none
6204řídit na nulu
6205\begin_inset Formula $\omega_{k}-\overline{\omega}_{k}$
6206\end_inset
6207
6208 rozdíl skutečných a požadovaných otáček, tuto veličinu tedy označíme jako
6209 
6210\begin_inset Formula $\psi_{k}$
6211\end_inset
6212
6213 a následně
6214\begin_inset Formula $\psi_{k}=\omega_{k}-\overline{\omega}_{k}$
6215\end_inset
6216
6217.
6218 Z tohoto výrazu si můžeme vyjádřit stavovou proměnnou otáček jako
6219\begin_inset Formula $\omega_{k}=\psi_{k}+\overline{\omega}_{k}$
6220\end_inset
6221
6222.
6223 Nyní v rovnicích
6224\begin_inset CommandInset ref
6225LatexCommand ref
6226reference "eq:pmsmdiskretni"
6227
6228\end_inset
6229
6230 dosadíme za
6231\begin_inset Formula $\omega_{k}$
6232\end_inset
6233
6234 a přidáním další rovnice pro vývoj požadované hodnoty
6235\begin_inset Formula $\overline{\omega}_{k}$
6236\end_inset
6237
6238 získáme rovnice nového systému v pěti stavových proměnných
6239\family default
6240\series default
6241\shape default
6242\size default
6243\emph default
6244\bar default
6245\noun default
6246\color inherit
6247
6248\begin_inset Formula \begin{eqnarray*}
6249i_{\alpha,k+1} & = & ai_{\alpha,k}+b\left(\psi_{k}+\overline{\omega}_{k}\right)\sin\vartheta_{k}+cu_{\alpha,k},\\
6250i_{\beta,k+1} & = & ai_{\beta,k}-b\left(\psi_{k}+\overline{\omega}_{k}\right)\cos\vartheta_{k}+cu_{\beta,k},\\
6251\psi_{k+1} & = & d\left(\psi_{k}+\overline{\omega}_{k}\right)-\overline{\omega}_{k+1}+e\left(i_{\beta,k}\cos\vartheta_{k}-i_{\alpha,k}\sin\vartheta_{k}\right),\\
6252\vartheta_{k+1} & = & \vartheta_{k}+\left(\psi_{k}+\overline{\omega}_{k}\right)\Delta k,\\
6253\overline{\omega}_{k+1} & = & \overline{\omega}_{k}.\end{eqnarray*}
6254
6255\end_inset
6256
6257Současně se nám ale ztráta v každém časovém kroku
6258\begin_inset Formula $k$
6259\end_inset
6260
6261 změní na
6262\begin_inset Formula \[
6263l(x_{k},u_{k})=\psi_{k}^{2}+r(u_{\alpha,k}^{2}+u_{\beta,k}^{2})=\psi_{k}^{T}Q\psi_{k}+u_{k}^{T}Ru_{k}.\]
6264
6265\end_inset
6266
6267
6268\end_layout
6269
6270\begin_layout Subsubsection
6271LQG řízení
6272\end_layout
6273
6274\begin_layout Standard
6275Nyní můžeme na matice popisující systém
6276\begin_inset Formula \begin{eqnarray*}
6277A_{k} & = & \frac{d}{dx_{k}}g(x_{k},u_{k})\\
6278 & = & \left(\begin{array}{ccccc}
6279a & 0 & b\sin\vartheta_{k} & b\left(\psi_{k}+\overline{\omega}_{k}\right)\cos\vartheta_{k} & b\sin\vartheta_{k}\\
62800 & a & -b\cos\vartheta_{k} & b\left(\psi_{k}+\overline{\omega}_{k}\right)\sin\vartheta_{k} & -b\cos\vartheta_{k}\\
6281-e\sin\vartheta_{k} & e\cos\vartheta_{k} & d & -e\left(i_{\alpha,k}\cos\vartheta_{k}+i_{\beta,k}\sin\vartheta_{k}\right) & \left(d-1\right)\\
62820 & 0 & \Delta k & 1 & \Delta k\\
62830 & 0 & 0 & 0 & 1\end{array}\right),\end{eqnarray*}
6284
6285\end_inset
6286
6287
6288\end_layout
6289
6290\begin_layout Standard
6291\begin_inset Formula \begin{eqnarray*}
6292B_{k}=\frac{d}{du_{k}}g(x_{k},u_{k}) & = & \left(\begin{array}{cc}
6293c & 0\\
62940 & c\\
62950 & 0\\
62960 & 0\\
62970 & 0\end{array}\right),\\
6298C_{k}=\frac{d}{dx_{k}}h(x_{k}) & = & \left(\begin{array}{ccccc}
62991 & 0 & 0 & 0 & 0\\
63000 & 1 & 0 & 0 & 0\end{array}\right),\\
6301Q & = & \left(\begin{array}{ccccc}
63020 & 0 & 0 & 0 & 0\\
63030 & 0 & 0 & 0 & 0\\
63040 & 0 & 1 & 0 & 0\\
63050 & 0 & 0 & 0 & 0\\
63060 & 0 & 0 & 0 & 0\end{array}\right),\\
6307R & = & \left(\begin{array}{cc}
6308r & 0\\
63090 & r\end{array}\right),\end{eqnarray*}
6310
6311\end_inset
6312
6313aplikovat rovnice pro rozšířený Kalmanův filtr a LQ regulátor.
6314 Konkrétní hodnoty počátečních hodnot a parametrů budou specifikovány v
6315 kapitole
6316\begin_inset CommandInset ref
6317LatexCommand ref
6318reference "cha:Výsledky"
6319
6320\end_inset
6321
6322.
6323\end_layout
6324
6325\begin_layout Standard
6326Ještě je třeba zmínit, že pro nalezení řízení synchronního motoru není využito
6327 
6328\emph on
6329LQG
6330\emph default
6331 návrhu přesně tak, jak byl popsán v kapitole
6332\begin_inset CommandInset ref
6333LatexCommand ref
6334reference "cha:Algoritmy-pro-návrh"
6335
6336\end_inset
6337
6338, ale algoritmus je zde drobně vylepšen pomocí takzvaného
6339\begin_inset Quotes gld
6340\end_inset
6341
6342ubíhajícího horizontu
6343\begin_inset Quotes grd
6344\end_inset
6345
6346 (v anglické literatuře označováno jako
6347\begin_inset Quotes gld
6348\end_inset
6349
6350receding horizon
6351\begin_inset Quotes grd
6352\end_inset
6353
6354).
6355 Princip spočívá v tom, že řízení není předpočteno pro celý časový horizont,
6356 pro který jej navrhujeme, ale vypočteme jej pouze pro pevně stanovený pomocný
6357 časový horizont.
6358 Tento pomocný horizont pak v každém časovém kroku posouváme po původní
6359 celkové časové ose tak, aby pomocný horizont začínal vždy v časovém kroku
6360 
6361\begin_inset Formula $k$
6362\end_inset
6363
6364 celkové časové osy, pro který chceme navrhnout řízení.
6365\end_layout
6366
6367\begin_layout Standard
6368\begin_inset Newpage newpage
6369\end_inset
6370
6371
6372\end_layout
6373
6374\begin_layout Chapter
6375Výsledky
6376\begin_inset CommandInset label
6377LatexCommand label
6378name "cha:Výsledky"
6379
6380\end_inset
6381
6382
6383\end_layout
6384
6385\begin_layout Section
6386Metodika zpracování a získávání výsledků
6387\end_layout
6388
6389\begin_layout Standard
6390Pro testované systémy viz kapitola
6391\begin_inset CommandInset ref
6392LatexCommand ref
6393reference "cha:Systémy-pro-testování"
6394
6395\end_inset
6396
6397, byly jednotlivé algoritmy implementovány jako funkce programu
6398\emph on
6399Matlab
6400\emph default
6401.
6402 Vstupními hodnotami byla nastavení jednotlivých počátečních podmínek a
6403 parametrů pro výpočet.
6404 Jednotlivé algoritmy pak byly volány ze skriptu programu
6405\emph on
6406Matlab
6407\emph default
6408 se stejným nastavením hodnot.
6409 Návratovými hodnotami jednotlivých funkcí reprezentujících algoritmy pak
6410 byla dosažená hodnota ztráty a posloupnost reprezentující diskrétní trajektorii
6411 systému ve stavovém prostoru.
6412 Hodnota ztráty
6413\begin_inset Formula $J_{alg}$
6414\end_inset
6415
6416 byla pro účely porovnání algoritmů formulována stejně, jako součet kvadrátů
6417 odchylek výstupu od požadované hodnoty, tedy
6418\begin_inset Formula \[
6419J_{alg}=\sum_{k=0}^{K-1}\left(y_{k+1}-r_{k+1}\right)^{2}.\]
6420
6421\end_inset
6422
6423Při porovnávání jednotlivých algoritmů nebyly samozřejmě uvažovány výsledky
6424 jednoho běhu výpočtu, ale provedlo se běhů více a následně byla pro výsledky
6425 vypočtena jejich střední hodnota.
6426\end_layout
6427
6428\begin_layout Subsection
6429Funkce pro jednoduchý systém
6430\end_layout
6431
6432\begin_layout Standard
6433Všechny konkrétní funkce programu
6434\emph on
6435Matlab
6436\emph default
6437 reprezentující jednotlivé algoritmy mají stejnou strukturu.
6438 Na počátku dostanou jako své vstupní hodnoty parametry:
6439\end_layout
6440
6441\begin_layout Labeling
6442\labelwidthstring 00.00.0000
6443\begin_inset Formula $y_{0}$
6444\end_inset
6445
6446 počáteční hodnota proměnné
6447\begin_inset Formula $y$
6448\end_inset
6449
6450, tedy hodnota
6451\begin_inset Formula $y_{k}$
6452\end_inset
6453
6454 v čase
6455\begin_inset Formula $k=1$
6456\end_inset
6457
6458;
6459\end_layout
6460
6461\begin_layout Labeling
6462\labelwidthstring 00.00.0000
6463\begin_inset Formula $y_{r}$
6464\end_inset
6465
6466 požadovaná hodnota
6467\begin_inset Formula $y$
6468\end_inset
6469
6470, referenční signál;
6471\end_layout
6472
6473\begin_layout Labeling
6474\labelwidthstring 00.00.0000
6475\begin_inset Formula $\hat{b}$
6476\end_inset
6477
6478 střední hodnota neznámého parametru
6479\begin_inset Formula $b$
6480\end_inset
6481
6482;
6483\end_layout
6484
6485\begin_layout Labeling
6486\labelwidthstring 00.00.0000
6487\begin_inset Formula $P$
6488\end_inset
6489
6490 variance neznámého parametru
6491\begin_inset Formula $b$
6492\end_inset
6493
6494;
6495\end_layout
6496
6497\begin_layout Labeling
6498\labelwidthstring 00.00.0000
6499\begin_inset Formula $\sigma^{2}$
6500\end_inset
6501
6502 variance šumu;
6503\end_layout
6504
6505\begin_layout Labeling
6506\labelwidthstring 00.00.0000
6507\begin_inset Formula $K$
6508\end_inset
6509
6510 časový horizont, pro který navrhujeme řízení;
6511\end_layout
6512
6513\begin_layout Labeling
6514\labelwidthstring 00.00.0000
6515\begin_inset Formula $N$
6516\end_inset
6517
6518 počet vzorkových trajektorií pro simulaci.
6519\end_layout
6520
6521\begin_layout Standard
6522Následně proběhne výpočet řízení na základě konkrétního algoritmu, zpravidla
6523 podle rovnic a vzorců popsaných v části
6524\begin_inset CommandInset ref
6525LatexCommand ref
6526reference "sec:Jednoduchý-systém-pro-testovani"
6527
6528\end_inset
6529
6530.
6531 Dále je provedena simulace běhu systému s použitím řízení získaného v předchozí
6532m kroku.
6533 V průběhu této simulace je vypočítána hodnota dosažené ztráty a posloupnost
6534 odpovídající trajektorie systému.
6535 Tyto veličiny charakterizující použití daného algoritmu na jednoduchý systém
6536 jsou na závěr vráceny jako návratové hodnoty funkce.
6537\end_layout
6538
6539\begin_layout Subsection
6540Testovací schémata jednoduchého systému
6541\end_layout
6542
6543\begin_layout Standard
6544Pro porovnání jednotlivých algoritmů stačí zadat do skriptu konkrétní hodnoty
6545 parametrů, které budou pro jednotlivá schémata uvedena dále.
6546\end_layout
6547
6548\begin_layout Standard
6549Jednotlivé algoritmy z části
6550\begin_inset CommandInset ref
6551LatexCommand ref
6552reference "sec:Jednoduchý-systém-pro-testovani"
6553
6554\end_inset
6555
6556 budou v následujícím textu označeny po řadě zkratkami:
6557\end_layout
6558
6559\begin_layout Labeling
6560\labelwidthstring 00.00.0000
6561
6562\emph on
6563CE
6564\emph default
6565 triviální CE regulátor;
6566\end_layout
6567
6568\begin_layout Labeling
6569\labelwidthstring 00.00.0000
6570
6571\emph on
6572sLQ
6573\emph default
6574 jednoduchá verze LQ regulátoru;
6575\end_layout
6576
6577\begin_layout Labeling
6578\labelwidthstring 00.00.0000
6579
6580\emph on
6581LQ
6582\emph default
6583 druhá verze LQG řízení s odhadem parametru
6584\begin_inset Formula $b$
6585\end_inset
6586
6587;
6588\end_layout
6589
6590\begin_layout Labeling
6591\labelwidthstring 00.00.0000
6592
6593\emph on
6594iLQG
6595\emph default
6596 řízení iLQG;
6597\end_layout
6598
6599\begin_layout Labeling
6600\labelwidthstring 00.00.0000
6601
6602\emph on
6603iLDP
6604\emph default
6605 algoritmus iterativního lokálního dynamického programování.
6606\end_layout
6607
6608\begin_layout Section
6609Výsledky algoritmů pro jednoduchý systém
6610\end_layout
6611
6612\begin_layout Subsection
6613Různá počáteční nastavení
6614\end_layout
6615
6616\begin_layout Standard
6617Volba počátečních nastavení, tedy parametrů skriptu pro volání funkcí, byla
6618 v jednotlivých testovacích schématech následující:
6619\end_layout
6620
6621\begin_layout Standard
6622Počáteční hodnota a referenční signál byly voleny jako
6623\begin_inset Formula \begin{eqnarray*}
6624y_{0} & = & 0,\\
6625y_{r} & = & 1.\end{eqnarray*}
6626
6627\end_inset
6628
6629 Z důvodu linearity úlohy je možné je libovolně posunout a přeškálovat,
6630 není tedy uvažováno testování pro jiné hodnoty.
6631 Variance šumu
6632\begin_inset Formula $\sigma^{2}$
6633\end_inset
6634
6635 je volena pomocí odchylky
6636\begin_inset Formula \[
6637\sigma=0,1.\]
6638
6639\end_inset
6640
6641Pro metodu
6642\emph on
6643iLDP
6644\emph default
6645 je pak parametr okolí položen
6646\begin_inset Formula $\rho=0,5$
6647\end_inset
6648
6649.
6650 Časový horizont pro výpočty je
6651\begin_inset Formula $K=5$
6652\end_inset
6653
6654, což se jeví dostatečným pro dosažení požadované hodnoty.
6655 Dále je v testovacích schématech použit počet vzorkových trajektorií
6656\begin_inset Formula $N=100$
6657\end_inset
6658
6659.
6660 
6661\end_layout
6662
6663\begin_layout Standard
6664Středem našeho zájmu je volba střední hodnoty a variance neznámého parametru
6665 
6666\begin_inset Formula $b$
6667\end_inset
6668
6669.
6670 Zejména volbou variance
6671\begin_inset Formula $P$
6672\end_inset
6673
6674 určujeme míru neznalosti parametru a tedy i nutnost užití duální metody.
6675 Bude-li
6676\begin_inset Formula $P$
6677\end_inset
6678
6679 velmi malé, skutečná hodnota
6680\begin_inset Formula $b$
6681\end_inset
6682
6683 se přiblíží střední hodnotě
6684\begin_inset Formula $\hat{b}$
6685\end_inset
6686
6687 a dobré řízení nám poskytnou i neduální metody založené na předpokladu,
6688 že
6689\begin_inset Formula $b=\hat{b}$
6690\end_inset
6691
6692.
6693 S rostoucí variancí
6694\begin_inset Formula $P$
6695\end_inset
6696
6697 se však začnou vyskytovat realizace, kdy se skutečná hodnota
6698\begin_inset Formula $b$
6699\end_inset
6700
6701 výrazně odlišuje od střední hodnoty
6702\begin_inset Formula $\hat{b}$
6703\end_inset
6704
6705, a právě tam neduální metody dosáhnou příliš velké ztráty, nebo úplně selžou
6706 v úkolu řízení.
6707 Z tohoto důvodu byly testovány všechny kombinace pro volby parametrů
6708\begin_inset Formula \begin{eqnarray*}
6709\hat{b} & = & 0;\;1;\;10;\\
6710P & = & 0,01;\;0,1;\;1;\;10.\end{eqnarray*}
6711
6712\end_inset
6713
6714
6715\end_layout
6716
6717\begin_layout Subsection
6718Výsledky porovnání algoritmů
6719\end_layout
6720
6721\begin_layout Standard
6722Nyní porovnáme výsledky jednotlivých algoritmů, a to hlavně podle dosažené
6723 hodnoty průměrné ztráty.
6724 Průměrná ztráta pro každý algoritmus je počítáma jako aritmetický průměr
6725 
6726\begin_inset Formula $N$
6727\end_inset
6728
6729 ztrát
6730\begin_inset Formula $J_{alg}$
6731\end_inset
6732
6733 dosažených pro každou z
6734\begin_inset Formula $N$
6735\end_inset
6736
6737 vzorkových simulačních trajektorií.
6738 Tento postup, založený na průměrné ztrátě, je volen především z důvodu
6739 omezení vlivu šumu, který se pro každou konkrétní realizaci může nagenerovat
6740 jinak, více či méně
6741\begin_inset Quotes gld
6742\end_inset
6743
6744příznivě
6745\begin_inset Quotes grd
6746\end_inset
6747
6748 pro daný algoritmus.
6749 Pro srovnání je minimální ztráta, které algoritmus může dosáhnout, rovna
6750 
6751\begin_inset Formula $1$
6752\end_inset
6753
6754.
6755 Je to způsobeno tím, že počáteční nastavení v prvním časovém kroku je voleno
6756 jako počáteční podmínka
6757\begin_inset Formula $y_{1}=0$
6758\end_inset
6759
6760, přičemž ale požadovaná hodnota
6761\begin_inset Formula $y_{r}=1.$
6762\end_inset
6763
6764 Ideální řízení může dosáhnout požadované hodnoty nejdříve v čase
6765\begin_inset Formula $2$
6766\end_inset
6767
6768, a tedy vždy bude ztráta nejméně
6769\begin_inset Formula $1$
6770\end_inset
6771
6772.
6773 Dále je třeba uvažovat chybu v důsledku šumu, který se generuje náhodně.
6774 Řízení se s ním ale vypořádává až následně, tedy nelze chybě v důsledku
6775 šumu předcházet a je ji nutno zahrnout do uvažování o minimální možné ztrátě.
6776 Naopak, pro srovnání, když uvažujeme nulové řízení na celém časovém horizontu,
6777 hodnota
6778\begin_inset Formula $y_{k}$
6779\end_inset
6780
6781 se drží přibližně, až na odchylky v důsledku šumu, na nulové hodnotě.
6782 Tento stav můžeme zřejmě označit za nesplnění našeho cíle řízení, protože
6783 veličina
6784\begin_inset Formula $y_{k}$
6785\end_inset
6786
6787 zůstává konstantně na nule, i když se chceme dostat na
6788\begin_inset Formula $y_{r}=1$
6789\end_inset
6790
6791.
6792 Přitom ztráta dosažená v tomto negativním případě je na zvoleném časovém
6793 horizontu rovna
6794\begin_inset Formula $J=5$
6795\end_inset
6796
6797.
6798\end_layout
6799
6800\begin_layout Standard
6801Při porovnávání výsledků pro všechny volby parametrů
6802\begin_inset Formula $\hat{b}$
6803\end_inset
6804
6805 a
6806\begin_inset Formula $P$
6807\end_inset
6808
6809 je postupováno s rostoucí variancí, od nejnižšího
6810\begin_inset Formula $P$
6811\end_inset
6812
6813 až k
6814\begin_inset Formula $P$
6815\end_inset
6816
6817 nejvyššímu, tedy ve směru růstu potřeby duálního přístupu.
6818\end_layout
6819
6820\begin_layout Standard
6821\begin_inset Float figure
6822wide false
6823sideways false
6824status open
6825
6826\begin_layout Plain Layout
6827\begin_inset Graphics
6828        filename barsall.eps
6829
6830\end_inset
6831
6832
6833\begin_inset Caption
6834
6835\begin_layout Plain Layout
6836Dosažené ztráty algoritmů pro jednotlivé volby variance
6837\begin_inset Formula $P$
6838\end_inset
6839
6840 (na osách
6841\begin_inset Formula $y$
6842\end_inset
6843
6844 je hodnota dosažené ztráty, na osách
6845\begin_inset Formula $x$
6846\end_inset
6847
6848 představují čísla
6849\begin_inset Formula $1-5$
6850\end_inset
6851
6852 jednotlivé algoritmy, barevně jsou odlišeny hodnoty dle volby střední hodnoty
6853 
6854\begin_inset Formula $\hat{b}$
6855\end_inset
6856
6857 -- v legendě označena jen
6858\begin_inset Formula $b$
6859\end_inset
6860
6861)
6862\end_layout
6863
6864\end_inset
6865
6866
6867\end_layout
6868
6869\begin_layout Plain Layout
6870\begin_inset CommandInset label
6871LatexCommand label
6872name "Flo:barsall"
6873
6874\end_inset
6875
6876
6877\end_layout
6878
6879\end_inset
6880
6881
6882\end_layout
6883
6884\begin_layout Subsubsection
6885Volba variance
6886\begin_inset Formula $P=0,01$
6887\end_inset
6888
6889
6890\end_layout
6891
6892\begin_layout Standard
6893Při porovnání průměrných ztrát pro
6894\begin_inset Formula $\hat{b}=10$
6895\end_inset
6896
6897 a
6898\begin_inset Formula $\hat{b}=1$
6899\end_inset
6900
6901 v grafu Obrázek
6902\begin_inset CommandInset ref
6903LatexCommand ref
6904reference "Flo:barsall"
6905
6906\end_inset
6907
6908, kde je volena malá variance
6909\begin_inset Formula $P=0,01$
6910\end_inset
6911
6912, je vidět, že i neduální metody poskytují dobré řízení.
6913 Rozdíly ztrát jsou téměř zanedbatelné, a která metoda dosáhla nepatrně
6914 vyšší nebo nižší ztráty je ovlivněno prakticky jen konkrétní realizací
6915 šumu.
6916 
6917\end_layout
6918
6919\begin_layout Standard
6920Velký problém však nastává při volbě
6921\begin_inset Formula $\hat{b}=0$
6922\end_inset
6923
6924, tedy střední hodnota neznámého parametru
6925\begin_inset Formula $b$
6926\end_inset
6927
6928 je nulová a jeho variance je velmi malá.
6929 Z tohoto důvodu je naprostá většina skutečných realizací parametru
6930\begin_inset Formula $b$
6931\end_inset
6932
6933 velmi blízko nule, a právě to způsobuje některým algoritmům značné problémy.
6934 Jedná se zejména o algoritmus
6935\emph on
6936sLQ
6937\emph default
6938, jehož řešení a následně i ztráta jsou nedefinovány (
6939\begin_inset Quotes gld
6940\end_inset
6941
6942NaN
6943\begin_inset Quotes grd
6944\end_inset
6945
6946 v grafu je z anglického Not-a-Number; tuto hodnotu produkuje program
6947\emph on
6948Matlab
6949\emph default
6950 při nedefinované operaci, nejčastěji typu
6951\begin_inset Formula $0\cdot\infty$
6952\end_inset
6953
6954).
6955 Dále značně velké ztráty dosahuje algoritmus
6956\emph on
6957CE
6958\emph default
6959.
6960 Jak bylo zmíněno v části
6961\begin_inset CommandInset ref
6962LatexCommand ref
6963reference "sub:Aplikace-metody-CE-naJS"
6964
6965\end_inset
6966
6967, tato metoda má problematické chování, když se skutečná hodnota
6968\begin_inset Formula $b$
6969\end_inset
6970
6971 blíží k
6972\begin_inset Formula $0$
6973\end_inset
6974
6975.
6976 Částečně tento problém řeší přidání pomocného parametru
6977\begin_inset Formula $\varepsilon$
6978\end_inset
6979
6980, avšak ztráta stále dosahuje velmi vysokých hodnot a algoritmus se v tomto
6981 případě jeví nepoužitelným.
6982\end_layout
6983
6984\begin_layout Standard
6985Vyšší hodnoty průměrné ztráty dosahuje i algoritmus
6986\emph on
6987iLDP
6988\emph default
6989, který v implementaci použité v této práci vykazuje obecně špatné chování
6990 v blízkosti nulové hodnoty pro neznámý parametr
6991\begin_inset Formula $b$
6992\end_inset
6993
6994.
6995 Tento problém bude ještě podrobněji rozebrán v diskuzi k této metodě.
6996\end_layout
6997
6998\begin_layout Subsubsection
6999Volba variance
7000\begin_inset Formula $P=0,1$
7001\end_inset
7002
7003
7004\end_layout
7005
7006\begin_layout Standard
7007Dosažené průměrné ztráty na grafu Obrázek
7008\begin_inset CommandInset ref
7009LatexCommand ref
7010reference "Flo:barsall"
7011
7012\end_inset
7013
7014 pro vyšší hodnotu variance
7015\begin_inset Formula $P=0,1$
7016\end_inset
7017
7018 jsou pro střední hodnoty
7019\begin_inset Formula $\hat{b}=10$
7020\end_inset
7021
7022 a
7023\begin_inset Formula $\hat{b}=1$
7024\end_inset
7025
7026 opět přibližně stejné u všech algoritmů.
7027 Je zde ale již patrný vliv větší variance, kdy nejjednodušší algoritmy
7028 
7029\emph on
7030CE
7031\emph default
7032 a
7033\emph on
7034sLQ
7035\emph default
7036 dosahují průměrné ztráty nepatrně vyšší.
7037\end_layout
7038
7039\begin_layout Standard
7040V případě střední hodnoty neznámého parametru rovné
7041\begin_inset Formula $\hat{b}=0$
7042\end_inset
7043
7044 selhává řízení
7045\emph on
7046sLQ
7047\emph default
7048 stejně jako pro varianci
7049\begin_inset Formula $P=0,01$
7050\end_inset
7051
7052.
7053 Podobně ztráta dosažená metodou
7054\emph on
7055CE
7056\emph default
7057 je ještě o několik řádů vyšší než v předchozím případě.
7058 Nejznatelnější zhoršení je však na straně algoritmu
7059\emph on
7060iLDP
7061\emph default
7062, který pro
7063\begin_inset Formula $\hat{b}=0$
7064\end_inset
7065
7066 vůbec nenalezne řešení.
7067 Dokonce ani v jednom z testovacích spuštění skriptu pro uvažované hodnoty
7068 nedoběhl algoritmus
7069\emph on
7070iLDP
7071\emph default
7072 do konce a vždy zhavaroval v průběhu výpočtu, zpravidla kvůli počítání
7073 s hodnotami
7074\emph on
7075NaN
7076\emph default
7077.
7078\end_layout
7079
7080\begin_layout Subsubsection
7081Volba variance
7082\begin_inset Formula $P=1$
7083\end_inset
7084
7085
7086\end_layout
7087
7088\begin_layout Standard
7089Graf Obrázek
7090\begin_inset CommandInset ref
7091LatexCommand ref
7092reference "Flo:barsall"
7093
7094\end_inset
7095
7096 zobrazuje hodnoty dosažených průměrných ztrát pro hodnotu variance
7097\begin_inset Formula $P=1$
7098\end_inset
7099
7100.
7101 Při volbě střední hodnoty
7102\begin_inset Formula $\hat{b}=10$
7103\end_inset
7104
7105 jsou průměrné ztráty velmi nízké a poměrně vyrovnané.
7106\end_layout
7107
7108\begin_layout Standard
7109Střední hodnota
7110\begin_inset Formula $\hat{b}=1$
7111\end_inset
7112
7113 již může být pro některé algoritmy problematická, protože současně je variance
7114 volena jako
7115\begin_inset Formula $P=1$
7116\end_inset
7117
7118, a tedy značně narůstá pravděpodobnost konkrétní realizace parametru
7119\begin_inset Formula $b$
7120\end_inset
7121
7122, jehož skutečná hodnota bude velmi blízko nuly.
7123 Právě to se nejvýrazněji projevuje u algoritmů
7124\emph on
7125CE
7126\emph default
7127,
7128\emph on
7129 sLQ
7130\emph default
7131 a
7132\emph on
7133iLDP
7134\emph default
7135.
7136 
7137\end_layout
7138
7139\begin_layout Standard
7140Volba
7141\begin_inset Formula $\hat{b}=0$
7142\end_inset
7143
7144 pak dává prakticky stejné výsledky jako předchozí případ pro
7145\begin_inset Formula $P=0,1$
7146\end_inset
7147
7148, kdy metoda
7149\emph on
7150CE
7151\emph default
7152 dosahuje nepřijatelně velké ztráty a algortimy
7153\emph on
7154sLQ
7155\emph default
7156 a
7157\emph on
7158iLDP
7159\emph default
7160 vůbec nenaleznou řešení.
7161\end_layout
7162
7163\begin_layout Subsubsection
7164Volba variance
7165\begin_inset Formula $P=10$
7166\end_inset
7167
7168
7169\end_layout
7170
7171\begin_layout Standard
7172Pro relativně velkou hodnotu variance
7173\begin_inset Formula $P=10$
7174\end_inset
7175
7176 jsou průměrné dosažené ztráty jednotlivých algoritmů zachyceny na grafu
7177 Obrázek
7178\begin_inset CommandInset ref
7179LatexCommand ref
7180reference "Flo:barsall"
7181
7182\end_inset
7183
7184.
7185 Při střední hodnotě
7186\begin_inset Formula $\hat{b}=10$
7187\end_inset
7188
7189 je dosaženo nízkých a vyrovnaných hodnot ztráty.
7190 
7191\end_layout
7192
7193\begin_layout Standard
7194Volba
7195\begin_inset Formula $\hat{b}=1$
7196\end_inset
7197
7198 je opět problematická pro metody
7199\emph on
7200CE
7201\emph default
7202 a
7203\emph on
7204sLQ
7205\emph default
7206a algoritmus
7207\emph on
7208iLDP
7209\emph default
7210 v tomto případě vůbec nenalezne řešení.
7211 Jako jediné použitelné se v tomto případě jeví algoritmy
7212\emph on
7213LQ
7214\emph default
7215 a
7216\emph on
7217iLQG
7218\emph default
7219.
7220\end_layout
7221
7222\begin_layout Standard
7223Problematická volba střední hodnoty
7224\begin_inset Formula $\hat{b}=0$
7225\end_inset
7226
7227 pak dává výsledky analogické předchozím dvěma volbám variance
7228\begin_inset Formula $P=1$
7229\end_inset
7230
7231 a
7232\begin_inset Formula $P=0,1$
7233\end_inset
7234
7235, tedy algoritmy
7236\emph on
7237sLQ
7238\emph default
7239a
7240\emph on
7241iLDP
7242\emph default
7243 nenalézají řešení a
7244\emph on
7245CE
7246\emph default
7247 dosahuje extrémní průměrné ztráty.
7248\end_layout
7249
7250\begin_layout Subsection
7251Chování jednotlivých algoritmů
7252\end_layout
7253
7254\begin_layout Standard
7255Oproti porovnání ztrát algoritmů mezi sebou, v této části porovnáme průměrné
7256 ztráty každého konkrétního algorimu pro různé volby parametrů
7257\begin_inset Formula $\hat{b}$
7258\end_inset
7259
7260 a
7261\begin_inset Formula $P$
7262\end_inset
7263
7264.
7265 Tímto postupem získáme lepší představu, pro jaké volby parametrů je algoritmus
7266 vhodnější, méně vhodný, popřípadě nepoužitelný.
7267\end_layout
7268
7269\begin_layout Subsubsection
7270CE
7271\end_layout
7272
7273\begin_layout Standard
7274Následující tabulka obsahuje hodnoty průměrných ztrát dosažených pomocí
7275 metody
7276\emph on
7277CE
7278\emph default
7279 pro různé volby parametrů
7280\begin_inset Formula $\hat{b}$
7281\end_inset
7282
7283 (řádek) a
7284\begin_inset Formula $P$
7285\end_inset
7286
7287 (sloupec).
7288\begin_inset Newline newline
7289\end_inset
7290
7291
7292\end_layout
7293
7294\begin_layout Standard
7295\align center
7296\begin_inset Tabular
7297<lyxtabular version="3" rows="5" columns="4">
7298<features>
7299<column alignment="center" valignment="top" width="0">
7300<column alignment="center" valignment="middle" width="0">
7301<column alignment="center" valignment="top" width="0">
7302<column alignment="center" valignment="top" width="0">
7303<row>
7304<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
7305\begin_inset Text
7306
7307\begin_layout Plain Layout
7308\begin_inset Formula $P\setminus\hat{b}$
7309\end_inset
7310
7311
7312\end_layout
7313
7314\end_inset
7315</cell>
7316<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
7317\begin_inset Text
7318
7319\begin_layout Plain Layout
732010
7321\end_layout
7322
7323\end_inset
7324</cell>
7325<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
7326\begin_inset Text
7327
7328\begin_layout Plain Layout
73291
7330\end_layout
7331
7332\end_inset
7333</cell>
7334<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
7335\begin_inset Text
7336
7337\begin_layout Plain Layout
73380
7339\end_layout
7340
7341\end_inset
7342</cell>
7343</row>
7344<row>
7345<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7346\begin_inset Text
7347
7348\begin_layout Plain Layout
73490,01
7350\end_layout
7351
7352\end_inset
7353</cell>
7354<cell alignment="center" valignment="middle" topline="true" leftline="true" usebox="none">
7355\begin_inset Text
7356
7357\begin_layout Plain Layout
73581.0432
7359\end_layout
7360
7361\end_inset
7362</cell>
7363<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7364\begin_inset Text
7365
7366\begin_layout Plain Layout
73671.0909
7368\end_layout
7369
7370\end_inset
7371</cell>
7372<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7373\begin_inset Text
7374
7375\begin_layout Plain Layout
73764.4083e+17
7377\end_layout
7378
7379\end_inset
7380</cell>
7381</row>
7382<row>
7383<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7384\begin_inset Text
7385
7386\begin_layout Plain Layout
73870,1
7388\end_layout
7389
7390\end_inset
7391</cell>
7392<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7393\begin_inset Text
7394
7395\begin_layout Plain Layout
73961.0851
7397\end_layout
7398
7399\end_inset
7400</cell>
7401<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7402\begin_inset Text
7403
7404\begin_layout Plain Layout
74051.2129
7406\end_layout
7407
7408\end_inset
7409</cell>
7410<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7411\begin_inset Text
7412
7413\begin_layout Plain Layout
74141.3361e+22
7415\end_layout
7416
7417\end_inset
7418</cell>
7419</row>
7420<row>
7421<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7422\begin_inset Text
7423
7424\begin_layout Plain Layout
74251
7426\end_layout
7427
7428\end_inset
7429</cell>
7430<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7431\begin_inset Text
7432
7433\begin_layout Plain Layout
74341.0609
7435\end_layout
7436
7437\end_inset
7438</cell>
7439<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7440\begin_inset Text
7441
7442\begin_layout Plain Layout
7443103.4646
7444\end_layout
7445
7446\end_inset
7447</cell>
7448<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7449\begin_inset Text
7450
7451\begin_layout Plain Layout
74526.2953e+25
7453\end_layout
7454
7455\end_inset
7456</cell>
7457</row>
7458<row>
7459<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
7460\begin_inset Text
7461
7462\begin_layout Plain Layout
746310
7464\end_layout
7465
7466\end_inset
7467</cell>
7468<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
7469\begin_inset Text
7470
7471\begin_layout Plain Layout
74721.2402
7473\end_layout
7474
7475\end_inset
7476</cell>
7477<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
7478\begin_inset Text
7479
7480\begin_layout Plain Layout
74812.2735e+06
7482\end_layout
7483
7484\end_inset
7485</cell>
7486<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
7487\begin_inset Text
7488
7489\begin_layout Plain Layout
74907.8254e+29
7491\end_layout
7492
7493\end_inset
7494</cell>
7495</row>
7496</lyxtabular>
7497
7498\end_inset
7499
7500
7501\begin_inset Newline newline
7502\end_inset
7503
7504
7505\end_layout
7506
7507\begin_layout Standard
7508Z tabulky je patrno, že řízení
7509\emph on
7510CE
7511\emph default
7512 dosahuje nízké ztráty při dostatečné znalosti neznámého parametru
7513\begin_inset Formula $b$
7514\end_inset
7515
7516, tedy při nízké varianci
7517\begin_inset Formula $P$
7518\end_inset
7519
7520, ovšem za předpokladu, že se se střední hodnotou parametru
7521\begin_inset Formula $b$
7522\end_inset
7523
7524 nacházíme dostatečně daleko od nuly.
7525 Právě nulová hodnota je pro metodu
7526\emph on
7527CE
7528\emph default
7529 kritická, což se snažíme do jisté míry kompenzovat přidáním malého parametru
7530 
7531\begin_inset Formula $\varepsilon$
7532\end_inset
7533
7534.
7535 Jak je ale vidět v posledním sloupci tabulky, pro volbu
7536\begin_inset Formula $\hat{b}=0$
7537\end_inset
7538
7539 se jeví
7540\emph on
7541CE
7542\emph default
7543 jako nepoužitelné.
7544 Dále se jedná o neduální metodu; při velké varianci, a tedy neznalosti
7545 o skutečné hodnotě parametru
7546\begin_inset Formula $b$
7547\end_inset
7548
7549, dosahujeme velké ztráty.
7550\end_layout
7551
7552\begin_layout Subsubsection
7553sLQ
7554\end_layout
7555
7556\begin_layout Standard
7557\align center
7558\begin_inset Tabular
7559<lyxtabular version="3" rows="5" columns="4">
7560<features>
7561<column alignment="center" valignment="top" width="0">
7562<column alignment="center" valignment="top" width="0">
7563<column alignment="center" valignment="top" width="0">
7564<column alignment="center" valignment="top" width="0">
7565<row>
7566<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
7567\begin_inset Text
7568
7569\begin_layout Plain Layout
7570\begin_inset Formula $P\setminus\hat{b}$
7571\end_inset
7572
7573
7574\end_layout
7575
7576\end_inset
7577</cell>
7578<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
7579\begin_inset Text
7580
7581\begin_layout Plain Layout
758210
7583\end_layout
7584
7585\end_inset
7586</cell>
7587<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
7588\begin_inset Text
7589
7590\begin_layout Plain Layout
75911
7592\end_layout
7593
7594\end_inset
7595</cell>
7596<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
7597\begin_inset Text
7598
7599\begin_layout Plain Layout
76000
7601\end_layout
7602
7603\end_inset
7604</cell>
7605</row>
7606<row>
7607<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7608\begin_inset Text
7609
7610\begin_layout Plain Layout
76110,01
7612\end_layout
7613
7614\end_inset
7615</cell>
7616<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7617\begin_inset Text
7618
7619\begin_layout Plain Layout
76201.0485
7621\end_layout
7622
7623\end_inset
7624</cell>
7625<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7626\begin_inset Text
7627
7628\begin_layout Plain Layout
76291.0325
7630\end_layout
7631
7632\end_inset
7633</cell>
7634<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7635\begin_inset Text
7636
7637\begin_layout Plain Layout
7638NaN
7639\end_layout
7640
7641\end_inset
7642</cell>
7643</row>
7644<row>
7645<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7646\begin_inset Text
7647
7648\begin_layout Plain Layout
76490,1
7650\end_layout
7651
7652\end_inset
7653</cell>
7654<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7655\begin_inset Text
7656
7657\begin_layout Plain Layout
76581.0635
7659\end_layout
7660
7661\end_inset
7662</cell>
7663<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7664\begin_inset Text
7665
7666\begin_layout Plain Layout
76671.2078
7668\end_layout
7669
7670\end_inset
7671</cell>
7672<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7673\begin_inset Text
7674
7675\begin_layout Plain Layout
7676NaN
7677\end_layout
7678
7679\end_inset
7680</cell>
7681</row>
7682<row>
7683<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7684\begin_inset Text
7685
7686\begin_layout Plain Layout
76871
7688\end_layout
7689
7690\end_inset
7691</cell>
7692<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7693\begin_inset Text
7694
7695\begin_layout Plain Layout
76961.0729
7697\end_layout
7698
7699\end_inset
7700</cell>
7701<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7702\begin_inset Text
7703
7704\begin_layout Plain Layout
770518.6880
7706\end_layout
7707
7708\end_inset
7709</cell>
7710<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7711\begin_inset Text
7712
7713\begin_layout Plain Layout
7714NaN
7715\end_layout
7716
7717\end_inset
7718</cell>
7719</row>
7720<row>
7721<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
7722\begin_inset Text
7723
7724\begin_layout Plain Layout
772510
7726\end_layout
7727
7728\end_inset
7729</cell>
7730<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
7731\begin_inset Text
7732
7733\begin_layout Plain Layout
77341.1987
7735\end_layout
7736
7737\end_inset
7738</cell>
7739<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
7740\begin_inset Text
7741
7742\begin_layout Plain Layout
77435.7873e+05
7744\end_layout
7745
7746\end_inset
7747</cell>
7748<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
7749\begin_inset Text
7750
7751\begin_layout Plain Layout
7752NaN
7753\end_layout
7754
7755\end_inset
7756</cell>
7757</row>
7758</lyxtabular>
7759
7760\end_inset
7761
7762
7763\begin_inset Newline newline
7764\end_inset
7765
7766
7767\end_layout
7768
7769\begin_layout Standard
7770
7771\color black
7772Pro algortimus
7773\emph on
7774sLQ
7775\emph default
7776 je z tabulky průměrných ztrát zřejmé, že algoritmus zcela selhává pro střední
7777 hodnotu
7778\begin_inset Formula $\hat{b}=0$
7779\end_inset
7780
7781 a v tomto případě vůbec nenalézá řízení.
7782 Pro střední hodnoty
7783\begin_inset Formula $\hat{b}=1$
7784\end_inset
7785
7786 a
7787\begin_inset Formula $\hat{b}=10$
7788\end_inset
7789
7790, které jsou dostatečně daleko od nuly, již metoda nalézá ve většině případů
7791 použitelné řízení a ztráta je pak vyrovnaná, zejména při konkrétní volbě
7792 
7793\begin_inset Formula $\hat{b}=10$
7794\end_inset
7795
7796.
7797 V důsledku neduálnosti algoritmu se však projevuje nárůst variance zvýšením
7798 průměrné ztráty.
7799 Při volbě
7800\begin_inset Formula $\hat{b}=1$
7801\end_inset
7802
7803 je ztráta již příliš vysoká pro variance
7804\begin_inset Formula $P=1$
7805\end_inset
7806
7807 a
7808\begin_inset Formula $P=10$
7809\end_inset
7810
7811 a řízení dosahuje nepřijatelně velké ztráty.
7812\end_layout
7813
7814\begin_layout Subsubsection
7815LQ
7816\end_layout
7817
7818\begin_layout Standard
7819\align center
7820\begin_inset Tabular
7821<lyxtabular version="3" rows="5" columns="4">
7822<features>
7823<column alignment="center" valignment="top" width="0">
7824<column alignment="center" valignment="top" width="0">
7825<column alignment="center" valignment="top" width="0">
7826<column alignment="center" valignment="top" width="0">
7827<row>
7828<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
7829\begin_inset Text
7830
7831\begin_layout Plain Layout
7832\begin_inset Formula $P\setminus\hat{b}$
7833\end_inset
7834
7835
7836\end_layout
7837
7838\end_inset
7839</cell>
7840<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
7841\begin_inset Text
7842
7843\begin_layout Plain Layout
784410
7845\end_layout
7846
7847\end_inset
7848</cell>
7849<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
7850\begin_inset Text
7851
7852\begin_layout Plain Layout
78531
7854\end_layout
7855
7856\end_inset
7857</cell>
7858<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
7859\begin_inset Text
7860
7861\begin_layout Plain Layout
78620
7863\end_layout
7864
7865\end_inset
7866</cell>
7867</row>
7868<row>
7869<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7870\begin_inset Text
7871
7872\begin_layout Plain Layout
78730,01
7874\end_layout
7875
7876\end_inset
7877</cell>
7878<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7879\begin_inset Text
7880
7881\begin_layout Plain Layout
78821.0323
7883\end_layout
7884
7885\end_inset
7886</cell>
7887<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7888\begin_inset Text
7889
7890\begin_layout Plain Layout
78911.0461
7892\end_layout
7893
7894\end_inset
7895</cell>
7896<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7897\begin_inset Text
7898
7899\begin_layout Plain Layout
79001.0237
7901\end_layout
7902
7903\end_inset
7904</cell>
7905</row>
7906<row>
7907<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7908\begin_inset Text
7909
7910\begin_layout Plain Layout
79110,1
7912\end_layout
7913
7914\end_inset
7915</cell>
7916<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7917\begin_inset Text
7918
7919\begin_layout Plain Layout
79201.0447
7921\end_layout
7922
7923\end_inset
7924</cell>
7925<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7926\begin_inset Text
7927
7928\begin_layout Plain Layout
79291.0994
7930\end_layout
7931
7932\end_inset
7933</cell>
7934<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7935\begin_inset Text
7936
7937\begin_layout Plain Layout
79381.0592
7939\end_layout
7940
7941\end_inset
7942</cell>
7943</row>
7944<row>
7945<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7946\begin_inset Text
7947
7948\begin_layout Plain Layout
79491
7950\end_layout
7951
7952\end_inset
7953</cell>
7954<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7955\begin_inset Text
7956
7957\begin_layout Plain Layout
79581.0626
7959\end_layout
7960
7961\end_inset
7962</cell>
7963<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
7964\begin_inset Text
7965
7966\begin_layout Plain Layout
79671.0252
7968\end_layout
7969
7970\end_inset
7971</cell>
7972<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
7973\begin_inset Text
7974
7975\begin_layout Plain Layout
79761.0622
7977\end_layout
7978
7979\end_inset
7980</cell>
7981</row>
7982<row>
7983<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
7984\begin_inset Text
7985
7986\begin_layout Plain Layout
798710
7988\end_layout
7989
7990\end_inset
7991</cell>
7992<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
7993\begin_inset Text
7994
7995\begin_layout Plain Layout
79961.0762
7997\end_layout
7998
7999\end_inset
8000</cell>
8001<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
8002\begin_inset Text
8003
8004\begin_layout Plain Layout
80051.0329
8006\end_layout
8007
8008\end_inset
8009</cell>
8010<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
8011\begin_inset Text
8012
8013\begin_layout Plain Layout
80141.0472
8015\end_layout
8016
8017\end_inset
8018</cell>
8019</row>
8020</lyxtabular>
8021
8022\end_inset
8023
8024
8025\begin_inset Newline newline
8026\end_inset
8027
8028
8029\end_layout
8030
8031\begin_layout Standard
8032Algoritmus
8033\emph on
8034LQ
8035\emph default
8036 se jeví jako nejlepší ze zde testovaných algoritmů.
8037 A to ve srovnání s ostatními, ale i jak je patrno z tabulky průměrných
8038 ztrát.
8039 Dosažená hodnota průměrné ztráty je velmi nízká, a to pro všechny případy
8040 volby parametrů
8041\begin_inset Formula $\hat{b}$
8042\end_inset
8043
8044 a
8045\begin_inset Formula $P$
8046\end_inset
8047
8048.
8049 Uvažujeme samozřejmě verzi LQ řízení pro upravený systém, kdy je zahrnut
8050 do stavových proměnných i odhad skutečného parametru
8051\begin_inset Formula $b$
8052\end_inset
8053
8054 v podobě jeho střední hodnoty a variance jako postačující statistiky.
8055 Protože algoritmus nalézá dobré řízení i při vyšší neznalosti a určuje
8056 skutečnou hodnotu parametru
8057\begin_inset Formula $b$
8058\end_inset
8059
8060, jedná se o duální přístup.
8061 To můžeme pozorovat při volbě
8062\begin_inset Formula $\hat{b}=0$
8063\end_inset
8064
8065, kdy neduální přístupy selhávají kvůli předpokladu
8066\begin_inset Formula $b=\hat{b}=0$
8067\end_inset
8068
8069, ale duální metoda dokáže odhadnout skutečnou nenulovou hodnotu
8070\begin_inset Formula $b$
8071\end_inset
8072
8073 a nalézt řízení.
8074 
8075\emph on
8076LQ
8077\emph default
8078je však na rozdíl od složitějších algoritmů řešen pouze linearizací v každém
8079 časovém kroku, ale bez aproximací a numerických výpočtů.
8080\end_layout
8081
8082\begin_layout Subsubsection
8083iLQG
8084\end_layout
8085
8086\begin_layout Standard
8087\align center
8088\begin_inset Tabular
8089<lyxtabular version="3" rows="5" columns="4">
8090<features>
8091<column alignment="center" valignment="top" width="0">
8092<column alignment="center" valignment="top" width="0">
8093<column alignment="center" valignment="top" width="0">
8094<column alignment="center" valignment="top" width="0">
8095<row>
8096<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
8097\begin_inset Text
8098
8099\begin_layout Plain Layout
8100\begin_inset Formula $P\setminus\hat{b}$
8101\end_inset
8102
8103
8104\end_layout
8105
8106\end_inset
8107</cell>
8108<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
8109\begin_inset Text
8110
8111\begin_layout Plain Layout
811210
8113\end_layout
8114
8115\end_inset
8116</cell>
8117<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
8118\begin_inset Text
8119
8120\begin_layout Plain Layout
81211
8122\end_layout
8123
8124\end_inset
8125</cell>
8126<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
8127\begin_inset Text
8128
8129\begin_layout Plain Layout
81300
8131\end_layout
8132
8133\end_inset
8134</cell>
8135</row>
8136<row>
8137<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
8138\begin_inset Text
8139
8140\begin_layout Plain Layout
81410,01
8142\end_layout
8143
8144\end_inset
8145</cell>
8146<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
8147\begin_inset Text
8148
8149\begin_layout Plain Layout
81501.0374
8151\end_layout
8152
8153\end_inset
8154</cell>
8155<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
8156\begin_inset Text
8157
8158\begin_layout Plain Layout
81591.0418
8160\end_layout
8161
8162\end_inset
8163</cell>
8164<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
8165\begin_inset Text
8166
8167\begin_layout Plain Layout
81681.9138
8169\end_layout
8170
8171\end_inset
8172</cell>
8173</row>
8174<row>
8175<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
8176\begin_inset Text
8177
8178\begin_layout Plain Layout
81790,1
8180\end_layout
8181
8182\end_inset
8183</cell>
8184<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
8185\begin_inset Text
8186
8187\begin_layout Plain Layout
81881.0372
8189\end_layout
8190
8191\end_inset
8192</cell>
8193<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
8194\begin_inset Text
8195
8196\begin_layout Plain Layout
81971.0663
8198\end_layout
8199
8200\end_inset
8201</cell>
8202<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
8203\begin_inset Text
8204
8205\begin_layout Plain Layout
82062.1010
8207\end_layout
8208
8209\end_inset
8210</cell>
8211</row>
8212<row>
8213<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
8214\begin_inset Text
8215
8216\begin_layout Plain Layout
82171
8218\end_layout
8219
8220\end_inset
8221</cell>
8222<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
8223\begin_inset Text
8224
8225\begin_layout Plain Layout
82261.0445
8227\end_layout
8228
8229\end_inset
8230</cell>
8231<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
8232\begin_inset Text
8233
8234\begin_layout Plain Layout
82351.5009
8236\end_layout
8237
8238\end_inset
8239</cell>
8240<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
8241\begin_inset Text
8242
8243\begin_layout Plain Layout
82442.2043
8245\end_layout
8246
8247\end_inset
8248</cell>
8249</row>
8250<row>
8251<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
8252\begin_inset Text
8253
8254\begin_layout Plain Layout
825510
8256\end_layout
8257
8258\end_inset
8259</cell>
8260<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
8261\begin_inset Text
8262
8263\begin_layout Plain Layout
82641.0691
8265\end_layout
8266
8267\end_inset
8268</cell>
8269<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
8270\begin_inset Text
8271
8272\begin_layout Plain Layout
82731.9873
8274\end_layout
8275
8276\end_inset
8277</cell>
8278<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
8279\begin_inset Text
8280
8281\begin_layout Plain Layout
82822.2035
8283\end_layout
8284
8285\end_inset
8286</cell>
8287</row>
8288</lyxtabular>
8289
8290\end_inset
8291
8292
8293\begin_inset Newline newline
8294\end_inset
8295
8296
8297\end_layout
8298
8299\begin_layout Standard
8300Ztráty dosažené aplikací
8301\emph on
8302iLQG
8303\emph default
8304 na jednoduchý systém, jak je vidět v tabulce, jsou celkově relativně nízké.
8305 Problematičtější chování vykazuje metoda při volbě střední hodnoty
8306\begin_inset Formula $\hat{b}=0$
8307\end_inset
8308
8309, kdy se ztráta pro všechny volby variance
8310\begin_inset Formula $P$
8311\end_inset
8312
8313 pohybuje okolo
8314\begin_inset Formula $2$
8315\end_inset
8316
8317.
8318 I když hodnota ztráty v tomto případě není ideální, nemusí to však přímo
8319 znamenat nedosažení požadované hodnoty.
8320 Chování výstupní trajektorie je patrné z uvedených grafů v části
8321\begin_inset CommandInset ref
8322LatexCommand ref
8323reference "sub:Průběh-skutečné-hodnoty-y"
8324
8325\end_inset
8326
8327.
8328 Pro
8329\begin_inset Formula $\hat{b}=1$
8330\end_inset
8331
8332 začne ztráta znatelně růst až při volbě variance
8333\begin_inset Formula $P=1$
8334\end_inset
8335
8336 a více, tedy když se začnou vyskytovat realizace skutečného parametru
8337\begin_inset Formula $b$
8338\end_inset
8339
8340 blízko problematické nuly.
8341 Střední hodnota
8342\begin_inset Formula $\hat{b}=10$
8343\end_inset
8344
8345 pak není problematická pro žádnou hodnotu
8346\begin_inset Formula $P$
8347\end_inset
8348
8349.
8350 Obdobně jako pro případ algoritmu
8351\emph on
8352LQ
8353\emph default
8354 můžeme na základě výsledků označit
8355\emph on
8356iLQG
8357\emph default
8358 za duální algoritmus.
8359\end_layout
8360
8361\begin_layout Subsubsection
8362iLDP
8363\end_layout
8364
8365\begin_layout Standard
8366\align center
8367\begin_inset Tabular
8368<lyxtabular version="3" rows="5" columns="4">
8369<features>
8370<column alignment="center" valignment="top" width="0">
8371<column alignment="center" valignment="top" width="0">
8372<column alignment="center" valignment="top" width="0">
8373<column alignment="center" valignment="top" width="0">
8374<row>
8375<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
8376\begin_inset Text
8377
8378\begin_layout Plain Layout
8379\begin_inset Formula $P\setminus\hat{b}$
8380\end_inset
8381
8382
8383\end_layout
8384
8385\end_inset
8386</cell>
8387<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
8388\begin_inset Text
8389
8390\begin_layout Plain Layout
839110
8392\end_layout
8393
8394\end_inset
8395</cell>
8396<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
8397\begin_inset Text
8398
8399\begin_layout Plain Layout
84001
8401\end_layout
8402
8403\end_inset
8404</cell>
8405<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
8406\begin_inset Text
8407
8408\begin_layout Plain Layout
84090
8410\end_layout
8411
8412\end_inset
8413</cell>
8414</row>
8415<row>
8416<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
8417\begin_inset Text
8418
8419\begin_layout Plain Layout
84200,01
8421\end_layout
8422
8423\end_inset
8424</cell>
8425<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
8426\begin_inset Text
8427
8428\begin_layout Plain Layout
84291.0571
8430\end_layout
8431
8432\end_inset
8433</cell>
8434<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
8435\begin_inset Text
8436
8437\begin_layout Plain Layout
84381.0820
8439\end_layout
8440
8441\end_inset
8442</cell>
8443<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
8444\begin_inset Text
8445
8446\begin_layout Plain Layout
84476.4312
8448\end_layout
8449
8450\end_inset
8451</cell>
8452</row>
8453<row>
8454<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
8455\begin_inset Text
8456
8457\begin_layout Plain Layout
84580,1
8459\end_layout
8460
8461\end_inset
8462</cell>
8463<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
8464\begin_inset Text
8465
8466\begin_layout Plain Layout
84671.0423
8468\end_layout
8469
8470\end_inset
8471</cell>
8472<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
8473\begin_inset Text
8474
8475\begin_layout Plain Layout
84761.1202
8477\end_layout
8478
8479\end_inset
8480</cell>
8481<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
8482\begin_inset Text
8483
8484\begin_layout Plain Layout
8485NaN
8486\end_layout
8487
8488\end_inset
8489</cell>
8490</row>
8491<row>
8492<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
8493\begin_inset Text
8494
8495\begin_layout Plain Layout
84961
8497\end_layout
8498
8499\end_inset
8500</cell>
8501<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
8502\begin_inset Text
8503
8504\begin_layout Plain Layout
85051.0432
8506\end_layout
8507
8508\end_inset
8509</cell>
8510<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
8511\begin_inset Text
8512
8513\begin_layout Plain Layout
85141.5862e+016
8515\end_layout
8516
8517\end_inset
8518</cell>
8519<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
8520\begin_inset Text
8521
8522\begin_layout Plain Layout
8523NaN
8524\end_layout
8525
8526\end_inset
8527</cell>
8528</row>
8529<row>
8530<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
8531\begin_inset Text
8532
8533\begin_layout Plain Layout
853410
8535\end_layout
8536
8537\end_inset
8538</cell>
8539<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
8540\begin_inset Text
8541
8542\begin_layout Plain Layout
85431.1097
8544\end_layout
8545
8546\end_inset
8547</cell>
8548<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
8549\begin_inset Text
8550
8551\begin_layout Plain Layout
8552NaN
8553\end_layout
8554
8555\end_inset
8556</cell>
8557<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
8558\begin_inset Text
8559
8560\begin_layout Plain Layout
8561NaN
8562\end_layout
8563
8564\end_inset
8565</cell>
8566</row>
8567</lyxtabular>
8568
8569\end_inset
8570
8571
8572\begin_inset Newline newline
8573\end_inset
8574
8575
8576\end_layout
8577
8578\begin_layout Standard
8579Algoritmus
8580\emph on
8581iLDP
8582\emph default
8583 se vyznačuje problematickým chováním, jak už bylo uvedeno v porovnání s
8584 ostatními metodami, pro skutečnou hodnotu neznámého parametru
8585\begin_inset Formula $b$
8586\end_inset
8587
8588 blízko nuly.
8589 V tabulce průměrných ztrát můžeme vypozorovat, že ztráta je příliš vysoká
8590 právě v případě, kdy je střední hodnota
8591\begin_inset Formula $\hat{b}=0$
8592\end_inset
8593
8594, a dále je-li
8595\begin_inset Formula $\hat{b}=1$
8596\end_inset
8597
8598 a současně je variance
8599\begin_inset Formula $P=1$
8600\end_inset
8601
8602 nebo
8603\begin_inset Formula $P=10$
8604\end_inset
8605
8606, tedy je vyšší pravděpodobnost výskytu realizací skutečné hodnoty
8607\begin_inset Formula $b$
8608\end_inset
8609
8610 blízkých nule.
8611 V ostatních případech dosahuje řízení získané pomocí algoritmu
8612\emph on
8613iLDP
8614\emph default
8615 relativně nízké průměrné ztráty.
8616\end_layout
8617
8618\begin_layout Subsection
8619Průběh skutečné hodnoty
8620\begin_inset CommandInset label
8621LatexCommand label
8622name "sub:Průběh-skutečné-hodnoty-y"
8623
8624\end_inset
8625
8626
8627\end_layout
8628
8629\begin_layout Standard
8630Pro ilustraci vývoje hodnoty veličiny
8631\begin_inset Formula $y$
8632\end_inset
8633
8634, kterou chceme řídit z
8635\begin_inset Formula $y_{0}$
8636\end_inset
8637
8638 na požadovanou hodnotu
8639\begin_inset Formula $y_{r}$
8640\end_inset
8641
8642, jsou v této části uvedeny příklady grafů průběhů
8643\begin_inset Formula $y$
8644\end_inset
8645
8646 pro jednotlivé algoritmy.
8647\end_layout
8648
8649\begin_layout Itemize
8650Na grafech Obrázek
8651\begin_inset CommandInset ref
8652LatexCommand ref
8653reference "Flo:porovnani-prubehu-y"
8654
8655\end_inset
8656
8657 je možné porovnat průběhy
8658\begin_inset Formula $y$
8659\end_inset
8660
8661 jako řešení jednotlivých algoritmů.
8662 V obou případech je volena střední hodnota
8663\begin_inset Formula $\hat{b}=1$
8664\end_inset
8665
8666 a variance je na prvním grafu
8667\begin_inset Formula $P=0,01$
8668\end_inset
8669
8670 a na druhém
8671\begin_inset Formula $P=0,1$
8672\end_inset
8673
8674.
8675 Je možno pozorovat, jak s rostoucí variancí poskytují některé algoritmy
8676 horší výsledek.
8677 
8678\begin_inset Float figure
8679wide false
8680sideways false
8681status collapsed
8682
8683\begin_layout Plain Layout
8684\begin_inset Graphics
8685        filename comptray.eps
8686        scale 90
8687
8688\end_inset
8689
8690
8691\begin_inset Caption
8692
8693\begin_layout Plain Layout
8694Porovnání průběhu hodnoty
8695\begin_inset Formula $y$
8696\end_inset
8697
8698 pro jednotlivé algoritmy
8699\end_layout
8700
8701\end_inset
8702
8703
8704\end_layout
8705
8706\begin_layout Plain Layout
8707\begin_inset CommandInset label
8708LatexCommand label
8709name "Flo:porovnani-prubehu-y"
8710
8711\end_inset
8712
8713
8714\end_layout
8715
8716\end_inset
8717
8718
8719\end_layout
8720
8721\begin_layout Itemize
8722Grafy Obrázek
8723\begin_inset CommandInset ref
8724LatexCommand ref
8725reference "Flo:prubehy-y-js"
8726
8727\end_inset
8728
8729 (
8730\emph on
8731CE
8732\emph default
8733) zobrazují průběhy hodnot
8734\begin_inset Formula $y$
8735\end_inset
8736
8737 při užití řízení
8738\emph on
8739CE
8740\emph default
8741.
8742 Je volena střední hodnota
8743\begin_inset Formula $\hat{b}=1$
8744\end_inset
8745
8746 a postupně všechny testované variance
8747\begin_inset Formula $P$
8748\end_inset
8749
8750.
8751 Každá z barevných čar pak reprezentuje jednu vzorkovou trajektorii, kterých
8752 bylo celkem
8753\begin_inset Formula $100$
8754\end_inset
8755
8756.
8757 Šum způsobuje, že každá z generovaných trajektorií má trochu jiný průběh,
8758 a tedy všechny nesplývají v jednu, ale tvoří jakousi
8759\begin_inset Quotes gld
8760\end_inset
8761
8762trubici
8763\begin_inset Quotes grd
8764\end_inset
8765
8766.
8767 To je nejvíce patrné zejména pro volbu variance
8768\begin_inset Formula $P=0,01$
8769\end_inset
8770
8771.
8772 Průměrováním této
8773\begin_inset Quotes gld
8774\end_inset
8775
8776trubice
8777\begin_inset Quotes grd
8778\end_inset
8779
8780 je pak získávána průměrná trajektorie použitá například v grafu Obrázek
8781 
8782\begin_inset CommandInset ref
8783LatexCommand ref
8784reference "Flo:porovnani-prubehu-y"
8785
8786\end_inset
8787
8788.
8789 Při vyšších variancích
8790\begin_inset Formula $P$
8791\end_inset
8792
8793 se pak již projevuje i vliv chyby v důsledku neznalosti skutečné hodnoty
8794 parametru
8795\begin_inset Formula $b$
8796\end_inset
8797
8798, protože jej předpokládáme rovný jeho střední hodnotě.
8799 Pro
8800\begin_inset Formula $P=0,1$
8801\end_inset
8802
8803 lze pozorovat, že některé trajektorie, jedná se o ty, kdy je skutečná hodnota
8804 
8805\begin_inset Formula $b$
8806\end_inset
8807
8808 blízko střední hodnotě
8809\begin_inset Formula $\hat{b}$
8810\end_inset
8811
8812, mají požadovaný průběh.
8813 Naopak lze zřetelně odlišit případy, kdy došlo k nepříznivé realizaci
8814\begin_inset Formula $b$
8815\end_inset
8816
8817.
8818 V těchto případech
8819\begin_inset Formula $y$
8820\end_inset
8821
8822 vůbec nedosahuje požadované hodnoty
8823\begin_inset Formula $y_{r}$
8824\end_inset
8825
8826 a naopak kolem ní osciluje.
8827 Při volbě ještě větších variancí pak narůstá četnost trajektorií, které
8828 místo přiblížení požadované hodnotě dokonce divergují.
8829 
8830\begin_inset Float figure
8831wide false
8832sideways false
8833status open
8834
8835\begin_layout Plain Layout
8836\begin_inset Tabular
8837<lyxtabular version="3" rows="6" columns="2">
8838<features>
8839<column alignment="center" valignment="middle" width="0">
8840<column alignment="center" valignment="middle" width="0">
8841<row>
8842<cell alignment="center" valignment="middle" topline="true" leftline="true" usebox="none">
8843\begin_inset Text
8844
8845\begin_layout Plain Layout
8846\begin_inset Graphics
8847        filename tubeCE.eps
8848        scale 44
8849
8850\end_inset
8851
8852
8853\end_layout
8854
8855\end_inset
8856</cell>
8857<cell alignment="center" valignment="middle" topline="true" leftline="true" rightline="true" usebox="none">
8858\begin_inset Text
8859
8860\begin_layout Plain Layout
8861\begin_inset Graphics
8862        filename tubeSLQ.eps
8863        scale 44
8864
8865\end_inset
8866
8867
8868\end_layout
8869
8870\end_inset
8871</cell>
8872</row>
8873<row>
8874<cell alignment="center" valignment="middle" topline="true" bottomline="true" leftline="true" usebox="none">
8875\begin_inset Text
8876
8877\begin_layout Plain Layout
8878
8879\emph on
8880CE
8881\end_layout
8882
8883\end_inset
8884</cell>
8885<cell alignment="center" valignment="middle" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
8886\begin_inset Text
8887
8888\begin_layout Plain Layout
8889
8890\emph on
8891sLQ
8892\end_layout
8893
8894\end_inset
8895</cell>
8896</row>
8897<row>
8898<cell alignment="center" valignment="middle" topline="true" leftline="true" usebox="none">
8899\begin_inset Text
8900
8901\begin_layout Plain Layout
8902\begin_inset Graphics
8903        filename tubeLQ.eps
8904        scale 44
8905
8906\end_inset
8907
8908
8909\end_layout
8910
8911\end_inset
8912</cell>
8913<cell alignment="center" valignment="middle" topline="true" leftline="true" rightline="true" usebox="none">
8914\begin_inset Text
8915
8916\begin_layout Plain Layout
8917\begin_inset Graphics
8918        filename tubeILQG.eps
8919        scale 44
8920
8921\end_inset
8922
8923
8924\end_layout
8925
8926\end_inset
8927</cell>
8928</row>
8929<row>
8930<cell alignment="center" valignment="middle" topline="true" bottomline="true" leftline="true" usebox="none">
8931\begin_inset Text
8932
8933\begin_layout Plain Layout
8934
8935\emph on
8936LQ
8937\end_layout
8938
8939\end_inset
8940</cell>
8941<cell alignment="center" valignment="middle" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
8942\begin_inset Text
8943
8944\begin_layout Plain Layout
8945
8946\emph on
8947iLQG
8948\end_layout
8949
8950\end_inset
8951</cell>
8952</row>
8953<row>
8954<cell multicolumn="1" alignment="center" valignment="middle" topline="true" leftline="true" rightline="true" usebox="none">
8955\begin_inset Text
8956
8957\begin_layout Plain Layout
8958\begin_inset Graphics
8959        filename tubeILDP.eps
8960        scale 44
8961
8962\end_inset
8963
8964
8965\end_layout
8966
8967\end_inset
8968</cell>
8969<cell multicolumn="2" alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
8970\begin_inset Text
8971
8972\begin_layout Plain Layout
8973
8974\end_layout
8975
8976\end_inset
8977</cell>
8978</row>
8979<row>
8980<cell multicolumn="1" alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
8981\begin_inset Text
8982
8983\begin_layout Plain Layout
8984
8985\emph on
8986iLDP
8987\end_layout
8988
8989\end_inset
8990</cell>
8991<cell multicolumn="2" alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
8992\begin_inset Text
8993
8994\begin_layout Plain Layout
8995
8996\end_layout
8997
8998\end_inset
8999</cell>
9000</row>
9001</lyxtabular>
9002
9003\end_inset
9004
9005
9006\begin_inset Caption
9007
9008\begin_layout Plain Layout
9009Průběhy hodnot
9010\begin_inset Formula $y$
9011\end_inset
9012
9013 při volbě
9014\begin_inset Formula $\hat{b}=1$
9015\end_inset
9016
9017 pro jednotlivé algoritmy
9018\end_layout
9019
9020\end_inset
9021
9022
9023\end_layout
9024
9025\begin_layout Plain Layout
9026\begin_inset CommandInset label
9027LatexCommand label
9028name "Flo:prubehy-y-js"
9029
9030\end_inset
9031
9032
9033\end_layout
9034
9035\end_inset
9036
9037
9038\end_layout
9039
9040\begin_layout Itemize
9041Průběhy
9042\begin_inset Formula $y$
9043\end_inset
9044
9045 při volbě
9046\begin_inset Formula $\hat{b}=1$
9047\end_inset
9048
9049 s
9050\emph on
9051sLQ
9052\emph default
9053 řízením jsou zobrazeny na grafech Obrázek
9054\begin_inset CommandInset ref
9055LatexCommand ref
9056reference "Flo:prubehy-y-js"
9057
9058\end_inset
9059
9060 (
9061\emph on
9062sLQ
9063\emph default
9064).
9065 Význam jednotlivých barevných čar je v tomto i následujících bodech analogický
9066 jako v předchozím bodě.
9067 Podobně je možno pozorovat růst počtu
9068\begin_inset Quotes gld
9069\end_inset
9070
9071nevyhovujících
9072\begin_inset Quotes grd
9073\end_inset
9074
9075 trajektorií
9076\begin_inset Formula $y$
9077\end_inset
9078
9079 s růstem variance
9080\begin_inset Formula $P$
9081\end_inset
9082
9083.
9084 
9085\end_layout
9086
9087\begin_layout Itemize
9088Při
9089\emph on
9090LQ
9091\emph default
9092 řízení, s průběhy
9093\begin_inset Formula $y$
9094\end_inset
9095
9096 na grafech Obrázek
9097\begin_inset CommandInset ref
9098LatexCommand ref
9099reference "Flo:prubehy-y-js"
9100
9101\end_inset
9102
9103 (
9104\emph on
9105LQ
9106\emph default
9107), je dosaženo dobrých výsledků, kdy
9108\begin_inset Formula $y$
9109\end_inset
9110
9111 již od času
9112\begin_inset Formula $2$
9113\end_inset
9114
9115 sleduje požadovanou hotnotu
9116\begin_inset Formula $y_{r}$
9117\end_inset
9118
9119.
9120 Samozřejmě je zde nutno přihlédnout k chybě v důsledku šumu, tedy jednotlivé
9121 vzorkové trajektorie opět tvoří
9122\begin_inset Quotes gld
9123\end_inset
9124
9125trubici
9126\begin_inset Quotes grd
9127\end_inset
9128
9129 okolo požadované hodnoty.
9130 
9131\end_layout
9132
9133\begin_layout Itemize
9134Grafy Obrázek
9135\begin_inset CommandInset ref
9136LatexCommand ref
9137reference "Flo:prubehy-y-js"
9138
9139\end_inset
9140
9141 (
9142\emph on
9143iLQG
9144\emph default
9145) zobrazují trajektorie
9146\begin_inset Formula $y$
9147\end_inset
9148
9149 pro
9150\emph on
9151iLQG
9152\emph default
9153 řízení.
9154 Zde je zajímavé, že narozdíl od případů pro
9155\emph on
9156CE
9157\emph default
9158 a
9159\emph on
9160sLQ
9161\emph default
9162 řízení, kdy docházelo k oscilacím a divergujícím trajektoriím, v tomto
9163 případě dochází spíše k odchýlení trajektorie od požadovaného průběhu.
9164 První dvě řízení totiž nejsou duální a užíváme principu
9165\begin_inset Quotes gld
9166\end_inset
9167
9168certainty equivalence
9169\begin_inset Quotes grd
9170\end_inset
9171
9172.
9173 Tedy algoritmy navrhnou řídící zákrok, ten je ale vzhledem k chybnému předpokla
9174du o hodnotě parametu
9175\begin_inset Formula $b$
9176\end_inset
9177
9178 špatný a
9179\begin_inset Formula $y$
9180\end_inset
9181
9182 nabude jiné hodnoty, než jsme zamýšleli.
9183 V dalším kroku se snažíme vrátit, ale řídící zákrok je opět špatný.
9184 Následně může dojít k oscilacím nebo dokonce k divergenci.
9185 Chyby jsou zde způsobeny velkým rozdílem skutečné hodnoty parametu
9186\begin_inset Formula $b$
9187\end_inset
9188
9189 od jeho střední hodnoty, se kterou počítáme.
9190 Naproti tomu v případě duálního algoritmu
9191\emph on
9192iLQG
9193\emph default
9194 odhadujeme neznámý parametr
9195\begin_inset Formula $b$
9196\end_inset
9197
9198 a chyby jsou zde v důsledku nepřesných výpočtů a následné linearizace vůči
9199 špatné trajektorii, zejména při skutečné hodnotě
9200\begin_inset Formula $b$
9201\end_inset
9202
9203 blízko nuly.
9204 Delší čas potřebný pro dosažení požadované hodnoty může však být způsoben
9205 tím, že řídící strategie je navrhována pouze jednou (v rámci iterace),
9206 pro celý časový horizont.
9207 Zlepšení, tedy rychlejšího dosažení požadované hodnoty, by mohlo být dosaženo
9208 využitím
9209\emph on
9210ubíhajícího horizontu
9211\emph default
9212(
9213\begin_inset Quotes gld
9214\end_inset
9215
9216receding horizon
9217\begin_inset Quotes grd
9218\end_inset
9219
9220) podobně jako pro
9221\emph on
9222LQG
9223\emph default
9224 řízení synchronního motoru.
9225\end_layout
9226
9227\begin_layout Itemize
9228Na závěr grafy průběhů
9229\begin_inset Formula $y$
9230\end_inset
9231
9232 pro algoritmus
9233\emph on
9234iLDP
9235\emph default
9236 jsou na Obrázku
9237\begin_inset CommandInset ref
9238LatexCommand ref
9239reference "Flo:prubehy-y-js"
9240
9241\end_inset
9242
9243 (
9244\emph on
9245iLDP
9246\emph default
9247).
9248 Pro tento algoritmus je problematická skutečná hodnota parametru
9249\begin_inset Formula $b=0$
9250\end_inset
9251
9252.
9253 A protože algoritmus využívá výpočtů na vzorkových trajektoriích reprezentující
9254ch okolí, dokonce i jedna z trajektorií, která se výrazným způsobem odchýlí
9255 od ostatních, a tedy od očekávaného průběhu
9256\begin_inset Formula $y$
9257\end_inset
9258
9259, může narušit výsledek, nebo dokonce samotný běh algoritmu.
9260 To je možno pozorovat pro volbu
9261\begin_inset Formula $P=1$
9262\end_inset
9263
9264, kdy
9265\begin_inset Formula $y$
9266\end_inset
9267
9268 výrazně diverguje od požadované hodnoty
9269\begin_inset Formula $y_{r}$
9270\end_inset
9271
9272.
9273 A dále v případě
9274\begin_inset Formula $P=10$
9275\end_inset
9276
9277 algoritmus vůbec nedokončí výpočet.
9278 
9279\end_layout
9280
9281\begin_layout Section
9282Výsledky pro synchronní motor
9283\end_layout
9284
9285\begin_layout Standard
9286V této části jsou uvedeny výsledky pro úlohu nalezení řízení synchronního
9287 motoru s permanentními magnety.
9288 Funkční řízení se však podařilo nalézt pouze pomocí algoritmu
9289\emph on
9290LQG
9291\emph default
9292.
9293 Použitelnou implementaci algoritmu
9294\emph on
9295iLDP
9296\emph default
9297 se nepodařilo vytvořit, tento problém bude rozebrán v diskuzi (část
9298\begin_inset CommandInset ref
9299LatexCommand ref
9300reference "sec:Diskuze"
9301
9302\end_inset
9303
9304), a tedy budou uvedeny výsledky pouze pro metodu
9305\emph on
9306LQG
9307\emph default
9308.
9309\end_layout
9310
9311\begin_layout Subsection
9312Specifikace parametrů a konstant
9313\end_layout
9314
9315\begin_layout Standard
9316Pro výpočet řízení modelu synchronního motoru s permanentními magnety byly
9317 v části
9318\begin_inset CommandInset ref
9319LatexCommand ref
9320reference "sec:Synchronní-motor-PMSP-upravy"
9321
9322\end_inset
9323
9324 uvedeny příslušné rovnice.
9325 Následně byly odvozeny detaily konkrétní implementace pro použité algoritmy.
9326 Pro získání výsledků a ověření použitelnosti řízení je však ještě třeba
9327 specifikovat konkrétní hodnoty jednotlivých konstant a parametrů.
9328\end_layout
9329
9330\begin_layout Subsubsection
9331Konstanty v rovnicích motoru
9332\end_layout
9333
9334\begin_layout Standard
9335Pro účely testování algoritmů volíme konstanty následovně:
9336\begin_inset Formula \begin{eqnarray*}
9337R_{s} & = & 0,28;\\
9338L_{s} & = & 0,003465;\\
9339\Psi_{PM} & = & 0,1989;\\
9340B & = & 0;\\
9341T_{L} & = & 0;\\
9342k_{p} & = & 1,5;\\
9343p_{p} & = & 4,0;\\
9344J & = & 0,04;\\
9345\Delta k & = & 0,000125.\end{eqnarray*}
9346
9347\end_inset
9348
9349Což vede na zjednodušené koeficienty:
9350\begin_inset Formula \begin{eqnarray*}
9351a & = & 0,9898;\\
9352b & = & 0,0072;\\
9353c & = & 0,0361;\\
9354d & = & 1;\\
9355e & = & 0,0149.\end{eqnarray*}
9356
9357\end_inset
9358
9359
9360\end_layout
9361
9362\begin_layout Subsubsection
9363Kovarianční matice
9364\end_layout
9365
9366\begin_layout Standard
9367Kovarianční matice
9368\begin_inset Formula $M_{k}$
9369\end_inset
9370
9371 a
9372\begin_inset Formula $N_{k}$
9373\end_inset
9374
9375 předpokládáme známé a pro účely testování je volíme následovně:
9376\begin_inset Formula \begin{eqnarray*}
9377M_{k} & = & \mathrm{diag\left(0,0013;\:0,0013;\:5e-6;\:1e-10\right),}\\
9378N_{k} & = & \mathrm{diag}\left(0,0006;\:0,0006\right).\end{eqnarray*}
9379
9380\end_inset
9381
9382
9383\end_layout
9384
9385\begin_layout Subsubsection
9386Omezení na vstupy
9387\end_layout
9388
9389\begin_layout Standard
9390Na vstupy
9391\begin_inset Formula $u_{k}$
9392\end_inset
9393
9394 klademe omezení
9395\begin_inset Formula $u_{\alpha}^{2}+u_{\beta}^{2}\leq u_{max}^{2}$
9396\end_inset
9397
9398, kde volíme
9399\begin_inset Formula \begin{eqnarray*}
9400u_{max} & = & 100.\end{eqnarray*}
9401
9402\end_inset
9403
9404
9405\end_layout
9406
9407\begin_layout Subsubsection
9408Ztrátová funkce
9409\end_layout
9410
9411\begin_layout Standard
9412Do ztrátové funkce je třeba zvolit jediný parametr, a to prvek
9413\begin_inset Formula $r$
9414\end_inset
9415
9416 na diagonále matice
9417\begin_inset Formula $R$
9418\end_inset
9419
9420.
9421 Tento parametr odpovídá penalizaci za vstupy, ale vstupy chceme upravit
9422 pouze tak, aby splňovaly výše uvedenou podmínku.
9423 Je tedy třeba parametr
9424\begin_inset Formula $r$
9425\end_inset
9426
9427 experimentálně naladit.
9428 Jako vhodná volba se na základě experimentů jeví hodnota
9429\begin_inset Formula \begin{eqnarray*}
9430r & = & 0,000001.\end{eqnarray*}
9431
9432\end_inset
9433
9434
9435\end_layout
9436
9437\begin_layout Subsubsection
9438Časový horizont a vzorky
9439\end_layout
9440
9441\begin_layout Standard
9442Časový horizont je volen
9443\begin_inset Formula $K=20$
9444\end_inset
9445
9446 a vzorkových trajektorií je podobně jako v předchozím případě jednoduchého
9447 systému zvoleno
9448\begin_inset Formula $N=100$
9449\end_inset
9450
9451.
9452\end_layout
9453
9454\begin_layout Subsubsection
9455Požadovaná hodnota
9456\end_layout
9457
9458\begin_layout Standard
9459Jako hodnotu požadovaných otáček volíme
9460\begin_inset Formula \begin{eqnarray*}
9461\overline{\omega} & = & 1,15.\end{eqnarray*}
9462
9463\end_inset
9464
9465Uvážíme-li relativně malou periodu vzorkování
9466\begin_inset Formula $\Delta k$
9467\end_inset
9468
9469, tato hodnota se jeví jako dosažitelnou z počáteční hodnoty
9470\begin_inset Formula $\omega_{0}$
9471\end_inset
9472
9473 při použitém časovém horizontu
9474\begin_inset Formula $K$
9475\end_inset
9476
9477.
9478\end_layout
9479
9480\begin_layout Subsubsection
9481Počáteční podmínky
9482\end_layout
9483
9484\begin_layout Standard
9485Poslední, co je třeba zvolit, jsou počáteční podmínky pro testovaný systém.
9486 Ty samozřejmě neznáme přesně.
9487 Nemůžeme totiž měřit stav, zejména polohu a otáčky hřídele.
9488 Abychom mohli testovat chování algoritmu při rostoucí potřebě duálního
9489 přístupu, podobně jako pro jednoduchý systém budeme volit stejné střední
9490 hodnoty, ale postupně rostoucí varianci.
9491 To se bude týkat variance polohy hřídele, to jest úhlu natočení.
9492 Volíme tedy počáteční střední hodnoty:
9493\begin_inset Formula \begin{eqnarray*}
9494\hat{i}_{\alpha,0} & = & 0,\\
9495\hat{i}_{\beta,0} & = & 0,\\
9496\hat{\omega}_{0} & = & 1,\\
9497\hat{\vartheta}_{0} & = & \frac{\pi}{2}.\end{eqnarray*}
9498
9499\end_inset
9500
9501A počáteční variance jsou postupně:
9502\begin_inset Formula \begin{eqnarray*}
9503P_{0} & = & \mathrm{diag\left(0,01;\:0,01;\:0,01;\:0,01\right),}\\
9504P_{0} & = & \mathrm{diag}\left(0,01;\:0,01;\:0,01;\:0,1\right),\\
9505P_{0} & = & \mathrm{diag}\left(0,01;\:0,01;\:0,01;\:1\right),\\
9506P_{0} & = & \mathrm{diag}\left(0,01;\:0,01;\:0,01;\:10\right).\end{eqnarray*}
9507
9508\end_inset
9509
9510
9511\end_layout
9512
9513\begin_layout Subsection
9514Pozorované výsledky
9515\end_layout
9516
9517\begin_layout Standard
9518Algoritmus
9519\emph on
9520LQG
9521\emph default
9522 implementovaný pro účely nalezení řízení synchronního motoru v této práci
9523 je sice navržen tak, aby dobře zvládal šum (pomocí rozšířeného Kalmanova
9524 filtru), ale nejedná se o duální metodu.
9525 Tedy s rostoucí variancí neznámých hodnot stavu, zejména polohy hřídele
9526 motoru, kterou sledujeme, poskytuje algoritmus horší řízení a dosahuje
9527 tedy i vyšší ztráty.
9528 O tom se můžeme přesvědčit v tabulce průměrných ztrát sestavené na základě
9529 simulací.
9530 
9531\end_layout
9532
9533\begin_layout Standard
9534Simulace byly provedeny analogickým postupem jako pro jednoduchý systém,
9535 kdy průměrná ztráta je střední hodnotou ze ztrát dosažených pro každou
9536 z
9537\begin_inset Formula $N$
9538\end_inset
9539
9540 vzorkových trajektorií s různou náhodnou realizací počátečních podmínek
9541 a šumu.
9542 Ztráta pro jednotlivou vzorkovou trajektorii je opět počítána pouze na
9543 základě odchylky od požadované hodnoty, tedy jako
9544\begin_inset Formula \[
9545J=\sum_{k=0}^{K-1}\left(\omega_{k+1}-\overline{\omega}_{k+1}\right)^{2}=\sum_{k=0}^{K-1}\psi_{k+1}^{2}.\]
9546
9547\end_inset
9548
9549Dále označíme
9550\begin_inset Formula $P_{\vartheta}=P_{0}^{(4,4)}$
9551\end_inset
9552
9553, tedy právě počáteční varianci polohy hřídele, kterou budeme měnit a v
9554 závislosti na této změně pozorovat dosažené ztráty.
9555 Pak jsou dosažené průměrné ztráty
9556\begin_inset Formula $\overline{J}$
9557\end_inset
9558
9559 pomocí algoritmu
9560\emph on
9561LQG
9562\emph default
9563 následující:
9564\end_layout
9565
9566\begin_layout Subsubsection
9567Tabulka průměrných ztrát
9568\end_layout
9569
9570\begin_layout Standard
9571\align center
9572\begin_inset Tabular
9573<lyxtabular version="3" rows="2" columns="5">
9574<features>
9575<column alignment="center" valignment="top" width="0">
9576<column alignment="center" valignment="top" width="0">
9577<column alignment="center" valignment="top" width="0">
9578<column alignment="center" valignment="top" width="0">
9579<column alignment="center" valignment="top" width="0">
9580<row>
9581<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
9582\begin_inset Text
9583
9584\begin_layout Plain Layout
9585\begin_inset Formula $P_{\vartheta}$
9586\end_inset
9587
9588
9589\end_layout
9590
9591\end_inset
9592</cell>
9593<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
9594\begin_inset Text
9595
9596\begin_layout Plain Layout
95970,01
9598\end_layout
9599
9600\end_inset
9601</cell>
9602<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
9603\begin_inset Text
9604
9605\begin_layout Plain Layout
96060,1
9607\end_layout
9608
9609\end_inset
9610</cell>
9611<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
9612\begin_inset Text
9613
9614\begin_layout Plain Layout
96151
9616\end_layout
9617
9618\end_inset
9619</cell>
9620<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
9621\begin_inset Text
9622
9623\begin_layout Plain Layout
962410
9625\end_layout
9626
9627\end_inset
9628</cell>
9629</row>
9630<row>
9631<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
9632\begin_inset Text
9633
9634\begin_layout Plain Layout
9635
9636\emph on
9637\begin_inset Formula $\overline{J}$
9638\end_inset
9639
9640
9641\end_layout
9642
9643\end_inset
9644</cell>
9645<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
9646\begin_inset Text
9647
9648\begin_layout Plain Layout
96490,0776
9650\end_layout
9651
9652\end_inset
9653</cell>
9654<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
9655\begin_inset Text
9656
9657\begin_layout Plain Layout
96580,1074
9659\end_layout
9660
9661\end_inset
9662</cell>
9663<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
9664\begin_inset Text
9665
9666\begin_layout Plain Layout
96673,3982
9668\end_layout
9669
9670\end_inset
9671</cell>
9672<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
9673\begin_inset Text
9674
9675\begin_layout Plain Layout
9676NaN
9677\end_layout
9678
9679\end_inset
9680</cell>
9681</row>
9682</lyxtabular>
9683
9684\end_inset
9685
9686
9687\end_layout
9688
9689\begin_layout Subsubsection
9690Průběhy stavových veličin
9691\end_layout
9692
9693\begin_layout Standard
9694Ještě lépe je možno pozorovat výsledky algoritmu při rostoucí varianci na
9695 grafech průběhů stavových veličin systému.
9696 Podobně jako pro jednoduchý systém jsou zde různými barvami zobrazeny jednotliv
9697é vzorkové trajektorie, které tvoří
9698\begin_inset Quotes gld
9699\end_inset
9700
9701trubici
9702\begin_inset Quotes grd
9703\end_inset
9704
9705 v důsledku šumu.
9706 Protože je algoritmus
9707\emph on
9708LQG
9709\emph default
9710 neduální, s rostoucí variancí poskytuje špatné řízení, a to zpravidla v
9711 těch případech, kdy skutečné hodnoty polohy hřídele
9712\begin_inset Formula $\vartheta$
9713\end_inset
9714
9715 jsou vzdáleny střední hodnotě, se kterou počítáme.
9716 Jednotlivé průběhy jsou zachyceny v grafech Obrázek
9717\begin_inset CommandInset ref
9718LatexCommand ref
9719reference "Flo:prubehy-pmsm"
9720
9721\end_inset
9722
9723 pro volby variance
9724\begin_inset Formula $P_{\vartheta}=0,01$
9725\end_inset
9726
9727,
9728\begin_inset Formula $P_{\vartheta}=0,1$
9729\end_inset
9730
9731,
9732\begin_inset Formula $P_{\vartheta}=1$
9733\end_inset
9734
9735 a
9736\begin_inset Formula $P_{\vartheta}=10$
9737\end_inset
9738
9739.
9740 
9741\begin_inset Float figure
9742wide false
9743sideways false
9744status open
9745
9746\begin_layout Plain Layout
9747\begin_inset Tabular
9748<lyxtabular version="3" rows="4" columns="2">
9749<features>
9750<column alignment="center" valignment="top" width="0">
9751<column alignment="center" valignment="top" width="0">
9752<row>
9753<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
9754\begin_inset Text
9755
9756\begin_layout Plain Layout
9757\begin_inset Graphics
9758        filename pmsm001.eps
9759        scale 44
9760
9761\end_inset
9762
9763
9764\end_layout
9765
9766\end_inset
9767</cell>
9768<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
9769\begin_inset Text
9770
9771\begin_layout Plain Layout
9772\begin_inset Graphics
9773        filename pmsm01.eps
9774        scale 44
9775
9776\end_inset
9777
9778
9779\end_layout
9780
9781\end_inset
9782</cell>
9783</row>
9784<row>
9785<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
9786\begin_inset Text
9787
9788\begin_layout Plain Layout
9789\begin_inset Formula $P_{\vartheta}=0,01$
9790\end_inset
9791
9792
9793\end_layout
9794
9795\end_inset
9796</cell>
9797<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
9798\begin_inset Text
9799
9800\begin_layout Plain Layout
9801\begin_inset Formula $P_{\vartheta}=0,1$
9802\end_inset
9803
9804
9805\end_layout
9806
9807\end_inset
9808</cell>
9809</row>
9810<row>
9811<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
9812\begin_inset Text
9813
9814\begin_layout Plain Layout
9815\begin_inset Graphics
9816        filename pmsm1.eps
9817        scale 44
9818
9819\end_inset
9820
9821
9822\end_layout
9823
9824\end_inset
9825</cell>
9826<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
9827\begin_inset Text
9828
9829\begin_layout Plain Layout
9830\begin_inset Graphics
9831        filename pmsm10.eps
9832        scale 44
9833
9834\end_inset
9835
9836
9837\end_layout
9838
9839\end_inset
9840</cell>
9841</row>
9842<row>
9843<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
9844\begin_inset Text
9845
9846\begin_layout Plain Layout
9847\begin_inset Formula $P_{\vartheta}=1$
9848\end_inset
9849
9850
9851\end_layout
9852
9853\end_inset
9854</cell>
9855<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
9856\begin_inset Text
9857
9858\begin_layout Plain Layout
9859\begin_inset Formula $P_{\vartheta}=10$
9860\end_inset
9861
9862
9863\end_layout
9864
9865\end_inset
9866</cell>
9867</row>
9868</lyxtabular>
9869
9870\end_inset
9871
9872
9873\begin_inset Caption
9874
9875\begin_layout Plain Layout
9876Průběhy hodnot stavových veličin dle volby
9877\begin_inset Formula $P_{\vartheta}$
9878\end_inset
9879
9880 
9881\end_layout
9882
9883\end_inset
9884
9885
9886\end_layout
9887
9888\begin_layout Plain Layout
9889\begin_inset CommandInset label
9890LatexCommand label
9891name "Flo:prubehy-pmsm"
9892
9893\end_inset
9894
9895
9896\end_layout
9897
9898\end_inset
9899
9900
9901\end_layout
9902
9903\begin_layout Section
9904Diskuze
9905\begin_inset CommandInset label
9906LatexCommand label
9907name "sec:Diskuze"
9908
9909\end_inset
9910
9911
9912\end_layout
9913
9914\begin_layout Standard
9915Nyní srovnáme dosažené výsledky pro jednotlivé algoritmy a budeme diskutovat
9916 jejich přednosti, nedostatky a použitelnost pro řešení konkrétních úloh.
9917 Pro úlohu nalezení řízení synchronního motoru s permanentními magnety byly
9918 implementovány dva algoritmy.
9919 Konkrétně se jednalo o algoritmy
9920\emph on
9921iLDP
9922\emph default
9923 a
9924\emph on
9925LQG
9926\emph default
9927, přičemž je třeba podotknout, že funkční implementaci
9928\emph on
9929iLDP
9930\emph default
9931 se nepodařilo vytvořit.
9932 K dispozici je pro tuto úlohu pouze jeden algoritmus, který nalezne řízení,
9933 a srovnání tedy není možné.
9934 Z tohoto důvodu budou tedy jednotlivé algoritmy srovnány pouze na základě
9935 výsledků pro jednoduchý systém.
9936 Algoritmus
9937\emph on
9938iLDP
9939\emph default
9940, na který je zaměřena tato práce, bude diskutován v samostatné části.
9941\end_layout
9942
9943\begin_layout Subsection
9944Porovnání algoritmů
9945\end_layout
9946
9947\begin_layout Standard
9948Algoritmy jsou porovnány na základě výsledků simulací pro jednoduchý systém.
9949 Jedná se o integrátor s neznámým ziskem, tedy lineární a časově invariantní
9950 systém.
9951 Systém je však na mezi stability, což může být příčinou problémů některých
9952 algoritmů.
9953 Další problém může nastat, když by hodnota neznámého parametru
9954\begin_inset Formula $b$
9955\end_inset
9956
9957 byla nulová.
9958 Z rovnice jednoduchého systému
9959\begin_inset Formula \[
9960y_{k+1}=y_{k}+bu_{k}+\sigma e_{k},\]
9961
9962\end_inset
9963
9964pak plyne, že neexistuje žádné řízení
9965\begin_inset Formula $u_{k}$
9966\end_inset
9967
9968, které by dosáhlo změny stavu
9969\begin_inset Formula $y_{k}$
9970\end_inset
9971
9972 na požadovanou hodnotu (není-li již tato hodnota triviálně dosažena).
9973 Přičemž neznámý parametr
9974\begin_inset Formula $b$
9975\end_inset
9976
9977 považujeme za náhodnou veličinu s normálním rozdělením, a tedy neuvažujeme-li
9978 degenerované rozdělení, je pravděpodobnost dosažení přesné hodnoty
9979\begin_inset Formula $b=0$
9980\end_inset
9981
9982 nulová.
9983 Degenerované rozdělení ale dostáváme, když považujeme hodnotu
9984\begin_inset Formula $b$
9985\end_inset
9986
9987 za známou například použitím principu
9988\begin_inset Quotes gld
9989\end_inset
9990
9991certainty equivalence
9992\begin_inset Quotes grd
9993\end_inset
9994
9995, kdy předpokládáme hodnotu parametu rovnou jeho střední hodnotě.
9996 Je-li současně střední hodnota rovna nule, nastává kritický případ, kdy
9997 řízení založeno na tomto předpokladu musí selhat.
9998\end_layout
9999
10000\begin_layout Subsubsection
10001CE
10002\end_layout
10003
10004\begin_layout Standard
10005Řízení
10006\emph on
10007CE
10008\emph default
10009 je nejjednodušší metodou použitou v této práci.
10010 Využíváme předpokladu, že skutečnou hodnotu neznámého parametru
10011\begin_inset Formula $b$
10012\end_inset
10013
10014 známe, a tedy ji pokládáme rovnu jeho střední hodnotě
10015\begin_inset Formula $\mathrm{E}b$
10016\end_inset
10017
10018.
10019 Je-li ale skutečná hodnota neznámého parametru
10020\begin_inset Formula $b$
10021\end_inset
10022
10023 příliš vzdálená od střední hodnoty, se kterou počítáme, řízení samozřejmě
10024 selhává.
10025 Tento přístup tedy není duální, a jak bylo možno pozorovat na výsledcích
10026 simulací, s rostoucí variancí
10027\begin_inset Formula $P$
10028\end_inset
10029
10030 parametru
10031\begin_inset Formula $b$
10032\end_inset
10033
10034 dosahuje větší ztráty.
10035 
10036\end_layout
10037
10038\begin_layout Standard
10039Dalším problémem tohoto přístupu je volba střední hodnoty
10040\begin_inset Formula $0$
10041\end_inset
10042
10043, kdy zřejmě z tvaru rovnice regulátoru hrozí dělení nulou.
10044 Přičtením malého parametru
10045\begin_inset Formula $\varepsilon$
10046\end_inset
10047
10048 sice můžeme problém dělení nulou odstranit, ale použitelné řízení nezískáme.
10049 Potřebovali bychom tedy přičíst větší hodnotu
10050\begin_inset Formula $\varepsilon$
10051\end_inset
10052
10053, což ale způsobí nepřesnost při střední hodnotě
10054\begin_inset Formula $\mathrm{E}b$
10055\end_inset
10056
10057 dále od nuly.
10058 Ideální by tedy bylo vždy
10059\begin_inset Quotes gld
10060\end_inset
10061
10062naladit
10063\begin_inset Quotes grd
10064\end_inset
10065
10066 parametr
10067\begin_inset Formula $\varepsilon$
10068\end_inset
10069
10070 podle konkrétní volby střední hodnoty
10071\begin_inset Formula $\mathrm{E}b$
10072\end_inset
10073
10074, což ale velmi snižuje univerzálnost metody.
10075 Dalším možným způsobem je místo malého parametu
10076\begin_inset Formula $\varepsilon$
10077\end_inset
10078
10079 přičítat varianci
10080\begin_inset Formula $P$
10081\end_inset
10082
10083.
10084 Na základě tohoto postupu byl pak vytvořen návrh aproximace regulátoru
10085 pro algoritmus
10086\emph on
10087iLDP
10088\emph default
10089.
10090 Zdokonalování návrhu řízení
10091\emph on
10092CE
10093\emph default
10094 však nebylo předmětné v této práci, protože záměrem bylo využít
10095\emph on
10096CE
10097\emph default
10098 jako nejjednoduššího neduálního přístupu pro srovnání s ostatními
10099\begin_inset Quotes gld
10100\end_inset
10101
10102dokonalejšími
10103\begin_inset Quotes grd
10104\end_inset
10105
10106 algoritmy.
10107\end_layout
10108
10109\begin_layout Standard
10110Návrh řízení
10111\emph on
10112CE
10113\emph default
10114 tedy můžeme stručně zhodnotit tak, že je sice velmi jednoduchý, ale neduální,
10115 a vykazuje značně problematické chování pro střední hodnotu
10116\begin_inset Formula $\mathrm{E}b=0$
10117\end_inset
10118
10119.
10120\end_layout
10121
10122\begin_layout Subsubsection
10123sLQ
10124\end_layout
10125
10126\begin_layout Standard
10127Označení
10128\emph on
10129sLQ
10130\emph default
10131 bylo použito pro klasické LQ řízení aplikované na základní verzi jednoduchého
10132 systému bez dodatečných úprav.
10133 Protože je ale skutečná hodnota parametru
10134\begin_inset Formula $b$
10135\end_inset
10136
10137 v rovnicích neznámá a není nijak odhadována algoritmem, využívá se zde
10138 principu
10139\begin_inset Quotes gld
10140\end_inset
10141
10142certainty equivalence
10143\begin_inset Quotes grd
10144\end_inset
10145
10146 a předpokládáme, že skutečná hodnota parametru
10147\begin_inset Formula $b$
10148\end_inset
10149
10150 je rovna jeho střední hodnotě
10151\begin_inset Formula $\mathrm{E}b$
10152\end_inset
10153
10154.
10155 
10156\end_layout
10157
10158\begin_layout Standard
10159LQ řízení je primárně navrženo pro řízení lineárních systémů s kvadratickou
10160 ztrátovou funkcí.
10161 Tomuto zadání základní verze jednoduchého systému plně vyhovuje.
10162 Řízení je pak hledáno ve tvaru lineární funkce, kde řízení je lineární
10163 funkcí stavu.
10164 
10165\end_layout
10166
10167\begin_layout Standard
10168Již z tvaru rovnice základní verze jednoduchého systému je zřejmé, že předpoklád
10169áme-li parametr
10170\begin_inset Formula $b$
10171\end_inset
10172
10173 rovný střední hodnotě
10174\begin_inset Formula $\mathrm{E}b=0$
10175\end_inset
10176
10177, úloha nemá smysl, protože libovolné řízení
10178\begin_inset Formula $u_{k}$
10179\end_inset
10180
10181 nemůže dosáhnout změny stavu.
10182 V tomto případě řízení
10183\emph on
10184sLQ
10185\emph default
10186 nelze použít, jak je také vidět v tabulce průměrných ztrát.
10187\end_layout
10188
10189\begin_layout Standard
10190Je třeba uvést, že se nejedná o duální metodu, a tedy s rostoucí variancí
10191 neznámého parametru dosahujeme vyšší ztráty.
10192 Dosažené výsledky jsou pak podobné jako u
10193\emph on
10194CE
10195\emph default
10196.
10197 Kromě případu
10198\begin_inset Formula $\mathrm{E}b=0$
10199\end_inset
10200
10201, kdy
10202\emph on
10203sLQ
10204\emph default
10205 zcela selhává, je však dosaženo nepatrně nižší průměrné ztráty.
10206\end_layout
10207
10208\begin_layout Subsubsection
10209LQ
10210\end_layout
10211
10212\begin_layout Standard
10213Přístupem
10214\emph on
10215LQ
10216\emph default
10217 je označena verze lineárně-kvadratického řízení, aplikovaného na upravené
10218 rovnice jednoduchého systému.
10219 Upravená verze rovnic již odhaduje neznámý parametr
10220\begin_inset Formula $b$
10221\end_inset
10222
10223 pomocí odhadů jeho střední hodnoty
10224\begin_inset Formula $\hat{b}$
10225\end_inset
10226
10227 a variance
10228\begin_inset Formula $P$
10229\end_inset
10230
10231, kdy se tyto dva parametry spolu se stavem
10232\begin_inset Formula $y_{k}$
10233\end_inset
10234
10235 vyvíjejí v čase.
10236 Získané rovnice pak již nejsou lineární, linearizujeme je tedy v každém
10237 časovém kroku a následně aplikujeme výpočet klasického LQ řízení.
10238 Na základě výsledků simulací usuzujeme, že se jedná o duální algoritmus.
10239\end_layout
10240
10241\begin_layout Standard
10242Na rozdíl od složitějších algoritmů nevyužívá
10243\emph on
10244LQ
10245\emph default
10246, kromě linearizace, žádné další nepřesné přístupy, jako aproximace nebo
10247 výpočty na vzorkových trajektoriích.
10248 To se v simulacích ukazuje velmi výhodným, kdy algoritmus
10249\emph on
10250LQ
10251\emph default
10252 dosahuje ve srovnání s ostatními přístupy nejlepších výsledků a dosahuje
10253 nízké ztráty ve všech případech volby parametrů.
10254\end_layout
10255
10256\begin_layout Subsubsection
10257iLQG
10258\end_layout
10259
10260\begin_layout Standard
10261Algoritmus
10262\emph on
10263iLQG
10264\emph default
10265 je rozšířením základního LQG řízení a je určen i pro složitěší systémy.
10266 Lze jej aplikovat i na nelineární systémy s nekvadratickou ztrátovou funkcí
10267 v důsledku požadavku na omezení vstupů.
10268 V této práci je
10269\emph on
10270iLQG
10271\emph default
10272 použit jako mezikrok mezi jednodušším přístupem
10273\emph on
10274LQ
10275\emph default
10276 a složitějším algoritmem
10277\emph on
10278iLDP
10279\emph default
10280.
10281 Na základě výsledků simulací opěd soudíme, že
10282\emph on
10283iLQG
10284\emph default
10285 je duálním algoritmem.
10286\end_layout
10287
10288\begin_layout Standard
10289Základní postup využívaný
10290\emph on
10291iLQG
10292\emph default
10293 je nejprve linearizace a pak vyjádření vztahů pomocí matic, které mohou
10294 být ještě dále upravovány z důvodu například omezení vstupů nebo zajištění
10295 regularity.
10296 Dále je třeba zmínit, že se v podstatě jedná o lokální metodu, protože
10297 linearizace je prováděna vzhledem k reprezentativní trajektorii a následně
10298 se pak počítá v odchylkách od této trajektorie.
10299 Reprezentativní trajektorii můžeme získat například simulací bezšumového
10300 vývoje systému nebo průměrováním dostatečného počtu vzorkových trajektorií.
10301 Algoritmus
10302\emph on
10303iLQG
10304\emph default
10305 pak aplikujeme na upravenou verzi rovnic jednoduchého systému, podobně
10306 jako v případě
10307\emph on
10308LQ
10309\emph default
10310.
10311 
10312\end_layout
10313
10314\begin_layout Standard
10315Jak je možné přesvědčit se v tabulce průměrných ztrát,
10316\emph on
10317iLQG
10318\emph default
10319 dosahuje velmi dobrých výsledků (to jest nízké ztráty), je-li zajištěn
10320 nízký výskyt realizací skutečné hodnoty
10321\begin_inset Formula $b$
10322\end_inset
10323
10324 blízko nuly.
10325 Konkrétně se jedná o případ volby
10326\begin_inset Formula $\hat{b}=10$
10327\end_inset
10328
10329 a libovolného
10330\begin_inset Formula $P$
10331\end_inset
10332
10333, nebo
10334\begin_inset Formula $\hat{b}=1$
10335\end_inset
10336
10337 a současně
10338\begin_inset Formula $P=0,01$
10339\end_inset
10340
10341 popřípadě
10342\begin_inset Formula $P=0,1$
10343\end_inset
10344
10345.
10346 V opačném případě, pro
10347\begin_inset Formula $\hat{b}=0$
10348\end_inset
10349
10350, nebo
10351\begin_inset Formula $\hat{b}=1$
10352\end_inset
10353
10354 a současně
10355\begin_inset Formula $P=1$
10356\end_inset
10357
10358 nebo
10359\begin_inset Formula $P=10$
10360\end_inset
10361
10362, je dosaženo vyšší průměrné ztráty (okolo hodnoty
10363\begin_inset Formula $2$
10364\end_inset
10365
10366).
10367 Z grafů průběhu pro
10368\emph on
10369iLQG
10370\emph default
10371 je pak zřejmé, že v těchto negativních případech mají některé trajektorie
10372 dobrý průběh a některé naopak špatný.
10373 To je ovšem z hlediska řízení nepřijatelné, aby regulátor někdy poskytl
10374 dobré řízení a někdy naopak téměř nepoužitelné.
10375\end_layout
10376
10377\begin_layout Standard
10378S velkou pravděpodobností je tento problém opět způsoben problematickým
10379 chováním algoritmu
10380\emph on
10381iLQG
10382\emph default
10383 v okolí nuly.
10384 Výpočet řízení je totiž při použití tohoto algoritmu značně závislý na
10385 volbě reprezentativní trajektorie, kterou když vygenerujeme špatně, dostaneme
10386 i špatné řízení.
10387 Právě v blízkosti nuly může dojít k nepříznivému generování reprezentativní
10388 trajektorie.
10389 Vycházíme z
10390\begin_inset Formula $y_{0}=0$
10391\end_inset
10392
10393, a tedy při kladném parametru
10394\begin_inset Formula $b$
10395\end_inset
10396
10397 generujeme trajektorii do kladných hodnot, nebo se naopak dostáváme do
10398 záporných čísel, je-li skutečná hodnota parametru
10399\begin_inset Formula $b$
10400\end_inset
10401
10402 záporná.
10403 Tento rozpor pak může způsobit problémy jako špatné řízení a dosažení vyšší
10404 ztráty.
10405\end_layout
10406
10407\begin_layout Subsection
10408Hodnocení algoritmu iLDP
10409\end_layout
10410
10411\begin_layout Standard
10412Algoritmus
10413\emph on
10414iterativního lokálního dynamického programování
10415\emph default
10416(
10417\emph on
10418iLDP
10419\emph default
10420) je hlavním námětem této práce.
10421 Jeho výsledky tedy popíšeme detailněji.
10422 Nejdříve uveďme výsledky v porovnání s ostatními algoritmy pro jednoduchý
10423 systém.
10424 Dále bude zařazena diskuze negativních vlastností algoritmu, které mohly
10425 vést k tomu, že se nepodařilo vytvořit funkční implementaci pro sychronní
10426 motor.
10427 Na závěr bude v samostatné části zařazeno porovnání pozorovaných vlastností
10428 
10429\emph on
10430iLDP
10431\emph default
10432 s prvotními očekáváními.
10433\end_layout
10434
10435\begin_layout Standard
10436Algoritmus
10437\emph on
10438iLDP
10439\emph default
10440 je nejsložitější ze zde prezentovaných metod pro nalezení optimálního řízení,
10441 zejména při nutnosti duálního přístupu.
10442 Je založen na obecných principech, jmenovitě Hamilton-Jacobi-Bellmanově
10443 rovnosti a Pontryaginůvě principu minima.
10444 Jedná se o iterační metodu, tedy takovou, která vychází od jistého počátečního
10445 řízení a to v iteracích
10446\begin_inset Quotes gld
10447\end_inset
10448
10449vylepšuje
10450\begin_inset Quotes grd
10451\end_inset
10452
10453 za účelem dosažení optima.
10454 Počáteční řízení však musíme dodat algoritmu jako apriorní informaci a
10455 špatné řízení může způsobit nutnost velkého počtu iterací k nalezení optimálníh
10456o řízení nebo v extrémním případě dokonce nenalezení vhodného řízení.
10457 Dále algoritmus
10458\emph on
10459iLDP
10460\emph default
10461 je lokální metoda a tedy výpočty probíhají na okolí nějaké reprezentativní
10462 trajektorie.
10463 Toto okolí je třeba zvolit při konkrétní implementaci algoritmu a jeho
10464 volba může mít nezanedbatelný vliv na výsledky, které následně
10465\emph on
10466iLDP
10467\emph default
10468 poskytne.
10469 Algoritmus pak odpovídá obecnému schématu dynamického programování, kde
10470 se v diskrétních časových okamžicích napočítávají od nejvyššího času zpět
10471 optimální hodnoty Hamiltoniánů, které se postupně uchovávají v Bellmanově
10472 funkci.
10473 Z nich je také následně odvozeno i optimální řízení.
10474\end_layout
10475
10476\begin_layout Subsubsection
10477Srovnání pro jednoduchý systém
10478\end_layout
10479
10480\begin_layout Standard
10481Při srovnání výsledků pro jednoduchý systém s ostatními algoritmy poskytuje
10482 
10483\emph on
10484iLDP
10485\emph default
10486 dobré řízení ve všech případech, kdy se skutečné realizace neznámého parametru
10487 
10488\begin_inset Formula $b$
10489\end_inset
10490
10491 vyskytují dostatečně daleko od nuly.
10492 Tento bod je právě pro algoritmus
10493\emph on
10494iLDP
10495\emph default
10496 kritický a výpočet řízení tam zpravidla selhává.
10497 Tedy pro volby
10498\begin_inset Formula $\hat{b}=10$
10499\end_inset
10500
10501 a současně
10502\begin_inset Formula $P=0,01$
10503\end_inset
10504
10505,
10506\begin_inset Formula $P=0,1$
10507\end_inset
10508
10509 a
10510\begin_inset Formula $P=1$
10511\end_inset
10512
10513, dále pak pro
10514\begin_inset Formula $\hat{b}=1$
10515\end_inset
10516
10517 a současně
10518\begin_inset Formula $P=0,01$
10519\end_inset
10520
10521 dosahuje
10522\emph on
10523iLDP
10524\emph default
10525 velmi nízké průměrné ztráty.
10526 Nízké průměrné ztráty dosahuje pak ještě pro volbu
10527\begin_inset Formula $\hat{b}=10$
10528\end_inset
10529
10530 a současně
10531\begin_inset Formula $P=10$
10532\end_inset
10533
10534 a
10535\begin_inset Formula $\hat{b}=1$
10536\end_inset
10537
10538 a současně
10539\begin_inset Formula $P=0,1$
10540\end_inset
10541
10542.
10543 Je-li parametr
10544\begin_inset Formula $\hat{b}=1$
10545\end_inset
10546
10547, pak při
10548\begin_inset Formula $P=1$
10549\end_inset
10550
10551 je dosaženo extrémní hodnoty ztráty a při
10552\begin_inset Formula $P=10$
10553\end_inset
10554
10555 algoritmus dokonce vůbec nenalezne řešení.
10556 Podobně pro
10557\begin_inset Formula $\hat{b}=0$
10558\end_inset
10559
10560 při volbě
10561\begin_inset Formula $P=0,01$
10562\end_inset
10563
10564 je dosaženo nepřijatelné průměrné ztráty a pro ostatní volby
10565\begin_inset Formula $P$
10566\end_inset
10567
10568 již vůbec nenalézáme řešení.
10569\end_layout
10570
10571\begin_layout Standard
10572Tedy ve srovnání s ostatními algoritmy poskytuje
10573\emph on
10574iLDP
10575\emph default
10576 sice výsledky, které patří mezi nejlepší, ale pouze za předpokladu, že
10577 je zaručeno realizování skutečných hodnot
10578\begin_inset Formula $b$
10579\end_inset
10580
10581 dostatečně daleko od nuly.
10582 Při srovnávání konkrétních hodnot průměrných ztrát je třeba mít na vědomí,
10583 že se hodnoty mohou nepatrně lišit v závislosti na realizaci šumu.
10584\end_layout
10585
10586\begin_layout Subsubsection
10587Diskuze negativních vlastností algoritmu
10588\end_layout
10589
10590\begin_layout Standard
10591V průběhu implementace a testování
10592\emph on
10593iLDP
10594\emph default
10595 se objevily jisté komplikace a projevily se negativní vlastnosti tohoto
10596 algoritmu.
10597 Jedná se zejména o problematické chování při realizaci skutečné hodnoty
10598 neznámého parametru
10599\begin_inset Formula $b$
10600\end_inset
10601
10602 blízko nuly pro jednoduchý systém.
10603 Dalším problémem je pak otázka vhodné volby aproximací funkcí pro synchronní
10604 motor.
10605 
10606\end_layout
10607
10608\begin_layout Subsubsection
10609Problematické chování při
10610\begin_inset Formula $b$
10611\end_inset
10612
10613 blízko nuly
10614\end_layout
10615
10616\begin_layout Standard
10617Nejprve se tedy zaměřme na obtíže týkající se jednoduchého systému.
10618 Jedním z důvodů, proč systém vykazuje problematické chování pro
10619\begin_inset Formula $b$
10620\end_inset
10621
10622 blízko hodnoty
10623\begin_inset Formula $0$
10624\end_inset
10625
10626, by mohla být volba aproximace regulátoru.
10627 Ten je totiž volen jako
10628\begin_inset Formula \[
10629\pi(k,x)=\frac{r_{k+1}-K_{1}y_{k}}{K_{2}\hat{b}_{k}+K_{3}P_{k}+K_{4}}.\]
10630
10631\end_inset
10632
10633Algoritmus
10634\emph on
10635iLDP
10636\emph default
10637 je duální a odhaduje skutečnou hodnotu neznámého parametru
10638\begin_inset Formula $b$
10639\end_inset
10640
10641 pomocí jeho střední hodnoty
10642\begin_inset Formula $\hat{b}$
10643\end_inset
10644
10645 a variance
10646\begin_inset Formula $P$
10647\end_inset
10648
10649.
10650 Za předpokladu, že by odhadování proběhlo dobře a efektivně, odhad
10651\begin_inset Formula $\hat{b}$
10652\end_inset
10653
10654 se bude blížit skutečné hodnotě
10655\begin_inset Formula $b$
10656\end_inset
10657
10658, která je ovšem blízko u nuly.
10659 Další vlastností předpokládaného dobrého odhadu je, že si jím budeme téměř
10660 jisti, a tedy variance
10661\begin_inset Formula $P$
10662\end_inset
10663
10664 se bude také blížit nule.
10665 A vyhodnotil-li algoritmus v předchozí iteraci koeficient
10666\begin_inset Formula $K_{4}$
10667\end_inset
10668
10669 jako nepodstatný pro tvar funkce regulátoru, to jest
10670\begin_inset Formula $K_{4}$
10671\end_inset
10672
10673 je opět téměř nulový, dostáváme ve jmenovateli velmi malé číslo, téměř
10674 nulové.
10675 Funkce regulátoru
10676\begin_inset Formula $\pi$
10677\end_inset
10678
10679 pak vrací i pro malou odchylku
10680\begin_inset Formula $y$
10681\end_inset
10682
10683 od požadované hodnoty (například v důsledku šumu) velký řídící zásah.
10684 To je ale principiálně dobře, protože při
10685\begin_inset Formula $b$
10686\end_inset
10687
10688 blízko
10689\begin_inset Formula $0$
10690\end_inset
10691
10692 musíme volit extrémně vysoké řídící zásahy, a to téměř blížící se nekonečnu.
10693 Na druhou stranu si je ale třeba uvědomit, že uvažovaná funkce regulátoru
10694 je pouze aproximací, a tedy se dopouští jisté chyby.
10695 Tato chyba samozřejmě pak při velkém řídícím zásahu také narůstá.
10696 Dalším problémem je, že výpočty jsou prováděny na počítači, ten je při
10697 výpočtech s malými čísly blízko nuly nebo naopak s velkými čísly značně
10698 nepřesný.
10699\end_layout
10700
10701\begin_layout Standard
10702Možností, jak se vyhnout tomuto problému, by bylo volit jiný tvar funkce
10703 regulátoru, otázkou by pak ale bylo, jaký.
10704 Zvolený tvar regulátoru má totiž několik výhod.
10705 Za prvé koeficienty
10706\begin_inset Formula $K_{i}$
10707\end_inset
10708
10709 je možno určit metodou nejmenších čtverců, a tedy jejich výpočet z množiny
10710 dvojic
10711\begin_inset Formula $\left\{ x^{(n)},u^{(n)}\right\} $
10712\end_inset
10713
10714 je poměrně jednoduchý.
10715 Další výhodou je, že obecný tvar funkce regulátoru vznikl na základě vyjádření
10716 řízení
10717\begin_inset Formula $u$
10718\end_inset
10719
10720 z rovnice jednoduchého systému při požadavku dosažení požadované hodnoty
10721 v jednom časovém kroku.
10722 Získaná funkce by pak měla relativně dobře aproximovat skutečné optimální
10723 řízení.
10724\end_layout
10725
10726\begin_layout Standard
10727\begin_inset VSpace defskip
10728\end_inset
10729
10730
10731\end_layout
10732
10733\begin_layout Standard
10734Druhým z možných důvodů problematického chování u nuly je lokalita metody.
10735 Výpočty jsou totiž prováděny na okolí tvořeném množinou reprezentativních
10736 trajektorií.
10737 Generujeme-li reprezentativní trajektorie pro parametr
10738\begin_inset Formula $b$
10739\end_inset
10740
10741 blízko nuly, s velkou pravděpodobností dojde k tomu, že část trajektorií
10742 se vygeneruje s předpokladem kladného
10743\begin_inset Formula $b$
10744\end_inset
10745
10746 a část předpokládající
10747\begin_inset Formula $b$
10748\end_inset
10749
10750 záporné.
10751 Ovšem pro malé, téměř nulové hodnoty parametru
10752\begin_inset Formula $b$
10753\end_inset
10754
10755 je optimální řídící zásah, jak už bylo zmíněno, extrémně vysoký a v závislosti
10756 na tom, je-li předpokládáno
10757\begin_inset Formula $b$
10758\end_inset
10759
10760 kladné nebo záporné, mění se odpovídajícím způsobem i znaménka řídících
10761 zásahů.
10762 Jako shrnutí popsané situace dostáváme část reprezentativních trajektorií
10763 navrhující extrémně vysoký kladný řídící zásah a pak druhou část navrhující
10764 naopak extrémně vysoký záporný řídící zásah.
10765 Zřejmě z takovýchto dat nelze získat použitelnou a už vůbec ne správnou
10766 hodnotu optimálního řízení.
10767\end_layout
10768
10769\begin_layout Standard
10770Vyhnout se výše popsanému problému by bylo možno pouze jinou volbou okolí.
10771 Narážíme zde ale opět na obtíže, jak jiné okolí zvolit, abychom se vyhnuli
10772 výše popsanému problému.
10773\end_layout
10774
10775\begin_layout Standard
10776Protože ale spolu obě navržené možnosti způsobující problematické chování
10777 při
10778\begin_inset Formula $b$
10779\end_inset
10780
10781 blízko
10782\begin_inset Formula $0$
10783\end_inset
10784
10785 do určité míry souvisí, je pravděpodobný i vliv kombinace obou dvou.
10786\end_layout
10787
10788\begin_layout Subsubsection
10789Obtíže s volbou aproximací
10790\end_layout
10791
10792\begin_layout Standard
10793Již byla diskutována problematika volby aproximace okolí a aproximace funkce
10794 řízení.
10795 Problémy byly popsány pro konkrétní případ jednoduchého systému.
10796 Další aproximací, kterou je třeba volit, je aproximace Bellmanovy funkce.
10797 Jedná se o skalární funkci více proměnných, která v sobě zachycuje v podstatě
10798 celou dynamiku a vývoj systému.
10799 Je zpravidla velmi složitá, ale pro potřeby algoritmu se ji snažíme aproximovat
10800 lineární kombinací zvolených základních funkcí.
10801 Má-li být tato aproximace dostatečně jednoduchá pro výpočty jejích hodnot,
10802 ale i koeficientů, může být velmi nepřesnou aproximací skutečné Bellmanovy
10803 funkce.
10804\end_layout
10805
10806\begin_layout Standard
10807Protože Bellmanova funkce je základní částí algoritmu
10808\emph on
10809iLDP
10810\emph default
10811, chyby, kterých se dopustíme její aproximací, se následně přenášejí prakticky
10812 do všech ostatních částí algoritmu.
10813\end_layout
10814
10815\begin_layout Standard
10816Na druhou stranu se ale chyby v důsledku aproximace dopustíme velmi snadno.
10817 Bellmanova funkce může být totiž u složitějších systémů značně komplikovaná
10818 na to, aby ji bylo možno aproximovat lineární kombinací základních funkcí.
10819 Dalším problémem je pak počet těchto funkcí.
10820 Ten s rostoucí dimenzí stavového prostoru rychle narůstá a následně je
10821 třeba zajistit dostatek dat v podobě vzorkových trajektorií pro vypočtení
10822 jejich koeficientů.
10823\end_layout
10824
10825\begin_layout Standard
10826Volba vhodné aproximace Bellmanovy funkce se tedy jeví jako nejkomplikovanější
10827 z dílčích problémů ponechaných autory algoritmu
10828\emph on
10829iLDP
10830\emph default
10831 k dořešení při konkrétní implementaci.
10832 V článku
10833\begin_inset CommandInset citation
10834LatexCommand cite
10835key "TodorovTassaILDP"
10836
10837\end_inset
10838
10839 je sice poskytnut návod volby aproximace ve tvaru lineární kombinace základních
10840 funkcí, ale tato volba nemusí být vždy správná.
10841 Kdybychom si chtěli udělat představu o průběhu skutečné Bellmanovy funkce,
10842 abychom mohli snadněji určit vhodnou aproximaci, narážíme na problém, že
10843 Bellmanovu funkci máme zadanou pomocí Hamilto-Jacobi-Bellmanovy rovnosti.
10844\end_layout
10845
10846\begin_layout Standard
10847\begin_inset VSpace defskip
10848\end_inset
10849
10850
10851\end_layout
10852
10853\begin_layout Standard
10854Shrnutí výše zmiňovaných problémů nám tedy dává následující závěr: svoboda
10855 ve výběru aproximací nám poskytuje značnou volnost a činí algoritmus univerzáln
10856ím.
10857 Na druhou stranu je ale značně omezující, zejména když se nám nepodaří
10858 vhodnou aproximaci nalézt.
10859\end_layout
10860
10861\begin_layout Subsection
10862Konfrontace s prvotními očekáváními
10863\end_layout
10864
10865\begin_layout Standard
10866Nyní porovnáme dosažené výsledky algoritmu iLDP s prvotními očekáváními
10867 uvedenými v části
10868\begin_inset CommandInset ref
10869LatexCommand ref
10870reference "sub:Předběžný-odhad-vlatností"
10871
10872\end_inset
10873
10874.
10875 Vždy je uvedeno nejdříve prvotní očekávání a následně je komentováno, zda
10876 bylo potvrzeno:
10877\end_layout
10878
10879\begin_layout Paragraph
10880Výhody
10881\end_layout
10882
10883\begin_layout Itemize
10884duální metoda (lépe se vypořádá s neznalostí oproti neduálním metodám)
10885\end_layout
10886
10887\begin_deeper
10888\begin_layout Itemize
10889toto očekávání bylo potvrzeno, iLDP dosahuje lepších výsledků než neduální
10890 metody, což je patrné při rostoucí neznalosti
10891\end_layout
10892
10893\begin_layout Itemize
10894je však třeba podotknout, že musíme mít zajištěnu dostatečnou vzdálenost
10895 od kritických bodů pro iLDP, kde pak samozřejmě algoritmus selhává
10896\end_layout
10897
10898\end_deeper
10899\begin_layout Itemize
10900lepší zvládnutí šumu
10901\end_layout
10902
10903\begin_deeper
10904\begin_layout Itemize
10905zvládání šumu lze z provedených simulací těžko posoudit, ovšem lze předpokládat,
10906 že iLDP zvládne šum lépe než metody, které přítomnost šumu vůbec neuvažují
10907\end_layout
10908
10909\end_deeper
10910\begin_layout Itemize
10911rychlejší dosažení požadované hodnoty
10912\end_layout
10913
10914\begin_deeper
10915\begin_layout Itemize
10916na rychlost dosažení požadované hodnoty lze na základě výsledků pro jednoduchý
10917 systém těžko usuzovat, protože prakticky všechny použité metody dosahují
10918 požadované hodnoty (v příznivém případě, kdy nalézají použitelné řízení)
10919 hned v čase
10920\begin_inset Formula $k=2$
10921\end_inset
10922
10923, tedy v prvním možném říditelném kroce
10924\end_layout
10925
10926\begin_layout Itemize
10927pro složitější systém synchronního motoru, kde by bylo srovnání zřetelnější,
10928 se nepodařilo implementovat funkční verzi iLDP algoritmu
10929\end_layout
10930
10931\end_deeper
10932\begin_layout Itemize
10933možnost aplikace na mnoharozměrové stavové a řídící prostory
10934\end_layout
10935
10936\begin_deeper
10937\begin_layout Itemize
10938tuto vlastnost uvádějí sami autoři algoritmu iLDP, protože se jedná o lokální
10939 metodu, je možné vyhnout se problémům globálních metod a aplikovat algoritmus
10940 i na systémy s více rozměry, zůstává zde však problém volby aproximací,
10941 který je pak třeba řešit a který se ukazuje jako netriviální
10942\end_layout
10943
10944\end_deeper
10945\begin_layout Itemize
10946univerzálnost (vychází z obecných principů) a svoboda výběru konkrétních
10947 aproximací a minimalizací
10948\end_layout
10949
10950\begin_deeper
10951\begin_layout Itemize
10952algoritmus je zřejmě značně univerzální, protože umožňuje zvolit mnoho detailů
10953 až při konkrétní implementaci
10954\end_layout
10955
10956\begin_layout Itemize
10957naopak se tato vlastnost v mnoha případech ukazuje být na škodu a dokonce
10958 může být i jednou z největších slabin algoritmu iLDP, jelikož nám základní
10959 popis algoritmu neříká, jak konkrétní detaily volit
10960\end_layout
10961
10962\end_deeper
10963\begin_layout Paragraph
10964Nevýhody
10965\end_layout
10966
10967\begin_layout Itemize
10968vyšší časová náročnost
10969\end_layout
10970
10971\begin_deeper
10972\begin_layout Itemize
10973vyšší časová náročnost byla potvrzena v průběhu simulací pro potřeby této
10974 práce
10975\end_layout
10976
10977\begin_layout Itemize
10978ve srovnání s ostatními přístupy, které řeší danou úlohu vesměs analyticky
10979 a jsou založeny hlavně na maticových operacích, algoritmus iLDP používá
10980 aproximací, numerické minimalizace a výpočtů na vzorkových trajektoriích,
10981 a tedy výpočetní čas je řádově několikrát delší než pro ostatní metody
10982 (konkrétní příklad je výpočet
10983\begin_inset Formula $N$
10984\end_inset
10985
10986 vzorkových trajektorií pro vytvoření průběhů
10987\begin_inset Formula $y$
10988\end_inset
10989
10990 pro jednoduchý systém, který trval pro iLDP o tři řády déle než pro všechny
10991 ostatní algoritmy)
10992\end_layout
10993
10994\end_deeper
10995\begin_layout Itemize
10996numerické výpočty (minimalizace)
10997\end_layout
10998
10999\begin_deeper
11000\begin_layout Itemize
11001pro numerickou minimalizaci je jednak nutno zvolit vhodné minimalizační
11002 algoritmy (v implementacích v této práci byly použity funkce programu
11003\emph on
11004Matlab
11005\emph default
11006 
11007\family typewriter
11008fminunc
11009\family default
11010 a
11011\family typewriter
11012fmincon
11013\family default
11014 pro neomezenou a omezenou minimalizaci), dále numerická minimalizace hledá
11015 zpravidla jen lokální minima, je náročnější na výpočetní čas a je méně
11016 přesná, a to zejména při výpočtech na aproximovaných funkcích, kde i malá
11017 odchylka od správného průběhu původní funkce může dát špatný výsledek velmi
11018 vzdálený od správné hodnoty
11019\end_layout
11020
11021\end_deeper
11022\begin_layout Itemize
11023nepřesnost v důsledku aproximace klíčových funkcí v algoritmu a problémy
11024 s jejich volbou
11025\end_layout
11026
11027\begin_deeper
11028\begin_layout Itemize
11029algoritmus iLDP pracuje s aproximacemi funkcí řízení a dále s aproximací
11030 Bellmanovy funkce, na které je postaven prakticky celý algoritmus; v důsledku
11031 toho se chyby způsobené použitím aproximace přenášejí prakticky do všech
11032 ostatních výpočtů v algoritmu
11033\end_layout
11034
11035\begin_layout Itemize
11036dalším problémem je pak samotná volba aproximací, která již byla diskutována
11037 výše
11038\end_layout
11039
11040\end_deeper
11041\begin_layout Itemize
11042implementační složitost
11043\end_layout
11044
11045\begin_deeper
11046\begin_layout Itemize
11047z jednoho pohledu je implementace algoritmu iLDP jednoduchá, protože je
11048 popsán jednoduchou osnovou složenou pouze ze čtyř bodů
11049\end_layout
11050
11051\begin_layout Itemize
11052naopak je ale třeba vyřešit mnoho dílčích detailů, například vytvořit aproximace
11053 funkcí a najít vhodnou reprezentaci okolí pro výpočet; samotná implementace
11054 se tedy může velmi zkomplikovat a dokonce se nemusí ani podařit vytvoření
11055 funkční verze algoritmu
11056\end_layout
11057
11058\end_deeper
11059\begin_layout Itemize
11060lokálnost metody a tedy i nalezeného řešení
11061\end_layout
11062
11063\begin_deeper
11064\begin_layout Itemize
11065jak již bylo zmíněno, iLDP hledá optimální řízení v okolí nějaké reprezentativní
11066 trajektorie, a tedy zpravidla není zajištěna optimalita nalezeného řízení
11067 v celém stavovém a řídícím prostoru
11068\end_layout
11069
11070\end_deeper
11071\begin_layout Itemize
11072volba okolí (lokální metoda)
11073\end_layout
11074
11075\begin_deeper
11076\begin_layout Itemize
11077při implementaci iLDP je třeba zvolit konkrétní reprezentaci okolí
11078\end_layout
11079
11080\begin_layout Itemize
11081v používaných implementacích je volena jednoduchá možnost, kdy je okolí
11082 reprezentováno množinou vzorkových trajektorií, na které jsou pak prováděny
11083 další výpočty
11084\end_layout
11085
11086\end_deeper
11087\begin_layout Standard
11088\begin_inset Newpage newpage
11089\end_inset
11090
11091
11092\end_layout
11093
11094\begin_layout Addchap
11095Závěr
11096\end_layout
11097
11098\begin_layout Standard
11099V kapitole
11100\begin_inset CommandInset ref
11101LatexCommand ref
11102reference "cha:Teorie-duálního-řízení"
11103
11104\end_inset
11105
11106 této práce je stručně popsána základní teorie duálního řízení a další teoretick
11107é poznatky potřebné k popisu konkrétních algoritmů pro nalezení optimálního
11108 řízení.
11109 V další kapitole následuje přiblížení jednotlivých algoritmů použitých
11110 pro srovnání s ústředním algoritmem této práce:
11111\emph on
11112iterativním lokálním dynamickým programováním
11113\emph default
11114 (
11115\emph on
11116iLDP
11117\emph default
11118).
11119 Jemu je pak věnována druhá polovina kapitoly
11120\begin_inset CommandInset ref
11121LatexCommand ref
11122reference "cha:Algoritmy-pro-návrh"
11123
11124\end_inset
11125
11126.
11127 
11128\end_layout
11129
11130\begin_layout Standard
11131Algoritmus
11132\emph on
11133iLDP
11134\emph default
11135 byl implementován pro jednoduchý systém.
11136 Pro tento systém byly následně implementovány i další algoritmy pro srovnání.
11137 Implementace
11138\emph on
11139iLDP
11140\emph default
11141 pro složitější systém, synchronní motor s permanentními magnety, se nezdařila
11142 z důvodu obtíží při volbě aproximací.
11143 Nepodařilo se nalézt takové aproximace zpětnovazebního řízení a Bellmanovy
11144 funkce, aby na jejich základě algoritmus
11145\emph on
11146iLDP
11147\emph default
11148 nalezl použitelné řízení.
11149 Pro složitější systém byl však implementován algoritmus
11150\emph on
11151LQG
11152\emph default
11153, který nalézá funkční řízení.
11154 Jedná se ale o neduální metodu, a tedy s rostoucí neznalostí selhává.
11155 Konkrétní popisy testovaných systémů a úpravy jejich rovnic pro potřeby
11156 jednotlivých algoritmů lze nalézt v kapitole
11157\begin_inset CommandInset ref
11158LatexCommand ref
11159reference "cha:Systémy-pro-testování"
11160
11161\end_inset
11162
11163.
11164\end_layout
11165
11166\begin_layout Standard
11167Kapitola
11168\begin_inset CommandInset ref
11169LatexCommand ref
11170reference "cha:Výsledky"
11171
11172\end_inset
11173
11174 obsahuje získané výsledky na základě simulací.
11175 Algoritmus
11176\emph on
11177iLDP
11178\emph default
11179 je porovnán s ostatními testovanými algoritmy podle dosažených výsledků
11180 pro jednoduchý systém.
11181 Dále jsou uvedeny výsledky pro složitější systém získané pomocí
11182\emph on
11183LQG
11184\emph default
11185.
11186 Na závěr jsou diskutovány problémy týkající se algoritmu
11187\emph on
11188iLDP
11189\emph default
11190, které vedly v jistých případech k problematickému chovaní u jednoduchého
11191 systému.
11192 Následuje diskuze obtíží implementace
11193\emph on
11194iLDP
11195\emph default
11196 pro složitější systém.
11197 Nakonec jsou v bodech porovnány skutečné výsledky získané ze simulací a
11198 v průběhu implementace s prvotními očekáváními týkajícími se algoritmu
11199 
11200\emph on
11201iLDP
11202\emph default
11203.
11204 
11205\end_layout
11206
11207\begin_layout Standard
11208Algoritmus
11209\emph on
11210iLDP
11211\emph default
11212 byl v této práci otestován i na jiných problémech, než pro které byl vyvinut
11213 svými autory.
11214 Dále byly objeveny některé kladné, ale hlavně i záporné stránky týkající
11215 se jeho implementace a použitelnosti na konkrétní úlohy.
11216 V závěrečné kapitole práce byly výsledky dosažené pomocí
11217\emph on
11218iLDP
11219\emph default
11220 srovnány s výsledky dosaženými užitím principu separace, tedy pomocí řízení
11221 
11222\emph on
11223LQG
11224\emph default
11225.
11226 Pro jednoduchý systém bylo provedeno srovnání i s dalšími metodami návrhu
11227 řízení.
11228 Naopak pro složitější systém jsou k dispozici pouze výsledky získané pomocí
11229 
11230\emph on
11231LQG
11232\emph default
11233.
11234\end_layout
11235
11236\begin_layout Standard
11237Výsledky je možno shrnout tak, že
11238\emph on
11239iLDP
11240\emph default
11241 je řádově několikrát náročnější na výpočetní čas, ale při větší neznalosti
11242 dosahuje lepších výsledků.
11243 Je ovšem třeba zajistit, aby se nerealizovaly problematické hodnoty pro
11244 tento algoritmus.
11245 Naproti tomu
11246\emph on
11247LQG
11248\emph default
11249 je rychlejší, ale s rostoucí neznalostí dosahuje špatných výsledků nebo
11250 dokonce selhává.
11251 Co se týče algoritmu
11252\emph on
11253iLDP
11254\emph default
11255, je třeba ještě zmínit problém týkající se volby aproximací, který se ukazuje
11256 být největší slabinou této metody.
11257\end_layout
11258
11259\begin_layout Standard
11260\begin_inset Newpage newpage
11261\end_inset
11262
11263
11264\end_layout
11265
11266\begin_layout Standard
11267\begin_inset ERT
11268status open
11269
11270\begin_layout Plain Layout
11271
11272
11273\backslash
11274addcontentsline{toc}{chapter}{Literatura}
11275\end_layout
11276
11277\begin_layout Plain Layout
11278
11279
11280\backslash
11281markboth{Literatura}{Literatura}
11282\end_layout
11283
11284\end_inset
11285
11286
11287\end_layout
11288
11289\begin_layout Standard
11290\begin_inset CommandInset bibtex
11291LatexCommand bibtex
11292btprint "btPrintAll"
11293bibfiles "bpzdroje"
11294options "czechiso"
11295
11296\end_inset
11297
11298
11299\end_layout
11300
11301\end_body
11302\end_document
Note: See TracBrowser for help on using the browser.