数値解析Ⅱ ELEVATOR SIMULATOR 3.0 Leader 金 善凡 Algorithmer 山本 利沙、山口 和恵 Programmer 堀田 裕樹 Presenter 濱田 貴行 Power Pointer 西松 早紀 ELEVATOR SIMULATOR とは? 私たちの生活に密接な乗り物である エレベーター。 このプログラムは、そのエレベーター の効率をより良くするために様々な実 験が出来るように作られている。 参考にしたPROGRAM(2008)とその問題 点 ボタンを押さないといけない 人が乗りっぱなし ビジュアル的にプログラムの 動作がわかりにくい 改善案 <1>去年のエレベータプログラムの多くを採用した <2>Module化を利用、より柔軟な構成に <3>乗客の動作をほぼ完全に再現 <4>ビジュアル化 説明① <1>エレベーターのAlgorithm 中間発表で紹介した点数制は、 カゴの加速度や、扉の開閉にかかる 時間を考慮し、最短距離ではなく、 最短時間を比較する方式にした。 説明② Objectとは? <2>エレベータや人の表現にObjectを使用 私たちが考える物理的なもの、 つまり様々な特性を持ってる 独立なもののこと、 またはプログラム上で 具現化した物 説明③ <3>より自然な動作のため、乱数や確率的な手法を用いる Random関数で乱数を得て・・・ • 乗客の搭乗において、予測不可 能さを実現 • 簡単な操作で、各階の出現確率 を指定することを可能に 説明④ <4>乗客のエレベーター認識 乗客にエレベータを認識さ せることは難しく、時間・空間 計算量が多くなる。 そのため、乗客がエレベー タを認識するのではなく、 エレベータが乗客を認識。 反省点 ビジュアル化が完全には出来ていない シミューレーションを通じて、エレベータの不安定さを実感 ビジュアルのデザイン性がない プログラム上にほとんど説明を加えていないので、 後の作業者に不親切なものになっている 提言 JavaScriptに大きなプログラムは不適切 JavaScriptはScript言語である為、簡単なプログラム には便利だが、1000行を超える大きいプログラムを作る 際には不便。大きいプログラムには、JavaやC++などを 使う方が好ましい。 エレベータ自体があまりObject的ではない 原作であるエレベータのコードがあまりにも複雑で、その 上あまり効率がよくないため、より高い完成度のためには 新しく作るほうが望ましい
© Copyright 2024 ExpyDoc