Repository navigation
XLRON v1.4.0
GNN models now work on GN-model environments and with disabled node features.
GNN + GN-model environments (#47)
--USE_GNN with rsa_gn_model/rmsa_gn_model previously crashed at trace time. Four stacked defects fixed:
- The GNN edge embedder is sized from the same rule the env uses to build
graph.edges— 2×link_resourcesfor GN-model envs (stacked SNR + power features),link_resourcesotherwise. - Fixed the
output_globals_size_actor→global_output_size_actorconfig-key typo (raisedBoxKeyErrorfor every GNN + GN-model run). ActorGNNreturns the(path_dist, power_dist)tuple only whenlaunch_power_type="rl"(previously for any GN-model params, breaking fixed/tabular/scaled launch power), and now also coversrmsa_gn_model.- The warmup guard and
LogWrapper.stepaccept the scalar path actions a GNN policy emits with non-RL launch power.
--DISABLE_NODE_FEATURES with GNN models (#48)
Previously crashed at trace time; two stacked causes:
- The flag case-desync fixed in v1.2.0 (#37) meant the env emitted full-width node features against a width-1 embedder.
- The disabled-features placeholder was rank-1
zeros((1,)), feeding rank-0 scalars to the vmapped node embedder. It is nowzeros((num_nodes, 1))— one zero feature per node, keeping the carriedgraph.nodesshape stable across the scan.
Regression tests build the graph through the real env path (process_config→make→env.reset) and assert env/model consistency for both plain RSA and GN-model environments.
Known follow-ups
- VONE +
--USE_GNNwith node features enabled has a pre-existing embedder width mismatch (num_spectral_features + 2vs the VONE env's+ 3node features);--DISABLE_NODE_FEATURESworks. - The
rmsa_gn_model+launch_power_type=rlloss path still gates tuple handling onenv_type == "rsa_gn_model"exactly (see the note on #44).
Full changelog: v1.3.0...v1.4.0