env_config:
  lib: expground.envs.poker
  env_id: leduc_poker
  params:
    fixed_player: True
    players: 2

learner_config:
  type: p2sro
  params:
    seed: 1
    meta_solver: fictitious_play
    use_learnable_dist: False
    episodic_training: True
    train_every: 10
    learning_mode: on_policy
    ray_mode: True
    mixed_at_every_step: False
    evaluation_worker_num: 30
    plateaus_threshold: 0.03
    parallel_num: 4
    save_indep_curve_every: 20
    train_at_least: 4
    mini_epoch: 5

  stop_conditions:
    max_iteration: 1000
  inner_stop_conditions:
    max_episode: 1000

# ============ copy from dqn yaml ===============
rollout_config:
  type: sequential
  fragment_length: 100  # maximum time steps of one batched data, should lower than total_timesteps
  max_step: 20  # for simulation
  num_simulation: 50

training_config:
  learning_rate: 0.0001
  vf_coef: 1.0
  ent_coef: 0.0
  clip_param: 0.3
  optimizer: Adam
  batch_size: 32
  gamma: 1.0
  tau: 0.01
  grad_norm_clipping: 0.5
  total_timesteps: 100000
  exploration_fraction: 0.1
  exploration_final_eps: 0.1
  param_nose: False

sampler_config:
  sampler_type: simple
  params:
    capacity: 10000
    learning_starts: 32

algorithm:
  name: PPO
  policy: ppo.PPO
  trainer: ppo.PPOTrainer
  loss: ppo.PPOLoss

model_config:
  actor:
    network: mlp
    layers:
      - units: 256
        activation: ReLU
      - units: 256
        activation: ReLU
      # - units: 256
      #   activation: ReLU
      # - units: 256
      #   activation: ReLU
    output:
      activation: False
  critic:
    network: mlp
    layers:
      - units: 256
        activation: ReLU
      - units: 256
        activation: ReLU
      # - units: 256
      #   activation: ReLU
      # - units: 256
      #   activation: ReLU
    output:
      activation: False

custom_config:
  use_cuda: False
