Aller au contenu principal

Matrix Reasoning

Version : v1 (actuelle)

Une tâche de raisonnement matriciel de style Raven : chaque item presente une image de stimulus et un jeu de tuiles de réponse ; le participant clique sur la tuile qui complete le pattern.

Vue d'ensemble

La tâche Matrix Reasoning mesure le raisonnement fluide a l'aide d'items de completion de pattern inspires des Matrices progressives de Raven. Chaque item affiche une seule image de stimulus (la matrice avec un element manquant) accompagnee d'un ensemble de tuiles-images candidates ; le participant selectionne la tuile qui complete correctement le pattern.

Il s'agit d'une tâche vierge et entierement manuelle : elle n'est livree avec aucun modele, aucun contenu de stimulus integre et aucun item par defaut. La tâche est invalide tant que le chercheur n'a pas televerse ses propres images et construit au moins un item principal notable. Elle ne peut pas etre creee par l'assistant IA : le chercheur conçoit l'integralite du jeu d'items.

Le raisonnement matriciel est l'une des mesures les plus largement utilisees de l'intelligence fluide (Gf) et de la capacite de raisonnement non verbal abstrait, relativement independante du langage et des connaissances acquises.

Contexte scientifique

Resultats classiques :

  • Charge en facteur g : Le raisonnement matriciel figure parmi les marqueurs comportementaux les plus saturés en facteur g de l'intelligence generale
  • Raisonnement fluide : Sollicite l'inference de relations abstraites et l'application de regles plutot que les connaissances acquises
  • Independance culturelle/linguistique : Le format non verbal reduit la dependance au langage, utile en contextes interculturels
  • Correlats cerebraux : Implique le cortex prefrontal lateral et le cortex parietal (reseau frontoparietal du raisonnement)
  • Memoire de travail : La performance correle avec la capacite de memoire de travail, sans s'y reduire

Mecanismes cles :

  • Induction de regles : Inferer les regles qui gouvernent les variations le long des lignes et des colonnes
  • Gestion de la complexite relationnelle : Integrer simultanement plusieurs relations
  • Inhibition des distracteurs : Rejeter les tuiles plausibles mais incorrectes
  • Application analogique : Transferer une regle inferee a la cellule manquante

Articles fondateurs :

  • Raven (1938, 1941) : Progressive Matrices, conception originale du raisonnement matriciel non verbal
  • Carpenter, Just, & Shell (1990) : What one intelligence test measures: A theoretical account of the processing in the Raven Progressive Matrices Test
  • Cattell (1963) : Theory of fluid and crystallized intelligence

Pourquoi les chercheurs utilisent cette tâche

  1. Évaluation de l'intelligence fluide : Mesure de référence de Gf en recherche cognitive et differentielle
  2. Variable controle/covariable : Apparier ou ajuster les groupes sur la capacite de raisonnement
  3. Recherche developpementale et vieillissement : Suivre les trajectoires de l'intelligence fluide tout au long de la vie
  4. Neurosciences cognitives : Cartographier le reseau frontoparietal soutenant le raisonnement abstrait
  5. Études d'entrainement : Tester le transfert d'entrainements de la memoire de travail vers le raisonnement fluide
  6. Évaluation clinique : Estimer le fonctionnement intellectuel non verbal avec une charge linguistique minimale

Etat actuel de l'implementation

