Если попытаться охарактеризовать систему образования одним словом, то это слово будет «консерватизм». В этой статье я хочу рассказать грустную историю, подтверждающее данный тезис. Лет 10-12 назад мы начали создавать программу, позволяющую заменить преподавателя при работе с контрольными работами студентов по одной из специальностей, программу для автоматической генерации заданий по алгебре и геометрии и их последующей проверке, и что из этого вышло. Сейчас бы это назвали ИИ, но тогда нам это не приходило в голову, поскольку под ИИ понималось совсем другое. Возможно, этот опыт будет полезен, и вы избежите очевидных ошибок.<br/> Я большую часть своей трудовой деятельности провёл работая преподавателем. История, которую я хочу рассказать началась лет 10-12 назад. Я работал на факультете «Вычислительной математики и кибернетики» Казанского университета. В то время на факультете сложилась несколько необычная ситуация с преподаванием общих дисциплин. Обычно для преподавания математического анализа, алгебры и геометрии, дифференциальных уравнений организуют специальную кафедру, которая обслуживает все специализации. В силу ряда обстоятельств такой кафедры не было, и все указанные предметы раскидали по специальным кафедрам. Нам досталась алгебра и геометрия. Лекторы и преподаватели, ведущие практические занятия, оказались здесь вместе со специалистами по WEB-програ ммированию, часто в одно и том же лице. На кафедре имелись люди, владеющие как веб-программированием, так и алгеброй с геометрией, поэтому было решено попробовать создать сервис, который сможет заменить преподавателя при проведении контрольных работ. Местное начальство пошло навстречу и выделило нам сервер. Это позволило реализовать проект.<br/> Для контроля учебного процесса полагалось несколько раз в семестр провести контрольные работы. Это делалось также, как и во времена наших отцов и дедов – преподаватель придумывал 2-3 варианта, рассаживал студентов так, чтобы они не списывали, после чего собирал задания и проверял. Правильные решения были известны, но при несовпадении приходилось вникать в написанное, чтобы ответить на типичную фразу недовольного студента «ход решения у меня правильный, я ошибся в вычислениях» Обычный ответ преподавателя был «а на работе ты также будешь говорить?». Короче говоря, процедура была довольно муторная, и пропадало академическое занятие. <br/> Перед этим я несколько лет работал за границей и увидел, как там частично решается эта задача. Все студенты (иногда это поток до 100 человек) получают одно и то же задание, которое они выполняют дома. Очень жёсткий deadline, но проверка заданий остаётся. Эту неприятную работу лектор обычно скидывает на ассистентов. Проблема списывания была не актуальной по двум причинам: подозрение на списывание расследуется довольно серьёзно и имеет тяжёлые последствия; студенты не хотят давать списывать, поскольку это работает против них, если даже сам факт не будет обнаружен. Все знают, что у нас вместе с дипломом дается приложение с указанием оценок. Приложением иногда интересуются, когда человек поступает в аспирантуру. Я не слышал, чтобы у нас на собеседовании при приеме на работу интересовались этим документом. За рубежом это не так, дав списать, ты повышаешь оценки и шансы конкурента, поскольку это первый документ, который интересует работодателя. По нему можно узнать много интересного о человеке. <br/> Итак, мы приступили к работе. Программу писали на python 2, интерфейс был спартанский -- методами HTML 3 без CSS примочек. Apache и mod-python позволили обойтись без WSGI заморочек, поэтому основное внимание было уделено составлению задач. К этому времени были входу как «трофейные» matlab, mathcad, mathematica, так и открытые scilab и octave. С течением времени от трофейных отказались. Давать задачу, для которой имелось решение в пакете, не имело смысла. С другой стороны, пользование любым пакетом поощрялось, поскольку снимался вопрос об ошибках в вычислениях. Проблема была в хранении задач и ответов. Мы понимали, что в рамках факультета добиться секретности не удастся. Вместо этого хранились генераторы задач, а для проверки правильности полученные данные подставлялись в условия задачи. Например система генерирует координаты треугольника. Нужно найти точку пересечения медианы и высоты. Датчик случайных чисел устанавливался для каждого студента в определенное состояние и генерировал координаты треугольника. При проверке восстанавливались исходные вершины и проверялось, что точка лежит на медиане и высоте. Так была решена проблема хранения правильных ответов. Вся группа получала одно задание, но исходные данные у каждого были свои. Решив дома задачу, студент вводил данные в программу на сервере и получал ответ. Этот ответ был 0 или 1, а в конце семестра баллы суммировались. Каждый студент мог предъявить апелляцию, говоря что ошибка в программе. Преподаватель соглашался, но ставил условие: если студент прав, он получает за данную задачу 2 балла, а если нет, то -1. За все время эксплуатации сервиса была только одна апелляция. Нужно было найти центр описанной окружности. Студент твердо утверждал, что у него все правильно. Когда я его убедил в обратном, то спросил, откуда у него была уверенность в ответе. Оказалось, что он нашел формулы для решения задачи в интернете на англоязычном сайте, и бедняга перепутал вписанную окружность с описанной. Вера в Интернет у современной молодежи сильна! Формально, слабым местом оставалась возможность, что кто-то напишет алгоритм и раздаст его всей группе. Если кто и распространял алгоритм, то только среди друзей. В теперешней студенческой среде связи внутри группы очень слабые.<br/> Программа работала устойчиво, и я начал ее «продвигать» среди других преподавателей, ведущих тот же предмет, но не участвовавших в разработке. Всем очень нравилось, я предлагал им включиться в эксплуатацию, для чего нужно было только получить пароль и ознакомиться с интерфейсом, однако, почему-то они отказывались. Я был лектором, административным методом мне удалось привлечь только преподавателей, ведущих за мной занятия. Наша работа была инициативной, и мы попытались привлечь внимание руководства университета. Подали работу на внутренний конкурс, получили диплом 3 степени, но без денег, других последствий не было. Возможно сейчас, увидев слово ИИ, начальство реагировало бы иначе. Список задач каждый год увеличивался, но потом я уволился еще до ковида. Все материалы и root пароль передал молодому сотруднику, который поддерживал систему, включая новые задачи. Думал, что во время ковида все опомнятся и будут пользоваться сервисом. Кроме этого сотрудника никто не пользовался. Потом и он уволился, на этом проект завершился, программу удалили и пропали тексты генераторов задач. <br/> Потом, я спрашивал некоторых коллег, в чем причина провала. Освоить интерфейс было не сложно, от студентов жалоб не поступало, начальство поддерживало. Ответ --- "консерватизм", зачем изучать новую программу, когда можно и так. Внедрить ( что-то постороннее вводится насильно) новое в систему образования можно только административным методом, издав приказ и требуя регулярный отчет. Вот такой грустный опыт. Не знаю, может быть теперь все по-другому?
�
