『モデリング・シミュレーション入門』 井庭 崇 第6回 オブジェクト指向モデリング

Slides:



Advertisements
Similar presentations
Chapter1 UML の概要とオブジェクト指向の基本概念 1 情報工学専攻 MFM10004 奥平 健太.
Advertisements

ソフトウェア工学 知能情報学部 新田直也. オブジェクト指向パラダイムと は  オブジェクト指向言語の発展に伴って形成され てきたソフトウェア開発上の概念.オブジェク ト指向分析,オブジェクト指向設計など,プロ グラミング以外の工程でも用いられる.  ソフトウェアを処理や関数ではなくオブジェク.
プログラミング言語論 第10回(演習) 情報工学科 木村昌臣   篠埜 功.
『モデリング・シミュレーション入門』 井庭 崇 第5回 オートマトン(状態機械)
4 相互作用図 後半 FM13001 青野大樹.
相互作用図 FM11010 田中健太.
ソフトウェア工学特論III 第10回 その他の図 情報通信工学専攻 GM11013 堀江 真史
アルゴリズムとプログラミング (Algorithms and Programming)
表計算ソフトで動作するNEMUROの開発
『コラボレーション技法』 井庭 崇 第1回 イントロダクション 慶應義塾大学総合政策学部 専任講師
エージェントモデル シミュレーション.
アルゴリズムとデータ構造1 2007年6月12日
ソフトウェア工学 知能情報学部 新田直也.
データ分析2 1.平均値の比較のタイプ 2.対応のあるt検定 3.対応のないt検定 4.3つの以上のグループの差を調べる 5.参考文献
日本語統語論:構造構築と意味 No.1 統語論とは
『コラボレーション技法』 井庭 崇 第3回 創造的思考②:収束思考 慶應義塾大学総合政策学部 専任講師
オブジェクト指向プログラミング(2) OOPの三大要素 「クラス」「ポリモーフィズム」「継承」
     年  月  日 名前 太郎 1 班.
CHAPTER1 UMLとオブジェクト指向の基本概念(2)
『企業と市場のシミュレーション』 井庭 崇 第4回: シミュレーション作成プロセスとUML
クラス図(1) 後半 FM13010 村上 太一.
UMLの概要と オブジェクト指向の 基本概念
BPMN(Business Process Modeling Notation)
『企業と市場のシミュレーション』 井庭 崇 第12回: 貨幣の自生と自壊モデル
UML入門 UML PRESS vol.1 より 時松誠治 2003年5月19日.
オブジェクト プログラミング 第1回.
UMLとは           032234 田邊祐司.
オブジェクト指向モデリング [3] 2003年10月14日.
統計学の基礎と応用 張 南   今日の話:序   論          履修の注意事項.
47070 オブジェクト指向モデリング [1] 2001年10月2日.
『モデリング・シミュレーション入門』 井庭 崇 第1回 イントロダクション
ソフトウェア工学 知能情報学部 新田直也.
Chapter7 その他の図 FM13010  須崎研 村上 太一.
その他の図 Chapter 7.
UMLの概要とオブジ工クト指向の基本概念 第2回
暗黙的に型付けされる構造体の Java言語への導入
WebGIS開発 総合政策学部2年 飯塚直 2004年10月14日 厳網林研究会.
『モデリング・シミュレーション入門』 井庭 崇 第9回 自律分散協調システムと自己組織化のシミュレーション
『モデリング・シミュレーション入門』 井庭 崇 第10回 成長するネットワークのシミュレーション
『モデリング・シミュレーション入門』 井庭 崇 第3回 数理モデリング
WEBアプリケーションの開発 2002年度春学期 大岩研究会2.
『企業と市場のシミュレーション』 井庭 崇 第9回: 成長するネットワークモデル
社会シミュレーションのための モデル作成環境
     年  月  日 名前 太郎 1 班.
     年  月  日 名前 太郎 x 班.
