Learning Graph Quality Metrics Report
Overview
- Total Concepts: 240
- Foundational Concepts (no prerequisites, other concepts depend on them): 3
- Terminal Nodes (nothing depends on them, but have prerequisites): 77
- Orphaned Nodes (completely disconnected, no edges): 0
- Concepts with Dependencies: 237
- Average Dependencies per Concept: 1.91
Graph Structure Validation
- Valid DAG Structure: ✅ Yes
- Self-Dependencies: None detected ✅
- Cycles Detected: 0
Foundational Concepts
These concepts have no prerequisites:
- 1: Computational Thinking
- 69: Voltage and Current
- 74: Smart Car Chassis
Dependency Chain Analysis
- Maximum Dependency Chain Length: 20
Longest Learning Path:
- Computational Thinking (ID: 1)
- Physical Computing (ID: 9)
- Microcontroller Overview (ID: 55)
- Raspberry Pi Pico (ID: 56)
- RP2040 Chip (ID: 57)
- Cytron Maker Pi RP2040 (ID: 59)
- GPIO Pin Basics (ID: 60)
- GPIO Pin Numbering (ID: 61)
- Digital Input Pin (ID: 62)
- Sensor Types Overview (ID: 108)
- Time-of-Flight Sensor (ID: 109)
- VL53L0X Sensor (ID: 110)
- ToF Sensor I2C Setup (ID: 111)
- ToF Distance Reading (ID: 112)
- Closed-Loop Feedback (ID: 150)
- Collision Avoidance (ID: 152)
- Obstacle Detection (ID: 153)
- Distance Threshold (ID: 154)
- Random Turn Direction (ID: 155)
- Collision Avoidance Code (ID: 156)
Terminal Nodes Analysis
Terminal nodes are concepts that nothing else depends on but have prerequisites. They represent natural endpoints of learning paths — culminating or specialized concepts.
- Total Terminal Nodes: 77 (32.1% of all concepts)
- Healthy Range: 5-40% of total concepts
Concepts at the end of learning paths:
- 10: Experiential Learning
- 14: Thonny File Upload
- 15: Syntax Highlighting
- 17: BOOTSEL Button
- 18: USB Cable Connection
- 23: Float Data Type
- 33: Nested Loops
- 37: Scope and Local Variables
- 38: Global Variables
- 43: Built-in Libraries
- 45: List Indexing
- 48: Dictionaries
- 49: String Manipulation
- 53: Reusable Functions
- 64: Flash Memory
- 65: Pinout Diagram
- 68: Castellated Edge PCB
- 77: Power Management
- 78: LiPo Battery
- 88: H-Bridge Switch States
...and 57 more
Orphaned Nodes Analysis
Orphaned nodes are completely disconnected concepts with no inbound AND no outbound edges. These indicate a quality problem — every concept should connect to the graph.
- Total Orphaned Nodes: 0
✅ No orphaned nodes detected. All concepts are connected to the graph.
Connected Components
- Number of Connected Components: 1
✅ All concepts are connected in a single graph.
Indegree Analysis
Top 10 concepts that are prerequisites for the most other concepts:
| Rank | Concept ID | Concept Label | Indegree |
|---|---|---|---|
| 1 | 34 | Function Definition | 24 |
| 2 | 60 | GPIO Pin Basics | 14 |
| 3 | 21 | Variables and Assignment | 12 |
| 4 | 42 | Importing Modules | 12 |
| 5 | 69 | Voltage and Current | 11 |
| 6 | 1 | Computational Thinking | 10 |
| 7 | 9 | Physical Computing | 10 |
| 8 | 112 | ToF Distance Reading | 10 |
| 9 | 96 | PWM Motor Control Code | 9 |
| 10 | 62 | Digital Input Pin | 8 |
Outdegree Distribution
| Dependencies | Number of Concepts |
|---|---|
| 0 | 3 |
| 1 | 82 |
| 2 | 109 |
| 3 | 33 |
| 4 | 11 |
| 5 | 2 |
Recommendations
- ✅ Terminal node percentage (32.1%): Within healthy range (5-40%)
- ✅ DAG structure verified: Graph supports valid learning progressions
- ℹ️ Long dependency chains (20): Ensure students can follow extended learning paths
Report generated by learning-graph-reports/analyze_graph.py