수업 조교를 하다보면

주) 이 이하의 내용은 약간(?)의 컴퓨터 공학 전공 지식이 필요하다 (주석을 달아놓긴 하겠지만…)

퀴즈나 시험, 혹은 숙제 채점을 하다보면 수업/채점 조교를 웃겨 죽이려는 흉계(?)를 꾸미는 답안지를 보게되는 경우가 왕왕 있다. 오늘 후배 ㅍ모군이 IRC에서 얘기했던 것.

컴퓨터 그래픽스 쪽에서는 몇 개의 점 혹은 점 근처(…)를 지나는 부드러운 곡선을 그리는게 필요한데, 이런 spline이라는 수학적인 도구를 사용하게 된다. 그래픽스 쪽에서 스플라인을 다룰 때 중요한 평가 요소가,

  • local controlability — 1개의 점을 이동하면 몇 개의 부분곡선[1] 이 조정을 당하는가. 조정당하는 부분곡선의 수가 적을수록 지역적으로 다루기 좋다고 표현한다
  • 부드러움과 interpolation 여부 — Cn 곡선으로 스플라인을 만들게 되는데, 이게 B-spline처럼 꽤 부드럽지만 모든 점을 지나지는 못하는 녀석부터, 게임에서 많이 쓰는 Catmull-Rom spline 처럼 약간 부드러운[2] 곡선이지만 모든 점을 지나긴 하는 녀석까지 있다

정도다. 시험 문제에서,

<ㅍ> local controlbility가 있는지 묻고, 몇 개의 basis에 영향을 받냐? 라는 문제에
<ㅍ> local controllability 있음, infty개의 점에 영향 받음
<ㅍ> (어?)
<rein> ….

…라고 한다. 지역적으로 잘 다룰 수 있다 = basis가 될 점이 적다란건데 답은 상당히 아슷흐랄.

즉, local controlability가 있기 때문에 유한하고, 적은 수의 basis 만 영향을  준다고 해야하는데 엉뚱하게,

답은 A인데, A가 아니다

라는 답 (…) 을 써 넣은 것.

 

내가 봤던 최고의 걸작(…)은 데이터통신 시험 채점할 때 였는데,

(디지털 데이터 전송에서) Forward error correction (FEC) 과 backward correction(BEC) 의 차이를 설명하라

라는 아주 간단하고 필수적인 개념을 묻는 문제였는데 답이,

FEC는 에러 복구 코드를 패킷 앞에, BEC는 패킷 뒤에 붙여서 보내는 코딩방식입니다

라고 답한 수강생이 있었다.[3]

 

FEC는 에러를 복구할 수 있는 코드를 데이터랑 같이 보내는 것들[4] 로, 흔히 무선 통신에서 널리 쓰인다. 반대로 BEC는 유선통신망에서, 혹은 TCP 같은 곳 처럼 에러가 났다고 받는 쪽에서 알려주면 재전송(…)하는 식으로 해결하는 방식이다. 아마 수강생이 책도 안 읽어봤을거라고 짐작케해주는 답…

사실 이런 답안들을 채점하다보면 좀 웃기긴하지만 수강생들이 조교를 웃겨보겠다는 기특한(?) 생각을 할리는 없고, 수업은 제대로 안들었는데 답은 써야겠다는 생각에 소설을 쓴다는 생각만 든다. 2학년 과목인 논리 설계에선 이런 소설이 별로 없었는데, 3학년 과목인 데이터 통신 채점 때는 이런게 꽤 늘더라(…).

근데 말이지 이과/공과에서 그런 짓 해봐야 읽는 조교만 피곤하다 -_-;; 조교를 웃길정도면 사실 다른 문제의 답들도 높은 확률로 볼 필요가 줄어들긴하지만[…]

학교를 떠난지 벌써 1년 반 가까이 지나가지만, 별로 변하는 건 없구나 싶다;

  1. 각각의 점을 잇는 부드러운 곡선. 부드러운의 정의가 좀 애매한것 같지만 실제로는 k계 미분까지 연속인 곡선을 사용한다. k는 필요에 따라 적당히 조절한다 []
  2. 이 녀석은 겨우 C1 곡선 = 기울기만 연속 []
  3. ………………크게 웃어주고 0점 입력 ㄳ []
  4. 무선통신이나 재전송이 힘든 실시간 통신에서 주로 쓰이는 녀석들로 Turbo code라거나 LDPC, RS code 혹은 이런 녀석들의 중첩으로… []

Published by

rein

나는 ...

Leave a Reply