Authors: Ke Gong¹, Haibin Zhu¹, Tianshuo Yang¹
Affiliation: ¹Nipissing University, North Bay, Canada
A research codebase and report companion for simulating Canada’s non-permanent resident (NPR) reduction policy using Role-Based Collaboration (RBC) and the E-CARGO model.
We formalize NPR policy planning as a Group Multi-Role Assignment (GMRA) problem and propose a practical pipeline that couples K-Means clustering with a Genetic Algorithm (GA), then solves the assignment with GMRA.
The Canadian government aims to reduce the NPR population to alleviate pressures on housing, social services, and employment. We model this as a role assignment optimization problem in the E-CARGO/RBC framework.
Our method:
- Cluster NPRs (≤10k groups) using K-Means.
- Optimize pathway capacities (L′) using Genetic Algorithms.
- Assign agents to roles via GMRA, maximizing contribution scores.
- First formalization of NPR policy-making as a role assignment problem.
- New simulation method combining K-Means + GA + GMRA.
- Staged reduction plan toward the 5% NPR target by 2027.
- Agents (A): NPR applicants (clustered groups).
- Roles (R): Immigration pathways (n=59).
- Q matrix: Suitability scores (sparse, synthetic in this study).
- GA: Searches feasible capacity vector L′.
- GMRA: Produces assignment matrix T′, maximizing contribution σ.
- Stages: 16 phases (Q1 2024 → Q4 2027).
- Cap Example: pa = 29,034 arrangeable NPRs per stage.
- Hardware: Apple M1, 16 GB RAM, Python 3.10.
- Runtime: ~30 min full pipeline; single GMRA call ~1.2s.
- Optimal global assignment: σ = 197,083.90.
- PR pathways → higher contribution; visa issuance → lower.
- Policy implication: relax PR policies, tighten visa issuance.
- Q compression (m×2 format) cut solve time to <7 min.
numpy pandas scikit-learn pulp tqdm pyyaml matplotlib