所属希望の方へ
ロボットラーニングは、産業界でも大注目の分野で、これからさらなる進化が期待されています。同時に、ロボット工学と人工知能が交わる最先端のテクノロジーが結集した領域でもあるため、この分野で研究するには、さまざまな専門スキルや知識が必要です。この分野への挑戦をお考えの方は、入学前に以下に挙げるスキルや知識を手に入れておくことをぜひおすすめします。これらのリストは、2022年度の先生方や学生たちが話し合って選んだものです。参考にしていただければ嬉しいです。
「必須」は入学後に全員が身につける必要のある知識・スキル,「推奨」は研究テーマによって必要となる知識・スキル
○ Linux (Ubuntu)を用いた開発経験
■ LInuxのセットアップ(必須)
● ゴール: 新しいPCが与えられた際に自力でUbuntu上に環境構築できる (GPUがあるなら深層学習用環境のセットアップ)
● 最近はWindows上で「WSL2」を用いて簡単にUbuntuが試せるようになりました.
● 一方で可能であるなら,Ubuntuをクリーンインストールしてみてください.
○ ディスクパーティションを分けてネイティブでUbuntuをインストールする例 (Windowsが起動しなくなる可能性があるので,Windowsが消えてもいいPCで実行してください)
○ 参考: https://rooter.jp/infra-ops/windows_and_ubuntu/
○ 初期設定を行う(必要そうなものだけでいいです)
○ 参考: https://linuxfan.info/ubuntu-20-04-basic-settings
■ CLIによる操作 (必須)
● ゴール: https://ubuntu.com/tutorials/command-line-for-beginners#1-overviewに記載されたコマンドを身につける.その他のコマンドについては必要な時に自力で探せる.
● 参考資料.
○ https://www.youtube.com/watch?v=1ROOqJ9yNT0
○ https://gihyo.jp/assets/pdf/book/2021/978-4-297-12024-5/LinuxCmdQuickReference.pdf
○ 書籍: 新しいLinuxの教科書 (https://www.amazon.co.jp/dp/B072K1NH76)
■ Githubによるコード管理 (推奨)
● ゴール: https://docs.github.com/ja/get-started/quickstartの内容を理解してCLIで自力でバージョン管理できる.
● 参考: https://docs.github.com/ja/get-started/quickstart/hello-world
■ Dockerによる環境構築 (推奨)
● ゴール: https://docker-curriculum.com/ レベルの内容を理解している.
○Ubuntu+ROS+Pytorch+Isaac gym or simが動くイメージの運用
○ Python (+Pytorch)による開発経験
■ Pythonの基礎 (必須)
● ゴール: 公式チュートリアル (https://docs.python.org/ja/3/tutorial/)相当の知識を有し,自力でコーディングできる.
● 参考: https://sites.google.com/view/ut-python
■ Pytorch (推奨)
● ゴール: Pytorch公式チュートリアルにあるDQNコード (https://pytorch.org/tutorials/intermediate/reinforcement_q_learning.html)が読め挙動が理解できる.
● 参考: https://yutaroogawa.github.io/pytorch_tutorials_jp/
○ ロボット(ソフトウェア・ハードウェア)開発経験
■ ROS1
● ゴール:既存のROSパッケージを組み合わせて実行できる,初歩的な機能をもつROSパッケージを自作できる(言語はPythonが望ましい)
● 参考
○基本的なチュートリアル:http://wiki.ros.org/ja/ROS/Tutorials
○シミュレータでロボットを動かしてみる:https://github.com/lihuang3/ur5_ROS-Gazebo
■ ハードウェア設計
● CAD(Fusion360など)による簡単なロボット部品の設計・製作経験 (推奨)
● https://www.autodesk.co.jp/campaigns/fusion-360/tutorial/beginner(Lesson 4まで)
● 3Dプリンタによる部品の製作経験 (推奨)
○ ロボットラーニングに関する基礎知識
■ ロボット工学の基礎
● 狙い:運動学(逆運動学)など,ロボットを動かす上で必要な基本的な知識の獲得
● 参考書籍
○ ロボット制御基礎論 吉川恒夫 (推奨)
○ 実践 ロボット制御: 基礎から動力学まで (推奨)
■ 統計的機械学習の基礎
● 狙い:ラボでの機械学習研究のスタートを加速させる(推奨)
● 参考書籍
○ パターン認識と機械学習 (推奨)
○ 確率と統計―情報学への架橋 (推奨)
○ 強化学習 (推奨)
○ 確率ロボティクス (推奨)