Heuristic<T> class
abstract
mixin
Pathfinding
A heuristic estimates the minimum total cost of reaching a Goal.
Heuristics guide the search in "find best path" algorithms, such as A*, by providing an estimate of the cost to reach the goal from a given node, and picking the node with the lowest estimated cost to explore next.
- Implementers
Constructors
- Heuristic(double estimateTotalCost(T))
-
Creates a heuristic from an
estimateTotalCost
function.constfactory - Heuristic.always(double value)
-
Returns a heuristic that always returns
value
.constfactory -
Heuristic.any(List<
Heuristic< heuristics)T> > -
Returns a heuristic that uses the minimum of multiple possible goals.
constfactory
-
Heuristic.every(List<
Heuristic< heuristics)T> > -
Returns a heuristic that uses the maximum of multiple possible goals.
constfactory
- Heuristic.zero()
-
Returns a heuristic that always returns
0.0
.constfactory
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
estimateTotalCost(
T node) → double -
Estimates the minimum total cost of reaching the goal from
node
. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
scaleBy(
double ratio) → Heuristic< T> -
Returns a heuristic that scales the cost of another heuristic by
ratio
. -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator *(
double ratio) → Heuristic< T> -
Returns a heuristic that scales the cost of another heuristic by
ratio
. -
operator ==(
Object other) → bool -
The equality operator.
inherited