MultiConnectRL checkpoints

Trained policies of MultiConnectRL for joint interface selection, packet allocation and power control in Sub-6GHz/mmWave multi-AP networks, on the scenarios of ductaingn/multi-connect-rl-scenarios.

Each run is trained online for 30,000 frames with 4 APs (one agent per AP), 3 seeds per setting.

Layout

<run>/config.yaml          # full YAML config of the run
<run>/final/agent_<i>.pt   # policy of the agent of AP i
<run>/final/metadata.json

<run> is Scenario_<K>_devices_5_dBm_30000_obstacles_<blockage>_<algorithm>_seed_<s> with

Field Values
K (devices per AP) 3 (scenario scenario_4_30k), 10 (scenario_5_30k)
blockage fixed (static obstacles), dynamic (obstacles rotated at frame 2000)
algorithm SACRA, SACRA-Va (SACRA without power control), RAQL, RAQL-FP, DQN, DQN-FP (-FP: baseline with the full power budget)
s 1, 2, 3

The algorithm names are those of the paper; runs saved by earlier versions of the library used SACPA (SACRA) and SACPF (SACRA-Va), which the library still accepts.

Loading a run

import yaml
from huggingface_hub import snapshot_download
from multi_agent_power_allocation.utils.train_config import TrainConfig
from multi_agent_power_allocation.utils.checkpoint import load_policies

run = "Scenario_3_devices_5_dBm_30000_obstacles_fixed_SACRA_seed_1"
root = snapshot_download("ductaingn/multi-connect-rl-checkpoints", allow_patterns=[f"{run}/*"])

with open(f"{root}/{run}/config.yaml") as f:
    config = TrainConfig(config_dict=yaml.safe_load(f))
policies = config.env_config["algorithm_mapping"]
load_policies(f"{root}/{run}/final", policies)
Downloads last month

-

Downloads are not tracked for this model. How to track
Video Preview
loading

Dataset used to train ductaingn/multi-connect-rl-checkpoints