Training with RLlib PPO

RLlib is a high-performance, distributed reinforcement learning library. It is preferable to other RL libraries (e.g. Stable Baselines

  1. for bsk_rl environments because it steps environments copies asynchronously; because of the variable step lengths, variable episode step counts, and long episode reset times, stepping each environment independently can increase step throughput by 2-5 times.

Warning: RLlib had a bug that results in an undesirable timeout which stops training. It has since been resolved: https://github.com/ray-project/ray/pull/45147

RLlib is actively developed and can change significantly from version to version. For this script, the following version is used:

[1]:
from importlib.metadata import version
version("ray")  # Parent package of RLlib
[1]:
'2.35.0'

Define the Environment

A nadir-scanning environment is created, to the one used in this paper. The satellite has to collect data while managing the data buffer level and battery level.

First, the satellite class is defined. A custom dynamics model is created that defines a few additional properties to use in the state.

[2]:
import numpy as np
from bsk_rl import act, data, obs, sats, scene
from bsk_rl.sim import dyn, fsw

class ScanningDownlinkDynModel(dyn.ContinuousImagingDynModel, dyn.GroundStationDynModel):
    # Define some custom properties to be accessed in the state
    @property
    def instrument_pointing_error(self) -> float:
        r_BN_P_unit = self.r_BN_P/np.linalg.norm(self.r_BN_P)
        c_hat_P = self.satellite.fsw.c_hat_P
        return np.arccos(np.dot(-r_BN_P_unit, c_hat_P))

    @property
    def solar_pointing_error(self) -> float:
        a = self.world.gravFactory.spiceObject.planetStateOutMsgs[
            self.world.sun_index
        ].read().PositionVector
        a_hat_N = a / np.linalg.norm(a)
        nHat_B = self.satellite.sat_args["nHat_B"]
        NB = np.transpose(self.BN)
        nHat_N = NB @ nHat_B
        return np.arccos(np.dot(nHat_N, a_hat_N))

class ScanningSatellite(sats.AccessSatellite):
    observation_spec = [
        obs.SatProperties(
            dict(prop="storage_level_fraction"),
            dict(prop="battery_charge_fraction"),
            dict(prop="wheel_speeds_fraction"),
            dict(prop="instrument_pointing_error", norm=np.pi),
            dict(prop="solar_pointing_error", norm=np.pi)
        ),
        obs.OpportunityProperties(
            dict(prop="opportunity_open", norm=5700),
            dict(prop="opportunity_close", norm=5700),
            type="ground_station",
            n_ahead_observe=1,
        ),
        obs.Eclipse(norm=5700),
        obs.Time(),
    ]
    action_spec = [
        act.Scan(duration=180.0),
        act.Charge(duration=120.0),
        act.Downlink(duration=60.0),
        act.Desat(duration=60.0),
    ]
    dyn_type = ScanningDownlinkDynModel
    fsw_type = fsw.ContinuousImagingFSWModel

Next, parameters are set. Since this scenario is focused on maintaining acceptable data and power levels, these are tuned to create a sufficiently interesting mission.

[3]:
sat = ScanningSatellite(
    "Scanner-1",
    sat_args=dict(
        # Data
        dataStorageCapacity=5000 * 8e6,  # bits
        storageInit=lambda: np.random.uniform(0.0, 0.8) * 5000 * 8e6,
        instrumentBaudRate=0.5 * 8e6,
        transmitterBaudRate=-50 * 8e6,
        # Power
        batteryStorageCapacity=200 * 3600,  # W*s
        storedCharge_Init=lambda: np.random.uniform(0.3, 1.0) * 200 * 3600,
        basePowerDraw=-10.0,  # W
        instrumentPowerDraw=-30.0,  # W
        transmitterPowerDraw=-25.0,  # W
        thrusterPowerDraw=-80.0,  # W
        panelArea=0.25,
        # Attitude
        imageAttErrorRequirement=0.1,
        imageRateErrorRequirement=0.1,
        disturbance_vector=lambda: np.random.normal(scale=0.0001, size=3),  # N*m
        maxWheelSpeed=6000.0,  # RPM
        wheelSpeeds=lambda: np.random.uniform(-3000, 3000, 3),
        desatAttitude="nadir",
    )
)

Finally, the environment arguments are set. Stepping through this environment is demonstrated at the bottom of the page.

[4]:
duration = 5 * 5700.0  # About 5 orbits
env_args = dict(
    satellite=sat,
    scenario=scene.UniformNadirScanning(value_per_second=1/duration),
    rewarder=data.ScanningTimeReward(),
    time_limit=duration,
    failure_penalty=-1.0,
    terminate_on_time_limit=True,
)

Set Up Custom Logging

The bsk_rl package supplies a utility to make logging information at the end of episodes easier. This is useful to see how an agent’s policy is changing over time, using a monitoring program such as TensorBoard. The callback is configured by writing a function that takes the environment as an input and returns a dictionary with values to be logged.

[5]:
def episode_data_callback(env):
    reward = env.rewarder.cum_reward
    reward = sum(reward.values()) / len(reward)
    orbits = env.simulator.sim_time / (95 * 60)

    data = dict(
        reward=reward,
        # Are satellites dying, and how and when?
        alive=float(env.satellite.is_alive()),
        rw_status_valid=float(env.satellite.dynamics.rw_speeds_valid()),
        battery_status_valid=float(env.satellite.dynamics.battery_valid()),
        orbits_complete=orbits,
    )
    if orbits > 0:
        data["reward_per_orbit"] = reward / orbits
    if not env.satellite.is_alive():
        data["orbits_complete_partial_only"] = orbits

    return data

Configure Ray and PPO

PPO (or some other algorithm) can be configured. Of particular importance are setting sample_timeout_s and metrics_episode_collection_timeout_s to appropriately high values for this environment. The episode_data_callback is included in the environment arguments, and the WrappedEpisodeDataCallbacks must be included in training to trigger logging.

[6]:
import bsk_rl.utils.rllib  # noqa To access "SatelliteTasking-RLlib"
from ray.rllib.algorithms.ppo import PPOConfig
from bsk_rl.utils.rllib.callbacks import WrappedEpisodeDataCallbacks

N_CPUS = 3

training_args = dict(
    lr=0.00003,
    gamma=0.999,
    train_batch_size=250,  # usually a larger number, like 2500
    num_sgd_iter=10,
    model=dict(fcnet_hiddens=[512, 512], vf_share_layers=False),
    lambda_=0.95,
    use_kl_loss=False,
    clip_param=0.1,
    grad_clip=0.5,
)

config = (
    PPOConfig()
    .training(**training_args)
    .env_runners(num_env_runners=N_CPUS-1, sample_timeout_s=1000.0)
    .environment(
        env="SatelliteTasking-RLlib",
        env_config=dict(**env_args, episode_data_callback=episode_data_callback),
    )
    .reporting(
        metrics_num_episodes_for_smoothing=1,
        metrics_episode_collection_timeout_s=180,
    )
    .checkpointing(export_native_model_files=True)
    .framework(framework="torch")
    .api_stack(
        enable_rl_module_and_learner=True,
        enable_env_runner_and_connector_v2=True,
    )
    .callbacks(WrappedEpisodeDataCallbacks)
)

Once the PPO configuration has been set, ray can be started and the agent can be trained.

Training on a reasonably modern machine, we can achieve 5M steps over 32 processors in 6 to 18 hours, depending on specific environment configurations.

Note that the custom logging metrics are reported under env_runners.

[7]:
import ray
from ray import tune

ray.init(
    ignore_reinit_error=True,
    num_cpus=N_CPUS,
    object_store_memory=2_000_000_000,  # 2 GB
)

# Run the training
tune.run(
    "PPO",
    config=config.to_dict(),
    stop={"training_iteration": 10},  # Adjust the number of iterations as needed
    checkpoint_freq=10,
    checkpoint_at_end=True
)

# Shutdown Ray
ray.shutdown()
2026-07-18 03:51:38,606 INFO worker.py:1783 -- Started a local Ray instance.
2026-07-18 03:51:42,554 INFO tune.py:616 -- [output] This uses the legacy output and progress reporter, as Jupyter notebooks are not supported by the new engine, yet. For more information, please see https://github.com/ray-project/ray/issues/36949
/opt/hostedtoolcache/Python/3.11.15/x64/lib/python3.11/site-packages/gymnasium/spaces/box.py:130: UserWarning: WARN: Box bound precision lowered by casting to float32
  gym.logger.warn(f"Box bound precision lowered by casting to {self.dtype}")
/opt/hostedtoolcache/Python/3.11.15/x64/lib/python3.11/site-packages/gymnasium/utils/passive_env_checker.py:164: UserWarning: WARN: The obs returned by the `reset()` method was expecting numpy array dtype to be float32, actual type: float64
  logger.warn(
/opt/hostedtoolcache/Python/3.11.15/x64/lib/python3.11/site-packages/gymnasium/utils/passive_env_checker.py:188: UserWarning: WARN: The obs returned by the `reset()` method is not within the observation space.
  logger.warn(f"{pre} is not within the observation space.")

Tune Status

Current time:2026-07-18 03:52:16
Running for: 00:00:33.78
Memory: 4.9/15.6 GiB

System Info

Using FIFO scheduling algorithm.
Logical resource usage: 3.0/3 CPUs, 0/0 GPUs

Trial Status

Trial name status loc iter total time (s) num_env_steps_sample d_lifetime num_episodes_lifetim e num_env_steps_traine d_lifetime
PPO_SatelliteTasking-RLlib_fd267_00000TERMINATED10.1.0.142:4889 10 15.73862500112500
(SingleAgentEnvRunner pid=4934) /home/runner/work/bsk_rl/bsk_rl/src/bsk_rl/sim/dyn/base.py:330: BSKDeprecationWarning: Basilisk.utilities.unitTestSupport.np2EigenMatrix3d will be removed after 2027-06-23: Use simHelpers.np2EigenMatrix3d instead.
(SingleAgentEnvRunner pid=4934)   self.scObject.hub.IHubPntBc_B = unitTestSupport.np2EigenMatrix3d(self.I_mat)
(SingleAgentEnvRunner pid=4934) /home/runner/work/bsk_rl/bsk_rl/src/bsk_rl/sim/dyn/base.py:335: BSKDeprecationWarning: Basilisk.utilities.unitTestSupport.np2EigenVectorXd will be removed after 2027-06-23: Use simHelpers.np2EigenVectorXd instead.
(SingleAgentEnvRunner pid=4934)   self.scObject.hub.r_CN_NInit = unitTestSupport.np2EigenVectorXd(rN)
(SingleAgentEnvRunner pid=4934) /home/runner/work/bsk_rl/bsk_rl/src/bsk_rl/sim/dyn/base.py:336: BSKDeprecationWarning: Basilisk.utilities.unitTestSupport.np2EigenVectorXd will be removed after 2027-06-23: Use simHelpers.np2EigenVectorXd instead.
(SingleAgentEnvRunner pid=4934)   self.scObject.hub.v_CN_NInit = unitTestSupport.np2EigenVectorXd(vN)
(SingleAgentEnvRunner pid=4934) /home/runner/work/bsk_rl/bsk_rl/src/bsk_rl/sim/dyn/base.py:701: BSKDeprecationWarning: Basilisk.utilities.unitTestSupport.np2EigenVectorXd will be removed after 2027-06-23: Use simHelpers.np2EigenVectorXd instead.
(SingleAgentEnvRunner pid=4934)   unitTestSupport.np2EigenVectorXd(nHat_B),
(SingleAgentEnvRunner pid=4933)   unitTestSupport.np2EigenVectorXd(nHat_B),
(PPO pid=4889)   unitTestSupport.np2EigenVectorXd(nHat_B),
(PPO pid=4889) Install gputil for GPU system monitoring.

Trial Progress

Trial name env_runners fault_tolerance learners num_agent_steps_sampled_lifetime num_env_steps_sampled_lifetime num_env_steps_trained_lifetime num_episodes_lifetimeperf timers
PPO_SatelliteTasking-RLlib_fd267_00000{'num_episodes': 1, 'sample': np.float64(1.260233902531358), 'num_agent_steps_sampled': {'default_agent': 250}, 'num_agent_steps_sampled_lifetime': {'default_agent': 13750}, 'num_env_steps_sampled': 250, 'num_env_steps_sampled_lifetime': 25000, 'num_module_steps_sampled_lifetime': {'default_policy': 13750}, 'num_module_steps_sampled': {'default_policy': 250}, 'agent_episode_returns_mean': {'default_agent': -0.8265614035087719}, 'episode_len_mean': 148.0, 'time_between_sampling': np.float64(0.21244794969018352), 'episode_len_max': 216, 'episode_return_mean': -0.8265614035087719, 'episode_duration_sec_mean': 1.5928753700000016, 'episode_len_min': 80, 'episode_return_max': -0.7305263157894737, 'module_episode_returns_mean': {'default_policy': -0.8265614035087719}, 'episode_return_min': -0.9225964912280702, 'orbits_complete_partial_only': np.float64(3.8105263157894735), 'battery_status_valid': np.float64(0.0), 'orbits_complete': np.float64(3.8105263157894735), 'rw_status_valid': np.float64(1.0), 'reward_per_orbit': np.float64(0.07071823204419891), 'reward': np.float64(0.26947368421052637), 'alive': np.float64(0.0)}{'num_healthy_workers': 2, 'num_in_flight_async_reqs': 0, 'num_remote_worker_restarts': 0}{'default_policy': {'total_loss': -0.3309822976589203, 'num_non_trainable_parameters': 0.0, 'vf_loss': 0.0035597635433077812, 'gradients_default_optimizer_global_norm': 0.3942450284957886, 'entropy': 1.3730531930923462, 'num_trainable_parameters': 139525.0, 'policy_loss': -0.33454203605651855, 'num_module_steps_trained': 250, 'curr_entropy_coeff': 0.0, 'vf_explained_var': 0.15871137380599976, 'vf_loss_unclipped': 0.0035597635433077812, 'mean_kl_loss': 0.0, 'default_optimizer_learning_rate': 3e-05}, '__all_modules__': {'num_env_steps_trained': 250, 'num_module_steps_trained': 250, 'total_loss': -0.3309822976589203, 'num_non_trainable_parameters': 0.0, 'num_trainable_parameters': 139525.0}}{'default_agent': 2500} 2500 2500 11{'cpu_util_percent': np.float64(48.55), 'ram_util_percent': np.float64(31.4)}{'env_runner_sampling_timer': 1.3237966620336126, 'learner_update_timer': 0.12184185590937233, 'synch_weights': 0.006285004737734882, 'synch_env_connectors': 0.006490878510151359}
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:02,763 sats.satellite.Scanner-1       WARNING    <21240.00> Scanner-1: failed battery_valid check
(SingleAgentEnvRunner pid=4933)   unitTestSupport.np2EigenVectorXd(nHat_B),
(SingleAgentEnvRunner pid=4934)   unitTestSupport.np2EigenVectorXd(nHat_B),
(SingleAgentEnvRunner pid=4934) /home/runner/work/bsk_rl/bsk_rl/src/bsk_rl/sim/dyn/base.py:701: BSKDeprecationWarning: Basilisk.utilities.unitTestSupport.np2EigenVectorXd will be removed after 2027-06-23: Use simHelpers.np2EigenVectorXd instead. [repeated 16x across cluster] (Ray deduplicates logs by default. Set RAY_DEDUP_LOGS=0 to disable log deduplication, or see https://docs.ray.io/en/master/ray-observability/user-guides/configure-logging.html#log-deduplication for more options.)
(SingleAgentEnvRunner pid=4934)   self.scObject.hub.IHubPntBc_B = unitTestSupport.np2EigenMatrix3d(self.I_mat) [repeated 4x across cluster]
(SingleAgentEnvRunner pid=4934)   self.scObject.hub.r_CN_NInit = unitTestSupport.np2EigenVectorXd(rN) [repeated 4x across cluster]
(SingleAgentEnvRunner pid=4934)   self.scObject.hub.v_CN_NInit = unitTestSupport.np2EigenVectorXd(vN) [repeated 4x across cluster]
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:05,648 sats.satellite.Scanner-1       WARNING    <22920.00> Scanner-1: failed battery_valid check
(SingleAgentEnvRunner pid=4933)   unitTestSupport.np2EigenVectorXd(nHat_B),
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,426 sats.satellite.Scanner-1       WARNING    <14640.00> Scanner-1: failed battery_valid check
(SingleAgentEnvRunner pid=4933)   unitTestSupport.np2EigenVectorXd(nHat_B),
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,511 utils.orbital                  WARNING    <0.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,529 utils.orbital                  WARNING    <180.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,544 utils.orbital                  WARNING    <360.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,560 utils.orbital                  WARNING    <540.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,575 utils.orbital                  WARNING    <720.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,582 utils.orbital                  WARNING    <780.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,590 utils.orbital                  WARNING    <840.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,598 utils.orbital                  WARNING    <900.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4934)   unitTestSupport.np2EigenVectorXd(nHat_B),
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,614 utils.orbital                  WARNING    <1080.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,622 utils.orbital                  WARNING    <1140.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,630 utils.orbital                  WARNING    <1200.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,644 utils.orbital                  WARNING    <1380.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,659 utils.orbital                  WARNING    <1560.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,670 utils.orbital                  WARNING    <1680.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,677 utils.orbital                  WARNING    <1740.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,691 utils.orbital                  WARNING    <1920.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,698 utils.orbital                  WARNING    <1980.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,708 utils.orbital                  WARNING    <2040.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,728 utils.orbital                  WARNING    <2220.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,739 utils.orbital                  WARNING    <2280.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,747 utils.orbital                  WARNING    <2340.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,757 utils.orbital                  WARNING    <2400.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,773 utils.orbital                  WARNING    <2520.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,780 utils.orbital                  WARNING    <2580.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,802 utils.orbital                  WARNING    <2760.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,819 utils.orbital                  WARNING    <2940.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,827 utils.orbital                  WARNING    <3000.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,834 utils.orbital                  WARNING    <3060.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,841 utils.orbital                  WARNING    <3120.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,851 utils.orbital                  WARNING    <3240.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,865 utils.orbital                  WARNING    <3420.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,872 utils.orbital                  WARNING    <3480.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,883 utils.orbital                  WARNING    <3600.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,890 utils.orbital                  WARNING    <3660.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,904 utils.orbital                  WARNING    <3840.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,915 utils.orbital                  WARNING    <3900.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,931 utils.orbital                  WARNING    <4020.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,938 utils.orbital                  WARNING    <4080.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,945 utils.orbital                  WARNING    <4140.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,960 utils.orbital                  WARNING    <4320.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,967 utils.orbital                  WARNING    <4380.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,982 utils.orbital                  WARNING    <4560.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,989 utils.orbital                  WARNING    <4620.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:07,999 utils.orbital                  WARNING    <4740.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,006 utils.orbital                  WARNING    <4800.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,021 utils.orbital                  WARNING    <4980.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,032 utils.orbital                  WARNING    <5100.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,047 utils.orbital                  WARNING    <5280.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,061 utils.orbital                  WARNING    <5460.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,069 utils.orbital                  WARNING    <5520.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,076 utils.orbital                  WARNING    <5580.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,090 utils.orbital                  WARNING    <5760.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,097 utils.orbital                  WARNING    <5820.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,108 utils.orbital                  WARNING    <5940.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,117 utils.orbital                  WARNING    <6000.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,124 utils.orbital                  WARNING    <6060.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,135 utils.orbital                  WARNING    <6180.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,142 utils.orbital                  WARNING    <6240.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,153 utils.orbital                  WARNING    <6360.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,161 utils.orbital                  WARNING    <6420.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,176 utils.orbital                  WARNING    <6600.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,183 utils.orbital                  WARNING    <6660.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,194 utils.orbital                  WARNING    <6780.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,201 utils.orbital                  WARNING    <6840.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,208 utils.orbital                  WARNING    <6900.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,215 utils.orbital                  WARNING    <6960.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,223 utils.orbital                  WARNING    <7020.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,238 utils.orbital                  WARNING    <7200.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,245 utils.orbital                  WARNING    <7260.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,252 utils.orbital                  WARNING    <7320.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,266 utils.orbital                  WARNING    <7500.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,273 utils.orbital                  WARNING    <7560.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,280 utils.orbital                  WARNING    <7620.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,287 utils.orbital                  WARNING    <7680.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,297 utils.orbital                  WARNING    <7800.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,311 utils.orbital                  WARNING    <7980.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,485 utils.orbital                  WARNING    <8160.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,492 utils.orbital                  WARNING    <8220.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,499 utils.orbital                  WARNING    <8280.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,510 utils.orbital                  WARNING    <8400.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,521 utils.orbital                  WARNING    <8520.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,544 utils.orbital                  WARNING    <8700.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,555 utils.orbital                  WARNING    <8760.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,563 utils.orbital                  WARNING    <8820.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,579 utils.orbital                  WARNING    <8940.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,597 utils.orbital                  WARNING    <9060.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,607 utils.orbital                  WARNING    <9120.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,616 utils.orbital                  WARNING    <9180.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,634 utils.orbital                  WARNING    <9360.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,649 utils.orbital                  WARNING    <9480.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,657 utils.orbital                  WARNING    <9540.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,664 utils.orbital                  WARNING    <9600.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,678 utils.orbital                  WARNING    <9780.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,685 utils.orbital                  WARNING    <9840.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,692 utils.orbital                  WARNING    <9900.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,707 utils.orbital                  WARNING    <10080.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,714 utils.orbital                  WARNING    <10140.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,725 utils.orbital                  WARNING    <10260.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,734 utils.orbital                  WARNING    <10320.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,748 utils.orbital                  WARNING    <10500.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,760 utils.orbital                  WARNING    <10620.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,768 utils.orbital                  WARNING    <10680.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,778 utils.orbital                  WARNING    <10800.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,785 utils.orbital                  WARNING    <10860.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,796 utils.orbital                  WARNING    <10980.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,803 utils.orbital                  WARNING    <11040.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,810 utils.orbital                  WARNING    <11100.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,817 utils.orbital                  WARNING    <11160.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,824 utils.orbital                  WARNING    <11220.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,832 utils.orbital                  WARNING    <11280.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,840 utils.orbital                  WARNING    <11340.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,851 utils.orbital                  WARNING    <11460.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,858 utils.orbital                  WARNING    <11520.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,865 utils.orbital                  WARNING    <11580.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,873 utils.orbital                  WARNING    <11640.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,883 utils.orbital                  WARNING    <11760.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,897 utils.orbital                  WARNING    <11940.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,912 utils.orbital                  WARNING    <12120.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,920 utils.orbital                  WARNING    <12180.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,927 utils.orbital                  WARNING    <12240.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4934) /home/runner/work/bsk_rl/bsk_rl/src/bsk_rl/sim/dyn/base.py:701: BSKDeprecationWarning: Basilisk.utilities.unitTestSupport.np2EigenVectorXd will be removed after 2027-06-23: Use simHelpers.np2EigenVectorXd instead. [repeated 12x across cluster]
(SingleAgentEnvRunner pid=4934)   self.scObject.hub.IHubPntBc_B = unitTestSupport.np2EigenMatrix3d(self.I_mat) [repeated 3x across cluster]
(SingleAgentEnvRunner pid=4934)   self.scObject.hub.r_CN_NInit = unitTestSupport.np2EigenVectorXd(rN) [repeated 3x across cluster]
(SingleAgentEnvRunner pid=4934)   self.scObject.hub.v_CN_NInit = unitTestSupport.np2EigenVectorXd(vN) [repeated 3x across cluster]
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,940 utils.orbital                  WARNING    <12360.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,954 utils.orbital                  WARNING    <12540.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,964 utils.orbital                  WARNING    <12600.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,973 utils.orbital                  WARNING    <12660.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,983 utils.orbital                  WARNING    <12720.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:08,997 utils.orbital                  WARNING    <12840.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,015 utils.orbital                  WARNING    <13020.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,024 utils.orbital                  WARNING    <13080.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,047 utils.orbital                  WARNING    <13260.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,056 utils.orbital                  WARNING    <13320.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,064 utils.orbital                  WARNING    <13380.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,073 utils.orbital                  WARNING    <13440.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,083 utils.orbital                  WARNING    <13500.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,106 utils.orbital                  WARNING    <13680.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,115 utils.orbital                  WARNING    <13740.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,124 utils.orbital                  WARNING    <13800.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4934) 2026-07-18 03:52:09,147 sats.satellite.Scanner-1       WARNING    <12000.00> Scanner-1: failed battery_valid check
(SingleAgentEnvRunner pid=4934)   unitTestSupport.np2EigenVectorXd(nHat_B),
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,141 utils.orbital                  WARNING    <13920.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,157 utils.orbital                  WARNING    <14100.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,169 utils.orbital                  WARNING    <14220.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,181 utils.orbital                  WARNING    <14340.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,194 utils.orbital                  WARNING    <14460.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,210 utils.orbital                  WARNING    <14640.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,237 utils.orbital                  WARNING    <14820.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,247 utils.orbital                  WARNING    <14880.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,262 utils.orbital                  WARNING    <15000.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,280 utils.orbital                  WARNING    <15180.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,292 utils.orbital                  WARNING    <15240.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,315 utils.orbital                  WARNING    <15420.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,330 utils.orbital                  WARNING    <15540.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,338 utils.orbital                  WARNING    <15600.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,350 utils.orbital                  WARNING    <15660.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,361 utils.orbital                  WARNING    <15720.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,371 utils.orbital                  WARNING    <15780.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,383 utils.orbital                  WARNING    <15900.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,392 utils.orbital                  WARNING    <15960.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,400 utils.orbital                  WARNING    <16020.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,408 utils.orbital                  WARNING    <16080.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,423 utils.orbital                  WARNING    <16200.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,435 utils.orbital                  WARNING    <16260.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,453 utils.orbital                  WARNING    <16440.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,468 utils.orbital                  WARNING    <16560.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,487 utils.orbital                  WARNING    <16740.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,497 utils.orbital                  WARNING    <16800.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,509 utils.orbital                  WARNING    <16860.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,525 utils.orbital                  WARNING    <16980.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,536 utils.orbital                  WARNING    <17040.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,548 utils.orbital                  WARNING    <17100.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,559 utils.orbital                  WARNING    <17220.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,570 utils.orbital                  WARNING    <17340.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,584 utils.orbital                  WARNING    <17520.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,592 utils.orbital                  WARNING    <17580.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,603 utils.orbital                  WARNING    <17700.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,614 utils.orbital                  WARNING    <17820.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,625 utils.orbital                  WARNING    <17940.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,632 utils.orbital                  WARNING    <18000.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,643 utils.orbital                  WARNING    <18120.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,659 utils.orbital                  WARNING    <18300.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,666 utils.orbital                  WARNING    <18360.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,682 utils.orbital                  WARNING    <18540.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,693 utils.orbital                  WARNING    <18660.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,712 utils.orbital                  WARNING    <18840.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,723 utils.orbital                  WARNING    <18960.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,731 utils.orbital                  WARNING    <19020.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,739 utils.orbital                  WARNING    <19080.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,752 utils.orbital                  WARNING    <19200.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,775 utils.orbital                  WARNING    <19380.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,784 utils.orbital                  WARNING    <19440.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,800 utils.orbital                  WARNING    <19560.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,817 utils.orbital                  WARNING    <19680.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,833 utils.orbital                  WARNING    <19860.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,844 utils.orbital                  WARNING    <19920.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,854 utils.orbital                  WARNING    <19980.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,877 utils.orbital                  WARNING    <20160.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,890 utils.orbital                  WARNING    <20280.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,898 utils.orbital                  WARNING    <20340.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,905 utils.orbital                  WARNING    <20400.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,912 utils.orbital                  WARNING    <20460.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,924 utils.orbital                  WARNING    <20580.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,931 utils.orbital                  WARNING    <20640.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,942 utils.orbital                  WARNING    <20760.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:09,957 utils.orbital                  WARNING    <20940.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,128 utils.orbital                  WARNING    <21120.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,138 utils.orbital                  WARNING    <21180.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,152 utils.orbital                  WARNING    <21300.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,164 utils.orbital                  WARNING    <21360.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,184 utils.orbital                  WARNING    <21540.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,203 utils.orbital                  WARNING    <21720.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,216 utils.orbital                  WARNING    <21780.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,225 utils.orbital                  WARNING    <21840.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,233 utils.orbital                  WARNING    <21900.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,240 utils.orbital                  WARNING    <21960.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,248 utils.orbital                  WARNING    <22020.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,263 utils.orbital                  WARNING    <22200.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,277 utils.orbital                  WARNING    <22320.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,296 utils.orbital                  WARNING    <22500.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,318 utils.orbital                  WARNING    <22680.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,335 utils.orbital                  WARNING    <22860.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,356 utils.orbital                  WARNING    <23040.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,366 utils.orbital                  WARNING    <23100.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,386 utils.orbital                  WARNING    <23220.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,397 utils.orbital                  WARNING    <23280.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,406 utils.orbital                  WARNING    <23340.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,415 utils.orbital                  WARNING    <23400.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,430 utils.orbital                  WARNING    <23520.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,452 utils.orbital                  WARNING    <23700.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,475 utils.orbital                  WARNING    <23880.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,483 utils.orbital                  WARNING    <23940.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,499 utils.orbital                  WARNING    <24120.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,511 utils.orbital                  WARNING    <24240.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,522 utils.orbital                  WARNING    <24360.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,530 utils.orbital                  WARNING    <24420.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,545 utils.orbital                  WARNING    <24600.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,554 utils.orbital                  WARNING    <24660.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,569 utils.orbital                  WARNING    <24840.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,577 utils.orbital                  WARNING    <24900.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,594 utils.orbital                  WARNING    <25080.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,605 utils.orbital                  WARNING    <25200.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,617 utils.orbital                  WARNING    <25320.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,632 utils.orbital                  WARNING    <25500.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,648 utils.orbital                  WARNING    <25680.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,656 utils.orbital                  WARNING    <25740.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,668 utils.orbital                  WARNING    <25860.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,675 utils.orbital                  WARNING    <25920.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,685 utils.orbital                  WARNING    <25980.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,705 utils.orbital                  WARNING    <26160.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,719 utils.orbital                  WARNING    <26280.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,729 utils.orbital                  WARNING    <26340.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,750 utils.orbital                  WARNING    <26520.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,766 utils.orbital                  WARNING    <26640.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,788 utils.orbital                  WARNING    <26820.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,807 utils.orbital                  WARNING    <27000.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,824 utils.orbital                  WARNING    <27120.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,834 utils.orbital                  WARNING    <27180.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,856 utils.orbital                  WARNING    <27360.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,867 utils.orbital                  WARNING    <27420.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,888 utils.orbital                  WARNING    <27600.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,898 utils.orbital                  WARNING    <27660.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,910 utils.orbital                  WARNING    <27720.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,930 utils.orbital                  WARNING    <27900.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,941 utils.orbital                  WARNING    <27960.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,956 utils.orbital                  WARNING    <28080.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,969 utils.orbital                  WARNING    <28200.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:10,982 utils.orbital                  WARNING    <28260.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:11,005 utils.orbital                  WARNING    <28440.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:11,014 utils.orbital                  WARNING    <28500.00> Could not find eclipse transitions in next 12000.0 seconds
(SingleAgentEnvRunner pid=4933)   unitTestSupport.np2EigenVectorXd(nHat_B),
(SingleAgentEnvRunner pid=4934)   unitTestSupport.np2EigenVectorXd(nHat_B),
(SingleAgentEnvRunner pid=4933)   unitTestSupport.np2EigenVectorXd(nHat_B),
(SingleAgentEnvRunner pid=4934)   unitTestSupport.np2EigenVectorXd(nHat_B),
(SingleAgentEnvRunner pid=4934) /home/runner/work/bsk_rl/bsk_rl/src/bsk_rl/sim/dyn/base.py:701: BSKDeprecationWarning: Basilisk.utilities.unitTestSupport.np2EigenVectorXd will be removed after 2027-06-23: Use simHelpers.np2EigenVectorXd instead. [repeated 20x across cluster]
(SingleAgentEnvRunner pid=4934)   self.scObject.hub.IHubPntBc_B = unitTestSupport.np2EigenMatrix3d(self.I_mat) [repeated 5x across cluster]
(SingleAgentEnvRunner pid=4934)   self.scObject.hub.r_CN_NInit = unitTestSupport.np2EigenVectorXd(rN) [repeated 5x across cluster]
(SingleAgentEnvRunner pid=4934)   self.scObject.hub.v_CN_NInit = unitTestSupport.np2EigenVectorXd(vN) [repeated 5x across cluster]
(SingleAgentEnvRunner pid=4933) 2026-07-18 03:52:15,824 sats.satellite.Scanner-1       WARNING    <21720.00> Scanner-1: failed battery_valid check [repeated 3x across cluster]
(SingleAgentEnvRunner pid=4933)   unitTestSupport.np2EigenVectorXd(nHat_B),
2026-07-18 03:52:16,405 INFO tune.py:1009 -- Wrote the latest version of all result files and experiment state to '/home/runner/ray_results/PPO_2026-07-18_03-51-42' in 0.0231s.
(PPO pid=4889) Checkpoint successfully created at: Checkpoint(filesystem=local, path=/home/runner/ray_results/PPO_2026-07-18_03-51-42/PPO_SatelliteTasking-RLlib_fd267_00000_0_2026-07-18_03-51-42/checkpoint_000000)
2026-07-18 03:52:16,497 INFO tune.py:1041 -- Total run time: 33.94 seconds (33.75 seconds for the tuning loop).
(SingleAgentEnvRunner pid=4933) /home/runner/work/bsk_rl/bsk_rl/src/bsk_rl/sim/dyn/base.py:701: BSKDeprecationWarning: Basilisk.utilities.unitTestSupport.np2EigenVectorXd will be removed after 2027-06-23: Use simHelpers.np2EigenVectorXd instead. [repeated 4x across cluster]
(SingleAgentEnvRunner pid=4933)   self.scObject.hub.IHubPntBc_B = unitTestSupport.np2EigenMatrix3d(self.I_mat)
(SingleAgentEnvRunner pid=4933)   self.scObject.hub.r_CN_NInit = unitTestSupport.np2EigenVectorXd(rN)
(SingleAgentEnvRunner pid=4933)   self.scObject.hub.v_CN_NInit = unitTestSupport.np2EigenVectorXd(vN)

