pytwinnet.rl.power_env

Classes

PowerControlEnv(twin, tx_ids, ue_ids[, ...])

A lightweight, gymnasium-like environment for downlink power control.

class pytwinnet.rl.power_env.PowerControlEnv(twin, tx_ids, ue_ids, bandwidth_hz=20000000.0, efficiency=0.75, power_step_db=1.0, power_min_dbm=10.0, power_max_dbm=40.0, penalty_lambda=0.0)[source]

Bases: object

A lightweight, gymnasium-like environment for downlink power control. - Observations: per-UE RSRP (or path-loss proxy) and current TX power. - Actions: discrete power delta {-Δ, 0, +Δ} for each gNB (vector or per-agent). - Reward: sum-throughput (or weighted) minus power penalty. This avoids hard dependency on gym; but the API is compatible enough.

Parameters:
metadata = {'render_modes': ['human']}
reset(seed=None)[source]
Parameters:

seed (int | None)

step(action_vector)[source]

action_vector shape = (len(tx_ids),) in {-1,0,+1}, meaning -Δ, 0, +Δ dB.

Parameters:

action_vector (ndarray)