-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdiff.tex
More file actions
2046 lines (1839 loc) · 107 KB
/
diff.tex
File metadata and controls
2046 lines (1839 loc) · 107 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
\documentclass[letterpaper, journal]{IEEEtran}
%DIF LATEXDIFF DIFFERENCE FILE
%DIF DEL tmp2.tex Wed Aug 6 20:30:21 2025
%DIF ADD tmp1.tex Wed Aug 6 20:30:21 2025
\def\cmt{true} % true for comments, false for no comments
\def\pub{false} % true for publication, false for draft
\newcommand*{\template}{template}
\input{\template/preamble/preamble_journal.tex}
\newcommand*{\figSizeTwoCol}{.49}
\newcommand*{\figSizeOneCol}{0.98}
%DIF PREAMBLE EXTENSION ADDED BY LATEXDIFF
%DIF UNDERLINE PREAMBLE %DIF PREAMBLE
\RequirePackage[normalem]{ulem} %DIF PREAMBLE
\RequirePackage{color}\definecolor{RED}{rgb}{1,0,0}\definecolor{BLUE}{rgb}{0,0,1} %DIF PREAMBLE
\providecommand{\DIFadd}[1]{{\protect\color{blue}\uwave{#1}}} %DIF PREAMBLE
\providecommand{\DIFdel}[1]{{\protect\color{red}\sout{#1}}} %DIF PREAMBLE
%DIF SAFE PREAMBLE %DIF PREAMBLE
\providecommand{\DIFaddbegin}{} %DIF PREAMBLE
\providecommand{\DIFaddend}{} %DIF PREAMBLE
\providecommand{\DIFdelbegin}{} %DIF PREAMBLE
\providecommand{\DIFdelend}{} %DIF PREAMBLE
\providecommand{\DIFmodbegin}{} %DIF PREAMBLE
\providecommand{\DIFmodend}{} %DIF PREAMBLE
%DIF FLOATSAFE PREAMBLE %DIF PREAMBLE
\providecommand{\DIFaddFL}[1]{\DIFadd{#1}} %DIF PREAMBLE
\providecommand{\DIFdelFL}[1]{\DIFdel{#1}} %DIF PREAMBLE
\providecommand{\DIFaddbeginFL}{} %DIF PREAMBLE
\providecommand{\DIFaddendFL}{} %DIF PREAMBLE
\providecommand{\DIFdelbeginFL}{} %DIF PREAMBLE
\providecommand{\DIFdelendFL}{} %DIF PREAMBLE
%DIF COLORLISTINGS PREAMBLE %DIF PREAMBLE
\RequirePackage{listings} %DIF PREAMBLE
\RequirePackage{color} %DIF PREAMBLE
\lstdefinelanguage{DIFcode}{ %DIF PREAMBLE
%DIF DIFCODE_UNDERLINE %DIF PREAMBLE
moredelim=[il][\color{red}\sout]{\%DIF\ <\ }, %DIF PREAMBLE
moredelim=[il][\color{blue}\uwave]{\%DIF\ >\ } %DIF PREAMBLE
} %DIF PREAMBLE
\lstdefinestyle{DIFverbatimstyle}{ %DIF PREAMBLE
language=DIFcode, %DIF PREAMBLE
basicstyle=\ttfamily, %DIF PREAMBLE
columns=fullflexible, %DIF PREAMBLE
keepspaces=true %DIF PREAMBLE
} %DIF PREAMBLE
\lstnewenvironment{DIFverbatim}{\lstset{style=DIFverbatimstyle}}{} %DIF PREAMBLE
\lstnewenvironment{DIFverbatim*}{\lstset{style=DIFverbatimstyle,showspaces=true}}{} %DIF PREAMBLE
\lstset{extendedchars=\true,inputencoding=utf8}
%DIF END PREAMBLE EXTENSION ADDED BY LATEXDIFF
\begin{document}
\bstctlcite{IEEEexample:BSTcontrol}
\title{
Constrained Optimization-Based Neuro-Adaptive Control (CONAC) for Euler-Lagrange Systems Under Weight and Input Constraints
} %% Article title
\author{
Myeongseok Ryu, Donghwa Hong, and Kyunghwan Choi
\thanks{
Myeongseok Ryu and Kyunghwan Choi are with the Cho Chun Shik Graduate School of Mobility, Korea Advanced Institute of Science and Technology (KAIST), Daejeon 34051, Korea (e-mail: dding\_98@kaist.ac.kr and kh.choi@kaist.ac.kr).
Donghwa Hong is with the Department of Mechanical and Robotics Engineering, Gwangju Institute of Science and Technology (GIST), Gwangju 61005, Korea (e-mail: fairytalef00@gm.gist.ac.kr).
This work was supported in part by a Korea Research Institute for Defense Technology planning and advancement (KRIT) grant funded by Korea government DAPA (Defense Acquisition Program Administration) (No. KRIT-CT-22-087, Synthetic Battlefield Environment based Integrated Combat Training Platform) and in part by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIT) (RS-2025- 00554087). (Corresponding author: Kyunghwan Choi)
}}
\markboth{Journal of \LaTeX\ Class Files,~Vol.~18, No.~9, September~2020}%
{How to Use the IEEEtran \LaTeX \ Templates}
\maketitle
%% Abstract
\begin{abstract}
This study presents a constrained optimization-based neuro-adaptive control (CONAC) for unknown Euler-Lagrange systems subject to weight and convex input constraints.
A deep neural network (DNN) is employed to approximate the ideal stabilizing control law while simultaneously learning the unknown system dynamics and addressing both types of constraints within a unified constrained optimization framework.
The adaptation law of DNN weights is formulated to solve the defined constrained optimization problem, ensuring satisfaction of first-order optimality conditions at steady state.
The controller's stability is rigorously analyzed using Lyapunov theory, guaranteeing bounded tracking errors and bounded DNN weights.
The proposed controller is validated through a real-time implementation on a 2-DOF robotic manipulator, demonstrating its effectiveness in achieving accurate trajectory tracking while satisfying all imposed constraints.
\end{abstract}
\begin{IEEEkeywords}
Neuro-adaptive control, constrained optimization, deep neural network, input constraint, weight constraint.
\end{IEEEkeywords}
\section*{Notation}
% In this study, the following notation is used:
% \begin{itemize}
% \item := denotes ``is defined as" or ``is equal to".
% \item $\R$, $\R^n$ and $\R^{n\times m}$ denote the set of real numbers, $n\times 1$ dimensional vectors and $n\times m$ dimensional matrices, respectively, and $\R_{\ge0}:=[0,\infty)$ and $\R_{>0}:=(0,\infty)$.
% \item $(\cdot)^\top$ denotes the transpose of a vector or matrix.
% \item $\norm{\cdot}$ and $\norm{\cdot}_F$ denote the Euclidean and Frobenius norm, respectively.
% \item $\otimes$ denotes the Kronecker product \cite[Chap. 7, Def. 7.1.2]{Bernstein:2009aa}.
% \item A vector and a matrix are denoted by $\mv{x}=[x_i]_{i\in\{1,\cdots,n\}}\in\R^n$ and $
% \mm A
% :=
% [a_{ij}]
% _{
% i\in\{1,\cdots,n\},j\in\{1,\cdots ,m\}
% }\allowbreak\in\R^{n\times m}
% $, respectively.
% \item $\myrow_i(\mm A)$ denotes the $i$th row of the matrix $\mm A\in\R^{n\times m}$.
% \item For the matrix $\mm{A}\in\R^{n\times m}$, $\myvec(\mm A):=(\myrow_1(\mm A^\top),\cdots,\myrow_m(\mm A^\top) )^\top\in\R^{nm}$ denotes the vectorization of $\mm A$.
% % \item $\mycol_i(A)$ and $\myrow_j(A)$ denote the $i$th column and $j$th row of $A\in\R^{n\times m}$, respectively.
% % \item $\myvec(A):= [\mycol_1(A)^\top ,\cdots,\mycol_m(A)^\top ]^\top $ for $A\in\R^{n\times m}$.
% \item $\lambda_{\min}(\mm A)$ denotes the minimum eigenvalue of the matrix $\mm A\in\R^{n\times n}$.
% \item $\mm I_n$ denotes the $n\times n$ identity matrix, and $\mm 0_{n\times m}$ denotes the $n\times m$ zero matrix.
% \end{itemize}
The Kronecker product is denoted by $\otimes$ \cite[Chap. 7, Def. 7.1.2]{Bernstein:2009aa}.
A vector and a matrix are denoted by $\mv{x}=[x_i]_{i\in\{1,\cdots,n\}}\in\R^n$ and $
\mm A
:=
[a_{ij}]
_{
i\in\{1,\cdots,n\},j\in\{1,\cdots ,m\}
}\allowbreak\in\R^{n\times m}
$, respectively.
Given a matrix $\mm A\in\R^{n\times m}$, $\myrow_i(\mm A)$ denotes the $i$th row of $\mm A$.
For the matrix $\mm{A}\in\R^{n\times m}$, $\myvec(\mm A):=(\myrow_1(\mm A^\top),\cdots,\myrow_m(\mm A^\top) )^\top\in\R^{nm}$ denotes the vectorization of $\mm A$.
$\lambda_{\min}(\mm A)$ denotes the minimum eigenvalue of the matrix $\mm A\in\R^{n\times n}$.
The $n\times n$ identity and $n\times m$ zero matrices are denoted by $\mm I_n$ and $\mm 0_{n\times m}$, respectively.
% SECTION INTRODUCTION ===================================
\section{Introduction}
\subsection{Background}
\IEEEPARstart{M}{any} engineering systems, including those in aerospace, robotics, and automotive applications, can be modeled using Euler-Lagrange systems.
These systems are governed by dynamic equations derived from energy principles and describe the motion of mechanical systems with constraints.
In practice, however, such systems often exhibit uncertainties due to unmodeled dynamics, parameter variations, or external disturbances.
These uncertainties can significantly degrade control performance and, in some cases, lead to instability.
In \DIFaddbegin \DIFadd{the }\DIFaddend worst cases, any prior knowledge of the system dynamics may not be available, making it challenging to design effective controllers.
% To address these challenges, adaptive control methods have been widely employed to ensure robust performance in the presence of system uncertainties \cite{Ioannou:2006aa, Tao:2003aa}.
To address these challenges, adaptive control methods have been widely employed to ensure robust performance for uncertain or unknown systems \cite{Ioannou:2006aa, Tao:2003aa}.
More recently, neuro-adaptive control (NAC) approaches have been introduced to approximate uncertain or unknown system dynamics or entire control laws using neural networks (NNs) \cite{Lewis:1998aa,Farrell:2006aa}.
NNs are well-known for their universal approximation property, which allows them to approximate any smooth function over a compact set with minimal error.
Various types of NNs have been utilized in NAC, including simpler architectures like single-hidden layer (SHL) NNs \cite{Lewis:1996aa,Ge:2010aa, Yesildirek:1995aa,Ryu:2024aa,Ryu:2025aa} and radial basis function (RBF) NNs \cite{Liu:2013ab,Ge:2002aa}, as well as more complex models like deep NNs (DNNs) \cite{Patil:2022aa} and their variations.
Conventionally, SHL and RBF NNs are often employed to approximate uncertain or unknown system dynamics or controllers due to their simplicity \cite{Esfandiari:2014aa,Esfandiari:2015aa,Yesildirek:1995aa,Gao:2006aa}.
However, since DNNs offer greater expressive power, making them more effective for complex system approximations \cite{Rolnick:2018aa}, variations of DNNs, such as long short-term memory (LSTM) networks for time-varying dynamics \cite{Griffis:2023aa}, physics-informed NNs (PINNs) for leveraging physical system knowledge \cite{Hart:2024aa}, and convolutional NNs (CNNs) for learning \DIFaddbegin \DIFadd{from }\DIFaddend historical sensor data \cite{Ryu:2024ac}, have further extended the capabilities of NAC systems.
A critical aspect of NAC is the NN weight adaptation law, which governs how NN weights are updated.
Most studies derived these laws using Lyapunov-based methods, ensuring the boundedness of the tracking error and weight estimation error, thus maintaining system stability under uncertainty.
However, two significant challenges persist in using NNs for adaptive control.
First, the boundedness of NN weights is not inherently guaranteed, which can result in unbounded outputs.
When NN outputs are used directly in the control law, this may lead to excessive control inputs, violating input constraints.
Such constraints are commonly encountered in industrial systems, where actuators are limited by physical and safety requirements in terms of amplitude, rate, or energy \cite{Esfandiari:2021aa}.
Failing to address these constraints can degrade control performance or even destabilize the system.
Therefore, addressing these two key issues—ensuring weight boundedness and satisfying input constraints—is essential for the reliable design of NAC.
The following section provides a detailed review of existing solutions to these challenges.
\subsection{Literature Review}
\subsubsection{Ensuring Weight Norm Boundedness}
A common challenge in NAC is maintaining the boundedness of the NN weights to ensure stability.
In many studies, projection operators were employed to enforce upper bounds on the weight norms, ensuring that the weights do not grow unboundedly.
For example, in \cite{Zhou:2023aa,Griffis:2023aa,Patil:2022aa}, projection operators were used to constrain the weight norms to remain below predetermined constants.
However, these constants were often selected as large as possible due to the lack of theoretical guarantees regarding the global optimality of the weight values.
While this approach ensured that the NN remained stable, it did not necessarily result in optimal performance.
In addition to projection operators, some studies utilized modification techniques like $\sigma$-modification \cite{Ge:2002aa} and $\epsilon$-modification \cite{Esfandiari:2015aa,Gao:2006aa}.
These methods ensured that the NN weights remained within an invariant set by incorporating stabilizing functions into the adaptation law.
Although these techniques were effective in ensuring boundedness and avoiding weight divergence, they similarly lacked a formal analysis of the optimality of the adapted weights by biasing the weights toward the origin \cite{Ryu:2024aa}.
This leaves room for improvement in terms of performance optimization.
\hfill
\subsubsection{Satisfying Input Constraints}
The second major issue is satisfying input constraints, particularly in systems where actuators are subject to physical limitations.
This issue becomes more pronounced in NAC architectures where NNs are used to augment conventional model-based controllers—such as feedback linearization or backstepping—rather than acting as the sole control input.
In such cases, if the system model is inaccurate or the dynamics targeted by the NN are already contributing to stability, the combined control effort may result in overly aggressive inputs, increasing the risk of input saturation \cite{Khalil:2002aa}.
To address the aforementioned issue, several approaches have been proposed in \cite{Gao:2006aa,Arefinia:2020aa,He:2016aa,Peng:2020aa,Esfandiari:2014aa,Karason:1994aa,Esfandiari:2015aa} to handle input constraints in NAC systems.
Particularly, the auxiliary systems have been widely introduced.
In \cite{Arefinia:2020aa,He:2016aa,Peng:2020aa}, the auxiliary states were generated whenever input saturation was detected, and these states were used as feedback terms in the control law to directly compensate for the effects of input saturation constraints.
On the other hand, in \cite{Esfandiari:2014aa,Karason:1994aa,Esfandiari:2015aa}, the auxiliary systems were incorporated into the adaptation law by adding the auxiliary states to the feedback error for learning.
This approach helped the NN reduce input saturation by indirectly regulating the auxiliary states, during the adaptation process.
However, these approaches typically handle input bound constraints on a per-input basis, \ie applying bounds to each scalar control variable individually, and may not account for more complex, nonlinear constraints, like input norm constraints, which are commonly found in physical systems such as robotic actuators or motor systems.
Furthermore, from a learning perspective, augmenting conventional control methods with NNs by simply adding NN outputs to existing control inputs can interfere with the adaptation process.
This occurs because the adaptation law typically depends on the feedback error, which becomes insensitive to the NN output when the conventional controller dominates the system behavior.
As a result, the NN ends up counteracting the conventional control effort rather than directly learning the system dynamics, thereby weakening its ability to adapt.
To address this, input constraints should be handled within a unified adaptive framework—such as those proposed in \cite{Esfandiari:2014aa,Karason:1994aa,Esfandiari:2015aa}—where both adaptation and constraint satisfaction are treated jointly without relying on conventional control inputs.
\hfill
\subsubsection{Potential of Constrained Optimization}
% \subsubsection{Limitations of Existing Approaches and Potential of Constrained Optimization}
% \MSRY{각 문단에 이미 문제점을 지적해서 요약을 안해도 괜찮을 것 같습니다.}
% \ctxt{red}
% {
% Although both the existing methods for weight boundedness and input constraints have shown effectiveness, they come with significant limitations.
% Projection operators and modification techniques do not guarantee the optimality of the adapted weights.
% Auxiliary systems typically handle only simple forms of input constraints, such as individual input bound constraints, limiting their ability to address more complex, nonlinear constraints.
% Moreover, using conventional control methods in conjunction with NNs can disrupt the adaptation process.
% }
A promising approach to overcoming the limitations of the existing methods lies in constrained optimization.
By formulating the NAC problem as a unified optimization problem with constraints, it is possible to adapt the NN weights while minimizing an objective function, \eg tracking error, subject to both weight and input constraints, simultaneously.
Constrained optimization provides a theoretical framework for defining optimality and presents numerical methods for finding solutions that satisfy the constraints \cite{Nocedal:2006aa}.
In existing literature, constrained optimization techniques, such as the Augmented Lagrangian Method (ALM) \cite{Evens:2021aa} and the Alternating Direction Method of Multipliers (ADMM) \cite{Wang:2019aa,Taylor:2016aa}, have been used to train NNs offline.
% These methods impose constraints to address issues like gradient vanishing in backpropagation.
\DIFdelbegin %DIFDELCMD < \MSRY{
%DIFDELCMD < 여기를 수정해야 하지 않나요? 저희의 사전 연구가 있기 때문입니다.
%DIFDELCMD < }
%DIFDELCMD < \ctxt{red}
%DIFDELCMD < {
%DIFDELCMD < %%%
\DIFdel{However, to the best of the authors' knowledge, no prior work has applied constrained optimization to NAC systems with real-time weight adaptation.
}%DIFDELCMD < }
%DIFDELCMD < \ctxt{blue}
%DIFDELCMD < {
%DIFDELCMD < %%%
\DIFdel{However, }\DIFdelend %DIF > \MSRY{
%DIF > 여기를 수정해야 하지 않나요? 저희의 사전 연구가 있기 때문입니다.
%DIF > }
%DIF > \ctxt{red}
%DIF > {
%DIF > However, to the best of the authors' knowledge, no prior work has applied constrained optimization to NAC systems with real-time weight adaptation.
%DIF > }
%DIF > \ctxt{blue}
%DIF > {
\DIFaddbegin \DIFadd{However, }\DIFaddend there are few works that have applied constrained optimization to NAC systems with real-time weight adaptation \cite{Ryu:2024aa,Ryu:2025aa}.
\DIFdelbegin %DIFDELCMD < }
%DIFDELCMD < %%%
\DIFdelend %DIF > }
This gap suggests that constrained optimization could be key to addressing both weight boundedness and input constraints in a unified, theoretically grounded framework, particularly in real-time NAC.
\subsection{Contributions}
The main contributions of this study are listed as follows:
\begin{itemize}
\item A constrained optimization-based neuro-adaptive control (CONAC) is proposed, where the control problem is formulated as a constrained optimization problem. In this formulation, weight and convex input constraints are incorporated as inequality constraints, while minimizing a given objective function.
\item Convex input constraints can be applied to the proposed CONAC, including input bound constraints and norm constraints. Moreover, the proposed CONAC can handle any combination of these constraints, which can be useful in practical applications where multiple constraints need to be satisfied simultaneously.
\item Since the proposed CONAC approximates the entire ideal control law without any conventional controller, prior knowledge of the system dynamics or the system identification process for \DIFaddbegin \DIFadd{designing a }\DIFaddend nominal conventional controller \DIFdelbegin \DIFdel{design }\DIFdelend can be avoided, which is often difficult and time-consuming to implement in practice.
\item The adaptation laws for DNN weights and Lagrange multipliers are systematically derived to solve the defined problem, using constrained optimization theory. These laws guarantee convergence to the first-order optimality conditions at steady state, specifically the Karush–Kuhn–Tucker (KKT) conditions, as described in \cite[Chap. 12, Thm. 12.1]{Nocedal:2006aa}.
\item The proposed CONAC's stability is rigorously analyzed using Lyapunov theory, ensuring that the tracking error and DNN weights remain bounded. This analysis guarantees that the proposed CONAC can achieve stable online adaptation.
\item The proposed CONAC is implemented in real-time on a 2-DOF robotic manipulator, demonstrating its effectiveness in achieving accurate trajectory tracking while satisfying all imposed constraints. The experimental results validate the theoretical findings and confirm the practical applicability of the proposed CONAC.
\end{itemize}
\hfill
This study extends our preliminary \DIFdelbegin \DIFdel{works in \mbox{%DIFAUXCMD
\cite{Ryu:2024aa,Ryu:2025aa}}\hskip0pt%DIFAUXCMD
, where }\DIFdelend \DIFaddbegin \DIFadd{work in \mbox{%DIFAUXCMD
\cite{Ryu:2025aa}}\hskip0pt%DIFAUXCMD
, which introduced }\DIFaddend inequality constraints on the weight and input \DIFdelbegin \DIFdel{norm were introduced }\DIFdelend \DIFaddbegin \DIFadd{norms }\DIFaddend within a constrained optimization framework \DIFdelbegin \DIFdel{to ensure boundedness of the NN weights and satisfy input norm constraint, respectively.
In addition to the weight and input norm constraints considered in \mbox{%DIFAUXCMD
\cite{Ryu:2024aa,Ryu:2025aa}}\hskip0pt%DIFAUXCMD
, the present workincorporates any convex input constraints into }\DIFdelend \DIFaddbegin \DIFadd{for neuro-adaptive control (NAC) systems using a SHLNN.
In }\DIFaddend the \DIFaddbegin \DIFadd{present work, the }\DIFaddend same framework \DIFdelbegin \DIFdel{to address the convex input saturation problem.
Moreover, while the previous study }\DIFdelend \DIFaddbegin \DIFadd{is generalized to accommodate arbitrary convex input constraints and extended to DNNs, while still retaining the capability to regulate the weight norm.
Furthermore, unlike the previous study, which }\DIFaddend was limited to numerical simulations, the proposed CONAC \DIFdelbegin \DIFdel{was }\DIFdelend \DIFaddbegin \DIFadd{is }\DIFaddend experimentally validated through real-time implementation on a 2-DOF robotic manipulator.
\subsection{Organization}
The remainder of this paper is organized as follows.
Section \ref{sec:Problem Formulation} presents the target system and control objective.
Section \ref{sec:ctrl design} introduces the proposed CONAC and the architecture of \DIFaddbegin \DIFadd{the }\DIFaddend DNN used in the controller.
In Section \ref{sec:adap_laws}, the adaptation law is developed.
Section \ref{sec:stability} analyzes the stability of CONAC.
Section \ref{sec:sim} presents a real-time implementation of CONAC on a 2-DOF robotic manipulator.
Finally, Section \ref{sec:conclusion} concludes the paper and discusses potential future work.
Candidates for convex input constraints are provided in Appendix \ref{sec:appen:cstr}.
% ====================================
% SECTION PROBLEM FORMULATION
% ====================================
\section{Problem Formulation}\label{sec:Problem Formulation}
\subsection{Model Dynamics and Control Objective}
We consider an unknown Euler-Lagrange system modeled as
\begin{equation}
\rbM\ddq +\rbVm \dq+ \rbF + \rbG + \rbd
=
\mysat(\rbu)
,
\label{eq:sys1}
\end{equation}
where $\q\in \R^n$ denotes the generalized coordinate, $\rbd$ represents the disturbance and $\rbu\in\R^n$ denotes the generalized control input.
The terms $\rbM:=\rbM(\q)\in\R^{n\times n}$, $\rbVm:=\rbVm(\q,\dq)\in\R^{n\times n}$, $\rbF:=\rbF(\dq)\in\R^{n}$, and $\rbG:=\rbG(\q)\in\R^{n}$ represent the unknown inertia matrix, Coriolis/centripetal matrix, friction vector, and gravity vector, respectively.
The function $\mysat(\cdot):\R^n\to\R^n$ represents the inherent physical limitations of the actuators such that $\norm{\mysat(\rbu)}\le \overline\tau$, where $\overline\tau\in\R_{>0}$ denotes the maximum norm of control input.
In this study, the saturation function $\mysat(\cdot)$ is assumed to be convex, which is practically common in many engineering systems.
This is because actuator limits are typically convex—for example, minimum and maximum torque constraints—which define box- or ball-shaped bounds in the input space.
To account for these limitations, it is essential to incorporate physically motivated constraints into the controller design.
Appendix \ref{sec:appen:cstr} introduces candidate constraints that can be applied to ensure compliance with these physical limitations.
The Euler-Lagrange system \eqref{eq:sys1} satisfies several important physical properties, as presented in \cite[Chap. 3, Tab. 3.2.1]{Lewis:1998aa}.
The key properties are introduced below:
\begin{prop}
The inertia matrix $\rbM$ is symmetric, positive definite, and bounded.
\label{prop:M}
\end{prop}
\begin{prop}
The Coriolis/centripetal matrix $\rbVm$ can always be selected, so that the matrix $\ddtt{\rbM}-2\rbVm$ is skew-symmetric, \ie $\mv{x}^\top(\ddtt{\rbM}-2\rbVm)\mv{x}=0,\ \forall \mv{x}\in\R^n$.
\label{prop:skew}
\end{prop}
\begin{prop}
The disturbance $\rbd$ is bounded, \ie $\norm{\rbd}\le \overline\tau_d$, where $\overline\tau_d\in\R_{\ge0}$.
\label{prop:dis_bound}
\end{prop}
The control objective is to develop a NAC that enables $\q$ to track a continuously differentiable desired trajectory $\qd:=\qd(t): \R_{\ge0} \to \R^n$, compensating for the unknown system dynamics while addressing the imposed constraints.
The desired trajectory $\qd(t)$ is supposed to satisfy the following assumption:
\begin{assum}
The desired trajectory $\qd(t)$ is assumed to be bounded, \ie $\norm{\qd(t)}\le \overline{q}_d\in\R_{>0}$, and available for designing a bounded control input.
\label{assum:feasible}
\end{assum}
% SECTION CONTROLLER DESIGN ==============================
\section{Control Law Development}\label{sec:ctrl design}
The architecture of the proposed CONAC consists of a DNN that functions as a NAC \DIFdelbegin \DIFdel{, }\DIFdelend and a weight optimizer for the DNN, as illustrated in Fig. \ref{fig:ctrl:diagram}.
Before proceeding to the controller design, some mathematical preliminaries are revisited in Section \ref{sec:sub:math preliminaries}.
Section \ref{sec:sub:NAC} introduces the NAC, followed by the DNN model in Section \ref{sec:sub:NN definition}.
The constrained optimization-based weight adaptation law is presented in Section \ref{sec:adap_laws}.
\begin{figure}[!t]
\centering
\includegraphics[width=.99\linewidth]{src/figures/Controller.drawio.pdf}
\caption{Architecture of the proposed constrained optimization-based neuro-adaptive controller (CONAC).}
\label{fig:ctrl:diagram}
\end{figure}
\subsection{Mathematical Preliminaries}\label{sec:sub:math preliminaries}
The following proposition and lemma will be used in subsequent sections:
\begin{propsit}[see {\cite[Chap. 7, Prop. 7.1.9]{Bernstein:2009aa}}] \label{propsit:kron}
For a matrix $\mm A\in\R^{n\times m}$ and a vector $\mv b\in\mathbb R^n$, the following property holds:
\begin{equation}
\mm A^\top \mv b
=
\myvec(\mm A^\top\mv b)
=
\myvec(\mv b^\top\mm A)
=
(\mm{I}_{m}\otimes \mv b^\top) \myvec(\mm A)
.
\end{equation}
\end{propsit}
\begin{lem} \label{lem:stable:set}
For a Lyapunov function $V:=V(\mv{x})\ge0$ with $\mv{x}\in\R^n$, if the time derivative of $V$ is given by $\ddtt V\le -a_1 \mv{x}^\top \mv{x} + a_2 \mv{x}$ for some positive constants $a_1\in\R_{>0}$ and $a_2\in\R_{>0}$, then $\mv{x}$ is bounded as $\mv{x}\in\{\mv{x}\mid\norm{\mv{x}}\le\tfrac{a_2}{a_1}\}$.
\end{lem}
\begin{proof}
The time derivative of $V$ can be rewritten as
\begin{equation}
\ddtt V
\le
-a_1 \norm{\mv{x}}^2 + a_2 \norm{\mv{x}}
=
-a_1
\left(
\norm{\mv{x}}-\tfrac{a_2}{2a_1}
\right)^2
+
\tfrac{a_2^2}{4a_1}
.
\label{eq:lem:lya:dot}
\end{equation}
According to \eqref{eq:lem:lya:dot}, it can be concluded that $\ddtt V$ is negative definite if $\norm{\mv{x}}>\tfrac{a_2}{a_1}$ holds.
In other words, $\mv{x}$ remains within the bounded set $\{\mv{x}\mid\norm{\mv{x}}\le\tfrac{a_2}{a_1}\}$, since $\ddtt V$ is negative definite when $\mv{x}$ is outside the set.
\end{proof}
\subsection{Neuro-Adaptive Controller Design}\label{sec:sub:NAC}
Given that the Euler-Lagrange system \eqref{eq:sys1} exhibits second-order dynamics, a filtered error $\fe\in\R^n$ is introduced to convert the system into a first-order system, as follows:
\begin{equation}
\fe := \ddtt{\mv e}+\mm\Lambda \mv e
,
\label{eq:err:filtered}
\end{equation}
where $\mv e := \q - \qd$ denotes the tracking error, $\ddtt{\mv e} := \dq - \dqd$ represents the time derivative of the tracking error, and $\mm\Lambda\in\R^{n\times n}_{>0}$ is a user-designed filtering matrix.
Since \eqref{eq:err:filtered} is stable system, it implies that $\mv e$ is bounded if $\fe$ is bounded.
Using $\fe$, the system dynamics \eqref{eq:sys1} can be rewritten as
\begin{equation}
\rbM \ddtt\fe
=
-\rbVm \fe
-\mm K \fe
+ \mv f
-\rbd + \mysat(\rbu)
,
\label{eq:sys:filtered}
\end{equation}
where $\mm{K}=\mm{K}^\top\in\R^{n\times n}_{>0}$ denotes an arbitrary unknown matrix and $
\mv f:= \mv f
\left(
\q,\dq,\qd,\dqd,\ddqd
\right)
=
\mm K \fe
+\rbM
\left(
-\ddqd+\mm\Lambda\ddtt{\mv e}
\right)
+
\rbVm
\left(
-\dqd+\mm\Lambda\mv e
\right)
-
\rbF
-
\rbG
\in\R^n
$ denotes the lumped unknown system.
% \color{red}
% The unknown matrix $\mm{K}$ is not available to design in practice,
% \color{black}
Consider the Lyapunov function $V_1:= \tfrac{1}{2}\fe^\top \rbM\fe$.
Invoking Property \ref{prop:skew}, the time derivative of $V_1$ is
\begin{equation}
\begin{aligned}
\ddtt{V}_1
=&
\fe^\top \rbM \ddtt \fe
+
\tfrac{1}{2}\fe^\top \ddtt{\rbM}\fe
\\
=&
\fe^\top
\left(
-\rbVm \fe -\mm K \fe + \mv f
-\rbd + \mysat(\rbu)
\right)
\\
&
+
\tfrac{1}{2}
\fe^\top \ddtt{\rbM}\fe
\\
=&
-
\fe^\top \mm K \fe
+
\fe^\top
\left(
\mv f
-\rbd
+\mysat(\rbu)
\right)
\\
&
+
\tfrac{1}{2}
\fe^\top(\ddtt{\rbM}- 2\rbVm)\fe
\\
\le&
-\lambda_{\min}(\mm K)\norm{\fe}^2
+
\overline\tau_d\norm{\fe}
+
\fe^\top (\mv f+\mysat(\rbu))
% \\
% \le&
% -\lambda_{\min}(\mm K)\norm{\fe}^2
% +
% \overline\tau_d\norm{\fe}
% +
% \fe^\top (\mysat(\rbu)-\rbu^*)
.
\end{aligned}
\label{eq:lya1:dot1}
\end{equation}
Therefore, invoking Lemma \ref{lem:stable:set}, it can be concluded that the filtered error $\fe$ is uniformly ultimately bounded with $\lim_{t\to\infty}\norm{\fe}\le\tfrac{\overline\tau_d}{\lambda_{\min}(\mm K)}$, provided that the lumped unknown system $\mv{f}$ can be perfectly cancelled by the control input $\rbu$, neglecting the effect of input saturation.
Hence, the ideal control input $\rbu^*$ can be designed as $-\mv f$.
However, $\rbu^*$ is not available in practice, since the system dynamics encapsulated in $\mv f$ are unknown.
To overcome this issue, a DNN is employed to approximate $\rbu^*$.
Let $\NN:=\NN({\q}_n;\wth): \R^{l_0+1}\times\R^{\Xi}\to\R^{n}$ represent the DNN, where ${\q}_n\in\R^{l_0+1}$ is the DNN input vector, and $\wth\in\R^{\Xi}$ is the vector of trainable weights.
The architecture of DNN $\NN({\q}_n;\wth)$ will be presented in Section \ref{sec:sub:NN definition}, later.
According to the universal approximation theorem for DNNs \cite{Kidger:2020aa}, $\NN({\q}_n;\wth)$ can approximate a nonlinear function, denoted as $\mv g(\cdot)$, with an ideal weight vector $\idealwth\in\R^\Xi$ over a compact subset $\Omega_{n}\in\R^{l_0+1}$ to within $\epsilon$-accuracy, such that $\sup_{{\q}_n\in\Omega_{n}}\norm{ \NN({\q}_n;\idealwth) - \mv g(\cdot)} = \epsilon < \infty$.
The compact set $\Omega_{n}$ is defined as the set of all feasible states $\q,\dq$ and filtered errors $\fe$.
% Furthermore, the theorem states that the norm of $\idealwth$ is bounded such that $\norm{\idealwth}\le \overline\wth<\infty$.
In this study, the ideal weight vector $\idealwth$ is assumed to be bounded by Assumption \ref{assum:feasible} and \cite[Assum. 1]{Lewis:1996aa}, and considered a locally optimal solution, rather than a global one.
Accordingly, the ideal control input $\rbu^*$ can be approximated by the DNN with the ideal weight vector $\idealNN:=\NN({\q}_n;\idealwth)$ as follows:
\begin{align}
\rbu^*=& \idealNN+\mv\epsilon
,
\label{eq:control:ideal}
\end{align}
where $\mv\epsilon\in\R^n$ is the approximation error vector, bounded by $\norm{\mv\epsilon}\le \overline{\epsilon}$ for some $\overline{\epsilon}\in\R_{>0}$.
The ideal control input $\rbu^*$ is estimated online by
\begin{align}
\rbu =& \estNN,
\label{eq:control:est}
\end{align}
where $\hat\NN:=\NN({\q}_n;\estwth)$, and $\estwth\in\R^\Xi$ is the estimated weight vector for the ideal weight vector $\idealwth$.
Substituting \eqref{eq:control:ideal} and \eqref{eq:control:est} into \eqref{eq:lya1:dot1}, the time derivative of $V_1$ can be rewritten as
\begin{equation}
\ddtt{V}_1
\le
-\lambda_{\min}(\mm K)\norm{\fe}^2
+
\overline\tau_d\norm{\fe}
+
\fe^\top
\left(
-\idealNN
-\mv\epsilon
+\mysat(\hat\NN)
\right)
.
\label{eq:lya1:dot2}
\end{equation}
Therefore, it is concluded that the filtered error $\fe$ can be stabilized by adapting $\estwth$ to $\idealwth$, \ie $\hat\NN\to\idealNN$, neglecting the effect of input saturation.
Note that the control input saturation has not yet been considered in the derivation of the ideal control input; this will be addressed in the subsequent section.
\subsection{Deep Neural Network (DNN) Model}\label{sec:sub:NN definition}
\begin{figure}[t]
\centering
\includegraphics[width=0.99\linewidth]{src/figures/DNN.drawio.pdf}
\caption{
Architecture of the DNN $\NN({\q}_n;\wth)$ with $k=2,l_0=2,l_1=l_2=3$, and $l_3=2$.
}
\label{fig:DNN}
\end{figure}
The DNN architecture $\NN({\q}_n;\wth) = \NN_k$ can be recursively represented, as follows:
\begin{equation}
\NN_i :=
\begin{cases}
\wV_i^\top \act_i(\NN_{i-1}),
&
i\in\{1,\dots ,k\},
\\
\wV_0^\top {\q}_n,
&
i=0
,
\end{cases}
\label{eq:DNN:architecture}
\end{equation}
where $\wV_i=[w_{ij}]_{i\in\{1,\cdots,l_i+1\},j\in\{1,\cdots,l_{i+1}\}}\in\R^{(l_i+1)\times l_{i+1}}$ and $\act_i: \R^{l_i}\to\R^{l_i+1}$ represent the weight matrix and the activation function of the $i$th layer, respectively.
The DNN $\NN({\q}_n;\wth)$ has $k+1$ layers, where the input layer is indexed by $i=0$, and the output layer is indexed by $i=k$.
For instance, in Fig.~\ref{fig:DNN}, the DNN $\NN({\q}_n;\wth)$ with $k=2,l_0=2,l_1=l_2=3$, and $l_3=2$ is illustrated.
Notice that the output size of $\NN(\cdot)$ is the same as that of the control input $\rbu$, \ie $l_{k+1}=n$.
The DNN input vector ${\q}_n$ is defined as ${\q}_n=(\q^\top,\dq^\top,\fe^\top,1)^\top\in\R^{3n+1}$ to include the current state of the system, the filtered error, and the augmentation term $1$ to account for \DIFaddbegin \DIFadd{the }\DIFaddend bias term in the input weight matrix $\wV_0$.
The activation function is defined as $\act_i(\mv x)=\left(\sigma(x_1),\sigma(x_2),\cdots, \sigma(x_{l_{i}}), 1\right)^\top,\ \forall\mv x\in\R^{l_i}$, where $\sigma: \R\to\R$ is a nonlinear function, and the augmentation of $1$ is used to account for bias terms in the weight matrices, similar to the input vector ${\q}_n$.
The weights $\wV_i,\ \forall i\in\{0,\cdots,k\}$, are initialized randomly using \DIFaddbegin \DIFadd{a }\DIFaddend uniform distribution at the beginning of the control process.
% \MSRY{생략 가능할 것 같습니다.}
% \ctxt{red}
% {
In selecting the nonlinear function $\sigma(\cdot)$, the ReLU function \cite{Maas:2013aa} is one of \DIFaddbegin \DIFadd{the }\DIFaddend most widely used choices for large DNNs, since it effectively mitigates the gradient vanishing problem during error backpropagation.
However, for control applications, where relatively shallow DNNs are typically sufficient and the gradient vanishing issue is less severe, the sigmoid function or the hyperbolic tangent function is commonly used as the nonlinear function $\sigma(\cdot)$.
These functions simplify stability analysis, since they are continuously differentiable and their outputs and gradients are bounded.
% }
In this study, the hyperbolic tangent function $\tanh(\cdot)$ was selected as the nonlinear function, \ie $\sigma(\cdot) = \tanh(\cdot)$, which provides desirable boundedness with $\norm{\sigma(x)}<1$ and $0<\norm{\ddtfrac{\sigma(x)}{x}}\le 1$.
For simplicity, each layer's weights are vectorized as $\wth_i:=\myvec(\wV_i)\in\R^{\Xi_i},\ \forall i\in\{0,\cdots,k\}$, where $\Xi_i:= (l_i+1)l_{i+1}$ is the number of weights in the $i$th layer.
The total weight vector $\wth\in\R^{\Xi}$ is defined by augmenting $\wth_i, \forall i\in \{0,\cdots,k\}$, as
\begin{equation}
\wth :=
\begin{pmatrix}
\wth_k\\
\wth_{k-1}\\
\vdots\\
\wth_0
\end{pmatrix}
=
\begin{pmatrix}
\myvec(\wV_k)\\
\myvec(\wV_{k-1})\\
\vdots\\
\myvec(\wV_0)
\end{pmatrix},
\end{equation}
where $\Xi:={\sum_{i=0}^{k} \Xi_i}$ represents the total number of weights in the DNN.
The gradient of $ \NN({\q}_n;\wth)$ with respect to $\wth$ can be obtained using Proposition \ref{propsit:kron} and the chain rule as follows:
\begin{equation}
\pptfrac{\NN}{\wth}=
\begin{bmatrix}
\pptfrac{\NN}{\wth_k}&
\pptfrac{\NN}{\wth_{k-1}}&
\cdots &
\pptfrac{\NN}{\wth_0}
\end{bmatrix}
\in\R^{n \times \Xi}
,
\label{eq:gradient:phi}
\end{equation}
where
\begin{equation}
\pptfrac{\NN}{\wth_i} =
\begin{cases}
(
\mm I_{l_{k+1}}
\otimes
\act_{k}^\top
)
,
&
i=k
,
\\
\wV_k^\top\act_{k}'
(
\mm I_{l_{k}}
\otimes
\act_{k-1}^\top
)
,
&
i=k-1
,
\\
\vdots
&
\vdots
\\
\wV_k^\top\act'_{k}
\cdots
\wV_1^\top\act_1'
(
\mm I_{l_1}
\otimes
{\q}_n^\top
)
,
&
i = 0
,
\end{cases}
\label{eq:NN:grad}
\end{equation}
and $\act_i:= \act_i(\NN_{i-1})$ and $\act_i':= \ddtfrac{\act_i}{\NN_{i-1}}$.
In the following sections, let $\idealNN_i$ represent the output of the $i$th layer with the ideal weight vector $\idealwth$.
Define $\idealact_i=\act_i(\idealNN_{i-1})$ and ${\idealact}'_i= \ddtfrac{\idealact_i}{\idealNN_{i-1}}$.
Similarly, let $\estNN_i$ \DIFdelbegin \DIFdel{denotes }\DIFdelend \DIFaddbegin \DIFadd{denote }\DIFaddend the output of the $i$th layer with the estimated weight vector $\estwth$, and define $\estact_i=\act_i(\estNN_{i-1})$ and $\estact_i'= \ddtfrac{\estact_i}{\estNN_{i-1}}$.
% SECTION ADAPTATION LAW DERIVATION =======================
\section{Weight Adaptation Laws}\label{sec:adap_laws}
% \subsection{Adaptation Law using Lagrangian Function}
\subsection{Weight Optimizer Design}\label{sec:sub:weight optimizer}
The control objective can be represented as follows:
\begin{equation}
\begin{matrix}
\min_{\estwth} \ J(\fe;\estwth):=
\tfrac{1}{2} \fe^\top \fe
,
\vspace{.5em}
\\
\begin{aligned}
\text{subject to }&c_{j}(\estwth)
\le0, \quad \forall j\in\mathcal{I},
\end{aligned}
\end{matrix}
\label{eq:opt:problem1}
\end{equation}
where $J(\fe;\estwth)$ is the objective function.
Inequality constraints $c_j:=c_j(\estwth),\ \forall j\in\mathcal{I}$, are imposed during the weight adaptation process, where $\mathcal I$ denotes the set of the imposed inequality constraints.
% Here, $\fe$ is considered a pre-defined data or static parameter for this optimization problem, so that the adaptation process does not consider the dynamics of $\fe$.
The Lagrangian function $L(\cdot)$ is defined as
\begin{equation}
L(
\fe,\estwth,[\lambda_j]_{j\in\mathcal I}
)
=
J(\fe;\estwth)
+
\textstyle\sum_{j\in\mathcal I}
\lambda_{j}
c_{j}(\estwth)
,
\label{eq:lagrangian}
\end{equation}
where $\lambda_j,\ \forall j\in\mathcal{I}$, denotes the Lagrange multiplier for each constraint.
The adaptation laws for $\estwth$ and $[\lambda_j]_{j\in\mathcal I}$ are derived to solve the dual problem of \eqref{eq:opt:problem1}, \ie $\min_{\estwth} \max_{[\lambda_j]_{j\in\mathcal I}}L(\fe,\estwth,[\lambda_j]_{j\in\mathcal I})$, as follows:
\begin{subequations}
\begin{align}
\ddtt{\estwth}
&
=
-\alpha \pptfrac{L}{\estwth}
=
-\alpha
\left(
\pptfrac{J}{\estwth}
+
\textstyle\sum_{j\in\mathcal{I}}
\lambda_j
\pptfrac{c_j}{\estwth}
\right),
\label{eq:adap:th}
\\
\ddtt\lambda_j
&
=
\beta_j\pptfrac{L}{\lambda_j}
=
\beta_j c_j ,
\quad \forall j\in\mathcal I,
\label{eq:adap:lbd}
\\
\lambda_j & \leftarrow \max(\lambda_j,0) ,
\label{eq:adap:lbd:max}
\end{align}
\label{eq:adaptation law}% %%
\end{subequations}
where $\alpha\in\R_{>0}$ denotes the adaptation gain (learning rate) and $\beta_j\in\R_{>0}$ denotes the update rate of the Lagrange multipliers in $\mathcal I$, and the arguments of $L(\cdot)$ and $J(\cdot)$ are suppressed for brevity.
The Lagrange multipliers associated with inequality constraints are non-negative, \ie $\lambda_j\ge 0$, due to \eqref{eq:adap:lbd:max}.
When a constraint $c_j$ becomes active, \ie $c_j > 0$, the corresponding Lagrange multiplier $\lambda_j$ increases, see \eqref{eq:adap:lbd}, to address the violation, see \eqref{eq:adap:th}.
Once the violation is resolved and the constraint is no longer active, \ie $c_j \le 0$, the Lagrange multiplier $\lambda_j$ decreases gradually until it returns to zero, see \eqref{eq:adap:lbd:max}.
% \MSRY{생략 가능할 것 같습니다.}
% \ctxt{red}
% {
% Note that this adaption law is similar to the ALM in \cite{Nocedal:2006aa}, where the adaptation law for Lagrange multipliers is given by $\lambda_j\leftarrow \max\left(\lambda_j+\tfrac{c_j}{\mu},0\right)$, with $\mu\in\R_{>0}$ being the penalty parameter.
% }
At steady state, where $\ddtt{\estwth}=0$ and $\ddtt\lambda_j=0$, the KKT conditions are satisfied, \ie $\pptfrac{L}{\estwth}=0$, $c_j \le 0$, $\lambda_j \ge 0$, and $\lambda_j c_j=0$.
In other words, the proposed weight optimizer updates $\estwth$ and $\lambda_j$ in a way that satisfies the KKT conditions.
These conditions represent the first-order necessary conditions for optimality, guiding the updates toward candidates for a locally optimal point.
% The KKT condition is satisfied, when $\estwth$ converges to $\idealwth$, since $\partial L/\partial \estwth=0$ (i.e. the first-order necessary condition of the optimality is satisfied.).
\subsection{Approximation of the Gradient of Objective Function}
The adaptation law for $\estwth$ defined in \eqref{eq:adap:th} involves the partial derivative of the filtered error with respect to control input $\pptfrac{\fe}{\rbu}$, \ie
$
\pptfrac{J}{\estwth}
=
\left(
(\pptfrac{\fe}{\rbu})
(\pptfrac{\rbu}{\estwth})
\right)
^\top \fe
=
\left(
(\pptfrac{\fe}{\rbu})
(\pptfrac{\estNN}{\estwth})
\right)
^\top \fe
$.
Since the objective function depends on $\fe$ of a dynamic system, obtaining $\pptfrac{\fe}{\rbu}$ is not straightforward.
The recommended method to calculate the exact value of $\pptfrac{\fe}{\rbu}$ is to use the forward sensitivity method \cite{Sengupta:2014aa,Ryu:2024aa} by simulating the sensitivity equation as follows:
\begin{equation}
\ddtt
\left(
\pptfrac{\fe}{\rbu}
\right)
=
\pptfrac{}{
\rbu
}
\left(
\rbM^{-1}(
-\rbVm \fe
-\mm K \fe
+ \mv f
-\rbd + \mysat(\rbu)
)
\right)
.
\end{equation}
However, this cannot be realized, since we do not know the exact system dynamics, \ie $\rbM,\rbVm, \rbF$, and $\rbG$.
Additionally, the computational cost of the forward sensitivity method is high, as the number of DNN weights is generally large.
In \cite{Douratsos:2007aa,Saerens:1991aa}, the authors approximate $\pptfrac{\fe}{\rbu}$ by taking the sign of each entry, \ie
$
\pptfrac{\fe}{\rbu}
\approx
\left[
\mysign
\left(
\pptfrac{r_i}{\tau_j}
\right)
\right]_{i,j\in\{1,\cdots,n\}}
$,
assuming known control directions.
However, this approach is not applicable to \eqref{eq:sys:filtered}, where control directions are unknown.
Instead, since the sign of the control input matrix is known—owing to the positive definiteness of $\rbM^{-1}$, see Property \ref{prop:M}—we approximate $\pptfrac{\fe}{\rbu}\approx \mm I_n$.
Consequently, the adaptation law in \eqref{eq:adap:th} becomes:
\begin{equation}
\ddtt{\estwth}
\approx
-\alpha
\left(
{\pptfrac{\estNN}
{\estwth}}^\top
\fe
+
\textstyle\sum_{j\in\mathcal{I}}
\lambda_j
\pptfrac{c_j}{\estwth}
\right)
.
\label{eq:adap:th:approx}
\end{equation}
\subsection{Essential and Potential Constraint Candidates}\label{sec:sub:cstr}
This section introduces essential constraints required to ensure the stability of the proposed CONAC, as well as conditions for potential input constraints.
First, weight norm constraints $c_{\theta_i}(\estwth),\ \forall i\in\{0,\cdots ,k\}$, defined in \eqref{eq:cstr:weight:ball}, are essential to prevent the weights from diverging during the adaptation process:
\begin{equation}
c_{\theta_i}
=
\tfrac{1}{2}
\left(
\Vert \estwth_i\Vert^2
-
\overline\theta_i^2
\right)
% \le 0
,
\label{eq:cstr:weight:ball}
\end{equation}
with $\overline\theta_i\in\R_{>0}$ denoting the maximum allowable norm for $\estwth_i$, and the arguments of $c_{\theta_i}(\cdot)$ are omitted for brevity.
The gradient of $c_{\theta_i}$ with respect to $\estwth$ can be obtained by accumulating the gradients of each layer as follows:
\begin{equation}
\pptfrac{c_{\theta_i}}{\estwth_j}
=
\begin{cases}
\estwth_i,
&
\text{if } i=j,
\\
\mv{0},
&
\text{if } i\ne j
.
\end{cases}
\label{eq:cstr:weight:ball:grad}
\end{equation}
Next, we present the following assumptions, which specify the conditions for the potential input constraints introduced in Appendix \ref{sec:appen:cstr}:
\begin{assum}
The constraint function $c_j(\estwth)$ is convex in the (input-) $\tau$-space and satisfies $c_j(0) \le 0$ and $c_j(\idealwth)\le 0$.
\label{assum:convex}
\end{assum}
\begin{assum}
The selected constraints satisfy the Linear Independence Constraint Qualification (LICQ) \cite[Chap.~12, Def.~12.1]{Nocedal:2006aa}.
\label{assum:LICQ}
\end{assum}
\begin{remark}
Assumption \ref{assum:convex} is not restrictive, since, as aforementioned, the control input saturation is practically convex.
Moreover, Assumption \ref{assum:LICQ} is a standard assumption in optimization problems, ensuring that the gradients of the active constraints are linearly independent.
This assumption will be used in the stability analysis (see Lemma \ref{lem:convex:angle}).
\end{remark}
The algorithm of the proposed CONAC is presented by Algorithm \ref{alg:CONAC}, implemented in a discrete-time controller with a sampling time of~$T_s$, where $(\cdot^{(k)})$ denotes the value at the $k$th time step.
\begin{algorithm}[!t]
\caption{Proposed CONAC\DIFdelbegin \DIFdel{Algorithm}\DIFdelend }\label{alg:CONAC}
\begin{algorithmic}[1]
\STATE \textbf{Initialize:} DNN weights $\estwth^{(0)}$, Lagrange multipliers $\lambda_j^{(0)}$
\FOR{$k = 0 $ to $\infty$}
\STATE Measure $\q^{(k)},\dq^{(k)}$
\STATE Obtain $\qd^{(k)},\dqd^{(k)}$ from given $\qd(t)$
\STATE $\mv{e}^{(k)}\leftarrow\q^{(k)}-\qd^{(k)}$ and $\ddtt\mv{e}^{(k)}\leftarrow\ddtt\q^{(k)}-\dqd^{(k)}$
\STATE $\fe^{(k)} \leftarrow \ddtt{\mv e^{(k)}}+\mm\Lambda \mv e^{(k)}$ \DIFaddbegin \DIFadd{based on }\DIFaddend \eqref{eq:err:filtered}
\STATE \textit{// Neuro-adaptive control law (Section \ref{sec:ctrl design})}
\STATE ${\q}_n^{(k)}\leftarrow
\left(
{\q^{(k)}}^\top,{\dq^{(k)}}^\top,{\fe^{(k)}}^\top,1
\right)^\top$
\STATE $\rbu^{(k)}\leftarrow\NN({\q}_n^{(k)};\estwth^{(k)}) $ \DIFaddbegin \DIFadd{based on }\DIFaddend \eqref{eq:control:est}
\STATE Apply $\rbu^{(k)}$ to the system \DIFaddbegin \DIFadd{in }\DIFaddend \eqref{eq:sys1}
\STATE \textit{// Train DNN (Section \ref{sec:adap_laws})}
\STATE Compute $\pptfrac{\NN}{\estwth^{(k)}}$ \DIFaddbegin \DIFadd{as defined in }\DIFaddend \eqref{eq:gradient:phi}, $c_j$ and $\pptfrac{c_j}{\estwth^{(k)}}$ for all $j\in\mathcal{I}$
\STATE $\estwth^{(k+1)}
\leftarrow
\estwth^{(k)}
-\alpha
\left(
{\pptfrac{\estNN}
{\estwth^{(k)}}}^\top
\fe^{(k)}
+
\textstyle\sum_{j\in\mathcal{I}}
\lambda_j^{(k)}
\pptfrac{c_j}{\estwth^{(k)}}
\right)\cdot T_s$ \DIFaddbegin \DIFadd{based on }\DIFaddend \eqref{eq:adap:th}
\STATE $\lambda_j^{(k+1)}
\leftarrow
\lambda_j^{(k)}
+
\beta_j c_j\cdot T_s$ for all $j\in\mathcal{I}$\DIFaddbegin \DIFadd{\,based\,on\,}\DIFaddend \eqref{eq:adap:lbd}
\STATE $\lambda_j^{(k+1)} \leftarrow \max(\lambda_j^{(k+1)},0)$ for all $j\in\mathcal{I}$ \DIFaddbegin \DIFadd{from }\DIFaddend \eqref{eq:adap:lbd:max}
\ENDFOR
\end{algorithmic}
\end{algorithm}
% SECTION STABILITY ANALYSIS ==============================
\section{Stability Analysis}\label{sec:stability}
Before conducting the stability analysis, let us define the weight estimation error as $\tilde\wth:= [\tilde\wth_i]_{i\in\{0,\cdots,k\}}$, where $\tilde\wth_i:=\estwth_i-\idealwth_i, \forall i\in\{0,\cdots,k\}$.
The following lemmas are introduced for the stability analysis.
\begin{lem}
If Assumptions \ref{assum:convex} and \ref{assum:LICQ} hold, then for each active constraint $c_j$, the angle between the output layer's weight vector $\estwth_k$ and $\pptfrac{c_j}{\estwth_k}$ is positive; that is $\pptfrac{c_j}{\estwth_k}^\top\estwth_k>0$.
\label{lem:convex:angle}
\end{lem}
\begin{proof}
Since $\rbu = \estNN$, a linear mapping $\mm T(\cdot):\estwth_k\to\rbu$, which is independent of $\estwth_k$, can be derived using Proposition \ref{propsit:kron}:
\begin{equation}\label{eq:linear:map}
\begin{aligned}
\rbu
=
&
\estNN
% =
% \myvec(\estNN)
=
\myvec(
\estwV_k^\top \estact_k
)
=
(
\mm I_{l_{k+1}}
\otimes
\estact_k^\top
)^\top
\myvec(\estwV_k)
\\
= &
\underbrace{
(
\mm I_{l_{k+1}}
\otimes
\estact_k^\top
)^\top}_{=:\mm T(\estact_k)}
\estwth_k
=
\mm T(\estact_k) \estwth_k.
\end{aligned}
\end{equation}
Therefore, the convexity of the input constraints in the $\rbu$-space (see Assumption \ref{assum:convex}) is preserved in $\estwth_k$-space, implying
that $\pptfrac{c_j}{\estwth_k}^\top\estwth_k>0$.
\end{proof}
\begin{lem}
If input constraint $c_j(\estwth),\ \forall j\in\mathcal I \setminus \{\theta_i\}_{i\in\{0,\cdots,k\}}$, satisfies Assumption \ref{assum:convex}, then $\norm{\pptfrac{c_j}{\estwth_i}},\ \forall i\in\{k-1,\cdots, 0\}$, is bounded, provided the norms of $\estwth_i,\ \forall i\in\{k,\cdots, i+1\}$, remain bounded.
\label{lem:cstr:grad:bound}
\end{lem}
For instance, if $k=3$ and $i=1$, $\norm{\pptfrac{c_j}{\estwth_1}}$ is bounded, provided that $\norm{\estwth_3}$ and $\norm{\estwth_2}$ are bounded.
\begin{proof}
The gradient of $c_j,\ \forall j\in\mathcal I \setminus \{\theta_i\}_{i\in\{0,\cdots,k\}}$, with respect to $\estwth_i$ is represented as
\begin{equation}
\pptfrac{c_j}{\estwth_i}
=
\pptfrac{c_j}{\rbu}
\pptfrac{\rbu}{\estNN}
\pptfrac{\estNN}{\estwth_i}
=
\pptfrac{c_j}{\rbu}
\mm{I}_n
\pptfrac{\estNN}{\estwth_i}
.
\end{equation}