Week 27 — Coding Projects

Core

Solve a simple constrained problem numerically.

  • NumPy: Implement projected gradient descent for box constraints. Solve a tiny quadratic program. Compare primal objective and dual lower bound.
  • Metal: Batched projection onto box constraints and objective evaluation. · Reading: MBT — numerical compute workflows.
  • Vulkan: Batched candidate evaluation and projection. · Reading: Vulkan Book — batched candidate evaluation / projections.
  • CUDA: Projection + objective kernels for large candidate sets. · Reading: CUDA Book — batched constrained-step kernels.
  • Stretch: Visualize feasible region in 2D. Add Lagrange multiplier iteration in a simple example.
  • Verify: Projected iterates remain feasible · Dual bound behaves as expected · KKT intuition becomes computationally concrete.