Training with RLlib PPO
RLlib is a high-performance, distributed reinforcement learning library. It is preferable to other RL libraries (e.g. Stable Baselines
for
bsk_rlenvironments 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_00000 | TERMINATED | 10.1.0.142:4889 | 10 | 15.7386 | 2500 | 11 | 2500 |
(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_lifetime | perf | 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