Orienting

abstract class Orienting<T, P : Position<P>, Vector<P>, A : Transformation<P>, N : ConvexShape<P, A>, L : ConvexShape<P, A>> @JvmOverloads constructor(val randomGenerator: RandomGenerator, val environment: EnvironmentWithGraph<*, T, P, A, N, DefaultEdge>, val node: Node<T>, val knowledgeDegree: Double, minArea: Double = 10.0) : AbstractNodeProperty<T> , OrientingProperty<T, P, A, L, N, DefaultEdge>

Base implementation of a node's OrientingProperty.

Inheritors

Constructors

Link copied to clipboard
constructor(randomGenerator: RandomGenerator, environment: EnvironmentWithGraph<*, T, P, A, N, DefaultEdge>, node: Node<T>, knowledgeDegree: Double, minArea: Double = 10.0)

Types

Link copied to clipboard
object Companion

Utility methods for Graphs.

Properties

Link copied to clipboard
open override val cognitiveMap: NavigationGraph<P, A, L, DefaultEdge>

The agent's cognitive map: a NavigationGraph of landmarks and spatial relations.

Link copied to clipboard
open override val environment: EnvironmentWithGraph<*, T, P, A, N, DefaultEdge>

The environment in which the node moves.

Link copied to clipboard
open override val knowledgeDegree: Double

The degree of prior knowledge about the environment, in 0.0, 1.0.

Link copied to clipboard
open override val node: Node<T>

The node to which the capability is added.

Link copied to clipboard
Link copied to clipboard
open override val volatileMemory: MutableMap<ConvexShape<P, A>, Int>

Volatile memory tracking visited areas paired with the number of visits.

Functions

Link copied to clipboard
abstract fun cloneOnNewNode(node: Node<T>): NodeProperty<T>

Clones this property to be added on a new node.

Link copied to clipboard
abstract override fun createLandmarkIn(area: N): L

Creates a landmark entirely contained in the given area. If such area contains one or more destinations, the returned landmark must contain at least one of them.

Link copied to clipboard
open fun <M : ConvexShape<P, A>> registerVisit(area: M)

Registers a visit to the provided area in the volatile memory.

Link copied to clipboard
infix fun NodeProperty<*>.shouldEqual(other: NodeProperty<*>)
Link copied to clipboard
open override fun toString(): String