$%2020/06/04 \newcommand\setN[0]{\mathbb{N}} \newcommand\setZ[0]{\mathbb{Z}} \newcommand\setQ[0]{\mathbb{Q}} \newcommand\setR[0]{\mathbb{R}} \newcommand\setC[0]{\mathbb{C}} \newcommand\setH[0]{\mathbb{H}} \newcommand\setE[0]{\mathbb{E}} \newcommand\pare[1]{{(#1)}} \newcommand\Pare[1]{\left(#1\right)} \newcommand\curl[1]{\{#1\}} \newcommand\Curl[1]{\left\{#1\right\}} \newcommand\squa[1]{[#1]} \newcommand\Squa[1]{\left[#1\right]} \newcommand\abs[1]{\lvert#1\rvert} \newcommand\Abs[1]{\left\lvert#1\right\rvert} \newcommand\norm[1]{\|#1\|} \newcommand\Norm[1]{\left\|#1\right\|} \newcommand\floor[1]{\lfloor#1\rfloor} \newcommand\Floor[1]{\left\lfloor#1\right\rfloor} \newcommand\ceil[1]{\lceil#1\rceil} \newcommand\Ceil[1]{\left\lceil#1\right\rceil} \newcommand\angl[1]{\langle#1\rangle} \newcommand\Angl[1]{\left\langle#1\right\rangle} \newcommand\conj[1]{\overline{#1}} \newcommand\transpose[1]{\,{\vphantom{#1}}^t\!#1} \newcommand\sfrac[2]{#1/#2} \newcommand\od[2]{\frac{d#1}{d#2}} \newcommand\pd[2]{\frac{\partial#1}{\partial#2}} \newcommand\sod[2]{\sfrac{d#1}{d#2}} \newcommand\spd[2]{\sfrac{\partial#1}{\partial#2}} \newcommand\tensor[2]{\boldsymbol{\mathrm{T}}^#1_#2} \newcommand\bm[1]{\boldsymbol{#1}} \DeclareMathOperator{\tr}{tr} \DeclareMathOperator{\Re}{Re} \DeclareMathOperator{\Im}{Im} \DeclareMathOperator{\Ran}{Ran} \DeclareMathOperator{\Bnd}{Bnd} \DeclareMathOperator{\supp}{supp} \DeclareMathOperator{\esssup}{esssup} \DeclareMathOperator{\sgn}{sgn} \DeclareMathOperator{\Diff}{Diff} \DeclareMathOperator{\Sym}{Sym} \DeclareMathOperator{\spn}{span} \DeclareMathOperator{\grad}{grad} \DeclareMathOperator{\rot}{rot} \DeclareMathOperator{\div}{div} \DeclareMathOperator{\diag}{diag} \newcommand\gpow[1]{\lfloor#1\rceil} \newcommand\tensor[2]{\mathbf{T}^{#1}_{#2}} \newcommand\L{\mathcal{L}} \newcommand\R{\mathcal{R}} \newcommand\A{\mathscr{A}} \newcommand\B{\mathscr{B}} \newcommand\G{\mathscr{G}} \newcommand\I{\mathscr{I}} \newcommand\N{\mathscr{N}}$ # ゼミメモ #### 岩井君メモ 企画内容: 古賀君の卒業論文では,センサ部分のみが実機実験になっていた.ロボットアーム本体も含めて実機実験を行い,福井らが提案した人間装着型リハビリロボットの制御則の有効性を確認する. * 古賀君のやったことを追いかける系作業<=前期 * 2リンクロボットアームの順運動学,動力学を把握 * 輪講として解析力学関係をがんばる * 手計算は大変なのでwolfram言語のような,数式処理システムの使い方をまなぶ * 古賀君の卒論と実験で使ったコードを読む * パラメータをどう変更するとどのような挙動をするか把握 * 古賀君のシミュレーションプログラムのパラメータを実際に変更してみて,自分が想像した通りの動きが行われるか確認 * 安全性確保のためのシステムを開発する系の作業 * 安全講習の受講ならびに報告<=前期 * 安全性確保のためのシステムの仕様作成 * 被験者にマーカーを貼り付け,一定以上ロボットアームと被験者が近づいたら強制終了 * 外部に強制終了スイッチを伸ばし,監視者が危険と判断したらとめれるようにする * システムに必要な機材のリストアップ(発注は福井) * 実装 * 実機のロボットを動かせるようになる系作業 * 柵の外側でPythonでロボットを動かすコードを記述 * PD制御による位置決め制御実装<=前期 * フランジ作成<=古賀君に委託? * 受動速度場制御の実装<=前期以降でも何とかなる * 被験者なしの実機実験 * 制御則の性質から,被験者なしでロボット単体で動かすと,あらかじめ与えた目標軌道でロボットは動作することが保証されている.このことを確認 * 被験者を使った実機実験 #### 三角駆動による移動 $a>0$ $v_s,v_e\in\setR$かつ,$L\in\setR$のときに, * $v_s$>加速>減速>$v_e$ * $v_s$>減速>加速>$v_e$ のいずれかで$L$を移動する. \begin{align} T_1&:= \frac{\mp v_s\pm\sqrt{\frac{v_s^2}{2}+\frac{v_e^2}{2}\pm aL}}{a}\\ T_3&:= \frac{v_s\pm aT_1-v_e}{\pm a}\\ &=\frac{\pm\sqrt{\frac{v_s^2}{2}+\frac{v_e^2}{2}\pm aL}-v_e}{\pm a}\\ &=\frac{\sqrt{\frac{v_s^2}{2}+\frac{v_e^2}{2}\pm aL}\mp v_e}{a}\\ \end{align} としたときに,$T_1$が$>0$になる側の$\pm$を参照する. $\pm$が$+$であれば「$v_s$>加速>減速>$v_e$」 $\pm$が$-$であれば「$v_s$>減速>加速>$v_e$」 の動作を採用する. #### 手先の加速度をどうやって出すか 状態量$q$に対し,手先位置$z=[x\ y]^T$が運動学$f$をつかって,以下で求まるとする. \begin{align} z = f(q) \end{align} 両辺を時刻$t$で微分すると, \begin{align} \dot{z} &= \pd{f}{q}(q)\dot{q}\\ &=\begin{bmatrix} \pd{f_1}{q_1}(q) & \pd{f_1}{q_2}(q) & \pd{f_1}{q_3}(q)\\ \pd{f_2}{q_1}(q) & \pd{f_2}{q_2}(q) & \pd{f_2}{q_3}(q) \end{bmatrix}\begin{bmatrix} \dot{q}_1\\ \dot{q}_2\\ \dot{q}_3 \end{bmatrix} \end{align} となり,手先速度と関節角速度は運動学$f$のヤコビ行列を使って表現できることがわかる. さらに両辺を時刻$t$で微分すると,積の微分則から, \begin{align} \ddot{z} &= \od{}{t}\Pare{\pd{f}{q}(q)}\dot{q} +\pd{f}{q}(q)\ddot{q}\\ &=\begin{bmatrix} \od{}{t}\pd{f_1}{q_1}(q) & \od{}{t}\pd{f_1}{q_2}(q) & \od{}{t}\pd{f_1}{q_3}(q)\\ \od{}{t}\pd{f_2}{q_1}(q) & \od{}{t}\pd{f_2}{q_2}(q) & \od{}{t}\pd{f_2}{q_3}(q) \end{bmatrix} \dot{q} +\pd{f}{q}(q)\ddot{q}\\ &=\begin{bmatrix} \Pare{\pd{}{q}\pd{f_1}{q_1}}(q)\dot{q} & \Pare{\pd{}{q}\pd{f_1}{q_2}}(q)\dot{q} & \Pare{\pd{}{q}\pd{f_1}{q_3}}(q)\dot{q}\\ \Pare{\pd{}{q}\pd{f_2}{q_1}}(q)\dot{q} & \Pare{\pd{}{q}\pd{f_2}{q_2}}(q)\dot{q} & \Pare{\pd{}{q}\pd{f_2}{q_3}}(q)\dot{q} \end{bmatrix} \dot{q} +\pd{f}{q}(q)\ddot{q}\\ &=\begin{bmatrix} \sum_{i=1}^3\frac{\partial^2 f_1(q)}{\partial q_i\partial q_1}\dot{q}_i & \sum_{i=1}^3\frac{\partial^2 f_1(q)}{\partial q_i\partial q_2}\dot{q}_i & \sum_{i=1}^3\frac{\partial^2 f_1(q)}{\partial q_i\partial q_3}\dot{q}_i \\ \sum_{i=1}^3\frac{\partial^2 f_2(q)}{\partial q_i\partial q_1}\dot{q}_i & \sum_{i=1}^3\frac{\partial^2 f_2(q)}{\partial q_i\partial q_2}\dot{q}_i & \sum_{i=1}^3\frac{\partial^2 f_2(q)}{\partial q_i\partial q_3}\dot{q}_i \\ \end{bmatrix} \dot{q} +\pd{f}{q}(q)\ddot{q}\\ \end{align} 状態量$x$は以下で定義されていた. \begin{align} x&=\begin{bmatrix}q_1 & q_2 &q_3 &\dot{q}_1&\dot{q}_2&\dot{q}_3\end{bmatrix}^T \end{align} したがって,上記式により手先の角速度が得るには,状態量$x$と入力$u$から$\ddot{q}$を求める必要があることがわかる. 運動方程式は以下の通りであった. \begin{align} M(q)\ddot{q}+C(q)\dot{q}+K(q)= \begin{bmatrix}1 \\ 0 \\ 0\end{bmatrix}u \end{align} したがって,以下で$\ddot{q}$を$q$,$\dot{q}$,$u$から逆算できる. \begin{align} \ddot{q}=M^{-1}(q)\Pare{-C(q)\dot{q}-K(q)+ \begin{bmatrix}1 \\ 0 \\ 0\end{bmatrix}u} \end{align} まとめると,以下により$q,\dot{q},u$から$\ddot{z}$を計算できる. \begin{align} \ddot{z} =&\begin{bmatrix} \sum_{i=1}^3\frac{\partial^2 f_1(q)}{\partial q_i\partial q_1}\dot{q}_i & \sum_{i=1}^3\frac{\partial^2 f_1(q)}{\partial q_i\partial q_2}\dot{q}_i & \sum_{i=1}^3\frac{\partial^2 f_1(q)}{\partial q_i\partial q_3}\dot{q}_i \\ \sum_{i=1}^3\frac{\partial^2 f_2(q)}{\partial q_i\partial q_1}\dot{q}_i & \sum_{i=1}^3\frac{\partial^2 f_2(q)}{\partial q_i\partial q_2}\dot{q}_i & \sum_{i=1}^3\frac{\partial^2 f_2(q)}{\partial q_i\partial q_3}\dot{q}_i \\ \end{bmatrix} \dot{q}\\ &+\pd{f}{q}(q)M^{-1}(q)\Pare{-C(q)\dot{q}-K(q)+ \begin{bmatrix}1 \\ 0 \\ 0\end{bmatrix}u}\\ \end{align} #### ルベーグ積分入門 $A\subset B$を示すには,任意の$x\in A$に対して,$x\in B$を示せばいい. $\A\subset \sigma[\G]$を示すには,任意の$A\in \A$が,$A\in \sigma[\G]$であることを示せばいい. $\sigma[\G]$の定義は以下の通りであった. \begin{align} \sigma[\G]&=\bigcap_{\text{$\B: S$ の $\sigma$-加法族}, \G\subset\B} \B \\ \sigma_0[\G]&=\bigcap_{\text{$\A: S$ の 有限加法族}, \G\subset\A} \A \end{align} $\bigcap$の定義より, 任意の$\G\subset\B$を満たす$\sigma$-加法族$\B$に対し,$A\in \B$を示せばよい. ## 台形加速 ### 台形加速 \begin{align} x_d(t)&:= \begin{cases} \frac{v_s+v_d(t)t}{2} & t < T_1\\ L_1 + v_{\max}(t-T_1) & T_1 \le t < T_2\\ L_1 + L_2 + \frac{(v_{\max}+v_d(t))(t-T_1-T_2)}{2} & T_2 \le t \le T_3\\ L & T_3 \le t \end{cases}\\ v_d(t)&:= \begin{cases} v_s + at & t<T_1\\ v_{\max}& T_1\le t<T_2\\ v_{\max} - a(t-T_1-T_2)& T_2\le t\le T_3\\ v_e & T_3\le t \end{cases}\\ T_1&:=\frac{v_{\max}-v_s}{a}\\ T_2&:=\frac{L-L_1-L_3}{v_{\max}}\\ T_3&:=\frac{v_{\max}-v_e}{a}\\ L_1&:=\frac{(v_s+v_{\max})T_1}{2}\\ L_2&:=L-L_1-L_2\\ L_3&:=\frac{(v_e+v_{\max})T_3}{2} \end{align} ### 三角駆動(パターン1,2共通) \begin{align} x_d(t)&:= \begin{cases} \frac{(v_s+v_d(t))t}{2} & t<T_1\\ L_1+\frac{(v_{\max}+v_d(t))(t-T_1)}{2} & T_1 \le t \le T_3\\ L & T_3 \le t \end{cases}\\ v_d(t)&:= \begin{cases} v_s + at & t<T_1\\ v_{reach} - a(t-T_1)& T_1 \le t \le T_3\\ v_e & T_3\le t \end{cases}\\ T_1&:=\frac{v_{reach}-v_s}{a}\\ T_2&:=0\\ T_3&:=\frac{v_{reach}-v_e}{a}\\ L_1&:=\frac{(v_s+v_{reach})T_1}{2}\\ L_2&:=0\\ L_3&:=\frac{(v_e+v_{reach})T_3}{2} \end{align} ### 全力減速 \begin{align} x_d(t)&:= \begin{cases} \frac{(v_s+v_d(t))t}{2} & t < T_3\\ L & T_3 \le t \end{cases}\\ v_d(t)&:= \begin{cases} v_s - at & t < T_3\\ v_e & T_3\le t \end{cases}\\ T_1&:=0\\ T_2&:=0\\ T_3&:=\frac{v_s-\sqrt{v_s^2-2aL}}{a}\\ L_1&:=0\\ L_2&:=0\\ L_3&:=\frac{(v_s+v_{reach})T_3}{2} \end{align} ### 全力加速 \begin{align} x_d(t)&:= \begin{cases} \frac{(v_s+v_d(t))t}{2} & t < T_1\\ L & T_1 \le t \end{cases}\\ v_d(t)&:= \begin{cases} v_s + at & t < T_1\\ v_e & T_1 \le t \end{cases}\\ T_1&:=\frac{-v_s+\sqrt{v_s^2+2aL}}{a}\\ T_2&:=0\\ T_3&:=0\\ L_1&:=\frac{(v_s+v_{reach})T_1}{2}\\ L_2&:=0\\ L_3&:=0 \end{align} ## シミュレーションの実装法 本節では,運動方程式(31)を1次の常微分方程式として表現しなおした上で,(31)のシミュレーション方法について述べる. $M$は任意の$q$に対して正則だから,$M^{-1}$が存在する. したがって, \begin{align} \ddot{q}=M^{-1}(q,\dot{q})(-C(q,\dot{q})-K(q)+\tau) \end{align} が満たされる. そこで,状態量$x$として,$x=(x_1,x_2)\in\setR^6, x_1:=q, x_2:=\dot{q}\in\setR^3$を,入力$u$として,$u=(u_1,u_2,u_3):=\tau\in\setR^3$を取ると,運動方程式は以下の1次の常微分方程式として表現される. \begin{align} \dot{x}= \begin{bmatrix} x_2\\ M^{-1}(x_1,x_2)(-C(x_1,x_2)-K(x_1)) \end{bmatrix} + \begin{bmatrix} 0_{3\times 3}\\ M^{-1}(x_1,x_2) \end{bmatrix} \tau \end{align} ただし,$0_{3\times 3}$は3x3のゼロ行列である. 本研究で対象にしているロボットは$\tau_2=\tau_3=0$としか設定できないため,$u_2=u_3=0$とした上で$u_1$を設定しながらシミュレーション実験をすることとする. ## 実装を考えよう $B$を逆行列がある行列とする. $\dot{x}=Ax+Bu$ $u=-k_px_1$ を実装しよう. $u=B^{-1}(\dot{x}-Ax)$ ←物理法則をかいている $u=-k_px_1$ ←物理法則にどんな”いだづら”をしたいかかいている を実装しよう. $\tau = M(q)\ddot{q}+C(q,\dot{q})\dot{q}$ だとイメージしにくいが(どちらが物理法則でどちらが制御則か混乱する)ノートに以下のようにかくと... \begin{align} \frac{d}{dt} \begin{bmatrix} q\\ \dot{q} \end{bmatrix} &=\begin{bmatrix} \dot{q}\\ M^{-1}(q)(\tau-C(q,\dot{q})\dot{q}) \end{bmatrix}\\ \end{align} をシミュレーションしたい.そこで, \begin{align} x&=\begin{bmatrix} x_1\\ x_2 \end{bmatrix} =\begin{bmatrix} q\\ \dot{q} \end{bmatrix}=\begin{bmatrix} q_1\\q_2\\q_3\\ \dot{q}_1\\\dot{q}_2\\\dot{q}_3 \end{bmatrix}\\ q&=\begin{bmatrix} q_1\\q_2\\q_3 \end{bmatrix}\\ u&=\tau\\ f(x,u)&=\begin{bmatrix} x_2\\ M^{-1}(x_1)(u-C(x_1,x_2)x_2) \end{bmatrix} \end{align} と定義すると, \begin{align} \dot{x}=f(x,u) \end{align} 制御則$u$として,以下を考える. $u(t)=k(x(t))$ $k(x)=-k_px_1$ 上記状態変数$x$の定義として考えると, $u(t)=k(x(t))$ をシミュレーションで実装することになる. ## $V^a$の実装 $V(q)$を実装する $V_f(q)$を実装する 合体させて$V^a(q)$を実装する. $q\in\setR^2$の場合, \begin{align} \dot{V}^a(q)&=\pd{V^a}{q}\pd{q}{t}(t)\\ &=\pd{V^a}{q}\dot{q}(t)\\ &=\begin{bmatrix} * & *\\ * & *\\ * & * \end{bmatrix} \begin{bmatrix} \dot{q}_1\\ \dot{q}_2 \end{bmatrix} \end{align} により,$\dot{V}^q$を実装する. ヤコビ行列は真面目に計算してもいいが,一般には大変なので(特に2リンクロボットの手先軌道から計算した場合は,チェインルールと逆行列の計算地獄に陥る),手抜き計算で実装した方が無難. ## 差分微分によるヤコビ行列の手抜き計算 $x\in\setR^2$とする.$f:\setR^2\to\setR^2$を1回連続微分可能な関数とする. このとき,以下が成り立つ. \begin{align} \pd{f}{x}(x_1,x_2) &=\begin{bmatrix} \pd{f_1}{x_1}(x_1,x_2)& \pd{f_1}{x_2}(x_1,x_2)\\ \pd{f_2}{x_1}(x_1,x_2)& \pd{f_2}{x_2}(x_1,x_2)\\ \end{bmatrix}\\ &=\lim_{h\to 0}\begin{bmatrix} \frac{f_1(x_1+h,x_2)-f_1(x_1,x_2)}{h}& \frac{f_1(x_1,x_2+h)-f_1(x_1,x_2)}{h}\\ \frac{f_2(x_1+h,x_2)-f_2(x_1,x_2)}{h}& \frac{f_2(x_1,x_2+h)-f_2(x_1,x_2)}{h} \end{bmatrix}\\ \end{align} $h=10^{-6}$程度で実装すればいい ## 考察 本実験では,3つの制御をサンプル・ホールド型の動作を行うとして実装していた.サンプリング間隔を$\Delta t$とおく. ちょうどサンプリングがおきた時刻間の区間$[T_S,T_E]$を解析対象としたとき,サンプル・ホールドが行われた時間を,$t_i(i=0,1,...,\ell)$とかく. すなわち, \begin{align} t_i:=T_S+i\Delta t\quad (i=0,1,...,\ell) \end{align} とおく.$t_\ell=T_E$であることに注意する. bang-bang制御のゲイン$k_1,k_2$は, $k_1\pm k_2\neq 0,k_1>0,k_2>0$が満たされている. そこで,$k_{\min}:=\min\curl{k_1,k_2,\abs{k_1\pm k_2}}$とおく. $A$が十分小さいとき,すなわち,$k_{\min}\ge A$を仮定する. このとき,十分な時間$T_S$が経過した後のbang-bang制御を使った際の, 時刻$T_S$から$T_E$までの流入出エネルギー$E_{bb}(T_S,T_E)$は, \begin{align} E_{bb}(T_S,T_E)&=\sum_{i=0}^{k-1}\int_{t_i}^{t_{i+1}}\abs{-k_1\sgn(q(t_i))-k_2\sgn(\dot{q}(t_i))}\abs{\dot{q}(\tau)}d\tau\\ &\ge k_{ \min}\sum_{i=0}^{\ell-1}\int_{t_i}^{t_{i+1}}\abs{\dot{q}(\tau)}d\tau\\ \end{align} と評価される. ここで,$t_i$に応じて任意に設定する定数$C(t_i)$を考える. 各$i$に対し,区分連続な関数$\dot{p}(\tau)$を$C(t_i)$をつかい, \begin{align} \dot{p}(\tau) &=C(t_i)+ \int_{t_i}^{\tau}\ddot{q}(\xi)d\xi \end{align} と定義する.このとき, \begin{align} \dot{p}(\tau)&=C(t_i)+\frac{K_T}{J}\int_{t_i}^{\tau} u(t_i)+\theta(\xi) d\xi\\ &=C(t_i)+\frac{K_T}{J}\Pare{ u(t_i)(\tau-t_i) +\int_{t_i}^{\tau}A\sin(\omega \xi)d\xi}\\ \int_{t_i}^{\tau}A\sin(\omega \xi)d\xi &\in A(\tau-t_i)\max\curl{\abs{\sin(\omega \xi)}\mid \xi\in[t_i,t_{i+1}]}[-1,1]\\ &\subset [-A(\tau-t_i),A(\tau-t_i)] \end{align} であり,また,$k_{\min}\ge A$より, \begin{align} \dot{p}(\tau)-C(t_i)\in \Squa{\frac{K_T}{J}\Pare{u(t_i)-A}(\tau-t_i),\frac{K_T}{J}\Pare{u(t_i)+A}(\tau-t_i)} \end{align} が成り立つ. $\dot{p}$はその定義から$\dot{q}$が満たすべきダイナミクス(1)を満たすため,$[t_i,t_{i+1}]$上で$\dot{q}(\tau)-\dot{p}(\tau)$は一定の値を取る. したがって,ある$C(t_i)$が存在して, \begin{align} \int_{t_i}^{t_{i+1}}\abs{\dot{q}(\tau)}d\tau &\ge \int_{t_i}^{t_{i+1}}\abs{\dot{p}(\tau)}d\tau\\ &\ge \int_{t_i}^{t_{i+1}}\Abs{\dot{r}(\tau)}d\tau\\ &=\frac{K_T}{J}\Pare{k_{\min}-A}\frac{\Delta t^2}{4}\\ \dot{r}(\tau)&:=C_{\min}(t_i)+\frac{K_T}{J}\Pare{k_{\min}-A}(\tau-t_i)\\ C_{\min}(t_i)&:=\frac{1}{2}\Delta t\frac{K_T}{J}\Pare{k_{\min}-A} \end{align} が満たされる.ただし,$t_{i+1}-t_i=\Delta t$を最後の等号では使い,$\abs{u(t_i)\pm A}\ge k_{\min}-A>0$を$\dot{r}(\tau)$を定義する際に使った.また,参考のため,上記の不等号を適用している様子の例を図xxに示す. 以上の評価を使い, \begin{align} E_{bb}(T_S,T_E)&=\sum_{i=0}^{\ell-1}\int_{t_i}^{t_{i+1}}\abs{u_{bb}(\tau)}\abs{\dot{q}(\tau)}d\tau\\ &\ge k_{\min}\sum_{i=0}^{\ell-1}\int_{t_i}^{t_{i+1}}\abs{\dot{q}(\tau)}d\tau\\ &\ge k_{\min}\sum_{i=0}^{\ell-1}\frac{K_T}{J}\Pare{k_{\min}-A}\frac{\Delta t^2}{4}\\ &= k_{\min}\frac{T_E-T_S}{\Delta t}\frac{K_T}{J}\Pare{k_{\min}-A}\frac{\Delta t^2}{4}\\ &= k_{\min}\Pare{T_E-T_S}\frac{K_T}{J}\Pare{k_{\min}-A}\frac{\Delta t}{4}\\ \end{align} を得る. このため,bang-bang制御は$(q,\dot{q})$の収束精度に依存せず,制御周期のみに依存した一定のエネルギーを少なくともの値として,常に消費し続けていることがわかる. 一方で,有限時間整定制御の場合は, \begin{align} E_{ft}&=\sum_{i=0}^{k-1}\int_{t_i}^{t_{i+1}}\abs{-k_1\gpow{q(t_i)}^{P_P}-k_2\gpow{\dot{q}(t_i)}^{P_D}}\abs{\dot{q}(\tau)}d\tau\\ \end{align} であるため,$(q,\dot{q})$の収束精度に依存して流入出エネルギーが減少することがわかる. したがって,同次有限時間整定制御の収束精度が高くなる実験条件ほど, 同次有限時間整定制御はbang-bang制御と比較して,エネルギー効率が相対的によくなっていくことがわかる. ## 入力と出力の関係 入力と出力の間には以下の関係が成り立つ. \begin{align} w(t)=f''(t)+\gpow{f(t)}^p+\gpow{f'(t)}^d \end{align} ### 定値写像の場合 特に,$w$と$f$が定値写像全体からなる集合の要素の場合, \begin{align} w(t)=\gpow{f(t)}^p \end{align} だから,入出力間の関係式は全単射になっている. ### 一次式の場合 \begin{align} w(t)=a_w+b_wt\\ f(t)=a_f+b_ft \end{align} とすると,$f''(t)=0$だから, \begin{align} w(t)=\gpow{f(t)}^p+\gpow{f'(t)}^d \end{align} で,代入すると, \begin{align} a_w+b_wt=\gpow{a_f+b_ft}^p+\gpow{b_f}^d \end{align} である.上記式は右辺と左辺で$t$の係数が異なるため, 関係式が全単射にはなりえないことがわかる. ただし,特に$p=0.5$の場合, \begin{align} \sqrt{a_f+b_ft} =\sqrt{a_f}+\frac{b_f}{2\sqrt{a_f}}t+\cdots \end{align} が$\abs{a_f}>1/\abs{\frac{1}{b_ft}}$の範囲で収束する: https://ja.wolframalpha.com/input/?i=%28a%2Bbx%29%5Ec%E3%81%AE%E3%83%86%E3%82%A4%E3%83%A9%E3%83%BC%E7%B4%9A%E6%95%B0 https://ja.wolframalpha.com/input/?i=%28a%2Bbx%29%5E.5%E3%81%AE%E3%83%86%E3%82%A4%E3%83%A9%E3%83%BC%E7%B4%9A%E6%95%B0 $p=0.5$で,かつ,適当に範囲を絞れば, \begin{align} a_w+b_wt=\sqrt{a_f}+\frac{b_f}{2\sqrt{a_f}}t+\gpow{b_f}^d+o(t^2) \end{align} となり,係数比較により,1次の項までなら等しい写像になっていることがわかる. \begin{align} a_w &= \sqrt{a_f}+\gpow{b_f}^d\\ b_w &= \frac{b_f}{2\sqrt{a_f}} \end{align} 移項して, \begin{align} a_w &= \sqrt{a_f}+\gpow{b_f}^d\\ b_f &= 2\sqrt{a_f}b_w \end{align} $b_f$を消去して, \begin{align} a_w &= \sqrt{a_f}+\gpow{2\sqrt{a_f}b_w}^d \end{align} 1次の項まで等しい関数ものを同値として,同値関係$R$をとると, なめらかな関数全体を$R$で割った空間同士が,全単射によって等しくなっていることがこのことからわかる. ### 二次式の場合 https://ja.wolframalpha.com/input/?i=%28ax%5E2%2Bbx%2Bc%29%5E.5%E3%81%AE%E3%83%86%E3%82%A4%E3%83%A9%E3%83%BC%E7%B4%9A%E6%95%B0