Как мы можем оценить успеваемость студентов на курсах вычислительной науки?

10

Как человек, которому приходится преподавать курсы по вычислительной науке, я сталкиваюсь с извечным вопросом: как я могу оценить способность студентов изучать предмет, который зависит от приложений, которые трудно проверить с помощью «стандартных» методов тестирования ( письменные или устные экзамены)? Часть курса зависит от понимания теории и методов на абстрактном уровне, и для этого я хотел бы продолжить использовать письменный тест для этих концепций. Однако проверка понимания практического использования этих методов требует другого подхода

Учитывая естественные проблемы, связанные не только с распространением различных платформ (для MATLAB, Modelica, Mathematica и других языков), но также с подключением к Интернету и безопасностью тестов, я был бы заинтересован в новых или оригинальных методах для практической оценки понимания студентами численные методы. (Функции, способствующие тестированию безопасности, особенно желательны.)

РЕДАКТИРОВАТЬ: я должен также упомянуть, что класс, который я преподаю, является вводным курсом, поэтому у студентов есть относительно небольшая база знаний для работы.

aeismail
источник
1
Позволяя им работать над (мини?) Проектом по их выбору, редактируя / критически просматривая открытые исходные коды, такие как PLASMA / MAGMA / LAPACK / ScaLAPACK? Я говорю с точки зрения студента.
Следствие
Спасибо за комментарий - он напомнил мне, что я забыл упомянуть, что это вводный курс, поэтому я не должен вводить такие понятия, как параллельное программирование и оптимизация производительности - просто сосредоточиться на основных численных методах и алгоритмах.
Aeismail

Ответы:

5

Вот что я видел как студент и ассистент:

  • Проекты в программировании и численных методах были хороши с точки зрения объединения многих концепций и принуждения меня и других студентов к творчеству. Однако в вычислительных проектах, вероятно, стоит уделить немного времени столярным работам с программным обеспечением.навыки, так что студенты пишут код, который более организован. Когда я был старшекурсником и не знал ничего лучше, у меня был код спагетти «вырезать и вставить», который, вероятно, был адом для грейдеров. Вы можете избежать этой участи, обучая их некоторым хорошим практикам. Кроме того, если вы даете всем достаточно похожие проекты (например, рассчитываете все термодинамические свойства в заданном списке для набора соединений, это был один долгосрочный проект в классе термодинамики для студентов; позже это было недельное домашнее задание. в дипломной работе по термодинамике), в основном ожидают, что они практически копируют друг друга и отлаживают код друг друга.
  • Домашние задания , еженедельные или раз в две недели, были лучшим краткосрочным методом для изучения новых методов и концепций. Проще что-то запрограммировать, учитывая неделю, чтобы сделать это. Опять же, ожидайте, что они более или менее копируют друг друга и отлаживают код друг друга.
  • Тесты не были действительно хороши ни для чего, кроме пары коротких методов или вопросов анализа. Вы не можете заниматься программированием на викторинах, но также должно быть меньше мошенничества , я имею в виду, сотрудничество. Вы также можете тестировать карандашное и бумажное кодирование в викторинах, что хорошо для базовых понятий, но, вероятно, несправедливо для продвинутых понятий или чего-то, что требует очень специализированных команд, потому что у студентов будет доступ к документации, если они будут писать на компьютере.
  • Экзамены были более или менее такими же, как тесты, если они были даны в классе, но дольше и сложнее. У меня были классы, чтобы сдавать экзамены на дому по вычислительной работе, и в этом случае вы можете задавать более вычислительно-ориентированные вопросы и ожидать, что они будут программировать для решения проблем. Тем не менее, экзамены на сдачу дома имеют те же проблемы, что и домашние задания и проекты типа бакалавриата, и в этом случае, вероятно, будет лучше, если вы установите более драконовскую политику сотрудничества для сдачи экзаменов на дом. У меня были действительно хорошие домашние экзамены, поэтому я думаю, что они могут хорошо сработать, если инструктор достаточно креативен.
  • Вычислительные лаборатории менее эффективны, чем аналогичные влажные лаборатории на уроках естествознания, потому что с компьютером перед вами намного легче обмануть. В моих классах было несколько парней, которые всегда проводили время в вычислительных лабораториях, играя в онлайн-покер. Эти лаборатории, вероятно, наиболее эффективны в качестве демонстраций или руководящих уроков по практическим навыкам в вычислительной науке, если у вас достаточно преподавателей, чтобы бродить по лаборатории и следить за тем, чтобы люди получали помощь, а никто не спотыкался в Интернете.
Джефф Оксберри
источник
5

Я читал лекции, преподавал или помогал на различных курсах, связанных с числовыми и вычислительными методами, от высшего уровня бакалавриата до продвинутого уровня магистратуры. Вот элементы, которые я нашел полезными в качестве инструктора:

Исследовательские проекты

Для продвинутых классов исследовательский проект (включающий числовые исследования, обычно разработку программного обеспечения и реферат) - это очень хороший способ для студентов связать свои исследования с учебной работой. Я думаю, что проект должен быть обязательным на курсах аспирантуры, но для магистрантов их лучше заменить более направленной работой.