Loading the Policy Network

The policy network can be found in the p0 subdirectory of the checkpoint output, if using the torch backend, and the model subdirectory of the checkpoint output. Use bsk_rl.utils.rllib.load_torch_mlp_policy to load torch policies.

Stepping Through the Environment

The environment is stepped through with random actions to give a sense of how it acts.

[8]:
from bsk_rl import SatelliteTasking

env = SatelliteTasking(**env_args, log_level="INFO")
env.reset()
terminated = False
while not terminated:
    action = env.action_space.sample()
    observation, reward, terminated, truncated, info = env.step(action)
2026-07-18 03:52:17,697 gym                            INFO       Resetting environment with seed=1889150780
/home/runner/work/bsk_rl/bsk_rl/src/bsk_rl/sim/dyn/base.py:330: BSKDeprecationWarning: Basilisk.utilities.unitTestSupport.np2EigenMatrix3d will be removed after 2027-06-23: Use simHelpers.np2EigenMatrix3d instead.
  self.scObject.hub.IHubPntBc_B = unitTestSupport.np2EigenMatrix3d(self.I_mat)
/home/runner/work/bsk_rl/bsk_rl/src/bsk_rl/sim/dyn/base.py:335: BSKDeprecationWarning: Basilisk.utilities.unitTestSupport.np2EigenVectorXd will be removed after 2027-06-23: Use simHelpers.np2EigenVectorXd instead.
  self.scObject.hub.r_CN_NInit = unitTestSupport.np2EigenVectorXd(rN)
