핵심 개념
Comparing the numerical stability and precision of various representations of hyperbolic geometry, including linear, mixed, reduced, half-plane/half-space, and generalized polar coordinates, to determine the most accurate and efficient representation.
초록
The paper compares different representations of hyperbolic geometry to determine the most numerically stable and precise approach. It considers five main representations: linear, mixed, reduced, half-plane/half-space, and generalized polar coordinates. The authors also evaluate six variants of dealing with numerical errors: invariant, careless, flattened, forced, weakly forced, and binary.
The authors conduct six tests to capture different scenarios that can lead to accumulating numerical imprecisions, such as loop computations, angle and distance calculations, and walking along a path. The results suggest that the polar representation is the best in many cases, although the half-plane invariant is also very successful. The authors also find that fixed linear representations (especially invariant) perform well in game-design-related scenarios.
Additionally, the paper discusses non-numerical advantages of the different representations, such as intuitiveness, ability to represent orientation-reversing isometries, and generalization to other geometries. The authors conclude that the choice of representation should consider both numerical and non-numerical factors.
통계
The circumference of a hyperbolic circle of radius r is exponential in r, making it difficult to represent points far from the origin accurately with a fixed number of bits.
The Beltrami-Klein disk model maps points in the hyperbolic plane to the inside of the unit disk, where points far from the origin are represented by points very close to the boundary, leading to numerical instability.
In the Poincaré disk model, the mapping of points in the hyperbolic plane to the unit disk is more gradual, allowing for better numerical stability.
인용구
"Since the circumference of a hyperbolic circle of radius r is exponential in r, any representation based on a fixed number of bits will not be able to distinguish between points in a circle of radius r = Θ(b), even if the pairwise distances between these points are large."
"In the Beltrami-Klein disk model, a point in distance d from C0 is mapped to a point in distance tanh(d) from the center of the disk, which is 1 −Θ(exp(2d)). Floating point numbers cannot express such a slight difference from 1."
"In the Poincaré disk model, this is 1 −Θ(exp(d)), which is more numerically stable."