最終学年の高校生のための感動的な話


38

学部からは、高校1年生にコンピューターサイエンスのより数学的な要素について話し合うように依頼されることがよくあります。TCSから関心を喚起する可能性のあるトピック(主にHaltingの問題に関係するもの)を選択するように最善を尽くしますが、他の人のアイデア/成功/失敗を聞きたいです。

これらは、まともな大学でCS学士号を申請することを検討している生徒であるが、数学や他の科学にもっと引き付けられる可能性があるということです。最短経路アルゴリズムやより高速な並べ替え方法の通常のトピックは、彼らの興味をそそるのに実際にはもはや機能しないことがわかります。


11
私はこれがCWであるべきだと思っていますか?
スレシュヴェンカト

これは本当にTCS研究レベルの質問ですか?!
モハマドアルトルコ人

18
@turkistany:はい。研究の重要性を売り込むことは、その研究を行うために不可欠な部分です。また、多くの理論家が弱い部分でもあります。ファインマンを言い換えると、明るい高校生に説明できない限り、TCSを本当に理解していません。
アーロンスターリング

9
@turkistany:はい、はい、1000回はい。
ジェフ

1
@ JeffE、OK、OK、...、無限の回数OK。今すぐになります:)
モハマド

回答:


40

ゼロ知識証明を生徒に導入するきちんとした方法がありますが、これはもともとOded Goldreichによるものだと思います(間違っている場合は修正してください)。

赤いボールと緑のボールがあり、色盲のチャーリーは同じ色だと信じています。赤のボールと緑のボールの違いがわかるとチャーリーに納得させ、チャーリーが赤と緑の違いを学習しない方法でこれを行いたいと考えています。(他の誰も振り返って自分のものとしてその何かの証拠を主張できないような方法で、何かが真実であることを証明したい。)どうすればこれを行うことができますか?それとも不可能ですか?

1つのプロトコルは次のとおりです。チャーリーは各手にボールを置き、彼の後ろの2つのボールを切り替えるかどうかを選択します。その後、彼は再び2つのボールを提示します。彼が2つのボールを切り替えたかどうかを常に検出できる場合、チャーリーはあなたそれらの違い伝えることができるとますます確信しています。チャーリーがこのシャッフルをランダムに行い、実際に色の違いがわからない場合、確率しか正しく推測できません。回試行した後、チャーリーは、少なくとも確率で差がわかると確信するはずです。、K 1 - 1 / 2 K1/2k11/2k

チャーリーはあなたが違いを見分けることができるとますます確信するようになりますが、彼はどのボールが赤で、どのボールが緑であるかをイライラすることは決して知りません。


2
ZK証明を提示することは非常に良い選択です。学生が理解できると思う別の例は、グラフの色付けです。
カベ

2
Moni NaorのページからZKの数独のデモがあります。
スレシュヴェンカト

