yu-jiang / Paper_Automatica2012_CTLTI

A MATLAB Class for convenient ADP simulation
17 stars 10 forks source link

问问题 #1

Open shenminyin opened 1 year ago

shenminyin commented 1 year ago

学长/老师您好:我知道 Dxx=[Dxx;kron(X(end,1:xn),X(end,1:xn))-kron(X(1,1:xn),X(1,1:xn))];
XX=[XX;X(end,xn+1:xn+xn^2)-X(1,xn+1:xn+xn^2)]; XU=[XU;X(end,xn+xn^2+1:end)-X(1,xn+xn^2+1:end)];对应的是δxx = [¯x(t1) − ¯x(t0), ¯x(t2) − ¯x(t1), . . . , ¯x(tl) − ¯x(tl−1)]T ,和Ixu 能详细解释一下其公式吗?(我是初学者)

shenminyin commented 1 year ago

XX XU看懂了DXX还是不理解

shenminyin commented 1 year ago

X2=XX*kron(eye(xn),K'); % X1=[Dxx,-X2-XU]; % Left-hand side of the key equation 为什么这里没有R Θk=δxx,−2Ixx(In ⊗ KTk R) − 2Ixu(In⊗ R) Ξk = −Ixx vec(Qk).

shenminyin commented 1 year ago

是onpolicy还是offpolicy

Hybrid-z commented 1 year ago

XX XU看懂了DXX还是不理解 我觉得论文里的δxx*p_hat只是将克罗内克积换一种形式写

Hybrid-z commented 1 year ago

X2=XX*kron(eye(xn),K'); % X1=[Dxx,-X2-XU]; % Left-hand side of the key equation 为什么这里没有R Θk=δxx,−2Ixx(In ⊗ KTk R) − 2Ixu(In⊗ R) Ξk = −Ixx vec(Qk).

R被设置为单位阵

Hybrid-z commented 1 year ago

X1=[Dxx,-X2-XU]; % Left-hand side of the key equation 这里为什么少了公式里2倍的关系

Hybrid-z commented 1 year ago

我想问一下,代码: dx=Ax+Bu; dxx=kron(x',x')'; dux=kron(x',u')'; dX=[dx;dxx;dux];求解δ_xx,I_xx,I_xu时状态x的更新还要依赖于状态空间方程中的A、B,为什么说不需要系统矩阵?

ran1206 commented 1 year ago

我感觉是作者想要利用AB去产生一些系统的状态,利用状态去计算P,K。可以用A.B矩阵得到状态,也可以用其他方法得到状态,得到状态后使用这个方法就不需要AB。

Hybrid-z commented 1 year ago

我感觉是作者想要利用AB去产生一些系统的状态,利用状态去计算P,K。可以用A.B矩阵得到状态,也可以用其他方法得到状态,得到状态后使用这个方法就不需要AB。

Hybrid-z commented 1 year ago

我感觉是作者想要利用AB去产生一些系统的状态,利用状态去计算P,K。可以用A.B矩阵得到状态,也可以用其他方法得到状态,得到状态后使用这个方法就不需要AB。

也就是说实际系统里的状态可以由传感器获得,这里只是模拟这个过程?还有个问题,你有用这个算法试过不稳定系统吗

ran1206 commented 1 year ago

我认为是这样的,没有试过,我不明白不稳定系统是什么,但是作者代码在输入状态时有引入噪声这个算吗,我也是才接触控制理论。

Hybrid-z commented 1 year ago

我认为是这样的,没有试过,我不明白不稳定系统是什么,但是作者代码在输入状态时有引入噪声这个算吗,我也是才接触控制理论。 对于线性定常系统来说,就是矩阵A存在特征值位于右半平面

Hybrid-z commented 1 year ago

我认为是这样的,没有试过,我不明白不稳定系统是什么,但是作者代码在输入状态时有引入噪声这个算吗,我也是才接触控制理论。 对于线性定常系统来说,就是矩阵A存在特征值位于右半平面

我也是初学者,可以一起讨论下吗

ran1206 commented 1 year ago

不稳定系统也可以收敛,但是需要多试几次。尝试了2016年Tao Bian 论文中的手臂移动模型,不满足稳定系统要求(特征值实部不全为负)但是利用这个代码多跑几次会收敛。我觉得是初始值问题,因为算法要求稳定系统的k0才是0,如果是不稳定的系统需要找一个稳定的初值,能收敛的原因可能是探索噪声找到了合适的DXX Ixx Ixu.

Hybrid-z commented 1 year ago

不稳定系统也可以收敛,但是需要多试几次。尝试了2016年Tao Bian 论文中的手臂移动模型,不满足稳定系统要求(特征值实部不全为负)但是利用这个代码多跑几次会收敛。我觉得是初始值问题,因为算法要求稳定系统的k0才是0,如果是不稳定的系统需要找一个稳定的初值,能收敛的原因可能是探索噪声找到了合适的DXX Ixx Ixu.

论文题目能发一下吗

ran1206 commented 1 year ago

value iteration and adaptive Dynamic programming for data driven adaptive optimal control design。这个论文用的是基于价值迭代的adp算法,用的手臂移动的事例。这个算法不需要稳定的初始值。

发自我的iPhone

------------------ 原始邮件 ------------------ 发件人: Hybrid-z @.> 发送时间: 2023年9月5日 02:14 收件人: yu-jiang/Paper_Automatica2012_CTLTI @.> 抄送: ran1206 @.>, Comment @.> 主题: Re: [yu-jiang/Paper_Automatica2012_CTLTI] 问问题 (Issue #1)

不稳定系统也可以收敛,但是需要多试几次。尝试了2016年Tao Bian 论文中的手臂移动模型,不满足稳定系统要求(特征值实部不全为负)但是利用这个代码多跑几次会收敛。我觉得是初始值问题,因为算法要求稳定系统的k0才是0,如果是不稳定的系统需要找一个稳定的初值,能收敛的原因可能是探索噪声找到了合适的DXX Ixx Ixu.

论文题目能发一下吗

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

yu-jiang commented 1 year ago

是将克罗内克积换一种形式写

Yes, you are right

yu-jiang commented 1 year ago

我想问一下,代码: dx=A_x+B_u; dxx=kron(x',x')'; dux=kron(x',u')'; dX=[dx;dxx;dux];求解δ_xx,I_xx,I_xu时状态x的更新还要依赖于状态空间方程中的A、B,为什么说不需要系统矩阵?

因为这是仿真,在实际中你可以直接测量和收集物理系统的状态。这里没有物理系统,所以用仿真产生物理系统的轨迹。

dishijiadao commented 6 months ago

你好,老师,A Unified Framework for Data-Driven Optimal Control of Connected Vehicles in Mixed Traffic 这个论文我环路系统去用这个方法 仿真这个,为啥出来不收敛,K值求得老是不对为什么?