Exemplo n.º 1
0
    def Driver_set(self, Driver):
        """Arrange driver parameters for behavior controller

        Define PID controller for velocity, offset, yaw

        Args:
            * DriverSet: driver parameter set
        """
        self.Driver = Driver
        self.Lon_Controller_acc = type_pid_controller(Driver.P_gain_lon, Driver.I_gain_lon, Driver.D_gain_lon)
        self.Lon_Controller_brk = type_pid_controller(Driver.P_gain_lon, Driver.I_gain_lon, Driver.D_gain_lon)
        self.Lat_Controller_offset = type_pid_controller(Driver.P_gain_lat, Driver.I_gain_lat, Driver.D_gain_lat)
        self.Lat_Controller_yaw = type_pid_controller(Driver.P_gain_yaw, Driver.I_gain_yaw, Driver.D_gain_yaw)
        self.stLonControl = 'Acc_On'
        self.stLonControlTrnst = 0
        self.cntTrnst = 0
        self.conf_brk_on_hystval = Driver.vel_hyst_brk        
        self.conf_acc_on_hystvel = Driver.vel_hyst_acc
        self.conf_shift_time = Driver.shift_time
        self.Filt_LonShiftTrnsDelay = type_trnsition_delay(Driver.shift_time)
Exemplo n.º 2
0
    model_conf = {
        'input_num': 8,
        'input_sequence_num': 8,
        'action_dim': 6,
        'lrn_rate': 0.0005
    }
    agent_conf = {'min_data_length': 200}

    agent_reg = DdqrnAgent(model_conf['input_num'],
                           model_conf['input_sequence_num'],
                           model_conf['action_dim'], model_conf['lrn_rate'])
    agent_reg.explore_dn_freq = 2000

    acc_set_filt = MovAvgFilt(7)
    reg_trq_ctl = type_pid_controller()
    reg_trq_ctl.P_gain = 50
    reg_trq_ctl.I_gain = 500
    # Env
    env_reg = EnvRegen(kona_power.ModBattery.SOC)
    " Load model"
    if driver_case == 0:
        agent_reg.model.load_weights('driving_case_driver_0.h5')
        agent_reg.epsilon = 0.1
    elif driver_case == 1:
        agent_reg.model.load_weights('driving_case_driver_1.h5')
        agent_reg.epsilon = 0.1
    else:
        agent_reg.model.load_weights('driving_case_driver_2.h5')
        agent_reg.epsilon = 0.1