Charla inspiradora para alumnos del último año de secundaria

38

Mi departamento a menudo me pide que dé charlas a los alumnos de último año de secundaria sobre los elementos más matemáticos de la informática. Hago mi mejor esfuerzo para elegir temas de TCS que puedan inspirar su interés (que en su mayoría implica algo que ver con el problema de detención), pero me encantaría escuchar las ideas / éxitos / fracasos de otras personas.

El objetivo es que estos son alumnos que están considerando solicitar un título universitario de CS en una universidad decente, pero pueden sentirse más atraídos por las matemáticas u otra de las ciencias. Me parece que los temas habituales de los algoritmos de ruta más corta o los métodos de clasificación más rápidos realmente ya no funcionan para despertar su interés.

Raphael
fuente
11
Estoy pensando que esto debería ser CW?
Suresh Venkat
¿Es esta realmente una pregunta de nivel de investigación de TCS?
Mohammad Al-Turkistany
18
@turkistany: sí. Vender la importancia de la investigación es una parte esencial de hacer esa investigación. También es una parte donde muchos teóricos son débiles. Parafraseando a Feynman, realmente no entendemos el TCS a menos que podamos explicarlo a los brillantes estudiantes de secundaria.
Aaron Sterling
9
@turkistany: Sí, sí, mil veces sí.
Jeffε
1
@JeffE, Ok, Ok, ..., infinitas veces OK. Ya consigo :)
Mohammad Al-Turkistany

Respuestas:

40

Hay una buena manera de presentar pruebas de conocimiento cero a los estudiantes, que creo que originalmente se debe a Oded Goldreich (corríjame si me equivoco).

Tienes una bola roja y una verde, que el daltónico pobre cree que Charlie es del mismo color. Desea convencer a Charlie de que puede distinguir la diferencia entre la bola roja y la bola verde, y desea hacerlo de tal manera que Charlie no aprenda cuál es rojo y cuál es verde. (Desea demostrar que algo es cierto, de tal manera que nadie más pueda darse la vuelta y reclamar una prueba de ese algo como propio). ¿Cómo puede hacer esto? ¿O es imposible?

Un protocolo es el siguiente. Charlie pone una pelota en cada mano, luego elige cambiar las dos bolas detrás de él o no. Luego presenta las dos bolas nuevamente. Si siempre se puede detectar si se pasó las dos bolas o no, entonces Charlie está convencido de que cada vez que puede decir la diferencia entre ellos. Si Charlie hace esto aleatoria al azar y que realmente no puede decir la diferencia entre los colores, a continuación, sólo tendrá que acertar con una probabilidad de . Después k ensayos, Charlie debe estar convencido de que se puede decir la diferencia con una probabilidad de al menos 1 - 1 / 2 k .1/ /2k1-1/ /2k

Ahora, mientras Charlie se convence cada vez más de que puedes notar la diferencia, frustrantemente nunca aprende qué bola es roja y cuál es verde.

Ryan Williams
fuente
2
Presentar pruebas de ZK es una muy buena opción. Otro ejemplo que creo que será comprensible para los estudiantes es la coloración de gráficos.
Kaveh
2
Hay una genial demostración de sudoku ZK de la página de Moni Naor.
Suresh Venkat
Si bien Goldreich ha contribuido mucho en este campo, las pruebas de ZK se deben originalmente a Goldwasser, Micali y Rackoff . PD: El protocolo de daltonismo convincente se debe en realidad a Goldreich (consulte http://www.wisdom.weizmann.ac.il/~oded/poster03.html ).
MS Dousti
1
@Sadeq: Estoy seguro de que Ryan quiso decir que ZKP para el color de la pelota con un probador daltónico se debe a Goldreich :)
Sasho Nikolov
23

Una fuente buena para los propósitos educativos en general, es CS desenchufado , que tiene un montón de ideas CS ordenadas traducidos al de secundaria y de secundaria actividades .

Noam
fuente
Ese es un muy buen enlace gracias. Lo más notable de esto es que está dirigido a niños de secundaria. Dudo que haya una sola escuela intermedia en el Reino Unido que enseñe algo así, lamentablemente.
Raphael
El libro de Teacher's Edition parece más adecuado para niños de primaria y secundaria, en lugar de para estudiantes de secundaria.
Alessandro Cosentino
16

Uno de los aspectos más atractivos de TCS es cómo utiliza ideas matemáticas abstractas para las aplicaciones prácticas del día a día. Una presentación puede centrarse en las ideas abstractas que se encuentran un paso por detrás de lo que ven a diario en Internet: los caminos más cortos se vuelven emocionantes una vez que se colocan en el contexto de amigos de amigos en Facebook. Se pueden utilizar más algoritmos gráficos en Pagerank; Las recomendaciones de Amazon plantean el desafío del aprendizaje automático; y comprar cosas en Internet es ciertamente una buena ventaja para la criptografía de clave pública.

