고교생을위한 감동적인 대화


38

나는 종종 부서에서 컴퓨터 과학의 더 수학적 요소에 대해 말을하는 고등학교 학생들에게 대화를하도록 요청받습니다. TCS에서 관심을 불러 일으킬 수있는 주제를 선택하기 위해 최선을 다하지만 (주로 Halting 문제와 관련이 있음) 다른 사람들의 아이디어 / 성공 / 실패를 듣고 싶습니다.

이 과정은 괜찮은 대학에서 CS 학사 학위를 신청하는 학생들이지만 수학이나 다른 과학에 더 매료 될 수 있습니다. 가장 짧은 경로 알고리즘이나 빠른 정렬 방법의 일반적인 주제는 더 이상 관심을 끌기 위해 더 이상 작동하지 않습니다.


11
나는 이것이 CW이어야한다고 생각하고 있습니까?
Suresh Venkat

이것이 실제로 TCS 연구 수준의 질문입니까?!
Mohammad Al-Turkistany

18
@turkistany : 그렇습니다. 연구의 중요성을 파는 것은 그 연구를 수행하는 데 필수적인 부분입니다. 또한 많은 이론가들이 약한 부분이기도합니다. Feynman을 말하면, 우리는 밝은 고등학생에게 설명 할 수 없다면 TCS를 실제로 이해하지 못합니다.
Aaron Sterling

9
@turkistany : 예, 천 번 예.
Jeffε

1
@JeffE, Ok, Ok, ..., 무한 횟수 OK. 나는 지금 얻는다 :)
Mohammad Al-Turkistany

답변:


40

제로 지식 증명을 학생들에게 소개하는 깔끔한 방법이 있습니다. 원래 Oded Goldreich 때문이라고 생각합니다 (잘못되면 수정하십시오).

당신은 빨간 공과 녹색 공을 가지고 있습니다. 당신은 Charlie에게 빨간 공과 녹색 공의 차이점을 말할 수 있다고 설득하고 싶고 Charlie가 빨간색과 녹색을 배우지 않는 방식으로 이것을하고 싶습니다 . (어떤 사람도 돌아 서서 자신의 것으로 증명할 수없는 방식으로 무언가가 진실하다는 것을 증명하고 싶습니다.) 어떻게 할 수 있습니까? 아니면 불가능합니까?

하나의 프로토콜은 다음과 같습니다. 찰리는 양손에 공을 넣은 다음 그 뒤에 공 두 개를 전환할지 여부를 선택합니다. 그런 다음 그는 두 공을 다시 선물합니다. 그가 두 공을 바꿨는지 여부를 항상 감지 할 수 있다면 Charlie는 그 두 가지 의 차이점을 말할 있다고 확신 합니다. Charlie가 무작위로 셔플을 수행하고 실제로 색상의 차이를 알 수 없다면 확률 만 올바르게 추측 할 수 있습니다 . 번의 시도 후에 Charlie는 적어도 확률로 차이를 말할 수 있다고 확신해야합니다 .(K) 1 - 1 / 2 K1/2k11/2k

찰리가 당신이 그 차이를 말할 수 있다고 확신하는 동안, 그는 어떤 공이 빨간색인지, 어느 공이 녹색인지 실망스럽게 결코 배우지 않습니다.


2
ZK 증명을 제시하는 것이 매우 좋습니다. 학생들이 이해할 수있는 또 다른 예는 그래프 채색입니다.
Kaveh

2
Moni Naor의 페이지에서 멋진 ZK 스도쿠 데모가 있습니다.
Suresh Venkat

Goldreich는이 분야에 많은 기여를했지만 ZK 증명은 원래 Goldwasser, Micali 및 Rackoff 때문 입니다. 추신 : 색맹이 확실한 프로토콜은 실제로 Goldreich 때문입니다 ( http://www.wisdom.weizmann.ac.il/~oded/poster03.html 참조 ).
MS Dousti

1
@Sadeq : Ryan이 컬러 블라인드 프로 버가있는 볼 컬러의 ZKP가 Goldreich 때문이라는 것을 의미한다고 확신합니다 :)
Sasho Nikolov

23

