Skip to content

Command-line Options

xlron.train.parameter_flags:
  --[no]ACTION_MASKING: Use invalid action masking
    (default: 'false')
  --ACTIVATION: Activation function
    (default: 'tanh')
  --ADAM_BETA1: Adam beta1
    (default: '0.9')
    (a number)
  --ADAM_BETA2: Adam beta2
    (default: '0.999')
    (a number)
  --ADAM_EPS: Adam epsilon
    (default: '1e-05')
    (a number)
  --CLIP_EPS: PPO clipping parameter
    (default: '0.2')
    (a number)
  --DATA_OUTPUT_FILE: Path to save data output
  --[no]DEBUG: Debug mode
    (default: 'false')
  --[no]DEBUG_NANS: Debug NaNs
    (default: 'false')
  --[no]DISABLE_JIT: Disable JIT compilation
    (default: 'false')
  --DOWNSAMPLE_FACTOR: Downsample factor to reduce data uploaded to wandb
    (default: '1')
    (an integer)
  --EMULATED_DEVICES: Number of devices to emulate
    (an integer)
  --[no]ENABLE_X64: Enable x64 floating point precision
    (default: 'false')
  --ENT_COEF: Entropy coefficient
    (default: '0.0')
    (a number)
  --ENV_WARMUP_STEPS: Number of warmup steps before training or eval
    (default: '0')
    (an integer)
  --[no]EVAL_HEURISTIC: Evaluate heuristic
    (default: 'false')
  --[no]EVAL_MODEL: Evaluate model
    (default: 'false')
  --EXPERIMENT_NAME: Name of experiment (equivalent to run name in wandb) (auto-generated based on other flags if unspecified)
    (default: '')
  --GAE_LAMBDA: GAE lambda parameter
    (default: '0.95')
    (a number)
  --GAMMA: Discount factor
    (default: '0.999')
    (a number)
  --[no]LAYER_NORM: Use layer normalization
    (default: 'false')
  --[no]LOAD_MODEL: Load model for retraining or evaluation
    (default: 'false')
  --LR: Learning rate
    (default: '0.0005')
    (a number)
  --LR_SCHEDULE: Learning rate schedule
    (default: 'warmup_cosine')
  --MAX_GRAD_NORM: Maximum gradient norm
    (default: '0.5')
    (a number)
  --MINIBATCH_SIZE: Minibatch size
    (default: '1')
    (an integer)
  --MODEL_PATH: Path to save/load model
  --[no]NO_PRINT_FLAGS: Do not print flags
    (default: 'false')
  --NUM_DEVICES: Number of devices
    (default: '1')
    (an integer)
  --NUM_ENVS: Number of environments per device
    (default: '1')
    (an integer)
  --NUM_LAYERS: Number of layers in actor and critic networks
    (default: '2')
    (an integer)
  --NUM_LEARNERS: Number of independent learners i.e. how many independent experiments to run with a unique set of learned parameters each
    (default: '1')
    (an integer)
  --NUM_MINIBATCHES: Number of minibatches per update
    (default: '1')
    (an integer)
  --NUM_UNITS: Number of hidden units in actor and critic networks
    (default: '64')
    (an integer)
  --NUM_UPDATES: Number of rollouts per environment
    (default: '1')
    (an integer)
  --[no]ORDERED: Order print statements when debugging (must be false if using pmap)
    (default: 'true')
  --[no]PLOTTING: Plotting
    (default: 'false')
  --[no]PREALLOCATE_MEM: Preallocate GPU memory
    (default: 'true')
  --PREALLOCATE_MEM_FRACTION: Fraction of GPU memory to preallocate
    (default: '0.95')
  --[no]PRINT_MEMORY_USE: Print memory usage
    (default: 'false')
  --PROJECT: Name of project (same as experiment name if unspecified)
    (default: '')
  --ROLLOUT_LENGTH: Number of steps per rollout per environment
    (default: '150')
    (an integer)
  --[no]SAVE_MODEL: Save model (will be saved to --MODEL_PATH locally and uploaded to wandb if --WANDB is True)
    (default: 'false')
  --SCHEDULE_MULTIPLIER: Increase the learning rate schedule horizon by this factor (to keep schedule for longer final training runs consistent with that from tuning runs)
    (default: '1')
    (an integer)
  --SEED: Random seed
    (default: '42')
    (an integer)
  --TOTAL_TIMESTEPS: Total number of timesteps
    (default: '1000000.0')
    (a number)
  --UPDATE_EPOCHS: Number of epochs per update
    (default: '10')
    (an integer)
  --[no]USE_GNN: Use GNN
    (default: 'false')
  --VF_COEF: Value function coefficient
    (default: '0.5')
    (a number)
  --VISIBLE_DEVICES: Comma-separated indices of (desired) visible GPUs e.g. 1,2,3
    (default: '0')
  --[no]WANDB: Use wandb
    (default: 'false')
  --WARMUP_END_FRACTION: Fraction of init LR that is final LR
    (default: '0.1')
    (a number)
  --WARMUP_PEAK_MULTIPLIER: Increase the learning rate warmup peak compared to init
    (default: '1.0')
    (a number)
  --WARMUP_STEPS_FRACTION: Fraction of total timesteps to use for warmup
    (default: '0.2')
    (a number)
  --aggregate_slots: Number of slots to aggregate into a single action
    (default: '1')
    (an integer)
  --alpha: Fibre attenuation coefficient, alpha [dB/km]
    (default: '0.2')
    (a number)
  --amplifier_noise_figure: Amplifier noise figure [dB]
    (default: '4.5')
    (a number)
  --beta_2: Dispersion parameter [ps^2/km]
    (default: '-21.7')
    (a number)
  --[no]continuous_operation: If True, do not reset the environment at the end of an episode
    (default: 'false')
  --custom_traffic_matrix_csv_filepath: Path to custom traffic matrix CSV file
  --[no]deterministic: Deterministic evaluation (use mode of action distribution)
    (default: 'false')
  --[no]disjoint_paths: Use disjoint paths (k paths still considered)
    (default: 'false')
  --[no]end_first_blocking: End episode on first blocking event
    (default: 'false')
  --env_type: Environment type
    (default: 'vone')
  --gamma: Nonlinear coefficient
    (default: '0.0012')
    (a number)
  --gnn_latent: GNN latent size
    (default: '64')
    (an integer)
  --gnn_mlp_layers: Number of MLP layers
    (default: '2')
    (an integer)
  --guardband: Guard band in slots
    (default: '1')
    (an integer)
  --[no]incremental_loading: Incremental increase in traffic load (non-expiring requests)
    (default: 'false')
  --k: Number of paths
    (default: '5')
    (an integer)
  --lambda0: Wavelength [nm]
    (default: '1550.0')
    (a number)
  --link_resources: Number of link resources
    (default: '5')
    (an integer)
  --load: Load
    (default: '250.0')
    (a number)
  --[no]log_actions: Log actions taken and other details
    (default: 'false')
  --max_bw: Maximum requested bandwidth
    (default: '100')
    (an integer)
  --max_node_resources: Maximum number of node resources
    (default: '1')
    (an integer)
  --max_requests: Maximum number of requests in an episode
    (default: '4.0')
    (a number)
  --max_timesteps: Maximum number of timesteps in an episode
    (default: '30.0')
    (a number)
  --max_traffic: Maximum traffic
    (default: '1.0')
  --mean_service_holding_time: Mean service holding time
    (default: '25.0')
    (a number)
  --message_passing_steps: Number of message passing steps
    (default: '3')
    (an integer)
  --min_bw: Minimum requested bandwidth
    (default: '25')
    (an integer)
  --min_node_resources: Minimum number of node resources
    (default: '1')
    (an integer)
  --min_traffic: Minimum traffic
    (default: '0.0')
  --model: Used to hold model parameters
    (a comma separated list)
  --modulations_csv_filepath: Modulation format definitions for RSA environment
    (default: './examples/modulations.csv')
  --multiple_topologies_directory: Directory containing JSON definitions of network topologies that will be alternated per episode
  --node_heuristic: Node heuristic to be evaluated
    (default: 'random')
  --node_probs: List of node probabilities for selection
    (a comma separated list)
  --node_resources: Number of node resources
    (default: '4')
    (an integer)
  --[no]normalize_by_link_length: Normalize by link length
    (default: 'false')
  --output_edges_size: Output edges size (not used)
    (default: '64')
    (an integer)
  --output_globals_size: Output globals size
    (default: '64')
    (an integer)
  --output_nodes_size: Output nodes size
    (default: '64')
    (an integer)
  --path_heuristic: Path heuristic to be evaluated
    (default: 'ksp_ff')
  --[no]random_traffic: Random traffic matrix for RSA on each reset (else uniform or custom)
    (default: 'false')
  --reward_type: Reward type
    (default: 'service')
  --scale_factor: Scale factor for link capacity (only used in RWA with lightpath reuse)
    (default: '1.0')
    (a number)
  --slot_size: Spectral width of frequency slot in GHz
    (default: '12.5')
    (a number)
  --span_length: Span length [km]
    (default: '100.0')
    (a number)
  --step_bw: Step size for requested bandwidth values between min and max
    (default: '1')
    (an integer)
  --step_traffic: Step size for traffic values between min and max
    (default: '0.1')
  --symbol_rate: Symbol rate [Gbaud]
    (default: '100.0')
    (a number)
  --topology_directory: Directory containing JSON definitions of network topologies
  --topology_name: Topology name
    (default: '4node')
  --traffic_requests_csv_filepath: Path to traffic request CSV file
  --[no]truncate_holding_time: Truncate holding time to less than 2*mean_service_holding_time
    (default: 'false')
  --values_bw: List of requested bandwidth values
    (a comma separated list)
  --virtual_topologies: Virtual topologies
    (default: '3_ring')
    (a comma separated list)
  --weight: Edge attribute name for ordering k-shortest paths

absl.flags:
  --flagfile: Insert flag definitions from the given file into the command line.
    (default: '')
  --undefok: comma-separated list of flag names that it is okay to specify on the command line even if the program does not define a flag with that name.  IMPORTANT: flags in this list that have arguments MUST use the --flag=value
    format.
    (default: '')