オブジェクト指向モデリング [2] 2003年10月 7日.
UML関係のTIPS 2008年5月26日 2010年5月16日改訂 海谷 治彦.
『企業と市場のシミュレーション』 井庭 崇 第6回:シミュレーション作成演習①
『モデリング・シミュレーション入門』 井庭 崇 第13回 遺伝的アルゴリズムによる進化のシミュレーション +総括
プログラミング言語論 第十四回 理工学部 情報システム工学科 新田直也.
『モデリング・シミュレーション入門』 井庭 崇 第8回 シミュレーションによる分析
第1章 実世界のモデル化と形式化 3.地物インスタンスの表現
『企業と市場のシミュレーション』 井庭 崇 第1回 イントロダクション
47070 オブジェクト指向モデリング [3] 2001年10月16日.
『コラボレーション技法』 最終回 魅力的な場としてのSFCをつくる ※今日の配布資料1枚 (最終レポートと宿題について) 井庭 崇
1-3 UMLの図(ダイアグラム) コンポーネント図 システムの物理的な構成を表現 ソフトウェアコンポーネントの依存性を表現
『モデリング・シミュレーション入門』 井庭 崇 第4回 非線形とカオス
UMLの概要とオブジェクト指向の基本概念
ソフトウェア工学 知能情報学部 新田直也.
オブジェクト指向言語論 第十二回 知能情報学部 新田直也.
人を幸せにするアプリケーションの開発 2004年度春学期 大岩研究プロジェクト2 2004年4月8日(木) 発表:武田林太郎.
All Rights Reserved, Copyright © 2004, Kobayashi
ソフトウェア工学 知能情報学部 新田直也.
ソフトウェア工学 理工学部 情報システム工学科 新田直也.
自然言語処理2008 平成20年12月22日.
ソフトウェア工学 知能情報学部 新田直也.
47070 オブジェクト指向モデリング [3] 2001年10月15日.
より分かりやすい ユースケースモデルを作る
『企業と市場のシミュレーション』 井庭 崇 第7回:シミュレーション作成演習② 第8回:シミュレーション作成演習③
情報処理の概念 #0 概説 / 2002 (秋) 一般教育研究センター 安田豊.
Presentation transcript:

『モデリング・シミュレーション入門』 井庭 崇 第6回 オブジェクト指向モデリング Keio University SFC 2004 『モデリング・シミュレーション入門』 第6回 オブジェクト指向モデリング いば  たかし 井庭 崇 慶應義塾大学総合政策学部 専任講師 iba@sfc.keio.ac.jp http://www.sfc.keio.ac.jp/~iba/lecture/

ニュートン力学と万有引力の法則による天体現象の予測の成功 初期状態が与えられれば未来は予測することができるという思想が生まれた。 復習 決定論的な見方 ニュートン力学と万有引力の法則による天体現象の予測の成功 初期状態が与えられれば未来は予測することができるという思想が生まれた。 ラプラスの力学的世界観 時計仕掛の宇宙という考え方 現象は規則に従っているとする見方を 「決定論」という。 複雑な現象が生ずるのは、そこに関与する要素(変数)の数が多いため フランスの数学者・自然科学者 ラプラス

復習 ローレンツモデル 気象学者ローレンツ 丹羽敏雄, 『数学は世界を解明できるか:カオスと予定調和』, 中央新書, 1999

復習 ローレンツアトラクター

復習 セル・オートマトン 内部状態 内部状態

復習 1次元セル・オートマトン

復習 1次元セル・オートマトンのクラス分類

復習 カオスの縁のイメージ

宿題(授業第5回)内容 ①セル・オートマトンのように、身の回りのもののなかで、「局所的な相互作用で秩序が生まれている」現象を探してください。その秩序は静的な秩序か動的な秩序か? ②教科書『複雑系入門』のp.67~p.74や、その他の文献を読んで、次の3点についてまとめてください。 ・アトラクターとは何か? ・アトラクターにはどのような種類があるか? ・カオスはどのようにして無限に異なる値を生み出せるのか? ※この他の文献・Webページ等を積極的に調べて参照することも歓迎する。その場合には、必ず、参考文献・URLを明記すること。 ③今日の授業で新しくわかったこと、考えたこと、感想。

授業スケジュール 第1回(10/1) イントロダクション 第2回(10/8) モデリングとは 第3回(10/15) 数理モデリング 第1回(10/1) イントロダクション 第2回(10/8) モデリングとは 第3回(10/15) 数理モデリング 第4回(10/22) 非線形とカオス 第5回(11/5) オートマトン(状態機械) 第6回(11/12) オブジェクト指向モデリング 第7回(11/26) オブジェクト指向プログラミング (三田祭休み) 第8回(12/3) シミュレーションとは 第9回(12/?) 補講:ゲストスピーカー講演 第10回(12/10)自律分散協調システムと自己組織化のシミュレーション 第11回(12/17)遺伝的アルゴリズムによる進化のシミュレーション (冬休み) 第12回(1/7) ニューラルネットワークによる学習のシミュレーション 第13回(1/14) 成長するネットワークのシミュレーション

