TrueSurfing is not as good as GotoSurfing, period.
Here's the prove in my mind previously, refined with Claude
Proof: Equivalence of Surfing Algorithms
Assumptions
1. All waves W₁, W₂, ..., Wₙ are known in advance
2. Robot uses orbital movement (heading determined by position relative to opponent)
3. Danger is a function only of (position, velocity) at wave intersection
Definitions
State: S = (p, v) where p is position, v is velocity vector
Reachable set: R(S₀, t) = all states reachable from S₀ in time t under physics constraints
Intersection state set: I(S₀, Wᵢ) = all possible (position, velocity) states at which Wᵢ can intersect the robot, starting from S₀
Lemma: Reachable State Coverage
All three algorithms can evaluate every state in I(S₀, Wᵢ).
Proof:
- True Surfing: Direction choice determines trajectory → intersection state. Evaluates both directions.
- GoTo Surfing: Destination choice determines path → intersection state. Sufficient destinations cover I(S₀, Wᵢ).
- Path Surfing: Action sequences cover all trajectories → all intersection states.
Since I(S₀, Wᵢ) is determined by physics, not algorithm, all three cover the same set. ∎
Theorem
All three algorithms find the same optimal intersection states (S₁*, ..., Sₙ*) minimizing Σᵢ D(Wᵢ, Sᵢ).
Proof: By Lemma, all evaluate the same state space. Optimal selection over identical sets yields identical result. ∎