/home/runner/work/bsk_rl/bsk_rl/src/bsk_rl/sim/dyn/base.py:336: BSKDeprecationWarning: Basilisk.utilities.unitTestSupport.np2EigenVectorXd will be removed after 2027-06-23: Use simHelpers.np2EigenVectorXd instead.
  self.scObject.hub.v_CN_NInit = unitTestSupport.np2EigenVectorXd(vN)
/home/runner/work/bsk_rl/bsk_rl/src/bsk_rl/sim/dyn/base.py:701: BSKDeprecationWarning: Basilisk.utilities.unitTestSupport.np2EigenVectorXd will be removed after 2027-06-23: Use simHelpers.np2EigenVectorXd instead.
  unitTestSupport.np2EigenVectorXd(nHat_B),
2026-07-18 03:52:17,748 sats.satellite.Scanner-1       INFO       <0.00> Scanner-1: Finding opportunity windows from 0.00 to 28800.00 seconds
2026-07-18 03:52:17,803 gym                            INFO       <0.00> Environment reset
2026-07-18 03:52:17,804 gym                            INFO       <0.00> === STARTING STEP ===
2026-07-18 03:52:17,804 sats.satellite.Scanner-1       INFO       <0.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:17,805 sats.satellite.Scanner-1       INFO       <0.00> Scanner-1: setting timed terminal event at 120.0
2026-07-18 03:52:17,814 sats.satellite.Scanner-1       INFO       <120.00> Scanner-1: timed termination at 120.0 for action_charge
2026-07-18 03:52:17,815 data.base                      INFO       <120.00> Total reward: {}
2026-07-18 03:52:17,816 comm.communication             INFO       <120.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:17,817 sats.satellite.Scanner-1       INFO       <120.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:17,819 gym                            INFO       <120.00> Step reward: 0.0
2026-07-18 03:52:17,820 gym                            INFO       <120.00> === STARTING STEP ===
2026-07-18 03:52:17,820 sats.satellite.Scanner-1       INFO       <120.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:17,821 sats.satellite.Scanner-1       INFO       <120.00> Scanner-1: setting timed terminal event at 300.0
2026-07-18 03:52:17,834 sats.satellite.Scanner-1       INFO       <300.00> Scanner-1: timed termination at 300.0 for action_nadir_scan
2026-07-18 03:52:17,835 data.base                      INFO       <300.00> Total reward: {'Scanner-1': 0.004526315789473684}
2026-07-18 03:52:17,836 comm.communication             INFO       <300.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:17,836 sats.satellite.Scanner-1       INFO       <300.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:17,839 gym                            INFO       <300.00> Step reward: 0.004526315789473684
2026-07-18 03:52:17,839 gym                            INFO       <300.00> === STARTING STEP ===
2026-07-18 03:52:17,840 sats.satellite.Scanner-1       INFO       <300.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:17,841 sats.satellite.Scanner-1       INFO       <300.00> Scanner-1: setting timed terminal event at 480.0
2026-07-18 03:52:17,858 sats.satellite.Scanner-1       INFO       <480.00> Scanner-1: timed termination at 480.0 for action_nadir_scan
2026-07-18 03:52:17,859 data.base                      INFO       <480.00> Total reward: {'Scanner-1': 0.00631578947368421}
2026-07-18 03:52:17,860 comm.communication             INFO       <480.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:17,861 sats.satellite.Scanner-1       INFO       <480.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:17,863 gym                            INFO       <480.00> Step reward: 0.00631578947368421
2026-07-18 03:52:17,864 gym                            INFO       <480.00> === STARTING STEP ===
2026-07-18 03:52:17,865 sats.satellite.Scanner-1       INFO       <480.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:17,866 sats.satellite.Scanner-1       INFO       <480.00> Scanner-1: setting timed terminal event at 600.0
2026-07-18 03:52:17,878 sats.satellite.Scanner-1       INFO       <600.00> Scanner-1: timed termination at 600.0 for action_charge
2026-07-18 03:52:17,879 data.base                      INFO       <600.00> Total reward: {}
2026-07-18 03:52:17,880 comm.communication             INFO       <600.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:17,881 sats.satellite.Scanner-1       INFO       <600.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:17,883 gym                            INFO       <600.00> Step reward: 0.0
2026-07-18 03:52:17,884 gym                            INFO       <600.00> === STARTING STEP ===
2026-07-18 03:52:17,885 sats.satellite.Scanner-1       INFO       <600.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:17,886 sats.satellite.Scanner-1       INFO       <600.00> Scanner-1: setting timed terminal event at 720.0
2026-07-18 03:52:17,895 sats.satellite.Scanner-1       INFO       <720.00> Scanner-1: timed termination at 720.0 for action_charge
2026-07-18 03:52:17,896 data.base                      INFO       <720.00> Total reward: {}
2026-07-18 03:52:17,896 comm.communication             INFO       <720.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:17,897 sats.satellite.Scanner-1       INFO       <720.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:17,899 gym                            INFO       <720.00> Step reward: 0.0
2026-07-18 03:52:17,900 gym                            INFO       <720.00> === STARTING STEP ===
2026-07-18 03:52:17,901 sats.satellite.Scanner-1       INFO       <720.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:17,902 sats.satellite.Scanner-1       INFO       <720.00> Scanner-1: setting timed terminal event at 840.0
2026-07-18 03:52:17,914 sats.satellite.Scanner-1       INFO       <840.00> Scanner-1: timed termination at 840.0 for action_charge
2026-07-18 03:52:17,916 data.base                      INFO       <840.00> Total reward: {}
2026-07-18 03:52:17,917 comm.communication             INFO       <840.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:17,917 sats.satellite.Scanner-1       INFO       <840.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:17,920 gym                            INFO       <840.00> Step reward: 0.0
2026-07-18 03:52:17,920 gym                            INFO       <840.00> === STARTING STEP ===
2026-07-18 03:52:17,921 sats.satellite.Scanner-1       INFO       <840.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:17,922 sats.satellite.Scanner-1       INFO       <840.00> Scanner-1: setting timed terminal event at 1020.0
2026-07-18 03:52:17,935 sats.satellite.Scanner-1       INFO       <1020.00> Scanner-1: timed termination at 1020.0 for action_nadir_scan
2026-07-18 03:52:17,935 data.base                      INFO       <1020.00> Total reward: {'Scanner-1': 0.004912280701754385}
2026-07-18 03:52:17,936 comm.communication             INFO       <1020.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:17,936 sats.satellite.Scanner-1       INFO       <1020.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:17,939 gym                            INFO       <1020.00> Step reward: 0.004912280701754385
2026-07-18 03:52:17,939 gym                            INFO       <1020.00> === STARTING STEP ===
2026-07-18 03:52:17,940 sats.satellite.Scanner-1       INFO       <1020.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:17,941 sats.satellite.Scanner-1       INFO       <1020.00> Scanner-1: setting timed terminal event at 1200.0
2026-07-18 03:52:17,953 sats.satellite.Scanner-1       INFO       <1200.00> Scanner-1: timed termination at 1200.0 for action_nadir_scan
2026-07-18 03:52:17,954 data.base                      INFO       <1200.00> Total reward: {'Scanner-1': 0.00631578947368421}
2026-07-18 03:52:17,955 comm.communication             INFO       <1200.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:17,956 sats.satellite.Scanner-1       INFO       <1200.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:17,958 gym                            INFO       <1200.00> Step reward: 0.00631578947368421
2026-07-18 03:52:17,959 gym                            INFO       <1200.00> === STARTING STEP ===
2026-07-18 03:52:17,959 sats.satellite.Scanner-1       INFO       <1200.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:17,960 sats.satellite.Scanner-1       INFO       <1200.00> Scanner-1: setting timed terminal event at 1380.0
2026-07-18 03:52:17,972 sats.satellite.Scanner-1       INFO       <1380.00> Scanner-1: timed termination at 1380.0 for action_nadir_scan
2026-07-18 03:52:17,973 data.base                      INFO       <1380.00> Total reward: {'Scanner-1': 0.00631578947368421}
2026-07-18 03:52:17,974 comm.communication             INFO       <1380.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:17,974 sats.satellite.Scanner-1       INFO       <1380.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:17,977 gym                            INFO       <1380.00> Step reward: 0.00631578947368421
2026-07-18 03:52:17,977 gym                            INFO       <1380.00> === STARTING STEP ===
2026-07-18 03:52:17,978 sats.satellite.Scanner-1       INFO       <1380.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:17,978 sats.satellite.Scanner-1       INFO       <1380.00> Scanner-1: setting timed terminal event at 1500.0
2026-07-18 03:52:17,988 sats.satellite.Scanner-1       INFO       <1500.00> Scanner-1: timed termination at 1500.0 for action_charge
2026-07-18 03:52:17,988 data.base                      INFO       <1500.00> Total reward: {}
2026-07-18 03:52:17,989 comm.communication             INFO       <1500.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:17,990 sats.satellite.Scanner-1       INFO       <1500.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:17,992 gym                            INFO       <1500.00> Step reward: 0.0
2026-07-18 03:52:17,992 gym                            INFO       <1500.00> === STARTING STEP ===
2026-07-18 03:52:17,993 sats.satellite.Scanner-1       INFO       <1500.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:17,993 sats.satellite.Scanner-1       INFO       <1500.00> Scanner-1: setting timed terminal event at 1560.0
2026-07-18 03:52:17,999 sats.satellite.Scanner-1       INFO       <1560.00> Scanner-1: timed termination at 1560.0 for action_desat
2026-07-18 03:52:18,000 data.base                      INFO       <1560.00> Total reward: {}
2026-07-18 03:52:18,000 comm.communication             INFO       <1560.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,001 sats.satellite.Scanner-1       INFO       <1560.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,004 gym                            INFO       <1560.00> Step reward: 0.0
2026-07-18 03:52:18,005 gym                            INFO       <1560.00> === STARTING STEP ===
2026-07-18 03:52:18,005 sats.satellite.Scanner-1       INFO       <1560.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,006 sats.satellite.Scanner-1       INFO       <1560.00> Scanner-1: setting timed terminal event at 1620.0
2026-07-18 03:52:18,011 sats.satellite.Scanner-1       INFO       <1620.00> Scanner-1: timed termination at 1620.0 for action_downlink
2026-07-18 03:52:18,012 data.base                      INFO       <1620.00> Total reward: {}
2026-07-18 03:52:18,012 comm.communication             INFO       <1620.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,013 sats.satellite.Scanner-1       INFO       <1620.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,016 gym                            INFO       <1620.00> Step reward: 0.0
2026-07-18 03:52:18,016 gym                            INFO       <1620.00> === STARTING STEP ===
2026-07-18 03:52:18,017 sats.satellite.Scanner-1       INFO       <1620.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,017 sats.satellite.Scanner-1       INFO       <1620.00> Scanner-1: setting timed terminal event at 1680.0
2026-07-18 03:52:18,023 sats.satellite.Scanner-1       INFO       <1680.00> Scanner-1: timed termination at 1680.0 for action_desat
2026-07-18 03:52:18,024 data.base                      INFO       <1680.00> Total reward: {}
2026-07-18 03:52:18,024 comm.communication             INFO       <1680.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,025 sats.satellite.Scanner-1       INFO       <1680.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,027 gym                            INFO       <1680.00> Step reward: 0.0
2026-07-18 03:52:18,028 gym                            INFO       <1680.00> === STARTING STEP ===
2026-07-18 03:52:18,029 sats.satellite.Scanner-1       INFO       <1680.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,029 sats.satellite.Scanner-1       INFO       <1680.00> Scanner-1: setting timed terminal event at 1740.0
2026-07-18 03:52:18,034 sats.satellite.Scanner-1       INFO       <1740.00> Scanner-1: timed termination at 1740.0 for action_downlink
2026-07-18 03:52:18,035 data.base                      INFO       <1740.00> Total reward: {}
2026-07-18 03:52:18,036 comm.communication             INFO       <1740.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,036 sats.satellite.Scanner-1       INFO       <1740.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,038 gym                            INFO       <1740.00> Step reward: 0.0
2026-07-18 03:52:18,039 gym                            INFO       <1740.00> === STARTING STEP ===
2026-07-18 03:52:18,040 sats.satellite.Scanner-1       INFO       <1740.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,041 sats.satellite.Scanner-1       INFO       <1740.00> Scanner-1: setting timed terminal event at 1800.0
2026-07-18 03:52:18,046 sats.satellite.Scanner-1       INFO       <1800.00> Scanner-1: timed termination at 1800.0 for action_desat
2026-07-18 03:52:18,047 data.base                      INFO       <1800.00> Total reward: {}
2026-07-18 03:52:18,047 comm.communication             INFO       <1800.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,048 sats.satellite.Scanner-1       INFO       <1800.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,050 gym                            INFO       <1800.00> Step reward: 0.0
2026-07-18 03:52:18,051 gym                            INFO       <1800.00> === STARTING STEP ===
2026-07-18 03:52:18,051 sats.satellite.Scanner-1       INFO       <1800.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,052 sats.satellite.Scanner-1       INFO       <1800.00> Scanner-1: setting timed terminal event at 1860.0
2026-07-18 03:52:18,059 sats.satellite.Scanner-1       INFO       <1860.00> Scanner-1: timed termination at 1860.0 for action_downlink
2026-07-18 03:52:18,060 data.base                      INFO       <1860.00> Total reward: {}
2026-07-18 03:52:18,061 comm.communication             INFO       <1860.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,061 sats.satellite.Scanner-1       INFO       <1860.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,064 gym                            INFO       <1860.00> Step reward: 0.0
2026-07-18 03:52:18,065 gym                            INFO       <1860.00> === STARTING STEP ===
2026-07-18 03:52:18,066 sats.satellite.Scanner-1       INFO       <1860.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:18,066 sats.satellite.Scanner-1       INFO       <1860.00> Scanner-1: setting timed terminal event at 1980.0
2026-07-18 03:52:18,079 sats.satellite.Scanner-1       INFO       <1980.00> Scanner-1: timed termination at 1980.0 for action_charge
2026-07-18 03:52:18,081 data.base                      INFO       <1980.00> Total reward: {}
2026-07-18 03:52:18,082 comm.communication             INFO       <1980.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,083 sats.satellite.Scanner-1       INFO       <1980.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,085 gym                            INFO       <1980.00> Step reward: 0.0
2026-07-18 03:52:18,086 gym                            INFO       <1980.00> === STARTING STEP ===
2026-07-18 03:52:18,087 sats.satellite.Scanner-1       INFO       <1980.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,088 sats.satellite.Scanner-1       INFO       <1980.00> Scanner-1: setting timed terminal event at 2040.0
2026-07-18 03:52:18,093 sats.satellite.Scanner-1       INFO       <2040.00> Scanner-1: timed termination at 2040.0 for action_downlink
2026-07-18 03:52:18,094 data.base                      INFO       <2040.00> Total reward: {}
2026-07-18 03:52:18,094 comm.communication             INFO       <2040.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,095 sats.satellite.Scanner-1       INFO       <2040.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,097 gym                            INFO       <2040.00> Step reward: 0.0
2026-07-18 03:52:18,098 gym                            INFO       <2040.00> === STARTING STEP ===
2026-07-18 03:52:18,098 sats.satellite.Scanner-1       INFO       <2040.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,099 sats.satellite.Scanner-1       INFO       <2040.00> Scanner-1: setting timed terminal event at 2220.0
2026-07-18 03:52:18,113 sats.satellite.Scanner-1       INFO       <2220.00> Scanner-1: timed termination at 2220.0 for action_nadir_scan
2026-07-18 03:52:18,113 data.base                      INFO       <2220.00> Total reward: {'Scanner-1': 0.004666666666666666}
2026-07-18 03:52:18,114 comm.communication             INFO       <2220.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,114 sats.satellite.Scanner-1       INFO       <2220.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,117 gym                            INFO       <2220.00> Step reward: 0.004666666666666666
2026-07-18 03:52:18,117 gym                            INFO       <2220.00> === STARTING STEP ===
2026-07-18 03:52:18,118 sats.satellite.Scanner-1       INFO       <2220.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,118 sats.satellite.Scanner-1       INFO       <2220.00> Scanner-1: setting timed terminal event at 2280.0
2026-07-18 03:52:18,126 sats.satellite.Scanner-1       INFO       <2280.00> Scanner-1: timed termination at 2280.0 for action_desat
2026-07-18 03:52:18,126 data.base                      INFO       <2280.00> Total reward: {}
2026-07-18 03:52:18,127 comm.communication             INFO       <2280.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,127 sats.satellite.Scanner-1       INFO       <2280.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,130 gym                            INFO       <2280.00> Step reward: 0.0
2026-07-18 03:52:18,131 gym                            INFO       <2280.00> === STARTING STEP ===
2026-07-18 03:52:18,131 sats.satellite.Scanner-1       INFO       <2280.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,132 sats.satellite.Scanner-1       INFO       <2280.00> Scanner-1: setting timed terminal event at 2460.0
2026-07-18 03:52:18,146 sats.satellite.Scanner-1       INFO       <2460.00> Scanner-1: timed termination at 2460.0 for action_nadir_scan
2026-07-18 03:52:18,146 data.base                      INFO       <2460.00> Total reward: {'Scanner-1': 0.0048070175438596485}
2026-07-18 03:52:18,147 comm.communication             INFO       <2460.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,148 sats.satellite.Scanner-1       INFO       <2460.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,150 gym                            INFO       <2460.00> Step reward: 0.0048070175438596485
2026-07-18 03:52:18,150 gym                            INFO       <2460.00> === STARTING STEP ===
2026-07-18 03:52:18,151 sats.satellite.Scanner-1       INFO       <2460.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,151 sats.satellite.Scanner-1       INFO       <2460.00> Scanner-1: setting timed terminal event at 2520.0
2026-07-18 03:52:18,157 sats.satellite.Scanner-1       INFO       <2520.00> Scanner-1: timed termination at 2520.0 for action_downlink
2026-07-18 03:52:18,158 data.base                      INFO       <2520.00> Total reward: {}
2026-07-18 03:52:18,158 comm.communication             INFO       <2520.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,159 sats.satellite.Scanner-1       INFO       <2520.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,161 gym                            INFO       <2520.00> Step reward: 0.0
2026-07-18 03:52:18,162 gym                            INFO       <2520.00> === STARTING STEP ===
2026-07-18 03:52:18,162 sats.satellite.Scanner-1       INFO       <2520.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,163 sats.satellite.Scanner-1       INFO       <2520.00> Scanner-1: setting timed terminal event at 2700.0
2026-07-18 03:52:18,176 sats.satellite.Scanner-1       INFO       <2700.00> Scanner-1: timed termination at 2700.0 for action_nadir_scan
2026-07-18 03:52:18,176 data.base                      INFO       <2700.00> Total reward: {'Scanner-1': 0.004701754385964912}
2026-07-18 03:52:18,177 comm.communication             INFO       <2700.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,178 sats.satellite.Scanner-1       INFO       <2700.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,180 gym                            INFO       <2700.00> Step reward: 0.004701754385964912
2026-07-18 03:52:18,180 gym                            INFO       <2700.00> === STARTING STEP ===
2026-07-18 03:52:18,181 sats.satellite.Scanner-1       INFO       <2700.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:18,181 sats.satellite.Scanner-1       INFO       <2700.00> Scanner-1: setting timed terminal event at 2820.0
2026-07-18 03:52:18,191 sats.satellite.Scanner-1       INFO       <2820.00> Scanner-1: timed termination at 2820.0 for action_charge
2026-07-18 03:52:18,192 data.base                      INFO       <2820.00> Total reward: {}
2026-07-18 03:52:18,192 comm.communication             INFO       <2820.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,193 sats.satellite.Scanner-1       INFO       <2820.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,196 gym                            INFO       <2820.00> Step reward: 0.0
2026-07-18 03:52:18,196 gym                            INFO       <2820.00> === STARTING STEP ===
2026-07-18 03:52:18,197 sats.satellite.Scanner-1       INFO       <2820.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,197 sats.satellite.Scanner-1       INFO       <2820.00> Scanner-1: setting timed terminal event at 2880.0
2026-07-18 03:52:18,203 sats.satellite.Scanner-1       INFO       <2880.00> Scanner-1: timed termination at 2880.0 for action_desat
2026-07-18 03:52:18,203 data.base                      INFO       <2880.00> Total reward: {}
2026-07-18 03:52:18,204 comm.communication             INFO       <2880.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,205 sats.satellite.Scanner-1       INFO       <2880.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,207 gym                            INFO       <2880.00> Step reward: 0.0
2026-07-18 03:52:18,208 gym                            INFO       <2880.00> === STARTING STEP ===
2026-07-18 03:52:18,208 sats.satellite.Scanner-1       INFO       <2880.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,209 sats.satellite.Scanner-1       INFO       <2880.00> Scanner-1: setting timed terminal event at 2940.0
2026-07-18 03:52:18,214 sats.satellite.Scanner-1       INFO       <2940.00> Scanner-1: timed termination at 2940.0 for action_desat
2026-07-18 03:52:18,215 data.base                      INFO       <2940.00> Total reward: {}
2026-07-18 03:52:18,215 comm.communication             INFO       <2940.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,216 sats.satellite.Scanner-1       INFO       <2940.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,218 gym                            INFO       <2940.00> Step reward: 0.0
2026-07-18 03:52:18,219 gym                            INFO       <2940.00> === STARTING STEP ===
2026-07-18 03:52:18,219 sats.satellite.Scanner-1       INFO       <2940.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,220 sats.satellite.Scanner-1       INFO       <2940.00> Scanner-1: setting timed terminal event at 3120.0
2026-07-18 03:52:18,233 sats.satellite.Scanner-1       INFO       <3120.00> Scanner-1: timed termination at 3120.0 for action_nadir_scan
2026-07-18 03:52:18,233 data.base                      INFO       <3120.00> Total reward: {'Scanner-1': 0.0048070175438596485}
2026-07-18 03:52:18,234 comm.communication             INFO       <3120.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,234 sats.satellite.Scanner-1       INFO       <3120.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,237 gym                            INFO       <3120.00> Step reward: 0.0048070175438596485
2026-07-18 03:52:18,237 gym                            INFO       <3120.00> === STARTING STEP ===
2026-07-18 03:52:18,238 sats.satellite.Scanner-1       INFO       <3120.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:18,238 sats.satellite.Scanner-1       INFO       <3120.00> Scanner-1: setting timed terminal event at 3240.0
2026-07-18 03:52:18,248 sats.satellite.Scanner-1       INFO       <3240.00> Scanner-1: timed termination at 3240.0 for action_charge
2026-07-18 03:52:18,248 data.base                      INFO       <3240.00> Total reward: {}
2026-07-18 03:52:18,249 comm.communication             INFO       <3240.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,249 sats.satellite.Scanner-1       INFO       <3240.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,252 gym                            INFO       <3240.00> Step reward: 0.0
2026-07-18 03:52:18,252 gym                            INFO       <3240.00> === STARTING STEP ===
2026-07-18 03:52:18,253 sats.satellite.Scanner-1       INFO       <3240.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,253 sats.satellite.Scanner-1       INFO       <3240.00> Scanner-1: setting timed terminal event at 3300.0
2026-07-18 03:52:18,259 sats.satellite.Scanner-1       INFO       <3300.00> Scanner-1: timed termination at 3300.0 for action_desat
2026-07-18 03:52:18,260 data.base                      INFO       <3300.00> Total reward: {}
2026-07-18 03:52:18,260 comm.communication             INFO       <3300.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,261 sats.satellite.Scanner-1       INFO       <3300.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,263 gym                            INFO       <3300.00> Step reward: 0.0
2026-07-18 03:52:18,263 gym                            INFO       <3300.00> === STARTING STEP ===
2026-07-18 03:52:18,264 sats.satellite.Scanner-1       INFO       <3300.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,264 sats.satellite.Scanner-1       INFO       <3300.00> Scanner-1: setting timed terminal event at 3480.0
2026-07-18 03:52:18,277 sats.satellite.Scanner-1       INFO       <3480.00> Scanner-1: timed termination at 3480.0 for action_nadir_scan
2026-07-18 03:52:18,277 data.base                      INFO       <3480.00> Total reward: {'Scanner-1': 0.0048070175438596485}
2026-07-18 03:52:18,278 comm.communication             INFO       <3480.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,278 sats.satellite.Scanner-1       INFO       <3480.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,280 gym                            INFO       <3480.00> Step reward: 0.0048070175438596485
2026-07-18 03:52:18,281 gym                            INFO       <3480.00> === STARTING STEP ===
2026-07-18 03:52:18,281 sats.satellite.Scanner-1       INFO       <3480.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,282 sats.satellite.Scanner-1       INFO       <3480.00> Scanner-1: setting timed terminal event at 3660.0
2026-07-18 03:52:18,294 sats.satellite.Scanner-1       INFO       <3660.00> Scanner-1: timed termination at 3660.0 for action_nadir_scan
2026-07-18 03:52:18,295 data.base                      INFO       <3660.00> Total reward: {'Scanner-1': 0.00631578947368421}
2026-07-18 03:52:18,295 comm.communication             INFO       <3660.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,296 sats.satellite.Scanner-1       INFO       <3660.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,298 gym                            INFO       <3660.00> Step reward: 0.00631578947368421
2026-07-18 03:52:18,299 gym                            INFO       <3660.00> === STARTING STEP ===
2026-07-18 03:52:18,299 sats.satellite.Scanner-1       INFO       <3660.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,300 sats.satellite.Scanner-1       INFO       <3660.00> Scanner-1: setting timed terminal event at 3720.0
2026-07-18 03:52:18,305 sats.satellite.Scanner-1       INFO       <3720.00> Scanner-1: timed termination at 3720.0 for action_downlink
2026-07-18 03:52:18,305 data.base                      INFO       <3720.00> Total reward: {}
2026-07-18 03:52:18,306 comm.communication             INFO       <3720.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,306 sats.satellite.Scanner-1       INFO       <3720.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,309 gym                            INFO       <3720.00> Step reward: 0.0
2026-07-18 03:52:18,309 gym                            INFO       <3720.00> === STARTING STEP ===
2026-07-18 03:52:18,310 sats.satellite.Scanner-1       INFO       <3720.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:18,310 sats.satellite.Scanner-1       INFO       <3720.00> Scanner-1: setting timed terminal event at 3840.0
2026-07-18 03:52:18,319 sats.satellite.Scanner-1       INFO       <3840.00> Scanner-1: timed termination at 3840.0 for action_charge
2026-07-18 03:52:18,320 data.base                      INFO       <3840.00> Total reward: {}
2026-07-18 03:52:18,320 comm.communication             INFO       <3840.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,321 sats.satellite.Scanner-1       INFO       <3840.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,323 gym                            INFO       <3840.00> Step reward: 0.0
2026-07-18 03:52:18,324 gym                            INFO       <3840.00> === STARTING STEP ===
2026-07-18 03:52:18,325 sats.satellite.Scanner-1       INFO       <3840.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,325 sats.satellite.Scanner-1       INFO       <3840.00> Scanner-1: setting timed terminal event at 3900.0
2026-07-18 03:52:18,330 sats.satellite.Scanner-1       INFO       <3900.00> Scanner-1: timed termination at 3900.0 for action_desat
2026-07-18 03:52:18,331 data.base                      INFO       <3900.00> Total reward: {}
2026-07-18 03:52:18,332 comm.communication             INFO       <3900.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,332 sats.satellite.Scanner-1       INFO       <3900.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,334 gym                            INFO       <3900.00> Step reward: 0.0
2026-07-18 03:52:18,335 gym                            INFO       <3900.00> === STARTING STEP ===
2026-07-18 03:52:18,335 sats.satellite.Scanner-1       INFO       <3900.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:18,336 sats.satellite.Scanner-1       INFO       <3900.00> Scanner-1: setting timed terminal event at 4020.0
2026-07-18 03:52:18,344 sats.satellite.Scanner-1       INFO       <4020.00> Scanner-1: timed termination at 4020.0 for action_charge
2026-07-18 03:52:18,345 data.base                      INFO       <4020.00> Total reward: {}
2026-07-18 03:52:18,346 comm.communication             INFO       <4020.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,346 sats.satellite.Scanner-1       INFO       <4020.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,348 gym                            INFO       <4020.00> Step reward: 0.0
2026-07-18 03:52:18,349 gym                            INFO       <4020.00> === STARTING STEP ===
2026-07-18 03:52:18,350 sats.satellite.Scanner-1       INFO       <4020.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,350 sats.satellite.Scanner-1       INFO       <4020.00> Scanner-1: setting timed terminal event at 4080.0
2026-07-18 03:52:18,356 sats.satellite.Scanner-1       INFO       <4080.00> Scanner-1: timed termination at 4080.0 for action_downlink
2026-07-18 03:52:18,356 data.base                      INFO       <4080.00> Total reward: {}
2026-07-18 03:52:18,357 comm.communication             INFO       <4080.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,357 sats.satellite.Scanner-1       INFO       <4080.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,359 gym                            INFO       <4080.00> Step reward: 0.0
2026-07-18 03:52:18,360 gym                            INFO       <4080.00> === STARTING STEP ===
2026-07-18 03:52:18,360 sats.satellite.Scanner-1       INFO       <4080.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,361 sats.satellite.Scanner-1       INFO       <4080.00> Scanner-1: setting timed terminal event at 4260.0
2026-07-18 03:52:18,373 sats.satellite.Scanner-1       INFO       <4260.00> Scanner-1: timed termination at 4260.0 for action_nadir_scan
2026-07-18 03:52:18,374 data.base                      INFO       <4260.00> Total reward: {'Scanner-1': 0.00487719298245614}
2026-07-18 03:52:18,374 comm.communication             INFO       <4260.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,375 sats.satellite.Scanner-1       INFO       <4260.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,377 gym                            INFO       <4260.00> Step reward: 0.00487719298245614
2026-07-18 03:52:18,378 gym                            INFO       <4260.00> === STARTING STEP ===
2026-07-18 03:52:18,378 sats.satellite.Scanner-1       INFO       <4260.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:18,379 sats.satellite.Scanner-1       INFO       <4260.00> Scanner-1: setting timed terminal event at 4380.0
2026-07-18 03:52:18,388 sats.satellite.Scanner-1       INFO       <4380.00> Scanner-1: timed termination at 4380.0 for action_charge
2026-07-18 03:52:18,388 data.base                      INFO       <4380.00> Total reward: {}
2026-07-18 03:52:18,389 comm.communication             INFO       <4380.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,389 sats.satellite.Scanner-1       INFO       <4380.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,392 gym                            INFO       <4380.00> Step reward: 0.0
2026-07-18 03:52:18,392 gym                            INFO       <4380.00> === STARTING STEP ===
2026-07-18 03:52:18,393 sats.satellite.Scanner-1       INFO       <4380.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,393 sats.satellite.Scanner-1       INFO       <4380.00> Scanner-1: setting timed terminal event at 4560.0
2026-07-18 03:52:18,405 sats.satellite.Scanner-1       INFO       <4560.00> Scanner-1: timed termination at 4560.0 for action_nadir_scan
2026-07-18 03:52:18,406 data.base                      INFO       <4560.00> Total reward: {'Scanner-1': 0.0049824561403508764}
2026-07-18 03:52:18,407 comm.communication             INFO       <4560.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,407 sats.satellite.Scanner-1       INFO       <4560.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,410 gym                            INFO       <4560.00> Step reward: 0.0049824561403508764
2026-07-18 03:52:18,410 gym                            INFO       <4560.00> === STARTING STEP ===
2026-07-18 03:52:18,411 sats.satellite.Scanner-1       INFO       <4560.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,411 sats.satellite.Scanner-1       INFO       <4560.00> Scanner-1: setting timed terminal event at 4740.0
2026-07-18 03:52:18,424 sats.satellite.Scanner-1       INFO       <4740.00> Scanner-1: timed termination at 4740.0 for action_nadir_scan
2026-07-18 03:52:18,425 data.base                      INFO       <4740.00> Total reward: {'Scanner-1': 0.00631578947368421}
2026-07-18 03:52:18,425 comm.communication             INFO       <4740.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,426 sats.satellite.Scanner-1       INFO       <4740.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,428 gym                            INFO       <4740.00> Step reward: 0.00631578947368421
2026-07-18 03:52:18,429 gym                            INFO       <4740.00> === STARTING STEP ===
2026-07-18 03:52:18,429 sats.satellite.Scanner-1       INFO       <4740.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,431 sats.satellite.Scanner-1       INFO       <4740.00> Scanner-1: setting timed terminal event at 4800.0
2026-07-18 03:52:18,436 sats.satellite.Scanner-1       INFO       <4800.00> Scanner-1: timed termination at 4800.0 for action_downlink
2026-07-18 03:52:18,436 data.base                      INFO       <4800.00> Total reward: {}
2026-07-18 03:52:18,437 comm.communication             INFO       <4800.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,437 sats.satellite.Scanner-1       INFO       <4800.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,439 gym                            INFO       <4800.00> Step reward: 0.0
2026-07-18 03:52:18,440 gym                            INFO       <4800.00> === STARTING STEP ===
2026-07-18 03:52:18,441 sats.satellite.Scanner-1       INFO       <4800.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,442 sats.satellite.Scanner-1       INFO       <4800.00> Scanner-1: setting timed terminal event at 4860.0
2026-07-18 03:52:18,447 sats.satellite.Scanner-1       INFO       <4860.00> Scanner-1: timed termination at 4860.0 for action_downlink
2026-07-18 03:52:18,447 data.base                      INFO       <4860.00> Total reward: {}
2026-07-18 03:52:18,448 comm.communication             INFO       <4860.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,448 sats.satellite.Scanner-1       INFO       <4860.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,451 gym                            INFO       <4860.00> Step reward: 0.0
2026-07-18 03:52:18,451 gym                            INFO       <4860.00> === STARTING STEP ===
2026-07-18 03:52:18,451 sats.satellite.Scanner-1       INFO       <4860.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,452 sats.satellite.Scanner-1       INFO       <4860.00> Scanner-1: setting timed terminal event at 4920.0
2026-07-18 03:52:18,457 sats.satellite.Scanner-1       INFO       <4920.00> Scanner-1: timed termination at 4920.0 for action_downlink
2026-07-18 03:52:18,458 data.base                      INFO       <4920.00> Total reward: {}
2026-07-18 03:52:18,458 comm.communication             INFO       <4920.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,459 sats.satellite.Scanner-1       INFO       <4920.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,461 gym                            INFO       <4920.00> Step reward: 0.0
2026-07-18 03:52:18,461 gym                            INFO       <4920.00> === STARTING STEP ===
2026-07-18 03:52:18,462 sats.satellite.Scanner-1       INFO       <4920.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,462 sats.satellite.Scanner-1       INFO       <4920.00> Scanner-1: setting timed terminal event at 5100.0
2026-07-18 03:52:18,475 sats.satellite.Scanner-1       INFO       <5100.00> Scanner-1: timed termination at 5100.0 for action_nadir_scan
2026-07-18 03:52:18,476 data.base                      INFO       <5100.00> Total reward: {'Scanner-1': 0.00487719298245614}
2026-07-18 03:52:18,477 comm.communication             INFO       <5100.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,477 sats.satellite.Scanner-1       INFO       <5100.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,480 gym                            INFO       <5100.00> Step reward: 0.00487719298245614
2026-07-18 03:52:18,480 gym                            INFO       <5100.00> === STARTING STEP ===
2026-07-18 03:52:18,481 sats.satellite.Scanner-1       INFO       <5100.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:18,482 sats.satellite.Scanner-1       INFO       <5100.00> Scanner-1: setting timed terminal event at 5220.0
2026-07-18 03:52:18,490 sats.satellite.Scanner-1       INFO       <5220.00> Scanner-1: timed termination at 5220.0 for action_charge
2026-07-18 03:52:18,491 data.base                      INFO       <5220.00> Total reward: {}
2026-07-18 03:52:18,492 comm.communication             INFO       <5220.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,492 sats.satellite.Scanner-1       INFO       <5220.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,494 gym                            INFO       <5220.00> Step reward: 0.0
2026-07-18 03:52:18,495 gym                            INFO       <5220.00> === STARTING STEP ===
2026-07-18 03:52:18,495 sats.satellite.Scanner-1       INFO       <5220.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,496 sats.satellite.Scanner-1       INFO       <5220.00> Scanner-1: setting timed terminal event at 5400.0
2026-07-18 03:52:18,509 sats.satellite.Scanner-1       INFO       <5400.00> Scanner-1: timed termination at 5400.0 for action_nadir_scan
2026-07-18 03:52:18,510 data.base                      INFO       <5400.00> Total reward: {'Scanner-1': 0.004736842105263157}
2026-07-18 03:52:18,510 comm.communication             INFO       <5400.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,511 sats.satellite.Scanner-1       INFO       <5400.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,513 gym                            INFO       <5400.00> Step reward: 0.004736842105263157
2026-07-18 03:52:18,514 gym                            INFO       <5400.00> === STARTING STEP ===
2026-07-18 03:52:18,514 sats.satellite.Scanner-1       INFO       <5400.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,515 sats.satellite.Scanner-1       INFO       <5400.00> Scanner-1: setting timed terminal event at 5460.0
2026-07-18 03:52:18,520 sats.satellite.Scanner-1       INFO       <5460.00> Scanner-1: timed termination at 5460.0 for action_desat
2026-07-18 03:52:18,521 data.base                      INFO       <5460.00> Total reward: {}
2026-07-18 03:52:18,522 comm.communication             INFO       <5460.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,522 sats.satellite.Scanner-1       INFO       <5460.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,524 gym                            INFO       <5460.00> Step reward: 0.0
2026-07-18 03:52:18,525 gym                            INFO       <5460.00> === STARTING STEP ===
2026-07-18 03:52:18,525 sats.satellite.Scanner-1       INFO       <5460.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,526 sats.satellite.Scanner-1       INFO       <5460.00> Scanner-1: setting timed terminal event at 5520.0
2026-07-18 03:52:18,531 sats.satellite.Scanner-1       INFO       <5520.00> Scanner-1: timed termination at 5520.0 for action_downlink
2026-07-18 03:52:18,532 data.base                      INFO       <5520.00> Total reward: {}
2026-07-18 03:52:18,533 comm.communication             INFO       <5520.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,533 sats.satellite.Scanner-1       INFO       <5520.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,535 gym                            INFO       <5520.00> Step reward: 0.0
2026-07-18 03:52:18,536 gym                            INFO       <5520.00> === STARTING STEP ===
2026-07-18 03:52:18,536 sats.satellite.Scanner-1       INFO       <5520.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,537 sats.satellite.Scanner-1       INFO       <5520.00> Scanner-1: setting timed terminal event at 5580.0
2026-07-18 03:52:18,543 sats.satellite.Scanner-1       INFO       <5580.00> Scanner-1: timed termination at 5580.0 for action_desat
2026-07-18 03:52:18,543 data.base                      INFO       <5580.00> Total reward: {}
2026-07-18 03:52:18,544 comm.communication             INFO       <5580.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,544 sats.satellite.Scanner-1       INFO       <5580.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,547 gym                            INFO       <5580.00> Step reward: 0.0
2026-07-18 03:52:18,548 gym                            INFO       <5580.00> === STARTING STEP ===
2026-07-18 03:52:18,548 sats.satellite.Scanner-1       INFO       <5580.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,548 sats.satellite.Scanner-1       INFO       <5580.00> Scanner-1: setting timed terminal event at 5640.0
2026-07-18 03:52:18,554 sats.satellite.Scanner-1       INFO       <5640.00> Scanner-1: timed termination at 5640.0 for action_downlink
2026-07-18 03:52:18,555 data.base                      INFO       <5640.00> Total reward: {}
2026-07-18 03:52:18,555 comm.communication             INFO       <5640.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,556 sats.satellite.Scanner-1       INFO       <5640.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,558 gym                            INFO       <5640.00> Step reward: 0.0
2026-07-18 03:52:18,559 gym                            INFO       <5640.00> === STARTING STEP ===
2026-07-18 03:52:18,560 sats.satellite.Scanner-1       INFO       <5640.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,560 sats.satellite.Scanner-1       INFO       <5640.00> Scanner-1: setting timed terminal event at 5700.0
2026-07-18 03:52:18,565 sats.satellite.Scanner-1       INFO       <5700.00> Scanner-1: timed termination at 5700.0 for action_downlink
2026-07-18 03:52:18,566 data.base                      INFO       <5700.00> Total reward: {}
2026-07-18 03:52:18,567 comm.communication             INFO       <5700.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,567 sats.satellite.Scanner-1       INFO       <5700.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,569 gym                            INFO       <5700.00> Step reward: 0.0
2026-07-18 03:52:18,570 gym                            INFO       <5700.00> === STARTING STEP ===
2026-07-18 03:52:18,570 sats.satellite.Scanner-1       INFO       <5700.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,571 sats.satellite.Scanner-1       INFO       <5700.00> Scanner-1: setting timed terminal event at 5880.0
2026-07-18 03:52:18,584 sats.satellite.Scanner-1       INFO       <5880.00> Scanner-1: timed termination at 5880.0 for action_nadir_scan
2026-07-18 03:52:18,585 data.base                      INFO       <5880.00> Total reward: {'Scanner-1': 0.004912280701754385}
2026-07-18 03:52:18,586 comm.communication             INFO       <5880.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,586 sats.satellite.Scanner-1       INFO       <5880.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,588 gym                            INFO       <5880.00> Step reward: 0.004912280701754385
2026-07-18 03:52:18,589 gym                            INFO       <5880.00> === STARTING STEP ===
2026-07-18 03:52:18,589 sats.satellite.Scanner-1       INFO       <5880.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,590 sats.satellite.Scanner-1       INFO       <5880.00> Scanner-1: setting timed terminal event at 5940.0
2026-07-18 03:52:18,596 sats.satellite.Scanner-1       INFO       <5940.00> Scanner-1: timed termination at 5940.0 for action_desat
2026-07-18 03:52:18,596 data.base                      INFO       <5940.00> Total reward: {}
2026-07-18 03:52:18,597 comm.communication             INFO       <5940.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,598 sats.satellite.Scanner-1       INFO       <5940.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,600 gym                            INFO       <5940.00> Step reward: 0.0
2026-07-18 03:52:18,601 gym                            INFO       <5940.00> === STARTING STEP ===
2026-07-18 03:52:18,601 sats.satellite.Scanner-1       INFO       <5940.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,602 sats.satellite.Scanner-1       INFO       <5940.00> Scanner-1: setting timed terminal event at 6000.0
2026-07-18 03:52:18,607 sats.satellite.Scanner-1       INFO       <6000.00> Scanner-1: timed termination at 6000.0 for action_downlink
2026-07-18 03:52:18,608 data.base                      INFO       <6000.00> Total reward: {}
2026-07-18 03:52:18,609 comm.communication             INFO       <6000.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,610 sats.satellite.Scanner-1       INFO       <6000.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,612 gym                            INFO       <6000.00> Step reward: 0.0
2026-07-18 03:52:18,612 gym                            INFO       <6000.00> === STARTING STEP ===
2026-07-18 03:52:18,613 sats.satellite.Scanner-1       INFO       <6000.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,614 sats.satellite.Scanner-1       INFO       <6000.00> Scanner-1: setting timed terminal event at 6180.0
2026-07-18 03:52:18,626 sats.satellite.Scanner-1       INFO       <6180.00> Scanner-1: timed termination at 6180.0 for action_nadir_scan
2026-07-18 03:52:18,627 data.base                      INFO       <6180.00> Total reward: {'Scanner-1': 0.004912280701754385}
2026-07-18 03:52:18,627 comm.communication             INFO       <6180.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,628 sats.satellite.Scanner-1       INFO       <6180.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,629 gym                            INFO       <6180.00> Step reward: 0.004912280701754385
2026-07-18 03:52:18,630 gym                            INFO       <6180.00> === STARTING STEP ===
2026-07-18 03:52:18,630 sats.satellite.Scanner-1       INFO       <6180.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:18,631 sats.satellite.Scanner-1       INFO       <6180.00> Scanner-1: setting timed terminal event at 6300.0
2026-07-18 03:52:18,640 sats.satellite.Scanner-1       INFO       <6300.00> Scanner-1: timed termination at 6300.0 for action_charge
2026-07-18 03:52:18,641 data.base                      INFO       <6300.00> Total reward: {}
2026-07-18 03:52:18,641 comm.communication             INFO       <6300.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,642 sats.satellite.Scanner-1       INFO       <6300.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,644 gym                            INFO       <6300.00> Step reward: 0.0
2026-07-18 03:52:18,644 gym                            INFO       <6300.00> === STARTING STEP ===
2026-07-18 03:52:18,645 sats.satellite.Scanner-1       INFO       <6300.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,645 sats.satellite.Scanner-1       INFO       <6300.00> Scanner-1: setting timed terminal event at 6360.0
2026-07-18 03:52:18,651 sats.satellite.Scanner-1       INFO       <6360.00> Scanner-1: timed termination at 6360.0 for action_downlink
2026-07-18 03:52:18,651 data.base                      INFO       <6360.00> Total reward: {}
2026-07-18 03:52:18,651 comm.communication             INFO       <6360.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,652 sats.satellite.Scanner-1       INFO       <6360.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,654 gym                            INFO       <6360.00> Step reward: 0.0
2026-07-18 03:52:18,654 gym                            INFO       <6360.00> === STARTING STEP ===
2026-07-18 03:52:18,655 sats.satellite.Scanner-1       INFO       <6360.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,656 sats.satellite.Scanner-1       INFO       <6360.00> Scanner-1: setting timed terminal event at 6540.0
2026-07-18 03:52:18,668 sats.satellite.Scanner-1       INFO       <6540.00> Scanner-1: timed termination at 6540.0 for action_nadir_scan
2026-07-18 03:52:18,669 data.base                      INFO       <6540.00> Total reward: {'Scanner-1': 0.004912280701754385}
2026-07-18 03:52:18,670 comm.communication             INFO       <6540.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,670 sats.satellite.Scanner-1       INFO       <6540.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,673 gym                            INFO       <6540.00> Step reward: 0.004912280701754385
2026-07-18 03:52:18,673 gym                            INFO       <6540.00> === STARTING STEP ===
2026-07-18 03:52:18,674 sats.satellite.Scanner-1       INFO       <6540.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,674 sats.satellite.Scanner-1       INFO       <6540.00> Scanner-1: setting timed terminal event at 6600.0
2026-07-18 03:52:18,679 sats.satellite.Scanner-1       INFO       <6600.00> Scanner-1: timed termination at 6600.0 for action_downlink
2026-07-18 03:52:18,680 data.base                      INFO       <6600.00> Total reward: {}
2026-07-18 03:52:18,680 comm.communication             INFO       <6600.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,681 sats.satellite.Scanner-1       INFO       <6600.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,683 gym                            INFO       <6600.00> Step reward: 0.0
2026-07-18 03:52:18,684 gym                            INFO       <6600.00> === STARTING STEP ===
2026-07-18 03:52:18,684 sats.satellite.Scanner-1       INFO       <6600.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,685 sats.satellite.Scanner-1       INFO       <6600.00> Scanner-1: setting timed terminal event at 6660.0
2026-07-18 03:52:18,691 sats.satellite.Scanner-1       INFO       <6660.00> Scanner-1: timed termination at 6660.0 for action_desat
2026-07-18 03:52:18,692 data.base                      INFO       <6660.00> Total reward: {}
2026-07-18 03:52:18,692 comm.communication             INFO       <6660.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,693 sats.satellite.Scanner-1       INFO       <6660.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,695 gym                            INFO       <6660.00> Step reward: 0.0
2026-07-18 03:52:18,695 gym                            INFO       <6660.00> === STARTING STEP ===
2026-07-18 03:52:18,696 sats.satellite.Scanner-1       INFO       <6660.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,696 sats.satellite.Scanner-1       INFO       <6660.00> Scanner-1: setting timed terminal event at 6720.0
2026-07-18 03:52:18,702 sats.satellite.Scanner-1       INFO       <6720.00> Scanner-1: timed termination at 6720.0 for action_desat
2026-07-18 03:52:18,702 data.base                      INFO       <6720.00> Total reward: {}
2026-07-18 03:52:18,703 comm.communication             INFO       <6720.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,704 sats.satellite.Scanner-1       INFO       <6720.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,706 gym                            INFO       <6720.00> Step reward: 0.0
2026-07-18 03:52:18,706 gym                            INFO       <6720.00> === STARTING STEP ===
2026-07-18 03:52:18,708 sats.satellite.Scanner-1       INFO       <6720.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,708 sats.satellite.Scanner-1       INFO       <6720.00> Scanner-1: setting timed terminal event at 6900.0
2026-07-18 03:52:18,721 sats.satellite.Scanner-1       INFO       <6900.00> Scanner-1: timed termination at 6900.0 for action_nadir_scan
2026-07-18 03:52:18,722 data.base                      INFO       <6900.00> Total reward: {'Scanner-1': 0.004912280701754385}
2026-07-18 03:52:18,722 comm.communication             INFO       <6900.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,723 sats.satellite.Scanner-1       INFO       <6900.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,725 gym                            INFO       <6900.00> Step reward: 0.004912280701754385
2026-07-18 03:52:18,725 gym                            INFO       <6900.00> === STARTING STEP ===
2026-07-18 03:52:18,726 sats.satellite.Scanner-1       INFO       <6900.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,726 sats.satellite.Scanner-1       INFO       <6900.00> Scanner-1: setting timed terminal event at 6960.0
2026-07-18 03:52:18,732 sats.satellite.Scanner-1       INFO       <6960.00> Scanner-1: timed termination at 6960.0 for action_desat
2026-07-18 03:52:18,733 data.base                      INFO       <6960.00> Total reward: {}
2026-07-18 03:52:18,733 comm.communication             INFO       <6960.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,734 sats.satellite.Scanner-1       INFO       <6960.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,736 gym                            INFO       <6960.00> Step reward: 0.0
2026-07-18 03:52:18,736 gym                            INFO       <6960.00> === STARTING STEP ===
2026-07-18 03:52:18,737 sats.satellite.Scanner-1       INFO       <6960.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:18,737 sats.satellite.Scanner-1       INFO       <6960.00> Scanner-1: setting timed terminal event at 7080.0
2026-07-18 03:52:18,746 sats.satellite.Scanner-1       INFO       <7080.00> Scanner-1: timed termination at 7080.0 for action_charge
2026-07-18 03:52:18,746 data.base                      INFO       <7080.00> Total reward: {}
2026-07-18 03:52:18,747 comm.communication             INFO       <7080.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,748 sats.satellite.Scanner-1       INFO       <7080.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,750 gym                            INFO       <7080.00> Step reward: 0.0
2026-07-18 03:52:18,750 gym                            INFO       <7080.00> === STARTING STEP ===
2026-07-18 03:52:18,751 sats.satellite.Scanner-1       INFO       <7080.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,751 sats.satellite.Scanner-1       INFO       <7080.00> Scanner-1: setting timed terminal event at 7260.0
2026-07-18 03:52:18,764 sats.satellite.Scanner-1       INFO       <7260.00> Scanner-1: timed termination at 7260.0 for action_nadir_scan
2026-07-18 03:52:18,765 data.base                      INFO       <7260.00> Total reward: {'Scanner-1': 0.005087719298245614}
2026-07-18 03:52:18,765 comm.communication             INFO       <7260.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,766 sats.satellite.Scanner-1       INFO       <7260.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,768 gym                            INFO       <7260.00> Step reward: 0.005087719298245614
2026-07-18 03:52:18,769 gym                            INFO       <7260.00> === STARTING STEP ===
2026-07-18 03:52:18,769 sats.satellite.Scanner-1       INFO       <7260.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,770 sats.satellite.Scanner-1       INFO       <7260.00> Scanner-1: setting timed terminal event at 7320.0
2026-07-18 03:52:18,775 sats.satellite.Scanner-1       INFO       <7320.00> Scanner-1: timed termination at 7320.0 for action_downlink
2026-07-18 03:52:18,776 data.base                      INFO       <7320.00> Total reward: {}
2026-07-18 03:52:18,777 comm.communication             INFO       <7320.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,777 sats.satellite.Scanner-1       INFO       <7320.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,779 gym                            INFO       <7320.00> Step reward: 0.0
2026-07-18 03:52:18,779 gym                            INFO       <7320.00> === STARTING STEP ===
2026-07-18 03:52:18,780 sats.satellite.Scanner-1       INFO       <7320.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:18,780 sats.satellite.Scanner-1       INFO       <7320.00> Scanner-1: setting timed terminal event at 7440.0
2026-07-18 03:52:18,790 sats.satellite.Scanner-1       INFO       <7440.00> Scanner-1: timed termination at 7440.0 for action_charge
2026-07-18 03:52:18,790 data.base                      INFO       <7440.00> Total reward: {}
2026-07-18 03:52:18,791 comm.communication             INFO       <7440.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,792 sats.satellite.Scanner-1       INFO       <7440.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,794 gym                            INFO       <7440.00> Step reward: 0.0
2026-07-18 03:52:18,794 gym                            INFO       <7440.00> === STARTING STEP ===
2026-07-18 03:52:18,795 sats.satellite.Scanner-1       INFO       <7440.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:18,795 sats.satellite.Scanner-1       INFO       <7440.00> Scanner-1: setting timed terminal event at 7560.0
2026-07-18 03:52:18,804 sats.satellite.Scanner-1       INFO       <7560.00> Scanner-1: timed termination at 7560.0 for action_charge
2026-07-18 03:52:18,804 data.base                      INFO       <7560.00> Total reward: {}
2026-07-18 03:52:18,805 comm.communication             INFO       <7560.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,805 sats.satellite.Scanner-1       INFO       <7560.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,808 gym                            INFO       <7560.00> Step reward: 0.0
2026-07-18 03:52:18,808 gym                            INFO       <7560.00> === STARTING STEP ===
2026-07-18 03:52:18,809 sats.satellite.Scanner-1       INFO       <7560.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,809 sats.satellite.Scanner-1       INFO       <7560.00> Scanner-1: setting timed terminal event at 7620.0
2026-07-18 03:52:18,815 sats.satellite.Scanner-1       INFO       <7620.00> Scanner-1: timed termination at 7620.0 for action_desat
2026-07-18 03:52:18,815 data.base                      INFO       <7620.00> Total reward: {}
2026-07-18 03:52:18,816 comm.communication             INFO       <7620.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,817 sats.satellite.Scanner-1       INFO       <7620.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,819 gym                            INFO       <7620.00> Step reward: 0.0
2026-07-18 03:52:18,820 gym                            INFO       <7620.00> === STARTING STEP ===
2026-07-18 03:52:18,820 sats.satellite.Scanner-1       INFO       <7620.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,820 sats.satellite.Scanner-1       INFO       <7620.00> Scanner-1: setting timed terminal event at 7800.0
2026-07-18 03:52:18,833 sats.satellite.Scanner-1       INFO       <7800.00> Scanner-1: timed termination at 7800.0 for action_nadir_scan
2026-07-18 03:52:18,834 data.base                      INFO       <7800.00> Total reward: {'Scanner-1': 0.004912280701754385}
2026-07-18 03:52:18,834 comm.communication             INFO       <7800.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,834 sats.satellite.Scanner-1       INFO       <7800.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,837 gym                            INFO       <7800.00> Step reward: 0.004912280701754385
2026-07-18 03:52:18,837 gym                            INFO       <7800.00> === STARTING STEP ===
2026-07-18 03:52:18,838 sats.satellite.Scanner-1       INFO       <7800.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:18,838 sats.satellite.Scanner-1       INFO       <7800.00> Scanner-1: setting timed terminal event at 7920.0
2026-07-18 03:52:18,847 sats.satellite.Scanner-1       INFO       <7920.00> Scanner-1: timed termination at 7920.0 for action_charge
2026-07-18 03:52:18,847 data.base                      INFO       <7920.00> Total reward: {}
2026-07-18 03:52:18,848 comm.communication             INFO       <7920.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,848 sats.satellite.Scanner-1       INFO       <7920.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,850 gym                            INFO       <7920.00> Step reward: 0.0
2026-07-18 03:52:18,851 gym                            INFO       <7920.00> === STARTING STEP ===
2026-07-18 03:52:18,851 sats.satellite.Scanner-1       INFO       <7920.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,852 sats.satellite.Scanner-1       INFO       <7920.00> Scanner-1: setting timed terminal event at 7980.0
2026-07-18 03:52:18,858 sats.satellite.Scanner-1       INFO       <7980.00> Scanner-1: timed termination at 7980.0 for action_desat
2026-07-18 03:52:18,858 data.base                      INFO       <7980.00> Total reward: {}
2026-07-18 03:52:18,859 comm.communication             INFO       <7980.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,859 sats.satellite.Scanner-1       INFO       <7980.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,861 gym                            INFO       <7980.00> Step reward: 0.0
2026-07-18 03:52:18,862 gym                            INFO       <7980.00> === STARTING STEP ===
2026-07-18 03:52:18,862 sats.satellite.Scanner-1       INFO       <7980.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,863 sats.satellite.Scanner-1       INFO       <7980.00> Scanner-1: setting timed terminal event at 8040.0
2026-07-18 03:52:18,868 sats.satellite.Scanner-1       INFO       <8040.00> Scanner-1: timed termination at 8040.0 for action_desat
2026-07-18 03:52:18,869 data.base                      INFO       <8040.00> Total reward: {}
2026-07-18 03:52:18,870 comm.communication             INFO       <8040.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,871 sats.satellite.Scanner-1       INFO       <8040.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,873 gym                            INFO       <8040.00> Step reward: 0.0
2026-07-18 03:52:18,873 gym                            INFO       <8040.00> === STARTING STEP ===
2026-07-18 03:52:18,874 sats.satellite.Scanner-1       INFO       <8040.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,874 sats.satellite.Scanner-1       INFO       <8040.00> Scanner-1: setting timed terminal event at 8220.0
2026-07-18 03:52:18,887 sats.satellite.Scanner-1       INFO       <8220.00> Scanner-1: timed termination at 8220.0 for action_nadir_scan
2026-07-18 03:52:18,888 data.base                      INFO       <8220.00> Total reward: {'Scanner-1': 0.004912280701754385}
2026-07-18 03:52:18,888 comm.communication             INFO       <8220.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,889 sats.satellite.Scanner-1       INFO       <8220.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,891 gym                            INFO       <8220.00> Step reward: 0.004912280701754385
2026-07-18 03:52:18,892 gym                            INFO       <8220.00> === STARTING STEP ===
2026-07-18 03:52:18,893 sats.satellite.Scanner-1       INFO       <8220.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:18,893 sats.satellite.Scanner-1       INFO       <8220.00> Scanner-1: setting timed terminal event at 8280.0
2026-07-18 03:52:18,898 sats.satellite.Scanner-1       INFO       <8280.00> Scanner-1: timed termination at 8280.0 for action_downlink
2026-07-18 03:52:18,899 data.base                      INFO       <8280.00> Total reward: {}
2026-07-18 03:52:18,900 comm.communication             INFO       <8280.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,900 sats.satellite.Scanner-1       INFO       <8280.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,902 gym                            INFO       <8280.00> Step reward: 0.0
2026-07-18 03:52:18,903 gym                            INFO       <8280.00> === STARTING STEP ===
2026-07-18 03:52:18,903 sats.satellite.Scanner-1       INFO       <8280.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:18,904 sats.satellite.Scanner-1       INFO       <8280.00> Scanner-1: setting timed terminal event at 8460.0
2026-07-18 03:52:18,917 sats.satellite.Scanner-1       INFO       <8460.00> Scanner-1: timed termination at 8460.0 for action_nadir_scan
2026-07-18 03:52:18,917 data.base                      INFO       <8460.00> Total reward: {'Scanner-1': 0.00487719298245614}
2026-07-18 03:52:18,918 comm.communication             INFO       <8460.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,919 sats.satellite.Scanner-1       INFO       <8460.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,921 gym                            INFO       <8460.00> Step reward: 0.00487719298245614
2026-07-18 03:52:18,922 gym                            INFO       <8460.00> === STARTING STEP ===
2026-07-18 03:52:18,922 sats.satellite.Scanner-1       INFO       <8460.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,923 sats.satellite.Scanner-1       INFO       <8460.00> Scanner-1: setting timed terminal event at 8520.0
2026-07-18 03:52:18,928 sats.satellite.Scanner-1       INFO       <8520.00> Scanner-1: timed termination at 8520.0 for action_desat
2026-07-18 03:52:18,928 data.base                      INFO       <8520.00> Total reward: {}
2026-07-18 03:52:18,929 comm.communication             INFO       <8520.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,929 sats.satellite.Scanner-1       INFO       <8520.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,931 gym                            INFO       <8520.00> Step reward: 0.0
2026-07-18 03:52:18,932 gym                            INFO       <8520.00> === STARTING STEP ===
2026-07-18 03:52:18,932 sats.satellite.Scanner-1       INFO       <8520.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,933 sats.satellite.Scanner-1       INFO       <8520.00> Scanner-1: setting timed terminal event at 8580.0
2026-07-18 03:52:18,938 sats.satellite.Scanner-1       INFO       <8580.00> Scanner-1: timed termination at 8580.0 for action_desat
2026-07-18 03:52:18,939 data.base                      INFO       <8580.00> Total reward: {}
2026-07-18 03:52:18,939 comm.communication             INFO       <8580.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,940 sats.satellite.Scanner-1       INFO       <8580.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,942 gym                            INFO       <8580.00> Step reward: 0.0
2026-07-18 03:52:18,943 gym                            INFO       <8580.00> === STARTING STEP ===
2026-07-18 03:52:18,943 sats.satellite.Scanner-1       INFO       <8580.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:18,944 sats.satellite.Scanner-1       INFO       <8580.00> Scanner-1: setting timed terminal event at 8700.0
2026-07-18 03:52:18,953 sats.satellite.Scanner-1       INFO       <8700.00> Scanner-1: timed termination at 8700.0 for action_charge
2026-07-18 03:52:18,953 data.base                      INFO       <8700.00> Total reward: {}
2026-07-18 03:52:18,954 comm.communication             INFO       <8700.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,954 sats.satellite.Scanner-1       INFO       <8700.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,956 gym                            INFO       <8700.00> Step reward: 0.0
2026-07-18 03:52:18,957 gym                            INFO       <8700.00> === STARTING STEP ===
2026-07-18 03:52:18,957 sats.satellite.Scanner-1       INFO       <8700.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:18,958 sats.satellite.Scanner-1       INFO       <8700.00> Scanner-1: setting timed terminal event at 8820.0
2026-07-18 03:52:18,966 sats.satellite.Scanner-1       INFO       <8820.00> Scanner-1: timed termination at 8820.0 for action_charge
2026-07-18 03:52:18,967 data.base                      INFO       <8820.00> Total reward: {}
2026-07-18 03:52:18,967 comm.communication             INFO       <8820.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,968 sats.satellite.Scanner-1       INFO       <8820.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,970 gym                            INFO       <8820.00> Step reward: 0.0
2026-07-18 03:52:18,970 gym                            INFO       <8820.00> === STARTING STEP ===
2026-07-18 03:52:18,971 sats.satellite.Scanner-1       INFO       <8820.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,972 sats.satellite.Scanner-1       INFO       <8820.00> Scanner-1: setting timed terminal event at 8880.0
2026-07-18 03:52:18,978 sats.satellite.Scanner-1       INFO       <8880.00> Scanner-1: timed termination at 8880.0 for action_desat
2026-07-18 03:52:18,978 data.base                      INFO       <8880.00> Total reward: {}
2026-07-18 03:52:18,979 comm.communication             INFO       <8880.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,980 sats.satellite.Scanner-1       INFO       <8880.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,982 gym                            INFO       <8880.00> Step reward: 0.0
2026-07-18 03:52:18,982 gym                            INFO       <8880.00> === STARTING STEP ===
2026-07-18 03:52:18,983 sats.satellite.Scanner-1       INFO       <8880.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,984 sats.satellite.Scanner-1       INFO       <8880.00> Scanner-1: setting timed terminal event at 8940.0
2026-07-18 03:52:18,989 sats.satellite.Scanner-1       INFO       <8940.00> Scanner-1: timed termination at 8940.0 for action_desat
2026-07-18 03:52:18,990 data.base                      INFO       <8940.00> Total reward: {}
2026-07-18 03:52:18,990 comm.communication             INFO       <8940.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:18,991 sats.satellite.Scanner-1       INFO       <8940.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:18,993 gym                            INFO       <8940.00> Step reward: 0.0
2026-07-18 03:52:18,994 gym                            INFO       <8940.00> === STARTING STEP ===
2026-07-18 03:52:18,994 sats.satellite.Scanner-1       INFO       <8940.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:18,995 sats.satellite.Scanner-1       INFO       <8940.00> Scanner-1: setting timed terminal event at 9000.0
2026-07-18 03:52:19,000 sats.satellite.Scanner-1       INFO       <9000.00> Scanner-1: timed termination at 9000.0 for action_desat
2026-07-18 03:52:19,001 data.base                      INFO       <9000.00> Total reward: {}
2026-07-18 03:52:19,001 comm.communication             INFO       <9000.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,002 sats.satellite.Scanner-1       INFO       <9000.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,004 gym                            INFO       <9000.00> Step reward: 0.0
2026-07-18 03:52:19,005 gym                            INFO       <9000.00> === STARTING STEP ===
2026-07-18 03:52:19,006 sats.satellite.Scanner-1       INFO       <9000.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:19,006 sats.satellite.Scanner-1       INFO       <9000.00> Scanner-1: setting timed terminal event at 9060.0
2026-07-18 03:52:19,011 sats.satellite.Scanner-1       INFO       <9060.00> Scanner-1: timed termination at 9060.0 for action_downlink
2026-07-18 03:52:19,012 data.base                      INFO       <9060.00> Total reward: {}
2026-07-18 03:52:19,013 comm.communication             INFO       <9060.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,013 sats.satellite.Scanner-1       INFO       <9060.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,015 gym                            INFO       <9060.00> Step reward: 0.0
2026-07-18 03:52:19,016 gym                            INFO       <9060.00> === STARTING STEP ===
2026-07-18 03:52:19,016 sats.satellite.Scanner-1       INFO       <9060.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:19,017 sats.satellite.Scanner-1       INFO       <9060.00> Scanner-1: setting timed terminal event at 9240.0
2026-07-18 03:52:19,029 sats.satellite.Scanner-1       INFO       <9240.00> Scanner-1: timed termination at 9240.0 for action_nadir_scan
2026-07-18 03:52:19,030 data.base                      INFO       <9240.00> Total reward: {'Scanner-1': 0.004912280701754385}
2026-07-18 03:52:19,031 comm.communication             INFO       <9240.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,032 sats.satellite.Scanner-1       INFO       <9240.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,034 gym                            INFO       <9240.00> Step reward: 0.004912280701754385
2026-07-18 03:52:19,035 gym                            INFO       <9240.00> === STARTING STEP ===
2026-07-18 03:52:19,036 sats.satellite.Scanner-1       INFO       <9240.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:19,036 sats.satellite.Scanner-1       INFO       <9240.00> Scanner-1: setting timed terminal event at 9300.0
2026-07-18 03:52:19,041 sats.satellite.Scanner-1       INFO       <9300.00> Scanner-1: timed termination at 9300.0 for action_downlink
2026-07-18 03:52:19,042 data.base                      INFO       <9300.00> Total reward: {}
2026-07-18 03:52:19,043 comm.communication             INFO       <9300.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,043 sats.satellite.Scanner-1       INFO       <9300.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,045 gym                            INFO       <9300.00> Step reward: 0.0
2026-07-18 03:52:19,046 gym                            INFO       <9300.00> === STARTING STEP ===
2026-07-18 03:52:19,046 sats.satellite.Scanner-1       INFO       <9300.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:19,047 sats.satellite.Scanner-1       INFO       <9300.00> Scanner-1: setting timed terminal event at 9420.0
2026-07-18 03:52:19,056 sats.satellite.Scanner-1       INFO       <9420.00> Scanner-1: timed termination at 9420.0 for action_charge
2026-07-18 03:52:19,056 data.base                      INFO       <9420.00> Total reward: {}
2026-07-18 03:52:19,057 comm.communication             INFO       <9420.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,057 sats.satellite.Scanner-1       INFO       <9420.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,059 gym                            INFO       <9420.00> Step reward: 0.0
2026-07-18 03:52:19,060 gym                            INFO       <9420.00> === STARTING STEP ===
2026-07-18 03:52:19,060 sats.satellite.Scanner-1       INFO       <9420.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:19,061 sats.satellite.Scanner-1       INFO       <9420.00> Scanner-1: setting timed terminal event at 9480.0
2026-07-18 03:52:19,066 sats.satellite.Scanner-1       INFO       <9480.00> Scanner-1: timed termination at 9480.0 for action_downlink
2026-07-18 03:52:19,067 data.base                      INFO       <9480.00> Total reward: {}
2026-07-18 03:52:19,067 comm.communication             INFO       <9480.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,068 sats.satellite.Scanner-1       INFO       <9480.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,070 gym                            INFO       <9480.00> Step reward: 0.0
2026-07-18 03:52:19,071 gym                            INFO       <9480.00> === STARTING STEP ===
2026-07-18 03:52:19,071 sats.satellite.Scanner-1       INFO       <9480.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:19,072 sats.satellite.Scanner-1       INFO       <9480.00> Scanner-1: setting timed terminal event at 9600.0
2026-07-18 03:52:19,081 sats.satellite.Scanner-1       INFO       <9600.00> Scanner-1: timed termination at 9600.0 for action_charge
2026-07-18 03:52:19,081 data.base                      INFO       <9600.00> Total reward: {}
2026-07-18 03:52:19,082 comm.communication             INFO       <9600.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,082 sats.satellite.Scanner-1       INFO       <9600.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,084 gym                            INFO       <9600.00> Step reward: 0.0
2026-07-18 03:52:19,085 gym                            INFO       <9600.00> === STARTING STEP ===
2026-07-18 03:52:19,086 sats.satellite.Scanner-1       INFO       <9600.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:19,086 sats.satellite.Scanner-1       INFO       <9600.00> Scanner-1: setting timed terminal event at 9660.0
2026-07-18 03:52:19,092 sats.satellite.Scanner-1       INFO       <9660.00> Scanner-1: timed termination at 9660.0 for action_downlink
2026-07-18 03:52:19,092 data.base                      INFO       <9660.00> Total reward: {}
2026-07-18 03:52:19,093 comm.communication             INFO       <9660.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,093 sats.satellite.Scanner-1       INFO       <9660.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,096 gym                            INFO       <9660.00> Step reward: 0.0
2026-07-18 03:52:19,096 gym                            INFO       <9660.00> === STARTING STEP ===
2026-07-18 03:52:19,097 sats.satellite.Scanner-1       INFO       <9660.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:19,098 sats.satellite.Scanner-1       INFO       <9660.00> Scanner-1: setting timed terminal event at 9840.0
2026-07-18 03:52:19,111 sats.satellite.Scanner-1       INFO       <9840.00> Scanner-1: timed termination at 9840.0 for action_nadir_scan
2026-07-18 03:52:19,111 data.base                      INFO       <9840.00> Total reward: {'Scanner-1': 0.004912280701754385}
2026-07-18 03:52:19,112 comm.communication             INFO       <9840.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,113 sats.satellite.Scanner-1       INFO       <9840.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,115 gym                            INFO       <9840.00> Step reward: 0.004912280701754385
2026-07-18 03:52:19,116 gym                            INFO       <9840.00> === STARTING STEP ===
2026-07-18 03:52:19,116 sats.satellite.Scanner-1       INFO       <9840.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:19,117 sats.satellite.Scanner-1       INFO       <9840.00> Scanner-1: setting timed terminal event at 9900.0
2026-07-18 03:52:19,122 sats.satellite.Scanner-1       INFO       <9900.00> Scanner-1: timed termination at 9900.0 for action_desat
2026-07-18 03:52:19,123 data.base                      INFO       <9900.00> Total reward: {}
2026-07-18 03:52:19,124 comm.communication             INFO       <9900.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,124 sats.satellite.Scanner-1       INFO       <9900.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,127 gym                            INFO       <9900.00> Step reward: 0.0
2026-07-18 03:52:19,127 gym                            INFO       <9900.00> === STARTING STEP ===
2026-07-18 03:52:19,128 sats.satellite.Scanner-1       INFO       <9900.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:19,128 sats.satellite.Scanner-1       INFO       <9900.00> Scanner-1: setting timed terminal event at 10020.0
2026-07-18 03:52:19,138 sats.satellite.Scanner-1       INFO       <10020.00> Scanner-1: timed termination at 10020.0 for action_charge
2026-07-18 03:52:19,139 data.base                      INFO       <10020.00> Total reward: {}
2026-07-18 03:52:19,139 comm.communication             INFO       <10020.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,140 sats.satellite.Scanner-1       INFO       <10020.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,142 gym                            INFO       <10020.00> Step reward: 0.0
2026-07-18 03:52:19,143 gym                            INFO       <10020.00> === STARTING STEP ===
2026-07-18 03:52:19,144 sats.satellite.Scanner-1       INFO       <10020.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:19,144 sats.satellite.Scanner-1       INFO       <10020.00> Scanner-1: setting timed terminal event at 10080.0
2026-07-18 03:52:19,150 sats.satellite.Scanner-1       INFO       <10080.00> Scanner-1: timed termination at 10080.0 for action_desat
2026-07-18 03:52:19,150 data.base                      INFO       <10080.00> Total reward: {}
2026-07-18 03:52:19,151 comm.communication             INFO       <10080.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,152 sats.satellite.Scanner-1       INFO       <10080.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,154 gym                            INFO       <10080.00> Step reward: 0.0
2026-07-18 03:52:19,155 gym                            INFO       <10080.00> === STARTING STEP ===
2026-07-18 03:52:19,156 sats.satellite.Scanner-1       INFO       <10080.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:19,156 sats.satellite.Scanner-1       INFO       <10080.00> Scanner-1: setting timed terminal event at 10140.0
2026-07-18 03:52:19,162 sats.satellite.Scanner-1       INFO       <10140.00> Scanner-1: timed termination at 10140.0 for action_desat
2026-07-18 03:52:19,162 data.base                      INFO       <10140.00> Total reward: {}
2026-07-18 03:52:19,163 comm.communication             INFO       <10140.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,163 sats.satellite.Scanner-1       INFO       <10140.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,165 gym                            INFO       <10140.00> Step reward: 0.0
2026-07-18 03:52:19,166 gym                            INFO       <10140.00> === STARTING STEP ===
2026-07-18 03:52:19,167 sats.satellite.Scanner-1       INFO       <10140.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:19,167 sats.satellite.Scanner-1       INFO       <10140.00> Scanner-1: setting timed terminal event at 10200.0
2026-07-18 03:52:19,173 sats.satellite.Scanner-1       INFO       <10200.00> Scanner-1: timed termination at 10200.0 for action_desat
2026-07-18 03:52:19,174 data.base                      INFO       <10200.00> Total reward: {}
2026-07-18 03:52:19,174 comm.communication             INFO       <10200.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,175 sats.satellite.Scanner-1       INFO       <10200.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,176 gym                            INFO       <10200.00> Step reward: 0.0
2026-07-18 03:52:19,177 gym                            INFO       <10200.00> === STARTING STEP ===
2026-07-18 03:52:19,177 sats.satellite.Scanner-1       INFO       <10200.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:19,178 sats.satellite.Scanner-1       INFO       <10200.00> Scanner-1: setting timed terminal event at 10320.0
2026-07-18 03:52:19,187 sats.satellite.Scanner-1       INFO       <10320.00> Scanner-1: timed termination at 10320.0 for action_charge
2026-07-18 03:52:19,188 data.base                      INFO       <10320.00> Total reward: {}
2026-07-18 03:52:19,188 comm.communication             INFO       <10320.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,189 sats.satellite.Scanner-1       INFO       <10320.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,191 gym                            INFO       <10320.00> Step reward: 0.0
2026-07-18 03:52:19,192 gym                            INFO       <10320.00> === STARTING STEP ===
2026-07-18 03:52:19,192 sats.satellite.Scanner-1       INFO       <10320.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:19,193 sats.satellite.Scanner-1       INFO       <10320.00> Scanner-1: setting timed terminal event at 10440.0
2026-07-18 03:52:19,201 sats.satellite.Scanner-1       INFO       <10440.00> Scanner-1: timed termination at 10440.0 for action_charge
2026-07-18 03:52:19,202 data.base                      INFO       <10440.00> Total reward: {}
2026-07-18 03:52:19,202 comm.communication             INFO       <10440.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,203 sats.satellite.Scanner-1       INFO       <10440.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,204 gym                            INFO       <10440.00> Step reward: 0.0
2026-07-18 03:52:19,205 gym                            INFO       <10440.00> === STARTING STEP ===
2026-07-18 03:52:19,205 sats.satellite.Scanner-1       INFO       <10440.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:19,206 sats.satellite.Scanner-1       INFO       <10440.00> Scanner-1: setting timed terminal event at 10560.0
2026-07-18 03:52:19,215 sats.satellite.Scanner-1       INFO       <10560.00> Scanner-1: timed termination at 10560.0 for action_charge
2026-07-18 03:52:19,216 data.base                      INFO       <10560.00> Total reward: {}
2026-07-18 03:52:19,216 comm.communication             INFO       <10560.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,217 sats.satellite.Scanner-1       INFO       <10560.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,219 gym                            INFO       <10560.00> Step reward: 0.0
2026-07-18 03:52:19,219 gym                            INFO       <10560.00> === STARTING STEP ===
2026-07-18 03:52:19,220 sats.satellite.Scanner-1       INFO       <10560.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:19,221 sats.satellite.Scanner-1       INFO       <10560.00> Scanner-1: setting timed terminal event at 10620.0
2026-07-18 03:52:19,226 sats.satellite.Scanner-1       INFO       <10620.00> Scanner-1: timed termination at 10620.0 for action_downlink
2026-07-18 03:52:19,226 data.base                      INFO       <10620.00> Total reward: {}
2026-07-18 03:52:19,227 comm.communication             INFO       <10620.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,227 sats.satellite.Scanner-1       INFO       <10620.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,229 gym                            INFO       <10620.00> Step reward: 0.0
2026-07-18 03:52:19,230 gym                            INFO       <10620.00> === STARTING STEP ===
2026-07-18 03:52:19,230 sats.satellite.Scanner-1       INFO       <10620.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:19,231 sats.satellite.Scanner-1       INFO       <10620.00> Scanner-1: setting timed terminal event at 10680.0
2026-07-18 03:52:19,236 sats.satellite.Scanner-1       INFO       <10680.00> Scanner-1: timed termination at 10680.0 for action_desat
2026-07-18 03:52:19,237 data.base                      INFO       <10680.00> Total reward: {}
2026-07-18 03:52:19,237 comm.communication             INFO       <10680.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,237 sats.satellite.Scanner-1       INFO       <10680.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,240 gym                            INFO       <10680.00> Step reward: 0.0
2026-07-18 03:52:19,240 gym                            INFO       <10680.00> === STARTING STEP ===
2026-07-18 03:52:19,241 sats.satellite.Scanner-1       INFO       <10680.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:19,241 sats.satellite.Scanner-1       INFO       <10680.00> Scanner-1: setting timed terminal event at 10740.0
2026-07-18 03:52:19,246 sats.satellite.Scanner-1       INFO       <10740.00> Scanner-1: timed termination at 10740.0 for action_downlink
2026-07-18 03:52:19,247 data.base                      INFO       <10740.00> Total reward: {}
2026-07-18 03:52:19,248 comm.communication             INFO       <10740.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,248 sats.satellite.Scanner-1       INFO       <10740.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,250 gym                            INFO       <10740.00> Step reward: 0.0
2026-07-18 03:52:19,251 gym                            INFO       <10740.00> === STARTING STEP ===
2026-07-18 03:52:19,252 sats.satellite.Scanner-1       INFO       <10740.00> Scanner-1: action_charge tasked for 120.0 seconds
2026-07-18 03:52:19,252 sats.satellite.Scanner-1       INFO       <10740.00> Scanner-1: setting timed terminal event at 10860.0
2026-07-18 03:52:19,261 sats.satellite.Scanner-1       INFO       <10860.00> Scanner-1: timed termination at 10860.0 for action_charge
2026-07-18 03:52:19,262 data.base                      INFO       <10860.00> Total reward: {}
2026-07-18 03:52:19,262 comm.communication             INFO       <10860.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,263 sats.satellite.Scanner-1       INFO       <10860.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,265 gym                            INFO       <10860.00> Step reward: 0.0
2026-07-18 03:52:19,265 gym                            INFO       <10860.00> === STARTING STEP ===
2026-07-18 03:52:19,266 sats.satellite.Scanner-1       INFO       <10860.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:19,267 sats.satellite.Scanner-1       INFO       <10860.00> Scanner-1: setting timed terminal event at 11040.0
2026-07-18 03:52:19,279 sats.satellite.Scanner-1       INFO       <11040.00> Scanner-1: timed termination at 11040.0 for action_nadir_scan
2026-07-18 03:52:19,280 data.base                      INFO       <11040.00> Total reward: {'Scanner-1': 0.004631578947368421}
2026-07-18 03:52:19,281 comm.communication             INFO       <11040.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,281 sats.satellite.Scanner-1       INFO       <11040.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,283 gym                            INFO       <11040.00> Step reward: 0.004631578947368421
2026-07-18 03:52:19,284 gym                            INFO       <11040.00> === STARTING STEP ===
2026-07-18 03:52:19,284 sats.satellite.Scanner-1       INFO       <11040.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:19,285 sats.satellite.Scanner-1       INFO       <11040.00> Scanner-1: setting timed terminal event at 11100.0
2026-07-18 03:52:19,290 sats.satellite.Scanner-1       INFO       <11100.00> Scanner-1: timed termination at 11100.0 for action_downlink
2026-07-18 03:52:19,290 data.base                      INFO       <11100.00> Total reward: {}
2026-07-18 03:52:19,291 comm.communication             INFO       <11100.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,291 sats.satellite.Scanner-1       INFO       <11100.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,293 gym                            INFO       <11100.00> Step reward: 0.0
2026-07-18 03:52:19,294 gym                            INFO       <11100.00> === STARTING STEP ===
2026-07-18 03:52:19,294 sats.satellite.Scanner-1       INFO       <11100.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:19,295 sats.satellite.Scanner-1       INFO       <11100.00> Scanner-1: setting timed terminal event at 11160.0
2026-07-18 03:52:19,300 sats.satellite.Scanner-1       INFO       <11160.00> Scanner-1: timed termination at 11160.0 for action_desat
2026-07-18 03:52:19,301 data.base                      INFO       <11160.00> Total reward: {}
2026-07-18 03:52:19,301 comm.communication             INFO       <11160.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,302 sats.satellite.Scanner-1       INFO       <11160.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,304 gym                            INFO       <11160.00> Step reward: 0.0
2026-07-18 03:52:19,304 gym                            INFO       <11160.00> === STARTING STEP ===
2026-07-18 03:52:19,305 sats.satellite.Scanner-1       INFO       <11160.00> Scanner-1: action_downlink tasked for 60.0 seconds
2026-07-18 03:52:19,306 sats.satellite.Scanner-1       INFO       <11160.00> Scanner-1: setting timed terminal event at 11220.0
2026-07-18 03:52:19,311 sats.satellite.Scanner-1       INFO       <11220.00> Scanner-1: timed termination at 11220.0 for action_downlink
2026-07-18 03:52:19,312 data.base                      INFO       <11220.00> Total reward: {}
2026-07-18 03:52:19,312 comm.communication             INFO       <11220.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,313 sats.satellite.Scanner-1       INFO       <11220.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,315 gym                            INFO       <11220.00> Step reward: 0.0
2026-07-18 03:52:19,315 gym                            INFO       <11220.00> === STARTING STEP ===
2026-07-18 03:52:19,316 sats.satellite.Scanner-1       INFO       <11220.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:19,316 sats.satellite.Scanner-1       INFO       <11220.00> Scanner-1: setting timed terminal event at 11400.0
2026-07-18 03:52:19,329 sats.satellite.Scanner-1       INFO       <11400.00> Scanner-1: timed termination at 11400.0 for action_nadir_scan
2026-07-18 03:52:19,329 data.base                      INFO       <11400.00> Total reward: {'Scanner-1': 0.004912280701754385}
2026-07-18 03:52:19,330 comm.communication             INFO       <11400.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,331 sats.satellite.Scanner-1       INFO       <11400.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,333 gym                            INFO       <11400.00> Step reward: 0.004912280701754385
2026-07-18 03:52:19,333 gym                            INFO       <11400.00> === STARTING STEP ===
2026-07-18 03:52:19,334 sats.satellite.Scanner-1       INFO       <11400.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:19,334 sats.satellite.Scanner-1       INFO       <11400.00> Scanner-1: setting timed terminal event at 11580.0
2026-07-18 03:52:19,347 sats.satellite.Scanner-1       INFO       <11580.00> Scanner-1: timed termination at 11580.0 for action_nadir_scan
2026-07-18 03:52:19,347 data.base                      INFO       <11580.00> Total reward: {'Scanner-1': 0.00631578947368421}
2026-07-18 03:52:19,348 comm.communication             INFO       <11580.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,348 sats.satellite.Scanner-1       INFO       <11580.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,351 gym                            INFO       <11580.00> Step reward: 0.00631578947368421
2026-07-18 03:52:19,351 gym                            INFO       <11580.00> === STARTING STEP ===
2026-07-18 03:52:19,352 sats.satellite.Scanner-1       INFO       <11580.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:19,352 sats.satellite.Scanner-1       INFO       <11580.00> Scanner-1: setting timed terminal event at 11760.0
2026-07-18 03:52:19,364 sats.satellite.Scanner-1       INFO       <11760.00> Scanner-1: timed termination at 11760.0 for action_nadir_scan
2026-07-18 03:52:19,365 data.base                      INFO       <11760.00> Total reward: {'Scanner-1': 0.00631578947368421}
2026-07-18 03:52:19,365 comm.communication             INFO       <11760.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,366 sats.satellite.Scanner-1       INFO       <11760.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,368 gym                            INFO       <11760.00> Step reward: 0.00631578947368421
2026-07-18 03:52:19,369 gym                            INFO       <11760.00> === STARTING STEP ===
2026-07-18 03:52:19,369 sats.satellite.Scanner-1       INFO       <11760.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:19,370 sats.satellite.Scanner-1       INFO       <11760.00> Scanner-1: setting timed terminal event at 11820.0
2026-07-18 03:52:19,377 sats.satellite.Scanner-1       INFO       <11820.00> Scanner-1: timed termination at 11820.0 for action_desat
2026-07-18 03:52:19,377 data.base                      INFO       <11820.00> Total reward: {}
2026-07-18 03:52:19,378 comm.communication             INFO       <11820.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,378 sats.satellite.Scanner-1       INFO       <11820.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,380 gym                            INFO       <11820.00> Step reward: 0.0
2026-07-18 03:52:19,381 gym                            INFO       <11820.00> === STARTING STEP ===
2026-07-18 03:52:19,381 sats.satellite.Scanner-1       INFO       <11820.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:19,382 sats.satellite.Scanner-1       INFO       <11820.00> Scanner-1: setting timed terminal event at 12000.0
2026-07-18 03:52:19,395 sats.satellite.Scanner-1       INFO       <12000.00> Scanner-1: timed termination at 12000.0 for action_nadir_scan
2026-07-18 03:52:19,396 data.base                      INFO       <12000.00> Total reward: {'Scanner-1': 0.00487719298245614}
2026-07-18 03:52:19,396 comm.communication             INFO       <12000.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,397 sats.satellite.Scanner-1       INFO       <12000.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,399 gym                            INFO       <12000.00> Step reward: 0.00487719298245614
2026-07-18 03:52:19,399 gym                            INFO       <12000.00> === STARTING STEP ===
2026-07-18 03:52:19,400 sats.satellite.Scanner-1       INFO       <12000.00> Scanner-1: action_nadir_scan tasked for 180.0 seconds
2026-07-18 03:52:19,400 sats.satellite.Scanner-1       INFO       <12000.00> Scanner-1: setting timed terminal event at 12180.0
2026-07-18 03:52:19,412 sats.satellite.Scanner-1       INFO       <12180.00> Scanner-1: timed termination at 12180.0 for action_nadir_scan
2026-07-18 03:52:19,413 data.base                      INFO       <12180.00> Total reward: {'Scanner-1': 0.00631578947368421}
2026-07-18 03:52:19,414 comm.communication             INFO       <12180.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,415 sats.satellite.Scanner-1       INFO       <12180.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,417 gym                            INFO       <12180.00> Step reward: 0.00631578947368421
2026-07-18 03:52:19,418 gym                            INFO       <12180.00> === STARTING STEP ===
2026-07-18 03:52:19,418 sats.satellite.Scanner-1       INFO       <12180.00> Scanner-1: action_desat tasked for 60.0 seconds
2026-07-18 03:52:19,419 sats.satellite.Scanner-1       INFO       <12180.00> Scanner-1: setting timed terminal event at 12240.0
2026-07-18 03:52:19,425 sats.satellite.Scanner-1       INFO       <12240.00> Scanner-1: timed termination at 12240.0 for action_desat
2026-07-18 03:52:19,425 data.base                      INFO       <12240.00> Total reward: {}
2026-07-18 03:52:19,426 comm.communication             INFO       <12240.00> Optimizing data communication between all pairs of satellites
2026-07-18 03:52:19,427 sats.satellite.Scanner-1       INFO       <12240.00> Scanner-1: Satellite Scanner-1 requires retasking
2026-07-18 03:52:19,428 sats.satellite.Scanner-1       WARNING    <12240.00> Scanner-1: failed battery_valid check
2026-07-18 03:52:19,429 gym                            INFO       <12240.00> Step reward: -1.0
2026-07-18 03:52:19,429 gym                            INFO       <12240.00> Episode terminated: True
2026-07-18 03:52:19,431 gym                            INFO       <12240.00> Episode truncated: False