『モデリング・シミュレーション入門』 井庭 崇 第6回 オブジェクト指向モデリング Keio University SFC 2004 『モデリング・シミュレーション入門』 第6回 オブジェクト指向モデリング いば  たかし 井庭 崇 慶應義塾大学総合政策学部 専任講師 iba@sfc.keio.ac.jp http://www.sfc.keio.ac.jp/~iba/lecture/

今日のポイント 理解してほしい概念 できるようになってほしいこと オブジェクト(object) クラス(class) インスタンス(instance) UML(Unified Modeling Language) 関連(association) 汎化・特化(generation/specialization) できるようになってほしいこと クラス図を書く アクティビティ図を書く シーケンス図を書く

オブジェクト指向の本質 世界の構成要素を「オブジェクト」という基本単位で捉える。 そのオブジェクトの状態変化や関係変化によって現象を表現する。

オブジェクト指向とシミュレーションの関係 オブジェクト指向の考え方の起源 シミュレーション用プログラミング言語 SIMULA ノルウェーのO.J.ダールとK.ニガードが開発 何千もの構成要素からなるような複雑なシステムのモデルを作成してコンピュータ上で動かすことを目的に設計された。 そのため、動的で複雑な現実世界をそのまま取り込むための工夫がなされた。

「オブジェクト指向」の広がり 実装のための考え方から、設計の考え方へ。 そして現実の分析のための考え方へ。 ビジネスモデルの記述への適用なども模索されている。 オブジェクト指向の記法は、近年、UML(Unified Modeling Language: 統一モデリング言語)として標準化されている。 プログラミング言語に置き換えて、コンピュータ・シミュレーションを行うことができる。

現実世界の構成要素をオブジェクトとして写し取る

オブジェクト指向の本質 オブジェクト指向では、世界の構成要素を「オブジェクト」という基本単位で捉え、その状態変化や関係変化によって現象を表現する。 振舞い(機能)と内部状態を保持している「オブジェクト」がたくさん存在し、それらが相互作用しているという点が、オブジェクト指向のポイント。 つまり、 「システム」として 記述するということ!

「私のテレビ」をオブジェクトとして表現すると・・・

「私」をオブジェクトとして表現すると・・・

オブジェクトからオブジェクトへのメッセージ

オブジェクトは情報隠蔽して自己管理する

オブジェクト指向における 「クラス」

クラス(タイプ) 「クラス」(タイプともいう)とは、共通の性質(属性の種類と振舞い)をもつオブジェクトを分類したものである。 クラス ※概念モデルの段階では、クラスのことをタイプ(型)と呼ぶことがある。 タイプとは、種類のこと。

モデル化におけるクラスの利点 オブジェクトをクラス/タイプで分類するということは、世界の複雑さに対処するためのひとつの方法。 人間の認知プロセスにおける「概念化」と同じメカニズム。

例:テレビクラス

aggregation / composition クラス間の関係性 人間の認知と同様に、クラスのレベルで関係性を定義することで、複雑性に対処することができる。 パン屋 パン ミルク 関連 association 集約/複合化 aggregation / composition 汎化 generalization

例:クラス間の関連

クラスの汎化と特化

シミュレーション作成におけるクラスの利点 クラスを用いることによって、共通項を一括して表現できるようになるため、オブジェクトの体系的な整理が可能となる上、効率的な記述が可能となる。

例:クラスから、複数のオブジェクトの生成

例:オブジェクト指向で世界を表現する

UML(統一モデリング言語)

? モデルの可読性・共有性 作成されたモデルは、円滑なコミュニケーションを促進する。 それが可能なのは、作成されたモデルが、他者が理解できるように書かれている場合に限る。 ? 完璧。

UML (Unified Modeling Language) 50以上のオブジェクト指向方法論による方法論戦争の末、3人の代表的なメソドロジストが、Rational Software社に集まり、統一モデリング言語としてまとめる流れをつくった。 OMT法 (Object Modeling Technique) OOSE法 (Object-Oriented Software Engineering) Booch法 BoochはもともとRational社に所属 米国GE社の研究開発センターのRumbaughも、1994年にRational社に加わる Ivar Jacobsonは、スウェーデンObjectory AB社を設立。1995年にRational社はのObjectory社を買い取る Unified Method すべての人々がこのことを喜んだわけではなく、OPENコンソーシアムによるOML(Open Modeling Language)の開発はその反動の1つでした。 その後、活動の焦点は統一方法論を開発することから離れて統一モデリング言語を開発することに移行し、その結果、UMLができました。 Grady Booch James Rumbaugh Ivar Jacobson 「スリーアミーゴ (Three Amigos)」