일반적으로 교육 목적을위한 좋은 출처는 CS 플러그를 뽑아 놓은 것인데, 고등학교와 중학교 활동 으로 번역 된 깔끔한 CS 아이디어가 많이 있습니다.


매우 좋은 링크 감사합니다. 그것에 대해 가장 주목할만한 것은 중학교 어린이를 대상으로한다는 것입니다. 나는 영국에 하나의 중학교가 슬프게도 가르치는 것이 의심 스럽다.
Raphael

Teacher 's Edition 책은 고등학생보다는 초등학생과 중학생에게 더 적합합니다.
Alessandro Cosentino

16

가장 매력적인 측면 중 하나 인 TCS는 일상적인 실제 응용에 추상적 인 수학적 아이디어를 사용하는 방법입니다. 프리젠 테이션은 인터넷에서 매일 보는 것보다 한 걸음 뒤에 놓인 추상적 인 아이디어에 초점을 맞출 수 있습니다. 가장 짧은 길은 Facebook에서 친구의 친구와 관련이 있으면 흥미 진진 해집니다. 더 많은 그래프 알고리즘이 Pagerank에 올라갈 수 있습니다. 아마존 권장 사항은 기계 학습의 도전을 제기합니다. 인터넷에서 물건을 구매하는 것은 공개 키 암호의 확실한 리드입니다.


4
또한 모든 스타 크래프트 플레이어는 가장 짧은 경로 알고리즘의 중요성을 알고 있습니다. 그리고 나는 고등학생들이 여전히 비디오 게임을하고 있다고 생각합니다 (그렇지?).
Sylvain Peyronnet

1
그들은 분명히 비디오 게임을하고 있습니다.
Daniel Apon

15

나는 컴퓨터 과학의 거의 모든 주제가 재미있는 대화를하기 위해 사용될 수 있다고 생각하지만, 일부는 더 적합할수록 더 중요한 부분은 프리젠 테이션입니다.

컴퓨터 과학의 재미있는면

나는 조합 게임 이론에서 주로 Richard Guy의 "Fair Games"와 Elwyn R. Berlekamp, ​​John H. Conway 및 Richard K. Guy의 "수학적 연주를위한 승리 방법"( wiki )의 다양한 게임을 사용했습니다.

그들은이다 재미 , 당신은 그들과 함께 수업을 재생하고이를 재생할 수있는 올바른 방법을 찾을 수 있습니다, 말, 그래서 몇 가지 힌트를 줄 수있는 그들이 게임을 이길 수있는 방법을 찾을 수 있습니다. 이 게임은 아마도 어린 학생들에게 더 적합 할 것입니다.

Computer Science에는 청중에게 더 적합한 문제를 선택하여 참여시킬 수있는 다른 재미있는 주제가 있습니다.

컴퓨터 과학의 철학적 측면

이론적 컴퓨터 과학에는 철학과 큰 문제 와 관련된 많은 주제가 있습니다 . 괴델의 불완전 성 정리에서 지식 제로 증명, 보안, 개인 정보 보호, 알고리즘 게임 이론, P 대 NP, 기계 학습에 이르기까지 세부 사항에 들어 가지 않고 문제가 흥미 롭다는 것을 보여줄뿐입니다. 큰 질문과 관련이 있습니다. ( 이론적 컴퓨터 과학 강의에서 민주당훌륭한 아이디어 이후 Scott Aaronson의 양자 컴퓨팅을 살펴보십시오 ). 주제가 죽었다고 느끼게하지 말고 (즉, 모든 질문에 답하십시오), 지역이 살아 있다고 느끼게하고 진전이 있었지만 여전히 큰 도전이 있으며 미지의 땅으로 향하는 여정입니다.

컴퓨터 과학의 기술 측면

기술 뒤의 컴퓨터 과학에 대해 이야기하십시오. 비디오 게임에서 Google 검색, 기계 번역, 비전, ... 모든 사람이 매일 사용하는 기술 또는 익숙하지 않은 기술에 이르기까지 여기에서 선택할 수있는 주제가 너무 많습니다 . 진행중인 기술과 차세대 기술, 이들이 우리의 삶에 미친 영향 및 개선 방법에 대해 이야기하십시오. Google, Microsoft, Apple, IBM 등의 유명 회사에서 진행중인 연구 및 개발 제품에 대해 이야기하십시오. 이야기 큰 문제 우리의 시간과 어떤 영향 컴퓨터 과학이 그들에있다의.

