OpenRnv / openenv.yaml
Vittal-M's picture
Add hackathon code
85d3923
name: scheduling-opt-env
description: >
A real-world AI agent training environment for combinatorial scheduling
optimisation. Agents must determine schedule feasibility, classify constraint
violations, and repair infeasible schedules to minimise makespan — mirroring
the daily workflow of operations researchers and production planners.
version: "1.0.0"
author: "Team SchedulingOpt"
license: MIT
tasks:
- id: feasibility_check
name: Feasibility Check
difficulty: easy
description: Determine whether a proposed schedule satisfies all constraints.
max_steps: 3
action_schema:
response:
type: string
enum: ["feasible", "infeasible"]
task_id:
type: string
- id: conflict_classification
name: Conflict Classification
difficulty: medium
description: Identify the type of constraint violation present in an infeasible schedule.
max_steps: 5
action_schema:
response:
type: string
enum:
- resource_overload
- deadline_violation
- precedence_violation
- availability_conflict
- capacity_exceeded
task_id:
type: string
- id: schedule_repair
name: Schedule Repair
difficulty: hard
description: >
Return a corrected schedule (as JSON) that resolves all constraint
violations and minimises total makespan.
max_steps: 8
action_schema:
response:
type: string
description: >
JSON object with key "assignments": list of {job_id, machine_id,
start_time} dicts.
task_id:
type: string
action_space:
type: object
properties:
response:
type: string
description: >
The agent's response: "feasible"/"infeasible", a violation category,
or a JSON repair schedule.
task_id:
type: string
description: Identifier for the current task.
observation_space:
type: object
properties:
schedule_instance:
type: string
description: JSON-encoded scheduling problem instance (jobs, machines, proposed assignments).
task_id:
type: string
description: Current task identifier.
context:
type: string
description: Instructions or context for the current step.
step_number:
type: integer
description: Current step number within the episode.