ジェームズ・ランボー, イヴァー・ヤコブソン, グラディ・ブーチ, 『UMLリファレンスマニュアル』, 2002 「UMLの開発の背後には、さまざまな目標がありました、第1の最も重要な目標は、UMLがすべてのモデル作成者が利用することのできる汎用のモデリング言語となることです。UMLは所有権の設定されたものではないと同時に、コンピュータ業界の大多数による共通の合意の基づいたものです。」 「UMLの最終目標は、できるだけシンプルでありながら、それでいて構築しなければならない広範な実用システムをモデリングできるようにすることでした。」 ジェームズ・ランボー, イヴァー・ヤコブソン, グラディ・ブーチ, 『UMLリファレンスマニュアル』, 2002

UMLによるビジネスモデリングについての文献 クリス・マーシャル, 『企業情報システムの一般モデル』, ピアソン・エデュケーション, 2001

UMLにおけるいくつかのビュー 静的モデリング 動的モデリング モデル管理 クラス図 ユースケース図 コンポーネント図 配置図 アクティビティ図 シーケンス図 ステートチャート図 コラボレーション図 モデル管理

クラス図は、モデルの静的・構造的な側面を表現するための図。 クラス名 クラス名 クラス(概略版) クラス間の関連 クラス名 属性 振舞い クラス(詳細版) クラス名

アクティビティ図 アクティビティ図は、システムやオブジェクトの振舞いを記述するための図。 フローチャートだと思ってよい。

シーケンス図 オブジェクト間の相互作用を、時系列で記述したもの。

計算的モデル(Computational Model)の発展方向 近年の計算的モデルの発展方向 「命令から宣言へ」 「手続きからオブジェクトへ」 「逐次集中から並列分散へ」 オブジェクト指向は、この流れ上にある。 青木淳, オブジェクト指向システム分析設計入門, ソフト・リサーチ・センター, 1993 青木淳, 『例題による!!オブジェクト指向分析設計テクニック』, ソフト・リサーチ・センター, 1994

①学校内の何らかのシステム(メディアセンター、食堂等)を、オブジェクト指向モデルとして記述してください。以下の図を書くこと。 宿題(授業第6回)内容 ①学校内の何らかのシステム(メディアセンター、食堂等)を、オブジェクト指向モデルとして記述してください。以下の図を書くこと。 タイトル(何をモデル化したのか) クラス図(どのようなオブジェクトがあるか) アクティビティ図(いくつかのオブジェクトの活動) シーケンス図(複数のオブジェクトの間のやりとり) ②今日の授業で新しくわかったこと、考えたこと、感想。

オブジェクト指向の図の部分は、手書きでも構わない(きれいに書くこと) 宿題(授業第6回)形式 提出&締切:来週の授業開始時に教室で。 形式:A4用紙1枚(両面可) 宿題(第6回)と明記 学部・学年・学籍番号・メールアドレス・名前を明記 オブジェクト指向の図の部分は、手書きでも構わない(きれいに書くこと)

文献案内:さらに知りたい人へ シミュレーションとオブジェクト指向 オブジェクト指向によるモデリング システムのモデリング UMLについて 「新しい思考の道具をつくる:オブジェクト指向による社会・経済のモデル化とシミュレーション」(井庭崇, 『総合政策学の最先端IV:新世代研究者による挑戦』, 慶應義塾大学出版会, 2003) オブジェクト指向によるモデリング 「オブジェクト指向で世界を写し取る」(井庭崇, 連載 思考のおもちゃ箱 , 『季刊 未来経営』, 2001) システムのモデリング 『システム仕様の分析学:ソフトシステム方法論』(B. Wilson, 共立出版, 1996) UMLについて 『UMLモデリングのエッセンス: 標準オブジェクトモデリング言語入門』(マーチン ファウラー, ケンドール スコット, 第2版, 翔泳社, 2000) 『UMLリファレンスマニュアル』(ジェームズ・ランボー, グラディ・ブーチ, イヴァー・ヤコブソン, ピアソン・エデュケーション, 2002) ※専門的だが詳しい UMLによるビジネスモデリング 『ビジネスマンのためのUML入門:ビジネスモデリングによるアプローチ』(竹政 昭利, 左川 聡, 毎日コミュニケーションズ, 2004) ※初心者向け。おすすめ 『UMLによるビジネスモデリング』(ハンス=エリク・エリクソン, マグヌス・ペンカー, ソフトバンクパブリッシング, 2002) ※特に第1章 『企業情報システムの一般モデル: UMLによるビジネス分析と情報システムの設計』(クリス・マーシャル, ピアソンエデュケーション, 2001)