Goldreichはこの分野に多大な貢献をしてきましたが、ZK証明は元々Goldwasser、Micali、およびRackoffによるものです。PS:色盲の説得プロトコルは、実際にはGoldreichによるものです(http://www.wisdom.weizmann.ac.il/~oded/poster03.htmlを参照)。
MS Dousti

1
@Sadeq:ライアンは、色覚
異常の

23

一般的な教育目的の良い情報源はCS unpluggedで、これには多くのきちんとしたCSのアイデアが高校や中学校の活動に翻訳されています。


それは非常に良いリンクのおかげです。それについて最も注目すべきことは、それが中学生を対象にしていることです。英国には、悲しいことに、そのようなことを教えている中学校が一つあるとは思いません。
ラファエル

Teacher's Editionの本は、高校生よりも小学生や中学生に適しています。
アレッサンドロコセンティーノ

16

TCSの最も魅力的な側面の1つは、日々の実用的なアプリケーションで抽象的な数学的なアイデアをどのように使用するかです。プレゼンテーションは、インターネットで毎日見ているものよりも一歩下にある抽象的なアイデアに焦点を当てることができます。最短経路は、Facebookの友達のコンテキストに入れられると刺激的になります。より多くのグラフアルゴリズムがPagerankに乗ることができます。Amazonの推奨事項により、機械学習の課題が生じます。また、インターネットでの購入は、公開鍵暗号にとって確かに良いリードです。


4
また、StarCraftプレーヤーは、優れた最短パスアルゴリズムの重要性を認識しています。そして、高校生はまだビデオゲームをプレイしていると思います(そうですか?)。
シルヴァンペロンネット

1
彼らは間違いなくビデオゲームをプレイしています。
ダニエルアポン

15

コンピュータサイエンスのほとんどすべてのトピックを興味深い講演に使用できると思いますが、より適切なものもあります。より重要な部分はプレゼンテーションです。

コンピュータサイエンスの楽しみ

主にリチャード・ガイの「フェアゲーム」とエルウィン・R・バーレカンプ、ジョン・H・コンウェイ、リチャード・K・ガイの「あなたの数学的プレイの勝ち方」(wiki)からのコンビナトリアルゲーム理論のさまざまなゲームを使用しました。

彼らは楽しいですし、あなたは彼らと一緒にクラスでそれらをプレイし、彼らにそれをプレイする正しい方法を見つけさせ、最後ゲームに勝つ方法を見つけるようにいくつかのヒントを与えてください。これらのゲームは、おそらく若い学生に適しています。

コンピュータサイエンスには、視聴者により適した問題を選択し、それを使用してエンゲージするための楽しいトピックが他にもあります。

コンピュータサイエンスの哲学的側面

理論と大きな疑問に関連する理論的なコンピューターサイエンスには多くのトピックがあります。ゲーデルの不完全性定理からゼロ知識証明、セキュリティ、プライバシー、アルゴリズムゲーム理論、P対NP、機械学習まで...私は詳細には立ち入らず、問題が興味深いことを示すだけで、それらは単なるコンピューターサイエンスではありません、大きな質問に関連しています。(デモクリトス以来のスコットアーロンソンの量子コンピューティング理論的コンピュータサイエンスの素晴らしいアイデアの講義をご覧ください)。トピックが死んでいるように感じさせないでください(つまり、すべての質問に答えます)。その地域が生きていると感じさせてください。進歩はありましたが、まだ大きな課題があり、未発見の土地への旅です。

コンピュータサイエンスの技術面

テクノロジーの背後にあるコンピューターサイエンスについて話します。ここで選択できるトピックは非常に多く、ビデオゲームからGoogle検索、機械翻訳、ビジョンまで、使い慣れたテクノロジーです。進行中の技術と次世代技術、彼らが私たちの生活に与えた影響、およびそれをどのように改善したかについて話してください。Google、Microsoft、Apple、IBMなどの有名な大企業で行われている研究と彼らが開発した製品について話してください。私たちの時代の大きな問題と、コンピューターサイエンスがそれらに与える影響について話します。

コンピュータサイエンスの数学的側面

これは、すでに数学に興味のある学生、純粋正確な側面に興味のある学生には適していますが、上記の他のテーマと組み合わせないと、他の学生ほど効果的ではありません。私は大きな質問に行き、ある時点で、関係する数学的問題について話し始めることになります。

コンピュータサイエンスの学際的側面

コンピューターサイエンスは、おそらく最も学際的な科目の1つであり、他のほぼすべての科目、人文主義(社会学、言語学、経済学、哲学など)、自然科学(数学、物理学、...)、生物学、医学、芸術、工学(電子工学、機械など)、...何でも!興味のあるトピックが何であれ、コンピューターサイエンスにはそれに関連するものがあります。スコットが言ったように、他のすべての主要なサックは比較して吸う :)。

それらのすべて

また、私が上で言及したすべてのテーマに言及しようとすることもできます。私はこれを試していませんが、どれほど効果的かはわかりません。あなたは感情を伝え、ポイントを作らなければなりません、そしてそれは時間がかかります。他のオプションの1つは、最初(または最後)にそれらすべてを簡単に言及し、それらの1つに進み、興味がある場合は他の情報についてより多くの情報を得るためにあなたに連絡できることを伝えます。

いくつかのコメント

どんな話をしようと、あなたはそれについて熱心であるべきです。自分にとってあまり面白くないトピックに興味を持つことは、はるかに困難になるでしょう。コンピュータサイエンスを選択したあなた自身の理由について教えてください。そして、退屈することはありません


14