Entierement implemente :

  • Items de completion de pattern par tuiles-images entierement personnalises (jeu d'items construit par le chercheur)
  • Televersement multi-fichiers d'images alimentant les listes deroulantes de stimulus et d'options
  • Cle de réponses correctes par item pour notation automatisee, robuste au réordonnancement des options
  • Mesure de la latence de réponse haute resolution par item
  • Phase d'entrainement optionnelle avec retour correct/incorrect
  • Delai de réponse par item (ou defaut de la tâche) et limite de temps par bloc avec compte a rebours
  • Verrouillage optionnel des réponses (temps minimum avant réponse) juste apres l'apparition de chaque item, pour limiter les clics immediats accidentels
  • Marqueurs de zones d'interet (AOI) pour le stimulus et chaque tuile (compatible oculometrie)
  • Validation stricte bloquant la sauvegarde et la previsualisation (jamais de suppression silencieuse)

Pas encore implemente :

  • Generation procedurale d'items
  • Administration adaptative basee sur la performance
  • Jeux d'items normatifs integres

Paramètres de configuration

Options

ParamètreTypeDefautDescription
stimulus_image_max_width_pxnumber480Largeur maximale d'affichage de l'image de stimulus en pixels
answer_tile_size_pxnumber120Taille d'affichage de chaque tuile de réponse en pixels
response_timeout_msnumber0Temps maximum par item en millisecondes (0 = illimite). Un response_timeout_ms par item peut prevaloir.
block_time_limit_msnumber0Compte a rebours par bloc en millisecondes (0 = illimite). Demarre au premier item du bloc et redemarre a l'entree dans le bloc principal.
matrix_min_time_before_response_msnumber0Temps minimum avant réponse : un verrouillage des réponses, en millisecondes, applique apres l'apparition de chaque item (0 = aucun verrouillage). Ce n'est pas une échéance de réponse et il n'y a pas de surcharge par item. Les tuiles de réponse restent visibles pendant le verrouillage (seul leur style change) ; un clic pendant ce délai est journalisé mais n'est jamais accepté comme réponse.
practice_enabledbooleanfalseExecuter une phase d'entrainement avant la tâche principale
feedback_in_practicebooleantrueAfficher un retour correct/incorrect pendant l'entrainement

Instructions

ParamètreTypeDefautDescription
main_instructionshtml''Instructions principales de la tâche (texte enrichi)
practice_instructionshtml''Écran d'instructions pre-entrainement (affiche uniquement si l'entrainement est active)
trials_instructionshtml''Écran d'instructions pre-principal affiche apres l'entrainement (uniquement si l'entrainement est active)
hint_instructionshtml''Texte d'aide/indice (texte enrichi)

Items

ParamètreTypeDefautDescription
matrix_itemsarrayvideTableau unique d'items. L'entrainement et la tâche principale sont distingues par le champ block de chaque item ('practice' ou 'main'). Aucun item par defaut : le chercheur doit en construire.

Chaque item comporte les champs : id (uuid interne, jamais affiche dans l'editeur, exporte sous stimulus_id), stimulus_image_url (référence canonique / getDownloadURL du televersement), options (tableau de {id, url}), correct_option_id (référence un id d'option, robuste au réordonnancement, ce n'est pas une position), block ('practice' | 'main') et response_timeout_ms (override optionnel par item).

L'editeur d'items expose un tableur (jspreadsheet) avec les colonnes : Stimulus, Option 1 a Option 8, Correct, Block (practice/main) et Timeout (ms). Les colonnes d'images sont des listes deroulantes dont la source est l'ensemble des références d'images televersees (références canoniques getDownloadURL completes ; la cellule stocke la référence complete, sans aller-retour par nom de fichier). Le televersement multi-fichiers alimente les listes deroulantes. L'id interne de l'item n'est pas une colonne : il est preserve invisiblement par reconciliation de contenu dans le serializer (une ligne se rattache a un item anterieur par sa référence de stimulus et son jeu de références d'options, conservant ainsi son id ; les nouveaux items/options reçoivent un uuidv4).

Validation stricte (bloque la sauvegarde et la previsualisation, jamais de suppression silencieuse) :

  • Une ligne est invalide sans stimulus, avec moins de 2 options, avec un Correct vide, avec un Correct absent de ses options, ou avec des références d'options en doublon.
  • La configuration entiere est invalide s'il n'existe aucun item principal (notable) executable (table vide ou uniquement de l'entrainement).

Les études en lecture seule desactivent le formulaire et verrouillent le tableur.

Donnees en sortie

Marqueurs

L'execution emet les marqueurs propres a la tâche suivants :

  • trial_order ({order: <ids d'items>}) au démarrage
  • stimulus_shown ({stimulus_id, stimulus_image_url, options_count, correct_option_id, block})
  • stimulus_aoi ({stimulus_bounds {x_pct, y_pct, width_pct, height_pct}, aois: <boites par tuile indexees par id d'option>})
  • response
  • feedback_shown (entrainement uniquement)
  • response_recorded (emis automatiquement par la base pour le grain trial)
  • invalid_response (interpretation: "locked_out") : un clic sur une tuile pendant le verrouillage matrix_min_time_before_response_ms ; journalisation seule, ne selectionne jamais de réponse et ne fait pas avancer l'item

Marqueurs systeme (runner/base), prefixes par le slug de la tâche <name> : <name>_main_instruction_start/end, <name>_practice_instruction_start/end, <name>_trials_instruction_start/end, <name>_practice_phase_start/end, <name>_main_phase_start/end, <name>_practice_trial_start/end, <name>_trial_start/end, <name>_hint_show/hide.

Données de réponse

L'objet de réponse comporte les champs : trial_index OU practice_trial_index, is_practice, stimulus_id, source ('button' | 'timeout' | 'moderator_advance' | 'block_timeout', un item encore affiché lorsque le compte a rebours du bloc expire, enregistré comme non-réponse plutot qu'abandonné), stimulus_image_url, options_count, correct_option_id, correct_option_url, response_value (id de la tuile selectionnee, null sur toute non-réponse : timeout / avance par le moderateur / expiration du bloc), selected_option_id, selected_option_index (base 0, null en l'absence de réponse), selected_option_url, response_correct (boolean | null ; null sur toute non-réponse, jamais false/0 pour un timeout), responded (boolean), block, stimulus_onset_hr, response_hr (temps haute resolution mappes vers *_recording_ms a l'export) et latency_ms (omis pour toute non-réponse).

{
"trial_index": 1,
"is_practice": false,
"stimulus_id": "f1c2...",
"source": "button",
"stimulus_image_url": "https://.../stimulus-001.png",
"options_count": 6,
"correct_option_id": "opt-3",
"correct_option_url": "https://.../option-c.png",
"response_value": "opt-3",
"selected_option_id": "opt-3",
"selected_option_index": 2,
"selected_option_url": "https://.../option-c.png",
"response_correct": true,
"responded": true,
"block": "main",
"latency_ms": 6240
}

Artefact de résumé

Emis a la fin de la tâche sous le nom matrix_reasoning_summary_<taskIndex>.json :

{
"task_kind": "matrix_reasoning",
"task_index": 0,
"main": {
"items_total": 18,
"items_administered": 18,
"items_attempted": 17,
"timeouts": 1,
"total_correct": 12,
"accuracy_attempted": 0.706,
"accuracy_administered": 0.667,
"median_latency_ms": 5980,
"trials": [
{
"trial_index": 1,
"stimulus_id": "8f2c1a4e-...",
"response_correct": true,
"responded": true,
"source": "button",
"block": "main",
"latency_ms": 4820
}
]
},
"practice": {
"items_total": 2,
"items_administered": 2,
"items_attempted": 2,
"timeouts": 0,
"total_correct": 2,
"accuracy_attempted": 1.0,
"accuracy_administered": 1.0,
"median_latency_ms": 4100,
"trials": []
}
}

Statistiques par bloc : items_total (nombre configure), items_administered (compte a la presentation), items_attempted (nombre de réponses), timeouts, total_correct, accuracy_attempted (omis quand 0 tentative), accuracy_administered, median_latency_ms (null en l'absence de latences). Les timeouts et les items jamais administres sont exclus de la précision et des temps de réponse, jamais notes 0. Le bloc practice n'est present que lorsque l'entrainement est active et qu'au moins un essai d'entrainement a ete enregistré. Chaque entree de trials comporte trial_index, stimulus_id, response_correct, responded, source, block et (uniquement pour une réponse réelle) latency_ms, afin que chaque ligne du résumé puisse etre reliee a sa ligne d'événement/d'export.

Experience du participant

  1. Instructions : Les instructions principales configurees (texte enrichi) décrivent la tâche, p. ex. "Observez le pattern. Cliquez sur la tuile qui complete la figure."

  2. Phase d'entrainement (si practice_enabled) :

    • Écran d'instructions pre-entrainement (practice_instructions)
    • Pour chaque item d'entrainement : observer l'image de stimulus, puis cliquer sur la tuile de réponse choisie
    • Un retour visuel apres chaque choix si feedback_in_practice est active (correct/incorrect)
  3. Transition (si entrainement active) : Un écran d'instructions pre-principal (trials_instructions) est affiche avant les essais notes.

  4. Tâche principale :

    • Pour chaque item :
      • Observer l'image de stimulus (largeur bornee par stimulus_image_max_width_px)
      • Examiner les tuiles candidates (taille answer_tile_size_px)
      • Si matrix_min_time_before_response_ms est defini, les tuiles apparaissent brievement attenuees (toujours visibles et cliquables) juste apres l'apparition de l'item ; un clic pendant ce délai n'est pas enregistré comme réponse
      • Cliquer/appuyer sur la tuile completant le pattern
      • Pas de retour pendant la tâche principale
    • Le delai de réponse par item (ou le defaut de la tâche) avance automatiquement un item lorsqu'il est atteint
    • La limite de temps par bloc (block_time_limit_ms) demarre au premier item du bloc et redemarre a l'entree dans le bloc principal ; a son expiration le bloc se termine (entrainement → principal, principal → fin de tâche). Un item encore affiché a cet instant est enregistré comme non-réponse block_timeout (il reste present dans les événements et le résumé). Les deux mecanismes passent par un meme chemin de completion idempotent.
  5. Completion : Un artefact de résumé est genere avec les resultats par essai et la précision.

Plein ecran et moderation

  • Plein ecran : Oui. La tâche s'execute en mode plein ecran.
  • Modes pris en charge : Non modere (oui), Modere (oui), Strictement modere (oui). En mode strict, strictControl ne verrouille que les boutons Demarrer des pages d'instructions.
  • Avance par le moderateur : requestAdvance() fait avancer les écrans d'instructions, passe outre le retour d'entrainement (sans terminer la tâche), complete un essai actif avec source='moderator_advance', et sinon termine la tâche.

Recommandations

Directives generales

  • Construire le jeu d'items : La tâche est vierge ; preparer et televerser des stimuli et des tuiles d'options soignes avant toute administration
  • Distracteurs : Inclure des tuiles plausibles mais incorrectes pour eviter les effets plafond
  • Difficulte croissante : Ordonner les items du plus simple au plus complexe pour limiter la frustration precoce
  • Entrainement : Activer une courte phase d'entrainement avec retour pour garantir la comprehension du format
  • Timing : Une limite par item ou par bloc peut etre ajoutee pour reduire les effets plafond ; preferer l'auto-rythme pour mesurer la capacite maximale
  • Verrouillage court des réponses : Un matrix_min_time_before_response_ms faible (p. ex. 300 ms) reduit les clics immediats accidentels sans introduire de pression temporelle reelle ; il s'agit d'un verrouillage, non d'une échéance de réponse, et il n'affecte pas la latence mesuree

Notation et interpretation

  • Total correct : Resultat principal sur le bloc principal (notable)
  • Précision : Privilegier accuracy_attempted pour la performance sur les items reellement tentes ; accuracy_administered integre les timeouts comme items non reussis sans les noter 0
  • Temps de réponse : Mesure secondaire ; les median_latency_ms informent sur l'effort/la difficulté
  • Items non administres : Exclus de la précision et des temps de réponse (jamais notes 0)

Adaptations spécifiques aux populations

Enfants et adolescents :

  • Utiliser des items plus simples et un nombre reduit de tuiles
  • Tuiles plus grandes (answer_tile_size_px élevé) pour faciliter la selection

Adultes ages :

  • Tuiles et stimulus plus grands pour l'accessibilite visuelle
  • Eviter la pression temporelle stricte (le ralentissement lie a l'âge n'est pas un deficit de raisonnement)

Contextes interculturels :

  • Privilegier des stimuli geometriques abstraits sans contenu culturellement charge
  • Le format non verbal limite la dependance linguistique

Voir aussi