よく使うかもしれない線形代数まとめ
はじめに
線形代数学、それは大学で勉強はいろいろしてきましたが講義聞いてるだけでは何につかうの?って感じで全く頭に入っていなかったものです。ですが、研究をするようになって線形代数学の重要性を身にしてみ感じるようになりましたね。ほんとに単純な計算で躓いてしまうと開発速度が遅くなって仕方ないですよね…...。式が解ければ制御できるのに解き方がわからん!ってなって式を解くのに何時間もかけるのはもったいなく感じます。
なので、少しでも時間の節約になればと思い線形代数の計算式をメモ書き程度に載せておきます(あくまで自分用)。
まだ全然項目がありませんが、時間あるときに随時載せていく予定です。
ヤコビ行列(ヤコビアン)
ヤコビ行列(Jacobian matrix)って、要はベクトルをベクトルで微分したものですね。
ベクトル値関数
をベクトル
で微分すると、
\[ \frac{\partial f(x)}{\partial x} =
\left[ \begin{array} {rrr}
\frac{\partial f_1}{\partial x_1} & \ldots & \frac{\partial f_1}{\partial x_n} \\
\vdots & \ddots & \vdots \\
\frac{\partial f_m}{\partial x_1} & \ldots & \frac{\partial f_m}{\partial x_n}
\end{array} \right]
\]
となります。これがのに関するヤコビ行列(ヤコビアン)です。
<例題>
ベクトル値関数とベクトルが以下のように与えられた場合のヤコビ行列は?
\[ f(x) = \left[
\begin{array}{c}
x_1 \\
x_1^2+x_2 \\
x_1^3+x_2^2+x_3 \\
x_1^4+x_2^3+x_3^2+x_4
\end{array}
\right]
~~~~~~~
x = \left[
\begin{array}{c}
x_1 \\
x_2 \\
x_3 \\
x_4
\end{array}
\right]
\]
このときのヤコビ行列は以下のようになります。
\[ \frac{\partial f(x)}{\partial x} =
\left[ \begin{array} {rrrr}
1 & 0 & 0 & 0 \\
2x_1 & 1 & 0 & 0 \\
3x_2 & 2x_2 & 1 & 0 \\
4x_3 & 3x_3 & 2x_3 & 1
\end{array} \right]
\]
ヘッセ行列
ヘッセ行列(Hessian matrix)は、スカラ値関数をベクトルで二階微分したものですね。
ヘッセ行列を考えるにはまず勾配ベクトルを考えるとわかりやすいです。
スカラ値関数をベクトルで微分すると、
\[ \frac{\partial f(x)}{\partial x} = \left[ \frac{\partial f}{\partial x_1}, \ldots, \frac{\partial f}{\partial x_n} \right]^T \]
となります。これが、のに関する勾配ベクトルです。
(ただし、上式は物理学で用いられる勾配ベクトルを表しています。)
それで、ヘッセ行列とは勾配ベクトルをさらにベクトルで微分したものなので、
\[ \frac{\partial^2 f(x)}{\partial x^2} =
\left[ \begin{array} {rrr}
\frac{\partial^2 f}{\partial x_1 \partial x_1} & \ldots & \frac{\partial^2 f}{\partial x_1 \partial x_n} \\
\vdots & \ddots & \vdots \\
\frac{\partial^2 f}{\partial x_n \partial x_1} & \ldots & \frac{\partial^2 f}{\partial x_n \partial x_n}
\end{array} \right]
\]
となります。ベクトルをベクトルで微分するのは上述したヤコビ行列の導出でやっているので同様にして解けます。
参考となる資料:
- 作者: 大塚敏之
- 出版社/メーカー: コロナ社
- 発売日: 2011/01/26
- メディア: 単行本
- 購入: 1人 クリック: 5回
- この商品を含むブログを見る
MATLABで音源を利用してみる
MATLABに任意の音源ファイルを読み込んで再生したいなんて時のメモです。
コードはこんな感じで書けばオッケーです!
% 音源ファイルの読み込みと再生 Volume = 0.1; % 音量調整(オリジナル音源振幅に対する倍率) [y,Fs] = audioread('<ファイル名>. <拡張子>'); % 読み込み player = audioplayer(y*Volume,Fs); % 再生オブジェクトの生成 play(player); % 再生(これだけだと最初から最後まで再生され途中で終了できません) pause(5); % 5秒再生 pause(player); % 一時停止 pause(2); % 2秒停止 resume(player); % 一時停止した時点から再生を開始 pause(5); % 5秒再生 stop(player); % 再生の停止
ちなみに、
サポートしているファイル形式はここに載っています。
オーディオ ファイルの読み取り - MATLAB audioread - MathWorks 日本
VisualC++でOpenMPを使ってみる
OpenMPとはマルチコアCPUによるメモリ共有型の並列化を簡単に実装できる並列化技術です。
開発環境
Visual Studio 2015 c++
Windows 10 Home
Intel Core i7-6700K
初めてのOpenMP
まず最初に新規プロジェクトで空のアプリケーションを作って、以下のソースを実行してみましょう。
この例では、OpenMPの実行時ライブラリを使用しないので、インクルードする必要はありませんが、後々使うので一応インクルードしています。
#include <omp.h> #include <stdio.h> int main() { #pragma omp parallel printf("Hello OpenMP!\n"); return 0; }
動画編集ソフトはVideoPadがオススメ!
旅行の思い出を編集して動画にしようと思い動画編集ソフトを調べてみました。でも、お金はかけたくないので、フリーソフトでいいのがないものか…
欲しい機能の条件
・ユーザーフレンドリーで使いやすい!
・BGMを自由に入れられる!
・画像を動画に差し込める!
・映像の切り替えが滑らか!
・エフェクトのパターンが豊富!
・ドラッグ&ドロップで編集可能!
できれば欲しい機能
・動画内に一部画像を埋め込む
・BGMに効果音を追加できる
・逆再生や画像加工が可能
以上の条件のもといろいろと探してみましたが、フリーのソフトでは、VideoPadが一番優秀かなと感じました!
↓↓ダウンロードリンク
動画編集ソフトVideoPadを無料でダウンロード。本格的なビデオ作品が簡単に作れる、おすすめ無料動画編集ソフトです。
↓↓VideoPadの使い方
VideoPad動画編集ソフト -基本的な使い方の動画チュートリアル
文献リスト
ROS
1. "ROS2ではじめよう 次世代ロボットプログラミング"
著者:近藤豊
発売:2019.08.13
概要:ROS1に関して基本的な部分の紹介がまず載っており、ROS2に関する基礎から応用までが紹介されています。
アクティブサスペンション
- "セミアクティブサスペンションにおける実用的な状態推定の検討"
著者:山本 彰人,田中 亘,槇野 貴文,田中 俊也,田原 憲,八尋 嵩司
発表年:2017
・減衰力のヒステリシスを考慮したサスペンションストローク速度推定手法の提案。
・シミュレーションおよび実車両による評価結果が記載されている。
[PDF] - "Vehicle Dynamics and Control"
著者:Rajesh Rajamani
発表年:2011
・基礎的な部分が詳しく、わかりやすく説明されている。
・最適制御アルゴリズムがわかりやすい。
[PDF] [Amazon]
Vehicle Dynamics and Control (Mechanical Engineering Series)
- 作者: Rajesh Rajamani
- 出版社/メーカー: Springer
- 発売日: 2011/12/11
- メディア: ハードカバー
- この商品を含むブログを見る
- "A new adaptive sky-hook control of vehicle"
著者:K Yi,B.S. Song
発表年:1999
・ばね上速度およびばね下速度を用いたフィードバック制御則(’new adaptive’ sky-hook damping algorithm)を提案。
・路面変位検出手法(RDA : Road Detection Algorithm)を提案。
・フィードバックゲインはRDAにより動的に可変される。
[PDF] - "ON-IMPROVING-THE-PERFORMANCE-OF-AUTOMOTIVE-SEMI-ACTIVE"
著者:T.J.Gordon,R.S.Sharp
発表年:1998
・プレビュー制御の有用性の検証。
・非線形減衰特性(F-V Map)が参考になる。
[PDF] - "The design of semi-active suspension for automotive vehicles"
著者:TETSURO Butsuen
発表年:1989
・セミアクティブサスペンションの最適制御設計について詳しく載っている。
・非常にわかりやすい。
[PDF] - "Using the lead vehicle as preview sensor in convoy vehicle active suspension control"
著者:Mustafizur Rahman,Geoff Rideout
掲載:Vehicle System Dynamics
Vol. 50, No. 12 (2012), pp. 1923-1948.
発表年:2012
・アクティブサスペンションのプレビュー最適制御設計について
・カルマンフィルタを用いたオブザーバ設計による路面変位推定
[Areticle] [PDF]
関連:http://www.engr.mun.ca/ACC2010_Adibiasl_Rideout_378Header.pdf
- "Optimal Linear Preview Control of Active Vehicle Suspension"
著者:Aleksander HAC
掲載:Vehicle System Dynamics
Veh. Sysyt. Dyn. 21 (1992), pp. 167-195.
発表年:1992
・アクティブサスペンションのプレビュー最適制御設計について
[T&F Online] [IEEE]
NAS : LinkStationへの一括アップロード方法
目次
はじめに
BUFFALOのLinkStation(NAS)の設定になど関するメモです。
筆者の自宅ではこちらのNASを使用しています。
BUFFALO リンクステーション スマホ・タブレットで使える ネットワークHDD(NAS) データを守るRAID1搭載 2TB LS220D0202C
- 出版社/メーカー: バッファロー
- 発売日: 2015/06/28
- メディア: Personal Computers
- この商品を含むブログを見る
環境
OS : Windows 10 Home 64bit
NAS : LS220d (BUFFALO)
LinkStationへの一括アップロード方法
自宅のBUFFALO LinkStationへ外部のパソコンからドラッグ&ドロップでファイルの移動がしたい!
でも、ブラウザ上のhttp://buffalonas/からアクセスするとファイル1つずつしかアップロードできない…なぜだ。と、不便を感じたので方法がないか調べてみました。
・解決方法
簡単!パソコン用のWebAccessソフトが存在しました。なぜすぐに気が付かなかった…
http://faq.buffalo.jp/app/answers/detail/a_id/13924
上記リンクから、BUFFALO WebAccess (Windowsパソコン用)をダウンロードします。
(ダウンロード【リンク】)
ダウンロードページ最下部の「ダウンロードソフトウェア使用許諾契約」に同意してダウンロードする”をクリックするとインストーラがダウンロードされます。
後は、上記リンクの手順に従えばOK!
うん。非常に簡単にできました。
LinkStationに接続できなくなった時
下記のリンクで説明されているように設定したらアクセスできるようになりました。
Windows 10 April 2018 Update を適用したらNAS機能が使用できなくなりました - アンサー詳細 | BUFFALO バッファロー
上記方法でだめな場合、下記のリンクの方法でアクセスできるようになるかもしれません。
Webアクセス機能の設定
公式サイトの使用手順リンク
http://buffalo.jp/support_s/guide2/manual/webaccess/site/ja/pc_index.html?Chapter1#h2anc0
メールの通知設定
毎日HDDの状況などを知らせてくれる機能の設定です。
【動画Q&A】LinkStation メール通知の設定方法(Gmail編) - アンサー詳細 | BUFFALO バッファロー
Gmailに通知を送る場合の設定になります。
SMTPポート番号:465
Gmailのセキュリティにひっかかってしまうので「安全性の低いアプリを許可」を設定します。
BUFFALO リンクステーション スマホ・タブレットで使える ネットワークHDD(NAS) データを守るRAID1搭載 2TB LS220D0202C
- 出版社/メーカー: バッファロー
- 発売日: 2015/06/28
- メディア: Personal Computers
- この商品を含むブログを見る