Skip to content

Latest commit

 

History

History
183 lines (158 loc) · 8.97 KB

File metadata and controls

183 lines (158 loc) · 8.97 KB

LLM Algorithms Roadmap

Milestone 0.1.0 – Foundational Toolkit

  • Scaffold project structure, npm metadata, and documentation
  • Migrate runtime codebase to strict TypeScript with shared type definitions
  • Implement core algorithms (A*, Dijkstra, Perlin, Quadtree, AABB, data/search utilities)
  • Add steering behaviours and SAT collision module
  • Provide Vitest coverage for representative algorithms
  • Ship runnable TypeScript examples (A*, steering, SAT)
  • Configure ESLint, Prettier, and CI workflow integration

Milestone 0.2.0 – Procedural & AI Expansion (In Progress)

  • Implement Simplex noise generator with tests
  • Implement Worley noise generator with tests
  • Add boids flocking simulation and unit coverage
  • Implement behaviour tree foundation with tests/examples
  • Add circle-ray intersection helper
  • Implement swept AABB collision checks
  • Document new modules in docs/index.d.ts and examples folder
  • Achieve >80% coverage across new modules
  • Implement reciprocal velocity obstacles (RVO) crowd steering with tests and example
  • Add Jump Point Search optimisation for uniform grids
  • Implement flow-field pathfinding for multi-unit navigation
  • Provide navigation mesh (navmesh) helper for irregular terrain

Milestone 0.3.0 – Web Performance & Data Pipelines

  • Introduce request deduplication helper
  • Ship virtual scrolling utilities
  • Add diff/patch helpers for nested JSON structures
  • Create benchmarking scripts to compare algorithm variants
  • Expand CI to include coverage gating and bundle size checks

