市ヶ谷リベラルアーツセンター(ILAC)ILAC Course
MAT300LA(数学 / Mathematics 300)計算と言語のしくみIntroduction to Computation and Formal Languages
倉田 俊彦Toshihiko KURATA
授業コードなどClass code etc
学部・研究科Faculty/Graduate school | 市ヶ谷リベラルアーツセンター(ILAC)ILAC Course |
添付ファイル名Attached documents | |
年度Year | 2022 |
授業コードClass code | Q6305 |
旧授業コードPrevious Class code | |
旧科目名Previous Class title | |
開講時期Term | 春学期授業/Spring |
曜日・時限Day/Period | 月2/Mon.2 |
科目種別Class Type | |
キャンパスCampus | 市ヶ谷 |
教室名称Classroom name | 各学部・研究科等の時間割等で確認 |
配当年次Grade | 法文営国環キ2~4年 |
単位数Credit(s) | 2 |
備考(履修条件等)Notes | ※定員制(30名) |
他学部公開科目Open Courses | ○ |
他学部公開(履修条件等)Open Courses (Notes) | |
グローバル・オープン科目Global Open Courses | |
成績優秀者の他学部科目履修制度対象Interdepartmental class taking system for Academic Achievers | ○ |
成績優秀者の他学部科目履修(履修条件等)Interdepartmental class taking system for Academic Achievers (Notes) | |
実務経験のある教員による授業科目Class taught by instructors with practical experience | |
SDGsCPSDGs CP | |
アーバンデザインCPUrban Design CP | |
ダイバーシティCPDiversity CP | |
未来教室CPLearning for the Future CP | |
カーボンニュートラルCPCarbon Neutral CP | |
千代田コンソ単位互換提供(他大学向け)Chiyoda Campus Consortium | |
選択・必修Optional/Compulsory | |
カテゴリー(2017年度以降)Category (2018~) |
2017年度以降入学者 ILAC科目 300番台 総合科目 総合科目 |
カテゴリー(2016年度以前)Category (2017) |
すべて開くShow all
すべて閉じるHide All
Outline (in English)
We can find a number of mathematical paradigms which provide the foundation of computer architecture. Among them, the framework of finite automata is explained in this course as a model of the special-purpose computers, and the framework of universal Turing machines as a model of the general-purpose computers. Based on the strength of these computational frameworks, we also understand a hierarchy structure of the class of formal languages.
To understand these results more precisely, we are supposed to spend four hours to review the content of each class meeting.
Overall grade is determined by exercises (40%), computer experiments (50%) and class contribution (10%).
授業で使用する言語Default language used in class
日本語 / Japanese
授業の概要と目的(何を学ぶか)Outline and objectives
スーパーコンピュータから電気製品などに組み込まれているチップに至るまで,コンピュータは現代社会の様々な場面で活用され,我々の生活に深く関わっている.その一方で,多くの利用者にとってコンピュータは一種のブラックボックスであり,その動作原理を身近に触れる機会が十分あるとは思われない.こうした背景を踏まえて,魔法のような処理を可能にする汎用コンピュータの仕組に焦点を当て,「コンピュータの箱の中がどのようになっているか?」「そうした機械的な仕組の上で,形式言語の命令を処理したり,自然言語の意味を分析できるのは何故か?」など数学的な視点を通して解説・実験する.
到達目標Goal
本講義では「コンピュータの仕組の概要を理解すること」を目標としている.(例えば,電卓とPCの本質的な違いを尋ねられた時,皆さんは直ちに説明できるでしょうか?)その上で,実験を通して「コンピュータ上で言語を処理する幾つかの手法を体験して,その有用性を理解すること」をもう一つの目標としている.(例えば,コンピュータに膨大な量の文章を学習させるだけで「東京−日本+フランス」の計算結果として「パリ」と答えるようになります.同様に「法政大学−東京+大阪」の計算結果としてコンピュータは何を答えるでしょうか?)こうした「処理系の違いに依存しない普遍的な原理」を理解することは,実際にコンピュータを使用する上でも様々な場面で恩恵をもたらすこととなる.
この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか(該当授業科目と学位授与方針に明示された学習成果との関連)Which item of the diploma policy will be obtained by taking this class?
各学部のディプロマ・ポリシーのうち、以下に関連している。法学部・法律学科:DP3・DP4、法学部・政治学科:DP1、法学部・国際政治学科:DP1、文学部:DP1、経営学部:DP3、国際文化学部:DP2、人間環境学部:DP2、キャリアデザイン学部:DP1
授業で使用する言語Default language used in class
日本語 / Japanese
授業の進め方と方法Method(s)(学期の途中で変更になる場合には、別途提示します。 /If the Method(s) is changed, we will announce the details of any changes. )
進度や難易度等は受講生の人数や様子などに応じて柔軟に対応し,状況によっては,より簡単な方向に修正する可能性がある.学習支援システムとZoomを活用しながら対面での説明を進める予定であり,詳細は学習支援システムに提示する.課題を通して有益な指摘や間違え易い傾向などに気付いた時は,直ちに授業内で紹介して全員にフィードバックできるようにする.
アクティブラーニング(グループディスカッション、ディベート等)の実施Active learning in class (Group discussion, Debate.etc.)
あり / Yes
フィールドワーク(学外での実習等)の実施Fieldwork in class
なし / No
授業計画Schedule
授業形態/methods of teaching:対面/face to face
※各回の授業形態は予定です。教員の指示に従ってください。
第01回[対面/face to face]:導入
PC上でプログラムが動作する様子を観察する.
第02回[対面/face to face]:計算機の歴史
汎用コンピュータの開発の歴史を解説する.
第03回[対面/face to face]:計算できる言語(1)
正規言語を処理する機械的な仕組について解説する.
第04回[対面/face to face]:計算できる言語(2)
日常の文書編集で正規言語の選択構文を活用する.
第05回[対面/face to face]:計算できる言語(3)
日常の文書編集で正規言語の繰返し構文を活用する.
第06回[対面/face to face]:計算機の理論(1)
チューリング機械の仕組と計算の動作を解説する.
第07回[対面/face to face]:計算機の理論(2)
万能チューリング機械と現代計算機の関係を解説する.
第08回[対面/face to face]:現代計算機の構造(1)
コンピュータの演算装置等の構造を説明する.
第09回[対面/face to face]:現代計算機の構造(2)
2進数,2の補数表現による整数の表現方法を説明する.
第10回[対面/face to face]:自然言語とAI(1)
Google Colab上でPythonプログラムの実行方法を学ぶ.
第11回[対面/face to face]:自然言語とAI(2)
日本語の文章を品詞に分解する処理を学ぶ.
第12回[対面/face to face]:自然言語とAI(3)
青空文庫の小説を使って機械学習の方法を学ぶ.
第13回[対面/face to face]:自然言語とAI(4)
学習済みモデル用いてシラバスの文章を分析する.
第14回[対面/face to face]:まとめと解説
講義内容のまとめ,課題に関する総括を行う.
授業時間外の学習(準備学習・復習・宿題等)Work to be done outside of class (preparation, etc.)
練習問題や実験の作業で終わらなかった部分については授業時間外で完成させる必要がある.本授業の準備学習・復習時間は,各2時間を標準とする.
テキスト(教科書)Textbooks
教科書は特に指定しない.
参考書References
テーマ毎に参考となる文献を講義の中で紹介していく予定である.
成績評価の方法と基準Grading criteria
授業の内容を確認する機会として練習問題(40%),計算機実習(50%)を行い,平常点(10%)と共に取り組みを評価する.
学生の意見等からの気づきChanges following student comments
普段のコミュニケーションを通して多様な要望を頂いていて,少しずつ内容・難易度の調整(例えば,機械学習による自然言語処理の内容を多めにするなど)に反映している.
その他の重要事項Others
受講する上での「予備知識」や「コンピュータの使用経験」は必要ない.(予備知識のない学生にとって負担にならない内容の理解・体験ができれば十分と思っています.実験についても,Webが普通に使えれば十分で,基本的な操作から気軽に進める予定です.)