Environment
Temporal Configuration of the Simulation Environment:
To simulate human interaction within smart environments under controlled temporal conditions, the simulation engine allows configurable virtual time settings. The virtual environment includes a time system that is independent of real-world time, enabling flexible pacing and repeatability of experiments. The temporal dimension of the simulation is critical for studying tasks that are dependent on the time of day, for example morning routines, lighting automation, or energy consumption patterns.
This configurable time model enables experiments to simulate realistic routines or to compress longer interactions into shorter test sessions, without altering the behavior logic of devices or users.
JSON Schema
Environment Schema
{
"title": "Environment Time Configuration",
"description": "Schema for configuring time handling in the application",
"type": "object",
"properties": {
"time": {
"type": "object",
"description": "Configuration for time handling in the application",
"properties": {
"startTime": {
"type": "object",
"description": "The ingame time at the commencement of the game",
"properties": {
"hour": {
"type": "integer",
"description": "Hour of the day to start from (24-hour format)",
"minimum": 0,
"maximum": 23
},
"minute": {
"type": "integer",
"description": "Minute of the hour to start from",
"minimum": 0,
"maximum": 59
}
},
"required": [
"hour",
"minute"
],
"additionalProperties": false
},
"speed": {
"type": "number",
"description": "Speed multiplier for time progression. 1 = real-time, >1 = accelerated, <1 = slowed down",
"minimum": 0,
"exclusiveMinimum": true
}
},
"required": [
"startTime",
"speed"
],
"additionalProperties": false
}
},
"required": [
"time"
],
"additionalProperties": false
}
Time
The time configuration is defined using a structured schema with two main parameters:
startTime
: Specifies the initial in-game time at the onset of the scenario. This is set using a 24-hour format withhour
andminute
fields:hour
: Integer, representing the hour of the day to start from (0-23)minute
: Integer, representing minute of the hour to start from (0-59)
This allows researchers to situate the task within a specific temporal context, for example,
setting the startTime
to (hour: 8, minute: 0) to simulate a user's interaction with a
smart coffee machine as part of a morning routine.
speed
(Time Progression Speed): Integer, that controls the rate at which simulated time advances relative to real-world time.
A value of 1 corresponds to real-time progression, while higher values accelerate time (e.g., 10 simulates ten seconds per real second), allowing long-duration tasks to be observed within manageable experiment durations.
in-game Time Progression
= Speed
× Real-World Time Progression
.
Example
This section provides concrete examples of the environment.time
configuration to demonstrate its flexibility in establishing varied experimental conditions.
Each example includes the JSON snippet and an explanation of its utility for a specific type of study.
Use Case 1: Baseline Real-Time Scenario
{
"environment": {
"time": {
"startTime": {
"hour": 8,
"minute": 0
},
"speed": 1
}
}
}
Description: This configuration initializes the simulation at 8:00 AM with a temporal speed
of 1.0.
The resulting 1:1 mapping with real-world time progression is ideal for user experience studies where
the participant's perception of time must align with reality, or for collecting baseline data on task completion duration.
Use Case 2: Accelerated Time Scenarios for Efficient Analysis
The following configurations, while set at different times of day, all leverage temporal acceleration. This approach is highly effective for studies focusing on automated rules and device behaviors, since the acceleration allows researchers to observe the outcomes of several simulated hours within minutes of real-world time.
The choice of the specific acceleration factor—whether high, moderate, or low—is a critical methodological decision.
- High-Acceleration Example (
speed: 10.0
)
{
"environment": {
"time": {
"startTime": {
"hour": 22,
"minute": 0
},
"speed": 10
}
}
}
Description: This configuration is optimal for observing very long-duration processes where the final outcome is of primary interest, such as simulating an entire night to verify energy-saving or security automations.
- High-Acceleration Example (
speed: 5.0
andspeed: 2.5
)
{
"environment": {
"time": {
"startTime": {
"hour": 6,
"minute": 30
},
"speed": 5
}
}
}
{
"environment": {
"time": {
"startTime": {
"hour": 14,
"minute": 45
},
"speed": 2.5
}
}
}
Description: These configurations are better suited for scenarios that, while lengthy, may still involve some user interaction or require observation of the process as it unfolds.
For example, simulating a morning routine at 5.0x speed
or a mid-day task at 2.5x speed
strikes a balance: the simulation is significantly shortened,
but not so fast that the agent's interactions with devices become difficult to analyze.