Noam
fuente
44
Además, cualquier jugador de StarCraft es consciente de la importancia de un buen algoritmo de ruta más corta. Y supongo que los estudiantes de secundaria todavía están jugando videojuegos (¿verdad?).
Sylvain Peyronnet
1
Definitivamente están jugando videojuegos.
Daniel Apon
15

Creo que casi cualquier tema en informática puede usarse para dar una charla interesante, pero algunos son más adecuados, la parte más importante es la presentación.

Lado divertido de la informática

He usado varios juegos de la Teoría de juegos combinatorios, principalmente de los "Juegos justos" de Richard Guy y Elwyn R. Berlekamp, ​​John H. Conway y "Las formas ganadoras de tus juegos matemáticos" de Richard K. Guy ( wiki ).

Son diversión , y se puede jugar en la clase con ellos y que encuentren la manera correcta de jugar, dar algunas pistas por lo que al final se encuentran la manera de ganar el juego. Estos juegos son probablemente más adecuados para estudiantes más jóvenes.

Hay otros temas divertidos en Ciencias de la computación donde puede elegir un problema que sea más adecuado para su audiencia y utilizarlo para involucrarlos.

Lado filosófico de la informática

Hay muchos temas en informática teórica que están relacionados con la filosofía y las grandes preguntas . Desde el teorema de incompletitud de Gödel hasta pruebas de conocimiento cero, seguridad, privacidad, teoría algorítmica de juegos, P vs NP, aprendizaje automático, ... No entraría en detalles, solo demostraría que los problemas son interesantes, son más que solo ciencias de la computación , están relacionados con grandes preguntas. (Eche un vistazo a la computación cuántica de Scott Aaronson desde Demócrito y grandes ideas en conferencias teóricas de informática ). No los haga sentir que el tema está muerto (es decir, se responden todas las preguntas), haga que sientan que el área está viva, que ha habido progreso pero que todavía hay grandes desafíos por delante y que es un viaje a una tierra sin descubrir.

Lado tecnológico de la informática

Hable acerca de la informática detrás de las tecnologías. Hay tantos temas que uno puede elegir aquí, tecnologías familiares , desde videojuegos hasta búsqueda en Google, traducción automática, visión, ... tecnologías que todos usan todos los días, o incluso otras que no son familiares. Hable sobre las tecnologías en curso y de próxima generación, sobre el impacto que han tenido en nuestras vidas y cómo lo han mejorado. Hable acerca de la investigación que se realiza en grandes compañías famosas (como Google, Microsoft, Apple, IBM, ...) y los productos que desarrollan. Hable acerca de los grandes problemas de nuestro tiempo y qué efecto tiene la informática en ellos.

Lado matemático de la informática

Esto es bueno para los estudiantes que ya están interesados ​​en las matemáticas, aquellos interesados ​​en el lado puro y exacto , pero sin combinarlo con otro tema mencionado anteriormente, no será tan efectivo para otros estudiantes. Me gustaría ir con una gran pregunta y en algún momento mencionar comenzar a hablar sobre problemas matemáticos involucrados.

Lado interdisciplinario de la informática

La informática es probablemente una de las asignaturas más interdisciplinarias , hay alguna conexión con casi cualquier otra asignatura, humanística (sociología, lingüística, economía, filosofía, ...), ciencias naturales (matemáticas, física, ...), biología, ciencias médicas, arte, ingeniería (electrónica, mecánica, ...), ... ¡cualquier cosa! Cualquiera que sea el tema que le interese, ¡hay algo en ciencias de la computación que está relacionado con él! Como dijo Scott, Every Other Major Sucks By Comparison :).

Todos ellos

También puede intentar mencionar todos los temas que he mencionado anteriormente. No he intentado esto, y no estoy seguro de cuán efectivo sería. Tienes que transferir el sentimiento y hacer el punto, y lleva algún tiempo. Otra opción es mencionarlos brevemente al principio (o al final) y luego continuar con uno de ellos y decirles que pueden contactarlo para obtener más información sobre los otros si están interesados.

algunos comentarios

De lo que va a hablar, debería entusiasmarse . Va a ser mucho más difícil interesarlos en un tema que no sea realmente interesante para usted. Cuénteles sobre sus propios motivos para seleccionar la informática. Y no seas aburrido .

Kaveh
fuente
14

