File size: 2,387 Bytes
85d3923
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
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.