CS修士号または博士号を取得するには、どのような数学のコースを受講すればよいですか?


10

私は独学でプロのプログラマーです。私はそれはかなり得意ですが(Ruby、Unix、Clojure、Java、Objective-C)、今はCSでマスターまたはPhDプログラムを申請することで、次のレベルに引き上げようと考えています。この目標に備えるために、数学のどのトピックを勉強すればよいですか?




1
学業がほとんどまたはまったくない、寒い状況にいる場合、私のアドバイスは、CS以外の人々にエントリーパスを提供するプログラムを選択することです。EE、物理学、数学、または他の同様の理学士号を取得している人がキャリアを変えることは珍しいことではありません。一部の大学では、コース構造でこれを促進するためのプログラムを用意しています。
Novak

回答:


10

MIT OCWにはMathematics for Computer Scienceと呼ばれるコースがあり、カバーしなければならないいくつかのトピックがリストされています

抽象代数を学ぶことは大きなプラスになります。文学でグループ理論への言及が多すぎるからです。


3
ダン。私の答えに抽象的な代数を忘れた-良い呼び出し。
Suresh Venkat

1
上記のリンクされた2005年秋バージョンには、講義ノートの約3分の1がありません。2005年春2010年春のバージョンでは、より完全なノートを持っています。
Daniel Apon

13

一般に高度な数学的成熟度により、(必ずしも理論的ではない)コンピュータサイエンスの正式な側面の多くが理解しやすくなります。したがって、数学のマイナーとコンピュータサイエンスの専攻を併用することは、害よりも良い結果をもたらします。



7

あなたが必要とするかもしれないいくつかのこと、いくつかのこと、いくつかのこと:

  • 数理論理学
  • 確率論/組み合わせ論/統計
  • 線形代数
  • 微積分
  • グラフ理論
  • セット理論
  • 数論
  • 多分いくつかの最適化理論

もちろん、(ほとんど)何でも役に立ちます。特に、理論的なコンピュータサイエンスの分野を研究している場合はそうです。


4

他のすべての回答+ ...

間違いなくあなたが試してみるのに最も役立つことは、研究に従事することです。stackexchangeに続いて、背景資料や論文を読んで、興味深いと思われるものを理解することは、大学院への準備として最も効果的な方法かもしれません。


2

これまでのところ、優れた/幅広い回答。これまでに言及されていないクラスをいくつか提案します。理論の適用に傾くespクラス。生徒はコードの記述/デバッグと課題の一部としての[グラフ結果]の視覚化を必要とします。または作業システムの構築/デバッグ。等

  • 微分方程式。特に、生成関数など、それと離散微分方程式の間の関係。
  • 数値的方法。最適化。Runge Kutta diffeqソルバーなど。ローレンツの気象方程式を解き、グラフ化することは、きちんとした/高度な教育課題です。ソフトウェア演算などの精度/精度に関する概念
  • MITクラス「動的システムのモデリングとシミュレーション」があります。同様のものがすべての大学で利用できるわけではありませんが、おそらく一部の大学では利用できるでしょう。
  • いくつかの大学は、複雑なシステムや複雑な適応システムなどの原理/ダイナミクスを持っています
  • 数学に焦点を当てたソフトウェアを使用したシステムのモデリングまたはシミュレーションに関連するもの
  • フラクタルシステムと数学
  • 機械学習(勾配降下法を使用したESP)
  • 量子コンピューティング(このクラスの一部は高度に、またはほとんどが数学的なものです)

1

すばらしい質問です。最近、学部と大学院のトピックが混在する入学試験の一部であるPhD資格試験に合格しました。

実用的になるためには、それはあなたが通うことを計画している学校、彼らが必要とするかもしれない入試のタイプと彼らが提供するプログラムのタイプに依存します。

一部にはGREが必要なので、登録の準備はCS固有ではありません。いくつかはGRE科目を必要とします。これは5-6のコアCS学部コースに相当し、理論がカバーされます(オートマトン理論、離散数学など)

最も基本的な背景を得るために、Ad Uniの Discrete Math、Algorithms and Theory of Computationを取り上げます。

MITとスタンフォードには他にも素晴らしい情報源がありますが、偉大なシャイサイモンソンによって提供されたこれら3つのコースは、優れた基盤です。

お役に立てれば。


これらのコースの1つは、YouTube:Theory of Computationにミラーリングされています 。残念ながら、アルゴリズム離散数学のミラーは不完全です。
Jeffε

1

私は上記の答えを本当にサポートしています。CSの数学の全体像に役立つ可能性のある次のものを追加できます。

数学は目標自体の一部になることができます。アルゴリズム分析、複雑さの境界、決定論的または確率論的証明、並列アルゴリズム、および計算の時間と空間に関連するより多くの研究分野。

反対に、数学はより高いレベルの目標への実際の道になり得ます。PDE、コンピュータグラフィックスの光の方程式、計算物理学の全研究領域(動的システム、統計力学、銀河形成)のいくつかを挙げます。

適切な状況下では、両方の形式の数学が共存できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.