adaptive_gamification 0.0.1
adaptive_gamification: ^0.0.1 copied to clipboard
Adaptive gamification engine powered by reinforcement learning for dynamic difficulty adjustment.
Changelog #
All notable changes to adaptive_gamification will be documented in this file.
The format is based on Keep a Changelog (https://keepachangelog.com/en/1.1.0/), and this project follows Semantic Versioning (https://semver.org/).
Unreleased #
0.0.1 - 2026-03-23 #
Initial public release of the package.
Added #
- Core API
AdaptiveEnginewith:initFromAsset({ required String policyAssetPath, AssetBundle? bundle })initFromString(String jsonString)
AdaptiveEngine.decide(UserState)returning anAdaptiveDecision.
- Models
UserState(difficulty index, accuracy, response time, correct streak).AdaptiveDecision(next difficulty label and a human-readable reason).
- Policy loading & indexing
PolicyLoaderto load and index an RL policy exported as JSON.- Deterministic lookup by a discretized RL-state key (fixed 2 decimals).
- RL state mapping utilities
StateMapper.toRlState()mapping app telemetry → RL state(eng, mot, flow, perf).- Grid discretization aligned with a 0.25 state resolution.
- Stable key formatting to prevent lookup mismatches.
- Fallback behavior
- Deterministic fallback decision logic when the exact policy entry is missing.