Ich werde oft von meiner Abteilung gebeten, vor Schülern im letzten Schuljahr Vorträge über die mathematischeren Elemente der Informatik zu halten. Ich gebe mein Bestes, um Themen aus TCS auszuwählen, die ihr Interesse wecken könnten (was meistens etwas mit dem Halting-Problem zu tun hat), würde aber gerne die Ideen / Erfolge / Misserfolge anderer Leute hören.
Die Aufgabe besteht darin, dass es sich um Schüler handelt, die erwägen, sich an einer anständigen Universität für einen CS-Abschluss zu bewerben, die sich jedoch eher für Mathematik oder andere Naturwissenschaften interessieren. Ich finde, dass die üblichen Themen von Algorithmen mit kürzesten Wegen oder schnelleren Sortiermethoden nicht mehr wirklich funktionieren, um ihr Interesse zu wecken.
quelle
Antworten:
Es gibt eine gute Möglichkeit, den Schülern wissensfreie Beweise vorzulegen, die meiner Meinung nach ursprünglich von Oded Goldreich stammen (bitte korrigieren Sie mich, wenn ich mich irre).
Sie haben eine rote und eine grüne Kugel, von denen Charlie glaubt, dass sie die gleiche Farbe haben. Sie möchten Charlie davon überzeugen, dass Sie den Unterschied zwischen der roten und der grünen Kugel erkennen können, und Sie möchten dies so tun, dass Charlie nicht lernt, welche Farbe rot und welche grün ist. (Sie möchten beweisen, dass etwas wahr ist, so dass sich niemand anders umdrehen kann und einen Beweis für dieses Etwas für sich beansprucht.) Wie können Sie das tun? Oder ist es unmöglich?
Ein Protokoll ist das folgende. Charlie legt einen Ball in jede Hand und wählt dann, ob er die beiden Bälle hinter sich vertauscht oder nicht. Dann präsentiert er die beiden Bälle wieder. Wenn Sie immer erkennen kann , ob er die beiden Kugeln eingeschaltet ist oder nicht, dann Charlie ist zunehmend davon überzeugt , dass Sie kann den Unterschied zwischen ihnen erzählen. Wenn Charlie dies zufällig macht und Sie den Unterschied zwischen den Farben wirklich nicht erkennen können, werden Sie nur mit der Wahrscheinlichkeit richtig raten . Nach Versuchen sollte Charlie überzeugt sein, dass man den Unterschied mit einer Wahrscheinlichkeit von mindestens .k 1 - 1 / 2 k1 / 2 k 1 - 1 / 2k
Während Charlie zunehmend überzeugt ist, dass man den Unterschied erkennen kann, lernt er frustrierend nie, welcher Ball rot und welcher grün ist.
quelle
Eine gute Quelle für Bildungszwecke im Allgemeinen ist CS Unplugged , das viele nette CS-Ideen enthält, die in Aktivitäten an Gymnasien und Mittelschulen umgesetzt werden .
quelle
Einer der attraktivsten Aspekte von TCS ist die Verwendung abstrakter mathematischer Ideen für die tägliche praktische Anwendung. Eine Präsentation kann sich auf die abstrakten Ideen konzentrieren, die einen Schritt hinter dem stehen, was sie täglich im Internet sehen: Kürzeste Wege werden aufregend, wenn sie in den Kontext von Freunden von Freunden auf Facebook gestellt werden. Weitere Grafikalgorithmen können auf Pagerank basieren. Die Empfehlungen von Amazon werfen die Herausforderung des maschinellen Lernens auf. und das Kaufen von Sachen im Internet ist sicherlich ein guter Hinweis für die Krypto mit öffentlichem Schlüssel.
quelle
Ich denke, fast jedes Thema in der Informatik kann für einen interessanten Vortrag verwendet werden, aber einige sind besser geeignet, je wichtiger die Präsentation ist.
Lustige Seite der Informatik
Ich habe verschiedene Spiele aus der kombinatorischen Spieltheorie verwendet, hauptsächlich aus Richard Guys "Fair Games" und Elwyn R. Berlekamp, John H. Conway und Richard K. Guys "Winning Ways for your Mathematical Plays" ( Wiki ).
Sie sind Spaß , und man kann sich in der Klasse mit ihnen spielen und lassen Sie sie den richtigen Weg finden , es zu spielen, gibt einige Hinweise , um am Ende sie den Weg finden , das Spiel zu gewinnen. Diese Spiele sind wahrscheinlich eher für jüngere Schüler geeignet.
Es gibt andere unterhaltsame Themen in der Informatik, in denen Sie ein Problem auswählen können, das besser für Ihr Publikum geeignet ist, und es verwenden, um es zu beschäftigen.
Philosophische Seite der Informatik
Es gibt viele Themen in der theoretischen Informatik, die sich auf die Philosophie und die großen Fragen beziehen . Von Gödels Unvollständigkeitssatz zu wissensfreien Beweisen, Sicherheit, Datenschutz, algorithmischer Spieltheorie, P gegen NP, maschinellem Lernen ... Ich würde nicht auf Details eingehen, sondern nur zeigen, dass die Probleme interessant sind, sie sind mehr als nur Informatik Sie haben mit großen Fragen zu tun. (Werfen Sie einen Blick auf Scott Aaronsons Quantum Computing seit Demokrit und großartige Ideen in Vorlesungen über theoretische Informatik ). Machen Sie ihnen nicht das Gefühl, dass das Thema tot ist (dh alle Fragen sind beantwortet). Machen Sie ihnen das Gefühl, dass das Gebiet lebendig ist, dass Fortschritte erzielt wurden, dass aber noch große Herausforderungen bevorstehen und dass es eine Reise in ein unentdecktes Land ist.
Technologische Seite der Informatik
Sprechen Sie über die Informatik hinter Technologien. Es gibt so viele Themen, die man hier auswählen kann, vertraute Technologien von Videospielen über die Google-Suche, maschinelle Übersetzung, Vision, ... Technologien, die jeder Tag nutzt, oder sogar unbekannte. Sprechen Sie über die Fortschritte und Technologien der nächsten Generation, über die Auswirkungen, die sie auf unser Leben hatten, und darüber, wie sie es verbessert haben. Sprechen Sie über Forschungsarbeiten in großen, bekannten Unternehmen (wie Google, Microsoft, Apple, IBM, ...) und über Produkte, die sie entwickeln. Sprechen Sie über große Probleme unserer Zeit und welche Auswirkungen die Informatik auf sie hat.
Mathematische Seite der Informatik
Dies ist gut für Studenten, die sich bereits für Mathematik interessieren, für diejenigen, die sich für die reine und exakte Seite interessieren , aber ohne sie mit einem anderen oben erwähnten Thema zu kombinieren, wird es für andere Studenten nicht so effektiv sein. Ich würde mit einer großen Frage beginnen und irgendwann anfangen, über die damit verbundenen mathematischen Probleme zu sprechen.
Interdisziplinäre Seite der Informatik
Die Informatik ist wahrscheinlich eines der interdisziplinärsten Fächer, es gibt Verbindungen zu fast allen anderen Fächern: Humanistik (Soziologie, Linguistik, Wirtschaftswissenschaften, Philosophie, ...), Naturwissenschaften (Mathematik, Physik, ...), Biologie, Medizin, Kunst, Technik (Elektronik, Mechanik, ...), ... alles! Für welches Thema Sie sich auch interessieren, es gibt etwas in der Informatik, das damit zusammenhängt! Wie Scott sagte, saugt jeder andere Major im Vergleich :).
Alle von ihnen
Sie können auch versuchen, alle oben genannten Themen zu erwähnen. Ich habe das noch nicht ausprobiert und bin mir nicht sicher, wie effektiv es sein würde. Sie müssen das Gefühl übertragen und den Punkt machen, und es dauert einige Zeit. Eine andere Möglichkeit besteht darin, alle zu Beginn (oder am Ende) kurz zu erwähnen und dann mit einem von ihnen fortzufahren und ihnen mitzuteilen, dass sie Sie kontaktieren können, um weitere Informationen zu den anderen zu erhalten, wenn sie interessiert sind.
einige Kommentare
Worüber Sie auch sprechen, Sie sollten begeistert sein. Es wird viel schwieriger sein, sie für ein Thema zu interessieren, das für Sie selbst nicht wirklich interessant ist. Erzählen Sie ihnen von Ihren eigenen Gründen für die Wahl der Informatik. Und sei nicht langweilig .
quelle
Ich habe zwei Gespräche mit Schülern und Studienanfängern sehr erfolgreich geführt.
Origami. Ich beginne mit dem 5-Punkte-Stern-Problem (dies funktioniert aufgrund der Verbindung mit der amerikanischen Flagge gut in amerikanischen Zusammenhängen) und lasse die Schüler versuchen, herauszufinden, wie man einen 5-Punkte-Stern mit Faltung + 1 Schnitt macht. Ich spreche über die "Ressource" (Schneiden) und wie beim Algorithmusdesign mit begrenzten Ressourcen gearbeitet wird. Dann spreche ich über andere Origami-Fragen und Anwendungen in der realen Welt (Herzklappen, NASA-Teleskope, Knautschzonen in Autos).
Pfannkuchen sortieren: Es gibt eine wunderbare Verbindung zwischen dem Sortieren von Pfannkuchen und der Neuordnung des Genoms, und ich habe tatsächlich Stapel von Pfannkuchen aus Schaumstoff hergestellt, mit denen die Schüler spielen können. Funktioniert hervorragend und lässt mich über Algorithmen, Gensequenzierung, Bill Gates (!) Und andere lustige Dinge sprechen.
quelle
Kryptographie ist immer etwas, das den Verstand jüngerer (und ich persönlich hoffe, älterer) Menschen einfängt. Ich hatte Freunde, die Assistenten der Krankenschwestern, Hockeyspieler, Geschäftsleute und Politiker sein wollten, und Freunde, die trotz ihrer höheren Ziele als Einkaufstüten- und Karrenschieber, Bauarbeiter und Zwingerassistenten arbeiteten - alle erfanden und brachen sich gegenseitig. (zugegebenermaßen naive und einfache) Codes. Insbesondere das Vorhandensein von Public-Key-Kryptografie lässt sich in der Regel recht einfach erklären, wenn man sich für RSA entscheidet. Man könnte auch einige der wichtigen Ergebnisse ohne Beweise oder Konstruktionen auflisten - Zero-Knowledge-Beweise und homomorphe Verschlüsselung sind dazu verpflichtet, den Geek-Faktor für das, was er wert ist, in den Griff zu bekommen.
Forward Error Correction und Error Detection Codes sind auch sehr cool und können, wenn sie richtig gemacht werden, einem neugierigen Publikum beigebracht werden. Um sie leichter verdaulich zu machen, können Sie die "Universalität" des Zufallsindex erwähnen - all unsere gesprochenen und geschriebenen Worte haben kleine Redundanzen und Übertreibungen, die uns helfen, im lauten Kanal eines Raums zu kommunizieren, der sich aus Taschen, Füßen und Dingen zusammensetzt summende Klimaanlagen.
Schließlich würde ich auch vorschlagen, eine einfache Einführung in die Komplexitätstheorie zu geben - etwas in Anlehnung an meine Antwort auf A Dinner-table description of Theoretical Computer Science .
quelle
Der New Turing Omnibus von AK Dewey bietet 66 sogenannte Informatikexkursionen an. Es behandelt Themen wie Algorithmenanalyse, KI, Komplexitätstheorie, Berechnungstheorie, Kryptographie, Computergrafik und so weiter. Jedes Thema ist in einer ziemlich komprimierten Form geschrieben, die ein wegweisendes Ergebnis in der Informatik einfängt. Dieses Buch könnte Inspiration liefern.
Eine andere Möglichkeit besteht darin, den Schülern die Möglichkeit zu geben, sich über etwas wie das Code-in- Programm von Google die Hände schmutzig zu machen . Es ist ein bisschen wie Googles Summer of Code , aber für Kinder. Vielleicht ist es eine Möglichkeit, Interesse zu wecken, einige der erstaunlichen Codierungsprojekte zu zeigen, an denen Studenten beteiligt sein können.
quelle
Meiner Meinung nach muss man eine Art Magier sein, um sexy zu sein. Deshalb finde ich, dass randomisierte Algorithmen als Studentenattraktor sehr gut geeignet sind. Zum Beispiel ist das Testen von Eigenschaften wirklich faszinierend und kann auch jedem erklärt werden (nicht die technischen Details, sondern die Idee).
PCP ist auch magisch, aber ich denke, dass dies nicht in Reichweite ist ...
quelle
Hier ist ein sehr schöner Artikel über Codierungstheorie, der sich an Schüler von Michael Mitzenmacher richtet:
http://www.eecs.harvard.edu/~michaelm/FUTUREOFCS/codes-mitzenmacher.pdf
quelle
Meine Antwort ist nicht direkt mit TCS verbunden, kann aber zeigen, dass Mathematik schön und nützlich sein kann.
Sie könnten eine Rede darüber halten, wie Sie zuverlässige Daten darüber erhalten, wie viele Schüler die Prüfung betrogen haben. Wenn Sie sie direkt fragen, erhalten Sie keine zuverlässigen Daten. Die Idee, wie man zuverlässige Daten erhält, ist sehr einfach. Zuerst sagst du jedem Schüler, er solle über eine ganze Zahl nachdenken, dann sagst du:
- Wenn es eine ungerade Zahl war, schreibe auf, ob du die grüne Farbe magst oder nicht. Sie können jede andere einfache Frage auswählen, aber Sie müssen aus einer anderen Umfrage wissen, wie viel Prozent der Menschen diese Frage mit Ja beantworten.
- Wenn es gerade Zahl war, notieren Sie, ob Sie betrogen haben oder nicht.
Ungefähr 50% der Schüler werden auf die erste Frage antworten, und die anderen 50% werden auf die zweite Frage antworten. Nun ist es sehr einfach einzuschätzen, wie viele Schüler geschummelt haben. Beispiel: Wenn 40% der Antworten mit Ja beantwortet wurden und Sie wissen, dass 30% der Menschen die grüne Farbe mögen, dann wissen Sie, dass etwa 50% der Schüler betrogen haben.
quelle
Ich denke, das hängt eng mit der Beschreibung des Abendessens in der theoretischen Informatik zusammen.
Als ich dort schrieb, hatte ich das Gefühl, dass Algorithmen die alltäglichen Probleme am besten betreffen und daher TCS sehr gut motivieren können. ("Wie lange würde eine Google-Suche dauern, wenn sie genauso suchen würde, wie Sie Telefonnummern nachschlagen?")
quelle
"Informatik" ist für mich die "Wissenschaft aller Wissenschaften" :)
Was ist Wissenschaft"? Wir erhalten Daten aus der Natur und versuchen, ein Modell zu erstellen, das die Daten erklärt. Wir gehen implizit davon aus, dass die Natur nicht willkürlich ist. Die Naturgesetze müssen prägnant formuliert sein, die Daten müssen gewisse Symmetrien aufweisen usw.
Das ist aber genau ein Lernproblem! Die Daten werden von einem Prozess generiert, von dem versprochen wird, dass er eine "geringe Komplexität" aufweist. Unsere Aufgabe ist es, eine Beschreibung des Prozesses zu rekonstruieren.
Unser Verständnis für solche Probleme ist so primitiv, dass es Ihre Pflicht ist, daran zu arbeiten! :) Auch unser Verständnis des scheinbar einfacheren Problems, ob die Ausgabe eines Black-Box-Prozesses einer festen Funktion entspricht, ist bei weitem nicht vollständig. Nehmen wir zum Beispiel an, dass uns versprochen wird, dass die Blackbox eine Funktion auswertet, die mit einer kleinen arithmetischen Schaltung berechnet werden kann (dies ist für Schüler leicht zu erklären), und wir möchten herausfinden, ob es sich um eine Blackbox handelt Berechnung der Nullfunktion. Wir wissen nicht, ob dies zu Lebzeiten des Universums für Funktionen auf Domänen mit angemessener Größe möglich ist!
Cue, um über die arithmetische Komplexitätstheorie, die Kluft in Tiefe 4, die Rolle der Zufälligkeit bei der Berechnung zu sprechen, was bekannt ist, wenn wir die Anzahl der Multiplikationsgatter reduzieren, usw. usw. ...
quelle
Graham Cormode plädierte vor einem Monat im Workshop Algorithms in the Field in DIMACS dafür, Skizziertechniken von Streaming-Algorithmen bis zu Studenten zu vermitteln. Moses Charikar sagte, dass sie sie in Princeton unterrichten, ich denke, @Suresh Venkat erwähnte auch, dass er Dinge wie den Misra-Gries-Algorithmus für Heavy Hitter unterrichtet. Ich denke, einige grundlegende Streaming-Ergebnisse wären auch für Schüler großartig: Sie beruhen auf einfachen, aber wichtigen mathematischen Tricks, die Problemformulierungen sind wie Rätsel, und die Lösungen fühlen sich wie Magie an, und Magie ist eine großartige Möglichkeit, Schüler zu inspirieren. Sie können sicherstellen, dass der dramatische Unterschied zwischen dem Ausmaß des Problems und der Menge der Ressourcen, die Sie verwenden können, hervorgehoben wird. Ein albernes Beispiel: Nehmen wir an, Sie können jede Person, die den JFK-Flughafen betritt oder verlässt, nach ihrer Postleitzahl fragen.
quelle