He utilizado dos charlas con bastante éxito tanto con estudiantes de secundaria como con estudiantes de primer año.

  1. Origami. Comencé con el problema de la estrella de 5 puntos (esto funciona bien en contextos estadounidenses, debido a la conexión con la bandera estadounidense) y dejo que los estudiantes traten de descubrir cómo hacer una estrella de cinco puntos con plegado + 1 corte. Hablo sobre el "recurso" (corte) y cómo el diseño de algoritmos se trata de trabajar con recursos limitados. Luego hablo sobre otras preguntas y aplicaciones de origami en el mundo real (válvulas cardíacas, telescopios de la NASA, zonas de deformación en automóviles).

  2. Clasificación de panqueques: existe una hermosa conexión entre la clasificación de los panqueques y la reorganización del genoma, y ​​en realidad hice montones de panqueques de espuma para que los estudiantes jueguen. Funciona muy bien y me permite hablar sobre algoritmos, secuenciación de genes, Bill Gates (!) Y otras cosas divertidas.

Suresh Venkat
fuente
10

La criptografía es siempre algo que captura la mente de las personas más jóvenes (y personalmente espero mayores). Tenía amigos que querían ser asistentes de enfermeras, jugadores de hockey, hombres de negocios y políticos y amigos (que a pesar de sus objetivos más altos) tomaron trabajos como empacadores de comestibles y carreteros, trabajadores de la construcción y asistentes de perreras, todos los cuales inventaron y se rompieron unos a otros ''. (ciertamente ingenuo y simple) códigos. En particular, la existencia de criptografía de clave pública suele ser bastante fácil de explicar si se toma la ruta de RSA. También se pueden enumerar algunos de los resultados importantes sin pruebas o construcciones: las pruebas de conocimiento cero y el cifrado homomórfico están obligados a potenciar el factor geek de lo que vale.

Los códigos de corrección de errores hacia adelante y detección de errores también son muy interesantes y, si se hacen correctamente, se pueden enseñar a un público curioso. Para hacerlos más fáciles de digerir, podría mencionar la "universalidad" del índice de coincidencia: que todo nuestro lenguaje hablado y escritura tienen pequeñas redundancias y exageraciones que nos ayudan a comunicarnos en el canal ruidoso de una habitación que contiene bolsas, pies y Humming acondicionadores de aire.

Finalmente, también sugeriría hacer una introducción simple a la teoría de la complejidad, algo similar a mi respuesta a una descripción de la mesa de la cena de la informática teórica .

Ross Snider
fuente
10

El nuevo Omnibus de Turing por AK Dewey tiene 66 llamadas excursiones en informática. Cubre temas como el análisis de algoritmos, IA, teoría de la complejidad, teoría de la computación, criptografía, gráficos por computadora, etc. Cada tema está escrito en una forma bastante condensada, capturando algún resultado histórico en la informática. Este libro podría proporcionar algo de inspiración.

Otra posibilidad es permitir que los estudiantes se ensucien las manos a través de algo como el programa Code-in de Google . Es un poco como el Summer of Code de Google , pero, ya sabes, para niños. Quizás mostrar algunos de los increíbles proyectos de codificación en los que los estudiantes pueden participar es una forma posible de despertar interés.

Dave Clarke
fuente
Por supuesto, el libro es de 1993 (creo) y, por lo tanto, es un poco viejo.
Dave Clarke
2
Sí, hay un problema al tratar de entusiasmarlos con el futuro si uno se refiere a un libro escrito antes de que nacieran :)
Raphael
6

En mi opinión, para ser sexy con los estudiantes de secundaria, debes ser una especie de mago. Es por eso que creo que los algoritmos aleatorios son muy buenos como atractores de estudiantes. Por ejemplo, las pruebas de propiedad son realmente algo intrigante, y también algo que puede explicarse (no los tecnicismos, sino la idea) a cualquiera.

PCP también es mágico, pero supongo que esto está fuera de alcance ...

Sylvain Peyronnet
fuente
Una vez había dado una charla sobre PCP a estudiantes talentosos de secundaria, por supuesto, sin demostrarlo, pero mostrando sus aplicaciones a la dureza de la aproximación y dando la "sensación" general del teorema. Creo que les gustó, por lo que no está fuera de su alcance (pero ya habían escuchado algunas conversaciones sobre algoritmos de aproximación, sin esto creo que no captarían la motivación del teorema).
Karolina Sołtys
4

Aquí hay un muy buen artículo sobre teoría de codificación dirigido a estudiantes de secundaria por Michael Mitzenmacher:

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

Jagadish
fuente
2
esta es una encuesta excelente
Suresh Venkat
2
Esto parece parte de un libro que es un trabajo en progreso. La publicación de blog de Michael Mitzenmacher ( myditionalcoin.blogspot.com/2008/04/theorycs-book.html ) tiene un enlace a eso, que también tiene un capítulo expositivo muy agradable ( cs.princeton.edu/~chazelle/pubs/algorithm.html ) sobre algoritmos de Bernard Chazelle. Ese capítulo no es matemática per se, pero es rico en ideas matemáticas.
Cong Han
4

