見出し画像

2022年度 大阪大学大学院 情報科学研究科 合格体験記【外部大学院受験】

この度、大阪大学大学院情報科学研究科に外部から合格しました。

合格した専攻は、以下の5つの中のどこかです。

・コンピュータサイエンス専攻
・情報システム工学専攻
・情報ネットワーク学専攻
・マルチメディア工学専攻
・バイオ情報工学専攻

院試に関する情報や合格までの過程について、この記事にまとめたいと思います。後の受験生の参考になれば幸いです。

※この記事は2021年9月時点での情報です。最新の情報については公式HPをご確認ください。また、この記事には私の主観が多く含まれます。内容の正確性も保証はできませんし、この記事によって受験生に不利益が生じたとしても私は責任をとれません。情報の真偽は読者の責任で判断していただき、あくまでも参考程度にとどめてください。合格体験記の1つとして読んでいただけると幸いです。

自己紹介

私は地方国立大学出身で、学部の専攻は情報系です。アルゴリズムや計算機アーキテクチャ、オペレーティングシステム、オートマトンに関する知識は元々あり、プログラミングも学部の授業レベルはできました。

今現在所属している研究室でも悪くはないのですが、阪大院のとある研究室のほうがより魅力的に感じたため、外部受験しました。

筆記試験の概要

試験1日目に筆記試験があります。バイオ情報工学専攻の一部の講座を除き、冒頭で述べた5つの専攻のいずれかを志望する場合は情報工学という科目を受験することになります。

情報工学の試験内容は次の通りです。

専門科目 [ 必須問題 ]
1 アルゴリズムとプログラミング
2 計算機システムとシステムプログラム

専門科目 [ 選択問題 ] 以下の5科目から2科目選択
1 離散構造
2 計算理論
3 ネットワーク
4 電子回路と論理設計
5 数学解析と信号処理

各科目ごとの具体的な内容や私が行った対策については後で述べるとして、ここでは選択科目の選び方について述べます。

内部生は「離散構造」、「計算理論」、「電子回路と論理設計」の3科目を勉強し、試験本番では問題を見て解けそうな2科目を選択するというパターンが多いそうです。というのも、基本的にはその3科目が解きやすいのですが、「離散構造」は年度によって難易度の差が激しく、「電子回路と論理設計」は2019年度までは割と安定的な選択肢だったのですが、2020年度から傾向が変わってしまい、問題の予測が難しくなってしまったからです。得意科目がある方はその科目を選択すればいいですが、得意科目がない方には「離散構造」、「計算理論」、「電子回路と論理設計」の3科目がおすすめです。特に「計算理論」は毎年難易度が安定しており、個人的には1番おすすめです。

私は「計算理論」と「電子回路と論理設計」の2科目しか勉強しなかったのですが、本番で「電子回路と論理設計」が完全に事故り、非常に痛い目にあいました。この記事を読んで受験を考えている方にはちゃんと3科目勉強することを強くおすすめします

外部生でフーリエ変換やラプラス変換、信号処理に自信がある人は「数学解析と信号処理」を選択してもいいかもしれません。

「ネットワーク」は内部生、外部生を問わず人気がなさそうです。

TOEICについて

あまり重要視されていないようです。一応、700点以上だと安定で、600点台でも問題はないみたいです。

他の専攻にはなりますが、同じ情報科学研究科の情報数理学専攻ではTOEICの目安となるスコアは700点だと明記されています(参照)。また、研究室訪問で内部生から聞いた話や試験当日の内部生同士の会話からも、TOEICは700点あれば安定ということを聞いています。ただし、TOEICの点数が低くても筆記試験の点数が高ければ合格できるようです。

以上のことから、700点を目指して勉強すればいいと思います。既に700点を超えている人はTOEICの勉強は辞めて、専門科目の勉強に力を注いだほうが良いと思います。そもそもTOEICはあまり重要視されていないようなので、そこまで頑張らなくても大丈夫かもしれません。

私は700点台後半で提出しました。