컴퓨터 과학의 수학적 측면

이것은 수학에 이미 관심이있는 학생, 순수 하고 정확한 측면 에 관심이있는 학생에게 유용 하지만 위에서 언급 한 다른 주제와 결합하지 않으면 다른 학생에게 효과적이지 않습니다. 나는 큰 질문을 할 것이며 어떤 시점에서 언급 된 수학 문제에 대해 이야기하기 시작합니다.

컴퓨터 과학의 학제 간

컴퓨터 과학은 아마도 가장 학제적인 과목 중 하나 일 것입니다. 거의 모든 다른 과목, 인문학 (사회학, 언어학, 경제학, 철학 등), 자연 과학 (수학, 물리학, ...), 생물학, 의료 과학, 예술, 공학 (전자, 기계, ...), ... 무엇이든! 관심있는 주제가 무엇이든, 컴퓨터 과학과 관련된 주제가 있습니다! Scott이 말했듯이, 다른 모든 주요한 비교 :).

그들 모두

위에서 언급 한 모든 주제를 언급 할 수도 있습니다. 나는 이것을 시도하지 않았으며 그것이 얼마나 효과적 일지 확신하지 못한다. 당신은 느낌을 전달하고 지적해야하며, 시간이 걸립니다. 다른 옵션 중 하나는 시작 (또는 끝)에 모든 항목을 간략하게 언급 한 다음 그 중 하나를 계속 진행하여 관심이있는 경우 다른 항목에 대한 자세한 정보를 얻기 위해 연락 할 수 있다는 것입니다.

일부 의견

당신이 무슨 말을하든 그것에 대해 열정적 이어야 합니다. 실제로 흥미롭지 않은 주제에 관심을 갖는 것은 훨씬 더 어려울 것입니다. 컴퓨터 과학을 선택해야하는 이유에 대해 설명하십시오. 그리고 지루하지 마십시오 .


14

나는 고등학생과 신입생 모두에게 두 번의 대화를 성공적으로 사용했습니다.

  1. 종이 접기. 나는 5 점 별 문제 (미국 국기와의 연결로 인해 미국 상황에서 잘 작동 함)로 이어지고 학생들이 접는 + 1 컷으로 5 점 별을 만드는 방법을 알아 내려고합니다. 나는 "자원"(절단)과 알고리즘 설계가 제한된 자원으로 작업하는 방법에 대해 이야기합니다. 그런 다음 현실 세계의 다른 종이 접기 질문과 응용 프로그램 (심장 판막, NASA 망원경, 자동차의 구겨진 구역)에 대해 이야기합니다.

  2. 팬케이크 정렬 : 팬케이크 정렬과 게놈 재 배열 사이에는 아름다운 연결이 있으며 실제로 학생들이 놀 수 있도록 폼에서 팬케이크를 쌓았습니다. 훌륭하게 작동하며 알고리즘, 유전자 시퀀싱, Bill Gates (!) 및 기타 재미있는 것들에 대해 이야기 할 수 있습니다.


10

암호화는 항상 젊은 사람들 (그리고 개인적으로 나이든 사람들)의 마음을 사로 잡는 것입니다. 간호사 보조원, 하키 선수, 사업가 및 정치인 및 친구 (높은 목표에도 불구하고)가 식료품 가방 및 카트 푸셔, 건설 노동자 및 개집 보조원으로 일하기를 원하는 친구가있었습니다. 모두 서로를 발명하고 파산했습니다. (확실하고 순진한 코드). 특히, 공개 키 암호화의 존재는 일반적으로 RSA의 경로를 택하면 쉽게 설명 할 수 있습니다. 제로 지식 증명과 동형 암호화는 가치있는 것에 대한 괴짜 요소를 부여해야합니다.

Forward Error Correction 및 Error Detection 코드도 매우 훌륭하며 올바르게 수행하면 호기심 많은 청중에게 배울 수 있습니다. 그것들을 더 쉽게 소화하기 위해, 우연의 일치에 대한 "유니버설"을 언급 할 수 있습니다. 우리의 모든 언어와 작문에는 작은 중복과 과장이 있으며, 우리는 셔플 링 백, 발 및 허밍 에어컨.