Mi respuesta no está directamente relacionada con TCS, pero puede mostrar que las matemáticas pueden ser hermosas y útiles.

Podría hacer un discurso sobre cómo obtener datos confiables sobre cuántos estudiantes estaban haciendo trampa en el examen. Si les preguntaras directamente, entonces no obtendrías datos confiables. La idea de cómo obtener datos confiables es muy simple. Primero le dice a cada alumno que piense en algún número entero, luego dice:
- Si fue un número impar, escriba si le gusta el color verde o no. Puede elegir cualquier otra pregunta simple, pero debe saber, en alguna otra encuesta, qué porcentaje de personas responden sí a esta pregunta.
- Si fue un número par, escriba si estaba haciendo trampa o no.

Alrededor del 50% de los estudiantes responderán a la primera pregunta, y el otro 50% responderá a la segunda pregunta. Ahora es muy fácil estimar cuántos estudiantes estaban haciendo trampa. Ejemplo: si el 40% de las respuestas fueron afirmativas y usted sabe que al 30% de las personas les gusta el color verde, entonces sabe que aproximadamente el 50% de los estudiantes estaban haciendo trampa.

Tomek Tarczynski
fuente
2

Creo que esto está estrechamente relacionado con la descripción de la cena de la informática teórica?

Cuando publiqué allí, siento que los algoritmos relacionan lo mejor con los problemas cotidianos y, por lo tanto, pueden motivar a TCS muy bien. ("Cuánto tiempo tomaría una búsqueda en Google si buscaran de la misma manera que busca números de teléfono")

Raphael
fuente
1
Hola rafael La principal diferencia que siento es que todos estos son estudiantes matemáticamente inclinados que toman una decisión activa sobre qué hacer con su futuro. El problema que hemos tenido en el reclutamiento, que puede ser peculiar del Reino Unido, es que la escuela secundaria les enseña que CS no es para grandes intelectuales ni para personas que quieren cambiar el mundo. Tengo 20 minutos para corregir esta idea falsa :)
Raphael
Eso es correcto (también en Alemania) y puede haber algunas diferencias de actitud, pero la cantidad de conocimiento específico de CS presente podría ser aproximadamente la misma que para la gente de la mesa. Estoy de acuerdo en que ha envuelto el paquete de manera diferente para la otra audiencia, pero elegiría el mismo contenido.
Raphael
2

Según yo, la "informática" es la "ciencia de todas las ciencias" :)

Qué es ciencia"? Obtenemos datos de la naturaleza e intentamos construir un modelo que explique los datos. Además, suponemos implícitamente que la naturaleza no es arbitraria. Las leyes de la naturaleza deben tener una expresión concisa, los datos deben satisfacer algunas simetrías, etc.

¡Pero esto es exactamente un problema de aprendizaje! Los datos son generados por algún proceso que promete ser de "baja complejidad", y nuestra tarea es reconstruir una descripción del proceso.

¡Nuestra comprensión de tales problemas está en un nivel tan primitivo que es su deber trabajar en ellos! :) Incluso nuestra comprensión del problema aparentemente más simple de si la salida de un proceso de caja negra es equivalente a alguna función fija está lejos de completarse. Por ejemplo, supongamos que se nos promete que la caja negra está evaluando una función que puede ser calculada por un circuito aritmético de poca profundidad (esto es fácil de explicar a los estudiantes de secundaria), y queremos saber si la caja es calculando la función cero. ¡No sabemos si esto se puede hacer en la vida del universo para funciones en dominios de tamaño razonable!

Cue para comenzar a hablar sobre la teoría de la complejidad aritmética, el abismo en la profundidad 4, el papel de la aleatoriedad en el cálculo, lo que se sabe si reducimos el número de puertas de multiplicación, etc., etc.

revs arnab
fuente
2

En el taller Algorithms in the Field hace un mes en DIMACS, Graham Cormode estaba argumentando a favor de enseñar técnicas de boceto desde algoritmos de transmisión a estudiantes universitarios. Moses Charikar dijo que sí les enseñan en Princeton, creo que @Suresh Venkat también mencionó que enseña cosas como el algoritmo Misra-Gries para los bateadores pesados. Creo que algunos resultados básicos de transmisión también serían geniales para los estudiantes de secundaria: confían en trucos matemáticos básicos pero importantes, las formulaciones problemáticas son como acertijos y las soluciones se sienten como magia, y la magia es una excelente manera de inspirar a los estudiantes de secundaria. Puede asegurarse de enfatizar la diferencia dramática entre la escala del problema y la cantidad de recursos que puede usar. Un ejemplo tonto: suponga que puede pedirle a cada persona que ingrese o salga del aeropuerto JFK su código postal.

Sasho Nikolov
fuente
Sip. este es un buen ejemplo
Suresh Venkat