УДК 004.4(06) Технологии разработки программных систем С.М. САДЧИКОВ Московский инженерно-физический институт (государственный университет) ПРЕОБРАЗОВАНИЯ ГРАФОВ АЛГОРИТМОВ ДЛЯ ПОШАГОВОГО КОНТРОЛЯ РЕШЕНИЯ ЗАДАЧ В работе рассматриваются основные управляющие конструкции графов решения задач [1] и расчет числовых характеристик способов контроля, реализованных в компьютерных программах интерактивного решения задач. Рассмотрим основные управляющие конструкции для графов решения задач [1]. Введем операции сочетания алгоритмов: последовательного “◦”, параллельного “ ”применения, ветвления (выбора) “ | A1 2 ”. Повторение алгоритма (цикл) и другие конструкции могут быть получены с помощью представления вершины “вложенным” алгоритмом. В компьютерных комплексах [2] обычно контролируется только часть действий. Граф решения задачи G01 G стягивается к графу G00 G, описывающему процедуру контроля с помощью компьютерной процедуры, если существует последовательность простых стягиваний. Соответственно, предлагаемая в программном комплексе методика, реализующая контроль знаний исходного алгоритма G01 по алгоритму G00 применима. В каждом простом стягивании преобразуется в одну вершину не более одной непустой выделенной условно-связной компоненты (см. рис. 1). Выделим в исходном графе G01 подмножество вершин X1, если оно вместе со всеми соединяющими их дугами N1 N можно представить в виде некоего G-графа, с учетом дополнительного построения единого входа и выхода, то будет получена условно-связная компонента. Построение единого входа (выхода) проводится, если граф <X1, N1> имеет более одной начальной (конечной) вершины (см. рис. 1). Единый вход может быть построен, если все дуги из X\X1 в X1 имеют начало в одной вершине x X\X1. Аналогично для выхода. Для образованной вершины xs рассчитываются числовые характеристики, показывающие взвешенное количество неконтролируемых действий. Получив два графа, рассчитывают числовые характеристики каждого и искомую величину D(G00 ) H (G00 ) , показывающую степень детальности H (G01 ) контроля относительно сводного графа алгоритма. Чем выше значение характеристики, тем лучше (детальнее) проверяются знания отвечающего. ISBN 5-7262-0633-9. НАУЧНАЯ СЕССИЯ МИФИ-2006. Том 2 70 УДК 004.4(06) Технологии разработки программных систем Данную характеристику ухудшает любое автоматическое выполнение или отсутствие детального контроля. Если значение коэффициентов необходимости детализации kh = 0, то значение D не ухудшается даже при отсутствии детализации. x4 x5 x1 x2 x3 x6 x8 x7 x5 xs x1 x7 x6 x8 x4 x2 x3 xs x'7 x'8 xt Рис. 1. Стягивание условно-связной компоненты: исходный граф, результат, укрупненный блок для расчета характеристик На рис. 1 при равенстве всех весов 1, если контролируются все операции или коэффициент необходимости детального контроля для всех вершин равен 0, то D(G00) = 1. Если результат выбора и выполнения операций, соответствующих вершинам x3, x4, x5, детально не контролируется D(G00) 0.6, если вводится только конечный ответ, то D(G00) 0.1. Используя предложенную методику, были разработаны схемы контроля и созданы комплексы по математическому программированию [2]. Список литературы 1. Садчиков С.М., Синицын С.В. Разработка комплексов для детального пошагового контроля решения задач. / Сб. Научная сессия МИФИ-2006. – Т. 2. – М.: МИФИ, 2006. 2. Садчиков С.М., Салмин И.Д. Опыт использования контролирующих учебных комплексов. / Современные информационные технологии и ИТ-образование. Сб. докладов научно-практической конференции. Под ред. проф. В.А. Сухомлина. – М.: МАКС Пресс, Издательский отдел факультета ВМК МГУ им. М.В. Ломоносова, 2005. – С. 234-237. ISBN 5-7262-0633-9. НАУЧНАЯ СЕССИЯ МИФИ-2006. Том 2 71