Development of the metric of determination probabilistic distance to solution in difficult problem areas
Authors: Есин Т.Е. 
Published: July 2024

Основной подход к решению задач на курсах по программированию зачастую состоит из написания и тестирования отдельных частей алгоритма, записанного на том или ином языке. Учащиеся делают несколько попыток сдать задачу в тестирующую систему, каждая из таких попыток отражает текущее состояние решения. Обычно для определения результативности вычисляется среднее количество попыток сдать решение или время, затраченное для получения верной программы. Такие метрики как правило неустойчивы, потому что время исправления отдельных ошибок существенно влияет на общее время решения задачи. Также, данные метрики не отражают, что именно не понимает учащийся в теоретическом аспекте. В данной статье предлагается метрика, основанная на вероятностном расстоянии между текущим состоянием и правильным решением. В рамках эксперимента группой студентов были решены задачи в онлайн-среде. Все их попытки были оценены по модели алгоритмических компонентов, необходимых для достижения правильного решения. Для создания графа, связывающего программные состояния, используются цепи Маркова. Предложенная метрика вероятностного расстояния до решения применена к графу для определения расстояний от каждого решения до ближайших правильных. Результаты показали, что данная метрика полезна при определении расстояния, если путь к правильному решению был типичен и согласуется с изученным теоретическим материалу. В статье предлагаются детали реализации метрики вероятностных расстояний до решения и план дальнейших исследований, основанных на текущих наблюдениях. Ключевые слова: интеллектуальные образовательные системы, курсы программирования, обратная связь, анализ образовательных данных, учебная аналитика

The main approach to solving problems in programming courses often consists of writing and testing individual parts of an algorithm written in a particular language. Students make several attempts to submit the problem to the testing system, each of these attempts reflecting an individual solution state. It is common practice to determine the student performance, the average number of submissions to pass the solution or focusing on the time taken to complete the problem correctly is calculated. Such metrics are usually unstable because the time to correct individual errors significantly affects the total time to solve the problem. Also, these metrics do not reflect what the student does not understand in the theoretical aspect. This article proposes a metric based on the probabilistic distance between an observed student solution and a correct solution. As part of the experiment, a group of students solved problems in an online programming environment. Their submissions were evaluated against a model of the algorithmic component necessary for a correct solution. A Markov Model was used to generate a problem state graph, connecting program states. The proposed metric of the probabilistic distance to the solution was applied to the graph to determine the distances from each solution to the nearest correct ones. The results showed that this metric is useful in determining the distance if the path to the correct solution was typical and consistent with the studied theoretical material. The article provides details of the implementation of the metric of probabilistic distances to the solution and a plan for further research based on current observations. Keywords: intelligent tutoring system, programming courses, automatic feedback, educational data mining, learning analytics