마지막으로, 나는 또한 복잡한 이론에 대한 간단한 소개를 제안 할 것이다 . 이론적 인 컴퓨터 과학에 대한 저녁 식사 설명에 대한 나의 대답에 따른 것이다 .


10

AK Dewey 의 New Turing Omnibus 에는 컴퓨터 과학 분야에서 소위 66 개의 소풍이 있습니다. 알고리즘 분석, AI, 복잡성 이론, 계산 이론, 암호화, 컴퓨터 그래픽 등과 같은 주제를 다룹니다. 모든 주제는 다소 압축 된 형태로 작성되어 컴퓨터 과학에서 획기적인 결과를 포착합니다. 이 책은 약간의 영감을 줄 수 있습니다.

또 다른 가능성은 학생들이 Google의 Code-in 프로그램 과 같은 것을 통해 손을 더럽힐 수있게하는 것 입니다. 이 같은 비트의 코드 구글의 여름 당신은 아이를 위해, 알고 있지만. 아마도 학생들이 참여할 수있는 놀라운 코딩 프로젝트 중 일부를 보여주는 것이 관심을 끄는 한 가지 방법 일 것입니다.


물론이 책은 1993 년부터 시작된 것 같아서 약간 오래된 학교입니다.
Dave Clarke

2
예, 태어나 기 전에 쓰여진 책을 언급한다면 미래에 대해 흥분 시키려고하는 데 문제가 있습니다. :)
Raphael

6

제 생각에는 고등학생들에게 섹시하기 위해서는 일종의 마술사가되어야합니다. 그렇기 때문에 무작위 알고리즘이 학생 유인 자로서 매우 좋다고 생각합니다. 예를 들어, 속성 테스트는 실제로 흥미롭고 기술적 인 것이 아니라 아이디어로 설명 할 수있는 것입니다.

PCP도 마술이지만, 이것이 도달 할 수없는 것 같습니다 ...


한 번은 재능있는 고등학생들에게 PCP에 대해 이야기하지는 않았지만, 그것을 증명하지는 않지만 근사한 경도에 적용하고 정리의 일반적인 '느낌'을주었습니다. 나는 그들이 그것을 좋아한다고 생각합니다.
Karolina Sołtys

4

Michael Mitzenmacher가 고등학생을 대상으로 한 코딩 이론에 대한 아주 좋은 기사가 있습니다.

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


2
이것은 훌륭한 조사입니다
Suresh Venkat

2
이것은 진행중인 책의 일부인 것 같습니다. 마이클 미츤 마쳐의 블로그 게시물 ( mybiasedcoin.blogspot.com/2008/04/theorycs-book.html )도 아주 좋은 해설 장 (이 그에 대한 링크가 cs.princeton.edu/~chazelle/pubs/algorithm.html을 ) Bernard Chazelle의 알고리즘. 이 장은 수학 그 자체는 아니지만 수학적 아이디어가 풍부합니다.
Cong Han

4

내 대답은 TCS와 직접 연결되어 있지 않지만 수학이 아름답고 유용 할 수 있음을 보여줄 수 있습니다.

시험에서 부정 행위를 한 학생 수에 대한 신뢰할 수있는 데이터를 얻는 방법에 대해 연설 할 수 있습니다. 직접 요청하면 신뢰할 수있는 데이터를 얻을 수 없습니다. 신뢰할 수있는 데이터를 얻는 방법에 대한 아이디어는 매우 간단합니다. 먼저 모든 학생에게 정수에 대해 생각해 보라고 말하면 다음과 같이 말할
수 있습니다. 다른 간단한 질문을 선택할 수 있지만 다른 설문 조사에서이 질문에 대해 몇 퍼센트의 사람들이 예라고 대답하는지 알아야합니다.
-그것이 짝수 였다면 당신이 부정 행위했는지 여부를 적어 두십시오.

학생들의 약 50 %가 첫 번째 질문에 대답하고 나머지 50 %는 두 번째 질문에 대답 할 것입니다. 이제 얼마나 많은 학생이 바람을 피우고 있었는지 추정하기가 매우 쉽습니다. 예 : 40 %의 대답이 예이고 초록색을 좋아하는 사람의 30 %가 학생의 약 50 %가 바람을 피우고 있다는 것을 알고 있습니다.