面接の概要

試験2日目に面接があります。

まず、面接は合否にほぼ影響はなく、面接が始まる前の時点で合否がほぼ決まっているそうです。つまり、前日の筆記試験の出来によって合否がほぼ決まっています。よって、面接はそこまで対策する必要はないと思います。

ただし、筆記試験の出来が悪かったり、ボーダー付近の場合は面接のときに筆記試験の解き直しがあるそうです。

筆記試験のときは私服の人が多かったですが、面接のときはほとんどの人がスーツもしくは白カッターシャツ+黒ズボンでした。私も筆記試験のときは私服、面接のときはスーツで行きました。

面接本番での質問内容などについては【2日目:面接】で述べています。

合格のボーダーラインについて

内部生の間ではTOEIC700点+筆記試験7割で合格は安定だと噂されているようです。ただし、これはあくまでも安定スコアであり、実際のボーダーはもう少し低いようです。問題の難易度やその年の倍率にもよりますが、筆記試験が6割でも合格は可能なようです。また、TOEICの点数はあまり重要ではなく、TOEICの点数が低くても筆記試験の点数が高ければ合格できるようです。

過去問について

公式HP(参照)に過去問が掲載されています。過去2年分についてはそのままおいてあり、3年前の過去問~7年前の過去問の計5年分については「参考問題」としてまとめて掲載されています。つまり、公式HPに合計7年分あります。7年分でも足りなくはないですが、研究室訪問のときに内部生にお願いするなどして、よりたくさんの過去問とできれば解答も集めましょう。

私は研究室訪問の際に過去問とその解答を2002年度から2021年度までもらいました。情報科学研究科が創設されたのが2002年なので、要するにすべての過去問とその解答を手に入れたことになります。諸事情により私から皆さんに過去問とその解答を共有することはできません。皆さんも頑張って手に入れてください。

過去問の問題形式は年度によって次の3パターンに分かれています。

2002年度~2005年度:専門科目Iと専門科目IIに分かれてるパターン
2006年度~2011年度:必須問題3つ、選択問題2つを解くパターン
2012年度~          :必須問題2つ、選択問題2つを解くパターン(現行)

つまり、現在と同じ形式の過去問を演習したければ、2012年度以降の過去問を手に入れて解けばいいということになります。2012年度以降の過去問は本番と同じ形式で演習ができるので、あればあるほど良いです。頑張って集めましょう。

2006年度~2011年度分も一部の問題は勉強になったので、可能であれば手に入れて目を通しておいたほうがいいです。特に「計算機システムとシステムプログラム」については、2006年度~2011年度分と非常に似た問題が2012年度以降に出題されたこともあります。

2002年度~2005年度分は古すぎてあまり役に立ちませんでした。特に手に入れる必要はないでしょう。

私は2012年度~2021年度分を2周、2006年度~2011年度分の一部の問題を2周解きました。2002年度~2005年度分は手元にありましたが、解きませんでした。

各科目における私の対策法

ここからは私が勉強した各科目について、私が行った対策を述べます。

アルゴリズムとプログラミング

C言語のプログラムを読み、各問題に答える形式です。過去の出題分野は以下のようになっています。

2022年度:クイックソート
2021年度:先入れ先出しキュー
2020年度:ヒープソート
2019年度:2分探索、ソート
2018年度:木構造、探索
2017年度:ダイクストラ法
2016年度:基数ソート
2015年度:2分探索、ナップサック問題
2014年度:配列、挿入ソート
2013年度:バブルソート
2012年度:バブルソート

アルゴリズムの題材としては多くの場合がソートですが、たまにデータ構造や探索もでます。過去問を見る限りではメジャーなアルゴリズムしか出題されていないので、アルゴリズムに関する知識量はそこまで必要ないと思います。C言語のレベルもそこまで高くなく、情報系の人であれば問題なく読める程度だと思います。