Milestone 0.4.0 – Procedural Worlds & Game Systems (Planned)

  • Procedural generators:
    • Wave Function Collapse tile solver with options + example
    • Cellular automata cave/organic generator utilities
    • Poisson disk sampling for even point distribution
    • Voronoi diagram helpers for biome/territory generation
    • Diamond-square terrain height map generator
    • L-system generator for foliage and organic structures
    • Dungeon generation suite (BSP subdivision, rooms & corridors variants)
    • Maze algorithms pack (Recursive backtracking ✅, Prim's ✅, Kruskal's ✅, Wilson's ✅, Aldous–Broder ✅, Recursive Division ✅)
  • Gameplay systems & utilities:
    • Fixed-timestep game loop utility with interpolation helpers
    • Delta-time manager for frame-independent timing
    • Object pool helper for reusable entities
    • Weighted random selector (alias method)
    • Fisher–Yates shuffle implementation
    • Bresenham line / raster traversal helpers
  • Real-time systems:
    • 2D camera system (smooth follow, dead zones, screen shake)
    • Particle system with configurable emitters
    • Sprite animation controller (frame timing, events)
    • Tween/lerp utility for smooth interpolation
    • Platformer physics helper (gravity, coyote time, jump buffering)
    • Top-down movement helper (8-direction)
    • Tile map renderer helpers (chunking, layering, collision tags)
    • Shadowcasting field-of-view utilities and minimap helpers
  • Systems for gameplay loops
    • Inventory system primitives (stacking, filtering, persistence hooks)
    • Combat resolution helpers (cooldowns, damage formulas, status effects)
    • Quest/dialog state machine utilities
    • 2D lighting helpers (falloff, blending stubs)
    • Wave spawner utilities for encounter pacing
    • Sound manager stubs (channel limiting, priority)
    • Input manager abstraction (keyboard/mouse/pad remapping)
    • Save/load serialization helpers (slots, integrity checks)
    • Screen transition utilities (fades, wipes, letterboxing)

Milestone 0.5.0 – Algorithm Vault & Data Structures (Planned)

  • AI & behaviour expansions
    • Finite state machine (FSM) toolkit
    • Genetic algorithm utilities
    • Influence map computation helpers
  • Search & string algorithms
    • Knuth–Morris–Pratt (KMP) substring search
    • Rabin–Karp multiple pattern matching
    • Boyer–Moore fast substring search
    • Suffix array construction utilities
    • Longest common subsequence (LCS) enhancements and diff helpers
    • Aho–Corasick multi-pattern automaton Data pipelines & utilities
    • Flatten/unflatten helpers for nested structures
    • Pagination utilities for client-side paging
    • Advanced diff tooling (tree diff, selective patches) Visual & simulation tools
    • Color manipulation helpers (RGB/HSL conversion, blending)
    • Force-directed graph layout
    • Marching squares contour extraction
    • Marching cubes isosurface generation Graph algorithms
    • Minimum spanning tree (Kruskal)
    • Strongly connected components (Tarjan/Kosaraju)
    • Maximum flow (Dinic preferred; Edmonds–Karp fallback) Spatial & collision expansion
    • Octree partitioning for 3D space
    • Circle collision helpers
    • Raycasting utilities
    • Bounding volume hierarchy (BVH) builder Data structures
    • Binary heap priority queue
    • Disjoint set union (union-find)
    • Bloom filter probabilistic membership
    • Skip list sorted structure
    • Segment tree range query helper Compression & encoding
    • Run-length encoding (RLE)
    • Huffman coding utilities
    • LZ77 dictionary compression helper
    • Base64 encode/decode utilities Geometric & numeric utilities
    • Closest pair of points solver for geometry toolkit

Milestone 0.6.0 – Fold Barrier Physics Suite (Planned)

  • Align Fold barrier scope with the paper and define shared constraint interfaces in src/physics/fold
  • Barrier primitives (each item: runtime module + docs/index.d.ts entry + Vitest coverage + runnable example when feasible)
    • Cubic barrier potential (energy, gradient, Hessian evaluation)
    • Stiffness design principle for frozen barrier stiffness
    • Contact barrier with extended direction handling
    • Pin constraint barrier using cubic barrier formulation
    • Wall constraint barrier for plane collisions
    • Triangle strain-limiting barrier driven by deformation singular values
  • Integrator and solver
    • Inexact Newton integrator with beta accumulation
    • Constraint-only line search with extended direction scaling
    • Semi-implicit freeze schedule for barrier stiffness updates
    • Error-reduction pass leveraging beta-delta time refinement
    • Linear solver pipeline (PCG with 3x3 block-Jacobi preconditioner)
  • Contact and friction infrastructure
    • Friction potential tied to contact force magnitude
    • Matrix assembly with cached contact index tables
    • Gap evaluators for point/triangle, edge/edge, and wall constraints
    • SPD enforcement pass for elasticity Hessian blocks

LLM‑Optimised Additions (Priority Rationale)

These items offer the largest context and correctness savings for LLM users. Prioritize when bandwidth is limited:

  1. Aho–Corasick automaton (string search)

    • Deterministic trie with failure links; long to hand-roll; great for lexing and multi‑pattern filters.
  2. Dinic maximum flow (graph)

    • Level graph + blocking flow; reusable for min‑cut, image segmentation, bipartite matching.
  3. Suffix Automaton or Ukkonen Suffix Tree (string index)

    • Advanced indexing primitive enabling substring queries and LCS; compact but intricate to implement.
  4. Delaunay Triangulation (Bowyer–Watson) + KD‑Tree (geometry)

    • Robust triangulation and fast nearest neighbour queries are both lengthy and widely reused.
  5. BVH (SAH) builder (spatial)

    • Non‑trivial tree construction with cost heuristics; useful for ray queries and collision.
  6. Polygon clipping (Greiner–Hormann / Weiler–Atherton)

    • Complex boolean operations for polygons (union/intersect/diff); many edge cases.

Milestone 1.0.0 – Production Readiness

  • Publish to npm with semver automation and changelog management
  • Provide comprehensive documentation site (e.g., VitePress) with interactive demos
  • Offer ESM + CJS build outputs and tree-shaking test cases
  • Establish regression test suite with snapshot examples for deterministic algorithms

Recently Completed Tasks

  • TypeScript migration with strict compiler settings
  • Added steering behaviours and SAT collision detection
  • Set up Vitest suites and GitHub Actions CI pipeline
  • Authored usage examples to accelerate onboarding

Upcoming Focus

  1. Procedural generation enhancements (Worley refinements, Worley-based effects, upcoming Worley variants like Worley F1/F2)
  2. Behavioural AI additions (crowd steering via RVO, flow-field integration, behaviour tree decorators)
  3. Procedural & systems expansion (Wave Function Collapse, dungeon suite, L-systems, diamond-square, full game systems toolkit)
  4. Advanced collision utilities (swept volumes with rotation, broad-phase acceleration structures) Note: tasks will move to the completed section once merged via the standard branch + PR workflow.