Приложение 5. Автоматическая проверка оформления бакалаврской работы с помощью «базы незнаний» и облегченной модели из семейства Claude
ПРОТОКОЛ проверки по советам А.А. Шалыто
Работа: Южаков Е.М. «Построение автономного виртуального робота на основе автоматного подхода (CodeRally)», бакалаврская работа, СПбГУ ИТМО, 2003 (https://is.ifmo.ru/download/coderally.pdf). Руководитель – А.А. Шалыто. Проверку проводил 07.06.2026 г. Евгений Южаков по просьбе Шалыто.
Режим проверки: «раб» (только советы Шалыто).
А. Русский язык и грамотность
1. Грубое согласование, число. «машины на крутых поворотах теряет скорость» (разд. 2.2.2) – подлежащее во мн. ч., сказуемое в ед. ч. Необходимо «теряют».
2. Падеж. «Стрельба пулями следует использовать не в ущерб основному движению» (разд. 2.1, конец) – необходим винительный падеж: «Стрельбу пулями следует использовать…».
3. Согласование причастия. «класс Car, осуществляющего пересчёт положения машины» (разд. 2.2.2) – относится к «класс» (именительный падеж), нужно «осуществляющий».
4. «не»/«ни». «Как бы хорошо не были реализованы методы…» – должно быть «ни». Встречается дважды: разд. 3.3.1 и в Заключении. Это ровно тот класс ошибок, на котором Шалыто заостряет внимание.
Б. Нормоконтроль и единообразие оформления
1. «Санкт – Петербург» с пробелами вокруг тире на титульном листе (и «Санкт – Петербургский»). По правилам – дефис без пробелов: «Санкт-Петербург». Появляется несколько раз.
2. Хаотичное тире/дефис. В одном перечне: «(MIN_STEER_LEFT) – минус 10 единиц, … (MAX_STEER_RIGHT) - 10 единиц» (разд. 1.2) – в соседних пунктах разные знаки (длинное тире и дефис). По всему тексту знак «тире» не унифицирован.
3. Опечатки в терминах. «метод intialize()» (разд. 1.3.3) – пропущена буква, в коде корректно initialize(). Имя метода в тексте и в коде должно совпадать буква в букву.
В. Внутренние ссылки (одно из любимых мест для «дерьма» по Шалыто – «ничто не должно возникать внезапно»)
1. Битая перекрёстная ссылка. «корректированная дистанция (разд. 2.3.3)» – раздела 2.3.3 нет, имеется в виду 2.2.3.
2. Опечатка в ссылке. «раз. 3.2.4» – сокращение «разд.» обрезано.
Г. Код в приложении (совет о «грамотном программировании»)
Главное несоответствие. Шалыто требует: перед каждым фрагментом кода – подробное описание на русском, что этот фрагмент делает. В приложении приведён сплошной листинг RallyCar.java практически без пояснений; имеющиеся комментарии – отрывочные и на английском/транслите («//looking for checkpoints», «//low fuel»). Это прямое нарушение совета (и, забавно, идеи «Движения за открытую проектную документацию» (http://is.ifmo.ru/works/open_doc/), в рамках которого работа и выполнена).
Д. Антропоморфизм формулировок (правило «метод ничего не может обходить»)
«Автомат … знает, что делать». «Построен управляющий автомат… он знает, что делать и в какой последовательности» (Заключение, повтор из 3.3.1). По логике совета автомат не «знает» – формулировку следует обезличить (например, «задаёт порядок действий»).
Е. Новизна: «что сделано» против «что сделано нового»
Во введении предлагаемое решение явно противопоставлено прототипу – «в отличие от предложенного нашей командой… использование автоматного подхода и учёт внутренних свойств среды». Но Заключение «съезжает» на инженерную формулировку: «Результатом… явилась работоспособная, эффективная программа управления роботом» – это «что сделано», а не «чем отличается». Заключение стоит начать с отличия от наилучшего известного решения, как во Введении.
Ж. Библиография
Неединообразные ссылки. Список источников содержит голые URL («1. http://acm.baylor.edu – сайт чемпионата…») и одно полноценное библиографическое описание (источник [5], «Мир ПК», 2003, №10). По духу нормоконтроля все источники надо оформить единообразно и полно.
Выводы. Самое существенное – пп. 1–4 (грамматика), п. 10 (код без русских пояснений) и п. 12 (формулировка результата в Заключении). Остальное – нормоконтроль и ссылки, правится механически. Это по Шалыто «отмывание птицы от грязи» по форме. Проверку по существу (корректность физических выкладок, графа переходов, оценок очков) советы Шалыто не покрывают – её, как он и пишет, надо делать отдельно.
Модель работала секунды. После этого Евгений по моей просьбе сделал запрос о стоимости получения протокола по имеющимся тарифам:
- финальная генерация – примерно $0,35–0,40 (~30–35 ₽);
- весь ход работы – примерно $1 (~85–90 ₽);
- с учётом промт-кэширования, которое обычно работает на системной части и истории, реально вышло бы заметно меньше – ориентировочно треть от этих сумм.
Этот же запрос (без загрузки файлов, только пара веб-поисков) – порядка нескольких центов.
Ссылка на приложение 6: https://vk.com/@1077823-prilozhenie-6-primenenie-bazy-neznanii-dlya-polucheniya-prot.