問題を解くうえで重要なのは、問題文のプログラムを読み解き、プログラムの動作や実装されているアルゴリズムを理解することです。まずは過去問演習を積み、解き方や考え方に慣れましょう。そもそも問題文のプログラムが理解できない人は、教科書や参考書で勉強してC言語に対する理解を深めるとともに、プログラミング経験をある程度積みましょう。

あと、厳密な証明は求められないものの、理由とともに時間計算量を答える問題はよく出ます。時間計算量やオーダ記法についてはしっかり理解しておきましょう。

対策として、内部の授業の教科書であるオーム社の「アルゴリズム論」を一通り読み、それにのってるアルゴリズムやデータ構造はしっかり理解しました。あとソートは頻出なので、ネットで検索して知ってるソートの種類を増やしました。あとは過去問演習でひたすら問題を解きました。

計算機システムとシステムプログラム

範囲としてはおそらく計算機アーキテクチャとオペレーティングシステムの2つです。過去の出題分野は以下のようになっています。

2022年度:セマフォ
2021年度:ハードディスク、ファイルシステムの空き領域管理
2020年度:小数点演算、仮想記憶のページング
2019年度:ビット演算、排他制御
2018年度:キャッシュと仮想記憶、ファイル割り付けと利用効率
2017年度:ビット演算と加算器、プロセススケジューリング
2016年度:パイプライン処理、メモリシステムの階層構造
2015年度:小数点演算、仮想記憶のページング
2014年度:演算と加算器、排他制御
2013年度:キャッシュ、プロセススケジューリング
2012年度:ビット演算、仮想記憶のページング

この科目は範囲が広く、知識量が試される(用語や計算方法を知らないと解けない)ところも多く、年度によってはかなり難しいです。どの分野が出題されてもいいように、幅広く勉強しましょう。

オペレーティングシステムについては内部の授業の教科書である近代科学社の「コンピュータサイエンスで学ぶ オペレーティングシステム-OS学-」で勉強しました。この教科書は内容も充実しているうえにわかりやすいので、教科書をマスターして過去問で演習を積めば十分だと思います。

計算機アーキテクチャは日経BP社の「コンピュータの構成と設計」(通称パタヘネ本、上巻はこちら下巻はこちら)と翔泳社の「ディジタル回路設計とコンピュータアーキテクチャ」で勉強しました。この2冊は少し難解なうえ分野的にも難しいので、勉強するのに苦労すると思います。

計算機アーキテクチャで特に勉強すべきは次の項目だと思います。

・数の表現、演算
・仮想記憶
・キャッシュ
・パイプライン処理、ハザード
・記憶装置、ハードディスク

これらの項目について、個別にネットで調べたり、別の参考書を用いるなどして、しっかり理解しておいたほうが良いと思います。

計算理論

内部の授業の教科書であるサイエンス社の「オートマトン 言語理論 計算論 I」で勉強しました。「計算理論」はこの教科書をマスターして過去問で演習を積めば十分だと思います。

反復補題による証明問題や記述問題が毎年よく出るので、証明問題や記述問題もしっかり勉強しましょう。

オートマトンの問題を解くときは理論的な詰め方だけでなく、発想やひらめきのようなものも大事であり、問題を解いているうちにそういったセンス的なものも身につくとより解きやすくなると思います。

また、オートマトンは学部で勉強していなくても比較的取り組みやすい分野だと思います。「計算理論」は問題の難易度も毎年安定しているので、選択科目の中ではとてもおすすめです。

電子回路と論理設計

電子回路と論理回路の混合です。

私は情報系の人間なので、電気回路や電子回路に関しては全く知識がなく、論理回路に関してはある程度知識がありました。論理回路がそこまで難しくなく、過去10年間において論理回路が毎年出題されていたので、「最悪電子回路の範囲が解けなくても論理回路の範囲で満点取れば、科目全体として半分ぐらいは取れるだろう」という読みでこの科目を選択し、勉強することにしました(私が受験した年に限ってはこの読みが外れて大爆死しました)

