naoya_t@hatenablog

いわゆるチラシノウラであります

Courseraレポート(〜8/26)

前回までのあらすじ(〜8/9)

現在、量子力学&量子計算のクラスを受講中。
Sedgewick先生のAlgorithmのクラスに手を出すか悩む。最初の課題が今日(8/26)の12:59まで。→手を出した

Quantum Mechanics and Quantum Computation (Umesh Vazirani, UCB) - 7/17開講; 現在6週目

5週目のAssignmentまで消化。(5週目は締め切りギリギリ…)
問題がだんだん難しくなってる印象があるけれど、問題文をコピペして負符号がU+2212 (MINUS SIGN)になってたのが☓になったりとか、自己共役の上の線(複素共役)の有無を確認してなかったりした以外はとりあえず全部合ってたので何とかなっている(通算49.7/50)。このまま頑張って修了証(通算8割+)を目指したい。

Week 6からいよいよ量子計算に入る。楽しみ。

    • 量子回路(n量子ビット系, 量子ゲート, 可逆計算)
    • 初期の量子アルゴリズム(フーリエサンプリング, Simonのアルゴリズム, 二重スリット実験)

Algorithms, Part I (Robert Sedgewick & Kevin Wayne, Princeton) - 8/12開講; 現在2週目

  • 1週目の課題締め切り(8/26 12:59JST)に駆け込み参加中【間に合った!】
  • Union Find
    • 講義ビデオ見た
    • Exercise 完了
    • Programming Assignment (Percolation) 完了。Java
      • NxNセルを1つずつランダムに開けていって、一番上の列のどれかと一番下の列のどれかがUnion Find的に繋がるかどうかの判定。percolation判定は一番上の列すべてに繋がるvirtualなセルと、一番下の列すべてに繋がるvirtualなセルを用意すれば楽ちんなんだけど、個別のセルが上から繋がっているかをチェックできるかどうかも見られていて、この方法だと下の方のセルで上からは繋がってないのに下のvirtualなセル経由で繋がってる判定をされるもの(backwash)があって課題的に減点を食らう。実行時間やunion-findの接続判定の呼び出し回数にもペナルティがあって、簡単には満点取らせない問題になっている。union-findは用意されているものしか使えない。まだ習ってないデータ構造(HashMapのことw)は使えない。試行錯誤の末、思いついたらなーんだそんな事かって感じの解法で満点クリア。(ネタバレはできないのでご想像にお任せします)
  • Analysis of Algorithm
    • 講義ビデオ途中(問題を解くのに必要な分だけは見た)
    • Exercise 完了