授業の補助資料
社会工学概論:モンテカルロ・シミュレーションで円周率を計算(シミュレーションサイト)
演習2:
研究室配属に関すること
- まずは Moodle をご確認ください
研究室配属に関するよくある質問(FAQ)
- Q.
- プログラミングはどの程度必要でしょうか.
- A.
- 研究テーマにもよりますが,これまでに指導したほとんどの学生は数理最適化の応用研究なので,定式化した最適化問題に対して最適解を求めるための数値計算(プログラミング)は欠かせません. 過去の卒研生には Python をオススメしていました.Python は演習IIでも基本的な書き方を教えているので,復習はしやすいと思います. とはいえ,最適化計算に求められるプログラミングスキルはさほど高度なものではありませんし,大抵はソルバーと呼ばれる最適化計算をしてくれるパッケージを導入すれば,最適化問題をソルバーのマニュア(ルール)に則って記述すれば,あとは解いてくれます. したがって,定式化した最適化問題を解くためにアルゴリズムをフルスクラッチで書くことはほとんどありません(アルゴリズムを開発するとなれば別です).
- Q.
- 本読みゼミではどんな本を読むのでしょうか.
- A.
- 数理最適化に関するものです.本は毎年変えており,2026年度は『非線形最適化法(成島康史,中山舜民,矢部博 共著)』を読みました. 2025年度は『しっかり学ぶ数理最適化(梅谷俊治著)』です. 一方で,3年ゼミでは2025年度は『Cによるアルゴリズムとデータ構造(茨木俊秀著)』を読みました(今年度はまだ決めていません).
- Q.
- コアタイムはありますか.
- A.
- ありません.
- Q.
- ゼミは週何回ありますか.
- A.
- 前期は本読みゼミと研究進捗発表ゼミで週2回,後期は研究進捗ゼミのみで週1回を予定しています.
- Q.
- 研究ではどれくらい数学ができる必要がありますか.
- A.
- 目安としては,大学1年次の線形代数と微積分,大学2年次の演習IIの内容が理解できていれば十分だと思います. また,本読みゼミを通して数学の復習もしてもらいます.
- Q.
- 先生はどんな研究をしていますか.
- A.
- ざっくり言うと,数理最適化のアルゴリズム開発をしています. なかでも,均衡問題というクラスの問題に対するアルゴリズムの開発に取り組んでいます. たとえば,複数の意思決定者が居て,自身の決定が相手の意思決定に影響を与えるような状況(相互依存関係)を考えます(これはゲームと呼ばれるものです). これを最適化の世界で考えると,他者の決定変数が自身の目的関数や制約条件に影響を及ぼし,ひいては自身の最適解(最適応答)が変化するような問題を考えているものとみなすことができます. このような複数の意思決定者が互いに他者の戦略を予測しながら最適化問題を解く状況において,同時に最適解を求めるような問題は均衡問題の一例(ナッシュ均衡問題)として知られています. 均衡問題は,ある意味で,最適化問題を含む一般的なクラスの問題とみなすこともできます. 均衡問題を数学的に定式化したものに変分不等式問題や相補性問題があります. これらのクラスは最適化問題と結びつきが強く,数理最適化の枠組みの中で幅広く研究されています.