Package it.unisa.diem.ai.torcs.agent
Class Controller
java.lang.Object
it.unisa.diem.ai.torcs.agent.Controller
- Direct Known Subclasses:
BaseDriver
Classe astratta base per l'implementazione di un controller per TORCS.
Fornisce la struttura per la logica di guida e la gestione della gara.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enum
Enumerazione che rappresenta i diversi stadi di una gara. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract Action
control
(SensorModel sensors) Metodo principale di controllo da implementare nelle sottoclassi.getStage()
Restituisce lo stadio corrente della gara.Restituisce il nome della pista corrente.float[]
Inizializza gli angoli dei sensori di distanza (range finder) utilizzati per percepire la pista.abstract void
reset()
Chiamato all'inizio di ogni nuova prova per reimpostare lo stato interno.void
setStage
(Controller.Stage stage) Imposta lo stadio corrente della gara.void
setTrackName
(String trackName) Imposta il nome della pista.abstract void
shutdown()
Chiamato una sola volta alla chiusura del controller.
-
Constructor Details
-
Controller
public Controller()
-
-
Method Details
-
initAngles
public float[] initAngles()Inizializza gli angoli dei sensori di distanza (range finder) utilizzati per percepire la pista.- Returns:
- un array di 19 angoli da -90 a +90 gradi con passi di 10
-
getStage
Restituisce lo stadio corrente della gara.- Returns:
- lo stadio attuale (Stage)
-
setStage
Imposta lo stadio corrente della gara.- Parameters:
stage
- lo stadio da impostare
-
getTrackName
Restituisce il nome della pista corrente.- Returns:
- il nome della pista
-
setTrackName
Imposta il nome della pista.- Parameters:
trackName
- il nome della pista
-
control
Metodo principale di controllo da implementare nelle sottoclassi. Definisce il comportamento del veicolo dato l'input dei sensori.- Parameters:
sensors
- letture correnti dei sensori- Returns:
- un oggetto Action che rappresenta i comandi di guida desiderati
-
reset
public abstract void reset()Chiamato all'inizio di ogni nuova prova per reimpostare lo stato interno. -
shutdown
public abstract void shutdown()Chiamato una sola volta alla chiusura del controller. Può essere usato per liberare risorse se necessario.
-