見出し画像

大学で学んだ情報系科目の話 Part3 基礎知識その2

こんにちは、これが207本目の記事となったすうじょうです。今日は久しぶりに過去記事の続編です。内容は、タイトルの通りで大学で学んだ基礎的な情報系科目について簡単に話す回の2回目です。今後、この内容について感想シリーズを書いたり、解説記事を書くかもしれません。今シリーズの範囲から完全に数学系の科目は除いています。前回の内容は以下の記事です。

情報系の基礎知識科目その2

今回は前回に話していない基礎?科目について、紹介していきます。

人工知能
Javaによるオブジェクト指向プログラミング
数理計画法
ソフトウェア工学概論
Prologによる人工知能プログラミング

上におおまかに題のみ書きましたが、まったく知らない方が見れば意味不明な部分が多いと思うので、軽く説明をしていきます。といっても一部専門用語の羅列で意味不明になると思います。詳しく知りたい方は、ネットや書籍を調べてください。

まず、人工知能では、古典的な人工知能として、問題の表現方法、探索法、知識表現などについて学びました。用語として、深さ優先探索、幅優先探索、最適探索、最良優先探索、A/A*アルゴリズム、ゲーム木、バージョン空間法など(ここは分かる人向けです)があります。

Javaによるオブジェクト指向プログラミングは、有名なプログラミング言語であるJavaを用いて、オブジェクト指向プログラミングについて学びました。

数理計画法では、離散数学等の知識を前提として、線形計画問題、非線形計画問題、組み合わせ計画問題、ネットワーク計画問題について学びました。用語として、シンプレックス法、KKT条件、最小全域木問題とクラスカル法、ナップサック問題、最短路問題とダイクストラ法、動的計画法、最大フロー問題とフロー増加法など(ここは分かる人向けです)があります。

ソフトウェア工学概論では、ソフトウェア工学の概要について学び、様々な手法やモデルを知りました。用語として、ソフトウェアプロセスモデル(ウォータフォールモデル、アジャイルプロセスモデルなど)、要求分析、基本設計(アーキテクチャ設計、モジュール設計)など(ここは分かる人向けです)があります。

最後に、Prologによる人工知能プログラミングでは、人工知能AIプログラミングに用いられることが多い論理型プログラミング言語の一つであるPrologを用いて、まずそのプログラムの書き方を学び、演習を積み重ねました。用語として、再帰(アキュムレータを使うものを含む)、リスト処理、カットオペレータの利用、差分リスト、メタ・インタプリタなど(ここは分かる人向けです)があります。

今まで私が書いた情報系の解説記事は以下のマガジンにまとめています。(記事を書いている2021/08/29現在は、まだ4本しかありません)

今回は久々にシリーズの3回目として、情報系の基礎知識科目の一部について書きました。今回は、基礎というよりも少し専門よりな科目が多いと思います。次回は、また間があくと思いますが、基本知識科目その3について書いていくつもりです。では。

この記事が気に入ったらサポートをしてみませんか?