私は高校生と新入生の両方で2つの講演を非常にうまく使用しました。

  1. 折り紙。5点星の問題(アメリカの国旗とのつながりがあるため、これはアメリカの文脈でうまく機能します)で始め、生徒に折り畳み+ 1カットで5点星を作る方法を見つけさせます。「リソース」(カッティング)と、限られたリソースでのアルゴリズム設計の方法について説明します。次に、折り紙に関する他の質問と現実世界でのアプリケーション(心臓弁、NASA望遠鏡、車のくしゃくしゃゾーン)について説明します。

  2. パンケーキの並べ替え:パンケーキの並べ替えとゲノムの再配列の間には美しいつながりがあり、実際に生徒たちが遊ぶためにフォームからパンケーキのスタックを作成しました。うまく機能し、アルゴリズム、遺伝子配列、ビルゲイツ(!)、およびその他の楽しいことについて話させてくれます。


10

暗号化は、常に若い(そして個人的には年上の)個人の心を捉えるものです。私は、看護師のアシスタント、ホッケー選手、ビジネスマン、政治家になりたい友人や、(より高い目標にもかかわらず)食料品の袋詰め機やカートプッシャー、建設労働者、犬小屋のアシスタントとして仕事をした友人たちがいました-全員がお互いを発明し、破りました」 (明らかに単純で単純な)コード。特に、公開鍵暗号の存在は通常、RSAのルートをとる場合に説明するのは非常に簡単です。証明や構造なしで重要な結果の一部をリストすることもできます-ゼロ知識証明と準同型暗号化は、価値のあるオタク要因を引き出すことになります。

前方誤り訂正および誤り検出コードも非常にクールであり、適切に行われれば好奇心の強い聴衆に教えることができます。それらを消化しやすくするために、偶然のインデックスの「普遍性」に言及することができます-私たちのすべての話された言語と文章は小さな冗長性と誇張を持っています。ハミングエアコン。

最後に、複雑性理論の簡単な紹介を行うこともお勧めします理論計算機科学のディナーテーブルの説明に対する私の答えに沿ったものです。


10

AK DeweyによるNew Turing Omnibusには、コンピューターサイエンスで66のいわゆるエクスカーションがあります。アルゴリズムの分析、AI、複雑性理論、計算理論、暗号化、コンピュータグラフィックスなどのトピックを扱います。すべてのトピックはかなり凝縮された形式で書かれており、コンピューターサイエンスの画期的な結果を捉えています。この本は、いくつかのインスピレーションを提供します。

もう1つの可能性は、生徒がGoogleのコードインプログラムようなもので手を汚すことを許可することです。GoogleのSummer of Codeに少し似ていますが、ご存知のとおり、子供向けです。おそらく、学生が参加できるすばらしいコーディングプロジェクトのいくつかを見せることは、興味をそそる1つの可能な方法です。


もちろん、この本は1993年(私が思うに)からのものであり、したがって少し古い学校です。
デイブクラーク

2
はい、彼らが生まれる前に書かれた本に言及している場合、将来について彼らを興奮させようとすることには問題があります:)
ラファエル

6

私の意見では、高校生にセクシーにするには、ある種の魔術師である必要があります。だから私は、ランダム化されたアルゴリズムが学生のアトラクターとして非常に優れていると思います。たとえば、プロパティテストは本当に興味深いものであり、誰にでも説明できるものです(技術ではなくアイデアです)。

PCPも魔法ですが、これは手の届かないところにあると思います...


私はかつて、才能のある高校生にPCPについて講演したことがありますが、もちろんそれを証明しませんでしたが、近似の難しさへの応用を示し、定理の一般的な「感覚」を与えました。彼らはそれが好きだったと思うので、それほど手が届かないわけではありません(しかし、彼らは以前に近似アルゴリズムについていくつかの話を聞いていましたが、これなしでは定理の動機をつかまないと思います)。
カロリーナソルティス

4

Michael Mitzenmacherによる高校生向けのコーディング理論に関する非常に素晴らしい記事があります。

http://www.eecs.harvard.edu/~michaelm/FUTUREOFCS/codes-mitzenmacher.pdf


2
これは優秀な調査です
スレシュヴェンカト

