Skip to main content

QuantumAgent

Trait QuantumAgent 

Source
pub trait QuantumAgent {
    // Required methods
    fn get_action(&self, state: &Array1<f64>) -> Result<usize>;
    fn update(
        &mut self,
        state: &Array1<f64>,
        action: usize,
        reward: f64,
        next_state: &Array1<f64>,
        done: bool,
    ) -> Result<()>;
    fn train(
        &mut self,
        env: &mut dyn Environment,
        episodes: usize,
    ) -> Result<f64>;
    fn evaluate(
        &self,
        env: &mut dyn Environment,
        episodes: usize,
    ) -> Result<f64>;
}
Expand description

Agent for reinforcement learning

Required Methods§

Source

fn get_action(&self, state: &Array1<f64>) -> Result<usize>

Gets an action for a given state

Source

fn update( &mut self, state: &Array1<f64>, action: usize, reward: f64, next_state: &Array1<f64>, done: bool, ) -> Result<()>

Updates the agent based on a reward

Source

fn train(&mut self, env: &mut dyn Environment, episodes: usize) -> Result<f64>

Trains the agent on an environment

Source

fn evaluate(&self, env: &mut dyn Environment, episodes: usize) -> Result<f64>

Evaluates the agent on an environment

Implementors§