Column reference¶
Columns are defined in src/thermoshift/schema.py. Each configuration has one row per
decision, joined by row_id. The role field identifies how a column is used.
logged¶
Column |
Type |
Unit |
Role |
Nullable |
Description |
|---|---|---|---|---|---|
|
int64 |
1 |
id |
no |
building_id * episode_steps + step; unique within a release |
|
int64 |
1 |
id |
no |
Independent synthetic building, one trajectory per building |
|
int32 |
h |
id |
no |
Zero-based hour within the trajectory |
|
int8 |
h |
feature |
no |
Synthetic local hour, no geographic timezone |
|
int8 |
1 |
feature |
no |
Synthetic weekday: Monday=0 |
|
int8 |
1 |
feature |
no |
0=residential-like, 1=office-like |
|
float32 |
m2 |
feature |
no |
Known floor area |
|
float32 |
kW |
feature |
no |
Rated electric cooling input at action 2 |
|
float32 |
degC |
feature |
no |
Constant preferred temperature for the episode |
|
float32 |
degC |
feature |
no |
Outdoor temperature held constant over the next hour |
|
float32 |
W/m2 |
feature |
no |
Synthetic solar irradiance |
|
float32 |
currency/kWh |
feature |
no |
Known hourly illustrative tariff |
|
float32 |
kgCO2e/kWh |
feature |
no |
Known illustrative grid carbon intensity |
|
int16 |
people |
feature |
no |
Idealized observable occupancy, constant this hour |
|
bool |
1 |
feature |
no |
Supply availability known at the decision time |
|
float32 |
degC |
feature |
yes |
Current corrupted sensor measurement; null during dropout |
|
float32 |
degC |
feature |
no |
Latest available reading, initially setpoint if missing |
|
int32 |
h |
feature |
no |
Hours since available reading; increments from 1 on initial dropout |
|
int8 |
1 |
action |
no |
0=off, 1=half input, 2=full input |
|
float64 |
1 |
propensity |
no |
Float64 probability used by the actual logging policy for the selected action |
|
float64 |
1 |
propensity |
no |
Float64 logging probability used to sample action 0 |
|
float64 |
1 |
propensity |
no |
Float64 logging probability used to sample action 1 |
|
float64 |
1 |
propensity |
no |
Float64 logging probability used to sample action 2 |
|
float32 |
degC |
target |
no |
Simulated true temperature at the end of the hour |
|
float32 |
kWh |
target |
no |
Served background plus HVAC electricity over one hour |
|
float32 |
currency |
target |
no |
Served electricity cost |
|
float32 |
kgCO2e |
target |
no |
Operational grid emissions for served electricity |
|
float32 |
degC |
target |
no |
End-of-hour deviation beyond the setpoint +/-1 degC comfort band |
|
float32 |
currency-equivalent |
target |
no |
Negative weighted electricity, emissions and endpoint comfort cost |
|
bool |
1 |
boundary |
no |
Final stored step of the building trajectory |
oracle¶
Column |
Type |
Unit |
Role |
Nullable |
Description |
|---|---|---|---|---|---|
|
int64 |
1 |
id |
no |
building_id * episode_steps + step; unique within a release |
|
int64 |
1 |
id |
no |
Independent synthetic building, one trajectory per building |
|
int32 |
h |
id |
no |
Zero-based hour within the trajectory |
|
float32 |
degC |
oracle |
no |
Latent temperature at decision time |
|
float32 |
kW/degC |
oracle |
no |
Thermal conductance to ambient |
|
float32 |
kWh/degC |
oracle |
no |
Lumped thermal heat capacity |
|
float32 |
kW |
oracle |
no |
Requested background electrical load |
|
float32 |
kW |
oracle |
no |
Occupant heat plus served background electric heat |
|
float32 |
kW |
oracle |
no |
Solar heat admitted to building |
|
float32 |
kW |
oracle |
no |
Shared unmodeled hourly heat disturbance |
|
float32 |
1 |
oracle |
no |
Actual temperature-dependent coefficient of performance |
|
float32 |
degC |
oracle |
no |
Bias excluding white measurement noise |
|
bool |
1 |
oracle |
no |
Dropout or absolute serialized sensor_bias_c greater than 0.75 degC |
|
float32 |
degC |
oracle |
no |
One-step potential outcome under action 0 |
|
float32 |
kWh |
oracle |
no |
One-step potential outcome under action 0 |
|
float32 |
currency |
oracle |
no |
One-step potential outcome under action 0 |
|
float32 |
kgCO2e |
oracle |
no |
One-step potential outcome under action 0 |
|
float32 |
degC |
oracle |
no |
One-step potential outcome under action 0 |
|
float32 |
currency-equivalent |
oracle |
no |
One-step potential outcome under action 0 |
|
float32 |
degC |
oracle |
no |
One-step potential outcome under action 1 |
|
float32 |
kWh |
oracle |
no |
One-step potential outcome under action 1 |
|
float32 |
currency |
oracle |
no |
One-step potential outcome under action 1 |
|
float32 |
kgCO2e |
oracle |
no |
One-step potential outcome under action 1 |
|
float32 |
degC |
oracle |
no |
One-step potential outcome under action 1 |
|
float32 |
currency-equivalent |
oracle |
no |
One-step potential outcome under action 1 |
|
float32 |
degC |
oracle |
no |
One-step potential outcome under action 2 |
|
float32 |
kWh |
oracle |
no |
One-step potential outcome under action 2 |
|
float32 |
currency |
oracle |
no |
One-step potential outcome under action 2 |
|
float32 |
kgCO2e |
oracle |
no |
One-step potential outcome under action 2 |
|
float32 |
degC |
oracle |
no |
One-step potential outcome under action 2 |
|
float32 |
currency-equivalent |
oracle |
no |
One-step potential outcome under action 2 |
|
int8 |
1 |
oracle |
no |
Action maximizing serialized one-step reward; smallest index breaks ties |
Schema helper APIs¶
The supported helpers in thermoshift.schema are:
schema_document()returns a JSON-serializable description of both schemas, including names, Arrow types, nullability, roles, units, and descriptions.feature_roles()returnspolicy_features,transition_features,forbidden_policy_inputs, and theoracle_accessusage string.LOGGED_SCHEMAandORACLE_SCHEMAare the PyArrow schemas;SCHEMASmapsloggedandoracleto them, andFEATURESis the policy feature list.
The generated schema.json and feature_roles.json files are serialized copies of the two helper results. See Python API for usage examples.