2
これは進行中の本の一部のようです。Michael Mitzenmacherのブログ投稿(mybiasedcoin.blogspot.com/2008/04/theorycs-book.html)には、非常に素晴らしい説明的な章(cs.princeton.edu/~chazelle/pubs/algorithm.html)もあります。)Bernard Chazelleによるアルゴリズム。その章自体は数学ではありませんが、数学的なアイデアが豊富です。
コンハン

4

私の答えはTCSに直接関係していませんが、数学が美しく有用であることを示しています。

試験で不正を行った生徒数に関する信頼できるデータを取得する方法についてスピーチを行うことができます。直接尋ねると、信頼できるデータは得られません。信頼できるデータを取得する方法のアイデアは非常に簡単です。まず、すべての生徒に整数値について考えるように指示します。次に、あなたは次のように言います
。他の単純な質問を選択することもできますが、他の調査から、この質問で「はい」と答える人の割合を知る必要があります。
-あなたが不正行為をしていたかどうかにかかわらず、それが偶数であった場合。

学生の約50%が最初の質問で答え、残りの50%が2番目の質問で答えます。不正行為を行った生徒の数を推定するのは非常に簡単です。例:回答の40%が「はい」であり、緑色が好きな人の30%がわかっている場合、学生の約50%が不正行為をしていることがわかります。


2

これは、夕食テーブルの理論的なコンピューターサイエンスの説明と密接に関連していると思いますか?

そこに投稿したように、私はアルゴリズムが毎日の問題に最適であり、TCSを非常によく動機付けられると感じています。(「電話番号を検索するのと同じ方法で検索した場合、1つのGoogle検索にかかる時間」)


1
こんにちはラファエル!私が感じる主な違いは、これらはすべて数学的に志向の学生であり、彼らの将来をどうするかについて積極的に選択していることです。英国に特有のリクルートメントで私たちが抱えていた問題は、高校が彼らにCSは偉大な知識人や世界を変えたい人のためではないことを教えていることです。この誤解を正すのに20分あります:)
ラファエル

そうです(ドイツでも)、態度に多少の違いはあるかもしれませんが、CS固有の知識の量は、夕食のテーブルの人々とほぼ同じかもしれません。他の聴衆のためにパッケージを異なる方法でラップしていることに同意しますが、同じコンテンツを選択します。
ラファエル

2

私によると、「コンピューターサイエンス」は「すべての科学の科学」です:)

「科学」とは何ですか?自然からデータを取得し、データを説明するモデルを構築しようとします。また、自然はarbitrary意的ではないと暗黙的に仮定します。自然の法則は簡潔な表現でなければならず、データはいくつかの対称性を満たさなければなりません。

しかし、これはまさに学習の問題です!データは「低複雑度」であることが約束されているプロセスによって生成され、私たちのタスクはプロセスの記述を再構築することです。

このような問題に対する私たちの理解は非常に原始的なレベルであり、それらに取り組むことはあなたの義務です!:)ブラックボックスプロセスの出力がいくつかの固定機能と同等であるかどうかの、一見単純な問題の理解でさえ、完全にはほど遠いです。たとえば、ブラックボックスが、小さな深さの演算回路で計算できる関数を評価していると約束されていると仮定します(これは高校生に簡単に説明できます)。ゼロ関数を計算します。妥当なサイズのドメインの関数に対して、これが宇宙の存続期間中に実行できるかどうかはわかりません!

算術複雑性理論、深さ4のキャズム、計算におけるランダム性の役割、乗算ゲートの数を減らした場合に知られていることなどについて話を始めましょう...


2

1か月前にDIMACSで開催されたAlgorithms in the Fieldワークショップで、Graham Cormodeは、ストリーミングアルゴリズムから大学生までスケッチテクニックを教えることに賛成しました。モーゼス・チャリカーはプリンストンで彼らを教えていると言った、@ Suresh Venkatはまた、彼がヘビーヒッターのためにMisra-Griesアルゴリズムのようなことを教えると述べたと思う。基本的なストリーミング結果は高校生にとっても素晴らしいと思います:基本的だが重要な数学のトリックに依存し、問題の定式化はパズルのようであり、解決策は魔法のように感じられ、魔法は高校生を鼓舞する素晴らしい方法です。問題の規模と使用できるリソースの量との劇的な違いを強調するようにしてください。馬鹿げた例:JFK空港に出入りするすべての人に郵便番号を尋ねることができるとします。


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