2

나는 이것이 이론적 인 컴퓨터 과학에 대한 저녁 식사 설명 과 밀접한 관련이 있다고 생각 합니까?

내가 거기에 올렸을 때 나는 알고리즘이 매일 최고의 문제와 가장 관련이 있고 따라서 TCS에 매우 동기를 부여 할 수 있다고 생각한다. ( "전화 번호를 찾는 것과 같은 방식으로 검색 할 경우 Google 검색에 걸리는 시간")


1
라파엘 안녕하세요! 제가 느끼는 가장 큰 차이점은 수학적으로 기울어 진 학생들이 미래에해야 할 일에 대해 적극적으로 선택한다는 것입니다. 영국에 특이한 채용에있어 우리가 겪고있는 문제는 고등학교가 그들에게 CS가 위대한 지식인이나 세상을 바꾸고 싶어하는 사람들을위한 것이 아니라고 가르친다는 것입니다. 나는이 오해를 바로 잡을 수있는 20 분이있다 :)
Raphael

맞습니다 (독일에서도). 태도에 약간의 차이가있을 수 있지만, CS 관련 지식의 양은 저녁 식사 테이블 사람들과 거의 같을 수 있습니다. 다른 사용자를 위해 패키지를 다르게 포장한다는 데 동의하지만 동일한 내용을 선택합니다.
Raphael

2

나에 따르면, "컴퓨터 과학"은 "모든 과학의 과학"이다.

"과학"이란 무엇입니까? 자연으로부터 데이터를 얻고 데이터를 설명하는 모델을 구성하려고합니다. 또한 우리는 자연이 임의적이지 않다고 암시 적으로 가정합니다. 자연의 법칙은 간결한 표현을 가져야하며 데이터는 일부 대칭 등을 충족해야합니다.

그러나 이것은 정확히 학습 문제입니다! 데이터는 "복잡성이 낮을 것"으로 약속 된 일부 프로세스에 의해 생성되며, 우리의 임무는 프로세스에 대한 설명을 재구성하는 것입니다.

그러한 문제에 대한 우리의 이해는 그와 같은 일을하는 것이 당신의 의무 인 기본 수준에 있습니다! :) 블랙 박스 프로세스의 출력이 일부 고정 기능 과 동등한 지 여부에 대한 겉보기 더 간단한 문제에 대한 우리의 이해조차도 완전하지 않습니다. 예를 들어, 블랙 박스가 작은 산술 회로 (고등학생에게 설명하기 쉬운)로 계산할 수있는 함수를 평가한다고 약속하고 상자가 제로 함수 계산. 합리적인 규모의 도메인에서 기능을 수행하기 위해 이것이 우주의 일생 동안 이루어질 수 있는지 여부는 알 수 없습니다!

산술 복잡도 이론, 깊이 4의 틈, 계산에서의 임의성 역할, 곱셈 게이트의 수 등을 줄이면 알려진 것 등 ...


2

한 달 전 DIMACS에서 열린 현장 워크숍의 알고리즘에서 Graham Cormode는 스트리밍 알고리즘에서 학부생에게 스케치 기법을 가르치는 것을 찬성했습니다. Moses Charikar는 그들이 프린스턴에서 그들을 가르치고 있다고 말했다. @Suresh Venkat은 또한 그가 무거운 타자를 위해 Misra-Gries 알고리즘을 가르치고 있다고 언급했다. 기본 스트리밍 결과는 고등학생에게도 좋을 것이라고 생각합니다. 기본이지만 중요한 수학 트릭에 의존하고, 문제 공식은 퍼즐과 같으며, 솔루션은 마술처럼 느껴지고 마술은 고등학생에게 영감을주는 좋은 방법입니다. 문제의 규모와 사용할 수있는 자원의 양 사이의 극적인 차이를 강조 할 수 있습니다. 어리석은 예 : JFK 공항에 출입하는 모든 사람에게 우편 번호를 요청할 수 있다고 가정하십시오.


예. 이것은 좋은 예입니다
Suresh Venkat
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.