東京大学人間環境学専攻 奥田・橋本研究室 修士1年 相良 光志 柏サイエンスキャンプ 東京大学人間環境学専攻 奥田・橋本研究室 修士1年 相良 光志
研究室体験 自動車普及の予測 コンピュータを使って マルチエージェントシミュレーション サンプルプログラムを改造 ガソリン車 ハイブリッド車 燃料電池車 (FCV)
マルチエージェントシミュレーション (MAS) エージェント…代理人、病原体 space alcより 社会 → 複数のエージェントの集まり と置き換える MASとは… ? 一定のルールに従い、行動して 周囲に影響を及ぼすもの 複数のエージェントを用意して その相互作用を考慮したシミュレーション
マルチエージェントシミュレーション (MAS) エージェント…代理人、病原体 作用因子 space alcより 複数のエージェントを用意して その相互作用を考慮したシミュレーション ? 一定のルールに従い、行動して 周囲に影響を及ぼすもの
プログラミング ××まで車で行くと何分か教えて 車って何? プログラム… 計算や仕事の手順を 特定の言語や形式で書いたもの プログラム… 計算や仕事の手順を 特定の言語や形式で書いたもの 車とはどのようなものか? 距離はどのくらいあるのか?などを 細かく定義して命令しなければならない ××まで車で行くと何分か教えて 車って何?
Java C言語は… 「これをやったら次これをする」 Javaは構造化が可能 モノとしてプログラミングする方法… 「オブジェクト指向」 「車とは~」 「『車がv[km/h]で走る』とは~」 という定義ができる 構造…「クラス」 モノとしてプログラミングする方法… 「オブジェクト指向」 http://ideone.com/
Eclipse 統合開発環境 テキストエディタ 命令文の翻訳機(コンパイラ) 計算結果等を表示する画面(コンソール) など を一つにまとめて、 プログラミングを支援するアプリケーション Androidアプリも作れる
Eclipse 統合開発環境 クラスを管理 テキストエディタ テキストエディタ 命令文の翻訳機(コンパイラ) 計算結果等を表示する画面(コンソール) など を一つにまとめて、 プログラミングを支援するアプリケーション Androidアプリも作れる 計算結果などを出力
Real World:Fuel Cell Vehicle Diffusion Simulation アメリカのデータをもとに 自動車普及を予測 ガソリン車 ハイブリッド車 FCV車 グラフを出力 各車種の普及率 ハイブリッド車の販売数 ガソリン車の普及率
3年生だと… 補助金の考慮 中古車の考慮 パラメータの影響の調査 イノベーター理論の適用 日本のデータの適用
プログラミングの演習 Hello World!(コンソール画面への出力) 変数 forループ 配列 if文
Hello World! コンソール画面(ideoneではstdout)に Hello World!と表示される JavaではSystem.out.println(“~”)で コンソール画面にテキストを出力
変数 1 2 x=x+1 x x 変数…数字を入れておく箱 int … 整数が入る箱 double … 実数が入る箱 = は「変数に数字を入れろ」という命令 1 2 x=x+1 x x xの中身に1足した数を xに入れろ
変数(演習) ? ? これはどうなる? int x=3; 1 x=x/2; 答え x 整数を入れる変数(int)で割り切れない除算を 行うと繰り下がりが発生 1 ? x ?
forループ ある条件を満たしている間、 括弧内の処理を繰り返す for(初期値; ループの条件; 更新) 0からN-1までループ ある条件を満たしている間、 括弧内の処理を繰り返す for(初期値; ループの条件; 更新) 一般的にN回繰り返すために使う for(int i=0; i<N; i++) 0からN-1までループ
配列 似たような変数をたくさん使うとき… int[] x=new int[5];と定義すると 5つの変数が用意される。 x[0], x[1], x[2], x[3], x[4] 0からカウントが始まるので注意
if文 else … 条件を満たさなかった時の処理 else if(~)… 条件を満たさなかったが、 (~)の条件を満たした時の処理 ある条件を満たした時だけ括弧内の処理を行う文 用意されている条件 大なり小なり …>, < 以上・以下 …>=, <= 等しい …== 等しくない …!= else … 条件を満たさなかった時の処理 else if(~)… 条件を満たさなかったが、 (~)の条件を満たした時の処理