筆記試験の概要にも書きましたが、2020年度から問題の傾向が大きく変わりました。2019年度までは論理回路が問題の大部分を占めており、電子回路はおまけ程度にしか出ていませんでした。仮に電子回路が出たとしてもCMOSぐらいだったので、そこまで難しくありませんでした。しかし、2020年度になって急に傾向が変わり、電子回路の範囲からCMOSではなくオペアンプと発振回路が出ました。また、2021年度は電子回路の範囲からRL回路の過渡解析が出ました。さらに、2022年度は論理回路の範囲からは出題されず、コイルの相互誘導の問題のみが出題されました。

というわけで、「電子回路と論理設計」を選択する場合は、論理回路に加えてCMOSなどの電子回路だけでなく、過渡解析や相互誘導といった普通の電気回路も満遍なく勉強する必要があります。

電気・電子回路については大学の図書館で問題数が多い参考書を複数借り、シラバスの範囲を参考にしながら問題演習を中心に勉強しました。過去に出題されたオペアンプや発振回路、コンデンサやコイルを含む回路の過渡解析はマスターして解けるようになりました。コイルの相互誘導についてはどうせ出ないだろと勝手に決めつけてしまい、まったく勉強しませんでした(本番でとても痛い目をみました)

電気系出身の人や電気・電子回路に自信のある人は「電子回路と論理設計」一本でもいいかもしれませんが、私みたいに回路の知識が全くない人は「電子回路と論理設計」一本ではなく、電子回路が本番で事故ることも考えて「離散構造」などのほかの科目も勉強したほうが良いと思います。

論理回路については内部の授業の教科書であるオーム社の「OHM大学テキスト 論理回路」で勉強しました。この教科書はとてもわかりやすいのでおすすめです。この教科書を読み終えれば実際の過去問が解けるレベルになっているはずなので、あとは過去問で演習を積めば十分です。

大学院入試当日

ここからは2022年度大学院入試の当日について、体験記としてお話します。

【1日目:筆記試験】

試験時間は3時間です。解答開始の合図とともにまずはすべての大問について目を通しました。

「アルゴリズムとプログラミング」はソートの問題で解けそう、「計算機システムとシステムプログラム」はセマフォの問題で解けそう、「計算理論」はよくわからないが時間があれば一応解けそう、「電子回路と論理設計」は...

次の瞬間、絶望しました。

今年は論理回路の範囲からは出題されず、コイルの相互誘導の問題のみでした。コイルの相互誘導はちょうど勉強してない範囲で、1問目から答えの検討もつきませんでした。私は「離散構造」を勉強せず、「電子回路と論理設計」にすべてをかけていましたが、ここで「電子回路と論理設計」が完全に不可となってしまいました。

大問4つのうち1つが完全に潰れてしまったので、「電子回路と論理設計」を完全に捨て、3時間かけて残りの大問3つを完答し、7割5分を目指すという作戦にしました。作戦通りにいけば噂されているボーダーの7割は超えているので、合格できる可能性はまだあります。かなり焦っていましたがいったん落ち着いて、大問1から解くことにしました。

[1]アルゴリズムとプログラミング

クイックソートの問題でした。普段見慣れているクイックソートとは少し違ったので、アルゴリズムを理解するまでに時間がかかってしまいました。問題自体はそこまで難しくありませんでした。

完答を目指して丁寧に解き、見直しも行ったら1時間かかりました。記述問題で減点されていなければ125点満点取れてそうでした。

[2]計算機システムとシステムプログラム

セマフォに関する問題のみで、計算機アーキテクチャに関する問題はありませんでした。2019年度や2010年度の問題と非常に似ており、問題量も少ないうえにとても簡単でした。

簡単に解き終わりましたが、ミスが許されない状況なので時間をかけて見直しをしたら30分かかりました。この科目も125点満点取れた自信がありました。

[4]計算理論

証明問題はなかったのですが、思ったより難しかったです。確信は持てないものの、全問解くことができました。ひらめきで何とか乗り切った感じです。ひらめくまでに時間がかかってしまったので1時間かかりました。こちらも記述問題で減点されていなければ125点満点取れていると思います(試験終了後にミスが見つかりました)。


