2025-11-22T23:52:17.167783

Choose Your Own Solution: Supporting Optional Blocks in Block Ordering Problems

Oakeson, Smith, Winder et al.
This paper extends the functionality of block ordering problems (such as Parsons problems and Proof Blocks) to include optional blocks. We detail the algorithms used to implement the optional block feature and present usage experiences from instructors who have integrated it into their curriculum. The optional blocks feature enables instructors to create more complex Parsons problems with multiple correct solutions utilizing omitted or optional blocks. This affords students a method to engage with questions that have several valid solutions composed of different answer components. Instructors can specify blocks with multiple mutually exclusive dependencies, which we represent using a multigraph structure. This multigraph is then collapsed into multiple directed acyclic graphs (DAGs), allowing us to reuse existing algorithms for grading block ordering problems represented as a DAG. We present potential use cases for this feature across various domains, including helping students learn Git workflows, shell command sequences, mathematical proofs, and Python programming concepts.
academic

Choisissez Votre Propre Solution : Support des Blocs Optionnels dans les Problèmes d'Ordonnancement de Blocs

Informations Fondamentales

  • ID de l'article : 2510.11999
  • Titre : Choose Your Own Solution: Supporting Optional Blocks in Block Ordering Problems
  • Auteurs : Skyler Oakeson (Utah State University), David H. Smith IV (Virginia Tech), Jaxton Winder (Utah State University), Seth Poulsen (Utah State University)
  • Classification : cs.HC (Interaction Homme-Ordinateur)
  • Date de publication/Conférence : Juin 2018 (Acronyme de conférence 'XX)
  • Lien de l'article : https://arxiv.org/abs/2510.11999

Résumé

Cet article étend les fonctionnalités des problèmes d'ordonnancement de blocs (tels que les problèmes de Parsons et les Proof Blocks) en introduisant la fonctionnalité de blocs optionnels. Les auteurs décrivent en détail l'algorithme de mise en œuvre de la fonctionnalité de blocs optionnels et présentent l'expérience d'utilisation par les enseignants lors de son intégration dans les cours. La fonctionnalité de blocs optionnels permet aux enseignants de créer des problèmes de Parsons plus complexes, supportant plusieurs solutions correctes utilisant des blocs omis ou optionnels. Cela fournit aux étudiants une méthode pour traiter plusieurs solutions valides composées de différents composants de réponse. Les enseignants peuvent spécifier des blocs avec plusieurs dépendances mutuellement exclusives, représentées à l'aide de structures multigraphes. Ce multigraphe est ensuite réduit en plusieurs graphes acycliques dirigés (DAGs), permettant la réutilisation des algorithmes d'évaluation existants basés sur les DAGs pour les problèmes d'ordonnancement de blocs.

Contexte de Recherche et Motivation

Définition du Problème

Les problèmes traditionnels d'ordonnancement de blocs (tels que les problèmes de Parsons et les Proof Blocks) présentent une limitation clé : l'impossibilité d'inclure des blocs optionnels ou des blocs valides dans une solution mais invalides dans une autre. Les systèmes existants exigent que chaque solution correcte contienne un ensemble fixe de blocs, ce qui limite la capacité des enseignants à créer des problèmes complexes reflétant les processus de résolution de problèmes du monde réel.

Importance

  1. Réflexion du monde réel : Dans la pratique, la programmation, les preuves mathématiques et les commandes shell présentent généralement plusieurs solutions équivalentes
  2. Valeur éducative : Permettre aux étudiants de comprendre que les problèmes peuvent avoir plusieurs réponses également valides est un objectif d'apprentissage important
  3. Besoin de flexibilité : Les enseignants ont besoin de pouvoir créer des problèmes pédagogiques plus complexes et plus proches des applications réelles

Limitations des Approches Existantes

  • Bien que les travaux de Poulsen et al. supportent plusieurs ordonnances du même ensemble de blocs, ils ne supportent pas plusieurs solutions avec des combinaisons de blocs différentes
  • Les retours basés sur l'exécution, bien qu'ils puissent gérer les solutions multiples, manquent de la granularité et de l'applicabilité des retours basés sur les lignes
  • Impossible d'utiliser les solutions multiples dans les scénarios non exécutables tels que les preuves mathématiques

Contributions Principales

  1. Algorithme de réduction de multigraphe : Propose un algorithme pour réduire les relations de dépendance représentées par un multigraphe en plusieurs graphes acycliques dirigés
  2. Interface de blocs optionnels : Fournit aux enseignants une interface et une spécification pour écrire des problèmes d'ordonnancement de blocs optionnels
  3. Cas d'application interdisciplinaires : Démontre les applications dans l'enseignement de la programmation introductive, des mathématiques discrètes et des commandes shell
  4. Analyse de la complexité algorithmique : Fournit une analyse théorique de la complexité temporelle de l'algorithme et des données d'application pratique

Détails de la Méthode

Définition de la Tâche

Entrée : Représentation multigraphe d'un problème d'ordonnancement de blocs avec des relations de dépendance optionnelles Sortie : Toutes les représentations DAG valides possibles, utilisées pour évaluer les solutions soumises par les étudiants Contraintes : Maintenir l'acyclicité du problème, supporter les chemins de dépendance mutuellement exclusifs

Architecture de l'Algorithme Principal

1. Représentation Multigraphe

Utilise un multigraphe avec des arêtes colorées pour représenter les relations de dépendance optionnelles :

  • Les nœuds représentent des blocs de code ou des étapes de preuve
  • Les arêtes colorées représentent des chemins de dépendance logique alternatifs
  • L'opérateur pipe (|) dans la spécification HTML représente les dépendances mutuellement exclusives

2. Algorithme de Réduction de Multigraphe (Algorithme 1)

Fonction Réduire(M, F):
    GraphesRéduits (GR) ← liste vide
    GraphesPartiellementRéduits (GPR) ← file vide
    Enfiler(GPR, M)
    
    tant que GPR n'est pas vide:
        G ← Défiler(GPR)
        (v, DAG) ← DFSJusqu'à(G, F)
        
        si v est NULL:
            ajouter DAG à GR
        sinon:
            pour chaque Couleur dans G:
                GPR ← copie(G)
                Supprimer toutes les arêtes sur v avec couleur ≠ Couleur
                Enfiler(GPR, GPR)
    
    retourner GR

3. Algorithme DFS-Jusqu'à (Algorithme 2)

Parcours en profondeur modifié avec condition d'arrêt :

  • Traverse en arrière à partir du nœud final
  • S'arrête et retourne le nœud à traiter lors de la rencontre d'une arête multicolore
  • Retourne un DAG valide lors de la fin du parcours

Points d'Innovation Technique

  1. Conversion Multigraphe vers DAG : Utilise de manière innovante les arêtes colorées pour représenter les dépendances mutuellement exclusives, puis génère systématiquement toutes les combinaisons DAG possibles
  2. Optimisation de la Complexité Algorithmique :
    • Complexité temporelle : O(d·(n+m)), où d est le nombre de DAGs générés
    • Dans les applications pratiques, d est petit (≤8), garantissant l'utilité
  3. Compatibilité Rétroactive : Réutilise les algorithmes d'évaluation DAG existants sans nécessiter une refonte du mécanisme d'évaluation

Configuration Expérimentale

Tests dans les Domaines d'Application

L'article a été testé dans trois domaines principaux :

  1. Mathématiques Discrètes : Plusieurs méthodes de construction de preuves mathématiques
  2. Programmation Introductive : Différentes implémentations de fonctions Python
  3. Commandes Shell : Flux de travail Git et séquences de commandes Unix

Données d'Analyse de Complexité

Les auteurs ont collecté des données de complexité pour 12 problèmes réels :

Type de ContenuNombre de Blocs (n)Nombre d'Arêtes (m)Nombre de DAGs (d)
Commandes Bash5-134-102-4
Programmation Python6-138-132-8
Preuves Mathématiques10-1110-132

Expérience d'Utilisation par les Enseignants

  • Le deuxième auteur l'a utilisé dans un grand cours de programmation introductive, incluant les devoirs et les examens
  • Le troisième auteur l'a utilisé pour évaluer les connaissances en shell et Git dans un cours de fondamentaux en génie logiciel
  • Supporte la présentation parallèle des paradigmes de programmation itérative vs fonctionnelle

Résultats Expérimentaux

Principales Conclusions

  1. Validation de l'Utilité : Tous les problèmes réellement créés restent dans une plage de complexité raisonnable (d≤8)
  2. Efficacité Pédagogique :
    • Les étudiants peuvent explorer plusieurs chemins de solution
    • Fournit une expérience d'apprentissage plus riche qu'une solution unique
    • Montre une bonne capacité de discrimination dans l'enseignement des flux de travail Git
  3. Performance du Système :
    • L'algorithme fonctionne bien dans les applications pratiques
    • Intégration réussie à la plateforme PrairieLearn
    • Maintient les avantages des algorithmes d'évaluation DAG existants

Analyse des Cas d'Application

Exemple de Programmation

Le problème de fonction de somme démontre 4 solutions valides :

  • Méthode détaillée : Déclarer une variable, accumuler progressivement
  • Méthode concise : Assignation directe d'expression
  • Méthode mixte : Variantes combinant les deux approches

Exemple de Preuve Mathématique

La preuve de propriété de parité supporte deux méthodes :

  • Preuve directe : Supposer n est pair, prouver que n+10 est pair
  • Preuve par contradiction : Supposer n+10 est impair, dériver une contradiction

Travaux Connexes

Recherche sur les Problèmes de Parsons

  • Dale Parsons et Patricia Haden ont introduit pour la première fois le concept de puzzles de programmation
  • Ericson et al. ont prouvé que les problèmes de Parsons sont aussi efficaces que les exercices de programmation traditionnels mais plus efficaces
  • Les problèmes de Parsons adaptatifs permettent aux étudiants d'ajuster la difficulté selon leur niveau de compétence

Extension des Proof Blocks

  • Poulsen et al. ont étendu l'ordonnancement de blocs au domaine des preuves mathématiques
  • Introduit la représentation DAG pour gérer plusieurs ordonnances correctes
  • Développé un mécanisme de crédit partiel basé sur la distance d'édition

Recherche sur les Éléments Perturbateurs

  • Les éléments perturbateurs traditionnels sont des blocs de code incorrects
  • Cet article les redéfinit : après avoir choisi un chemin de bloc optionnel, les blocs des autres chemins deviennent des éléments perturbateurs
  • Fournit une nouvelle perspective pour la recherche sur les éléments perturbateurs

Conclusions et Discussion

Conclusions Principales

  1. Faisabilité Technique : L'algorithme de réduction de multigraphe résout avec succès le problème de représentation et d'évaluation des blocs optionnels
  2. Valeur Éducative : Les problèmes d'ordonnancement de blocs supportant plusieurs solutions reflètent mieux les processus de résolution de problèmes du monde réel
  3. Applicabilité Générale : La méthode a une valeur d'application dans plusieurs domaines incluant la programmation, les mathématiques et la gestion de systèmes

Limitations

  1. Croissance de la Complexité : Le nombre de DAGs croît exponentiellement avec les choix de couleur, ce qui peut théoriquement limiter l'utilisation de certains problèmes
  2. Conception de l'Interface : Un grand nombre de blocs peut augmenter la charge cognitive, nécessitant une meilleure conception d'interface utilisateur
  3. Évaluation Limitée : Manque d'études d'évaluation d'apprentissage à grande échelle

Directions Futures

  1. Recherche sur les Effets d'Apprentissage : Évaluer l'impact spécifique des solutions multiples sur l'apprentissage des étudiants
  2. Optimisation de l'Interface : Développer des interfaces utilisateur réduisant la charge cognitive
  3. Recherche sur l'Équité : Évaluer si les solutions multiples dans les environnements d'examen peuvent réduire les avantages injustes causés par l'appariement des préconceptions

Évaluation Approfondie

Points Forts

  1. Innovation Technique : La conception de l'algorithme de réduction multigraphe vers DAG est ingénieuse avec une base théorique solide
  2. Valeur Pratique : Résout les besoins réels de la technologie éducative et a été appliquée dans plusieurs cours
  3. Intégrité Systémique : Forme une boucle complète allant de la conception algorithmique à l'implémentation du système et à l'application pédagogique
  4. Applicabilité Interdisciplinaire : Démontre une valeur d'application dans plusieurs domaines incluant la programmation, les mathématiques et la gestion de systèmes

Insuffisances

  1. Profondeur d'Évaluation : S'appuie principalement sur des preuves anecdotiques, manquant d'expériences comparatives rigoureuses sur les effets d'apprentissage
  2. Analyse Théorique : Bien que fournissant une analyse de complexité, la discussion sur la théorie de l'apprentissage est relativement faible
  3. Expérience Utilisateur : La discussion sur la conception d'interfaces utilisateur meilleures pour gérer les problèmes complexes n'est pas suffisamment approfondie

Impact

  1. Contribution Technique : Fournit une méthode générale au domaine de la technologie éducative pour gérer les solutions multiples
  2. Pratique Éducative : Change la façon de penser traditionnelle concernant la conception des problèmes d'ordonnancement de blocs
  3. Inspiration Recherche : Fournit une nouvelle perspective pour la théorie des exemples travaillés et la recherche sur les éléments perturbateurs

Scénarios d'Application

  1. Éducation en Programmation : Adapté pour montrer plusieurs paradigmes de programmation et solutions
  2. Enseignement des Mathématiques : Particulièrement adapté pour l'enseignement de théorèmes ayant plusieurs méthodes de preuve
  3. Formation aux Compétences : Adapté pour la gestion de systèmes, l'utilisation d'outils et autres formations aux compétences ayant plusieurs chemins opérationnels

Références

Cet article cite des travaux importants dans le domaine de la technologie éducative, incluant :

  • Recherche originale sur les problèmes de Parsons 14
  • Travaux fondamentaux sur les Proof Blocks 16,17
  • Recherches connexes sur l'apprentissage adaptatif et la théorie des exemples travaillés 1,6,8
  • Recherches empiriques sur les effets des éléments perturbateurs 9,10,19

Évaluation Globale : Ceci est un article avec des contributions importantes dans le domaine de la technologie éducative. L'algorithme de réduction de multigraphe proposé résout élégamment le problème du support des blocs optionnels dans les problèmes d'ordonnancement de blocs. Bien qu'il y ait de la place pour amélioration dans l'évaluation empirique des effets d'apprentissage, son innovation technique et sa valeur pratique en font un progrès important dans ce domaine.