Eval tasks¶
The tasks of the eval set (see Measuring how well an assistant writes scenarios): each is a request to write a scenario, scored by what the scenario does. homeostat eval list and homeostat eval show <task> print the same. The acceptance checks are not published here.
| Task | Level | Title | Checks |
|---|---|---|---|
flow_disturbance |
1 | A flow loop with an unmeasured disturbance | 5 |
level_disturbance |
1 | A tank level loop with a varying inflow | 7 |
setpoint_step |
1 | A setpoint step on a temperature loop | 6 |
bias_hidden_by_loop |
2 | A transmitter bias that the loop hides | 3 |
stiction_visible |
2 | A valve that starts to stick | 3 |
fouling_and_cleaning |
3 | Fouling builds up and a cleaning resets it | 5 |
three_grades |
3 | A production plan with three grades | 5 |
twin_manual |
3 | A twin experiment: automatic against manual | 6 |
product_quality |
4 | A mixer feeding a reactor, and the product property | 5 |
Levels: 1 a single loop, 2 a fault and what it does to the data, 3 a plan, a maintenance history or a twin experiment, 4 several units wired together.
flow_disturbance¶
Level 1: A flow loop with an unmeasured disturbance.
Simulate 2 hours of a flow control loop FIC-101 holding 50 m3/h. The upstream pressure varies randomly with a standard deviation of 0.3 bar and a correlation time of 10 minutes, and nobody measures it. A base step of 1 second is fine; record every 10 seconds.
level_disturbance¶
Level 1: A tank level loop with a varying inflow.
Simulate 3 hours of a level control loop LIC-101 holding a tank at 60 %. The inflow to the tank varies randomly around 20 m3/h with a standard deviation of 2 m3/h and a correlation time of 15 minutes, and nobody measures it. A base step of 1 second is fine; record every 10 seconds.
setpoint_step¶
Level 1: A setpoint step on a temperature loop.
Simulate 4 hours of a temperature control loop TIC-101 at a setpoint of 80 degC. At 1 hour the setpoint steps to 90 degC. A base step of 1 second is fine; record every 10 seconds.
bias_hidden_by_loop¶
Level 2: A transmitter bias that the loop hides.
Flow control loop FIC-101 holds 50 m3/h for 6 hours; the upstream pressure varies randomly (standard deviation 0.2 bar, correlation time 10 minutes, unmeasured). At 3 hours the flowmeter FT-101 starts reading 3 m3/h too high, abruptly. Show that the controller hides this fault: the reading stays on the setpoint while the true flow falls. A base step of 1 second is fine; record every 10 seconds.
stiction_visible¶
Level 2: A valve that starts to stick.
Flow control loop FIC-101 holds 50 m3/h for 12 hours. The upstream pressure varies randomly (standard deviation 0.3 bar, correlation time 10 minutes, unmeasured). At 6 hours the control valve develops stick-slip friction: a static friction band of 10 % of travel, appearing abruptly. The fault should be detectable on the controller output soon after it starts. A base step of 1 second is fine; record every 10 seconds.
fouling_and_cleaning¶
Level 3: Fouling builds up and a cleaning resets it.
Simulate 40 days of a temperature control loop TIC-101 at 80 degC. Heat-transfer fouling cuts the heating gain by 1 % per day at the setpoint temperature, and the surface is cleaned on day 20. Show the heating valve opening further as fouling builds and dropping back after the cleaning. A base step of 1 minute is fine; record every hour.
three_grades¶
Level 3: A production plan with three grades.
Simulate 20 days of a temperature control loop TIC-101 that runs three grades from a production plan with named grades: grade A at 80 degC (the start), grade B at 88 degC from day 5, and grade C at 75 degC from day 12. Each change ramps over 4 hours. Every grade change should settle within 8 hours. A base step of 1 minute is fine; record every 10 minutes.
twin_manual¶
Level 3: A twin experiment: automatic against manual.
Simulate 24 hours of a temperature control loop TIC-101 at 80 degC with a base step of 10 seconds (record every 10 seconds), as a twin experiment: two lanes with identical noise, lane 0 with the controller in automatic and lane 1 with the controller in manual from the start. The feed temperature is an unmeasured disturbance (mean 25 degC, standard deviation 3 degC, correlation time 2 hours). Show that the loop moves the disturbance from the temperature to the valve.
product_quality¶
Level 4: A mixer feeding a reactor, and the product property.
Simulate 10 days of a plant with a mixer MX-101 feeding a reactor TIC-301 (the library's
mixerandreactortemplates), with a base step of 2 minutes (record every 10 minutes). Feed the reactor from the mixer: itsflowport from the mixer'sflowsignal and itsratioport from the mixer'soutsignal. Run grade A (reactor setpoint 80 degC, mixerflow_b10 m3/h) and, from day 5, grade B (86 degC,flow_b15 m3/h), ramping over 4 hours; grade changes should settle within 8 hours. Show that the product property TIC-301.q_product rises in grade B and that the laboratory analyzer AT-301 reports it.