以上のように、作戦通り大問3つを完答することができ、残り30分余りました。前述の3科目については入念に見直しをしたので、「電子回路と論理設計」を解いてみることにしました。

[6]電子回路と論理設計

上で述べた通り、今年は論理回路の範囲からは出題されず、コイルの相互誘導の問題のみが出題されました。

10分考えましたが、1問目すら解くことができませんでした。これ以上考えても解ける見込みがないので、「離散構造」の問題を解くことにしました。

[3]離散構造

内容は主にグラフ理論でした。前半の55点分はちゃんと勉強していれば簡単に解けそうな問題で、残りの70点分は難しそうな証明問題でした。

残りの20分かけて、前半の簡単そうな問題を自分なりに解きました。解いた問題が全部あっていれば前半の55点分は取れてるといった感じでした(試験終了後にミスが見つかりました)。

筆記試験終了後

内部生同士の会話を聞いた感じだと、「離散構造」は証明問題の占める割合が大きいため、選ばなかった人が多いみたいです。そのため、電気・電子回路をしっかり勉強していた人は「計算理論」と「電子回路と論理設計」の2科目を選択したみたいです。逆に、コイルの相互誘導の問題が解けない人は「計算理論」と「離散構造」の2科目を選択せざるを得なかったようです。

次の日に面接があるので、宿泊しているホテルに帰りました。

筆記試験の自己採点をすると、「アルゴリズムとプログラミング」、「計算機システムとシステムプログラム」についてはミスが見つかりませんでした。「計算理論」についてはミスがみつかり、125点中100点は取れてそうでした。「離散構造」についてもミスが見つかり、結局125点中20点しか取れてなさそうでした。

自己採点では7割4分取れており、もしミスや減点があっても7割は取れているだろうといった感じです。一応7割は超えているようですが、「計算理論」はあまり自信が持てず、とても不安でした。

終了した筆記試験のことについて考えてもどうしようもないので、2日目の面接について対策することにしました。

事前に自分で作っていた「想定される質問とその回答」を暗記しました。面接のマナーについてもネットで調べ、一人で練習しました。また、筆記試験の解き直しに備えて、「離散構造」で間違えた問題については正しい答えが説明できるようにしました。

【2日目:面接】

暑い中、スーツを着て行きました。周りの人もスーツもしくは白カッターシャツ+黒ズボンの人がほとんどでした。控室で待機し、自分の順番が近くなると試験室の前の廊下まで案内され、自分の順番が来るのを待つような感じでした。私の前に何人かいましたが、みんな2~3分で面接が終わっているようでした。

順番が来たので試験室に入りました。専攻長が一番手前の席に座っており、その後ろに教授方が10人ほど座っておられました。私の席の前には前日の筆記試験の問題が置かれていました。

面接で聞かれた内容は次の2つです。

[1]志望理由
[2]筆記試験の出来

どちらの質問に対しても特に深掘りはされませんでした。また、私の場合は筆記試験の解き直しはなかったです。

こんな感じで私の面接は何事もなく終了しました。他の方々と同じように2~3分で終わったと思います。特に厳しい質問もなく、形式的に面接をしているだけのような印象でした。面接官の数は多かったですが、特に圧迫感や圧力のようなものは全く感じなかったです。

合格

1科目完全にやられてしまいましたが、何とか合格できました。また、第一志望の研究室に配属されることも決まりました。

終わりに

最後までこの記事を読んでくださり、ありがとうございました。この記事が後の受験生の参考になれば幸いです。

※冒頭にも書きましたが、この記事は2021年9月時点での情報です。最新の情報については公式HPをご確認ください。また、この記事には私の主観が多く含まれます。内容の正確性も保証はできませんし、この記事によって受験生に不利益が生じたとしても私は責任をとれません。情報の真偽は読者の責任で判断していただき、あくまでも参考程度にとどめてください。この記事は合格体験記の1つであることをご理解ください。

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