
<!-- I release these notes into the public domain -->

# Artifical Intelligence (`ai`)

## Table of Contents




## Introduction

&ensp; This system implements pathing and decision systems for general-purpose traditional
artifical intelligence algorithms. This library will not support Machine-Learning Artificial
Intelligence (ML/AI). This artificial intelligence method only differs in static generation
between 2D and 3D. The solvers are dimension independent since they work on a graph.


## General Process

### Static
- generate a static navigation graph (sometimes called a NavMesh)


### Tick
* resolve dynamic blockers
* update paths using dijkstra's algorithm
* apply rigid-body forces with constraints

The update loop for artificial intelligence should only update every `n` ticks. Where
`n <= k`, with `k` being the tick rate of the physics engine.