Программирование домашних заданий

Ядро любого класса вычислительной науки - доступные задания по программированию. Студентам, не имеющим опыта программирования, вам нужно будет подкрепить свои задания некоторыми вводными сессиями в среде программирования, а в идеале - своего рода «комнатой помощи», предлагаемой либо вашим факультетом, либо студенческой организацией, такой как SIAM. Разрешить использование нескольких фреймворков и языков программирования может быть сложно, я принимал программы, написанные на любом языке, но поддерживал только одну среду, обычно свободно доступную в компьютерных лабораториях университета (операционная система, редактор, оболочка, интерпретатор и т. Д.)

Викторины

Мне действительно нравятся короткие 10-15-минутные викторины в классе раз в неделю или в неделю. Это хорошая двусторонняя обратная связь: студенты видят, что они делают, вопреки моим ожиданиям и друг против друга, и я вижу, какие концепции они поражают и упускают. Этот стиль оценки не очень часто используется в Европе, и я думаю, что это позор.

экзамены

Экзамены проводятся карандашом и бумагой с анализом алгоритмов, фрагментов кода и математических методов. Я никогда не участвовал в компьютерных лабораторных экзаменах в качестве студента или преподавателя / оценщика. Я думаю, что самое близкое, что я видел, - это требование от ученика продемонстрировать свою домашнюю работу или проект, а также ответить на вопросы о дизайне или реализации.

Ограничение нечестности

Будучи студентом и инструктором, я видел достаточно нечестности в академической системе, чтобы не полагаться на честь более чем на 50% оценки ученика. Это означает, что такие оценки, как проекты и домашние задания, где доступ к внешним ресурсам может привести к академической нечестности, не дают более 50% оценки за курс.

Арон Ахмадия
источник
Я думаю, что последний пункт особенно важен - у меня все еще будет письменный экзамен в классе, чтобы охватить вопросы, которые можно тестировать в этом формате. Это будет по крайней мере две трети класса, я думаю. Я также позабочусь о том, чтобы надписью, которая сопровождает внеклассный проект, была написана статья, так что студенты должны потратить хотя бы некоторое время на изучение материала. Я мог бы также сделать некоторую рандомизацию входных данных и изменение задачи, чтобы сократить искушение и способность обманывать.
Aeismail
@AronAhmadia: Еженедельные викторины являются стандартными в немецких университетах на разных факультетах, несмотря на их полную независимость.
Смертельное дыхание
@aeismail: у американцев очень узкое (в некоторых случаях граничит с нелепым) понимание плагиата. В первый год вы, возможно, сможете помешать ученикам сотрудничать, но в последующие годы Fachschaft внесет в каталог ваши задания, и будет постепенно усложняться постановка задач, которые не были в значительной степени решены в предыдущие годы.
Смертельное дыхание
@Deathbreath: (Арону) Еженедельные викторины не являются стандартными здесь, в Аахене - по крайней мере, в машиностроении. Я даже не знаю, разрешено ли мне их давать. (Не то, чтобы я хотел.)
aeismail
@Deathbreath: (для меня) Если студенты используют прошлые экзамены для изучения методологии, я с удовольствием позволю им использовать их. Меня больше волнует, что они учатся пользоваться инструментами. Тем не менее, я меняю содержание курса из года в год, поэтому любой, кто получит отличную оценку в старом материале и гусиное яйцо в новом материале, вероятно, несколько подозревает, что слишком сильно полагается на Fachschaft .
Aeismail
5

Некоторые другие ответы предлагают индивидуальные проекты. Я делаю это в моем классе программного обеспечения для конечных элементов, и это очень весело; Я считаю, что это также очень поучительно для студентов. В то же время, это требует значительных затрат времени: в прошлый раз у меня было 18 студентов, и практически весь рабочий семестр занимался надзором за этими проектами. Так что для успешной работы нужно иметь достаточно маленький класс.

Вольфганг Бангерт
источник
Для справки, я
описал
2

По моему честному мнению, я считаю, что основной тест - применить свои знания на незнакомой территории. Я хотел бы предложить прикладные проекты, предназначенные для проверки способности учащихся выбирать эффективные модели, методы дискретизации, аппроксимации / решения, эксплуатируемый параллелизм, оценки ошибок и численный анализ, а также методы визуализации для описания конкретного физического явления, представляющего интерес для вычислений. Я бы пошел дальше и попросил студентов обосновать каждый выбор исходя из размера проблемы / ожидаемой точности. Ключ должен знать, какие методы являются подходящими при ограничениях исследуемых явлений. Студенты могут выбрать феномен по своему выбору. Но если вы хотите сделать его еще более сложным, назначьте каждому студенту вычислительный проект в несвязанной области для исследования диссертации.

Пол
источник
Мои студенты второкурсники, поэтому им далеко до области диссертационных исследований. :-) Но мысль определенно ценится.
Aeismail