[ { "task_name": "FSP", "problem_type": "FSP", "instruction": "Back at the bakery, the crew has a row of fixed stations and a few batches that all need the same ordered steps, each step having a predictable duration. The decision is picking start times so stations never collide over two batches and every batch completes each station in turn with no missing or repeated steps. The simplest way to compare plans is the finish time of the last batch: the sooner that final time, the better the schedule. The precise batches and their step times are listed below.\n\n{\n \"number_of_batches\": 9,\n \"number_of_stations\": 5,\n \"batch_ids\": [\n \"J1\",\n \"J2\",\n \"J3\",\n \"J4\",\n \"J5\",\n \"J6\",\n \"J7\",\n \"J8\",\n \"J9\"\n ],\n \"station_ids\": [\n 0,\n 1,\n 2,\n 3,\n 4\n ],\n \"tasks\": [\n {\n \"batch_id\": \"J1\",\n \"step_index\": 0,\n \"station_id\": 0,\n \"processing_duration\": 1\n },\n {\n \"batch_id\": \"J1\",\n \"step_index\": 1,\n \"station_id\": 1,\n \"processing_duration\": 52\n },\n {\n \"batch_id\": \"J1\",\n \"step_index\": 2,\n \"station_id\": 2,\n \"processing_duration\": 73\n },\n {\n \"batch_id\": \"J1\",\n \"step_index\": 3,\n \"station_id\": 3,\n \"processing_duration\": 27\n },\n {\n \"batch_id\": \"J1\",\n \"step_index\": 4,\n \"station_id\": 4,\n \"processing_duration\": 38\n },\n {\n \"batch_id\": \"J2\",\n \"step_index\": 0,\n \"station_id\": 0,\n \"processing_duration\": 20\n },\n {\n \"batch_id\": \"J2\",\n \"step_index\": 1,\n \"station_id\": 1,\n \"processing_duration\": 97\n },\n {\n \"batch_id\": \"J2\",\n \"step_index\": 2,\n \"station_id\": 2,\n \"processing_duration\": 51\n },\n {\n \"batch_id\": \"J2\",\n \"step_index\": 3,\n \"station_id\": 3,\n \"processing_duration\": 53\n },\n {\n \"batch_id\": \"J2\",\n \"step_index\": 4,\n \"station_id\": 4,\n \"processing_duration\": 26\n },\n {\n \"batch_id\": \"J3\",\n \"step_index\": 0,\n \"station_id\": 0,\n \"processing_duration\": 11\n },\n {\n \"batch_id\": \"J3\",\n \"step_index\": 1,\n \"station_id\": 1,\n \"processing_duration\": 81\n },\n {\n \"batch_id\": \"J3\",\n \"step_index\": 2,\n \"station_id\": 2,\n \"processing_duration\": 90\n },\n {\n \"batch_id\": \"J3\",\n \"step_index\": 3,\n \"station_id\": 3,\n \"processing_duration\": 45\n },\n {\n \"batch_id\": \"J3\",\n \"step_index\": 4,\n \"station_id\": 4,\n \"processing_duration\": 25\n },\n {\n \"batch_id\": \"J4\",\n \"step_index\": 0,\n \"station_id\": 0,\n \"processing_duration\": 25\n },\n {\n \"batch_id\": \"J4\",\n \"step_index\": 1,\n \"station_id\": 1,\n \"processing_duration\": 19\n },\n {\n \"batch_id\": \"J4\",\n \"step_index\": 2,\n \"station_id\": 2,\n \"processing_duration\": 33\n },\n {\n \"batch_id\": \"J4\",\n \"step_index\": 3,\n \"station_id\": 3,\n \"processing_duration\": 11\n },\n {\n \"batch_id\": \"J4\",\n \"step_index\": 4,\n \"station_id\": 4,\n \"processing_duration\": 80\n },\n {\n \"batch_id\": \"J5\",\n \"step_index\": 0,\n \"station_id\": 0,\n \"processing_duration\": 53\n },\n {\n \"batch_id\": \"J5\",\n \"step_index\": 1,\n \"station_id\": 1,\n \"processing_duration\": 84\n },\n {\n \"batch_id\": \"J5\",\n \"step_index\": 2,\n \"station_id\": 2,\n \"processing_duration\": 73\n },\n {\n \"batch_id\": \"J5\",\n \"step_index\": 3,\n \"station_id\": 3,\n \"processing_duration\": 8\n },\n {\n \"batch_id\": \"J5\",\n \"step_index\": 4,\n \"station_id\": 4,\n \"processing_duration\": 54\n },\n {\n \"batch_id\": \"J6\",\n \"step_index\": 0,\n \"station_id\": 0,\n \"processing_duration\": 13\n },\n {\n \"batch_id\": \"J6\",\n \"step_index\": 1,\n \"station_id\": 1,\n \"processing_duration\": 86\n },\n {\n \"batch_id\": \"J6\",\n \"step_index\": 2,\n \"station_id\": 2,\n \"processing_duration\": 46\n },\n {\n \"batch_id\": \"J6\",\n \"step_index\": 3,\n \"station_id\": 3,\n \"processing_duration\": 47\n },\n {\n \"batch_id\": \"J6\",\n \"step_index\": 4,\n \"station_id\": 4,\n \"processing_duration\": 45\n },\n {\n \"batch_id\": \"J7\",\n \"step_index\": 0,\n \"station_id\": 0,\n \"processing_duration\": 24\n },\n {\n \"batch_id\": \"J7\",\n \"step_index\": 1,\n \"station_id\": 1,\n \"processing_duration\": 2\n },\n {\n \"batch_id\": \"J7\",\n \"step_index\": 2,\n \"station_id\": 2,\n \"processing_duration\": 3\n },\n {\n \"batch_id\": \"J7\",\n \"step_index\": 3,\n \"station_id\": 3,\n \"processing_duration\": 99\n },\n {\n \"batch_id\": \"J7\",\n \"step_index\": 4,\n \"station_id\": 4,\n \"processing_duration\": 91\n },\n {\n \"batch_id\": \"J8\",\n \"step_index\": 0,\n \"station_id\": 0,\n \"processing_duration\": 78\n },\n {\n \"batch_id\": \"J8\",\n \"step_index\": 1,\n \"station_id\": 1,\n \"processing_duration\": 57\n },\n {\n \"batch_id\": \"J8\",\n \"step_index\": 2,\n \"station_id\": 2,\n \"processing_duration\": 77\n },\n {\n \"batch_id\": \"J8\",\n \"step_index\": 3,\n \"station_id\": 3,\n \"processing_duration\": 62\n },\n {\n \"batch_id\": \"J8\",\n \"step_index\": 4,\n \"station_id\": 4,\n \"processing_duration\": 35\n },\n {\n \"batch_id\": \"J9\",\n \"step_index\": 0,\n \"station_id\": 0,\n \"processing_duration\": 38\n },\n {\n \"batch_id\": \"J9\",\n \"step_index\": 1,\n \"station_id\": 1,\n \"processing_duration\": 27\n },\n {\n \"batch_id\": \"J9\",\n \"step_index\": 2,\n \"station_id\": 2,\n \"processing_duration\": 35\n },\n {\n \"batch_id\": \"J9\",\n \"step_index\": 3,\n \"station_id\": 3,\n \"processing_duration\": 64\n },\n {\n \"batch_id\": \"J9\",\n \"step_index\": 4,\n \"station_id\": 4,\n \"processing_duration\": 37\n }\n ]\n}\n\nYou can hand me the plan in a tiny JSON form like this — just a plain list of batches (jobs) with their tasks, start times, machines and durations. Here’s the format I expect:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nPretty simple: \"solution\" is the outer list, each entry is a job (a batch), \"tasks\" lists the ordered steps for that job, and each step has which task number it is, when it starts, which machine (station) it uses, and how long it runs. Think of it as a little form to fill in rather than a strict data spec.\n\nThis is only a sketch of the shape I want, not the actual schedule — fill the placeholders with the real IDs and numbers when you give the final answer.\n\nPlease use the exact identifiers from the problem input — do not rename or invent labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 5, "nr_jobs": 9, "jobs": [ [ [ 0, 1 ], [ 1, 52 ], [ 2, 73 ], [ 3, 27 ], [ 4, 38 ] ], [ [ 0, 20 ], [ 1, 97 ], [ 2, 51 ], [ 3, 53 ], [ 4, 26 ] ], [ [ 0, 11 ], [ 1, 81 ], [ 2, 90 ], [ 3, 45 ], [ 4, 25 ] ], [ [ 0, 25 ], [ 1, 19 ], [ 2, 33 ], [ 3, 11 ], [ 4, 80 ] ], [ [ 0, 53 ], [ 1, 84 ], [ 2, 73 ], [ 3, 8 ], [ 4, 54 ] ], [ [ 0, 13 ], [ 1, 86 ], [ 2, 46 ], [ 3, 47 ], [ 4, 45 ] ], [ [ 0, 24 ], [ 1, 2 ], [ 2, 3 ], [ 3, 99 ], [ 4, 91 ] ], [ [ 0, 78 ], [ 1, 57 ], [ 2, 77 ], [ 3, 62 ], [ 4, 35 ] ], [ [ 0, 38 ], [ 1, 27 ], [ 2, 35 ], [ 3, 64 ], [ 4, 37 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 52 }, { "task": 2, "start": 58, "machine": 2, "duration": 73 }, { "task": 3, "start": 157, "machine": 3, "duration": 27 }, { "task": 4, "start": 248, "machine": 4, "duration": 38 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 243, "machine": 0, "duration": 20 }, { "task": 1, "start": 409, "machine": 1, "duration": 97 }, { "task": 2, "start": 506, "machine": 2, "duration": 51 }, { "task": 3, "start": 557, "machine": 3, "duration": 53 }, { "task": 4, "start": 610, "machine": 4, "duration": 26 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 11 }, { "task": 1, "start": 55, "machine": 1, "duration": 81 }, { "task": 2, "start": 136, "machine": 2, "duration": 90 }, { "task": 3, "start": 252, "machine": 3, "duration": 45 }, { "task": 4, "start": 297, "machine": 4, "duration": 25 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 140, "machine": 0, "duration": 25 }, { "task": 1, "start": 247, "machine": 1, "duration": 19 }, { "task": 2, "start": 334, "machine": 2, "duration": 33 }, { "task": 3, "start": 398, "machine": 3, "duration": 11 }, { "task": 4, "start": 435, "machine": 4, "duration": 80 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 49, "machine": 0, "duration": 53 }, { "task": 1, "start": 136, "machine": 1, "duration": 84 }, { "task": 2, "start": 226, "machine": 2, "duration": 73 }, { "task": 3, "start": 299, "machine": 3, "duration": 8 }, { "task": 4, "start": 343, "machine": 4, "duration": 54 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 36, "machine": 0, "duration": 13 }, { "task": 1, "start": 323, "machine": 1, "duration": 86 }, { "task": 2, "start": 444, "machine": 2, "duration": 46 }, { "task": 3, "start": 506, "machine": 3, "duration": 47 }, { "task": 4, "start": 553, "machine": 4, "duration": 45 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 12, "machine": 0, "duration": 24 }, { "task": 1, "start": 53, "machine": 1, "duration": 2 }, { "task": 2, "start": 55, "machine": 2, "duration": 3 }, { "task": 3, "start": 58, "machine": 3, "duration": 99 }, { "task": 4, "start": 157, "machine": 4, "duration": 91 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 165, "machine": 0, "duration": 78 }, { "task": 1, "start": 266, "machine": 1, "duration": 57 }, { "task": 2, "start": 367, "machine": 2, "duration": 77 }, { "task": 3, "start": 444, "machine": 3, "duration": 62 }, { "task": 4, "start": 515, "machine": 4, "duration": 35 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 102, "machine": 0, "duration": 38 }, { "task": 1, "start": 220, "machine": 1, "duration": 27 }, { "task": 2, "start": 299, "machine": 2, "duration": 35 }, { "task": 3, "start": 334, "machine": 3, "duration": 64 }, { "task": 4, "start": 398, "machine": 4, "duration": 37 } ] } ], "obj": 636.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 9, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9" ], "machines": [ 0, 1, 2, 3, 4 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 52 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 73 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 27 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 38 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 20 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 97 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 51 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 53 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 26 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 11 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 81 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 90 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 45 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 25 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 25 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 19 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 33 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 11 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 80 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 53 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 84 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 73 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 8 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 54 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 13 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 86 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 46 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 47 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 45 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 24 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 2 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 3 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 99 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 91 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 78 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 57 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 77 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 62 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 35 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 38 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 27 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 35 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 64 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 37 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 52 }, { "task": 2, "start": 58, "machine": 2, "duration": 73 }, { "task": 3, "start": 157, "machine": 3, "duration": 27 }, { "task": 4, "start": 248, "machine": 4, "duration": 38 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 243, "machine": 0, "duration": 20 }, { "task": 1, "start": 409, "machine": 1, "duration": 97 }, { "task": 2, "start": 506, "machine": 2, "duration": 51 }, { "task": 3, "start": 557, "machine": 3, "duration": 53 }, { "task": 4, "start": 610, "machine": 4, "duration": 26 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 11 }, { "task": 1, "start": 55, "machine": 1, "duration": 81 }, { "task": 2, "start": 136, "machine": 2, "duration": 90 }, { "task": 3, "start": 252, "machine": 3, "duration": 45 }, { "task": 4, "start": 297, "machine": 4, "duration": 25 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 140, "machine": 0, "duration": 25 }, { "task": 1, "start": 247, "machine": 1, "duration": 19 }, { "task": 2, "start": 334, "machine": 2, "duration": 33 }, { "task": 3, "start": 398, "machine": 3, "duration": 11 }, { "task": 4, "start": 435, "machine": 4, "duration": 80 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 49, "machine": 0, "duration": 53 }, { "task": 1, "start": 136, "machine": 1, "duration": 84 }, { "task": 2, "start": 226, "machine": 2, "duration": 73 }, { "task": 3, "start": 299, "machine": 3, "duration": 8 }, { "task": 4, "start": 343, "machine": 4, "duration": 54 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 36, "machine": 0, "duration": 13 }, { "task": 1, "start": 323, "machine": 1, "duration": 86 }, { "task": 2, "start": 444, "machine": 2, "duration": 46 }, { "task": 3, "start": 506, "machine": 3, "duration": 47 }, { "task": 4, "start": 553, "machine": 4, "duration": 45 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 12, "machine": 0, "duration": 24 }, { "task": 1, "start": 53, "machine": 1, "duration": 2 }, { "task": 2, "start": 55, "machine": 2, "duration": 3 }, { "task": 3, "start": 58, "machine": 3, "duration": 99 }, { "task": 4, "start": 157, "machine": 4, "duration": 91 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 165, "machine": 0, "duration": 78 }, { "task": 1, "start": 266, "machine": 1, "duration": 57 }, { "task": 2, "start": 367, "machine": 2, "duration": 77 }, { "task": 3, "start": 444, "machine": 3, "duration": 62 }, { "task": 4, "start": 515, "machine": 4, "duration": 35 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 102, "machine": 0, "duration": 38 }, { "task": 1, "start": 220, "machine": 1, "duration": 27 }, { "task": 2, "start": 299, "machine": 2, "duration": 35 }, { "task": 3, "start": 334, "machine": 3, "duration": 64 }, { "task": 4, "start": 398, "machine": 4, "duration": 37 } ] } ], "context_index": 1, "input_format": "json", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Many mornings we face the same puzzle: several print jobs each with a list of steps, same machine order for all, and decisions to make about when each step should begin so machines never do two things at once. Each operation must be performed in order and only once, and the yardstick of a good plan is the clock time when the final job is completed — simply the maximum finish time across the batch — which we want as small as we can. The precise job durations and machine order appear below.\n\n# num_print_jobs=11\n# num_machines=5\n# print_job_ids=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11\n# machine_ids=1, 2, 3, 4, 5\nprint_job_id,task_index,required_machine_id,processing_duration\nJ1,0,1,1\nJ1,1,2,65\nJ1,2,3,49\nJ1,3,4,72\nJ1,4,5,90\nJ2,0,1,42\nJ2,1,2,3\nJ2,2,3,19\nJ2,3,4,21\nJ2,4,5,19\nJ3,0,1,49\nJ3,1,2,34\nJ3,2,3,73\nJ3,3,4,49\nJ3,4,5,30\nJ4,0,1,77\nJ4,1,2,86\nJ4,2,3,33\nJ4,3,4,49\nJ4,4,5,87\nJ5,0,1,95\nJ5,1,2,53\nJ5,2,3,33\nJ5,3,4,1\nJ5,4,5,39\nJ6,0,1,66\nJ6,1,2,95\nJ6,2,3,12\nJ6,3,4,88\nJ6,4,5,15\nJ7,0,1,15\nJ7,1,2,77\nJ7,2,3,29\nJ7,3,4,5\nJ7,4,5,65\nJ8,0,1,12\nJ8,1,2,21\nJ8,2,3,53\nJ8,3,4,61\nJ8,4,5,71\nJ9,0,1,62\nJ9,1,2,25\nJ9,2,3,8\nJ9,3,4,40\nJ9,4,5,2\nJ10,0,1,13\nJ10,1,2,16\nJ10,2,3,5\nJ10,3,4,72\nJ10,4,5,76\nJ11,0,1,95\nJ11,1,2,54\nJ11,2,3,23\nJ11,3,4,82\nJ11,4,5,45\n\nAlso, to keep things clean on my end, please give the schedule using this simple JSON layout — nothing fancy, just the shape I can read easily:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nPretty straightforward: \"solution\" is a list of jobs; each entry has a \"job\" identifier and a list of \"tasks\". Each task tells me which step it is (\"task\"), when that step starts (\"start\"), which machine it runs on (\"machine\"), and how long it takes (\"duration\"). This is just a sketch of the shape I need, not the actual schedule.\n\nPlease make sure you use the exact identifiers from the instance input — no renaming and no new labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 5, "nr_jobs": 11, "jobs": [ [ [ 0, 1 ], [ 1, 65 ], [ 2, 49 ], [ 3, 72 ], [ 4, 90 ] ], [ [ 0, 42 ], [ 1, 3 ], [ 2, 19 ], [ 3, 21 ], [ 4, 19 ] ], [ [ 0, 49 ], [ 1, 34 ], [ 2, 73 ], [ 3, 49 ], [ 4, 30 ] ], [ [ 0, 77 ], [ 1, 86 ], [ 2, 33 ], [ 3, 49 ], [ 4, 87 ] ], [ [ 0, 95 ], [ 1, 53 ], [ 2, 33 ], [ 3, 1 ], [ 4, 39 ] ], [ [ 0, 66 ], [ 1, 95 ], [ 2, 12 ], [ 3, 88 ], [ 4, 15 ] ], [ [ 0, 15 ], [ 1, 77 ], [ 2, 29 ], [ 3, 5 ], [ 4, 65 ] ], [ [ 0, 12 ], [ 1, 21 ], [ 2, 53 ], [ 3, 61 ], [ 4, 71 ] ], [ [ 0, 62 ], [ 1, 25 ], [ 2, 8 ], [ 3, 40 ], [ 4, 2 ] ], [ [ 0, 13 ], [ 1, 16 ], [ 2, 5 ], [ 3, 72 ], [ 4, 76 ] ], [ [ 0, 95 ], [ 1, 54 ], [ 2, 23 ], [ 3, 82 ], [ 4, 45 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 86, "machine": 0, "duration": 1 }, { "task": 1, "start": 132, "machine": 1, "duration": 65 }, { "task": 2, "start": 197, "machine": 2, "duration": 49 }, { "task": 3, "start": 246, "machine": 3, "duration": 72 }, { "task": 4, "start": 318, "machine": 4, "duration": 90 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 40, "machine": 0, "duration": 42 }, { "task": 1, "start": 129, "machine": 1, "duration": 3 }, { "task": 2, "start": 158, "machine": 2, "duration": 19 }, { "task": 3, "start": 225, "machine": 3, "duration": 21 }, { "task": 4, "start": 483, "machine": 4, "duration": 19 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 182, "machine": 0, "duration": 49 }, { "task": 1, "start": 274, "machine": 1, "duration": 34 }, { "task": 2, "start": 321, "machine": 2, "duration": 73 }, { "task": 3, "start": 403, "machine": 3, "duration": 49 }, { "task": 4, "start": 453, "machine": 4, "duration": 30 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 231, "machine": 0, "duration": 77 }, { "task": 1, "start": 308, "machine": 1, "duration": 86 }, { "task": 2, "start": 419, "machine": 2, "duration": 33 }, { "task": 3, "start": 452, "machine": 3, "duration": 49 }, { "task": 4, "start": 502, "machine": 4, "duration": 87 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 374, "machine": 0, "duration": 95 }, { "task": 1, "start": 489, "machine": 1, "duration": 53 }, { "task": 2, "start": 542, "machine": 2, "duration": 33 }, { "task": 3, "start": 589, "machine": 3, "duration": 1 }, { "task": 4, "start": 604, "machine": 4, "duration": 39 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 308, "machine": 0, "duration": 66 }, { "task": 1, "start": 394, "machine": 1, "duration": 95 }, { "task": 2, "start": 489, "machine": 2, "duration": 12 }, { "task": 3, "start": 501, "machine": 3, "duration": 88 }, { "task": 4, "start": 589, "machine": 4, "duration": 15 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 25, "machine": 0, "duration": 15 }, { "task": 1, "start": 52, "machine": 1, "duration": 77 }, { "task": 2, "start": 129, "machine": 2, "duration": 29 }, { "task": 3, "start": 220, "machine": 3, "duration": 5 }, { "task": 4, "start": 253, "machine": 4, "duration": 65 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 13, "machine": 0, "duration": 12 }, { "task": 1, "start": 31, "machine": 1, "duration": 21 }, { "task": 2, "start": 52, "machine": 2, "duration": 53 }, { "task": 3, "start": 106, "machine": 3, "duration": 61 }, { "task": 4, "start": 182, "machine": 4, "duration": 71 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 469, "machine": 0, "duration": 62 }, { "task": 1, "start": 542, "machine": 1, "duration": 25 }, { "task": 2, "start": 575, "machine": 2, "duration": 8 }, { "task": 3, "start": 590, "machine": 3, "duration": 40 }, { "task": 4, "start": 643, "machine": 4, "duration": 2 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 13 }, { "task": 1, "start": 13, "machine": 1, "duration": 16 }, { "task": 2, "start": 29, "machine": 2, "duration": 5 }, { "task": 3, "start": 34, "machine": 3, "duration": 72 }, { "task": 4, "start": 106, "machine": 4, "duration": 76 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 87, "machine": 0, "duration": 95 }, { "task": 1, "start": 220, "machine": 1, "duration": 54 }, { "task": 2, "start": 298, "machine": 2, "duration": 23 }, { "task": 3, "start": 321, "machine": 3, "duration": 82 }, { "task": 4, "start": 408, "machine": 4, "duration": 45 } ] } ], "obj": 645.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 11, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11" ], "machines": [ 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 2, "duration": 65 }, { "job_id": "J1", "task_id": 2, "machine_id": 3, "duration": 49 }, { "job_id": "J1", "task_id": 3, "machine_id": 4, "duration": 72 }, { "job_id": "J1", "task_id": 4, "machine_id": 5, "duration": 90 }, { "job_id": "J2", "task_id": 0, "machine_id": 1, "duration": 42 }, { "job_id": "J2", "task_id": 1, "machine_id": 2, "duration": 3 }, { "job_id": "J2", "task_id": 2, "machine_id": 3, "duration": 19 }, { "job_id": "J2", "task_id": 3, "machine_id": 4, "duration": 21 }, { "job_id": "J2", "task_id": 4, "machine_id": 5, "duration": 19 }, { "job_id": "J3", "task_id": 0, "machine_id": 1, "duration": 49 }, { "job_id": "J3", "task_id": 1, "machine_id": 2, "duration": 34 }, { "job_id": "J3", "task_id": 2, "machine_id": 3, "duration": 73 }, { "job_id": "J3", "task_id": 3, "machine_id": 4, "duration": 49 }, { "job_id": "J3", "task_id": 4, "machine_id": 5, "duration": 30 }, { "job_id": "J4", "task_id": 0, "machine_id": 1, "duration": 77 }, { "job_id": "J4", "task_id": 1, "machine_id": 2, "duration": 86 }, { "job_id": "J4", "task_id": 2, "machine_id": 3, "duration": 33 }, { "job_id": "J4", "task_id": 3, "machine_id": 4, "duration": 49 }, { "job_id": "J4", "task_id": 4, "machine_id": 5, "duration": 87 }, { "job_id": "J5", "task_id": 0, "machine_id": 1, "duration": 95 }, { "job_id": "J5", "task_id": 1, "machine_id": 2, "duration": 53 }, { "job_id": "J5", "task_id": 2, "machine_id": 3, "duration": 33 }, { "job_id": "J5", "task_id": 3, "machine_id": 4, "duration": 1 }, { "job_id": "J5", "task_id": 4, "machine_id": 5, "duration": 39 }, { "job_id": "J6", "task_id": 0, "machine_id": 1, "duration": 66 }, { "job_id": "J6", "task_id": 1, "machine_id": 2, "duration": 95 }, { "job_id": "J6", "task_id": 2, "machine_id": 3, "duration": 12 }, { "job_id": "J6", "task_id": 3, "machine_id": 4, "duration": 88 }, { "job_id": "J6", "task_id": 4, "machine_id": 5, "duration": 15 }, { "job_id": "J7", "task_id": 0, "machine_id": 1, "duration": 15 }, { "job_id": "J7", "task_id": 1, "machine_id": 2, "duration": 77 }, { "job_id": "J7", "task_id": 2, "machine_id": 3, "duration": 29 }, { "job_id": "J7", "task_id": 3, "machine_id": 4, "duration": 5 }, { "job_id": "J7", "task_id": 4, "machine_id": 5, "duration": 65 }, { "job_id": "J8", "task_id": 0, "machine_id": 1, "duration": 12 }, { "job_id": "J8", "task_id": 1, "machine_id": 2, "duration": 21 }, { "job_id": "J8", "task_id": 2, "machine_id": 3, "duration": 53 }, { "job_id": "J8", "task_id": 3, "machine_id": 4, "duration": 61 }, { "job_id": "J8", "task_id": 4, "machine_id": 5, "duration": 71 }, { "job_id": "J9", "task_id": 0, "machine_id": 1, "duration": 62 }, { "job_id": "J9", "task_id": 1, "machine_id": 2, "duration": 25 }, { "job_id": "J9", "task_id": 2, "machine_id": 3, "duration": 8 }, { "job_id": "J9", "task_id": 3, "machine_id": 4, "duration": 40 }, { "job_id": "J9", "task_id": 4, "machine_id": 5, "duration": 2 }, { "job_id": "J10", "task_id": 0, "machine_id": 1, "duration": 13 }, { "job_id": "J10", "task_id": 1, "machine_id": 2, "duration": 16 }, { "job_id": "J10", "task_id": 2, "machine_id": 3, "duration": 5 }, { "job_id": "J10", "task_id": 3, "machine_id": 4, "duration": 72 }, { "job_id": "J10", "task_id": 4, "machine_id": 5, "duration": 76 }, { "job_id": "J11", "task_id": 0, "machine_id": 1, "duration": 95 }, { "job_id": "J11", "task_id": 1, "machine_id": 2, "duration": 54 }, { "job_id": "J11", "task_id": 2, "machine_id": 3, "duration": 23 }, { "job_id": "J11", "task_id": 3, "machine_id": 4, "duration": 82 }, { "job_id": "J11", "task_id": 4, "machine_id": 5, "duration": 45 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 86, "machine": 1, "duration": 1 }, { "task": 1, "start": 132, "machine": 2, "duration": 65 }, { "task": 2, "start": 197, "machine": 3, "duration": 49 }, { "task": 3, "start": 246, "machine": 4, "duration": 72 }, { "task": 4, "start": 318, "machine": 5, "duration": 90 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 40, "machine": 1, "duration": 42 }, { "task": 1, "start": 129, "machine": 2, "duration": 3 }, { "task": 2, "start": 158, "machine": 3, "duration": 19 }, { "task": 3, "start": 225, "machine": 4, "duration": 21 }, { "task": 4, "start": 483, "machine": 5, "duration": 19 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 182, "machine": 1, "duration": 49 }, { "task": 1, "start": 274, "machine": 2, "duration": 34 }, { "task": 2, "start": 321, "machine": 3, "duration": 73 }, { "task": 3, "start": 403, "machine": 4, "duration": 49 }, { "task": 4, "start": 453, "machine": 5, "duration": 30 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 231, "machine": 1, "duration": 77 }, { "task": 1, "start": 308, "machine": 2, "duration": 86 }, { "task": 2, "start": 419, "machine": 3, "duration": 33 }, { "task": 3, "start": 452, "machine": 4, "duration": 49 }, { "task": 4, "start": 502, "machine": 5, "duration": 87 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 374, "machine": 1, "duration": 95 }, { "task": 1, "start": 489, "machine": 2, "duration": 53 }, { "task": 2, "start": 542, "machine": 3, "duration": 33 }, { "task": 3, "start": 589, "machine": 4, "duration": 1 }, { "task": 4, "start": 604, "machine": 5, "duration": 39 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 308, "machine": 1, "duration": 66 }, { "task": 1, "start": 394, "machine": 2, "duration": 95 }, { "task": 2, "start": 489, "machine": 3, "duration": 12 }, { "task": 3, "start": 501, "machine": 4, "duration": 88 }, { "task": 4, "start": 589, "machine": 5, "duration": 15 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 25, "machine": 1, "duration": 15 }, { "task": 1, "start": 52, "machine": 2, "duration": 77 }, { "task": 2, "start": 129, "machine": 3, "duration": 29 }, { "task": 3, "start": 220, "machine": 4, "duration": 5 }, { "task": 4, "start": 253, "machine": 5, "duration": 65 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 13, "machine": 1, "duration": 12 }, { "task": 1, "start": 31, "machine": 2, "duration": 21 }, { "task": 2, "start": 52, "machine": 3, "duration": 53 }, { "task": 3, "start": 106, "machine": 4, "duration": 61 }, { "task": 4, "start": 182, "machine": 5, "duration": 71 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 469, "machine": 1, "duration": 62 }, { "task": 1, "start": 542, "machine": 2, "duration": 25 }, { "task": 2, "start": 575, "machine": 3, "duration": 8 }, { "task": 3, "start": 590, "machine": 4, "duration": 40 }, { "task": 4, "start": 643, "machine": 5, "duration": 2 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 0, "machine": 1, "duration": 13 }, { "task": 1, "start": 13, "machine": 2, "duration": 16 }, { "task": 2, "start": 29, "machine": 3, "duration": 5 }, { "task": 3, "start": 34, "machine": 4, "duration": 72 }, { "task": 4, "start": 106, "machine": 5, "duration": 76 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 87, "machine": 1, "duration": 95 }, { "task": 1, "start": 220, "machine": 2, "duration": 54 }, { "task": 2, "start": 298, "machine": 3, "duration": 23 }, { "task": 3, "start": 321, "machine": 4, "duration": 82 }, { "task": 4, "start": 408, "machine": 5, "duration": 45 } ] } ], "context_index": 2, "input_format": "csv", "input_index_base": 1 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Recently the shop got busier, so the lead detailer is laying out who goes when through the standard line of bays — every car follows the identical list of treatments and each treatment length is known in advance. The choice is about ordering and timing the cars so that bays never try to handle two cars at once and every vehicle completes each required stop exactly once. The best arrangement is the one that brings the finish time of the final car down as much as possible — just read the clock when that last car is done. The concrete details for this run are below.\n\nThe lead detailer lists 10 vehicles and 5 service bays: vehicles J1, J2, J3, J4, J5, J6, J7, J8, J9, J10 will pass in sequence through bays 0, 1, 2, 3, 4.\n\n| vehicle_id | step_index | required_bay_id | process_time |\n|---|---|---|---|\n| J1 | 0 | 0 | 1 |\n| J1 | 1 | 1 | 78 |\n| J1 | 2 | 2 | 25 |\n| J1 | 3 | 3 | 18 |\n| J1 | 4 | 4 | 44 |\n| J2 | 0 | 0 | 63 |\n| J2 | 1 | 1 | 7 |\n| J2 | 2 | 2 | 87 |\n| J2 | 3 | 3 | 89 |\n| J2 | 4 | 4 | 13 |\n| J3 | 0 | 0 | 87 |\n| J3 | 1 | 1 | 85 |\n| J3 | 2 | 2 | 56 |\n| J3 | 3 | 3 | 52 |\n| J3 | 4 | 4 | 35 |\n| J4 | 0 | 0 | 31 |\n| J4 | 1 | 1 | 53 |\n| J4 | 2 | 2 | 34 |\n| J4 | 3 | 3 | 87 |\n| J4 | 4 | 4 | 94 |\n| J5 | 0 | 0 | 37 |\n| J5 | 1 | 1 | 22 |\n| J5 | 2 | 2 | 91 |\n| J5 | 3 | 3 | 93 |\n| J5 | 4 | 4 | 23 |\n| J6 | 0 | 0 | 19 |\n| J6 | 1 | 1 | 5 |\n| J6 | 2 | 2 | 77 |\n| J6 | 3 | 3 | 31 |\n| J6 | 4 | 4 | 85 |\n| J7 | 0 | 0 | 6 |\n| J7 | 1 | 1 | 54 |\n| J7 | 2 | 2 | 55 |\n| J7 | 3 | 3 | 9 |\n| J7 | 4 | 4 | 39 |\n| J8 | 0 | 0 | 44 |\n| J8 | 1 | 1 | 83 |\n| J8 | 2 | 2 | 28 |\n| J8 | 3 | 3 | 60 |\n| J8 | 4 | 4 | 8 |\n| J9 | 0 | 0 | 87 |\n| J9 | 1 | 1 | 23 |\n| J9 | 2 | 2 | 79 |\n| J9 | 3 | 3 | 15 |\n| J9 | 4 | 4 | 67 |\n| J10 | 0 | 0 | 20 |\n| J10 | 1 | 1 | 79 |\n| J10 | 2 | 2 | 92 |\n| J10 | 3 | 3 | 99 |\n| J10 | 4 | 4 | 21 |\n\nKeep this list handy and arrange the cars so the clock reading when the final car is done is as small as possible.\n\nIf you want the schedule returned in a tidy, machine-friendly form, send it back following this little layout:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThis is just a quick sketch of the shape I expect: \"solution\" is a list of jobs (here, cars), each job has a \"tasks\" list, and each task entry records which task number it is, when it starts, which bay (machine) it uses, and how long that stop lasts. Think of it like filling out a simple progress card for every car.\n\nThe JSON above is only the format, not the actual schedule — please return your real answers in that same shape. Also, make sure to use the exact identifiers from the instance input — no renaming and no new labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 5, "nr_jobs": 10, "jobs": [ [ [ 0, 1 ], [ 1, 78 ], [ 2, 25 ], [ 3, 18 ], [ 4, 44 ] ], [ [ 0, 63 ], [ 1, 7 ], [ 2, 87 ], [ 3, 89 ], [ 4, 13 ] ], [ [ 0, 87 ], [ 1, 85 ], [ 2, 56 ], [ 3, 52 ], [ 4, 35 ] ], [ [ 0, 31 ], [ 1, 53 ], [ 2, 34 ], [ 3, 87 ], [ 4, 94 ] ], [ [ 0, 37 ], [ 1, 22 ], [ 2, 91 ], [ 3, 93 ], [ 4, 23 ] ], [ [ 0, 19 ], [ 1, 5 ], [ 2, 77 ], [ 3, 31 ], [ 4, 85 ] ], [ [ 0, 6 ], [ 1, 54 ], [ 2, 55 ], [ 3, 9 ], [ 4, 39 ] ], [ [ 0, 44 ], [ 1, 83 ], [ 2, 28 ], [ 3, 60 ], [ 4, 8 ] ], [ [ 0, 87 ], [ 1, 23 ], [ 2, 79 ], [ 3, 15 ], [ 4, 67 ] ], [ [ 0, 20 ], [ 1, 79 ], [ 2, 92 ], [ 3, 99 ], [ 4, 21 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 107, "machine": 0, "duration": 1 }, { "task": 1, "start": 293, "machine": 1, "duration": 78 }, { "task": 2, "start": 376, "machine": 2, "duration": 25 }, { "task": 3, "start": 472, "machine": 3, "duration": 18 }, { "task": 4, "start": 528, "machine": 4, "duration": 44 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 239, "machine": 0, "duration": 63 }, { "task": 1, "start": 371, "machine": 1, "duration": 7 }, { "task": 2, "start": 401, "machine": 2, "duration": 87 }, { "task": 3, "start": 490, "machine": 3, "duration": 89 }, { "task": 4, "start": 579, "machine": 4, "duration": 13 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 108, "machine": 0, "duration": 87 }, { "task": 1, "start": 208, "machine": 1, "duration": 85 }, { "task": 2, "start": 320, "machine": 2, "duration": 56 }, { "task": 3, "start": 420, "machine": 3, "duration": 52 }, { "task": 4, "start": 472, "machine": 4, "duration": 35 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 19, "machine": 0, "duration": 31 }, { "task": 1, "start": 50, "machine": 1, "duration": 53 }, { "task": 2, "start": 103, "machine": 2, "duration": 34 }, { "task": 3, "start": 137, "machine": 3, "duration": 87 }, { "task": 4, "start": 224, "machine": 4, "duration": 94 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 70, "machine": 0, "duration": 37 }, { "task": 1, "start": 107, "machine": 1, "duration": 22 }, { "task": 2, "start": 137, "machine": 2, "duration": 91 }, { "task": 3, "start": 228, "machine": 3, "duration": 93 }, { "task": 4, "start": 321, "machine": 4, "duration": 23 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 19 }, { "task": 1, "start": 19, "machine": 1, "duration": 5 }, { "task": 2, "start": 24, "machine": 2, "duration": 77 }, { "task": 3, "start": 101, "machine": 3, "duration": 31 }, { "task": 4, "start": 344, "machine": 4, "duration": 85 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 389, "machine": 0, "duration": 6 }, { "task": 1, "start": 495, "machine": 1, "duration": 54 }, { "task": 2, "start": 595, "machine": 2, "duration": 55 }, { "task": 3, "start": 655, "machine": 3, "duration": 9 }, { "task": 4, "start": 669, "machine": 4, "duration": 39 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 195, "machine": 0, "duration": 44 }, { "task": 1, "start": 412, "machine": 1, "duration": 83 }, { "task": 2, "start": 567, "machine": 2, "duration": 28 }, { "task": 3, "start": 595, "machine": 3, "duration": 60 }, { "task": 4, "start": 661, "machine": 4, "duration": 8 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 302, "machine": 0, "duration": 87 }, { "task": 1, "start": 389, "machine": 1, "duration": 23 }, { "task": 2, "start": 488, "machine": 2, "duration": 79 }, { "task": 3, "start": 579, "machine": 3, "duration": 15 }, { "task": 4, "start": 594, "machine": 4, "duration": 67 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 50, "machine": 0, "duration": 20 }, { "task": 1, "start": 129, "machine": 1, "duration": 79 }, { "task": 2, "start": 228, "machine": 2, "duration": 92 }, { "task": 3, "start": 321, "machine": 3, "duration": 99 }, { "task": 4, "start": 507, "machine": 4, "duration": 21 } ] } ], "obj": 708.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 10, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10" ], "machines": [ 0, 1, 2, 3, 4 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 78 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 25 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 18 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 44 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 63 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 7 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 87 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 89 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 13 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 87 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 85 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 56 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 52 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 35 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 31 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 53 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 34 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 87 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 94 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 37 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 22 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 91 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 93 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 23 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 19 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 5 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 77 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 31 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 85 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 6 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 54 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 55 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 9 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 39 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 44 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 83 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 28 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 60 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 8 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 87 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 23 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 79 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 15 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 67 }, { "job_id": "J10", "task_id": 0, "machine_id": 0, "duration": 20 }, { "job_id": "J10", "task_id": 1, "machine_id": 1, "duration": 79 }, { "job_id": "J10", "task_id": 2, "machine_id": 2, "duration": 92 }, { "job_id": "J10", "task_id": 3, "machine_id": 3, "duration": 99 }, { "job_id": "J10", "task_id": 4, "machine_id": 4, "duration": 21 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 107, "machine": 0, "duration": 1 }, { "task": 1, "start": 293, "machine": 1, "duration": 78 }, { "task": 2, "start": 376, "machine": 2, "duration": 25 }, { "task": 3, "start": 472, "machine": 3, "duration": 18 }, { "task": 4, "start": 528, "machine": 4, "duration": 44 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 239, "machine": 0, "duration": 63 }, { "task": 1, "start": 371, "machine": 1, "duration": 7 }, { "task": 2, "start": 401, "machine": 2, "duration": 87 }, { "task": 3, "start": 490, "machine": 3, "duration": 89 }, { "task": 4, "start": 579, "machine": 4, "duration": 13 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 108, "machine": 0, "duration": 87 }, { "task": 1, "start": 208, "machine": 1, "duration": 85 }, { "task": 2, "start": 320, "machine": 2, "duration": 56 }, { "task": 3, "start": 420, "machine": 3, "duration": 52 }, { "task": 4, "start": 472, "machine": 4, "duration": 35 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 19, "machine": 0, "duration": 31 }, { "task": 1, "start": 50, "machine": 1, "duration": 53 }, { "task": 2, "start": 103, "machine": 2, "duration": 34 }, { "task": 3, "start": 137, "machine": 3, "duration": 87 }, { "task": 4, "start": 224, "machine": 4, "duration": 94 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 70, "machine": 0, "duration": 37 }, { "task": 1, "start": 107, "machine": 1, "duration": 22 }, { "task": 2, "start": 137, "machine": 2, "duration": 91 }, { "task": 3, "start": 228, "machine": 3, "duration": 93 }, { "task": 4, "start": 321, "machine": 4, "duration": 23 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 19 }, { "task": 1, "start": 19, "machine": 1, "duration": 5 }, { "task": 2, "start": 24, "machine": 2, "duration": 77 }, { "task": 3, "start": 101, "machine": 3, "duration": 31 }, { "task": 4, "start": 344, "machine": 4, "duration": 85 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 389, "machine": 0, "duration": 6 }, { "task": 1, "start": 495, "machine": 1, "duration": 54 }, { "task": 2, "start": 595, "machine": 2, "duration": 55 }, { "task": 3, "start": 655, "machine": 3, "duration": 9 }, { "task": 4, "start": 669, "machine": 4, "duration": 39 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 195, "machine": 0, "duration": 44 }, { "task": 1, "start": 412, "machine": 1, "duration": 83 }, { "task": 2, "start": 567, "machine": 2, "duration": 28 }, { "task": 3, "start": 595, "machine": 3, "duration": 60 }, { "task": 4, "start": 661, "machine": 4, "duration": 8 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 302, "machine": 0, "duration": 87 }, { "task": 1, "start": 389, "machine": 1, "duration": 23 }, { "task": 2, "start": 488, "machine": 2, "duration": 79 }, { "task": 3, "start": 579, "machine": 3, "duration": 15 }, { "task": 4, "start": 594, "machine": 4, "duration": 67 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 50, "machine": 0, "duration": 20 }, { "task": 1, "start": 129, "machine": 1, "duration": 79 }, { "task": 2, "start": 228, "machine": 2, "duration": 92 }, { "task": 3, "start": 321, "machine": 3, "duration": 99 }, { "task": 4, "start": 507, "machine": 4, "duration": 21 } ] } ], "context_index": 3, "input_format": "markdown_table", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "I run the laundry line and have to lay out a simple timetable so every shirt, dress, and towel moves through the same sequence of care stations — each step takes a fixed amount of time. The job is to decide when each garment goes to each station so no station is juggling two items at once and every garment visits every step exactly once. The calendar moment when the very last item leaves the final station is the one to watch — faster that moment, better the plan — so plans are judged by that finishing time. The exact garments, stations, and step lengths are shown below.\n\nI list 9 garments and 5 stations: J1, J2, J3, J4, J5, J6, J7, J8, J9 and A, B, C, D, E.\n\n| garment_id | step_index | station_id | operation_duration |\n|---|---|---|---|\n| J1 | 0 | A | 1 |\n| J1 | 1 | B | 92 |\n| J1 | 2 | C | 1 |\n| J1 | 3 | D | 64 |\n| J1 | 4 | E | 97 |\n| J2 | 0 | A | 85 |\n| J2 | 1 | B | 12 |\n| J2 | 2 | C | 55 |\n| J2 | 3 | D | 57 |\n| J2 | 4 | E | 7 |\n| J3 | 0 | A | 26 |\n| J3 | 1 | B | 37 |\n| J3 | 2 | C | 39 |\n| J3 | 3 | D | 56 |\n| J3 | 4 | E | 41 |\n| J4 | 0 | A | 83 |\n| J4 | 1 | B | 20 |\n| J4 | 2 | C | 35 |\n| J4 | 3 | D | 26 |\n| J4 | 4 | E | 1 |\n| J5 | 0 | A | 78 |\n| J5 | 1 | B | 90 |\n| J5 | 2 | C | 50 |\n| J5 | 3 | D | 87 |\n| J5 | 4 | E | 8 |\n| J6 | 0 | A | 71 |\n| J6 | 1 | B | 14 |\n| J6 | 2 | C | 43 |\n| J6 | 3 | D | 72 |\n| J6 | 4 | E | 55 |\n| J7 | 0 | A | 96 |\n| J7 | 1 | B | 30 |\n| J7 | 2 | C | 81 |\n| J7 | 3 | D | 14 |\n| J7 | 4 | E | 13 |\n| J8 | 0 | A | 77 |\n| J8 | 1 | B | 47 |\n| J8 | 2 | C | 4 |\n| J8 | 3 | D | 60 |\n| J8 | 4 | E | 44 |\n| J9 | 0 | A | 12 |\n| J9 | 1 | B | 22 |\n| J9 | 2 | C | 52 |\n| J9 | 3 | D | 90 |\n| J9 | 4 | E | 32 |\n\nI'll use these entries to schedule every garment through the stations and minimize the finishing time.\n\nIf you want the plan back from me, it's easiest if we stick to a little JSON shape so it's predictable. Something like this will do:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of this as a simple form: \"solution\" is the list of garments (jobs), each garment entry gives its job id and a list of tasks. Each task line says which step it is (task), when that step starts (start), which station it uses (machine), and how long that step takes (duration). Super casual — it's just so we both know what to expect.\n\nThis is only a sketch of the expected shape, not the actual timetable. Please use the exact identifiers from the instance input — don't rename them or invent new labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 5, "nr_jobs": 9, "jobs": [ [ [ 0, 1 ], [ 1, 92 ], [ 2, 1 ], [ 3, 64 ], [ 4, 97 ] ], [ [ 0, 85 ], [ 1, 12 ], [ 2, 55 ], [ 3, 57 ], [ 4, 7 ] ], [ [ 0, 26 ], [ 1, 37 ], [ 2, 39 ], [ 3, 56 ], [ 4, 41 ] ], [ [ 0, 83 ], [ 1, 20 ], [ 2, 35 ], [ 3, 26 ], [ 4, 1 ] ], [ [ 0, 78 ], [ 1, 90 ], [ 2, 50 ], [ 3, 87 ], [ 4, 8 ] ], [ [ 0, 71 ], [ 1, 14 ], [ 2, 43 ], [ 3, 72 ], [ 4, 55 ] ], [ [ 0, 96 ], [ 1, 30 ], [ 2, 81 ], [ 3, 14 ], [ 4, 13 ] ], [ [ 0, 77 ], [ 1, 47 ], [ 2, 4 ], [ 3, 60 ], [ 4, 44 ] ], [ [ 0, 12 ], [ 1, 22 ], [ 2, 52 ], [ 3, 90 ], [ 4, 32 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 12, "machine": 0, "duration": 1 }, { "task": 1, "start": 34, "machine": 1, "duration": 92 }, { "task": 2, "start": 126, "machine": 2, "duration": 1 }, { "task": 3, "start": 176, "machine": 3, "duration": 64 }, { "task": 4, "start": 240, "machine": 4, "duration": 97 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 361, "machine": 0, "duration": 85 }, { "task": 1, "start": 446, "machine": 1, "duration": 12 }, { "task": 2, "start": 458, "machine": 2, "duration": 55 }, { "task": 3, "start": 515, "machine": 3, "duration": 57 }, { "task": 4, "start": 572, "machine": 4, "duration": 7 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 162, "machine": 0, "duration": 26 }, { "task": 1, "start": 188, "machine": 1, "duration": 37 }, { "task": 2, "start": 225, "machine": 2, "duration": 39 }, { "task": 3, "start": 312, "machine": 3, "duration": 56 }, { "task": 4, "start": 392, "machine": 4, "duration": 41 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 446, "machine": 0, "duration": 83 }, { "task": 1, "start": 529, "machine": 1, "duration": 20 }, { "task": 2, "start": 549, "machine": 2, "duration": 35 }, { "task": 3, "start": 586, "machine": 3, "duration": 26 }, { "task": 4, "start": 612, "machine": 4, "duration": 1 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 13, "machine": 0, "duration": 78 }, { "task": 1, "start": 225, "machine": 1, "duration": 90 }, { "task": 2, "start": 315, "machine": 2, "duration": 50 }, { "task": 3, "start": 368, "machine": 3, "duration": 87 }, { "task": 4, "start": 455, "machine": 4, "duration": 8 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 91, "machine": 0, "duration": 71 }, { "task": 1, "start": 162, "machine": 1, "duration": 14 }, { "task": 2, "start": 176, "machine": 2, "duration": 43 }, { "task": 3, "start": 240, "machine": 3, "duration": 72 }, { "task": 4, "start": 337, "machine": 4, "duration": 55 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 188, "machine": 0, "duration": 96 }, { "task": 1, "start": 315, "machine": 1, "duration": 30 }, { "task": 2, "start": 365, "machine": 2, "duration": 81 }, { "task": 3, "start": 572, "machine": 3, "duration": 14 }, { "task": 4, "start": 586, "machine": 4, "duration": 13 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 284, "machine": 0, "duration": 77 }, { "task": 1, "start": 361, "machine": 1, "duration": 47 }, { "task": 2, "start": 446, "machine": 2, "duration": 4 }, { "task": 3, "start": 455, "machine": 3, "duration": 60 }, { "task": 4, "start": 515, "machine": 4, "duration": 44 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 12 }, { "task": 1, "start": 12, "machine": 1, "duration": 22 }, { "task": 2, "start": 34, "machine": 2, "duration": 52 }, { "task": 3, "start": 86, "machine": 3, "duration": 90 }, { "task": 4, "start": 176, "machine": 4, "duration": 32 } ] } ], "obj": 613.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 9, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9" ], "machines": [ "A", "B", "C", "D", "E" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 92 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 1 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 64 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 97 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 85 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 12 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 55 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 57 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 7 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 26 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 37 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 39 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 56 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 41 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 83 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 20 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 35 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 26 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 1 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 78 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 90 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 50 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 87 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 8 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 71 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 14 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 43 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 72 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 55 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 96 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 30 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 81 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 14 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 13 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 77 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 47 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 4 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 60 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 44 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 12 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 22 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 52 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 90 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 32 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 12, "machine": "A", "duration": 1 }, { "task": 1, "start": 34, "machine": "B", "duration": 92 }, { "task": 2, "start": 126, "machine": "C", "duration": 1 }, { "task": 3, "start": 176, "machine": "D", "duration": 64 }, { "task": 4, "start": 240, "machine": "E", "duration": 97 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 361, "machine": "A", "duration": 85 }, { "task": 1, "start": 446, "machine": "B", "duration": 12 }, { "task": 2, "start": 458, "machine": "C", "duration": 55 }, { "task": 3, "start": 515, "machine": "D", "duration": 57 }, { "task": 4, "start": 572, "machine": "E", "duration": 7 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 162, "machine": "A", "duration": 26 }, { "task": 1, "start": 188, "machine": "B", "duration": 37 }, { "task": 2, "start": 225, "machine": "C", "duration": 39 }, { "task": 3, "start": 312, "machine": "D", "duration": 56 }, { "task": 4, "start": 392, "machine": "E", "duration": 41 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 446, "machine": "A", "duration": 83 }, { "task": 1, "start": 529, "machine": "B", "duration": 20 }, { "task": 2, "start": 549, "machine": "C", "duration": 35 }, { "task": 3, "start": 586, "machine": "D", "duration": 26 }, { "task": 4, "start": 612, "machine": "E", "duration": 1 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 13, "machine": "A", "duration": 78 }, { "task": 1, "start": 225, "machine": "B", "duration": 90 }, { "task": 2, "start": 315, "machine": "C", "duration": 50 }, { "task": 3, "start": 368, "machine": "D", "duration": 87 }, { "task": 4, "start": 455, "machine": "E", "duration": 8 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 91, "machine": "A", "duration": 71 }, { "task": 1, "start": 162, "machine": "B", "duration": 14 }, { "task": 2, "start": 176, "machine": "C", "duration": 43 }, { "task": 3, "start": 240, "machine": "D", "duration": 72 }, { "task": 4, "start": 337, "machine": "E", "duration": 55 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 188, "machine": "A", "duration": 96 }, { "task": 1, "start": 315, "machine": "B", "duration": 30 }, { "task": 2, "start": 365, "machine": "C", "duration": 81 }, { "task": 3, "start": 572, "machine": "D", "duration": 14 }, { "task": 4, "start": 586, "machine": "E", "duration": 13 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 284, "machine": "A", "duration": 77 }, { "task": 1, "start": 361, "machine": "B", "duration": 47 }, { "task": 2, "start": 446, "machine": "C", "duration": 4 }, { "task": 3, "start": 455, "machine": "D", "duration": 60 }, { "task": 4, "start": 515, "machine": "E", "duration": 44 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 12 }, { "task": 1, "start": 12, "machine": "B", "duration": 22 }, { "task": 2, "start": 34, "machine": "C", "duration": 52 }, { "task": 3, "start": 86, "machine": "D", "duration": 90 }, { "task": 4, "start": 176, "machine": "E", "duration": 32 } ] } ], "context_index": 4, "input_format": "markdown_table", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Many people treat the line like a relay: every circuit board hands off from station to station in the same order, and the supervisor decides the handoff times. The rules are straightforward — keep the sequence intact for each board, never put two boards on a single machine at once, and don’t skip or repeat tasks. The quality of a schedule is simply how early the last board is finished, i.e., the time when the whole batch is done. The specific boards and step durations follow below.\n\n{\n \"num_boards\": 12,\n \"num_workstations\": 5,\n \"board_ids\": [\n \"J1\",\n \"J2\",\n \"J3\",\n \"J4\",\n \"J5\",\n \"J6\",\n \"J7\",\n \"J8\",\n \"J9\",\n \"J10\",\n \"J11\",\n \"J12\"\n ],\n \"workstation_ids\": [\n \"A\",\n \"B\",\n \"C\",\n \"D\",\n \"E\"\n ],\n \"tasks\": [\n {\n \"board_id\": \"J1\",\n \"step_index\": 0,\n \"workstation_id\": \"A\",\n \"processing_time\": 1\n },\n {\n \"board_id\": \"J1\",\n \"step_index\": 1,\n \"workstation_id\": \"B\",\n \"processing_time\": 6\n },\n {\n \"board_id\": \"J1\",\n \"step_index\": 2,\n \"workstation_id\": \"C\",\n \"processing_time\": 76\n },\n {\n \"board_id\": \"J1\",\n \"step_index\": 3,\n \"workstation_id\": \"D\",\n \"processing_time\": 10\n },\n {\n \"board_id\": \"J1\",\n \"step_index\": 4,\n \"workstation_id\": \"E\",\n \"processing_time\": 51\n },\n {\n \"board_id\": \"J2\",\n \"step_index\": 0,\n \"workstation_id\": \"A\",\n \"processing_time\": 8\n },\n {\n \"board_id\": \"J2\",\n \"step_index\": 1,\n \"workstation_id\": \"B\",\n \"processing_time\": 17\n },\n {\n \"board_id\": \"J2\",\n \"step_index\": 2,\n \"workstation_id\": \"C\",\n \"processing_time\": 23\n },\n {\n \"board_id\": \"J2\",\n \"step_index\": 3,\n \"workstation_id\": \"D\",\n \"processing_time\": 25\n },\n {\n \"board_id\": \"J2\",\n \"step_index\": 4,\n \"workstation_id\": \"E\",\n \"processing_time\": 99\n },\n {\n \"board_id\": \"J3\",\n \"step_index\": 0,\n \"workstation_id\": \"A\",\n \"processing_time\": 64\n },\n {\n \"board_id\": \"J3\",\n \"step_index\": 1,\n \"workstation_id\": \"B\",\n \"processing_time\": 89\n },\n {\n \"board_id\": \"J3\",\n \"step_index\": 2,\n \"workstation_id\": \"C\",\n \"processing_time\": 23\n },\n {\n \"board_id\": \"J3\",\n \"step_index\": 3,\n \"workstation_id\": \"D\",\n \"processing_time\": 59\n },\n {\n \"board_id\": \"J3\",\n \"step_index\": 4,\n \"workstation_id\": \"E\",\n \"processing_time\": 46\n },\n {\n \"board_id\": \"J4\",\n \"step_index\": 0,\n \"workstation_id\": \"A\",\n \"processing_time\": 37\n },\n {\n \"board_id\": \"J4\",\n \"step_index\": 1,\n \"workstation_id\": \"B\",\n \"processing_time\": 87\n },\n {\n \"board_id\": \"J4\",\n \"step_index\": 2,\n \"workstation_id\": \"C\",\n \"processing_time\": 36\n },\n {\n \"board_id\": \"J4\",\n \"step_index\": 3,\n \"workstation_id\": \"D\",\n \"processing_time\": 64\n },\n {\n \"board_id\": \"J4\",\n \"step_index\": 4,\n \"workstation_id\": \"E\",\n \"processing_time\": 8\n },\n {\n \"board_id\": \"J5\",\n \"step_index\": 0,\n \"workstation_id\": \"A\",\n \"processing_time\": 21\n },\n {\n \"board_id\": \"J5\",\n \"step_index\": 1,\n \"workstation_id\": \"B\",\n \"processing_time\": 59\n },\n {\n \"board_id\": \"J5\",\n \"step_index\": 2,\n \"workstation_id\": \"C\",\n \"processing_time\": 10\n },\n {\n \"board_id\": \"J5\",\n \"step_index\": 3,\n \"workstation_id\": \"D\",\n \"processing_time\": 80\n },\n {\n \"board_id\": \"J5\",\n \"step_index\": 4,\n \"workstation_id\": \"E\",\n \"processing_time\": 92\n },\n {\n \"board_id\": \"J6\",\n \"step_index\": 0,\n \"workstation_id\": \"A\",\n \"processing_time\": 24\n },\n {\n \"board_id\": \"J6\",\n \"step_index\": 1,\n \"workstation_id\": \"B\",\n \"processing_time\": 23\n },\n {\n \"board_id\": \"J6\",\n \"step_index\": 2,\n \"workstation_id\": \"C\",\n \"processing_time\": 8\n },\n {\n \"board_id\": \"J6\",\n \"step_index\": 3,\n \"workstation_id\": \"D\",\n \"processing_time\": 14\n },\n {\n \"board_id\": \"J6\",\n \"step_index\": 4,\n \"workstation_id\": \"E\",\n \"processing_time\": 26\n },\n {\n \"board_id\": \"J7\",\n \"step_index\": 0,\n \"workstation_id\": \"A\",\n \"processing_time\": 87\n },\n {\n \"board_id\": \"J7\",\n \"step_index\": 1,\n \"workstation_id\": \"B\",\n \"processing_time\": 7\n },\n {\n \"board_id\": \"J7\",\n \"step_index\": 2,\n \"workstation_id\": \"C\",\n \"processing_time\": 8\n },\n {\n \"board_id\": \"J7\",\n \"step_index\": 3,\n \"workstation_id\": \"D\",\n \"processing_time\": 19\n },\n {\n \"board_id\": \"J7\",\n \"step_index\": 4,\n \"workstation_id\": \"E\",\n \"processing_time\": 86\n },\n {\n \"board_id\": \"J8\",\n \"step_index\": 0,\n \"workstation_id\": \"A\",\n \"processing_time\": 10\n },\n {\n \"board_id\": \"J8\",\n \"step_index\": 1,\n \"workstation_id\": \"B\",\n \"processing_time\": 11\n },\n {\n \"board_id\": \"J8\",\n \"step_index\": 2,\n \"workstation_id\": \"C\",\n \"processing_time\": 79\n },\n {\n \"board_id\": \"J8\",\n \"step_index\": 3,\n \"workstation_id\": \"D\",\n \"processing_time\": 59\n },\n {\n \"board_id\": \"J8\",\n \"step_index\": 4,\n \"workstation_id\": \"E\",\n \"processing_time\": 80\n },\n {\n \"board_id\": \"J9\",\n \"step_index\": 0,\n \"workstation_id\": \"A\",\n \"processing_time\": 37\n },\n {\n \"board_id\": \"J9\",\n \"step_index\": 1,\n \"workstation_id\": \"B\",\n \"processing_time\": 20\n },\n {\n \"board_id\": \"J9\",\n \"step_index\": 2,\n \"workstation_id\": \"C\",\n \"processing_time\": 24\n },\n {\n \"board_id\": \"J9\",\n \"step_index\": 3,\n \"workstation_id\": \"D\",\n \"processing_time\": 65\n },\n {\n \"board_id\": \"J9\",\n \"step_index\": 4,\n \"workstation_id\": \"E\",\n \"processing_time\": 97\n },\n {\n \"board_id\": \"J10\",\n \"step_index\": 0,\n \"workstation_id\": \"A\",\n \"processing_time\": 35\n },\n {\n \"board_id\": \"J10\",\n \"step_index\": 1,\n \"workstation_id\": \"B\",\n \"processing_time\": 6\n },\n {\n \"board_id\": \"J10\",\n \"step_index\": 2,\n \"workstation_id\": \"C\",\n \"processing_time\": 69\n },\n {\n \"board_id\": \"J10\",\n \"step_index\": 3,\n \"workstation_id\": \"D\",\n \"processing_time\": 54\n },\n {\n \"board_id\": \"J10\",\n \"step_index\": 4,\n \"workstation_id\": \"E\",\n \"processing_time\": 8\n },\n {\n \"board_id\": \"J11\",\n \"step_index\": 0,\n \"workstation_id\": \"A\",\n \"processing_time\": 26\n },\n {\n \"board_id\": \"J11\",\n \"step_index\": 1,\n \"workstation_id\": \"B\",\n \"processing_time\": 97\n },\n {\n \"board_id\": \"J11\",\n \"step_index\": 2,\n \"workstation_id\": \"C\",\n \"processing_time\": 93\n },\n {\n \"board_id\": \"J11\",\n \"step_index\": 3,\n \"workstation_id\": \"D\",\n \"processing_time\": 64\n },\n {\n \"board_id\": \"J11\",\n \"step_index\": 4,\n \"workstation_id\": \"E\",\n \"processing_time\": 53\n },\n {\n \"board_id\": \"J12\",\n \"step_index\": 0,\n \"workstation_id\": \"A\",\n \"processing_time\": 66\n },\n {\n \"board_id\": \"J12\",\n \"step_index\": 1,\n \"workstation_id\": \"B\",\n \"processing_time\": 38\n },\n {\n \"board_id\": \"J12\",\n \"step_index\": 2,\n \"workstation_id\": \"C\",\n \"processing_time\": 29\n },\n {\n \"board_id\": \"J12\",\n \"step_index\": 3,\n \"workstation_id\": \"D\",\n \"processing_time\": 82\n },\n {\n \"board_id\": \"J12\",\n \"step_index\": 4,\n \"workstation_id\": \"E\",\n \"processing_time\": 78\n }\n ]\n}\n\nIf you prefer to hand the plan over in a tidy format, a small JSON shape like this is perfect — nothing fancy, just the fields I need to read the schedule.\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of it as a simple form: \"solution\" holds a list of boards (jobs), each board gets a job identifier in \"job\", and a \"tasks\" list with each step's index, its planned start time, which machine it runs on, and how long it takes. It's just a sketch of the shape I expect — not the real schedule yet.\n\nPlease be sure to use the exact identifiers from the instance input — don't rename them or invent new ones. Valid identifiers look like plain numbers such as \"1\" or \"23\", single capital letters like \"A\" or \"B\", or a capital letter followed by digits like \"A1\" or \"X7\".", "instance": { "nr_machines": 5, "nr_jobs": 12, "jobs": [ [ [ 0, 1 ], [ 1, 6 ], [ 2, 76 ], [ 3, 10 ], [ 4, 51 ] ], [ [ 0, 8 ], [ 1, 17 ], [ 2, 23 ], [ 3, 25 ], [ 4, 99 ] ], [ [ 0, 64 ], [ 1, 89 ], [ 2, 23 ], [ 3, 59 ], [ 4, 46 ] ], [ [ 0, 37 ], [ 1, 87 ], [ 2, 36 ], [ 3, 64 ], [ 4, 8 ] ], [ [ 0, 21 ], [ 1, 59 ], [ 2, 10 ], [ 3, 80 ], [ 4, 92 ] ], [ [ 0, 24 ], [ 1, 23 ], [ 2, 8 ], [ 3, 14 ], [ 4, 26 ] ], [ [ 0, 87 ], [ 1, 7 ], [ 2, 8 ], [ 3, 19 ], [ 4, 86 ] ], [ [ 0, 10 ], [ 1, 11 ], [ 2, 79 ], [ 3, 59 ], [ 4, 80 ] ], [ [ 0, 37 ], [ 1, 20 ], [ 2, 24 ], [ 3, 65 ], [ 4, 97 ] ], [ [ 0, 35 ], [ 1, 6 ], [ 2, 69 ], [ 3, 54 ], [ 4, 8 ] ], [ [ 0, 26 ], [ 1, 97 ], [ 2, 93 ], [ 3, 64 ], [ 4, 53 ] ], [ [ 0, 66 ], [ 1, 38 ], [ 2, 29 ], [ 3, 82 ], [ 4, 78 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 29, "machine": 0, "duration": 1 }, { "task": 1, "start": 30, "machine": 1, "duration": 6 }, { "task": 2, "start": 48, "machine": 2, "duration": 76 }, { "task": 3, "start": 124, "machine": 3, "duration": 10 }, { "task": 4, "start": 172, "machine": 4, "duration": 51 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 8 }, { "task": 1, "start": 8, "machine": 1, "duration": 17 }, { "task": 2, "start": 25, "machine": 2, "duration": 23 }, { "task": 3, "start": 48, "machine": 3, "duration": 25 }, { "task": 4, "start": 73, "machine": 4, "duration": 99 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 326, "machine": 0, "duration": 64 }, { "task": 1, "start": 390, "machine": 1, "duration": 89 }, { "task": 2, "start": 479, "machine": 2, "duration": 23 }, { "task": 3, "start": 550, "machine": 3, "duration": 59 }, { "task": 4, "start": 682, "machine": 4, "duration": 46 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 155, "machine": 0, "duration": 37 }, { "task": 1, "start": 259, "machine": 1, "duration": 87 }, { "task": 2, "start": 367, "machine": 2, "duration": 36 }, { "task": 3, "start": 467, "machine": 3, "duration": 64 }, { "task": 4, "start": 736, "machine": 4, "duration": 8 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 8, "machine": 0, "duration": 21 }, { "task": 1, "start": 36, "machine": 1, "duration": 59 }, { "task": 2, "start": 124, "machine": 2, "duration": 10 }, { "task": 3, "start": 134, "machine": 3, "duration": 80 }, { "task": 4, "start": 223, "machine": 4, "duration": 92 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 131, "machine": 0, "duration": 24 }, { "task": 1, "start": 155, "machine": 1, "duration": 23 }, { "task": 2, "start": 209, "machine": 2, "duration": 8 }, { "task": 3, "start": 217, "machine": 3, "duration": 14 }, { "task": 4, "start": 315, "machine": 4, "duration": 26 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 239, "machine": 0, "duration": 87 }, { "task": 1, "start": 346, "machine": 1, "duration": 7 }, { "task": 2, "start": 403, "machine": 2, "duration": 8 }, { "task": 3, "start": 531, "machine": 3, "duration": 19 }, { "task": 4, "start": 596, "machine": 4, "duration": 86 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 192, "machine": 0, "duration": 10 }, { "task": 1, "start": 202, "machine": 1, "duration": 11 }, { "task": 2, "start": 264, "machine": 2, "duration": 79 }, { "task": 3, "start": 343, "machine": 3, "duration": 59 }, { "task": 4, "start": 419, "machine": 4, "duration": 80 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 202, "machine": 0, "duration": 37 }, { "task": 1, "start": 239, "machine": 1, "duration": 20 }, { "task": 2, "start": 343, "machine": 2, "duration": 24 }, { "task": 3, "start": 402, "machine": 3, "duration": 65 }, { "task": 4, "start": 499, "machine": 4, "duration": 97 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 96, "machine": 0, "duration": 35 }, { "task": 1, "start": 134, "machine": 1, "duration": 6 }, { "task": 2, "start": 140, "machine": 2, "duration": 69 }, { "task": 3, "start": 609, "machine": 3, "duration": 54 }, { "task": 4, "start": 728, "machine": 4, "duration": 8 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 390, "machine": 0, "duration": 26 }, { "task": 1, "start": 479, "machine": 1, "duration": 97 }, { "task": 2, "start": 576, "machine": 2, "duration": 93 }, { "task": 3, "start": 669, "machine": 3, "duration": 64 }, { "task": 4, "start": 744, "machine": 4, "duration": 53 } ] }, { "job": 11, "tasks": [ { "task": 0, "start": 30, "machine": 0, "duration": 66 }, { "task": 1, "start": 96, "machine": 1, "duration": 38 }, { "task": 2, "start": 217, "machine": 2, "duration": 29 }, { "task": 3, "start": 246, "machine": 3, "duration": 82 }, { "task": 4, "start": 341, "machine": 4, "duration": 78 } ] } ], "obj": 797.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 12, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11", "J12" ], "machines": [ "A", "B", "C", "D", "E" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 6 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 76 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 10 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 51 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 8 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 17 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 23 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 25 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 99 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 64 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 89 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 23 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 59 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 46 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 37 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 87 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 36 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 64 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 8 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 21 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 59 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 10 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 80 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 92 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 24 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 23 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 8 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 14 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 26 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 87 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 7 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 8 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 19 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 86 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 10 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 11 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 79 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 59 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 80 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 37 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 20 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 24 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 65 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 97 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 35 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 6 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 69 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 54 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 8 }, { "job_id": "J11", "task_id": 0, "machine_id": "A", "duration": 26 }, { "job_id": "J11", "task_id": 1, "machine_id": "B", "duration": 97 }, { "job_id": "J11", "task_id": 2, "machine_id": "C", "duration": 93 }, { "job_id": "J11", "task_id": 3, "machine_id": "D", "duration": 64 }, { "job_id": "J11", "task_id": 4, "machine_id": "E", "duration": 53 }, { "job_id": "J12", "task_id": 0, "machine_id": "A", "duration": 66 }, { "job_id": "J12", "task_id": 1, "machine_id": "B", "duration": 38 }, { "job_id": "J12", "task_id": 2, "machine_id": "C", "duration": 29 }, { "job_id": "J12", "task_id": 3, "machine_id": "D", "duration": 82 }, { "job_id": "J12", "task_id": 4, "machine_id": "E", "duration": 78 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 29, "machine": "A", "duration": 1 }, { "task": 1, "start": 30, "machine": "B", "duration": 6 }, { "task": 2, "start": 48, "machine": "C", "duration": 76 }, { "task": 3, "start": 124, "machine": "D", "duration": 10 }, { "task": 4, "start": 172, "machine": "E", "duration": 51 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 8 }, { "task": 1, "start": 8, "machine": "B", "duration": 17 }, { "task": 2, "start": 25, "machine": "C", "duration": 23 }, { "task": 3, "start": 48, "machine": "D", "duration": 25 }, { "task": 4, "start": 73, "machine": "E", "duration": 99 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 326, "machine": "A", "duration": 64 }, { "task": 1, "start": 390, "machine": "B", "duration": 89 }, { "task": 2, "start": 479, "machine": "C", "duration": 23 }, { "task": 3, "start": 550, "machine": "D", "duration": 59 }, { "task": 4, "start": 682, "machine": "E", "duration": 46 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 155, "machine": "A", "duration": 37 }, { "task": 1, "start": 259, "machine": "B", "duration": 87 }, { "task": 2, "start": 367, "machine": "C", "duration": 36 }, { "task": 3, "start": 467, "machine": "D", "duration": 64 }, { "task": 4, "start": 736, "machine": "E", "duration": 8 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 8, "machine": "A", "duration": 21 }, { "task": 1, "start": 36, "machine": "B", "duration": 59 }, { "task": 2, "start": 124, "machine": "C", "duration": 10 }, { "task": 3, "start": 134, "machine": "D", "duration": 80 }, { "task": 4, "start": 223, "machine": "E", "duration": 92 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 131, "machine": "A", "duration": 24 }, { "task": 1, "start": 155, "machine": "B", "duration": 23 }, { "task": 2, "start": 209, "machine": "C", "duration": 8 }, { "task": 3, "start": 217, "machine": "D", "duration": 14 }, { "task": 4, "start": 315, "machine": "E", "duration": 26 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 239, "machine": "A", "duration": 87 }, { "task": 1, "start": 346, "machine": "B", "duration": 7 }, { "task": 2, "start": 403, "machine": "C", "duration": 8 }, { "task": 3, "start": 531, "machine": "D", "duration": 19 }, { "task": 4, "start": 596, "machine": "E", "duration": 86 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 192, "machine": "A", "duration": 10 }, { "task": 1, "start": 202, "machine": "B", "duration": 11 }, { "task": 2, "start": 264, "machine": "C", "duration": 79 }, { "task": 3, "start": 343, "machine": "D", "duration": 59 }, { "task": 4, "start": 419, "machine": "E", "duration": 80 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 202, "machine": "A", "duration": 37 }, { "task": 1, "start": 239, "machine": "B", "duration": 20 }, { "task": 2, "start": 343, "machine": "C", "duration": 24 }, { "task": 3, "start": 402, "machine": "D", "duration": 65 }, { "task": 4, "start": 499, "machine": "E", "duration": 97 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 96, "machine": "A", "duration": 35 }, { "task": 1, "start": 134, "machine": "B", "duration": 6 }, { "task": 2, "start": 140, "machine": "C", "duration": 69 }, { "task": 3, "start": 609, "machine": "D", "duration": 54 }, { "task": 4, "start": 728, "machine": "E", "duration": 8 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 390, "machine": "A", "duration": 26 }, { "task": 1, "start": 479, "machine": "B", "duration": 97 }, { "task": 2, "start": 576, "machine": "C", "duration": 93 }, { "task": 3, "start": 669, "machine": "D", "duration": 64 }, { "task": 4, "start": 744, "machine": "E", "duration": 53 } ] }, { "job": "J12", "tasks": [ { "task": 0, "start": 30, "machine": "A", "duration": 66 }, { "task": 1, "start": 96, "machine": "B", "duration": 38 }, { "task": 2, "start": 217, "machine": "C", "duration": 29 }, { "task": 3, "start": 246, "machine": "D", "duration": 82 }, { "task": 4, "start": 341, "machine": "E", "duration": 78 } ] } ], "context_index": 5, "input_format": "json", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Many small bakeries face a simple challenge: each tray must pass through the identical sequence of ovens and coolers, each step lasting a fixed time. The task is to decide the sequence and start times so ovens and cooling areas aren’t juggling multiple trays at once. The best way to tell which plan is better is by when the last tray is finished — whoever gets that final finish time earlier wins. All trays must follow the same ordered steps without skipping or repeating any, and each machine can only handle one tray at a time. The exact counts and durations are given below.\n\n# number_of_trays=9\n# number_of_stations=5\n# tray_identifiers=J1, J2, J3, J4, J5, J6, J7, J8, J9\n# station_identifiers=1, 2, 3, 4, 5\ntray_id,step_index,station_id,processing_time\nJ1,0,1,1\nJ1,1,2,19\nJ1,2,3,51\nJ1,3,4,56\nJ1,4,5,4\nJ2,0,1,29\nJ2,1,2,21\nJ2,2,3,90\nJ2,3,4,92\nJ2,4,5,93\nJ3,0,1,3\nJ3,1,2,41\nJ3,2,3,6\nJ3,3,4,62\nJ3,4,5,51\nJ4,0,1,89\nJ4,1,2,54\nJ4,2,3,36\nJ4,3,4,3\nJ4,4,5,15\nJ5,0,1,62\nJ5,1,2,28\nJ5,2,3,68\nJ5,3,4,73\nJ5,4,5,77\nJ6,0,1,76\nJ6,1,2,32\nJ6,2,3,73\nJ6,3,4,55\nJ6,4,5,95\nJ7,0,1,78\nJ7,1,2,82\nJ7,2,3,34\nJ7,3,4,23\nJ7,4,5,59\nJ8,0,1,43\nJ8,1,2,73\nJ8,2,3,55\nJ8,3,4,58\nJ8,4,5,17\nJ9,0,1,61\nJ9,1,2,18\nJ9,2,3,96\nJ9,3,4,41\nJ9,4,5,62\n\nOne more thing — when you send the schedule back, please follow this simple JSON layout so I can read it easily.\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThis is just a quick sketch of the shape I’m expecting: \"solution\" is a list of jobs, each job entry gives the job identifier and a list of its tasks, and each task lists which step it is, when that step starts, which machine it uses, and how long it takes. Think of it like a simple form to fill out for each tray as it moves through the ovens and coolers.\n\nPlease be sure to use the exact identifiers from the instance input — don’t rename them or invent new labels. \n- for example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 5, "nr_jobs": 9, "jobs": [ [ [ 0, 1 ], [ 1, 19 ], [ 2, 51 ], [ 3, 56 ], [ 4, 4 ] ], [ [ 0, 29 ], [ 1, 21 ], [ 2, 90 ], [ 3, 92 ], [ 4, 93 ] ], [ [ 0, 3 ], [ 1, 41 ], [ 2, 6 ], [ 3, 62 ], [ 4, 51 ] ], [ [ 0, 89 ], [ 1, 54 ], [ 2, 36 ], [ 3, 3 ], [ 4, 15 ] ], [ [ 0, 62 ], [ 1, 28 ], [ 2, 68 ], [ 3, 73 ], [ 4, 77 ] ], [ [ 0, 76 ], [ 1, 32 ], [ 2, 73 ], [ 3, 55 ], [ 4, 95 ] ], [ [ 0, 78 ], [ 1, 82 ], [ 2, 34 ], [ 3, 23 ], [ 4, 59 ] ], [ [ 0, 43 ], [ 1, 73 ], [ 2, 55 ], [ 3, 58 ], [ 4, 17 ] ], [ [ 0, 61 ], [ 1, 18 ], [ 2, 96 ], [ 3, 41 ], [ 4, 62 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 441, "machine": 0, "duration": 1 }, { "task": 1, "start": 495, "machine": 1, "duration": 19 }, { "task": 2, "start": 523, "machine": 2, "duration": 51 }, { "task": 3, "start": 581, "machine": 3, "duration": 56 }, { "task": 4, "start": 650, "machine": 4, "duration": 4 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 3, "machine": 0, "duration": 29 }, { "task": 1, "start": 44, "machine": 1, "duration": 21 }, { "task": 2, "start": 65, "machine": 2, "duration": 90 }, { "task": 3, "start": 155, "machine": 3, "duration": 92 }, { "task": 4, "start": 247, "machine": 4, "duration": 93 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 3 }, { "task": 1, "start": 3, "machine": 1, "duration": 41 }, { "task": 2, "start": 44, "machine": 2, "duration": 6 }, { "task": 3, "start": 50, "machine": 3, "duration": 62 }, { "task": 4, "start": 112, "machine": 4, "duration": 51 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 352, "machine": 0, "duration": 89 }, { "task": 1, "start": 441, "machine": 1, "duration": 54 }, { "task": 2, "start": 574, "machine": 2, "duration": 36 }, { "task": 3, "start": 637, "machine": 3, "duration": 3 }, { "task": 4, "start": 654, "machine": 4, "duration": 15 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 169, "machine": 0, "duration": 62 }, { "task": 1, "start": 231, "machine": 1, "duration": 28 }, { "task": 2, "start": 259, "machine": 2, "duration": 68 }, { "task": 3, "start": 327, "machine": 3, "duration": 73 }, { "task": 4, "start": 435, "machine": 4, "duration": 77 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 32, "machine": 0, "duration": 76 }, { "task": 1, "start": 108, "machine": 1, "duration": 32 }, { "task": 2, "start": 155, "machine": 2, "duration": 73 }, { "task": 3, "start": 247, "machine": 3, "duration": 55 }, { "task": 4, "start": 340, "machine": 4, "duration": 95 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 274, "machine": 0, "duration": 78 }, { "task": 1, "start": 352, "machine": 1, "duration": 82 }, { "task": 2, "start": 434, "machine": 2, "duration": 34 }, { "task": 3, "start": 468, "machine": 3, "duration": 23 }, { "task": 4, "start": 574, "machine": 4, "duration": 59 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 231, "machine": 0, "duration": 43 }, { "task": 1, "start": 274, "machine": 1, "duration": 73 }, { "task": 2, "start": 468, "machine": 2, "duration": 55 }, { "task": 3, "start": 523, "machine": 3, "duration": 58 }, { "task": 4, "start": 633, "machine": 4, "duration": 17 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 108, "machine": 0, "duration": 61 }, { "task": 1, "start": 169, "machine": 1, "duration": 18 }, { "task": 2, "start": 327, "machine": 2, "duration": 96 }, { "task": 3, "start": 423, "machine": 3, "duration": 41 }, { "task": 4, "start": 512, "machine": 4, "duration": 62 } ] } ], "obj": 669.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 9, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9" ], "machines": [ 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 2, "duration": 19 }, { "job_id": "J1", "task_id": 2, "machine_id": 3, "duration": 51 }, { "job_id": "J1", "task_id": 3, "machine_id": 4, "duration": 56 }, { "job_id": "J1", "task_id": 4, "machine_id": 5, "duration": 4 }, { "job_id": "J2", "task_id": 0, "machine_id": 1, "duration": 29 }, { "job_id": "J2", "task_id": 1, "machine_id": 2, "duration": 21 }, { "job_id": "J2", "task_id": 2, "machine_id": 3, "duration": 90 }, { "job_id": "J2", "task_id": 3, "machine_id": 4, "duration": 92 }, { "job_id": "J2", "task_id": 4, "machine_id": 5, "duration": 93 }, { "job_id": "J3", "task_id": 0, "machine_id": 1, "duration": 3 }, { "job_id": "J3", "task_id": 1, "machine_id": 2, "duration": 41 }, { "job_id": "J3", "task_id": 2, "machine_id": 3, "duration": 6 }, { "job_id": "J3", "task_id": 3, "machine_id": 4, "duration": 62 }, { "job_id": "J3", "task_id": 4, "machine_id": 5, "duration": 51 }, { "job_id": "J4", "task_id": 0, "machine_id": 1, "duration": 89 }, { "job_id": "J4", "task_id": 1, "machine_id": 2, "duration": 54 }, { "job_id": "J4", "task_id": 2, "machine_id": 3, "duration": 36 }, { "job_id": "J4", "task_id": 3, "machine_id": 4, "duration": 3 }, { "job_id": "J4", "task_id": 4, "machine_id": 5, "duration": 15 }, { "job_id": "J5", "task_id": 0, "machine_id": 1, "duration": 62 }, { "job_id": "J5", "task_id": 1, "machine_id": 2, "duration": 28 }, { "job_id": "J5", "task_id": 2, "machine_id": 3, "duration": 68 }, { "job_id": "J5", "task_id": 3, "machine_id": 4, "duration": 73 }, { "job_id": "J5", "task_id": 4, "machine_id": 5, "duration": 77 }, { "job_id": "J6", "task_id": 0, "machine_id": 1, "duration": 76 }, { "job_id": "J6", "task_id": 1, "machine_id": 2, "duration": 32 }, { "job_id": "J6", "task_id": 2, "machine_id": 3, "duration": 73 }, { "job_id": "J6", "task_id": 3, "machine_id": 4, "duration": 55 }, { "job_id": "J6", "task_id": 4, "machine_id": 5, "duration": 95 }, { "job_id": "J7", "task_id": 0, "machine_id": 1, "duration": 78 }, { "job_id": "J7", "task_id": 1, "machine_id": 2, "duration": 82 }, { "job_id": "J7", "task_id": 2, "machine_id": 3, "duration": 34 }, { "job_id": "J7", "task_id": 3, "machine_id": 4, "duration": 23 }, { "job_id": "J7", "task_id": 4, "machine_id": 5, "duration": 59 }, { "job_id": "J8", "task_id": 0, "machine_id": 1, "duration": 43 }, { "job_id": "J8", "task_id": 1, "machine_id": 2, "duration": 73 }, { "job_id": "J8", "task_id": 2, "machine_id": 3, "duration": 55 }, { "job_id": "J8", "task_id": 3, "machine_id": 4, "duration": 58 }, { "job_id": "J8", "task_id": 4, "machine_id": 5, "duration": 17 }, { "job_id": "J9", "task_id": 0, "machine_id": 1, "duration": 61 }, { "job_id": "J9", "task_id": 1, "machine_id": 2, "duration": 18 }, { "job_id": "J9", "task_id": 2, "machine_id": 3, "duration": 96 }, { "job_id": "J9", "task_id": 3, "machine_id": 4, "duration": 41 }, { "job_id": "J9", "task_id": 4, "machine_id": 5, "duration": 62 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 441, "machine": 1, "duration": 1 }, { "task": 1, "start": 495, "machine": 2, "duration": 19 }, { "task": 2, "start": 523, "machine": 3, "duration": 51 }, { "task": 3, "start": 581, "machine": 4, "duration": 56 }, { "task": 4, "start": 650, "machine": 5, "duration": 4 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 3, "machine": 1, "duration": 29 }, { "task": 1, "start": 44, "machine": 2, "duration": 21 }, { "task": 2, "start": 65, "machine": 3, "duration": 90 }, { "task": 3, "start": 155, "machine": 4, "duration": 92 }, { "task": 4, "start": 247, "machine": 5, "duration": 93 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 0, "machine": 1, "duration": 3 }, { "task": 1, "start": 3, "machine": 2, "duration": 41 }, { "task": 2, "start": 44, "machine": 3, "duration": 6 }, { "task": 3, "start": 50, "machine": 4, "duration": 62 }, { "task": 4, "start": 112, "machine": 5, "duration": 51 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 352, "machine": 1, "duration": 89 }, { "task": 1, "start": 441, "machine": 2, "duration": 54 }, { "task": 2, "start": 574, "machine": 3, "duration": 36 }, { "task": 3, "start": 637, "machine": 4, "duration": 3 }, { "task": 4, "start": 654, "machine": 5, "duration": 15 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 169, "machine": 1, "duration": 62 }, { "task": 1, "start": 231, "machine": 2, "duration": 28 }, { "task": 2, "start": 259, "machine": 3, "duration": 68 }, { "task": 3, "start": 327, "machine": 4, "duration": 73 }, { "task": 4, "start": 435, "machine": 5, "duration": 77 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 32, "machine": 1, "duration": 76 }, { "task": 1, "start": 108, "machine": 2, "duration": 32 }, { "task": 2, "start": 155, "machine": 3, "duration": 73 }, { "task": 3, "start": 247, "machine": 4, "duration": 55 }, { "task": 4, "start": 340, "machine": 5, "duration": 95 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 274, "machine": 1, "duration": 78 }, { "task": 1, "start": 352, "machine": 2, "duration": 82 }, { "task": 2, "start": 434, "machine": 3, "duration": 34 }, { "task": 3, "start": 468, "machine": 4, "duration": 23 }, { "task": 4, "start": 574, "machine": 5, "duration": 59 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 231, "machine": 1, "duration": 43 }, { "task": 1, "start": 274, "machine": 2, "duration": 73 }, { "task": 2, "start": 468, "machine": 3, "duration": 55 }, { "task": 3, "start": 523, "machine": 4, "duration": 58 }, { "task": 4, "start": 633, "machine": 5, "duration": 17 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 108, "machine": 1, "duration": 61 }, { "task": 1, "start": 169, "machine": 2, "duration": 18 }, { "task": 2, "start": 327, "machine": 3, "duration": 96 }, { "task": 3, "start": 423, "machine": 4, "duration": 41 }, { "task": 4, "start": 512, "machine": 5, "duration": 62 } ] } ], "context_index": 6, "input_format": "csv", "input_index_base": 1 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Recently the post team ran into a puzzle: a batch of clips needs to pass through a fixed sequence of editing bays, and someone has to decide the start times so each bay only works on one clip at a time. The processing lengths for each step are known, no clip can skip or repeat a step, and the aim is to have all clips finished as soon as possible — check every clip’s finish moment and the latest one is the one to minimize. The detailed timings and clips are shown right below.\n\nThey are: 10 clips, 5 bays, clip IDs J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, bay order 0, 1, 2, 3, 4.\nClip J1, step 0, requires bay 0 for 1.\nClip J1, step 1, requires bay 1 for 32.\nClip J1, step 2, requires bay 2 for 27.\nClip J1, step 3, requires bay 3 for 2.\nClip J1, step 4, requires bay 4 for 57.\nClip J2, step 0, requires bay 0 for 51.\nClip J2, step 1, requires bay 1 for 26.\nClip J2, step 2, requires bay 2 for 58.\nClip J2, step 3, requires bay 3 for 61.\nClip J2, step 4, requires bay 4 for 86.\nClip J3, step 0, requires bay 0 for 41.\nClip J3, step 1, requires bay 1 for 93.\nClip J3, step 2, requires bay 2 for 88.\nClip J3, step 3, requires bay 3 for 66.\nClip J3, step 4, requires bay 4 for 57.\nClip J4, step 0, requires bay 0 for 43.\nClip J4, step 1, requires bay 1 for 22.\nClip J4, step 2, requires bay 2 for 37.\nClip J4, step 3, requires bay 3 for 40.\nClip J4, step 4, requires bay 4 for 21.\nClip J5, step 0, requires bay 0 for 4.\nClip J5, step 1, requires bay 1 for 96.\nClip J5, step 2, requires bay 2 for 27.\nClip J5, step 3, requires bay 3 for 66.\nClip J5, step 4, requires bay 4 for 61.\nClip J6, step 0, requires bay 0 for 29.\nClip J6, step 1, requires bay 1 for 42.\nClip J6, step 2, requires bay 2 for 39.\nClip J6, step 3, requires bay 3 for 96.\nClip J6, step 4, requires bay 4 for 66.\nClip J7, step 0, requires bay 0 for 69.\nClip J7, step 1, requires bay 1 for 58.\nClip J7, step 2, requires bay 2 for 60.\nClip J7, step 3, requires bay 3 for 28.\nClip J7, step 4, requires bay 4 for 33.\nClip J8, step 0, requires bay 0 for 75.\nClip J8, step 1, requires bay 1 for 37.\nClip J8, step 2, requires bay 2 for 31.\nClip J8, step 3, requires bay 3 for 57.\nClip J8, step 4, requires bay 4 for 54.\nClip J9, step 0, requires bay 0 for 85.\nClip J9, step 1, requires bay 1 for 17.\nClip J9, step 2, requires bay 2 for 69.\nClip J9, step 3, requires bay 3 for 16.\nClip J9, step 4, requires bay 4 for 28.\nClip J10, step 0, requires bay 0 for 49.\nClip J10, step 1, requires bay 1 for 32.\nClip J10, step 2, requires bay 2 for 47.\nClip J10, step 3, requires bay 3 for 9.\nClip J10, step 4, requires bay 4 for 94.\nThe goal remains to minimize the latest completion time across these 10 clips on the 5 bays.\n\nYou can send the final schedule back in a simple JSON shape like this — nothing fancy, just a small list of jobs where each job lists its tasks and start times.\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of it like a little form: \"solution\" holds every clip (job), each job entry names the job and then lists its tasks; each task line says which step it is, when that step starts, which bay (machine) it uses, and how long it runs. This is just the expected shape — not the actual schedule yet.\n\nPlease use the exact identifiers from the instance input as-is — do not rename them or introduce new labels. \n- for example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 5, "nr_jobs": 10, "jobs": [ [ [ 0, 1 ], [ 1, 32 ], [ 2, 27 ], [ 3, 2 ], [ 4, 57 ] ], [ [ 0, 51 ], [ 1, 26 ], [ 2, 58 ], [ 3, 61 ], [ 4, 86 ] ], [ [ 0, 41 ], [ 1, 93 ], [ 2, 88 ], [ 3, 66 ], [ 4, 57 ] ], [ [ 0, 43 ], [ 1, 22 ], [ 2, 37 ], [ 3, 40 ], [ 4, 21 ] ], [ [ 0, 4 ], [ 1, 96 ], [ 2, 27 ], [ 3, 66 ], [ 4, 61 ] ], [ [ 0, 29 ], [ 1, 42 ], [ 2, 39 ], [ 3, 96 ], [ 4, 66 ] ], [ [ 0, 69 ], [ 1, 58 ], [ 2, 60 ], [ 3, 28 ], [ 4, 33 ] ], [ [ 0, 75 ], [ 1, 37 ], [ 2, 31 ], [ 3, 57 ], [ 4, 54 ] ], [ [ 0, 85 ], [ 1, 17 ], [ 2, 69 ], [ 3, 16 ], [ 4, 28 ] ], [ [ 0, 49 ], [ 1, 32 ], [ 2, 47 ], [ 3, 9 ], [ 4, 94 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 32 }, { "task": 2, "start": 33, "machine": 2, "duration": 27 }, { "task": 3, "start": 60, "machine": 3, "duration": 2 }, { "task": 4, "start": 62, "machine": 4, "duration": 57 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 79, "machine": 0, "duration": 51 }, { "task": 1, "start": 130, "machine": 1, "duration": 26 }, { "task": 2, "start": 168, "machine": 2, "duration": 58 }, { "task": 3, "start": 264, "machine": 3, "duration": 61 }, { "task": 4, "start": 330, "machine": 4, "duration": 86 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 130, "machine": 0, "duration": 41 }, { "task": 1, "start": 171, "machine": 1, "duration": 93 }, { "task": 2, "start": 264, "machine": 2, "duration": 88 }, { "task": 3, "start": 352, "machine": 3, "duration": 66 }, { "task": 4, "start": 418, "machine": 4, "duration": 57 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 335, "machine": 0, "duration": 43 }, { "task": 1, "start": 507, "machine": 1, "duration": 22 }, { "task": 2, "start": 567, "machine": 2, "duration": 37 }, { "task": 3, "start": 604, "machine": 3, "duration": 40 }, { "task": 4, "start": 651, "machine": 4, "duration": 21 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 171, "machine": 0, "duration": 4 }, { "task": 1, "start": 353, "machine": 1, "duration": 96 }, { "task": 2, "start": 456, "machine": 2, "duration": 27 }, { "task": 3, "start": 491, "machine": 3, "duration": 66 }, { "task": 4, "start": 557, "machine": 4, "duration": 61 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 50, "machine": 0, "duration": 29 }, { "task": 1, "start": 82, "machine": 1, "duration": 42 }, { "task": 2, "start": 129, "machine": 2, "duration": 39 }, { "task": 3, "start": 168, "machine": 3, "duration": 96 }, { "task": 4, "start": 264, "machine": 4, "duration": 66 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 378, "machine": 0, "duration": 69 }, { "task": 1, "start": 449, "machine": 1, "duration": 58 }, { "task": 2, "start": 507, "machine": 2, "duration": 60 }, { "task": 3, "start": 567, "machine": 3, "duration": 28 }, { "task": 4, "start": 618, "machine": 4, "duration": 33 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 175, "machine": 0, "duration": 75 }, { "task": 1, "start": 299, "machine": 1, "duration": 37 }, { "task": 2, "start": 356, "machine": 2, "duration": 31 }, { "task": 3, "start": 418, "machine": 3, "duration": 57 }, { "task": 4, "start": 475, "machine": 4, "duration": 54 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 250, "machine": 0, "duration": 85 }, { "task": 1, "start": 336, "machine": 1, "duration": 17 }, { "task": 2, "start": 387, "machine": 2, "duration": 69 }, { "task": 3, "start": 475, "machine": 3, "duration": 16 }, { "task": 4, "start": 529, "machine": 4, "duration": 28 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 49 }, { "task": 1, "start": 50, "machine": 1, "duration": 32 }, { "task": 2, "start": 82, "machine": 2, "duration": 47 }, { "task": 3, "start": 129, "machine": 3, "duration": 9 }, { "task": 4, "start": 138, "machine": 4, "duration": 94 } ] } ], "obj": 672.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 10, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10" ], "machines": [ 0, 1, 2, 3, 4 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 32 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 27 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 2 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 57 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 51 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 26 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 58 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 61 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 86 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 41 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 93 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 88 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 66 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 57 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 43 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 22 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 37 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 40 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 21 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 4 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 96 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 27 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 66 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 61 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 29 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 42 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 39 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 96 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 66 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 69 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 58 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 60 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 28 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 33 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 75 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 37 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 31 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 57 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 54 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 85 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 17 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 69 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 16 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 28 }, { "job_id": "J10", "task_id": 0, "machine_id": 0, "duration": 49 }, { "job_id": "J10", "task_id": 1, "machine_id": 1, "duration": 32 }, { "job_id": "J10", "task_id": 2, "machine_id": 2, "duration": 47 }, { "job_id": "J10", "task_id": 3, "machine_id": 3, "duration": 9 }, { "job_id": "J10", "task_id": 4, "machine_id": 4, "duration": 94 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 32 }, { "task": 2, "start": 33, "machine": 2, "duration": 27 }, { "task": 3, "start": 60, "machine": 3, "duration": 2 }, { "task": 4, "start": 62, "machine": 4, "duration": 57 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 79, "machine": 0, "duration": 51 }, { "task": 1, "start": 130, "machine": 1, "duration": 26 }, { "task": 2, "start": 168, "machine": 2, "duration": 58 }, { "task": 3, "start": 264, "machine": 3, "duration": 61 }, { "task": 4, "start": 330, "machine": 4, "duration": 86 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 130, "machine": 0, "duration": 41 }, { "task": 1, "start": 171, "machine": 1, "duration": 93 }, { "task": 2, "start": 264, "machine": 2, "duration": 88 }, { "task": 3, "start": 352, "machine": 3, "duration": 66 }, { "task": 4, "start": 418, "machine": 4, "duration": 57 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 335, "machine": 0, "duration": 43 }, { "task": 1, "start": 507, "machine": 1, "duration": 22 }, { "task": 2, "start": 567, "machine": 2, "duration": 37 }, { "task": 3, "start": 604, "machine": 3, "duration": 40 }, { "task": 4, "start": 651, "machine": 4, "duration": 21 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 171, "machine": 0, "duration": 4 }, { "task": 1, "start": 353, "machine": 1, "duration": 96 }, { "task": 2, "start": 456, "machine": 2, "duration": 27 }, { "task": 3, "start": 491, "machine": 3, "duration": 66 }, { "task": 4, "start": 557, "machine": 4, "duration": 61 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 50, "machine": 0, "duration": 29 }, { "task": 1, "start": 82, "machine": 1, "duration": 42 }, { "task": 2, "start": 129, "machine": 2, "duration": 39 }, { "task": 3, "start": 168, "machine": 3, "duration": 96 }, { "task": 4, "start": 264, "machine": 4, "duration": 66 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 378, "machine": 0, "duration": 69 }, { "task": 1, "start": 449, "machine": 1, "duration": 58 }, { "task": 2, "start": 507, "machine": 2, "duration": 60 }, { "task": 3, "start": 567, "machine": 3, "duration": 28 }, { "task": 4, "start": 618, "machine": 4, "duration": 33 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 175, "machine": 0, "duration": 75 }, { "task": 1, "start": 299, "machine": 1, "duration": 37 }, { "task": 2, "start": 356, "machine": 2, "duration": 31 }, { "task": 3, "start": 418, "machine": 3, "duration": 57 }, { "task": 4, "start": 475, "machine": 4, "duration": 54 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 250, "machine": 0, "duration": 85 }, { "task": 1, "start": 336, "machine": 1, "duration": 17 }, { "task": 2, "start": 387, "machine": 2, "duration": 69 }, { "task": 3, "start": 475, "machine": 3, "duration": 16 }, { "task": 4, "start": 529, "machine": 4, "duration": 28 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 49 }, { "task": 1, "start": 50, "machine": 1, "duration": 32 }, { "task": 2, "start": 82, "machine": 2, "duration": 47 }, { "task": 3, "start": 129, "machine": 3, "duration": 9 }, { "task": 4, "start": 138, "machine": 4, "duration": 94 } ] } ], "context_index": 7, "input_format": "nl", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "We manage a busy service where every dish needs to pass through the same sequence of prep and finishing stations, each step taking a fixed amount of time. The decision is about scheduling those steps so stations never try to do two things at once and no dish skips or repeats a step. A better plan is one that brings the whole meal service to a close sooner — the finish time of the final dish is the metric to watch. The concrete dish timings and station order are listed below.\n\nWe have 9 dishes and 5 stations; dish identifiers: J1, J2, J3, J4, J5, J6, J7, J8, J9; station sequence: 0, 1, 2, 3, 4.\nFor dish J1, step 0 uses station 0 for 1 minutes.\nFor dish J1, step 1 uses station 1 for 45 minutes.\nFor dish J1, step 2 uses station 2 for 3 minutes.\nFor dish J1, step 3 uses station 3 for 47 minutes.\nFor dish J1, step 4 uses station 4 for 11 minutes.\nFor dish J2, step 0 uses station 0 for 73 minutes.\nFor dish J2, step 1 uses station 1 for 31 minutes.\nFor dish J2, step 2 uses station 2 for 27 minutes.\nFor dish J2, step 3 uses station 3 for 29 minutes.\nFor dish J2, step 4 uses station 4 for 80 minutes.\nFor dish J3, step 0 uses station 0 for 79 minutes.\nFor dish J3, step 1 uses station 1 for 45 minutes.\nFor dish J3, step 2 uses station 2 for 72 minutes.\nFor dish J3, step 3 uses station 3 for 69 minutes.\nFor dish J3, step 4 uses station 4 for 62 minutes.\nFor dish J4, step 0 uses station 0 for 95 minutes.\nFor dish J4, step 1 uses station 1 for 88 minutes.\nFor dish J4, step 2 uses station 2 for 38 minutes.\nFor dish J4, step 3 uses station 3 for 78 minutes.\nFor dish J4, step 4 uses station 4 for 28 minutes.\nFor dish J5, step 0 uses station 0 for 46 minutes.\nFor dish J5, step 1 uses station 1 for 65 minutes.\nFor dish J5, step 2 uses station 2 for 86 minutes.\nFor dish J5, step 3 uses station 3 for 59 minutes.\nFor dish J5, step 4 uses station 4 for 46 minutes.\nFor dish J6, step 0 uses station 0 for 82 minutes.\nFor dish J6, step 1 uses station 1 for 51 minutes.\nFor dish J6, step 2 uses station 2 for 5 minutes.\nFor dish J6, step 3 uses station 3 for 39 minutes.\nFor dish J6, step 4 uses station 4 for 36 minutes.\nFor dish J7, step 0 uses station 0 for 60 minutes.\nFor dish J7, step 1 uses station 1 for 35 minutes.\nFor dish J7, step 2 uses station 2 for 86 minutes.\nFor dish J7, step 3 uses station 3 for 33 minutes.\nFor dish J7, step 4 uses station 4 for 7 minutes.\nFor dish J8, step 0 uses station 0 for 9 minutes.\nFor dish J8, step 1 uses station 1 for 99 minutes.\nFor dish J8, step 2 uses station 2 for 7 minutes.\nFor dish J8, step 3 uses station 3 for 56 minutes.\nFor dish J8, step 4 uses station 4 for 90 minutes.\nFor dish J9, step 0 uses station 0 for 11 minutes.\nFor dish J9, step 1 uses station 1 for 15 minutes.\nFor dish J9, step 2 uses station 2 for 41 minutes.\nFor dish J9, step 3 uses station 3 for 91 minutes.\nFor dish J9, step 4 uses station 4 for 92 minutes.\nWe schedule these steps so we finish all 9 dishes as soon as possible.\n\nAlso, when you hand me the schedule back, a simple JSON like this is perfect — nothing fancy, just that shape so I can read each dish and its steps easily.\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of that as a little form: \"solution\" is a list of dishes; each dish has a \"job\" identifier and a list of \"tasks\". Each task entry just says which step number it is (\"task\"), when that step starts (\"start\"), which station handles it (\"machine\"), and how long it runs (\"duration\"). Super lightweight — just enough to capture the order and timing.\n\nThis JSON is only a sketch of the expected shape, not your actual answer. Please use the exact identifiers from the instance input — do not rename them or invent new labels. Valid identifiers look like plain numbers such as \"1\" or \"23\", single capital letters like \"A\" or \"B\", or a capital letter followed by digits like \"A1\" or \"X7\".", "instance": { "nr_machines": 5, "nr_jobs": 9, "jobs": [ [ [ 0, 1 ], [ 1, 45 ], [ 2, 3 ], [ 3, 47 ], [ 4, 11 ] ], [ [ 0, 73 ], [ 1, 31 ], [ 2, 27 ], [ 3, 29 ], [ 4, 80 ] ], [ [ 0, 79 ], [ 1, 45 ], [ 2, 72 ], [ 3, 69 ], [ 4, 62 ] ], [ [ 0, 95 ], [ 1, 88 ], [ 2, 38 ], [ 3, 78 ], [ 4, 28 ] ], [ [ 0, 46 ], [ 1, 65 ], [ 2, 86 ], [ 3, 59 ], [ 4, 46 ] ], [ [ 0, 82 ], [ 1, 51 ], [ 2, 5 ], [ 3, 39 ], [ 4, 36 ] ], [ [ 0, 60 ], [ 1, 35 ], [ 2, 86 ], [ 3, 33 ], [ 4, 7 ] ], [ [ 0, 9 ], [ 1, 99 ], [ 2, 7 ], [ 3, 56 ], [ 4, 90 ] ], [ [ 0, 11 ], [ 1, 15 ], [ 2, 41 ], [ 3, 91 ], [ 4, 92 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 11, "machine": 0, "duration": 1 }, { "task": 1, "start": 170, "machine": 1, "duration": 45 }, { "task": 2, "start": 242, "machine": 2, "duration": 3 }, { "task": 3, "start": 245, "machine": 3, "duration": 47 }, { "task": 4, "start": 340, "machine": 4, "duration": 11 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 100, "machine": 0, "duration": 73 }, { "task": 1, "start": 215, "machine": 1, "duration": 31 }, { "task": 2, "start": 246, "machine": 2, "duration": 27 }, { "task": 3, "start": 292, "machine": 3, "duration": 29 }, { "task": 4, "start": 351, "machine": 4, "duration": 80 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 21, "machine": 0, "duration": 79 }, { "task": 1, "start": 125, "machine": 1, "duration": 45 }, { "task": 2, "start": 170, "machine": 2, "duration": 72 }, { "task": 3, "start": 321, "machine": 3, "duration": 69 }, { "task": 4, "start": 431, "machine": 4, "duration": 62 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 219, "machine": 0, "duration": 95 }, { "task": 1, "start": 314, "machine": 1, "duration": 88 }, { "task": 2, "start": 402, "machine": 2, "duration": 38 }, { "task": 3, "start": 456, "machine": 3, "duration": 78 }, { "task": 4, "start": 539, "machine": 4, "duration": 28 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 173, "machine": 0, "duration": 46 }, { "task": 1, "start": 246, "machine": 1, "duration": 65 }, { "task": 2, "start": 311, "machine": 2, "duration": 86 }, { "task": 3, "start": 397, "machine": 3, "duration": 59 }, { "task": 4, "start": 493, "machine": 4, "duration": 46 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 374, "machine": 0, "duration": 82 }, { "task": 1, "start": 456, "machine": 1, "duration": 51 }, { "task": 2, "start": 526, "machine": 2, "duration": 5 }, { "task": 3, "start": 534, "machine": 3, "duration": 39 }, { "task": 4, "start": 573, "machine": 4, "duration": 36 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 314, "machine": 0, "duration": 60 }, { "task": 1, "start": 402, "machine": 1, "duration": 35 }, { "task": 2, "start": 440, "machine": 2, "duration": 86 }, { "task": 3, "start": 573, "machine": 3, "duration": 33 }, { "task": 4, "start": 609, "machine": 4, "duration": 7 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 12, "machine": 0, "duration": 9 }, { "task": 1, "start": 26, "machine": 1, "duration": 99 }, { "task": 2, "start": 125, "machine": 2, "duration": 7 }, { "task": 3, "start": 158, "machine": 3, "duration": 56 }, { "task": 4, "start": 250, "machine": 4, "duration": 90 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 11 }, { "task": 1, "start": 11, "machine": 1, "duration": 15 }, { "task": 2, "start": 26, "machine": 2, "duration": 41 }, { "task": 3, "start": 67, "machine": 3, "duration": 91 }, { "task": 4, "start": 158, "machine": 4, "duration": 92 } ] } ], "obj": 616.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 9, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9" ], "machines": [ 0, 1, 2, 3, 4 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 45 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 3 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 47 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 11 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 73 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 31 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 27 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 29 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 80 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 79 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 45 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 72 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 69 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 62 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 95 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 88 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 38 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 78 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 28 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 46 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 65 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 86 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 59 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 46 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 82 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 51 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 5 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 39 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 36 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 60 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 35 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 86 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 33 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 7 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 9 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 99 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 7 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 56 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 90 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 11 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 15 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 41 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 91 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 92 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 11, "machine": 0, "duration": 1 }, { "task": 1, "start": 170, "machine": 1, "duration": 45 }, { "task": 2, "start": 242, "machine": 2, "duration": 3 }, { "task": 3, "start": 245, "machine": 3, "duration": 47 }, { "task": 4, "start": 340, "machine": 4, "duration": 11 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 100, "machine": 0, "duration": 73 }, { "task": 1, "start": 215, "machine": 1, "duration": 31 }, { "task": 2, "start": 246, "machine": 2, "duration": 27 }, { "task": 3, "start": 292, "machine": 3, "duration": 29 }, { "task": 4, "start": 351, "machine": 4, "duration": 80 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 21, "machine": 0, "duration": 79 }, { "task": 1, "start": 125, "machine": 1, "duration": 45 }, { "task": 2, "start": 170, "machine": 2, "duration": 72 }, { "task": 3, "start": 321, "machine": 3, "duration": 69 }, { "task": 4, "start": 431, "machine": 4, "duration": 62 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 219, "machine": 0, "duration": 95 }, { "task": 1, "start": 314, "machine": 1, "duration": 88 }, { "task": 2, "start": 402, "machine": 2, "duration": 38 }, { "task": 3, "start": 456, "machine": 3, "duration": 78 }, { "task": 4, "start": 539, "machine": 4, "duration": 28 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 173, "machine": 0, "duration": 46 }, { "task": 1, "start": 246, "machine": 1, "duration": 65 }, { "task": 2, "start": 311, "machine": 2, "duration": 86 }, { "task": 3, "start": 397, "machine": 3, "duration": 59 }, { "task": 4, "start": 493, "machine": 4, "duration": 46 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 374, "machine": 0, "duration": 82 }, { "task": 1, "start": 456, "machine": 1, "duration": 51 }, { "task": 2, "start": 526, "machine": 2, "duration": 5 }, { "task": 3, "start": 534, "machine": 3, "duration": 39 }, { "task": 4, "start": 573, "machine": 4, "duration": 36 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 314, "machine": 0, "duration": 60 }, { "task": 1, "start": 402, "machine": 1, "duration": 35 }, { "task": 2, "start": 440, "machine": 2, "duration": 86 }, { "task": 3, "start": 573, "machine": 3, "duration": 33 }, { "task": 4, "start": 609, "machine": 4, "duration": 7 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 12, "machine": 0, "duration": 9 }, { "task": 1, "start": 26, "machine": 1, "duration": 99 }, { "task": 2, "start": 125, "machine": 2, "duration": 7 }, { "task": 3, "start": 158, "machine": 3, "duration": 56 }, { "task": 4, "start": 250, "machine": 4, "duration": 90 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 11 }, { "task": 1, "start": 11, "machine": 1, "duration": 15 }, { "task": 2, "start": 26, "machine": 2, "duration": 41 }, { "task": 3, "start": 67, "machine": 3, "duration": 91 }, { "task": 4, "start": 158, "machine": 4, "duration": 92 } ] } ], "context_index": 8, "input_format": "nl", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "I’m juggling a bench full of samples that all need to move through the same lineup of instruments, each step taking a known amount of time. The job is to pick when each sample starts on each instrument so nothing gets missed or repeated, every step happens in the fixed order, and no instrument is asked to run two analyses at once. A good plan is one where the whole batch is done as early as possible — measured by the clock time when the last sample finishes — so the later that final finish time is, the worse the plan. The concrete details are shown below.\n\n# num_samples=12\n# num_instruments=5\n# sample_ids=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11, J12\n# instrument_ids=A, B, C, D, E\nsample_id,step_index,instrument_id,analysis_duration\nJ1,0,A,1\nJ1,1,B,58\nJ1,2,C,78\nJ1,3,D,93\nJ1,4,E,64\nJ2,0,A,94\nJ2,1,B,35\nJ2,2,C,94\nJ2,3,D,96\nJ2,4,E,73\nJ3,0,A,18\nJ3,1,B,97\nJ3,2,C,55\nJ3,3,D,73\nJ3,4,E,67\nJ4,0,A,49\nJ4,1,B,56\nJ4,2,C,39\nJ4,3,D,17\nJ4,4,E,34\nJ5,0,A,87\nJ5,1,B,34\nJ5,2,C,45\nJ5,3,D,52\nJ5,4,E,31\nJ6,0,A,35\nJ6,1,B,60\nJ6,2,C,69\nJ6,3,D,80\nJ6,4,E,6\nJ7,0,A,52\nJ7,1,B,11\nJ7,2,C,13\nJ7,3,D,37\nJ7,4,E,80\nJ8,0,A,41\nJ8,1,B,63\nJ8,2,C,82\nJ8,3,D,55\nJ8,4,E,27\nJ9,0,A,35\nJ9,1,B,13\nJ9,2,C,14\nJ9,3,D,67\nJ9,4,E,58\nJ10,0,A,63\nJ10,1,B,58\nJ10,2,C,24\nJ10,3,D,63\nJ10,4,E,82\nJ11,0,A,33\nJ11,1,B,88\nJ11,2,C,88\nJ11,3,D,74\nJ11,4,E,96\nJ12,0,A,33\nJ12,1,B,33\nJ12,2,C,88\nJ12,3,D,46\nJ12,4,E,3\n\nAlso, when you send the schedule back, just use this simple JSON layout so everything lines up nicely:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of that like a little form: \"solution\" is the list of jobs, each job entry names the job and then lists its tasks; for each task you give the task index, the start time, which machine it runs on, and how long it takes. That block is just a sketch of the shape I expect, not the actual schedule.\n\nPlease make sure to use the exact identifiers from the instance input — don’t rename or invent new labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 5, "nr_jobs": 12, "jobs": [ [ [ 0, 1 ], [ 1, 58 ], [ 2, 78 ], [ 3, 93 ], [ 4, 64 ] ], [ [ 0, 94 ], [ 1, 35 ], [ 2, 94 ], [ 3, 96 ], [ 4, 73 ] ], [ [ 0, 18 ], [ 1, 97 ], [ 2, 55 ], [ 3, 73 ], [ 4, 67 ] ], [ [ 0, 49 ], [ 1, 56 ], [ 2, 39 ], [ 3, 17 ], [ 4, 34 ] ], [ [ 0, 87 ], [ 1, 34 ], [ 2, 45 ], [ 3, 52 ], [ 4, 31 ] ], [ [ 0, 35 ], [ 1, 60 ], [ 2, 69 ], [ 3, 80 ], [ 4, 6 ] ], [ [ 0, 52 ], [ 1, 11 ], [ 2, 13 ], [ 3, 37 ], [ 4, 80 ] ], [ [ 0, 41 ], [ 1, 63 ], [ 2, 82 ], [ 3, 55 ], [ 4, 27 ] ], [ [ 0, 35 ], [ 1, 13 ], [ 2, 14 ], [ 3, 67 ], [ 4, 58 ] ], [ [ 0, 63 ], [ 1, 58 ], [ 2, 24 ], [ 3, 63 ], [ 4, 82 ] ], [ [ 0, 33 ], [ 1, 88 ], [ 2, 88 ], [ 3, 74 ], [ 4, 96 ] ], [ [ 0, 33 ], [ 1, 33 ], [ 2, 88 ], [ 3, 46 ], [ 4, 3 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 58 }, { "task": 2, "start": 112, "machine": 2, "duration": 78 }, { "task": 3, "start": 190, "machine": 3, "duration": 93 }, { "task": 4, "start": 286, "machine": 4, "duration": 64 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 106, "machine": 0, "duration": 94 }, { "task": 1, "start": 203, "machine": 1, "duration": 35 }, { "task": 2, "start": 259, "machine": 2, "duration": 94 }, { "task": 3, "start": 356, "machine": 3, "duration": 96 }, { "task": 4, "start": 485, "machine": 4, "duration": 73 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 88, "machine": 0, "duration": 18 }, { "task": 1, "start": 106, "machine": 1, "duration": 97 }, { "task": 2, "start": 204, "machine": 2, "duration": 55 }, { "task": 3, "start": 283, "machine": 3, "duration": 73 }, { "task": 4, "start": 360, "machine": 4, "duration": 67 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 492, "machine": 0, "duration": 49 }, { "task": 1, "start": 604, "machine": 1, "duration": 56 }, { "task": 2, "start": 665, "machine": 2, "duration": 39 }, { "task": 3, "start": 776, "machine": 3, "duration": 17 }, { "task": 4, "start": 803, "machine": 4, "duration": 34 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 274, "machine": 0, "duration": 87 }, { "task": 1, "start": 392, "machine": 1, "duration": 34 }, { "task": 2, "start": 523, "machine": 2, "duration": 45 }, { "task": 3, "start": 581, "machine": 3, "duration": 52 }, { "task": 4, "start": 654, "machine": 4, "duration": 31 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 457, "machine": 0, "duration": 35 }, { "task": 1, "start": 492, "machine": 1, "duration": 60 }, { "task": 2, "start": 592, "machine": 2, "duration": 69 }, { "task": 3, "start": 696, "machine": 3, "duration": 80 }, { "task": 4, "start": 795, "machine": 4, "duration": 6 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 36, "machine": 0, "duration": 52 }, { "task": 1, "start": 88, "machine": 1, "duration": 11 }, { "task": 2, "start": 99, "machine": 2, "duration": 13 }, { "task": 3, "start": 153, "machine": 3, "duration": 37 }, { "task": 4, "start": 190, "machine": 4, "duration": 80 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 233, "machine": 0, "duration": 41 }, { "task": 1, "start": 326, "machine": 1, "duration": 63 }, { "task": 2, "start": 441, "machine": 2, "duration": 82 }, { "task": 3, "start": 526, "machine": 3, "duration": 55 }, { "task": 4, "start": 685, "machine": 4, "duration": 27 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 35 }, { "task": 1, "start": 59, "machine": 1, "duration": 13 }, { "task": 2, "start": 72, "machine": 2, "duration": 14 }, { "task": 3, "start": 86, "machine": 3, "duration": 67 }, { "task": 4, "start": 427, "machine": 4, "duration": 58 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 361, "machine": 0, "duration": 63 }, { "task": 1, "start": 426, "machine": 1, "duration": 58 }, { "task": 2, "start": 568, "machine": 2, "duration": 24 }, { "task": 3, "start": 633, "machine": 3, "duration": 63 }, { "task": 4, "start": 712, "machine": 4, "duration": 82 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 200, "machine": 0, "duration": 33 }, { "task": 1, "start": 238, "machine": 1, "duration": 88 }, { "task": 2, "start": 353, "machine": 2, "duration": 88 }, { "task": 3, "start": 452, "machine": 3, "duration": 74 }, { "task": 4, "start": 558, "machine": 4, "duration": 96 } ] }, { "job": 11, "tasks": [ { "task": 0, "start": 424, "machine": 0, "duration": 33 }, { "task": 1, "start": 552, "machine": 1, "duration": 33 }, { "task": 2, "start": 704, "machine": 2, "duration": 88 }, { "task": 3, "start": 793, "machine": 3, "duration": 46 }, { "task": 4, "start": 839, "machine": 4, "duration": 3 } ] } ], "obj": 842.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 12, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11", "J12" ], "machines": [ "A", "B", "C", "D", "E" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 58 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 78 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 93 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 64 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 94 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 35 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 94 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 96 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 73 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 18 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 97 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 55 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 73 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 67 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 49 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 56 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 39 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 17 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 34 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 87 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 34 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 45 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 52 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 31 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 35 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 60 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 69 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 80 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 6 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 52 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 11 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 13 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 37 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 80 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 41 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 63 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 82 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 55 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 27 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 35 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 13 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 14 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 67 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 58 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 63 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 58 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 24 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 63 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 82 }, { "job_id": "J11", "task_id": 0, "machine_id": "A", "duration": 33 }, { "job_id": "J11", "task_id": 1, "machine_id": "B", "duration": 88 }, { "job_id": "J11", "task_id": 2, "machine_id": "C", "duration": 88 }, { "job_id": "J11", "task_id": 3, "machine_id": "D", "duration": 74 }, { "job_id": "J11", "task_id": 4, "machine_id": "E", "duration": 96 }, { "job_id": "J12", "task_id": 0, "machine_id": "A", "duration": 33 }, { "job_id": "J12", "task_id": 1, "machine_id": "B", "duration": 33 }, { "job_id": "J12", "task_id": 2, "machine_id": "C", "duration": 88 }, { "job_id": "J12", "task_id": 3, "machine_id": "D", "duration": 46 }, { "job_id": "J12", "task_id": 4, "machine_id": "E", "duration": 3 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 1 }, { "task": 1, "start": 1, "machine": "B", "duration": 58 }, { "task": 2, "start": 112, "machine": "C", "duration": 78 }, { "task": 3, "start": 190, "machine": "D", "duration": 93 }, { "task": 4, "start": 286, "machine": "E", "duration": 64 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 106, "machine": "A", "duration": 94 }, { "task": 1, "start": 203, "machine": "B", "duration": 35 }, { "task": 2, "start": 259, "machine": "C", "duration": 94 }, { "task": 3, "start": 356, "machine": "D", "duration": 96 }, { "task": 4, "start": 485, "machine": "E", "duration": 73 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 88, "machine": "A", "duration": 18 }, { "task": 1, "start": 106, "machine": "B", "duration": 97 }, { "task": 2, "start": 204, "machine": "C", "duration": 55 }, { "task": 3, "start": 283, "machine": "D", "duration": 73 }, { "task": 4, "start": 360, "machine": "E", "duration": 67 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 492, "machine": "A", "duration": 49 }, { "task": 1, "start": 604, "machine": "B", "duration": 56 }, { "task": 2, "start": 665, "machine": "C", "duration": 39 }, { "task": 3, "start": 776, "machine": "D", "duration": 17 }, { "task": 4, "start": 803, "machine": "E", "duration": 34 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 274, "machine": "A", "duration": 87 }, { "task": 1, "start": 392, "machine": "B", "duration": 34 }, { "task": 2, "start": 523, "machine": "C", "duration": 45 }, { "task": 3, "start": 581, "machine": "D", "duration": 52 }, { "task": 4, "start": 654, "machine": "E", "duration": 31 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 457, "machine": "A", "duration": 35 }, { "task": 1, "start": 492, "machine": "B", "duration": 60 }, { "task": 2, "start": 592, "machine": "C", "duration": 69 }, { "task": 3, "start": 696, "machine": "D", "duration": 80 }, { "task": 4, "start": 795, "machine": "E", "duration": 6 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 36, "machine": "A", "duration": 52 }, { "task": 1, "start": 88, "machine": "B", "duration": 11 }, { "task": 2, "start": 99, "machine": "C", "duration": 13 }, { "task": 3, "start": 153, "machine": "D", "duration": 37 }, { "task": 4, "start": 190, "machine": "E", "duration": 80 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 233, "machine": "A", "duration": 41 }, { "task": 1, "start": 326, "machine": "B", "duration": 63 }, { "task": 2, "start": 441, "machine": "C", "duration": 82 }, { "task": 3, "start": 526, "machine": "D", "duration": 55 }, { "task": 4, "start": 685, "machine": "E", "duration": 27 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 1, "machine": "A", "duration": 35 }, { "task": 1, "start": 59, "machine": "B", "duration": 13 }, { "task": 2, "start": 72, "machine": "C", "duration": 14 }, { "task": 3, "start": 86, "machine": "D", "duration": 67 }, { "task": 4, "start": 427, "machine": "E", "duration": 58 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 361, "machine": "A", "duration": 63 }, { "task": 1, "start": 426, "machine": "B", "duration": 58 }, { "task": 2, "start": 568, "machine": "C", "duration": 24 }, { "task": 3, "start": 633, "machine": "D", "duration": 63 }, { "task": 4, "start": 712, "machine": "E", "duration": 82 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 200, "machine": "A", "duration": 33 }, { "task": 1, "start": 238, "machine": "B", "duration": 88 }, { "task": 2, "start": 353, "machine": "C", "duration": 88 }, { "task": 3, "start": 452, "machine": "D", "duration": 74 }, { "task": 4, "start": 558, "machine": "E", "duration": 96 } ] }, { "job": "J12", "tasks": [ { "task": 0, "start": 424, "machine": "A", "duration": 33 }, { "task": 1, "start": 552, "machine": "B", "duration": 33 }, { "task": 2, "start": 704, "machine": "C", "duration": 88 }, { "task": 3, "start": 793, "machine": "D", "duration": 46 }, { "task": 4, "start": 839, "machine": "E", "duration": 3 } ] } ], "context_index": 9, "input_format": "csv", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "I’m the foreperson on the shop floor, lining up a batch of tabletops that all need the same run of stations — sanding, staining, assembly — each step taking a known amount of time. The job is to pick the order the tables go through and set their start times so no station ever works on two tables at once and every table goes through each step exactly once in the same order. A good plan is the one that gets the last table off the final station as early as possible, so success is measured by that finishing time. The exact stations and operation times are shown below.\n\n# nr_tables=12\n# nr_stations=6\n# table_ids=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11, J12\n# station_ids=1, 2, 3, 4, 5, 6\ntable_id,step_index,station_id,processing_time\nJ1,0,1,1\nJ1,1,2,71\nJ1,2,3,54\nJ1,3,4,39\nJ1,4,5,17\nJ1,5,6,17\nJ2,0,1,40\nJ2,1,2,62\nJ2,2,3,64\nJ2,3,4,67\nJ2,4,5,56\nJ2,5,6,49\nJ3,0,1,38\nJ3,1,2,76\nJ3,2,3,72\nJ3,3,4,2\nJ3,4,5,23\nJ3,5,6,39\nJ4,0,1,55\nJ4,1,2,41\nJ4,2,3,29\nJ4,3,4,3\nJ4,4,5,4\nJ4,5,6,45\nJ5,0,1,16\nJ5,1,2,87\nJ5,2,3,69\nJ5,3,4,35\nJ5,4,5,22\nJ5,5,6,76\nJ6,0,1,43\nJ6,1,2,87\nJ6,2,3,39\nJ6,3,4,42\nJ6,4,5,54\nJ6,5,6,74\nJ7,0,1,27\nJ7,1,2,58\nJ7,2,3,54\nJ7,3,4,63\nJ7,4,5,60\nJ7,5,6,11\nJ8,0,1,85\nJ8,1,2,42\nJ8,2,3,23\nJ8,3,4,70\nJ8,4,5,22\nJ8,5,6,12\nJ9,0,1,90\nJ9,1,2,26\nJ9,2,3,10\nJ9,3,4,37\nJ9,4,5,13\nJ9,5,6,3\nJ10,0,1,32\nJ10,1,2,49\nJ10,2,3,81\nJ10,3,4,78\nJ10,4,5,37\nJ10,5,6,9\nJ11,0,1,14\nJ11,1,2,73\nJ11,2,3,33\nJ11,3,4,27\nJ11,4,5,32\nJ11,5,6,20\nJ12,0,1,57\nJ12,1,2,63\nJ12,2,3,34\nJ12,3,4,76\nJ12,4,5,54\nJ12,5,6,59\n\nAlso, when you send me the actual schedule, it helps if you follow this little JSON layout so everything’s easy to read and parse:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThis is just a template to show the shape I’m expecting. Think of it like a simple form: \"solution\" is the list of all tables (jobs), each entry has the job identifier, and \"tasks\" is the sequence of steps for that table. Inside each task object, \"task\" is which step in the sequence it is, \"start\" is the time that step begins, \"machine\" is which station is doing the work, and \"duration\" is how long that step takes. Keep it light—this block is a sketch of the expected shape, not the actual schedule.\n\nPlease be careful to use the exact identifiers from the instance input — don’t rename them or invent new labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 6, "nr_jobs": 12, "jobs": [ [ [ 0, 1 ], [ 1, 71 ], [ 2, 54 ], [ 3, 39 ], [ 4, 17 ], [ 5, 17 ] ], [ [ 0, 40 ], [ 1, 62 ], [ 2, 64 ], [ 3, 67 ], [ 4, 56 ], [ 5, 49 ] ], [ [ 0, 38 ], [ 1, 76 ], [ 2, 72 ], [ 3, 2 ], [ 4, 23 ], [ 5, 39 ] ], [ [ 0, 55 ], [ 1, 41 ], [ 2, 29 ], [ 3, 3 ], [ 4, 4 ], [ 5, 45 ] ], [ [ 0, 16 ], [ 1, 87 ], [ 2, 69 ], [ 3, 35 ], [ 4, 22 ], [ 5, 76 ] ], [ [ 0, 43 ], [ 1, 87 ], [ 2, 39 ], [ 3, 42 ], [ 4, 54 ], [ 5, 74 ] ], [ [ 0, 27 ], [ 1, 58 ], [ 2, 54 ], [ 3, 63 ], [ 4, 60 ], [ 5, 11 ] ], [ [ 0, 85 ], [ 1, 42 ], [ 2, 23 ], [ 3, 70 ], [ 4, 22 ], [ 5, 12 ] ], [ [ 0, 90 ], [ 1, 26 ], [ 2, 10 ], [ 3, 37 ], [ 4, 13 ], [ 5, 3 ] ], [ [ 0, 32 ], [ 1, 49 ], [ 2, 81 ], [ 3, 78 ], [ 4, 37 ], [ 5, 9 ] ], [ [ 0, 14 ], [ 1, 73 ], [ 2, 33 ], [ 3, 27 ], [ 4, 32 ], [ 5, 20 ] ], [ [ 0, 57 ], [ 1, 63 ], [ 2, 34 ], [ 3, 76 ], [ 4, 54 ], [ 5, 59 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 71 }, { "task": 2, "start": 72, "machine": 2, "duration": 54 }, { "task": 3, "start": 126, "machine": 3, "duration": 39 }, { "task": 4, "start": 459, "machine": 4, "duration": 17 }, { "task": 5, "start": 508, "machine": 5, "duration": 17 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 153, "machine": 0, "duration": 40 }, { "task": 1, "start": 193, "machine": 1, "duration": 62 }, { "task": 2, "start": 263, "machine": 2, "duration": 64 }, { "task": 3, "start": 336, "machine": 3, "duration": 67 }, { "task": 4, "start": 403, "machine": 4, "duration": 56 }, { "task": 5, "start": 459, "machine": 5, "duration": 49 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 115, "machine": 0, "duration": 38 }, { "task": 1, "start": 520, "machine": 1, "duration": 76 }, { "task": 2, "start": 596, "machine": 2, "duration": 72 }, { "task": 3, "start": 682, "machine": 3, "duration": 2 }, { "task": 4, "start": 684, "machine": 4, "duration": 23 }, { "task": 5, "start": 707, "machine": 5, "duration": 39 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 476, "machine": 0, "duration": 55 }, { "task": 1, "start": 669, "machine": 1, "duration": 41 }, { "task": 2, "start": 710, "machine": 2, "duration": 29 }, { "task": 3, "start": 739, "machine": 3, "duration": 3 }, { "task": 4, "start": 742, "machine": 4, "duration": 4 }, { "task": 5, "start": 746, "machine": 5, "duration": 45 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 99, "machine": 0, "duration": 16 }, { "task": 1, "start": 304, "machine": 1, "duration": 87 }, { "task": 2, "start": 417, "machine": 2, "duration": 69 }, { "task": 3, "start": 486, "machine": 3, "duration": 35 }, { "task": 4, "start": 523, "machine": 4, "duration": 22 }, { "task": 5, "start": 545, "machine": 5, "duration": 76 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 348, "machine": 0, "duration": 43 }, { "task": 1, "start": 391, "machine": 1, "duration": 87 }, { "task": 2, "start": 486, "machine": 2, "duration": 39 }, { "task": 3, "start": 525, "machine": 3, "duration": 42 }, { "task": 4, "start": 567, "machine": 4, "duration": 54 }, { "task": 5, "start": 621, "machine": 5, "duration": 74 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 72, "machine": 0, "duration": 27 }, { "task": 1, "start": 135, "machine": 1, "duration": 58 }, { "task": 2, "start": 209, "machine": 2, "duration": 54 }, { "task": 3, "start": 273, "machine": 3, "duration": 63 }, { "task": 4, "start": 336, "machine": 4, "duration": 60 }, { "task": 5, "start": 534, "machine": 5, "duration": 11 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 391, "machine": 0, "duration": 85 }, { "task": 1, "start": 478, "machine": 1, "duration": 42 }, { "task": 2, "start": 525, "machine": 2, "duration": 23 }, { "task": 3, "start": 567, "machine": 3, "duration": 70 }, { "task": 4, "start": 637, "machine": 4, "duration": 22 }, { "task": 5, "start": 695, "machine": 5, "duration": 12 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 225, "machine": 0, "duration": 90 }, { "task": 1, "start": 710, "machine": 1, "duration": 26 }, { "task": 2, "start": 739, "machine": 2, "duration": 10 }, { "task": 3, "start": 749, "machine": 3, "duration": 37 }, { "task": 4, "start": 791, "machine": 4, "duration": 13 }, { "task": 5, "start": 811, "machine": 5, "duration": 3 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 193, "machine": 0, "duration": 32 }, { "task": 1, "start": 255, "machine": 1, "duration": 49 }, { "task": 2, "start": 327, "machine": 2, "duration": 81 }, { "task": 3, "start": 408, "machine": 3, "duration": 78 }, { "task": 4, "start": 486, "machine": 4, "duration": 37 }, { "task": 5, "start": 525, "machine": 5, "duration": 9 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 58, "machine": 0, "duration": 14 }, { "task": 1, "start": 596, "machine": 1, "duration": 73 }, { "task": 2, "start": 669, "machine": 2, "duration": 33 }, { "task": 3, "start": 712, "machine": 3, "duration": 27 }, { "task": 4, "start": 759, "machine": 4, "duration": 32 }, { "task": 5, "start": 791, "machine": 5, "duration": 20 } ] }, { "job": 11, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 57 }, { "task": 1, "start": 72, "machine": 1, "duration": 63 }, { "task": 2, "start": 135, "machine": 2, "duration": 34 }, { "task": 3, "start": 197, "machine": 3, "duration": 76 }, { "task": 4, "start": 273, "machine": 4, "duration": 54 }, { "task": 5, "start": 327, "machine": 5, "duration": 59 } ] } ], "obj": 814.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 12, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11", "J12" ], "machines": [ 1, 2, 3, 4, 5, 6 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 2, "duration": 71 }, { "job_id": "J1", "task_id": 2, "machine_id": 3, "duration": 54 }, { "job_id": "J1", "task_id": 3, "machine_id": 4, "duration": 39 }, { "job_id": "J1", "task_id": 4, "machine_id": 5, "duration": 17 }, { "job_id": "J1", "task_id": 5, "machine_id": 6, "duration": 17 }, { "job_id": "J2", "task_id": 0, "machine_id": 1, "duration": 40 }, { "job_id": "J2", "task_id": 1, "machine_id": 2, "duration": 62 }, { "job_id": "J2", "task_id": 2, "machine_id": 3, "duration": 64 }, { "job_id": "J2", "task_id": 3, "machine_id": 4, "duration": 67 }, { "job_id": "J2", "task_id": 4, "machine_id": 5, "duration": 56 }, { "job_id": "J2", "task_id": 5, "machine_id": 6, "duration": 49 }, { "job_id": "J3", "task_id": 0, "machine_id": 1, "duration": 38 }, { "job_id": "J3", "task_id": 1, "machine_id": 2, "duration": 76 }, { "job_id": "J3", "task_id": 2, "machine_id": 3, "duration": 72 }, { "job_id": "J3", "task_id": 3, "machine_id": 4, "duration": 2 }, { "job_id": "J3", "task_id": 4, "machine_id": 5, "duration": 23 }, { "job_id": "J3", "task_id": 5, "machine_id": 6, "duration": 39 }, { "job_id": "J4", "task_id": 0, "machine_id": 1, "duration": 55 }, { "job_id": "J4", "task_id": 1, "machine_id": 2, "duration": 41 }, { "job_id": "J4", "task_id": 2, "machine_id": 3, "duration": 29 }, { "job_id": "J4", "task_id": 3, "machine_id": 4, "duration": 3 }, { "job_id": "J4", "task_id": 4, "machine_id": 5, "duration": 4 }, { "job_id": "J4", "task_id": 5, "machine_id": 6, "duration": 45 }, { "job_id": "J5", "task_id": 0, "machine_id": 1, "duration": 16 }, { "job_id": "J5", "task_id": 1, "machine_id": 2, "duration": 87 }, { "job_id": "J5", "task_id": 2, "machine_id": 3, "duration": 69 }, { "job_id": "J5", "task_id": 3, "machine_id": 4, "duration": 35 }, { "job_id": "J5", "task_id": 4, "machine_id": 5, "duration": 22 }, { "job_id": "J5", "task_id": 5, "machine_id": 6, "duration": 76 }, { "job_id": "J6", "task_id": 0, "machine_id": 1, "duration": 43 }, { "job_id": "J6", "task_id": 1, "machine_id": 2, "duration": 87 }, { "job_id": "J6", "task_id": 2, "machine_id": 3, "duration": 39 }, { "job_id": "J6", "task_id": 3, "machine_id": 4, "duration": 42 }, { "job_id": "J6", "task_id": 4, "machine_id": 5, "duration": 54 }, { "job_id": "J6", "task_id": 5, "machine_id": 6, "duration": 74 }, { "job_id": "J7", "task_id": 0, "machine_id": 1, "duration": 27 }, { "job_id": "J7", "task_id": 1, "machine_id": 2, "duration": 58 }, { "job_id": "J7", "task_id": 2, "machine_id": 3, "duration": 54 }, { "job_id": "J7", "task_id": 3, "machine_id": 4, "duration": 63 }, { "job_id": "J7", "task_id": 4, "machine_id": 5, "duration": 60 }, { "job_id": "J7", "task_id": 5, "machine_id": 6, "duration": 11 }, { "job_id": "J8", "task_id": 0, "machine_id": 1, "duration": 85 }, { "job_id": "J8", "task_id": 1, "machine_id": 2, "duration": 42 }, { "job_id": "J8", "task_id": 2, "machine_id": 3, "duration": 23 }, { "job_id": "J8", "task_id": 3, "machine_id": 4, "duration": 70 }, { "job_id": "J8", "task_id": 4, "machine_id": 5, "duration": 22 }, { "job_id": "J8", "task_id": 5, "machine_id": 6, "duration": 12 }, { "job_id": "J9", "task_id": 0, "machine_id": 1, "duration": 90 }, { "job_id": "J9", "task_id": 1, "machine_id": 2, "duration": 26 }, { "job_id": "J9", "task_id": 2, "machine_id": 3, "duration": 10 }, { "job_id": "J9", "task_id": 3, "machine_id": 4, "duration": 37 }, { "job_id": "J9", "task_id": 4, "machine_id": 5, "duration": 13 }, { "job_id": "J9", "task_id": 5, "machine_id": 6, "duration": 3 }, { "job_id": "J10", "task_id": 0, "machine_id": 1, "duration": 32 }, { "job_id": "J10", "task_id": 1, "machine_id": 2, "duration": 49 }, { "job_id": "J10", "task_id": 2, "machine_id": 3, "duration": 81 }, { "job_id": "J10", "task_id": 3, "machine_id": 4, "duration": 78 }, { "job_id": "J10", "task_id": 4, "machine_id": 5, "duration": 37 }, { "job_id": "J10", "task_id": 5, "machine_id": 6, "duration": 9 }, { "job_id": "J11", "task_id": 0, "machine_id": 1, "duration": 14 }, { "job_id": "J11", "task_id": 1, "machine_id": 2, "duration": 73 }, { "job_id": "J11", "task_id": 2, "machine_id": 3, "duration": 33 }, { "job_id": "J11", "task_id": 3, "machine_id": 4, "duration": 27 }, { "job_id": "J11", "task_id": 4, "machine_id": 5, "duration": 32 }, { "job_id": "J11", "task_id": 5, "machine_id": 6, "duration": 20 }, { "job_id": "J12", "task_id": 0, "machine_id": 1, "duration": 57 }, { "job_id": "J12", "task_id": 1, "machine_id": 2, "duration": 63 }, { "job_id": "J12", "task_id": 2, "machine_id": 3, "duration": 34 }, { "job_id": "J12", "task_id": 3, "machine_id": 4, "duration": 76 }, { "job_id": "J12", "task_id": 4, "machine_id": 5, "duration": 54 }, { "job_id": "J12", "task_id": 5, "machine_id": 6, "duration": 59 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 1, "duration": 1 }, { "task": 1, "start": 1, "machine": 2, "duration": 71 }, { "task": 2, "start": 72, "machine": 3, "duration": 54 }, { "task": 3, "start": 126, "machine": 4, "duration": 39 }, { "task": 4, "start": 459, "machine": 5, "duration": 17 }, { "task": 5, "start": 508, "machine": 6, "duration": 17 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 153, "machine": 1, "duration": 40 }, { "task": 1, "start": 193, "machine": 2, "duration": 62 }, { "task": 2, "start": 263, "machine": 3, "duration": 64 }, { "task": 3, "start": 336, "machine": 4, "duration": 67 }, { "task": 4, "start": 403, "machine": 5, "duration": 56 }, { "task": 5, "start": 459, "machine": 6, "duration": 49 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 115, "machine": 1, "duration": 38 }, { "task": 1, "start": 520, "machine": 2, "duration": 76 }, { "task": 2, "start": 596, "machine": 3, "duration": 72 }, { "task": 3, "start": 682, "machine": 4, "duration": 2 }, { "task": 4, "start": 684, "machine": 5, "duration": 23 }, { "task": 5, "start": 707, "machine": 6, "duration": 39 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 476, "machine": 1, "duration": 55 }, { "task": 1, "start": 669, "machine": 2, "duration": 41 }, { "task": 2, "start": 710, "machine": 3, "duration": 29 }, { "task": 3, "start": 739, "machine": 4, "duration": 3 }, { "task": 4, "start": 742, "machine": 5, "duration": 4 }, { "task": 5, "start": 746, "machine": 6, "duration": 45 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 99, "machine": 1, "duration": 16 }, { "task": 1, "start": 304, "machine": 2, "duration": 87 }, { "task": 2, "start": 417, "machine": 3, "duration": 69 }, { "task": 3, "start": 486, "machine": 4, "duration": 35 }, { "task": 4, "start": 523, "machine": 5, "duration": 22 }, { "task": 5, "start": 545, "machine": 6, "duration": 76 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 348, "machine": 1, "duration": 43 }, { "task": 1, "start": 391, "machine": 2, "duration": 87 }, { "task": 2, "start": 486, "machine": 3, "duration": 39 }, { "task": 3, "start": 525, "machine": 4, "duration": 42 }, { "task": 4, "start": 567, "machine": 5, "duration": 54 }, { "task": 5, "start": 621, "machine": 6, "duration": 74 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 72, "machine": 1, "duration": 27 }, { "task": 1, "start": 135, "machine": 2, "duration": 58 }, { "task": 2, "start": 209, "machine": 3, "duration": 54 }, { "task": 3, "start": 273, "machine": 4, "duration": 63 }, { "task": 4, "start": 336, "machine": 5, "duration": 60 }, { "task": 5, "start": 534, "machine": 6, "duration": 11 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 391, "machine": 1, "duration": 85 }, { "task": 1, "start": 478, "machine": 2, "duration": 42 }, { "task": 2, "start": 525, "machine": 3, "duration": 23 }, { "task": 3, "start": 567, "machine": 4, "duration": 70 }, { "task": 4, "start": 637, "machine": 5, "duration": 22 }, { "task": 5, "start": 695, "machine": 6, "duration": 12 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 225, "machine": 1, "duration": 90 }, { "task": 1, "start": 710, "machine": 2, "duration": 26 }, { "task": 2, "start": 739, "machine": 3, "duration": 10 }, { "task": 3, "start": 749, "machine": 4, "duration": 37 }, { "task": 4, "start": 791, "machine": 5, "duration": 13 }, { "task": 5, "start": 811, "machine": 6, "duration": 3 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 193, "machine": 1, "duration": 32 }, { "task": 1, "start": 255, "machine": 2, "duration": 49 }, { "task": 2, "start": 327, "machine": 3, "duration": 81 }, { "task": 3, "start": 408, "machine": 4, "duration": 78 }, { "task": 4, "start": 486, "machine": 5, "duration": 37 }, { "task": 5, "start": 525, "machine": 6, "duration": 9 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 58, "machine": 1, "duration": 14 }, { "task": 1, "start": 596, "machine": 2, "duration": 73 }, { "task": 2, "start": 669, "machine": 3, "duration": 33 }, { "task": 3, "start": 712, "machine": 4, "duration": 27 }, { "task": 4, "start": 759, "machine": 5, "duration": 32 }, { "task": 5, "start": 791, "machine": 6, "duration": 20 } ] }, { "job": "J12", "tasks": [ { "task": 0, "start": 1, "machine": 1, "duration": 57 }, { "task": 1, "start": 72, "machine": 2, "duration": 63 }, { "task": 2, "start": 135, "machine": 3, "duration": 34 }, { "task": 3, "start": 197, "machine": 4, "duration": 76 }, { "task": 4, "start": 273, "machine": 5, "duration": 54 }, { "task": 5, "start": 327, "machine": 6, "duration": 59 } ] } ], "context_index": 10, "input_format": "csv", "input_index_base": 1 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "On a busy morning at the brewery, multiple lots must pass through the same lineup of tanks and finishing stages, each step with its own processing time. The operator must time every move so tanks aren’t used by more than one batch at once, and every batch follows the same ordered steps exactly once. The success metric is easy to understand: the moment the final batch is completed — earlier is better. The instance specifics are written out below.\n\nThis instance lists 9 batches to run through 5 stages, identified as J1, J2, J3, J4, J5, J6, J7, J8, J9 for the batches and 0, 1, 2, 3, 4 for the stages.\n\n| batch_id | stage_index | stage_id | processing_time |\n|---|---|---|---|\n| J1 | 0 | 0 | 1 |\n| J1 | 1 | 1 | 84 |\n| J1 | 2 | 2 | 29 |\n| J1 | 3 | 3 | 85 |\n| J1 | 4 | 4 | 70 |\n| J2 | 0 | 0 | 39 |\n| J2 | 1 | 1 | 45 |\n| J2 | 2 | 2 | 30 |\n| J2 | 3 | 3 | 33 |\n| J2 | 4 | 4 | 60 |\n| J3 | 0 | 0 | 94 |\n| J3 | 1 | 1 | 1 |\n| J3 | 2 | 2 | 21 |\n| J3 | 3 | 3 | 79 |\n| J3 | 4 | 4 | 78 |\n| J4 | 0 | 0 | 54 |\n| J4 | 1 | 1 | 90 |\n| J4 | 2 | 2 | 40 |\n| J4 | 3 | 3 | 93 |\n| J4 | 4 | 4 | 48 |\n| J5 | 0 | 0 | 71 |\n| J5 | 1 | 1 | 71 |\n| J5 | 2 | 2 | 63 |\n| J5 | 3 | 3 | 38 |\n| J5 | 4 | 4 | 1 |\n| J6 | 0 | 0 | 40 |\n| J6 | 1 | 1 | 78 |\n| J6 | 2 | 2 | 1 |\n| J6 | 3 | 3 | 63 |\n| J6 | 4 | 4 | 46 |\n| J7 | 0 | 0 | 34 |\n| J7 | 1 | 1 | 63 |\n| J7 | 2 | 2 | 65 |\n| J7 | 3 | 3 | 47 |\n| J7 | 4 | 4 | 28 |\n| J8 | 0 | 0 | 7 |\n| J8 | 1 | 1 | 89 |\n| J8 | 2 | 2 | 34 |\n| J8 | 3 | 3 | 53 |\n| J8 | 4 | 4 | 99 |\n| J9 | 0 | 0 | 84 |\n| J9 | 1 | 1 | 10 |\n| J9 | 2 | 2 | 58 |\n| J9 | 3 | 3 | 18 |\n| J9 | 4 | 4 | 88 |\n\nSchedule the moves so the last of the 9 batches completes as early as possible across the 5 stages.\n\nAlso, when you send the schedule back, I’d prefer it in a little JSON layout so it’s easy to read and plug in. Something like this:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of it as a simple form: the top-level \"solution\" is a list of batches, each \"job\" is a batch identifier, and \"tasks\" is the ordered list of steps that batch goes through. For each task, \"task\" says which step it is, \"start\" says when that step begins (same time units as the instance), \"machine\" names the tank or station used, and \"duration\" is how long that step takes. Super light — just enough to know who goes where and when.\n\nThis JSON is only a sketch of the expected shape, not the actual schedule — please fill in the real ids and numbers when you reply.\n\nAlso, please use the exact identifiers from the instance input with no renaming or extra labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 5, "nr_jobs": 9, "jobs": [ [ [ 0, 1 ], [ 1, 84 ], [ 2, 29 ], [ 3, 85 ], [ 4, 70 ] ], [ [ 0, 39 ], [ 1, 45 ], [ 2, 30 ], [ 3, 33 ], [ 4, 60 ] ], [ [ 0, 94 ], [ 1, 1 ], [ 2, 21 ], [ 3, 79 ], [ 4, 78 ] ], [ [ 0, 54 ], [ 1, 90 ], [ 2, 40 ], [ 3, 93 ], [ 4, 48 ] ], [ [ 0, 71 ], [ 1, 71 ], [ 2, 63 ], [ 3, 38 ], [ 4, 1 ] ], [ [ 0, 40 ], [ 1, 78 ], [ 2, 1 ], [ 3, 63 ], [ 4, 46 ] ], [ [ 0, 34 ], [ 1, 63 ], [ 2, 65 ], [ 3, 47 ], [ 4, 28 ] ], [ [ 0, 7 ], [ 1, 89 ], [ 2, 34 ], [ 3, 53 ], [ 4, 99 ] ], [ [ 0, 84 ], [ 1, 10 ], [ 2, 58 ], [ 3, 18 ], [ 4, 88 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 264, "machine": 0, "duration": 1 }, { "task": 1, "start": 270, "machine": 1, "duration": 84 }, { "task": 2, "start": 354, "machine": 2, "duration": 29 }, { "task": 3, "start": 423, "machine": 3, "duration": 85 }, { "task": 4, "start": 542, "machine": 4, "duration": 70 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 39 }, { "task": 1, "start": 39, "machine": 1, "duration": 45 }, { "task": 2, "start": 84, "machine": 2, "duration": 30 }, { "task": 3, "start": 114, "machine": 3, "duration": 33 }, { "task": 4, "start": 147, "machine": 4, "duration": 60 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 170, "machine": 0, "duration": 94 }, { "task": 1, "start": 264, "machine": 1, "duration": 1 }, { "task": 2, "start": 265, "machine": 2, "duration": 21 }, { "task": 3, "start": 286, "machine": 3, "duration": 79 }, { "task": 4, "start": 365, "machine": 4, "duration": 78 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 265, "machine": 0, "duration": 54 }, { "task": 1, "start": 354, "machine": 1, "duration": 90 }, { "task": 2, "start": 444, "machine": 2, "duration": 40 }, { "task": 3, "start": 508, "machine": 3, "duration": 93 }, { "task": 4, "start": 612, "machine": 4, "duration": 48 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 353, "machine": 0, "duration": 71 }, { "task": 1, "start": 507, "machine": 1, "duration": 71 }, { "task": 2, "start": 578, "machine": 2, "duration": 63 }, { "task": 3, "start": 648, "machine": 3, "duration": 38 }, { "task": 4, "start": 688, "machine": 4, "duration": 1 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 39, "machine": 0, "duration": 40 }, { "task": 1, "start": 84, "machine": 1, "duration": 78 }, { "task": 2, "start": 162, "machine": 2, "duration": 1 }, { "task": 3, "start": 163, "machine": 3, "duration": 63 }, { "task": 4, "start": 226, "machine": 4, "duration": 46 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 319, "machine": 0, "duration": 34 }, { "task": 1, "start": 444, "machine": 1, "duration": 63 }, { "task": 2, "start": 507, "machine": 2, "duration": 65 }, { "task": 3, "start": 601, "machine": 3, "duration": 47 }, { "task": 4, "start": 660, "machine": 4, "duration": 28 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 163, "machine": 0, "duration": 7 }, { "task": 1, "start": 173, "machine": 1, "duration": 89 }, { "task": 2, "start": 291, "machine": 2, "duration": 34 }, { "task": 3, "start": 370, "machine": 3, "duration": 53 }, { "task": 4, "start": 443, "machine": 4, "duration": 99 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 79, "machine": 0, "duration": 84 }, { "task": 1, "start": 163, "machine": 1, "duration": 10 }, { "task": 2, "start": 180, "machine": 2, "duration": 58 }, { "task": 3, "start": 238, "machine": 3, "duration": 18 }, { "task": 4, "start": 272, "machine": 4, "duration": 88 } ] } ], "obj": 689.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 9, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9" ], "machines": [ 0, 1, 2, 3, 4 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 84 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 29 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 85 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 70 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 39 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 45 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 30 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 33 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 60 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 94 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 1 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 21 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 79 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 78 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 54 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 90 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 40 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 93 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 48 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 71 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 71 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 63 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 38 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 1 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 40 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 78 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 1 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 63 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 46 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 34 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 63 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 65 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 47 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 28 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 7 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 89 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 34 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 53 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 99 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 84 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 10 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 58 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 18 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 88 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 264, "machine": 0, "duration": 1 }, { "task": 1, "start": 270, "machine": 1, "duration": 84 }, { "task": 2, "start": 354, "machine": 2, "duration": 29 }, { "task": 3, "start": 423, "machine": 3, "duration": 85 }, { "task": 4, "start": 542, "machine": 4, "duration": 70 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 39 }, { "task": 1, "start": 39, "machine": 1, "duration": 45 }, { "task": 2, "start": 84, "machine": 2, "duration": 30 }, { "task": 3, "start": 114, "machine": 3, "duration": 33 }, { "task": 4, "start": 147, "machine": 4, "duration": 60 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 170, "machine": 0, "duration": 94 }, { "task": 1, "start": 264, "machine": 1, "duration": 1 }, { "task": 2, "start": 265, "machine": 2, "duration": 21 }, { "task": 3, "start": 286, "machine": 3, "duration": 79 }, { "task": 4, "start": 365, "machine": 4, "duration": 78 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 265, "machine": 0, "duration": 54 }, { "task": 1, "start": 354, "machine": 1, "duration": 90 }, { "task": 2, "start": 444, "machine": 2, "duration": 40 }, { "task": 3, "start": 508, "machine": 3, "duration": 93 }, { "task": 4, "start": 612, "machine": 4, "duration": 48 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 353, "machine": 0, "duration": 71 }, { "task": 1, "start": 507, "machine": 1, "duration": 71 }, { "task": 2, "start": 578, "machine": 2, "duration": 63 }, { "task": 3, "start": 648, "machine": 3, "duration": 38 }, { "task": 4, "start": 688, "machine": 4, "duration": 1 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 39, "machine": 0, "duration": 40 }, { "task": 1, "start": 84, "machine": 1, "duration": 78 }, { "task": 2, "start": 162, "machine": 2, "duration": 1 }, { "task": 3, "start": 163, "machine": 3, "duration": 63 }, { "task": 4, "start": 226, "machine": 4, "duration": 46 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 319, "machine": 0, "duration": 34 }, { "task": 1, "start": 444, "machine": 1, "duration": 63 }, { "task": 2, "start": 507, "machine": 2, "duration": 65 }, { "task": 3, "start": 601, "machine": 3, "duration": 47 }, { "task": 4, "start": 660, "machine": 4, "duration": 28 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 163, "machine": 0, "duration": 7 }, { "task": 1, "start": 173, "machine": 1, "duration": 89 }, { "task": 2, "start": 291, "machine": 2, "duration": 34 }, { "task": 3, "start": 370, "machine": 3, "duration": 53 }, { "task": 4, "start": 443, "machine": 4, "duration": 99 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 79, "machine": 0, "duration": 84 }, { "task": 1, "start": 163, "machine": 1, "duration": 10 }, { "task": 2, "start": 180, "machine": 2, "duration": 58 }, { "task": 3, "start": 238, "machine": 3, "duration": 18 }, { "task": 4, "start": 272, "machine": 4, "duration": 88 } ] } ], "context_index": 11, "input_format": "markdown_table", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Someone’s lined up a batch of vehicles for fixes, and the plan is to move each one through the same sequence of repair stations with known task lengths. The decision is how to sequence and time those moves so each station handles only one car at a time and no service step is omitted or repeated. The success metric is the clock reading when the final car is done — lower is better — which is simply the maximum of all the individual completion times. The full breakdown of cars, bay order, and task durations appears below.\n\nThere are 12 vehicles and 6 bays to schedule; vehicle ids: J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11, J12; bay order: A, B, C, D, E, F.\nVehicle J1, step 0, requires bay A for 1.\nVehicle J1, step 1, requires bay B for 97.\nVehicle J1, step 2, requires bay C for 5.\nVehicle J1, step 3, requires bay D for 31.\nVehicle J1, step 4, requires bay E for 24.\nVehicle J1, step 5, requires bay F for 60.\nVehicle J2, step 0, requires bay A for 49.\nVehicle J2, step 1, requires bay B for 98.\nVehicle J2, step 2, requires bay C for 1.\nVehicle J2, step 3, requires bay D for 54.\nVehicle J2, step 4, requires bay E for 33.\nVehicle J2, step 5, requires bay F for 53.\nVehicle J3, step 0, requires bay A for 5.\nVehicle J3, step 1, requires bay B for 83.\nVehicle J3, step 2, requires bay C for 83.\nVehicle J3, step 3, requires bay D for 8.\nVehicle J3, step 4, requires bay E for 57.\nVehicle J3, step 5, requires bay F for 41.\nVehicle J4, step 0, requires bay A for 32.\nVehicle J4, step 1, requires bay B for 54.\nVehicle J4, step 2, requires bay C for 13.\nVehicle J4, step 3, requires bay D for 40.\nVehicle J4, step 4, requires bay E for 22.\nVehicle J4, step 5, requires bay F for 32.\nVehicle J5, step 0, requires bay A for 84.\nVehicle J5, step 1, requires bay B for 92.\nVehicle J5, step 2, requires bay C for 87.\nVehicle J5, step 3, requires bay D for 66.\nVehicle J5, step 4, requires bay E for 5.\nVehicle J5, step 5, requires bay F for 17.\nVehicle J6, step 0, requires bay A for 25.\nVehicle J6, step 1, requires bay B for 40.\nVehicle J6, step 2, requires bay C for 91.\nVehicle J6, step 3, requires bay D for 52.\nVehicle J6, step 4, requires bay E for 2.\nVehicle J6, step 5, requires bay F for 40.\nVehicle J7, step 0, requires bay A for 53.\nVehicle J7, step 1, requires bay B for 9.\nVehicle J7, step 2, requires bay C for 52.\nVehicle J7, step 3, requires bay D for 36.\nVehicle J7, step 4, requires bay E for 10.\nVehicle J7, step 5, requires bay F for 8.\nVehicle J8, step 0, requires bay A for 30.\nVehicle J8, step 1, requires bay B for 92.\nVehicle J8, step 2, requires bay C for 53.\nVehicle J8, step 3, requires bay D for 85.\nVehicle J8, step 4, requires bay E for 48.\nVehicle J8, step 5, requires bay F for 89.\nVehicle J9, step 0, requires bay A for 45.\nVehicle J9, step 1, requires bay B for 13.\nVehicle J9, step 2, requires bay C for 62.\nVehicle J9, step 3, requires bay D for 32.\nVehicle J9, step 4, requires bay E for 60.\nVehicle J9, step 5, requires bay F for 57.\nVehicle J10, step 0, requires bay A for 5.\nVehicle J10, step 1, requires bay B for 82.\nVehicle J10, step 2, requires bay C for 78.\nVehicle J10, step 3, requires bay D for 58.\nVehicle J10, step 4, requires bay E for 19.\nVehicle J10, step 5, requires bay F for 21.\nVehicle J11, step 0, requires bay A for 94.\nVehicle J11, step 1, requires bay B for 74.\nVehicle J11, step 2, requires bay C for 36.\nVehicle J11, step 3, requires bay D for 90.\nVehicle J11, step 4, requires bay E for 29.\nVehicle J11, step 5, requires bay F for 18.\nVehicle J12, step 0, requires bay A for 11.\nVehicle J12, step 1, requires bay B for 81.\nVehicle J12, step 2, requires bay C for 23.\nVehicle J12, step 3, requires bay D for 90.\nVehicle J12, step 4, requires bay E for 54.\nVehicle J12, step 5, requires bay F for 36.\nSequence and time the moves so each bay handles one vehicle at a time and the clock reading when the last vehicle is done is minimized.\n\nIf you want the answer in a tidy, machine-friendly form, just follow this JSON shape for the schedule — nothing fancy, just the fields you need:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of this as a simple form: \"solution\" holds a list (one entry per car), each entry's \"job\" is the car identifier, and \"tasks\" lists that car's service steps in order. For each task you give the step index, the time it starts, which repair bay/station it uses, and how long that step takes. Super casual — just fill in the placeholders with the real values when you return a schedule.\n\nThis JSON is only a sketch of the expected shape, not the actual schedule.\n\nPlease use the exact identifiers from the instance input — do not rename them or invent new labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 6, "nr_jobs": 12, "jobs": [ [ [ 0, 1 ], [ 1, 97 ], [ 2, 5 ], [ 3, 31 ], [ 4, 24 ], [ 5, 60 ] ], [ [ 0, 49 ], [ 1, 98 ], [ 2, 1 ], [ 3, 54 ], [ 4, 33 ], [ 5, 53 ] ], [ [ 0, 5 ], [ 1, 83 ], [ 2, 83 ], [ 3, 8 ], [ 4, 57 ], [ 5, 41 ] ], [ [ 0, 32 ], [ 1, 54 ], [ 2, 13 ], [ 3, 40 ], [ 4, 22 ], [ 5, 32 ] ], [ [ 0, 84 ], [ 1, 92 ], [ 2, 87 ], [ 3, 66 ], [ 4, 5 ], [ 5, 17 ] ], [ [ 0, 25 ], [ 1, 40 ], [ 2, 91 ], [ 3, 52 ], [ 4, 2 ], [ 5, 40 ] ], [ [ 0, 53 ], [ 1, 9 ], [ 2, 52 ], [ 3, 36 ], [ 4, 10 ], [ 5, 8 ] ], [ [ 0, 30 ], [ 1, 92 ], [ 2, 53 ], [ 3, 85 ], [ 4, 48 ], [ 5, 89 ] ], [ [ 0, 45 ], [ 1, 13 ], [ 2, 62 ], [ 3, 32 ], [ 4, 60 ], [ 5, 57 ] ], [ [ 0, 5 ], [ 1, 82 ], [ 2, 78 ], [ 3, 58 ], [ 4, 19 ], [ 5, 21 ] ], [ [ 0, 94 ], [ 1, 74 ], [ 2, 36 ], [ 3, 90 ], [ 4, 29 ], [ 5, 18 ] ], [ [ 0, 11 ], [ 1, 81 ], [ 2, 23 ], [ 3, 90 ], [ 4, 54 ], [ 5, 36 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 123, "machine": 0, "duration": 1 }, { "task": 1, "start": 669, "machine": 1, "duration": 97 }, { "task": 2, "start": 766, "machine": 2, "duration": 5 }, { "task": 3, "start": 771, "machine": 3, "duration": 31 }, { "task": 4, "start": 802, "machine": 4, "duration": 24 }, { "task": 5, "start": 827, "machine": 5, "duration": 60 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 385, "machine": 0, "duration": 49 }, { "task": 1, "start": 571, "machine": 1, "duration": 98 }, { "task": 2, "start": 669, "machine": 2, "duration": 1 }, { "task": 3, "start": 670, "machine": 3, "duration": 54 }, { "task": 4, "start": 724, "machine": 4, "duration": 33 }, { "task": 5, "start": 774, "machine": 5, "duration": 53 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 50, "machine": 0, "duration": 5 }, { "task": 1, "start": 488, "machine": 1, "duration": 83 }, { "task": 2, "start": 575, "machine": 2, "duration": 83 }, { "task": 3, "start": 658, "machine": 3, "duration": 8 }, { "task": 4, "start": 666, "machine": 4, "duration": 57 }, { "task": 5, "start": 733, "machine": 5, "duration": 41 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 91, "machine": 0, "duration": 32 }, { "task": 1, "start": 766, "machine": 1, "duration": 54 }, { "task": 2, "start": 820, "machine": 2, "duration": 13 }, { "task": 3, "start": 833, "machine": 3, "duration": 40 }, { "task": 4, "start": 873, "machine": 4, "duration": 22 }, { "task": 5, "start": 895, "machine": 5, "duration": 32 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 301, "machine": 0, "duration": 84 }, { "task": 1, "start": 396, "machine": 1, "duration": 92 }, { "task": 2, "start": 488, "machine": 2, "duration": 87 }, { "task": 3, "start": 579, "machine": 3, "duration": 66 }, { "task": 4, "start": 645, "machine": 4, "duration": 5 }, { "task": 5, "start": 716, "machine": 5, "duration": 17 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 55, "machine": 0, "duration": 25 }, { "task": 1, "start": 181, "machine": 1, "duration": 40 }, { "task": 2, "start": 331, "machine": 2, "duration": 91 }, { "task": 3, "start": 442, "machine": 3, "duration": 52 }, { "task": 4, "start": 494, "machine": 4, "duration": 2 }, { "task": 5, "start": 496, "machine": 5, "duration": 40 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 218, "machine": 0, "duration": 53 }, { "task": 1, "start": 295, "machine": 1, "duration": 9 }, { "task": 2, "start": 670, "machine": 2, "duration": 52 }, { "task": 3, "start": 724, "machine": 3, "duration": 36 }, { "task": 4, "start": 760, "machine": 4, "duration": 10 }, { "task": 5, "start": 887, "machine": 5, "duration": 8 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 271, "machine": 0, "duration": 30 }, { "task": 1, "start": 304, "machine": 1, "duration": 92 }, { "task": 2, "start": 422, "machine": 2, "duration": 53 }, { "task": 3, "start": 494, "machine": 3, "duration": 85 }, { "task": 4, "start": 579, "machine": 4, "duration": 48 }, { "task": 5, "start": 627, "machine": 5, "duration": 89 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 5, "machine": 0, "duration": 45 }, { "task": 1, "start": 87, "machine": 1, "duration": 13 }, { "task": 2, "start": 100, "machine": 2, "duration": 62 }, { "task": 3, "start": 162, "machine": 3, "duration": 32 }, { "task": 4, "start": 194, "machine": 4, "duration": 60 }, { "task": 5, "start": 254, "machine": 5, "duration": 57 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 5 }, { "task": 1, "start": 5, "machine": 1, "duration": 82 }, { "task": 2, "start": 204, "machine": 2, "duration": 78 }, { "task": 3, "start": 294, "machine": 3, "duration": 58 }, { "task": 4, "start": 352, "machine": 4, "duration": 19 }, { "task": 5, "start": 384, "machine": 5, "duration": 21 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 124, "machine": 0, "duration": 94 }, { "task": 1, "start": 221, "machine": 1, "duration": 74 }, { "task": 2, "start": 295, "machine": 2, "duration": 36 }, { "task": 3, "start": 352, "machine": 3, "duration": 90 }, { "task": 4, "start": 442, "machine": 4, "duration": 29 }, { "task": 5, "start": 471, "machine": 5, "duration": 18 } ] }, { "job": 11, "tasks": [ { "task": 0, "start": 80, "machine": 0, "duration": 11 }, { "task": 1, "start": 100, "machine": 1, "duration": 81 }, { "task": 2, "start": 181, "machine": 2, "duration": 23 }, { "task": 3, "start": 204, "machine": 3, "duration": 90 }, { "task": 4, "start": 294, "machine": 4, "duration": 54 }, { "task": 5, "start": 348, "machine": 5, "duration": 36 } ] } ], "obj": 927.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 12, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11", "J12" ], "machines": [ "A", "B", "C", "D", "E", "F" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 97 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 5 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 31 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 24 }, { "job_id": "J1", "task_id": 5, "machine_id": "F", "duration": 60 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 49 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 98 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 1 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 54 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 33 }, { "job_id": "J2", "task_id": 5, "machine_id": "F", "duration": 53 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 5 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 83 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 83 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 8 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 57 }, { "job_id": "J3", "task_id": 5, "machine_id": "F", "duration": 41 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 32 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 54 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 13 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 40 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 22 }, { "job_id": "J4", "task_id": 5, "machine_id": "F", "duration": 32 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 84 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 92 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 87 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 66 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 5 }, { "job_id": "J5", "task_id": 5, "machine_id": "F", "duration": 17 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 25 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 40 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 91 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 52 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 2 }, { "job_id": "J6", "task_id": 5, "machine_id": "F", "duration": 40 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 53 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 9 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 52 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 36 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 10 }, { "job_id": "J7", "task_id": 5, "machine_id": "F", "duration": 8 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 30 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 92 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 53 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 85 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 48 }, { "job_id": "J8", "task_id": 5, "machine_id": "F", "duration": 89 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 45 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 13 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 62 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 32 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 60 }, { "job_id": "J9", "task_id": 5, "machine_id": "F", "duration": 57 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 5 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 82 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 78 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 58 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 19 }, { "job_id": "J10", "task_id": 5, "machine_id": "F", "duration": 21 }, { "job_id": "J11", "task_id": 0, "machine_id": "A", "duration": 94 }, { "job_id": "J11", "task_id": 1, "machine_id": "B", "duration": 74 }, { "job_id": "J11", "task_id": 2, "machine_id": "C", "duration": 36 }, { "job_id": "J11", "task_id": 3, "machine_id": "D", "duration": 90 }, { "job_id": "J11", "task_id": 4, "machine_id": "E", "duration": 29 }, { "job_id": "J11", "task_id": 5, "machine_id": "F", "duration": 18 }, { "job_id": "J12", "task_id": 0, "machine_id": "A", "duration": 11 }, { "job_id": "J12", "task_id": 1, "machine_id": "B", "duration": 81 }, { "job_id": "J12", "task_id": 2, "machine_id": "C", "duration": 23 }, { "job_id": "J12", "task_id": 3, "machine_id": "D", "duration": 90 }, { "job_id": "J12", "task_id": 4, "machine_id": "E", "duration": 54 }, { "job_id": "J12", "task_id": 5, "machine_id": "F", "duration": 36 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 123, "machine": "A", "duration": 1 }, { "task": 1, "start": 669, "machine": "B", "duration": 97 }, { "task": 2, "start": 766, "machine": "C", "duration": 5 }, { "task": 3, "start": 771, "machine": "D", "duration": 31 }, { "task": 4, "start": 802, "machine": "E", "duration": 24 }, { "task": 5, "start": 827, "machine": "F", "duration": 60 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 385, "machine": "A", "duration": 49 }, { "task": 1, "start": 571, "machine": "B", "duration": 98 }, { "task": 2, "start": 669, "machine": "C", "duration": 1 }, { "task": 3, "start": 670, "machine": "D", "duration": 54 }, { "task": 4, "start": 724, "machine": "E", "duration": 33 }, { "task": 5, "start": 774, "machine": "F", "duration": 53 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 50, "machine": "A", "duration": 5 }, { "task": 1, "start": 488, "machine": "B", "duration": 83 }, { "task": 2, "start": 575, "machine": "C", "duration": 83 }, { "task": 3, "start": 658, "machine": "D", "duration": 8 }, { "task": 4, "start": 666, "machine": "E", "duration": 57 }, { "task": 5, "start": 733, "machine": "F", "duration": 41 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 91, "machine": "A", "duration": 32 }, { "task": 1, "start": 766, "machine": "B", "duration": 54 }, { "task": 2, "start": 820, "machine": "C", "duration": 13 }, { "task": 3, "start": 833, "machine": "D", "duration": 40 }, { "task": 4, "start": 873, "machine": "E", "duration": 22 }, { "task": 5, "start": 895, "machine": "F", "duration": 32 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 301, "machine": "A", "duration": 84 }, { "task": 1, "start": 396, "machine": "B", "duration": 92 }, { "task": 2, "start": 488, "machine": "C", "duration": 87 }, { "task": 3, "start": 579, "machine": "D", "duration": 66 }, { "task": 4, "start": 645, "machine": "E", "duration": 5 }, { "task": 5, "start": 716, "machine": "F", "duration": 17 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 55, "machine": "A", "duration": 25 }, { "task": 1, "start": 181, "machine": "B", "duration": 40 }, { "task": 2, "start": 331, "machine": "C", "duration": 91 }, { "task": 3, "start": 442, "machine": "D", "duration": 52 }, { "task": 4, "start": 494, "machine": "E", "duration": 2 }, { "task": 5, "start": 496, "machine": "F", "duration": 40 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 218, "machine": "A", "duration": 53 }, { "task": 1, "start": 295, "machine": "B", "duration": 9 }, { "task": 2, "start": 670, "machine": "C", "duration": 52 }, { "task": 3, "start": 724, "machine": "D", "duration": 36 }, { "task": 4, "start": 760, "machine": "E", "duration": 10 }, { "task": 5, "start": 887, "machine": "F", "duration": 8 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 271, "machine": "A", "duration": 30 }, { "task": 1, "start": 304, "machine": "B", "duration": 92 }, { "task": 2, "start": 422, "machine": "C", "duration": 53 }, { "task": 3, "start": 494, "machine": "D", "duration": 85 }, { "task": 4, "start": 579, "machine": "E", "duration": 48 }, { "task": 5, "start": 627, "machine": "F", "duration": 89 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 5, "machine": "A", "duration": 45 }, { "task": 1, "start": 87, "machine": "B", "duration": 13 }, { "task": 2, "start": 100, "machine": "C", "duration": 62 }, { "task": 3, "start": 162, "machine": "D", "duration": 32 }, { "task": 4, "start": 194, "machine": "E", "duration": 60 }, { "task": 5, "start": 254, "machine": "F", "duration": 57 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 5 }, { "task": 1, "start": 5, "machine": "B", "duration": 82 }, { "task": 2, "start": 204, "machine": "C", "duration": 78 }, { "task": 3, "start": 294, "machine": "D", "duration": 58 }, { "task": 4, "start": 352, "machine": "E", "duration": 19 }, { "task": 5, "start": 384, "machine": "F", "duration": 21 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 124, "machine": "A", "duration": 94 }, { "task": 1, "start": 221, "machine": "B", "duration": 74 }, { "task": 2, "start": 295, "machine": "C", "duration": 36 }, { "task": 3, "start": 352, "machine": "D", "duration": 90 }, { "task": 4, "start": 442, "machine": "E", "duration": 29 }, { "task": 5, "start": 471, "machine": "F", "duration": 18 } ] }, { "job": "J12", "tasks": [ { "task": 0, "start": 80, "machine": "A", "duration": 11 }, { "task": 1, "start": 100, "machine": "B", "duration": 81 }, { "task": 2, "start": 181, "machine": "C", "duration": 23 }, { "task": 3, "start": 204, "machine": "D", "duration": 90 }, { "task": 4, "start": 294, "machine": "E", "duration": 54 }, { "task": 5, "start": 348, "machine": "F", "duration": 36 } ] } ], "context_index": 12, "input_format": "nl", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Someone’s in charge of timing a line of dough pieces through a fixed chain of machines, with each operation taking a preset amount of time. Their decision is about the exact timing and order of pieces, making sure no machine handles multiple pieces simultaneously and that every piece completes each step exactly once. The runner-up plan is the one where the clock shows a later finish; the best plan is the one with the earliest time when the very last piece is done. The detailed machine steps and durations follow below.\n\nThere are 11 dough pieces to schedule across 5 stations; piece IDs: J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11; station IDs: 0, 1, 2, 3, 4.\n\n| dough_piece_id | operation_index | required_station_id | processing_time |\n|---|---|---|---|\n| J1 | 0 | 0 | 1 |\n| J1 | 1 | 1 | 11 |\n| J1 | 2 | 2 | 80 |\n| J1 | 3 | 3 | 76 |\n| J1 | 4 | 4 | 77 |\n| J2 | 0 | 0 | 82 |\n| J2 | 1 | 1 | 54 |\n| J2 | 2 | 2 | 66 |\n| J2 | 3 | 3 | 68 |\n| J2 | 4 | 4 | 47 |\n| J3 | 0 | 0 | 71 |\n| J3 | 1 | 1 | 5 |\n| J3 | 2 | 2 | 87 |\n| J3 | 3 | 3 | 86 |\n| J3 | 4 | 4 | 88 |\n| J4 | 0 | 0 | 60 |\n| J4 | 1 | 1 | 24 |\n| J4 | 2 | 2 | 42 |\n| J4 | 3 | 3 | 70 |\n| J4 | 4 | 4 | 61 |\n| J5 | 0 | 0 | 54 |\n| J5 | 1 | 1 | 9 |\n| J5 | 2 | 2 | 80 |\n| J5 | 3 | 3 | 25 |\n| J5 | 4 | 4 | 69 |\n| J6 | 0 | 0 | 45 |\n| J6 | 1 | 1 | 96 |\n| J6 | 2 | 2 | 31 |\n| J6 | 3 | 3 | 46 |\n| J6 | 4 | 4 | 86 |\n| J7 | 0 | 0 | 16 |\n| J7 | 1 | 1 | 16 |\n| J7 | 2 | 2 | 18 |\n| J7 | 3 | 3 | 56 |\n| J7 | 4 | 4 | 75 |\n| J8 | 0 | 0 | 72 |\n| J8 | 1 | 1 | 17 |\n| J8 | 2 | 2 | 84 |\n| J8 | 3 | 3 | 52 |\n| J8 | 4 | 4 | 73 |\n| J9 | 0 | 0 | 34 |\n| J9 | 1 | 1 | 6 |\n| J9 | 2 | 2 | 3 |\n| J9 | 3 | 3 | 68 |\n| J9 | 4 | 4 | 19 |\n| J10 | 0 | 0 | 92 |\n| J10 | 1 | 1 | 11 |\n| J10 | 2 | 2 | 77 |\n| J10 | 3 | 3 | 72 |\n| J10 | 4 | 4 | 57 |\n| J11 | 0 | 0 | 39 |\n| J11 | 1 | 1 | 79 |\n| J11 | 2 | 2 | 84 |\n| J11 | 3 | 3 | 84 |\n| J11 | 4 | 4 | 40 |\n\nThey must schedule without station overlaps and ensure every piece completes each operation exactly once; the best plan finishes when the last piece completes earliest.\n\nAlso, when you send back the plan, just stick to a little JSON layout like this so it's easy to read and parse:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThis sketch means: each top-level entry is one job (one dough piece), the tasks array lists the step-by-step operations for that job, \"task\" is the step index in the sequence, \"start\" is the time that step begins, \"machine\" names which machine does it, and \"duration\" is how long it runs. It's just the expected shape — not the actual schedule.\n\nPlease be sure to use the exact identifiers from the instance input — do not rename or invent new labels. Valid identifiers look like plain numbers such as \"1\" or \"23\", single capital letters like \"A\" or \"B\", or a capital letter followed by digits like \"A1\" or \"X7\".", "instance": { "nr_machines": 5, "nr_jobs": 11, "jobs": [ [ [ 0, 1 ], [ 1, 11 ], [ 2, 80 ], [ 3, 76 ], [ 4, 77 ] ], [ [ 0, 82 ], [ 1, 54 ], [ 2, 66 ], [ 3, 68 ], [ 4, 47 ] ], [ [ 0, 71 ], [ 1, 5 ], [ 2, 87 ], [ 3, 86 ], [ 4, 88 ] ], [ [ 0, 60 ], [ 1, 24 ], [ 2, 42 ], [ 3, 70 ], [ 4, 61 ] ], [ [ 0, 54 ], [ 1, 9 ], [ 2, 80 ], [ 3, 25 ], [ 4, 69 ] ], [ [ 0, 45 ], [ 1, 96 ], [ 2, 31 ], [ 3, 46 ], [ 4, 86 ] ], [ [ 0, 16 ], [ 1, 16 ], [ 2, 18 ], [ 3, 56 ], [ 4, 75 ] ], [ [ 0, 72 ], [ 1, 17 ], [ 2, 84 ], [ 3, 52 ], [ 4, 73 ] ], [ [ 0, 34 ], [ 1, 6 ], [ 2, 3 ], [ 3, 68 ], [ 4, 19 ] ], [ [ 0, 92 ], [ 1, 11 ], [ 2, 77 ], [ 3, 72 ], [ 4, 57 ] ], [ [ 0, 39 ], [ 1, 79 ], [ 2, 84 ], [ 3, 84 ], [ 4, 40 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 16, "machine": 0, "duration": 1 }, { "task": 1, "start": 32, "machine": 1, "duration": 11 }, { "task": 2, "start": 50, "machine": 2, "duration": 80 }, { "task": 3, "start": 130, "machine": 3, "duration": 76 }, { "task": 4, "start": 206, "machine": 4, "duration": 77 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 378, "machine": 0, "duration": 82 }, { "task": 1, "start": 460, "machine": 1, "duration": 54 }, { "task": 2, "start": 533, "machine": 2, "duration": 66 }, { "task": 3, "start": 614, "machine": 3, "duration": 68 }, { "task": 4, "start": 684, "machine": 4, "duration": 47 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 176, "machine": 0, "duration": 71 }, { "task": 1, "start": 247, "machine": 1, "duration": 5 }, { "task": 2, "start": 285, "machine": 2, "duration": 87 }, { "task": 3, "start": 372, "machine": 3, "duration": 86 }, { "task": 4, "start": 499, "machine": 4, "duration": 88 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 116, "machine": 0, "duration": 60 }, { "task": 1, "start": 212, "machine": 1, "duration": 24 }, { "task": 2, "start": 243, "machine": 2, "duration": 42 }, { "task": 3, "start": 289, "machine": 3, "duration": 70 }, { "task": 4, "start": 438, "machine": 4, "duration": 61 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 17, "machine": 0, "duration": 54 }, { "task": 1, "start": 71, "machine": 1, "duration": 9 }, { "task": 2, "start": 130, "machine": 2, "duration": 80 }, { "task": 3, "start": 210, "machine": 3, "duration": 25 }, { "task": 4, "start": 283, "machine": 4, "duration": 69 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 71, "machine": 0, "duration": 45 }, { "task": 1, "start": 116, "machine": 1, "duration": 96 }, { "task": 2, "start": 212, "machine": 2, "duration": 31 }, { "task": 3, "start": 243, "machine": 3, "duration": 46 }, { "task": 4, "start": 352, "machine": 4, "duration": 86 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 16 }, { "task": 1, "start": 16, "machine": 1, "duration": 16 }, { "task": 2, "start": 32, "machine": 2, "duration": 18 }, { "task": 3, "start": 50, "machine": 3, "duration": 56 }, { "task": 4, "start": 106, "machine": 4, "duration": 75 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 460, "machine": 0, "duration": 72 }, { "task": 1, "start": 532, "machine": 1, "duration": 17 }, { "task": 2, "start": 599, "machine": 2, "duration": 84 }, { "task": 3, "start": 683, "machine": 3, "duration": 52 }, { "task": 4, "start": 735, "machine": 4, "duration": 73 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 532, "machine": 0, "duration": 34 }, { "task": 1, "start": 566, "machine": 1, "duration": 6 }, { "task": 2, "start": 683, "machine": 2, "duration": 3 }, { "task": 3, "start": 735, "machine": 3, "duration": 68 }, { "task": 4, "start": 808, "machine": 4, "duration": 19 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 286, "machine": 0, "duration": 92 }, { "task": 1, "start": 378, "machine": 1, "duration": 11 }, { "task": 2, "start": 456, "machine": 2, "duration": 77 }, { "task": 3, "start": 542, "machine": 3, "duration": 72 }, { "task": 4, "start": 627, "machine": 4, "duration": 57 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 247, "machine": 0, "duration": 39 }, { "task": 1, "start": 286, "machine": 1, "duration": 79 }, { "task": 2, "start": 372, "machine": 2, "duration": 84 }, { "task": 3, "start": 458, "machine": 3, "duration": 84 }, { "task": 4, "start": 587, "machine": 4, "duration": 40 } ] } ], "obj": 827.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 11, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11" ], "machines": [ 0, 1, 2, 3, 4 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 11 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 80 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 76 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 77 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 82 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 54 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 66 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 68 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 47 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 71 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 5 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 87 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 86 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 88 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 60 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 24 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 42 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 70 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 61 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 54 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 9 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 80 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 25 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 69 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 45 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 96 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 31 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 46 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 86 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 16 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 16 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 18 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 56 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 75 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 72 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 17 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 84 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 52 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 73 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 34 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 6 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 3 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 68 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 19 }, { "job_id": "J10", "task_id": 0, "machine_id": 0, "duration": 92 }, { "job_id": "J10", "task_id": 1, "machine_id": 1, "duration": 11 }, { "job_id": "J10", "task_id": 2, "machine_id": 2, "duration": 77 }, { "job_id": "J10", "task_id": 3, "machine_id": 3, "duration": 72 }, { "job_id": "J10", "task_id": 4, "machine_id": 4, "duration": 57 }, { "job_id": "J11", "task_id": 0, "machine_id": 0, "duration": 39 }, { "job_id": "J11", "task_id": 1, "machine_id": 1, "duration": 79 }, { "job_id": "J11", "task_id": 2, "machine_id": 2, "duration": 84 }, { "job_id": "J11", "task_id": 3, "machine_id": 3, "duration": 84 }, { "job_id": "J11", "task_id": 4, "machine_id": 4, "duration": 40 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 16, "machine": 0, "duration": 1 }, { "task": 1, "start": 32, "machine": 1, "duration": 11 }, { "task": 2, "start": 50, "machine": 2, "duration": 80 }, { "task": 3, "start": 130, "machine": 3, "duration": 76 }, { "task": 4, "start": 206, "machine": 4, "duration": 77 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 378, "machine": 0, "duration": 82 }, { "task": 1, "start": 460, "machine": 1, "duration": 54 }, { "task": 2, "start": 533, "machine": 2, "duration": 66 }, { "task": 3, "start": 614, "machine": 3, "duration": 68 }, { "task": 4, "start": 684, "machine": 4, "duration": 47 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 176, "machine": 0, "duration": 71 }, { "task": 1, "start": 247, "machine": 1, "duration": 5 }, { "task": 2, "start": 285, "machine": 2, "duration": 87 }, { "task": 3, "start": 372, "machine": 3, "duration": 86 }, { "task": 4, "start": 499, "machine": 4, "duration": 88 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 116, "machine": 0, "duration": 60 }, { "task": 1, "start": 212, "machine": 1, "duration": 24 }, { "task": 2, "start": 243, "machine": 2, "duration": 42 }, { "task": 3, "start": 289, "machine": 3, "duration": 70 }, { "task": 4, "start": 438, "machine": 4, "duration": 61 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 17, "machine": 0, "duration": 54 }, { "task": 1, "start": 71, "machine": 1, "duration": 9 }, { "task": 2, "start": 130, "machine": 2, "duration": 80 }, { "task": 3, "start": 210, "machine": 3, "duration": 25 }, { "task": 4, "start": 283, "machine": 4, "duration": 69 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 71, "machine": 0, "duration": 45 }, { "task": 1, "start": 116, "machine": 1, "duration": 96 }, { "task": 2, "start": 212, "machine": 2, "duration": 31 }, { "task": 3, "start": 243, "machine": 3, "duration": 46 }, { "task": 4, "start": 352, "machine": 4, "duration": 86 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 16 }, { "task": 1, "start": 16, "machine": 1, "duration": 16 }, { "task": 2, "start": 32, "machine": 2, "duration": 18 }, { "task": 3, "start": 50, "machine": 3, "duration": 56 }, { "task": 4, "start": 106, "machine": 4, "duration": 75 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 460, "machine": 0, "duration": 72 }, { "task": 1, "start": 532, "machine": 1, "duration": 17 }, { "task": 2, "start": 599, "machine": 2, "duration": 84 }, { "task": 3, "start": 683, "machine": 3, "duration": 52 }, { "task": 4, "start": 735, "machine": 4, "duration": 73 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 532, "machine": 0, "duration": 34 }, { "task": 1, "start": 566, "machine": 1, "duration": 6 }, { "task": 2, "start": 683, "machine": 2, "duration": 3 }, { "task": 3, "start": 735, "machine": 3, "duration": 68 }, { "task": 4, "start": 808, "machine": 4, "duration": 19 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 286, "machine": 0, "duration": 92 }, { "task": 1, "start": 378, "machine": 1, "duration": 11 }, { "task": 2, "start": 456, "machine": 2, "duration": 77 }, { "task": 3, "start": 542, "machine": 3, "duration": 72 }, { "task": 4, "start": 627, "machine": 4, "duration": 57 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 247, "machine": 0, "duration": 39 }, { "task": 1, "start": 286, "machine": 1, "duration": 79 }, { "task": 2, "start": 372, "machine": 2, "duration": 84 }, { "task": 3, "start": 458, "machine": 3, "duration": 84 }, { "task": 4, "start": 587, "machine": 4, "duration": 40 } ] } ], "context_index": 13, "input_format": "markdown_table", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "There’s a small warehouse story: parcels arrive and must pass through a fixed lineup of packing stations, each station taking a known amount of time per parcel. The challenge is picking when to start each parcel at each station so no station overlaps work on two parcels, and every parcel still visits every station in order. Which plan is better is judged by the clock — whoever finishes the last parcel earlier wins, and that finishing time is the number we care about. The specific parcel list and station times are shown below.\n\n# total_parcels=10\n# nr_stations=6\n# parcel_ids=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10\n# station_ids=A, B, C, D, E, F\nparcel_id,station_step_index,station_id,processing_time\nJ1,0,A,1\nJ1,1,B,24\nJ1,2,C,56\nJ1,3,D,23\nJ1,4,E,30\nJ1,5,F,5\nJ2,0,A,59\nJ2,1,B,34\nJ2,2,C,36\nJ2,3,D,41\nJ2,4,E,10\nJ2,5,F,57\nJ3,0,A,70\nJ3,1,B,90\nJ3,2,C,94\nJ3,3,D,14\nJ3,4,E,91\nJ3,5,F,42\nJ4,0,A,9\nJ4,1,B,67\nJ4,2,C,96\nJ4,3,D,77\nJ4,4,E,39\nJ4,5,F,18\nJ5,0,A,54\nJ5,1,B,98\nJ5,2,C,6\nJ5,3,D,96\nJ5,4,E,88\nJ5,5,F,56\nJ6,0,A,7\nJ6,1,B,92\nJ6,2,C,44\nJ6,3,D,61\nJ6,4,E,48\nJ6,5,F,6\nJ7,0,A,79\nJ7,1,B,60\nJ7,2,C,51\nJ7,3,D,10\nJ7,4,E,59\nJ7,5,F,4\nJ8,0,A,74\nJ8,1,B,44\nJ8,2,C,83\nJ8,3,D,99\nJ8,4,E,74\nJ8,5,F,66\nJ9,0,A,99\nJ9,1,B,1\nJ9,2,C,16\nJ9,3,D,28\nJ9,4,E,8\nJ9,5,F,12\nJ10,0,A,76\nJ10,1,B,16\nJ10,2,C,76\nJ10,3,D,37\nJ10,4,E,1\nJ10,5,F,33\n\nAlso, when you share a packing plan, a simple JSON layout like this works best — just fill in the actual ids and numbers for each parcel and step:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of it like a little form: \"solution\" is the list of parcels, each parcel has a \"job\" id and a list of \"tasks\". Each task is one station visit — \"task\" is which step it is in the sequence, \"start\" is when that parcel begins at that station, \"machine\" is which station it uses, and \"duration\" is how long that station takes for that parcel. Easy, informal, and just a sketch of the shape I need — not the actual filled-in schedule.\n\nPlease make sure to use the exact identifiers from the instance input — don't rename them or invent new labels. For example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 6, "nr_jobs": 10, "jobs": [ [ [ 0, 1 ], [ 1, 24 ], [ 2, 56 ], [ 3, 23 ], [ 4, 30 ], [ 5, 5 ] ], [ [ 0, 59 ], [ 1, 34 ], [ 2, 36 ], [ 3, 41 ], [ 4, 10 ], [ 5, 57 ] ], [ [ 0, 70 ], [ 1, 90 ], [ 2, 94 ], [ 3, 14 ], [ 4, 91 ], [ 5, 42 ] ], [ [ 0, 9 ], [ 1, 67 ], [ 2, 96 ], [ 3, 77 ], [ 4, 39 ], [ 5, 18 ] ], [ [ 0, 54 ], [ 1, 98 ], [ 2, 6 ], [ 3, 96 ], [ 4, 88 ], [ 5, 56 ] ], [ [ 0, 7 ], [ 1, 92 ], [ 2, 44 ], [ 3, 61 ], [ 4, 48 ], [ 5, 6 ] ], [ [ 0, 79 ], [ 1, 60 ], [ 2, 51 ], [ 3, 10 ], [ 4, 59 ], [ 5, 4 ] ], [ [ 0, 74 ], [ 1, 44 ], [ 2, 83 ], [ 3, 99 ], [ 4, 74 ], [ 5, 66 ] ], [ [ 0, 99 ], [ 1, 1 ], [ 2, 16 ], [ 3, 28 ], [ 4, 8 ], [ 5, 12 ] ], [ [ 0, 76 ], [ 1, 16 ], [ 2, 76 ], [ 3, 37 ], [ 4, 1 ], [ 5, 33 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 24 }, { "task": 2, "start": 25, "machine": 2, "duration": 56 }, { "task": 3, "start": 81, "machine": 3, "duration": 23 }, { "task": 4, "start": 104, "machine": 4, "duration": 30 }, { "task": 5, "start": 134, "machine": 5, "duration": 5 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 208, "machine": 0, "duration": 59 }, { "task": 1, "start": 280, "machine": 1, "duration": 34 }, { "task": 2, "start": 314, "machine": 2, "duration": 36 }, { "task": 3, "start": 392, "machine": 3, "duration": 41 }, { "task": 4, "start": 433, "machine": 4, "duration": 10 }, { "task": 5, "start": 443, "machine": 5, "duration": 57 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 10, "machine": 0, "duration": 70 }, { "task": 1, "start": 92, "machine": 1, "duration": 90 }, { "task": 2, "start": 188, "machine": 2, "duration": 94 }, { "task": 3, "start": 282, "machine": 3, "duration": 14 }, { "task": 4, "start": 296, "machine": 4, "duration": 91 }, { "task": 5, "start": 387, "machine": 5, "duration": 42 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 9 }, { "task": 1, "start": 25, "machine": 1, "duration": 67 }, { "task": 2, "start": 92, "machine": 2, "duration": 96 }, { "task": 3, "start": 188, "machine": 3, "duration": 77 }, { "task": 4, "start": 387, "machine": 4, "duration": 39 }, { "task": 5, "start": 587, "machine": 5, "duration": 18 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 80, "machine": 0, "duration": 54 }, { "task": 1, "start": 182, "machine": 1, "duration": 98 }, { "task": 2, "start": 282, "machine": 2, "duration": 6 }, { "task": 3, "start": 296, "machine": 3, "duration": 96 }, { "task": 4, "start": 443, "machine": 4, "duration": 88 }, { "task": 5, "start": 531, "machine": 5, "duration": 56 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 267, "machine": 0, "duration": 7 }, { "task": 1, "start": 360, "machine": 1, "duration": 92 }, { "task": 2, "start": 452, "machine": 2, "duration": 44 }, { "task": 3, "start": 540, "machine": 3, "duration": 61 }, { "task": 4, "start": 682, "machine": 4, "duration": 48 }, { "task": 5, "start": 730, "machine": 5, "duration": 6 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 373, "machine": 0, "duration": 79 }, { "task": 1, "start": 453, "machine": 1, "duration": 60 }, { "task": 2, "start": 513, "machine": 2, "duration": 51 }, { "task": 3, "start": 601, "machine": 3, "duration": 10 }, { "task": 4, "start": 614, "machine": 4, "duration": 59 }, { "task": 5, "start": 680, "machine": 5, "duration": 4 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 134, "machine": 0, "duration": 74 }, { "task": 1, "start": 314, "machine": 1, "duration": 44 }, { "task": 2, "start": 358, "machine": 2, "duration": 83 }, { "task": 3, "start": 441, "machine": 3, "duration": 99 }, { "task": 4, "start": 540, "machine": 4, "duration": 74 }, { "task": 5, "start": 614, "machine": 5, "duration": 66 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 274, "machine": 0, "duration": 99 }, { "task": 1, "start": 452, "machine": 1, "duration": 1 }, { "task": 2, "start": 496, "machine": 2, "duration": 16 }, { "task": 3, "start": 611, "machine": 3, "duration": 28 }, { "task": 4, "start": 673, "machine": 4, "duration": 8 }, { "task": 5, "start": 717, "machine": 5, "duration": 12 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 452, "machine": 0, "duration": 76 }, { "task": 1, "start": 528, "machine": 1, "duration": 16 }, { "task": 2, "start": 564, "machine": 2, "duration": 76 }, { "task": 3, "start": 640, "machine": 3, "duration": 37 }, { "task": 4, "start": 681, "machine": 4, "duration": 1 }, { "task": 5, "start": 684, "machine": 5, "duration": 33 } ] } ], "obj": 736.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 10, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10" ], "machines": [ "A", "B", "C", "D", "E", "F" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 24 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 56 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 23 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 30 }, { "job_id": "J1", "task_id": 5, "machine_id": "F", "duration": 5 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 59 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 34 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 36 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 41 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 10 }, { "job_id": "J2", "task_id": 5, "machine_id": "F", "duration": 57 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 70 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 90 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 94 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 14 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 91 }, { "job_id": "J3", "task_id": 5, "machine_id": "F", "duration": 42 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 9 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 67 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 96 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 77 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 39 }, { "job_id": "J4", "task_id": 5, "machine_id": "F", "duration": 18 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 54 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 98 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 6 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 96 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 88 }, { "job_id": "J5", "task_id": 5, "machine_id": "F", "duration": 56 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 7 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 92 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 44 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 61 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 48 }, { "job_id": "J6", "task_id": 5, "machine_id": "F", "duration": 6 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 79 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 60 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 51 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 10 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 59 }, { "job_id": "J7", "task_id": 5, "machine_id": "F", "duration": 4 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 74 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 44 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 83 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 99 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 74 }, { "job_id": "J8", "task_id": 5, "machine_id": "F", "duration": 66 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 99 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 1 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 16 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 28 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 8 }, { "job_id": "J9", "task_id": 5, "machine_id": "F", "duration": 12 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 76 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 16 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 76 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 37 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 1 }, { "job_id": "J10", "task_id": 5, "machine_id": "F", "duration": 33 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 1 }, { "task": 1, "start": 1, "machine": "B", "duration": 24 }, { "task": 2, "start": 25, "machine": "C", "duration": 56 }, { "task": 3, "start": 81, "machine": "D", "duration": 23 }, { "task": 4, "start": 104, "machine": "E", "duration": 30 }, { "task": 5, "start": 134, "machine": "F", "duration": 5 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 208, "machine": "A", "duration": 59 }, { "task": 1, "start": 280, "machine": "B", "duration": 34 }, { "task": 2, "start": 314, "machine": "C", "duration": 36 }, { "task": 3, "start": 392, "machine": "D", "duration": 41 }, { "task": 4, "start": 433, "machine": "E", "duration": 10 }, { "task": 5, "start": 443, "machine": "F", "duration": 57 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 10, "machine": "A", "duration": 70 }, { "task": 1, "start": 92, "machine": "B", "duration": 90 }, { "task": 2, "start": 188, "machine": "C", "duration": 94 }, { "task": 3, "start": 282, "machine": "D", "duration": 14 }, { "task": 4, "start": 296, "machine": "E", "duration": 91 }, { "task": 5, "start": 387, "machine": "F", "duration": 42 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 1, "machine": "A", "duration": 9 }, { "task": 1, "start": 25, "machine": "B", "duration": 67 }, { "task": 2, "start": 92, "machine": "C", "duration": 96 }, { "task": 3, "start": 188, "machine": "D", "duration": 77 }, { "task": 4, "start": 387, "machine": "E", "duration": 39 }, { "task": 5, "start": 587, "machine": "F", "duration": 18 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 80, "machine": "A", "duration": 54 }, { "task": 1, "start": 182, "machine": "B", "duration": 98 }, { "task": 2, "start": 282, "machine": "C", "duration": 6 }, { "task": 3, "start": 296, "machine": "D", "duration": 96 }, { "task": 4, "start": 443, "machine": "E", "duration": 88 }, { "task": 5, "start": 531, "machine": "F", "duration": 56 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 267, "machine": "A", "duration": 7 }, { "task": 1, "start": 360, "machine": "B", "duration": 92 }, { "task": 2, "start": 452, "machine": "C", "duration": 44 }, { "task": 3, "start": 540, "machine": "D", "duration": 61 }, { "task": 4, "start": 682, "machine": "E", "duration": 48 }, { "task": 5, "start": 730, "machine": "F", "duration": 6 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 373, "machine": "A", "duration": 79 }, { "task": 1, "start": 453, "machine": "B", "duration": 60 }, { "task": 2, "start": 513, "machine": "C", "duration": 51 }, { "task": 3, "start": 601, "machine": "D", "duration": 10 }, { "task": 4, "start": 614, "machine": "E", "duration": 59 }, { "task": 5, "start": 680, "machine": "F", "duration": 4 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 134, "machine": "A", "duration": 74 }, { "task": 1, "start": 314, "machine": "B", "duration": 44 }, { "task": 2, "start": 358, "machine": "C", "duration": 83 }, { "task": 3, "start": 441, "machine": "D", "duration": 99 }, { "task": 4, "start": 540, "machine": "E", "duration": 74 }, { "task": 5, "start": 614, "machine": "F", "duration": 66 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 274, "machine": "A", "duration": 99 }, { "task": 1, "start": 452, "machine": "B", "duration": 1 }, { "task": 2, "start": 496, "machine": "C", "duration": 16 }, { "task": 3, "start": 611, "machine": "D", "duration": 28 }, { "task": 4, "start": 673, "machine": "E", "duration": 8 }, { "task": 5, "start": 717, "machine": "F", "duration": 12 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 452, "machine": "A", "duration": 76 }, { "task": 1, "start": 528, "machine": "B", "duration": 16 }, { "task": 2, "start": 564, "machine": "C", "duration": 76 }, { "task": 3, "start": 640, "machine": "D", "duration": 37 }, { "task": 4, "start": 681, "machine": "E", "duration": 1 }, { "task": 5, "start": 684, "machine": "F", "duration": 33 } ] } ], "context_index": 14, "input_format": "csv", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "On a busy morning the kiln scheduler must slot pots through three stations — prep, dry, then fire — with fixed durations for each step and the same order for every pot. The call is to choose start times for every pot at every stage so nothing is skipped or repeated and no station is processing more than one pot at any time. The plan that finishes the entire batch the earliest wins, which is measured by the time the final pot finishes firing. The specific instance data appears below.\n\n{\n \"nr_pots\": 9,\n \"nr_stations\": 5,\n \"pot_ids\": [\n \"J1\",\n \"J2\",\n \"J3\",\n \"J4\",\n \"J5\",\n \"J6\",\n \"J7\",\n \"J8\",\n \"J9\"\n ],\n \"station_ids\": [\n 1,\n 2,\n 3,\n 4,\n 5\n ],\n \"tasks\": [\n {\n \"pot_id\": \"J1\",\n \"stage_index\": 0,\n \"station_id\": 1,\n \"processing_duration\": 1\n },\n {\n \"pot_id\": \"J1\",\n \"stage_index\": 1,\n \"station_id\": 2,\n \"processing_duration\": 37\n },\n {\n \"pot_id\": \"J1\",\n \"stage_index\": 2,\n \"station_id\": 3,\n \"processing_duration\": 32\n },\n {\n \"pot_id\": \"J1\",\n \"stage_index\": 3,\n \"station_id\": 4,\n \"processing_duration\": 68\n },\n {\n \"pot_id\": \"J1\",\n \"stage_index\": 4,\n \"station_id\": 5,\n \"processing_duration\": 83\n },\n {\n \"pot_id\": \"J2\",\n \"stage_index\": 0,\n \"station_id\": 1,\n \"processing_duration\": 26\n },\n {\n \"pot_id\": \"J2\",\n \"stage_index\": 1,\n \"station_id\": 2,\n \"processing_duration\": 63\n },\n {\n \"pot_id\": \"J2\",\n \"stage_index\": 2,\n \"station_id\": 3,\n \"processing_duration\": 2\n },\n {\n \"pot_id\": \"J2\",\n \"stage_index\": 3,\n \"station_id\": 4,\n \"processing_duration\": 5\n },\n {\n \"pot_id\": \"J2\",\n \"stage_index\": 4,\n \"station_id\": 5,\n \"processing_duration\": 34\n },\n {\n \"pot_id\": \"J3\",\n \"stage_index\": 0,\n \"station_id\": 1,\n \"processing_duration\": 48\n },\n {\n \"pot_id\": \"J3\",\n \"stage_index\": 1,\n \"station_id\": 2,\n \"processing_duration\": 9\n },\n {\n \"pot_id\": \"J3\",\n \"stage_index\": 2,\n \"station_id\": 3,\n \"processing_duration\": 53\n },\n {\n \"pot_id\": \"J3\",\n \"stage_index\": 3,\n \"station_id\": 4,\n \"processing_duration\": 93\n },\n {\n \"pot_id\": \"J3\",\n \"stage_index\": 4,\n \"station_id\": 5,\n \"processing_duration\": 99\n },\n {\n \"pot_id\": \"J4\",\n \"stage_index\": 0,\n \"station_id\": 1,\n \"processing_duration\": 66\n },\n {\n \"pot_id\": \"J4\",\n \"stage_index\": 1,\n \"station_id\": 2,\n \"processing_duration\": 58\n },\n {\n \"pot_id\": \"J4\",\n \"stage_index\": 2,\n \"station_id\": 3,\n \"processing_duration\": 43\n },\n {\n \"pot_id\": \"J4\",\n \"stage_index\": 3,\n \"station_id\": 4,\n \"processing_duration\": 47\n },\n {\n \"pot_id\": \"J4\",\n \"stage_index\": 4,\n \"station_id\": 5,\n \"processing_duration\": 74\n },\n {\n \"pot_id\": \"J5\",\n \"stage_index\": 0,\n \"station_id\": 1,\n \"processing_duration\": 38\n },\n {\n \"pot_id\": \"J5\",\n \"stage_index\": 1,\n \"station_id\": 2,\n \"processing_duration\": 46\n },\n {\n \"pot_id\": \"J5\",\n \"stage_index\": 2,\n \"station_id\": 3,\n \"processing_duration\": 98\n },\n {\n \"pot_id\": \"J5\",\n \"stage_index\": 3,\n \"station_id\": 4,\n \"processing_duration\": 11\n },\n {\n \"pot_id\": \"J5\",\n \"stage_index\": 4,\n \"station_id\": 5,\n \"processing_duration\": 39\n },\n {\n \"pot_id\": \"J6\",\n \"stage_index\": 0,\n \"station_id\": 1,\n \"processing_duration\": 51\n },\n {\n \"pot_id\": \"J6\",\n \"stage_index\": 1,\n \"station_id\": 2,\n \"processing_duration\": 15\n },\n {\n \"pot_id\": \"J6\",\n \"stage_index\": 2,\n \"station_id\": 3,\n \"processing_duration\": 62\n },\n {\n \"pot_id\": \"J6\",\n \"stage_index\": 3,\n \"station_id\": 4,\n \"processing_duration\": 30\n },\n {\n \"pot_id\": \"J6\",\n \"stage_index\": 4,\n \"station_id\": 5,\n \"processing_duration\": 27\n },\n {\n \"pot_id\": \"J7\",\n \"stage_index\": 0,\n \"station_id\": 1,\n \"processing_duration\": 97\n },\n {\n \"pot_id\": \"J7\",\n \"stage_index\": 1,\n \"station_id\": 2,\n \"processing_duration\": 68\n },\n {\n \"pot_id\": \"J7\",\n \"stage_index\": 2,\n \"station_id\": 3,\n \"processing_duration\": 70\n },\n {\n \"pot_id\": \"J7\",\n \"stage_index\": 3,\n \"station_id\": 4,\n \"processing_duration\": 66\n },\n {\n \"pot_id\": \"J7\",\n \"stage_index\": 4,\n \"station_id\": 5,\n \"processing_duration\": 22\n },\n {\n \"pot_id\": \"J8\",\n \"stage_index\": 0,\n \"station_id\": 1,\n \"processing_duration\": 38\n },\n {\n \"pot_id\": \"J8\",\n \"stage_index\": 1,\n \"station_id\": 2,\n \"processing_duration\": 43\n },\n {\n \"pot_id\": \"J8\",\n \"stage_index\": 2,\n \"station_id\": 3,\n \"processing_duration\": 36\n },\n {\n \"pot_id\": \"J8\",\n \"stage_index\": 3,\n \"station_id\": 4,\n \"processing_duration\": 50\n },\n {\n \"pot_id\": \"J8\",\n \"stage_index\": 4,\n \"station_id\": 5,\n \"processing_duration\": 46\n },\n {\n \"pot_id\": \"J9\",\n \"stage_index\": 0,\n \"station_id\": 1,\n \"processing_duration\": 83\n },\n {\n \"pot_id\": \"J9\",\n \"stage_index\": 1,\n \"station_id\": 2,\n \"processing_duration\": 3\n },\n {\n \"pot_id\": \"J9\",\n \"stage_index\": 2,\n \"station_id\": 3,\n \"processing_duration\": 47\n },\n {\n \"pot_id\": \"J9\",\n \"stage_index\": 3,\n \"station_id\": 4,\n \"processing_duration\": 19\n },\n {\n \"pot_id\": \"J9\",\n \"stage_index\": 4,\n \"station_id\": 5,\n \"processing_duration\": 49\n }\n ]\n}\n\nAnd to keep things tidy, please return the schedule in a simple JSON shape like this — nothing fancy, just the fields shown so I can read each job and its tasks easily.\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThis sketch means: \"solution\" is a list of jobs; each job has its identifier under \"job\" and a \"tasks\" list. Each task entry records which task it is, when it starts, which machine it runs on, and how long it takes. Think of it like filling out a simple form for every pot and each of its steps.\n\nThis is just the expected shape — not the actual schedule yet. Please make sure to use the identifiers exactly as they appear in the instance input — no renaming and no new labels. For example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 5, "nr_jobs": 9, "jobs": [ [ [ 0, 1 ], [ 1, 37 ], [ 2, 32 ], [ 3, 68 ], [ 4, 83 ] ], [ [ 0, 26 ], [ 1, 63 ], [ 2, 2 ], [ 3, 5 ], [ 4, 34 ] ], [ [ 0, 48 ], [ 1, 9 ], [ 2, 53 ], [ 3, 93 ], [ 4, 99 ] ], [ [ 0, 66 ], [ 1, 58 ], [ 2, 43 ], [ 3, 47 ], [ 4, 74 ] ], [ [ 0, 38 ], [ 1, 46 ], [ 2, 98 ], [ 3, 11 ], [ 4, 39 ] ], [ [ 0, 51 ], [ 1, 15 ], [ 2, 62 ], [ 3, 30 ], [ 4, 27 ] ], [ [ 0, 97 ], [ 1, 68 ], [ 2, 70 ], [ 3, 66 ], [ 4, 22 ] ], [ [ 0, 38 ], [ 1, 43 ], [ 2, 36 ], [ 3, 50 ], [ 4, 46 ] ], [ [ 0, 83 ], [ 1, 3 ], [ 2, 47 ], [ 3, 19 ], [ 4, 49 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 37 }, { "task": 2, "start": 39, "machine": 2, "duration": 32 }, { "task": 3, "start": 71, "machine": 3, "duration": 68 }, { "task": 4, "start": 179, "machine": 4, "duration": 83 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 49, "machine": 0, "duration": 26 }, { "task": 1, "start": 75, "machine": 1, "duration": 63 }, { "task": 2, "start": 138, "machine": 2, "duration": 2 }, { "task": 3, "start": 140, "machine": 3, "duration": 5 }, { "task": 4, "start": 145, "machine": 4, "duration": 34 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 48 }, { "task": 1, "start": 49, "machine": 1, "duration": 9 }, { "task": 2, "start": 71, "machine": 2, "duration": 53 }, { "task": 3, "start": 145, "machine": 3, "duration": 93 }, { "task": 4, "start": 262, "machine": 4, "duration": 99 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 113, "machine": 0, "duration": 66 }, { "task": 1, "start": 184, "machine": 1, "duration": 58 }, { "task": 2, "start": 282, "machine": 2, "duration": 43 }, { "task": 3, "start": 325, "machine": 3, "duration": 47 }, { "task": 4, "start": 400, "machine": 4, "duration": 74 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 75, "machine": 0, "duration": 38 }, { "task": 1, "start": 138, "machine": 1, "duration": 46 }, { "task": 2, "start": 184, "machine": 2, "duration": 98 }, { "task": 3, "start": 282, "machine": 3, "duration": 11 }, { "task": 4, "start": 361, "machine": 4, "duration": 39 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 314, "machine": 0, "duration": 51 }, { "task": 1, "start": 382, "machine": 1, "duration": 15 }, { "task": 2, "start": 499, "machine": 2, "duration": 62 }, { "task": 3, "start": 561, "machine": 3, "duration": 30 }, { "task": 4, "start": 591, "machine": 4, "duration": 27 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 217, "machine": 0, "duration": 97 }, { "task": 1, "start": 314, "machine": 1, "duration": 68 }, { "task": 2, "start": 382, "machine": 2, "duration": 70 }, { "task": 3, "start": 452, "machine": 3, "duration": 66 }, { "task": 4, "start": 520, "machine": 4, "duration": 22 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 179, "machine": 0, "duration": 38 }, { "task": 1, "start": 242, "machine": 1, "duration": 43 }, { "task": 2, "start": 325, "machine": 2, "duration": 36 }, { "task": 3, "start": 372, "machine": 3, "duration": 50 }, { "task": 4, "start": 474, "machine": 4, "duration": 46 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 365, "machine": 0, "duration": 83 }, { "task": 1, "start": 448, "machine": 1, "duration": 3 }, { "task": 2, "start": 452, "machine": 2, "duration": 47 }, { "task": 3, "start": 518, "machine": 3, "duration": 19 }, { "task": 4, "start": 542, "machine": 4, "duration": 49 } ] } ], "obj": 618.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 9, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9" ], "machines": [ 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 2, "duration": 37 }, { "job_id": "J1", "task_id": 2, "machine_id": 3, "duration": 32 }, { "job_id": "J1", "task_id": 3, "machine_id": 4, "duration": 68 }, { "job_id": "J1", "task_id": 4, "machine_id": 5, "duration": 83 }, { "job_id": "J2", "task_id": 0, "machine_id": 1, "duration": 26 }, { "job_id": "J2", "task_id": 1, "machine_id": 2, "duration": 63 }, { "job_id": "J2", "task_id": 2, "machine_id": 3, "duration": 2 }, { "job_id": "J2", "task_id": 3, "machine_id": 4, "duration": 5 }, { "job_id": "J2", "task_id": 4, "machine_id": 5, "duration": 34 }, { "job_id": "J3", "task_id": 0, "machine_id": 1, "duration": 48 }, { "job_id": "J3", "task_id": 1, "machine_id": 2, "duration": 9 }, { "job_id": "J3", "task_id": 2, "machine_id": 3, "duration": 53 }, { "job_id": "J3", "task_id": 3, "machine_id": 4, "duration": 93 }, { "job_id": "J3", "task_id": 4, "machine_id": 5, "duration": 99 }, { "job_id": "J4", "task_id": 0, "machine_id": 1, "duration": 66 }, { "job_id": "J4", "task_id": 1, "machine_id": 2, "duration": 58 }, { "job_id": "J4", "task_id": 2, "machine_id": 3, "duration": 43 }, { "job_id": "J4", "task_id": 3, "machine_id": 4, "duration": 47 }, { "job_id": "J4", "task_id": 4, "machine_id": 5, "duration": 74 }, { "job_id": "J5", "task_id": 0, "machine_id": 1, "duration": 38 }, { "job_id": "J5", "task_id": 1, "machine_id": 2, "duration": 46 }, { "job_id": "J5", "task_id": 2, "machine_id": 3, "duration": 98 }, { "job_id": "J5", "task_id": 3, "machine_id": 4, "duration": 11 }, { "job_id": "J5", "task_id": 4, "machine_id": 5, "duration": 39 }, { "job_id": "J6", "task_id": 0, "machine_id": 1, "duration": 51 }, { "job_id": "J6", "task_id": 1, "machine_id": 2, "duration": 15 }, { "job_id": "J6", "task_id": 2, "machine_id": 3, "duration": 62 }, { "job_id": "J6", "task_id": 3, "machine_id": 4, "duration": 30 }, { "job_id": "J6", "task_id": 4, "machine_id": 5, "duration": 27 }, { "job_id": "J7", "task_id": 0, "machine_id": 1, "duration": 97 }, { "job_id": "J7", "task_id": 1, "machine_id": 2, "duration": 68 }, { "job_id": "J7", "task_id": 2, "machine_id": 3, "duration": 70 }, { "job_id": "J7", "task_id": 3, "machine_id": 4, "duration": 66 }, { "job_id": "J7", "task_id": 4, "machine_id": 5, "duration": 22 }, { "job_id": "J8", "task_id": 0, "machine_id": 1, "duration": 38 }, { "job_id": "J8", "task_id": 1, "machine_id": 2, "duration": 43 }, { "job_id": "J8", "task_id": 2, "machine_id": 3, "duration": 36 }, { "job_id": "J8", "task_id": 3, "machine_id": 4, "duration": 50 }, { "job_id": "J8", "task_id": 4, "machine_id": 5, "duration": 46 }, { "job_id": "J9", "task_id": 0, "machine_id": 1, "duration": 83 }, { "job_id": "J9", "task_id": 1, "machine_id": 2, "duration": 3 }, { "job_id": "J9", "task_id": 2, "machine_id": 3, "duration": 47 }, { "job_id": "J9", "task_id": 3, "machine_id": 4, "duration": 19 }, { "job_id": "J9", "task_id": 4, "machine_id": 5, "duration": 49 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 1, "duration": 1 }, { "task": 1, "start": 1, "machine": 2, "duration": 37 }, { "task": 2, "start": 39, "machine": 3, "duration": 32 }, { "task": 3, "start": 71, "machine": 4, "duration": 68 }, { "task": 4, "start": 179, "machine": 5, "duration": 83 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 49, "machine": 1, "duration": 26 }, { "task": 1, "start": 75, "machine": 2, "duration": 63 }, { "task": 2, "start": 138, "machine": 3, "duration": 2 }, { "task": 3, "start": 140, "machine": 4, "duration": 5 }, { "task": 4, "start": 145, "machine": 5, "duration": 34 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 1, "machine": 1, "duration": 48 }, { "task": 1, "start": 49, "machine": 2, "duration": 9 }, { "task": 2, "start": 71, "machine": 3, "duration": 53 }, { "task": 3, "start": 145, "machine": 4, "duration": 93 }, { "task": 4, "start": 262, "machine": 5, "duration": 99 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 113, "machine": 1, "duration": 66 }, { "task": 1, "start": 184, "machine": 2, "duration": 58 }, { "task": 2, "start": 282, "machine": 3, "duration": 43 }, { "task": 3, "start": 325, "machine": 4, "duration": 47 }, { "task": 4, "start": 400, "machine": 5, "duration": 74 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 75, "machine": 1, "duration": 38 }, { "task": 1, "start": 138, "machine": 2, "duration": 46 }, { "task": 2, "start": 184, "machine": 3, "duration": 98 }, { "task": 3, "start": 282, "machine": 4, "duration": 11 }, { "task": 4, "start": 361, "machine": 5, "duration": 39 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 314, "machine": 1, "duration": 51 }, { "task": 1, "start": 382, "machine": 2, "duration": 15 }, { "task": 2, "start": 499, "machine": 3, "duration": 62 }, { "task": 3, "start": 561, "machine": 4, "duration": 30 }, { "task": 4, "start": 591, "machine": 5, "duration": 27 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 217, "machine": 1, "duration": 97 }, { "task": 1, "start": 314, "machine": 2, "duration": 68 }, { "task": 2, "start": 382, "machine": 3, "duration": 70 }, { "task": 3, "start": 452, "machine": 4, "duration": 66 }, { "task": 4, "start": 520, "machine": 5, "duration": 22 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 179, "machine": 1, "duration": 38 }, { "task": 1, "start": 242, "machine": 2, "duration": 43 }, { "task": 2, "start": 325, "machine": 3, "duration": 36 }, { "task": 3, "start": 372, "machine": 4, "duration": 50 }, { "task": 4, "start": 474, "machine": 5, "duration": 46 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 365, "machine": 1, "duration": 83 }, { "task": 1, "start": 448, "machine": 2, "duration": 3 }, { "task": 2, "start": 452, "machine": 3, "duration": 47 }, { "task": 3, "start": 518, "machine": 4, "duration": 19 }, { "task": 4, "start": 542, "machine": 5, "duration": 49 } ] } ], "context_index": 15, "input_format": "json", "input_index_base": 1 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "I’m the person in charge of the test lab, lining up a bunch of gadgets so each one goes through the same string of tests, each test taking a set amount of time. The job is to pick who goes on which test bench and when, making sure every device follows the exact test order and no bench ever runs two tests at once. A schedule is better if the very last device finishes sooner — you measure that by looking at when each device completes its final test and taking the latest of those times. The full list of devices, tests and durations is shown below.\n\n# num_devices=12\n# num_test_benches=5\n# device_identifiers=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11, J12\n# test_bench_identifiers=A, B, C, D, E\ndevice_id,test_step_index,test_bench_id,test_duration\nJ1,0,A,1\nJ1,1,B,50\nJ1,2,C,7\nJ1,3,D,15\nJ1,4,E,37\nJ2,0,A,48\nJ2,1,B,68\nJ2,2,C,69\nJ2,3,D,72\nJ2,4,E,28\nJ3,0,A,86\nJ3,1,B,61\nJ3,2,C,37\nJ3,3,D,97\nJ3,4,E,5\nJ4,0,A,20\nJ4,1,B,26\nJ4,2,C,44\nJ4,3,D,85\nJ4,4,E,81\nJ5,0,A,79\nJ5,1,B,15\nJ5,2,C,57\nJ5,3,D,4\nJ5,4,E,23\nJ6,0,A,4\nJ6,1,B,24\nJ6,2,C,28\nJ6,3,D,71\nJ6,4,E,96\nJ7,0,A,88\nJ7,1,B,45\nJ7,2,C,96\nJ7,3,D,70\nJ7,4,E,95\nJ8,0,A,71\nJ8,1,B,6\nJ8,2,C,12\nJ8,3,D,49\nJ8,4,E,82\nJ9,0,A,9\nJ9,1,B,1\nJ9,2,C,19\nJ9,3,D,94\nJ9,4,E,14\nJ10,0,A,15\nJ10,1,B,1\nJ10,2,C,43\nJ10,3,D,54\nJ10,4,E,87\nJ11,0,A,69\nJ11,1,B,23\nJ11,2,C,55\nJ11,3,D,67\nJ11,4,E,48\nJ12,0,A,49\nJ12,1,B,73\nJ12,2,C,17\nJ12,3,D,82\nJ12,4,E,45\n\nIf you want the schedule in a simple, shareable form I usually send it as a little JSON sketch like this — just so we all agree on the shape of the answer:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of that as a short form: \"solution\" is the list of devices (jobs), each job has a \"tasks\" list showing the individual tests in order. For each test you give which step it is (\"task\"), when it starts (\"start\"), which bench it uses (\"machine\"), and how long it takes (\"duration\"). Easy, like filling out a little schedule form rather than drawing a diagram.\n\nThis JSON is just a sketch of the shape I need — I still need the actual numbers and IDs filled in for your instance.\n\nPlease make sure to use the exact identifiers from the instance input — don't rename them or invent new labels. For example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 5, "nr_jobs": 12, "jobs": [ [ [ 0, 1 ], [ 1, 50 ], [ 2, 7 ], [ 3, 15 ], [ 4, 37 ] ], [ [ 0, 48 ], [ 1, 68 ], [ 2, 69 ], [ 3, 72 ], [ 4, 28 ] ], [ [ 0, 86 ], [ 1, 61 ], [ 2, 37 ], [ 3, 97 ], [ 4, 5 ] ], [ [ 0, 20 ], [ 1, 26 ], [ 2, 44 ], [ 3, 85 ], [ 4, 81 ] ], [ [ 0, 79 ], [ 1, 15 ], [ 2, 57 ], [ 3, 4 ], [ 4, 23 ] ], [ [ 0, 4 ], [ 1, 24 ], [ 2, 28 ], [ 3, 71 ], [ 4, 96 ] ], [ [ 0, 88 ], [ 1, 45 ], [ 2, 96 ], [ 3, 70 ], [ 4, 95 ] ], [ [ 0, 71 ], [ 1, 6 ], [ 2, 12 ], [ 3, 49 ], [ 4, 82 ] ], [ [ 0, 9 ], [ 1, 1 ], [ 2, 19 ], [ 3, 94 ], [ 4, 14 ] ], [ [ 0, 15 ], [ 1, 1 ], [ 2, 43 ], [ 3, 54 ], [ 4, 87 ] ], [ [ 0, 69 ], [ 1, 23 ], [ 2, 55 ], [ 3, 67 ], [ 4, 48 ] ], [ [ 0, 49 ], [ 1, 73 ], [ 2, 17 ], [ 3, 82 ], [ 4, 45 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 9, "machine": 0, "duration": 1 }, { "task": 1, "start": 61, "machine": 1, "duration": 50 }, { "task": 2, "start": 111, "machine": 2, "duration": 7 }, { "task": 3, "start": 123, "machine": 3, "duration": 15 }, { "task": 4, "start": 138, "machine": 4, "duration": 37 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 104, "machine": 0, "duration": 48 }, { "task": 1, "start": 168, "machine": 1, "duration": 68 }, { "task": 2, "start": 240, "machine": 2, "duration": 69 }, { "task": 3, "start": 620, "machine": 3, "duration": 72 }, { "task": 4, "start": 761, "machine": 4, "duration": 28 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 508, "machine": 0, "duration": 86 }, { "task": 1, "start": 594, "machine": 1, "duration": 61 }, { "task": 2, "start": 655, "machine": 2, "duration": 37 }, { "task": 3, "start": 692, "machine": 3, "duration": 97 }, { "task": 4, "start": 789, "machine": 4, "duration": 5 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 84, "machine": 0, "duration": 20 }, { "task": 1, "start": 117, "machine": 1, "duration": 26 }, { "task": 2, "start": 143, "machine": 2, "duration": 44 }, { "task": 3, "start": 187, "machine": 3, "duration": 85 }, { "task": 4, "start": 272, "machine": 4, "duration": 81 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 429, "machine": 0, "duration": 79 }, { "task": 1, "start": 508, "machine": 1, "duration": 15 }, { "task": 2, "start": 546, "machine": 2, "duration": 57 }, { "task": 3, "start": 616, "machine": 3, "duration": 4 }, { "task": 4, "start": 738, "machine": 4, "duration": 23 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 377, "machine": 0, "duration": 4 }, { "task": 1, "start": 381, "machine": 1, "duration": 24 }, { "task": 2, "start": 408, "machine": 2, "duration": 28 }, { "task": 3, "start": 475, "machine": 3, "duration": 71 }, { "task": 4, "start": 547, "machine": 4, "duration": 96 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 289, "machine": 0, "duration": 88 }, { "task": 1, "start": 405, "machine": 1, "duration": 45 }, { "task": 2, "start": 450, "machine": 2, "duration": 96 }, { "task": 3, "start": 546, "machine": 3, "duration": 70 }, { "task": 4, "start": 643, "machine": 4, "duration": 95 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 13, "machine": 0, "duration": 71 }, { "task": 1, "start": 111, "machine": 1, "duration": 6 }, { "task": 2, "start": 118, "machine": 2, "duration": 12 }, { "task": 3, "start": 138, "machine": 3, "duration": 49 }, { "task": 4, "start": 187, "machine": 4, "duration": 82 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 9 }, { "task": 1, "start": 9, "machine": 1, "duration": 1 }, { "task": 2, "start": 10, "machine": 2, "duration": 19 }, { "task": 3, "start": 29, "machine": 3, "duration": 94 }, { "task": 4, "start": 533, "machine": 4, "duration": 14 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 152, "machine": 0, "duration": 15 }, { "task": 1, "start": 167, "machine": 1, "duration": 1 }, { "task": 2, "start": 197, "machine": 2, "duration": 43 }, { "task": 3, "start": 272, "machine": 3, "duration": 54 }, { "task": 4, "start": 353, "machine": 4, "duration": 87 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 220, "machine": 0, "duration": 69 }, { "task": 1, "start": 330, "machine": 1, "duration": 23 }, { "task": 2, "start": 353, "machine": 2, "duration": 55 }, { "task": 3, "start": 408, "machine": 3, "duration": 67 }, { "task": 4, "start": 485, "machine": 4, "duration": 48 } ] }, { "job": 11, "tasks": [ { "task": 0, "start": 167, "machine": 0, "duration": 49 }, { "task": 1, "start": 236, "machine": 1, "duration": 73 }, { "task": 2, "start": 309, "machine": 2, "duration": 17 }, { "task": 3, "start": 326, "machine": 3, "duration": 82 }, { "task": 4, "start": 440, "machine": 4, "duration": 45 } ] } ], "obj": 794.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 12, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11", "J12" ], "machines": [ "A", "B", "C", "D", "E" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 50 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 7 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 15 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 37 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 48 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 68 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 69 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 72 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 28 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 86 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 61 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 37 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 97 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 5 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 20 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 26 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 44 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 85 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 81 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 79 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 15 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 57 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 4 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 23 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 4 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 24 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 28 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 71 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 96 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 88 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 45 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 96 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 70 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 95 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 71 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 6 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 12 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 49 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 82 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 9 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 1 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 19 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 94 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 14 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 15 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 1 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 43 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 54 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 87 }, { "job_id": "J11", "task_id": 0, "machine_id": "A", "duration": 69 }, { "job_id": "J11", "task_id": 1, "machine_id": "B", "duration": 23 }, { "job_id": "J11", "task_id": 2, "machine_id": "C", "duration": 55 }, { "job_id": "J11", "task_id": 3, "machine_id": "D", "duration": 67 }, { "job_id": "J11", "task_id": 4, "machine_id": "E", "duration": 48 }, { "job_id": "J12", "task_id": 0, "machine_id": "A", "duration": 49 }, { "job_id": "J12", "task_id": 1, "machine_id": "B", "duration": 73 }, { "job_id": "J12", "task_id": 2, "machine_id": "C", "duration": 17 }, { "job_id": "J12", "task_id": 3, "machine_id": "D", "duration": 82 }, { "job_id": "J12", "task_id": 4, "machine_id": "E", "duration": 45 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 9, "machine": "A", "duration": 1 }, { "task": 1, "start": 61, "machine": "B", "duration": 50 }, { "task": 2, "start": 111, "machine": "C", "duration": 7 }, { "task": 3, "start": 123, "machine": "D", "duration": 15 }, { "task": 4, "start": 138, "machine": "E", "duration": 37 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 104, "machine": "A", "duration": 48 }, { "task": 1, "start": 168, "machine": "B", "duration": 68 }, { "task": 2, "start": 240, "machine": "C", "duration": 69 }, { "task": 3, "start": 620, "machine": "D", "duration": 72 }, { "task": 4, "start": 761, "machine": "E", "duration": 28 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 508, "machine": "A", "duration": 86 }, { "task": 1, "start": 594, "machine": "B", "duration": 61 }, { "task": 2, "start": 655, "machine": "C", "duration": 37 }, { "task": 3, "start": 692, "machine": "D", "duration": 97 }, { "task": 4, "start": 789, "machine": "E", "duration": 5 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 84, "machine": "A", "duration": 20 }, { "task": 1, "start": 117, "machine": "B", "duration": 26 }, { "task": 2, "start": 143, "machine": "C", "duration": 44 }, { "task": 3, "start": 187, "machine": "D", "duration": 85 }, { "task": 4, "start": 272, "machine": "E", "duration": 81 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 429, "machine": "A", "duration": 79 }, { "task": 1, "start": 508, "machine": "B", "duration": 15 }, { "task": 2, "start": 546, "machine": "C", "duration": 57 }, { "task": 3, "start": 616, "machine": "D", "duration": 4 }, { "task": 4, "start": 738, "machine": "E", "duration": 23 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 377, "machine": "A", "duration": 4 }, { "task": 1, "start": 381, "machine": "B", "duration": 24 }, { "task": 2, "start": 408, "machine": "C", "duration": 28 }, { "task": 3, "start": 475, "machine": "D", "duration": 71 }, { "task": 4, "start": 547, "machine": "E", "duration": 96 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 289, "machine": "A", "duration": 88 }, { "task": 1, "start": 405, "machine": "B", "duration": 45 }, { "task": 2, "start": 450, "machine": "C", "duration": 96 }, { "task": 3, "start": 546, "machine": "D", "duration": 70 }, { "task": 4, "start": 643, "machine": "E", "duration": 95 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 13, "machine": "A", "duration": 71 }, { "task": 1, "start": 111, "machine": "B", "duration": 6 }, { "task": 2, "start": 118, "machine": "C", "duration": 12 }, { "task": 3, "start": 138, "machine": "D", "duration": 49 }, { "task": 4, "start": 187, "machine": "E", "duration": 82 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 9 }, { "task": 1, "start": 9, "machine": "B", "duration": 1 }, { "task": 2, "start": 10, "machine": "C", "duration": 19 }, { "task": 3, "start": 29, "machine": "D", "duration": 94 }, { "task": 4, "start": 533, "machine": "E", "duration": 14 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 152, "machine": "A", "duration": 15 }, { "task": 1, "start": 167, "machine": "B", "duration": 1 }, { "task": 2, "start": 197, "machine": "C", "duration": 43 }, { "task": 3, "start": 272, "machine": "D", "duration": 54 }, { "task": 4, "start": 353, "machine": "E", "duration": 87 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 220, "machine": "A", "duration": 69 }, { "task": 1, "start": 330, "machine": "B", "duration": 23 }, { "task": 2, "start": 353, "machine": "C", "duration": 55 }, { "task": 3, "start": 408, "machine": "D", "duration": 67 }, { "task": 4, "start": 485, "machine": "E", "duration": 48 } ] }, { "job": "J12", "tasks": [ { "task": 0, "start": 167, "machine": "A", "duration": 49 }, { "task": 1, "start": 236, "machine": "B", "duration": 73 }, { "task": 2, "start": 309, "machine": "C", "duration": 17 }, { "task": 3, "start": 326, "machine": "D", "duration": 82 }, { "task": 4, "start": 440, "machine": "E", "duration": 45 } ] } ], "context_index": 16, "input_format": "csv", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "I manage a small car wash where every vehicle must go through prewash, soap, rinse, then drying in that exact order, and my job is to line them up so no wash bay is trying to handle two cars at once. The aim is simple: get the whole group finished as fast as possible — you measure success by the clock time when the last car rolls out of the dryer. Nothing can be skipped or done twice, and each station can only work on one car at a time. The concrete list of cars and their timings is shown below.\n\n{\n \"nr_vehicles\": 11,\n \"nr_stations\": 6,\n \"vehicle_ids\": [\n \"J1\",\n \"J2\",\n \"J3\",\n \"J4\",\n \"J5\",\n \"J6\",\n \"J7\",\n \"J8\",\n \"J9\",\n \"J10\",\n \"J11\"\n ],\n \"station_ids\": [\n \"A\",\n \"B\",\n \"C\",\n \"D\",\n \"E\",\n \"F\"\n ],\n \"tasks\": [\n {\n \"vehicle_id\": \"J1\",\n \"step_index\": 0,\n \"station_id\": \"A\",\n \"step_duration\": 1\n },\n {\n \"vehicle_id\": \"J1\",\n \"step_index\": 1,\n \"station_id\": \"B\",\n \"step_duration\": 63\n },\n {\n \"vehicle_id\": \"J1\",\n \"step_index\": 2,\n \"station_id\": \"C\",\n \"step_duration\": 82\n },\n {\n \"vehicle_id\": \"J1\",\n \"step_index\": 3,\n \"station_id\": \"D\",\n \"step_duration\": 60\n },\n {\n \"vehicle_id\": \"J1\",\n \"step_index\": 4,\n \"station_id\": \"E\",\n \"step_duration\": 90\n },\n {\n \"vehicle_id\": \"J1\",\n \"step_index\": 5,\n \"station_id\": \"F\",\n \"step_duration\": 70\n },\n {\n \"vehicle_id\": \"J2\",\n \"step_index\": 0,\n \"station_id\": \"A\",\n \"step_duration\": 73\n },\n {\n \"vehicle_id\": \"J2\",\n \"step_index\": 1,\n \"station_id\": \"B\",\n \"step_duration\": 38\n },\n {\n \"vehicle_id\": \"J2\",\n \"step_index\": 2,\n \"station_id\": \"C\",\n \"step_duration\": 40\n },\n {\n \"vehicle_id\": \"J2\",\n \"step_index\": 3,\n \"station_id\": \"D\",\n \"step_duration\": 22\n },\n {\n \"vehicle_id\": \"J2\",\n \"step_index\": 4,\n \"station_id\": \"E\",\n \"step_duration\": 25\n },\n {\n \"vehicle_id\": \"J2\",\n \"step_index\": 5,\n \"station_id\": \"F\",\n \"step_duration\": 13\n },\n {\n \"vehicle_id\": \"J3\",\n \"step_index\": 0,\n \"station_id\": \"A\",\n \"step_duration\": 20\n },\n {\n \"vehicle_id\": \"J3\",\n \"step_index\": 1,\n \"station_id\": \"B\",\n \"step_duration\": 1\n },\n {\n \"vehicle_id\": \"J3\",\n \"step_index\": 2,\n \"station_id\": \"C\",\n \"step_duration\": 10\n },\n {\n \"vehicle_id\": \"J3\",\n \"step_index\": 3,\n \"station_id\": \"D\",\n \"step_duration\": 72\n },\n {\n \"vehicle_id\": \"J3\",\n \"step_index\": 4,\n \"station_id\": \"E\",\n \"step_duration\": 92\n },\n {\n \"vehicle_id\": \"J3\",\n \"step_index\": 5,\n \"station_id\": \"F\",\n \"step_duration\": 45\n },\n {\n \"vehicle_id\": \"J4\",\n \"step_index\": 0,\n \"station_id\": \"A\",\n \"step_duration\": 24\n },\n {\n \"vehicle_id\": \"J4\",\n \"step_index\": 1,\n \"station_id\": \"B\",\n \"step_duration\": 87\n },\n {\n \"vehicle_id\": \"J4\",\n \"step_index\": 2,\n \"station_id\": \"C\",\n \"step_duration\": 22\n },\n {\n \"vehicle_id\": \"J4\",\n \"step_index\": 3,\n \"station_id\": \"D\",\n \"step_duration\": 83\n },\n {\n \"vehicle_id\": \"J4\",\n \"step_index\": 4,\n \"station_id\": \"E\",\n \"step_duration\": 16\n },\n {\n \"vehicle_id\": \"J4\",\n \"step_index\": 5,\n \"station_id\": \"F\",\n \"step_duration\": 96\n },\n {\n \"vehicle_id\": \"J5\",\n \"step_index\": 0,\n \"station_id\": \"A\",\n \"step_duration\": 8\n },\n {\n \"vehicle_id\": \"J5\",\n \"step_index\": 1,\n \"station_id\": \"B\",\n \"step_duration\": 56\n },\n {\n \"vehicle_id\": \"J5\",\n \"step_index\": 2,\n \"station_id\": \"C\",\n \"step_duration\": 34\n },\n {\n \"vehicle_id\": \"J5\",\n \"step_index\": 3,\n \"station_id\": \"D\",\n \"step_duration\": 92\n },\n {\n \"vehicle_id\": \"J5\",\n \"step_index\": 4,\n \"station_id\": \"E\",\n \"step_duration\": 13\n },\n {\n \"vehicle_id\": \"J5\",\n \"step_index\": 5,\n \"station_id\": \"F\",\n \"step_duration\": 67\n },\n {\n \"vehicle_id\": \"J6\",\n \"step_index\": 0,\n \"station_id\": \"A\",\n \"step_duration\": 80\n },\n {\n \"vehicle_id\": \"J6\",\n \"step_index\": 1,\n \"station_id\": \"B\",\n \"step_duration\": 21\n },\n {\n \"vehicle_id\": \"J6\",\n \"step_index\": 2,\n \"station_id\": \"C\",\n \"step_duration\": 23\n },\n {\n \"vehicle_id\": \"J6\",\n \"step_index\": 3,\n \"station_id\": \"D\",\n \"step_duration\": 75\n },\n {\n \"vehicle_id\": \"J6\",\n \"step_index\": 4,\n \"station_id\": \"E\",\n \"step_duration\": 69\n },\n {\n \"vehicle_id\": \"J6\",\n \"step_index\": 5,\n \"station_id\": \"F\",\n \"step_duration\": 4\n },\n {\n \"vehicle_id\": \"J7\",\n \"step_index\": 0,\n \"station_id\": \"A\",\n \"step_duration\": 69\n },\n {\n \"vehicle_id\": \"J7\",\n \"step_index\": 1,\n \"station_id\": \"B\",\n \"step_duration\": 87\n },\n {\n \"vehicle_id\": \"J7\",\n \"step_index\": 2,\n \"station_id\": \"C\",\n \"step_duration\": 48\n },\n {\n \"vehicle_id\": \"J7\",\n \"step_index\": 3,\n \"station_id\": \"D\",\n \"step_duration\": 19\n },\n {\n \"vehicle_id\": \"J7\",\n \"step_index\": 4,\n \"station_id\": \"E\",\n \"step_duration\": 33\n },\n {\n \"vehicle_id\": \"J7\",\n \"step_index\": 5,\n \"station_id\": \"F\",\n \"step_duration\": 98\n },\n {\n \"vehicle_id\": \"J8\",\n \"step_index\": 0,\n \"station_id\": \"A\",\n \"step_duration\": 91\n },\n {\n \"vehicle_id\": \"J8\",\n \"step_index\": 1,\n \"station_id\": \"B\",\n \"step_duration\": 69\n },\n {\n \"vehicle_id\": \"J8\",\n \"step_index\": 2,\n \"station_id\": \"C\",\n \"step_duration\": 79\n },\n {\n \"vehicle_id\": \"J8\",\n \"step_index\": 3,\n \"station_id\": \"D\",\n \"step_duration\": 22\n },\n {\n \"vehicle_id\": \"J8\",\n \"step_index\": 4,\n \"station_id\": \"E\",\n \"step_duration\": 63\n },\n {\n \"vehicle_id\": \"J8\",\n \"step_index\": 5,\n \"station_id\": \"F\",\n \"step_duration\": 31\n },\n {\n \"vehicle_id\": \"J9\",\n \"step_index\": 0,\n \"station_id\": \"A\",\n \"step_duration\": 81\n },\n {\n \"vehicle_id\": \"J9\",\n \"step_index\": 1,\n \"station_id\": \"B\",\n \"step_duration\": 31\n },\n {\n \"vehicle_id\": \"J9\",\n \"step_index\": 2,\n \"station_id\": \"C\",\n \"step_duration\": 46\n },\n {\n \"vehicle_id\": \"J9\",\n \"step_index\": 3,\n \"station_id\": \"D\",\n \"step_duration\": 71\n },\n {\n \"vehicle_id\": \"J9\",\n \"step_index\": 4,\n \"station_id\": \"E\",\n \"step_duration\": 79\n },\n {\n \"vehicle_id\": \"J9\",\n \"step_index\": 5,\n \"station_id\": \"F\",\n \"step_duration\": 94\n },\n {\n \"vehicle_id\": \"J10\",\n \"step_index\": 0,\n \"station_id\": \"A\",\n \"step_duration\": 83\n },\n {\n \"vehicle_id\": \"J10\",\n \"step_index\": 1,\n \"station_id\": \"B\",\n \"step_duration\": 66\n },\n {\n \"vehicle_id\": \"J10\",\n \"step_index\": 2,\n \"station_id\": \"C\",\n \"step_duration\": 22\n },\n {\n \"vehicle_id\": \"J10\",\n \"step_index\": 3,\n \"station_id\": \"D\",\n \"step_duration\": 7\n },\n {\n \"vehicle_id\": \"J10\",\n \"step_index\": 4,\n \"station_id\": \"E\",\n \"step_duration\": 73\n },\n {\n \"vehicle_id\": \"J10\",\n \"step_index\": 5,\n \"station_id\": \"F\",\n \"step_duration\": 51\n },\n {\n \"vehicle_id\": \"J11\",\n \"step_index\": 0,\n \"station_id\": \"A\",\n \"step_duration\": 47\n },\n {\n \"vehicle_id\": \"J11\",\n \"step_index\": 1,\n \"station_id\": \"B\",\n \"step_duration\": 26\n },\n {\n \"vehicle_id\": \"J11\",\n \"step_index\": 2,\n \"station_id\": \"C\",\n \"step_duration\": 94\n },\n {\n \"vehicle_id\": \"J11\",\n \"step_index\": 3,\n \"station_id\": \"D\",\n \"step_duration\": 50\n },\n {\n \"vehicle_id\": \"J11\",\n \"step_index\": 4,\n \"station_id\": \"E\",\n \"step_duration\": 23\n },\n {\n \"vehicle_id\": \"J11\",\n \"step_index\": 5,\n \"station_id\": \"F\",\n \"step_duration\": 65\n }\n ]\n}\n\nI'll lay out the answer in a simple JSON sketch so it's easy to read and plug into whatever you use next — it'll look like this:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nPretty straightforward: each top-level object in \"solution\" is one car (job). \"job\" is the car's identifier, and \"tasks\" is the list of steps it goes through. Inside each task, \"task\" is which step in the sequence it is, \"start\" is the time that step begins, \"machine\" tells you which station handles it, and \"duration\" is how long that station works on the car. Think of it like filling out a little schedule form for every car.\n\nThis JSON is only a sketch of the expected shape — it's not the actual schedule itself.\n\nPlease be sure to use the exact identifiers from the instance input with no renaming and no new labels.\n- for example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 6, "nr_jobs": 11, "jobs": [ [ [ 0, 1 ], [ 1, 63 ], [ 2, 82 ], [ 3, 60 ], [ 4, 90 ], [ 5, 70 ] ], [ [ 0, 73 ], [ 1, 38 ], [ 2, 40 ], [ 3, 22 ], [ 4, 25 ], [ 5, 13 ] ], [ [ 0, 20 ], [ 1, 1 ], [ 2, 10 ], [ 3, 72 ], [ 4, 92 ], [ 5, 45 ] ], [ [ 0, 24 ], [ 1, 87 ], [ 2, 22 ], [ 3, 83 ], [ 4, 16 ], [ 5, 96 ] ], [ [ 0, 8 ], [ 1, 56 ], [ 2, 34 ], [ 3, 92 ], [ 4, 13 ], [ 5, 67 ] ], [ [ 0, 80 ], [ 1, 21 ], [ 2, 23 ], [ 3, 75 ], [ 4, 69 ], [ 5, 4 ] ], [ [ 0, 69 ], [ 1, 87 ], [ 2, 48 ], [ 3, 19 ], [ 4, 33 ], [ 5, 98 ] ], [ [ 0, 91 ], [ 1, 69 ], [ 2, 79 ], [ 3, 22 ], [ 4, 63 ], [ 5, 31 ] ], [ [ 0, 81 ], [ 1, 31 ], [ 2, 46 ], [ 3, 71 ], [ 4, 79 ], [ 5, 94 ] ], [ [ 0, 83 ], [ 1, 66 ], [ 2, 22 ], [ 3, 7 ], [ 4, 73 ], [ 5, 51 ] ], [ [ 0, 47 ], [ 1, 26 ], [ 2, 94 ], [ 3, 50 ], [ 4, 23 ], [ 5, 65 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 311, "machine": 0, "duration": 1 }, { "task": 1, "start": 318, "machine": 1, "duration": 63 }, { "task": 2, "start": 381, "machine": 2, "duration": 82 }, { "task": 3, "start": 463, "machine": 3, "duration": 60 }, { "task": 4, "start": 523, "machine": 4, "duration": 90 }, { "task": 5, "start": 613, "machine": 5, "duration": 70 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 552, "machine": 0, "duration": 73 }, { "task": 1, "start": 625, "machine": 1, "duration": 38 }, { "task": 2, "start": 700, "machine": 2, "duration": 40 }, { "task": 3, "start": 740, "machine": 3, "duration": 22 }, { "task": 4, "start": 791, "machine": 4, "duration": 25 }, { "task": 5, "start": 816, "machine": 5, "duration": 13 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 20 }, { "task": 1, "start": 20, "machine": 1, "duration": 1 }, { "task": 2, "start": 21, "machine": 2, "duration": 10 }, { "task": 3, "start": 31, "machine": 3, "duration": 72 }, { "task": 4, "start": 103, "machine": 4, "duration": 92 }, { "task": 5, "start": 195, "machine": 5, "duration": 45 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 99, "machine": 0, "duration": 24 }, { "task": 1, "start": 124, "machine": 1, "duration": 87 }, { "task": 2, "start": 246, "machine": 2, "duration": 22 }, { "task": 3, "start": 268, "machine": 3, "duration": 83 }, { "task": 4, "start": 351, "machine": 4, "duration": 16 }, { "task": 5, "start": 372, "machine": 5, "duration": 96 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 20, "machine": 0, "duration": 8 }, { "task": 1, "start": 28, "machine": 1, "duration": 56 }, { "task": 2, "start": 90, "machine": 2, "duration": 34 }, { "task": 3, "start": 126, "machine": 3, "duration": 92 }, { "task": 4, "start": 218, "machine": 4, "duration": 13 }, { "task": 5, "start": 240, "machine": 5, "duration": 67 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 381, "machine": 0, "duration": 80 }, { "task": 1, "start": 507, "machine": 1, "duration": 21 }, { "task": 2, "start": 555, "machine": 2, "duration": 23 }, { "task": 3, "start": 578, "machine": 3, "duration": 75 }, { "task": 4, "start": 653, "machine": 4, "duration": 69 }, { "task": 5, "start": 781, "machine": 5, "duration": 4 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 312, "machine": 0, "duration": 69 }, { "task": 1, "start": 420, "machine": 1, "duration": 87 }, { "task": 2, "start": 507, "machine": 2, "duration": 48 }, { "task": 3, "start": 559, "machine": 3, "duration": 19 }, { "task": 4, "start": 620, "machine": 4, "duration": 33 }, { "task": 5, "start": 683, "machine": 5, "duration": 98 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 461, "machine": 0, "duration": 91 }, { "task": 1, "start": 552, "machine": 1, "duration": 69 }, { "task": 2, "start": 621, "machine": 2, "duration": 79 }, { "task": 3, "start": 700, "machine": 3, "duration": 22 }, { "task": 4, "start": 722, "machine": 4, "duration": 63 }, { "task": 5, "start": 785, "machine": 5, "duration": 31 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 206, "machine": 0, "duration": 81 }, { "task": 1, "start": 287, "machine": 1, "duration": 31 }, { "task": 2, "start": 318, "machine": 2, "duration": 46 }, { "task": 3, "start": 369, "machine": 3, "duration": 71 }, { "task": 4, "start": 440, "machine": 4, "duration": 79 }, { "task": 5, "start": 519, "machine": 5, "duration": 94 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 123, "machine": 0, "duration": 83 }, { "task": 1, "start": 221, "machine": 1, "duration": 66 }, { "task": 2, "start": 287, "machine": 2, "duration": 22 }, { "task": 3, "start": 351, "machine": 3, "duration": 7 }, { "task": 4, "start": 367, "machine": 4, "duration": 73 }, { "task": 5, "start": 468, "machine": 5, "duration": 51 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 51, "machine": 0, "duration": 47 }, { "task": 1, "start": 98, "machine": 1, "duration": 26 }, { "task": 2, "start": 124, "machine": 2, "duration": 94 }, { "task": 3, "start": 218, "machine": 3, "duration": 50 }, { "task": 4, "start": 284, "machine": 4, "duration": 23 }, { "task": 5, "start": 307, "machine": 5, "duration": 65 } ] } ], "obj": 829.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 11, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11" ], "machines": [ "A", "B", "C", "D", "E", "F" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 63 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 82 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 60 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 90 }, { "job_id": "J1", "task_id": 5, "machine_id": "F", "duration": 70 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 73 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 38 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 40 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 22 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 25 }, { "job_id": "J2", "task_id": 5, "machine_id": "F", "duration": 13 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 20 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 1 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 10 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 72 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 92 }, { "job_id": "J3", "task_id": 5, "machine_id": "F", "duration": 45 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 24 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 87 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 22 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 83 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 16 }, { "job_id": "J4", "task_id": 5, "machine_id": "F", "duration": 96 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 8 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 56 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 34 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 92 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 13 }, { "job_id": "J5", "task_id": 5, "machine_id": "F", "duration": 67 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 80 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 21 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 23 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 75 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 69 }, { "job_id": "J6", "task_id": 5, "machine_id": "F", "duration": 4 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 69 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 87 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 48 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 19 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 33 }, { "job_id": "J7", "task_id": 5, "machine_id": "F", "duration": 98 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 91 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 69 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 79 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 22 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 63 }, { "job_id": "J8", "task_id": 5, "machine_id": "F", "duration": 31 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 81 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 31 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 46 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 71 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 79 }, { "job_id": "J9", "task_id": 5, "machine_id": "F", "duration": 94 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 83 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 66 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 22 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 7 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 73 }, { "job_id": "J10", "task_id": 5, "machine_id": "F", "duration": 51 }, { "job_id": "J11", "task_id": 0, "machine_id": "A", "duration": 47 }, { "job_id": "J11", "task_id": 1, "machine_id": "B", "duration": 26 }, { "job_id": "J11", "task_id": 2, "machine_id": "C", "duration": 94 }, { "job_id": "J11", "task_id": 3, "machine_id": "D", "duration": 50 }, { "job_id": "J11", "task_id": 4, "machine_id": "E", "duration": 23 }, { "job_id": "J11", "task_id": 5, "machine_id": "F", "duration": 65 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 311, "machine": "A", "duration": 1 }, { "task": 1, "start": 318, "machine": "B", "duration": 63 }, { "task": 2, "start": 381, "machine": "C", "duration": 82 }, { "task": 3, "start": 463, "machine": "D", "duration": 60 }, { "task": 4, "start": 523, "machine": "E", "duration": 90 }, { "task": 5, "start": 613, "machine": "F", "duration": 70 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 552, "machine": "A", "duration": 73 }, { "task": 1, "start": 625, "machine": "B", "duration": 38 }, { "task": 2, "start": 700, "machine": "C", "duration": 40 }, { "task": 3, "start": 740, "machine": "D", "duration": 22 }, { "task": 4, "start": 791, "machine": "E", "duration": 25 }, { "task": 5, "start": 816, "machine": "F", "duration": 13 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 20 }, { "task": 1, "start": 20, "machine": "B", "duration": 1 }, { "task": 2, "start": 21, "machine": "C", "duration": 10 }, { "task": 3, "start": 31, "machine": "D", "duration": 72 }, { "task": 4, "start": 103, "machine": "E", "duration": 92 }, { "task": 5, "start": 195, "machine": "F", "duration": 45 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 99, "machine": "A", "duration": 24 }, { "task": 1, "start": 124, "machine": "B", "duration": 87 }, { "task": 2, "start": 246, "machine": "C", "duration": 22 }, { "task": 3, "start": 268, "machine": "D", "duration": 83 }, { "task": 4, "start": 351, "machine": "E", "duration": 16 }, { "task": 5, "start": 372, "machine": "F", "duration": 96 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 20, "machine": "A", "duration": 8 }, { "task": 1, "start": 28, "machine": "B", "duration": 56 }, { "task": 2, "start": 90, "machine": "C", "duration": 34 }, { "task": 3, "start": 126, "machine": "D", "duration": 92 }, { "task": 4, "start": 218, "machine": "E", "duration": 13 }, { "task": 5, "start": 240, "machine": "F", "duration": 67 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 381, "machine": "A", "duration": 80 }, { "task": 1, "start": 507, "machine": "B", "duration": 21 }, { "task": 2, "start": 555, "machine": "C", "duration": 23 }, { "task": 3, "start": 578, "machine": "D", "duration": 75 }, { "task": 4, "start": 653, "machine": "E", "duration": 69 }, { "task": 5, "start": 781, "machine": "F", "duration": 4 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 312, "machine": "A", "duration": 69 }, { "task": 1, "start": 420, "machine": "B", "duration": 87 }, { "task": 2, "start": 507, "machine": "C", "duration": 48 }, { "task": 3, "start": 559, "machine": "D", "duration": 19 }, { "task": 4, "start": 620, "machine": "E", "duration": 33 }, { "task": 5, "start": 683, "machine": "F", "duration": 98 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 461, "machine": "A", "duration": 91 }, { "task": 1, "start": 552, "machine": "B", "duration": 69 }, { "task": 2, "start": 621, "machine": "C", "duration": 79 }, { "task": 3, "start": 700, "machine": "D", "duration": 22 }, { "task": 4, "start": 722, "machine": "E", "duration": 63 }, { "task": 5, "start": 785, "machine": "F", "duration": 31 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 206, "machine": "A", "duration": 81 }, { "task": 1, "start": 287, "machine": "B", "duration": 31 }, { "task": 2, "start": 318, "machine": "C", "duration": 46 }, { "task": 3, "start": 369, "machine": "D", "duration": 71 }, { "task": 4, "start": 440, "machine": "E", "duration": 79 }, { "task": 5, "start": 519, "machine": "F", "duration": 94 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 123, "machine": "A", "duration": 83 }, { "task": 1, "start": 221, "machine": "B", "duration": 66 }, { "task": 2, "start": 287, "machine": "C", "duration": 22 }, { "task": 3, "start": 351, "machine": "D", "duration": 7 }, { "task": 4, "start": 367, "machine": "E", "duration": 73 }, { "task": 5, "start": 468, "machine": "F", "duration": 51 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 51, "machine": "A", "duration": 47 }, { "task": 1, "start": 98, "machine": "B", "duration": 26 }, { "task": 2, "start": 124, "machine": "C", "duration": 94 }, { "task": 3, "start": 218, "machine": "D", "duration": 50 }, { "task": 4, "start": 284, "machine": "E", "duration": 23 }, { "task": 5, "start": 307, "machine": "F", "duration": 65 } ] } ], "context_index": 17, "input_format": "json", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "We have a steady stream of clients who all need the same three stops—shampoo, then a cut, then styling—and they must move through in that sequence. The manager needs to decide who goes when so that each chair and station isn’t expected to handle two clients at the same minute, and every client gets each service once in the right order. The measure of success is how early the whole batch is done: look at the clock when the last client’s styling is finished — the sooner that time, the better. The concrete times and details follow below.\n\nThere are 11 clients and 5 stations; client IDs: J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11; station IDs: 1, 2, 3, 4, 5.\n\n| client_id | service_step | station_id | service_duration_minutes |\n|---|---|---|---|\n| J1 | 0 | 1 | 1 |\n| J1 | 1 | 2 | 76 |\n| J1 | 2 | 3 | 58 |\n| J1 | 3 | 4 | 6 |\n| J1 | 4 | 5 | 43 |\n| J2 | 0 | 1 | 91 |\n| J2 | 1 | 2 | 77 |\n| J2 | 2 | 3 | 6 |\n| J2 | 3 | 4 | 8 |\n| J2 | 4 | 5 | 15 |\n| J3 | 0 | 1 | 63 |\n| J3 | 1 | 2 | 64 |\n| J3 | 2 | 3 | 3 |\n| J3 | 3 | 4 | 4 |\n| J3 | 4 | 5 | 16 |\n| J4 | 0 | 1 | 25 |\n| J4 | 1 | 2 | 60 |\n| J4 | 2 | 3 | 45 |\n| J4 | 3 | 4 | 62 |\n| J4 | 4 | 5 | 94 |\n| J5 | 0 | 1 | 63 |\n| J5 | 1 | 2 | 52 |\n| J5 | 2 | 3 | 75 |\n| J5 | 3 | 4 | 89 |\n| J5 | 4 | 5 | 92 |\n| J6 | 0 | 1 | 9 |\n| J6 | 1 | 2 | 43 |\n| J6 | 2 | 3 | 58 |\n| J6 | 3 | 4 | 54 |\n| J6 | 4 | 5 | 37 |\n| J7 | 0 | 1 | 71 |\n| J7 | 1 | 2 | 96 |\n| J7 | 2 | 3 | 48 |\n| J7 | 3 | 4 | 80 |\n| J7 | 4 | 5 | 43 |\n| J8 | 0 | 1 | 37 |\n| J8 | 1 | 2 | 33 |\n| J8 | 2 | 3 | 63 |\n| J8 | 3 | 4 | 47 |\n| J8 | 4 | 5 | 55 |\n| J9 | 0 | 1 | 57 |\n| J9 | 1 | 2 | 97 |\n| J9 | 2 | 3 | 64 |\n| J9 | 3 | 4 | 45 |\n| J9 | 4 | 5 | 44 |\n| J10 | 0 | 1 | 29 |\n| J10 | 1 | 2 | 27 |\n| J10 | 2 | 3 | 20 |\n| J10 | 3 | 4 | 9 |\n| J10 | 4 | 5 | 75 |\n| J11 | 0 | 1 | 23 |\n| J11 | 1 | 2 | 19 |\n| J11 | 2 | 3 | 3 |\n| J11 | 3 | 4 | 22 |\n| J11 | 4 | 5 | 20 |\n\nWe must schedule so no station is double-booked and the batch finishes as early as possible.\n\nOh, and when you send the schedule back, please follow this JSON layout so it's easy to read and parse:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThis is just a simple form: each top-level entry is a client (job), and under each client there's a list of their services (tasks). For each task we note which chair/station it uses (machine), when that service starts (start), how long it takes (duration), and the task index to keep the order clear. Think of it like filling out one little card per client with a timeline of their three stops. This block is only a sketch of the shape I need — not the final schedule itself.\n\nPlease make sure you use the exact identifiers from the instance input — do not rename them or invent new labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 5, "nr_jobs": 11, "jobs": [ [ [ 0, 1 ], [ 1, 76 ], [ 2, 58 ], [ 3, 6 ], [ 4, 43 ] ], [ [ 0, 91 ], [ 1, 77 ], [ 2, 6 ], [ 3, 8 ], [ 4, 15 ] ], [ [ 0, 63 ], [ 1, 64 ], [ 2, 3 ], [ 3, 4 ], [ 4, 16 ] ], [ [ 0, 25 ], [ 1, 60 ], [ 2, 45 ], [ 3, 62 ], [ 4, 94 ] ], [ [ 0, 63 ], [ 1, 52 ], [ 2, 75 ], [ 3, 89 ], [ 4, 92 ] ], [ [ 0, 9 ], [ 1, 43 ], [ 2, 58 ], [ 3, 54 ], [ 4, 37 ] ], [ [ 0, 71 ], [ 1, 96 ], [ 2, 48 ], [ 3, 80 ], [ 4, 43 ] ], [ [ 0, 37 ], [ 1, 33 ], [ 2, 63 ], [ 3, 47 ], [ 4, 55 ] ], [ [ 0, 57 ], [ 1, 97 ], [ 2, 64 ], [ 3, 45 ], [ 4, 44 ] ], [ [ 0, 29 ], [ 1, 27 ], [ 2, 20 ], [ 3, 9 ], [ 4, 75 ] ], [ [ 0, 23 ], [ 1, 19 ], [ 2, 3 ], [ 3, 22 ], [ 4, 20 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 76 }, { "task": 2, "start": 77, "machine": 2, "duration": 58 }, { "task": 3, "start": 135, "machine": 3, "duration": 6 }, { "task": 4, "start": 141, "machine": 4, "duration": 43 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 315, "machine": 0, "duration": 91 }, { "task": 1, "start": 568, "machine": 1, "duration": 77 }, { "task": 2, "start": 645, "machine": 2, "duration": 6 }, { "task": 3, "start": 651, "machine": 3, "duration": 8 }, { "task": 4, "start": 664, "machine": 4, "duration": 15 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 406, "machine": 0, "duration": 63 }, { "task": 1, "start": 504, "machine": 1, "duration": 64 }, { "task": 2, "start": 568, "machine": 2, "duration": 3 }, { "task": 3, "start": 571, "machine": 3, "duration": 4 }, { "task": 4, "start": 604, "machine": 4, "duration": 16 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 53, "machine": 0, "duration": 25 }, { "task": 1, "start": 156, "machine": 1, "duration": 60 }, { "task": 2, "start": 221, "machine": 2, "duration": 45 }, { "task": 3, "start": 268, "machine": 3, "duration": 62 }, { "task": 4, "start": 334, "machine": 4, "duration": 94 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 124, "machine": 0, "duration": 63 }, { "task": 1, "start": 216, "machine": 1, "duration": 52 }, { "task": 2, "start": 268, "machine": 2, "duration": 75 }, { "task": 3, "start": 343, "machine": 3, "duration": 89 }, { "task": 4, "start": 432, "machine": 4, "duration": 92 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 115, "machine": 0, "duration": 9 }, { "task": 1, "start": 364, "machine": 1, "duration": 43 }, { "task": 2, "start": 412, "machine": 2, "duration": 58 }, { "task": 3, "start": 512, "machine": 3, "duration": 54 }, { "task": 4, "start": 567, "machine": 4, "duration": 37 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 187, "machine": 0, "duration": 71 }, { "task": 1, "start": 268, "machine": 1, "duration": 96 }, { "task": 2, "start": 364, "machine": 2, "duration": 48 }, { "task": 3, "start": 432, "machine": 3, "duration": 80 }, { "task": 4, "start": 524, "machine": 4, "duration": 43 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 78, "machine": 0, "duration": 37 }, { "task": 1, "start": 123, "machine": 1, "duration": 33 }, { "task": 2, "start": 158, "machine": 2, "duration": 63 }, { "task": 3, "start": 221, "machine": 3, "duration": 47 }, { "task": 4, "start": 279, "machine": 4, "duration": 55 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 258, "machine": 0, "duration": 57 }, { "task": 1, "start": 407, "machine": 1, "duration": 97 }, { "task": 2, "start": 504, "machine": 2, "duration": 64 }, { "task": 3, "start": 575, "machine": 3, "duration": 45 }, { "task": 4, "start": 620, "machine": 4, "duration": 44 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 24, "machine": 0, "duration": 29 }, { "task": 1, "start": 96, "machine": 1, "duration": 27 }, { "task": 2, "start": 138, "machine": 2, "duration": 20 }, { "task": 3, "start": 158, "machine": 3, "duration": 9 }, { "task": 4, "start": 184, "machine": 4, "duration": 75 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 23 }, { "task": 1, "start": 77, "machine": 1, "duration": 19 }, { "task": 2, "start": 135, "machine": 2, "duration": 3 }, { "task": 3, "start": 167, "machine": 3, "duration": 22 }, { "task": 4, "start": 259, "machine": 4, "duration": 20 } ] } ], "obj": 679.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 11, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11" ], "machines": [ 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 2, "duration": 76 }, { "job_id": "J1", "task_id": 2, "machine_id": 3, "duration": 58 }, { "job_id": "J1", "task_id": 3, "machine_id": 4, "duration": 6 }, { "job_id": "J1", "task_id": 4, "machine_id": 5, "duration": 43 }, { "job_id": "J2", "task_id": 0, "machine_id": 1, "duration": 91 }, { "job_id": "J2", "task_id": 1, "machine_id": 2, "duration": 77 }, { "job_id": "J2", "task_id": 2, "machine_id": 3, "duration": 6 }, { "job_id": "J2", "task_id": 3, "machine_id": 4, "duration": 8 }, { "job_id": "J2", "task_id": 4, "machine_id": 5, "duration": 15 }, { "job_id": "J3", "task_id": 0, "machine_id": 1, "duration": 63 }, { "job_id": "J3", "task_id": 1, "machine_id": 2, "duration": 64 }, { "job_id": "J3", "task_id": 2, "machine_id": 3, "duration": 3 }, { "job_id": "J3", "task_id": 3, "machine_id": 4, "duration": 4 }, { "job_id": "J3", "task_id": 4, "machine_id": 5, "duration": 16 }, { "job_id": "J4", "task_id": 0, "machine_id": 1, "duration": 25 }, { "job_id": "J4", "task_id": 1, "machine_id": 2, "duration": 60 }, { "job_id": "J4", "task_id": 2, "machine_id": 3, "duration": 45 }, { "job_id": "J4", "task_id": 3, "machine_id": 4, "duration": 62 }, { "job_id": "J4", "task_id": 4, "machine_id": 5, "duration": 94 }, { "job_id": "J5", "task_id": 0, "machine_id": 1, "duration": 63 }, { "job_id": "J5", "task_id": 1, "machine_id": 2, "duration": 52 }, { "job_id": "J5", "task_id": 2, "machine_id": 3, "duration": 75 }, { "job_id": "J5", "task_id": 3, "machine_id": 4, "duration": 89 }, { "job_id": "J5", "task_id": 4, "machine_id": 5, "duration": 92 }, { "job_id": "J6", "task_id": 0, "machine_id": 1, "duration": 9 }, { "job_id": "J6", "task_id": 1, "machine_id": 2, "duration": 43 }, { "job_id": "J6", "task_id": 2, "machine_id": 3, "duration": 58 }, { "job_id": "J6", "task_id": 3, "machine_id": 4, "duration": 54 }, { "job_id": "J6", "task_id": 4, "machine_id": 5, "duration": 37 }, { "job_id": "J7", "task_id": 0, "machine_id": 1, "duration": 71 }, { "job_id": "J7", "task_id": 1, "machine_id": 2, "duration": 96 }, { "job_id": "J7", "task_id": 2, "machine_id": 3, "duration": 48 }, { "job_id": "J7", "task_id": 3, "machine_id": 4, "duration": 80 }, { "job_id": "J7", "task_id": 4, "machine_id": 5, "duration": 43 }, { "job_id": "J8", "task_id": 0, "machine_id": 1, "duration": 37 }, { "job_id": "J8", "task_id": 1, "machine_id": 2, "duration": 33 }, { "job_id": "J8", "task_id": 2, "machine_id": 3, "duration": 63 }, { "job_id": "J8", "task_id": 3, "machine_id": 4, "duration": 47 }, { "job_id": "J8", "task_id": 4, "machine_id": 5, "duration": 55 }, { "job_id": "J9", "task_id": 0, "machine_id": 1, "duration": 57 }, { "job_id": "J9", "task_id": 1, "machine_id": 2, "duration": 97 }, { "job_id": "J9", "task_id": 2, "machine_id": 3, "duration": 64 }, { "job_id": "J9", "task_id": 3, "machine_id": 4, "duration": 45 }, { "job_id": "J9", "task_id": 4, "machine_id": 5, "duration": 44 }, { "job_id": "J10", "task_id": 0, "machine_id": 1, "duration": 29 }, { "job_id": "J10", "task_id": 1, "machine_id": 2, "duration": 27 }, { "job_id": "J10", "task_id": 2, "machine_id": 3, "duration": 20 }, { "job_id": "J10", "task_id": 3, "machine_id": 4, "duration": 9 }, { "job_id": "J10", "task_id": 4, "machine_id": 5, "duration": 75 }, { "job_id": "J11", "task_id": 0, "machine_id": 1, "duration": 23 }, { "job_id": "J11", "task_id": 1, "machine_id": 2, "duration": 19 }, { "job_id": "J11", "task_id": 2, "machine_id": 3, "duration": 3 }, { "job_id": "J11", "task_id": 3, "machine_id": 4, "duration": 22 }, { "job_id": "J11", "task_id": 4, "machine_id": 5, "duration": 20 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 1, "duration": 1 }, { "task": 1, "start": 1, "machine": 2, "duration": 76 }, { "task": 2, "start": 77, "machine": 3, "duration": 58 }, { "task": 3, "start": 135, "machine": 4, "duration": 6 }, { "task": 4, "start": 141, "machine": 5, "duration": 43 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 315, "machine": 1, "duration": 91 }, { "task": 1, "start": 568, "machine": 2, "duration": 77 }, { "task": 2, "start": 645, "machine": 3, "duration": 6 }, { "task": 3, "start": 651, "machine": 4, "duration": 8 }, { "task": 4, "start": 664, "machine": 5, "duration": 15 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 406, "machine": 1, "duration": 63 }, { "task": 1, "start": 504, "machine": 2, "duration": 64 }, { "task": 2, "start": 568, "machine": 3, "duration": 3 }, { "task": 3, "start": 571, "machine": 4, "duration": 4 }, { "task": 4, "start": 604, "machine": 5, "duration": 16 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 53, "machine": 1, "duration": 25 }, { "task": 1, "start": 156, "machine": 2, "duration": 60 }, { "task": 2, "start": 221, "machine": 3, "duration": 45 }, { "task": 3, "start": 268, "machine": 4, "duration": 62 }, { "task": 4, "start": 334, "machine": 5, "duration": 94 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 124, "machine": 1, "duration": 63 }, { "task": 1, "start": 216, "machine": 2, "duration": 52 }, { "task": 2, "start": 268, "machine": 3, "duration": 75 }, { "task": 3, "start": 343, "machine": 4, "duration": 89 }, { "task": 4, "start": 432, "machine": 5, "duration": 92 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 115, "machine": 1, "duration": 9 }, { "task": 1, "start": 364, "machine": 2, "duration": 43 }, { "task": 2, "start": 412, "machine": 3, "duration": 58 }, { "task": 3, "start": 512, "machine": 4, "duration": 54 }, { "task": 4, "start": 567, "machine": 5, "duration": 37 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 187, "machine": 1, "duration": 71 }, { "task": 1, "start": 268, "machine": 2, "duration": 96 }, { "task": 2, "start": 364, "machine": 3, "duration": 48 }, { "task": 3, "start": 432, "machine": 4, "duration": 80 }, { "task": 4, "start": 524, "machine": 5, "duration": 43 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 78, "machine": 1, "duration": 37 }, { "task": 1, "start": 123, "machine": 2, "duration": 33 }, { "task": 2, "start": 158, "machine": 3, "duration": 63 }, { "task": 3, "start": 221, "machine": 4, "duration": 47 }, { "task": 4, "start": 279, "machine": 5, "duration": 55 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 258, "machine": 1, "duration": 57 }, { "task": 1, "start": 407, "machine": 2, "duration": 97 }, { "task": 2, "start": 504, "machine": 3, "duration": 64 }, { "task": 3, "start": 575, "machine": 4, "duration": 45 }, { "task": 4, "start": 620, "machine": 5, "duration": 44 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 24, "machine": 1, "duration": 29 }, { "task": 1, "start": 96, "machine": 2, "duration": 27 }, { "task": 2, "start": 138, "machine": 3, "duration": 20 }, { "task": 3, "start": 158, "machine": 4, "duration": 9 }, { "task": 4, "start": 184, "machine": 5, "duration": 75 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 1, "machine": 1, "duration": 23 }, { "task": 1, "start": 77, "machine": 2, "duration": 19 }, { "task": 2, "start": 135, "machine": 3, "duration": 3 }, { "task": 3, "start": 167, "machine": 4, "duration": 22 }, { "task": 4, "start": 259, "machine": 5, "duration": 20 } ] } ], "context_index": 18, "input_format": "markdown_table", "input_index_base": 1 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "There’s a small photo lab humming away: every print needs exposure, then developing, then drying, always in that order. The task is to pick the order the prints go into the line so no machine is asked to do two prints at once and every print goes through each step exactly once. The one schedule that’s better is the one where the clock reads the smallest number when the last print finally finishes drying. Concrete job durations and details follow below.\n\n# nr_prints=12\n# nr_stations=5\n# print_ids=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11, J12\n# station_ids=0, 1, 2, 3, 4\nprint_id,step_index,station_id,step_duration\nJ1,0,0,1\nJ1,1,1,89\nJ1,2,2,34\nJ1,3,3,52\nJ1,4,4,96\nJ2,0,0,14\nJ2,1,1,82\nJ2,2,2,73\nJ2,3,3,76\nJ2,4,4,9\nJ3,0,0,2\nJ3,1,1,17\nJ3,2,2,85\nJ3,3,3,8\nJ3,4,4,21\nJ4,0,0,78\nJ4,1,1,27\nJ4,2,2,46\nJ4,3,3,1\nJ4,4,4,2\nJ5,0,0,5\nJ5,1,1,21\nJ5,2,2,34\nJ5,3,3,82\nJ5,4,4,77\nJ6,0,0,61\nJ6,1,1,52\nJ6,2,2,24\nJ6,3,3,96\nJ6,4,4,8\nJ7,0,0,62\nJ7,1,1,73\nJ7,2,2,74\nJ7,3,3,84\nJ7,4,4,17\nJ8,0,0,69\nJ8,1,1,95\nJ8,2,2,39\nJ8,3,3,46\nJ8,4,4,92\nJ9,0,0,82\nJ9,1,1,95\nJ9,2,2,36\nJ9,3,3,20\nJ9,4,4,10\nJ10,0,0,36\nJ10,1,1,89\nJ10,2,2,9\nJ10,3,3,36\nJ10,4,4,19\nJ11,0,0,98\nJ11,1,1,66\nJ11,2,2,27\nJ11,3,3,49\nJ11,4,4,56\nJ12,0,0,99\nJ12,1,1,19\nJ12,2,2,86\nJ12,3,3,55\nJ12,4,4,63\n\nOh, and when you send the schedule back, a little JSON shape like this makes it easy for me to pick apart who goes where and when:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of that as a simple form: \"solution\" is the whole set of prints; each entry is one print (\"job\" — the print's id); \"tasks\" is the list of steps that print goes through; each step has which step number it is (\"task\"), when it starts (\"start\"), which station is doing it (\"machine\"), and how long it takes (\"duration\"). Super casual — just a sketch of the shape I expect, not the final plan.\n\nPlease use the exact identifiers from the instance input — don't rename them or invent new labels. Valid identifiers look like plain numbers such as \"1\" or \"23\", single capital letters like \"A\" or \"B\", or a capital letter followed by digits like \"A1\" or \"X7\".", "instance": { "nr_machines": 5, "nr_jobs": 12, "jobs": [ [ [ 0, 1 ], [ 1, 89 ], [ 2, 34 ], [ 3, 52 ], [ 4, 96 ] ], [ [ 0, 14 ], [ 1, 82 ], [ 2, 73 ], [ 3, 76 ], [ 4, 9 ] ], [ [ 0, 2 ], [ 1, 17 ], [ 2, 85 ], [ 3, 8 ], [ 4, 21 ] ], [ [ 0, 78 ], [ 1, 27 ], [ 2, 46 ], [ 3, 1 ], [ 4, 2 ] ], [ [ 0, 5 ], [ 1, 21 ], [ 2, 34 ], [ 3, 82 ], [ 4, 77 ] ], [ [ 0, 61 ], [ 1, 52 ], [ 2, 24 ], [ 3, 96 ], [ 4, 8 ] ], [ [ 0, 62 ], [ 1, 73 ], [ 2, 74 ], [ 3, 84 ], [ 4, 17 ] ], [ [ 0, 69 ], [ 1, 95 ], [ 2, 39 ], [ 3, 46 ], [ 4, 92 ] ], [ [ 0, 82 ], [ 1, 95 ], [ 2, 36 ], [ 3, 20 ], [ 4, 10 ] ], [ [ 0, 36 ], [ 1, 89 ], [ 2, 9 ], [ 3, 36 ], [ 4, 19 ] ], [ [ 0, 98 ], [ 1, 66 ], [ 2, 27 ], [ 3, 49 ], [ 4, 56 ] ], [ [ 0, 99 ], [ 1, 19 ], [ 2, 86 ], [ 3, 55 ], [ 4, 63 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 89 }, { "task": 2, "start": 90, "machine": 2, "duration": 34 }, { "task": 3, "start": 124, "machine": 3, "duration": 52 }, { "task": 4, "start": 176, "machine": 4, "duration": 96 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 299, "machine": 0, "duration": 14 }, { "task": 1, "start": 367, "machine": 1, "duration": 82 }, { "task": 2, "start": 542, "machine": 2, "duration": 73 }, { "task": 3, "start": 615, "machine": 3, "duration": 76 }, { "task": 4, "start": 691, "machine": 4, "duration": 9 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 75, "machine": 0, "duration": 2 }, { "task": 1, "start": 111, "machine": 1, "duration": 17 }, { "task": 2, "start": 158, "machine": 2, "duration": 85 }, { "task": 3, "start": 258, "machine": 3, "duration": 8 }, { "task": 4, "start": 441, "machine": 4, "duration": 21 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 529, "machine": 0, "duration": 78 }, { "task": 1, "start": 699, "machine": 1, "duration": 27 }, { "task": 2, "start": 726, "machine": 2, "duration": 46 }, { "task": 3, "start": 772, "machine": 3, "duration": 1 }, { "task": 4, "start": 773, "machine": 4, "duration": 2 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 70, "machine": 0, "duration": 5 }, { "task": 1, "start": 90, "machine": 1, "duration": 21 }, { "task": 2, "start": 124, "machine": 2, "duration": 34 }, { "task": 3, "start": 176, "machine": 3, "duration": 82 }, { "task": 4, "start": 272, "machine": 4, "duration": 77 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 139, "machine": 0, "duration": 61 }, { "task": 1, "start": 223, "machine": 1, "duration": 52 }, { "task": 2, "start": 282, "machine": 2, "duration": 24 }, { "task": 3, "start": 328, "machine": 3, "duration": 96 }, { "task": 4, "start": 462, "machine": 4, "duration": 8 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 77, "machine": 0, "duration": 62 }, { "task": 1, "start": 275, "machine": 1, "duration": 73 }, { "task": 2, "start": 348, "machine": 2, "duration": 74 }, { "task": 3, "start": 424, "machine": 3, "duration": 84 }, { "task": 4, "start": 508, "machine": 4, "duration": 17 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 69 }, { "task": 1, "start": 128, "machine": 1, "duration": 95 }, { "task": 2, "start": 243, "machine": 2, "duration": 39 }, { "task": 3, "start": 282, "machine": 3, "duration": 46 }, { "task": 4, "start": 349, "machine": 4, "duration": 92 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 411, "machine": 0, "duration": 82 }, { "task": 1, "start": 515, "machine": 1, "duration": 95 }, { "task": 2, "start": 615, "machine": 2, "duration": 36 }, { "task": 3, "start": 691, "machine": 3, "duration": 20 }, { "task": 4, "start": 711, "machine": 4, "duration": 10 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 493, "machine": 0, "duration": 36 }, { "task": 1, "start": 610, "machine": 1, "duration": 89 }, { "task": 2, "start": 699, "machine": 2, "duration": 9 }, { "task": 3, "start": 711, "machine": 3, "duration": 36 }, { "task": 4, "start": 747, "machine": 4, "duration": 19 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 313, "machine": 0, "duration": 98 }, { "task": 1, "start": 449, "machine": 1, "duration": 66 }, { "task": 2, "start": 515, "machine": 2, "duration": 27 }, { "task": 3, "start": 563, "machine": 3, "duration": 49 }, { "task": 4, "start": 626, "machine": 4, "duration": 56 } ] }, { "job": 11, "tasks": [ { "task": 0, "start": 200, "machine": 0, "duration": 99 }, { "task": 1, "start": 348, "machine": 1, "duration": 19 }, { "task": 2, "start": 422, "machine": 2, "duration": 86 }, { "task": 3, "start": 508, "machine": 3, "duration": 55 }, { "task": 4, "start": 563, "machine": 4, "duration": 63 } ] } ], "obj": 775.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 12, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11", "J12" ], "machines": [ 0, 1, 2, 3, 4 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 89 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 34 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 52 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 96 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 14 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 82 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 73 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 76 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 9 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 2 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 17 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 85 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 8 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 21 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 78 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 27 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 46 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 1 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 2 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 5 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 21 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 34 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 82 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 77 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 61 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 52 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 24 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 96 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 8 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 62 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 73 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 74 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 84 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 17 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 69 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 95 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 39 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 46 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 92 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 82 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 95 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 36 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 20 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 10 }, { "job_id": "J10", "task_id": 0, "machine_id": 0, "duration": 36 }, { "job_id": "J10", "task_id": 1, "machine_id": 1, "duration": 89 }, { "job_id": "J10", "task_id": 2, "machine_id": 2, "duration": 9 }, { "job_id": "J10", "task_id": 3, "machine_id": 3, "duration": 36 }, { "job_id": "J10", "task_id": 4, "machine_id": 4, "duration": 19 }, { "job_id": "J11", "task_id": 0, "machine_id": 0, "duration": 98 }, { "job_id": "J11", "task_id": 1, "machine_id": 1, "duration": 66 }, { "job_id": "J11", "task_id": 2, "machine_id": 2, "duration": 27 }, { "job_id": "J11", "task_id": 3, "machine_id": 3, "duration": 49 }, { "job_id": "J11", "task_id": 4, "machine_id": 4, "duration": 56 }, { "job_id": "J12", "task_id": 0, "machine_id": 0, "duration": 99 }, { "job_id": "J12", "task_id": 1, "machine_id": 1, "duration": 19 }, { "job_id": "J12", "task_id": 2, "machine_id": 2, "duration": 86 }, { "job_id": "J12", "task_id": 3, "machine_id": 3, "duration": 55 }, { "job_id": "J12", "task_id": 4, "machine_id": 4, "duration": 63 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 89 }, { "task": 2, "start": 90, "machine": 2, "duration": 34 }, { "task": 3, "start": 124, "machine": 3, "duration": 52 }, { "task": 4, "start": 176, "machine": 4, "duration": 96 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 299, "machine": 0, "duration": 14 }, { "task": 1, "start": 367, "machine": 1, "duration": 82 }, { "task": 2, "start": 542, "machine": 2, "duration": 73 }, { "task": 3, "start": 615, "machine": 3, "duration": 76 }, { "task": 4, "start": 691, "machine": 4, "duration": 9 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 75, "machine": 0, "duration": 2 }, { "task": 1, "start": 111, "machine": 1, "duration": 17 }, { "task": 2, "start": 158, "machine": 2, "duration": 85 }, { "task": 3, "start": 258, "machine": 3, "duration": 8 }, { "task": 4, "start": 441, "machine": 4, "duration": 21 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 529, "machine": 0, "duration": 78 }, { "task": 1, "start": 699, "machine": 1, "duration": 27 }, { "task": 2, "start": 726, "machine": 2, "duration": 46 }, { "task": 3, "start": 772, "machine": 3, "duration": 1 }, { "task": 4, "start": 773, "machine": 4, "duration": 2 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 70, "machine": 0, "duration": 5 }, { "task": 1, "start": 90, "machine": 1, "duration": 21 }, { "task": 2, "start": 124, "machine": 2, "duration": 34 }, { "task": 3, "start": 176, "machine": 3, "duration": 82 }, { "task": 4, "start": 272, "machine": 4, "duration": 77 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 139, "machine": 0, "duration": 61 }, { "task": 1, "start": 223, "machine": 1, "duration": 52 }, { "task": 2, "start": 282, "machine": 2, "duration": 24 }, { "task": 3, "start": 328, "machine": 3, "duration": 96 }, { "task": 4, "start": 462, "machine": 4, "duration": 8 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 77, "machine": 0, "duration": 62 }, { "task": 1, "start": 275, "machine": 1, "duration": 73 }, { "task": 2, "start": 348, "machine": 2, "duration": 74 }, { "task": 3, "start": 424, "machine": 3, "duration": 84 }, { "task": 4, "start": 508, "machine": 4, "duration": 17 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 69 }, { "task": 1, "start": 128, "machine": 1, "duration": 95 }, { "task": 2, "start": 243, "machine": 2, "duration": 39 }, { "task": 3, "start": 282, "machine": 3, "duration": 46 }, { "task": 4, "start": 349, "machine": 4, "duration": 92 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 411, "machine": 0, "duration": 82 }, { "task": 1, "start": 515, "machine": 1, "duration": 95 }, { "task": 2, "start": 615, "machine": 2, "duration": 36 }, { "task": 3, "start": 691, "machine": 3, "duration": 20 }, { "task": 4, "start": 711, "machine": 4, "duration": 10 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 493, "machine": 0, "duration": 36 }, { "task": 1, "start": 610, "machine": 1, "duration": 89 }, { "task": 2, "start": 699, "machine": 2, "duration": 9 }, { "task": 3, "start": 711, "machine": 3, "duration": 36 }, { "task": 4, "start": 747, "machine": 4, "duration": 19 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 313, "machine": 0, "duration": 98 }, { "task": 1, "start": 449, "machine": 1, "duration": 66 }, { "task": 2, "start": 515, "machine": 2, "duration": 27 }, { "task": 3, "start": 563, "machine": 3, "duration": 49 }, { "task": 4, "start": 626, "machine": 4, "duration": 56 } ] }, { "job": "J12", "tasks": [ { "task": 0, "start": 200, "machine": 0, "duration": 99 }, { "task": 1, "start": 348, "machine": 1, "duration": 19 }, { "task": 2, "start": 422, "machine": 2, "duration": 86 }, { "task": 3, "start": 508, "machine": 3, "duration": 55 }, { "task": 4, "start": 563, "machine": 4, "duration": 63 } ] } ], "context_index": 19, "input_format": "csv", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Someone on the line has to choreograph the flow: each circuit board must go through soldering, then testing, then packing, always in that order. The task is to pick the order the boards pass through the three stations so no station tries to do two boards at once and every board gets each step exactly once. The goal is to minimize how long it takes until the last board is finished — the completion time of the final board from the packer. The exact boards and their step lengths are detailed below.\n\nThere are 12 boards to schedule across 5 stations; the board IDs are J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11, J12 and the station sequence is 1, 2, 3, 4, 5.\n\n| board_id | step_index | station_id | processing_duration |\n|---|---|---|---|\n| J1 | 0 | 1 | 1 |\n| J1 | 1 | 2 | 3 |\n| J1 | 2 | 3 | 10 |\n| J1 | 3 | 4 | 97 |\n| J1 | 4 | 5 | 50 |\n| J2 | 0 | 1 | 36 |\n| J2 | 1 | 2 | 87 |\n| J2 | 2 | 3 | 41 |\n| J2 | 3 | 4 | 44 |\n| J2 | 4 | 5 | 2 |\n| J3 | 0 | 1 | 39 |\n| J3 | 1 | 2 | 68 |\n| J3 | 2 | 3 | 69 |\n| J3 | 3 | 4 | 11 |\n| J3 | 4 | 5 | 26 |\n| J4 | 0 | 1 | 31 |\n| J4 | 1 | 2 | 94 |\n| J4 | 2 | 3 | 47 |\n| J4 | 3 | 4 | 39 |\n| J4 | 4 | 5 | 8 |\n| J5 | 0 | 1 | 47 |\n| J5 | 1 | 2 | 89 |\n| J5 | 2 | 3 | 92 |\n| J5 | 3 | 4 | 75 |\n| J5 | 4 | 5 | 62 |\n| J6 | 0 | 1 | 15 |\n| J6 | 1 | 2 | 61 |\n| J6 | 2 | 3 | 89 |\n| J6 | 3 | 4 | 38 |\n| J6 | 4 | 5 | 77 |\n| J7 | 0 | 1 | 53 |\n| J7 | 1 | 2 | 49 |\n| J7 | 2 | 3 | 1 |\n| J7 | 3 | 4 | 89 |\n| J7 | 4 | 5 | 90 |\n| J8 | 0 | 1 | 3 |\n| J8 | 1 | 2 | 59 |\n| J8 | 2 | 3 | 14 |\n| J8 | 3 | 4 | 45 |\n| J8 | 4 | 5 | 29 |\n| J9 | 0 | 1 | 7 |\n| J9 | 1 | 2 | 93 |\n| J9 | 2 | 3 | 9 |\n| J9 | 3 | 4 | 95 |\n| J9 | 4 | 5 | 74 |\n| J10 | 0 | 1 | 43 |\n| J10 | 1 | 2 | 53 |\n| J10 | 2 | 3 | 96 |\n| J10 | 3 | 4 | 63 |\n| J10 | 4 | 5 | 62 |\n| J11 | 0 | 1 | 75 |\n| J11 | 1 | 2 | 15 |\n| J11 | 2 | 3 | 50 |\n| J11 | 3 | 4 | 77 |\n| J11 | 4 | 5 | 91 |\n| J12 | 0 | 1 | 16 |\n| J12 | 1 | 2 | 68 |\n| J12 | 2 | 3 | 75 |\n| J12 | 3 | 4 | 46 |\n| J12 | 4 | 5 | 69 |\n\nKeep the line moving to minimize the completion time of the final board.\n\nOh, and before you hand me the schedule, it'd be handy if you put it into this simple JSON shape so I can read it automatically:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThat's just a sketch of the shape I expect — \"solution\" is a list where each entry is one board (a job), and each board has a \"tasks\" list with each step's index, when it starts, which station/machine it uses, and how long that step takes. Treat it like a simple form to fill out, not the final timetable itself.\n\nPlease make sure all identifiers in your actual schedule match the instance input exactly — no renaming and no new labels. Valid identifiers look like plain numbers such as \"1\" or \"23\", single capital letters like \"A\" or \"B\", or a capital letter followed by digits like \"A1\" or \"X7\".", "instance": { "nr_machines": 5, "nr_jobs": 12, "jobs": [ [ [ 0, 1 ], [ 1, 3 ], [ 2, 10 ], [ 3, 97 ], [ 4, 50 ] ], [ [ 0, 36 ], [ 1, 87 ], [ 2, 41 ], [ 3, 44 ], [ 4, 2 ] ], [ [ 0, 39 ], [ 1, 68 ], [ 2, 69 ], [ 3, 11 ], [ 4, 26 ] ], [ [ 0, 31 ], [ 1, 94 ], [ 2, 47 ], [ 3, 39 ], [ 4, 8 ] ], [ [ 0, 47 ], [ 1, 89 ], [ 2, 92 ], [ 3, 75 ], [ 4, 62 ] ], [ [ 0, 15 ], [ 1, 61 ], [ 2, 89 ], [ 3, 38 ], [ 4, 77 ] ], [ [ 0, 53 ], [ 1, 49 ], [ 2, 1 ], [ 3, 89 ], [ 4, 90 ] ], [ [ 0, 3 ], [ 1, 59 ], [ 2, 14 ], [ 3, 45 ], [ 4, 29 ] ], [ [ 0, 7 ], [ 1, 93 ], [ 2, 9 ], [ 3, 95 ], [ 4, 74 ] ], [ [ 0, 43 ], [ 1, 53 ], [ 2, 96 ], [ 3, 63 ], [ 4, 62 ] ], [ [ 0, 75 ], [ 1, 15 ], [ 2, 50 ], [ 3, 77 ], [ 4, 91 ] ], [ [ 0, 16 ], [ 1, 68 ], [ 2, 75 ], [ 3, 46 ], [ 4, 69 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 3 }, { "task": 2, "start": 4, "machine": 2, "duration": 10 }, { "task": 3, "start": 14, "machine": 3, "duration": 97 }, { "task": 4, "start": 111, "machine": 4, "duration": 50 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 330, "machine": 0, "duration": 36 }, { "task": 1, "start": 653, "machine": 1, "duration": 87 }, { "task": 2, "start": 740, "machine": 2, "duration": 41 }, { "task": 3, "start": 781, "machine": 3, "duration": 44 }, { "task": 4, "start": 825, "machine": 4, "duration": 2 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 85, "machine": 0, "duration": 39 }, { "task": 1, "start": 585, "machine": 1, "duration": 68 }, { "task": 2, "start": 653, "machine": 2, "duration": 69 }, { "task": 3, "start": 735, "machine": 3, "duration": 11 }, { "task": 4, "start": 788, "machine": 4, "duration": 26 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 299, "machine": 0, "duration": 31 }, { "task": 1, "start": 491, "machine": 1, "duration": 94 }, { "task": 2, "start": 590, "machine": 2, "duration": 47 }, { "task": 3, "start": 696, "machine": 3, "duration": 39 }, { "task": 4, "start": 814, "machine": 4, "duration": 8 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 177, "machine": 0, "duration": 47 }, { "task": 1, "start": 334, "machine": 1, "duration": 89 }, { "task": 2, "start": 423, "machine": 2, "duration": 92 }, { "task": 3, "start": 575, "machine": 3, "duration": 75 }, { "task": 4, "start": 657, "machine": 4, "duration": 62 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 47, "machine": 0, "duration": 15 }, { "task": 1, "start": 63, "machine": 1, "duration": 61 }, { "task": 2, "start": 124, "machine": 2, "duration": 89 }, { "task": 3, "start": 213, "machine": 3, "duration": 38 }, { "task": 4, "start": 251, "machine": 4, "duration": 77 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 124, "machine": 0, "duration": 53 }, { "task": 1, "start": 177, "machine": 1, "duration": 49 }, { "task": 2, "start": 226, "machine": 2, "duration": 1 }, { "task": 3, "start": 251, "machine": 3, "duration": 89 }, { "task": 4, "start": 340, "machine": 4, "duration": 90 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 3 }, { "task": 1, "start": 4, "machine": 1, "duration": 59 }, { "task": 2, "start": 63, "machine": 2, "duration": 14 }, { "task": 3, "start": 111, "machine": 3, "duration": 45 }, { "task": 4, "start": 161, "machine": 4, "duration": 29 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 62, "machine": 0, "duration": 7 }, { "task": 1, "start": 226, "machine": 1, "duration": 93 }, { "task": 2, "start": 323, "machine": 2, "duration": 9 }, { "task": 3, "start": 480, "machine": 3, "duration": 95 }, { "task": 4, "start": 583, "machine": 4, "duration": 74 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 4, "machine": 0, "duration": 43 }, { "task": 1, "start": 124, "machine": 1, "duration": 53 }, { "task": 2, "start": 227, "machine": 2, "duration": 96 }, { "task": 3, "start": 340, "machine": 3, "duration": 63 }, { "task": 4, "start": 430, "machine": 4, "duration": 62 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 224, "machine": 0, "duration": 75 }, { "task": 1, "start": 319, "machine": 1, "duration": 15 }, { "task": 2, "start": 334, "machine": 2, "duration": 50 }, { "task": 3, "start": 403, "machine": 3, "duration": 77 }, { "task": 4, "start": 492, "machine": 4, "duration": 91 } ] }, { "job": 11, "tasks": [ { "task": 0, "start": 69, "machine": 0, "duration": 16 }, { "task": 1, "start": 423, "machine": 1, "duration": 68 }, { "task": 2, "start": 515, "machine": 2, "duration": 75 }, { "task": 3, "start": 650, "machine": 3, "duration": 46 }, { "task": 4, "start": 719, "machine": 4, "duration": 69 } ] } ], "obj": 827.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 12, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11", "J12" ], "machines": [ 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 2, "duration": 3 }, { "job_id": "J1", "task_id": 2, "machine_id": 3, "duration": 10 }, { "job_id": "J1", "task_id": 3, "machine_id": 4, "duration": 97 }, { "job_id": "J1", "task_id": 4, "machine_id": 5, "duration": 50 }, { "job_id": "J2", "task_id": 0, "machine_id": 1, "duration": 36 }, { "job_id": "J2", "task_id": 1, "machine_id": 2, "duration": 87 }, { "job_id": "J2", "task_id": 2, "machine_id": 3, "duration": 41 }, { "job_id": "J2", "task_id": 3, "machine_id": 4, "duration": 44 }, { "job_id": "J2", "task_id": 4, "machine_id": 5, "duration": 2 }, { "job_id": "J3", "task_id": 0, "machine_id": 1, "duration": 39 }, { "job_id": "J3", "task_id": 1, "machine_id": 2, "duration": 68 }, { "job_id": "J3", "task_id": 2, "machine_id": 3, "duration": 69 }, { "job_id": "J3", "task_id": 3, "machine_id": 4, "duration": 11 }, { "job_id": "J3", "task_id": 4, "machine_id": 5, "duration": 26 }, { "job_id": "J4", "task_id": 0, "machine_id": 1, "duration": 31 }, { "job_id": "J4", "task_id": 1, "machine_id": 2, "duration": 94 }, { "job_id": "J4", "task_id": 2, "machine_id": 3, "duration": 47 }, { "job_id": "J4", "task_id": 3, "machine_id": 4, "duration": 39 }, { "job_id": "J4", "task_id": 4, "machine_id": 5, "duration": 8 }, { "job_id": "J5", "task_id": 0, "machine_id": 1, "duration": 47 }, { "job_id": "J5", "task_id": 1, "machine_id": 2, "duration": 89 }, { "job_id": "J5", "task_id": 2, "machine_id": 3, "duration": 92 }, { "job_id": "J5", "task_id": 3, "machine_id": 4, "duration": 75 }, { "job_id": "J5", "task_id": 4, "machine_id": 5, "duration": 62 }, { "job_id": "J6", "task_id": 0, "machine_id": 1, "duration": 15 }, { "job_id": "J6", "task_id": 1, "machine_id": 2, "duration": 61 }, { "job_id": "J6", "task_id": 2, "machine_id": 3, "duration": 89 }, { "job_id": "J6", "task_id": 3, "machine_id": 4, "duration": 38 }, { "job_id": "J6", "task_id": 4, "machine_id": 5, "duration": 77 }, { "job_id": "J7", "task_id": 0, "machine_id": 1, "duration": 53 }, { "job_id": "J7", "task_id": 1, "machine_id": 2, "duration": 49 }, { "job_id": "J7", "task_id": 2, "machine_id": 3, "duration": 1 }, { "job_id": "J7", "task_id": 3, "machine_id": 4, "duration": 89 }, { "job_id": "J7", "task_id": 4, "machine_id": 5, "duration": 90 }, { "job_id": "J8", "task_id": 0, "machine_id": 1, "duration": 3 }, { "job_id": "J8", "task_id": 1, "machine_id": 2, "duration": 59 }, { "job_id": "J8", "task_id": 2, "machine_id": 3, "duration": 14 }, { "job_id": "J8", "task_id": 3, "machine_id": 4, "duration": 45 }, { "job_id": "J8", "task_id": 4, "machine_id": 5, "duration": 29 }, { "job_id": "J9", "task_id": 0, "machine_id": 1, "duration": 7 }, { "job_id": "J9", "task_id": 1, "machine_id": 2, "duration": 93 }, { "job_id": "J9", "task_id": 2, "machine_id": 3, "duration": 9 }, { "job_id": "J9", "task_id": 3, "machine_id": 4, "duration": 95 }, { "job_id": "J9", "task_id": 4, "machine_id": 5, "duration": 74 }, { "job_id": "J10", "task_id": 0, "machine_id": 1, "duration": 43 }, { "job_id": "J10", "task_id": 1, "machine_id": 2, "duration": 53 }, { "job_id": "J10", "task_id": 2, "machine_id": 3, "duration": 96 }, { "job_id": "J10", "task_id": 3, "machine_id": 4, "duration": 63 }, { "job_id": "J10", "task_id": 4, "machine_id": 5, "duration": 62 }, { "job_id": "J11", "task_id": 0, "machine_id": 1, "duration": 75 }, { "job_id": "J11", "task_id": 1, "machine_id": 2, "duration": 15 }, { "job_id": "J11", "task_id": 2, "machine_id": 3, "duration": 50 }, { "job_id": "J11", "task_id": 3, "machine_id": 4, "duration": 77 }, { "job_id": "J11", "task_id": 4, "machine_id": 5, "duration": 91 }, { "job_id": "J12", "task_id": 0, "machine_id": 1, "duration": 16 }, { "job_id": "J12", "task_id": 1, "machine_id": 2, "duration": 68 }, { "job_id": "J12", "task_id": 2, "machine_id": 3, "duration": 75 }, { "job_id": "J12", "task_id": 3, "machine_id": 4, "duration": 46 }, { "job_id": "J12", "task_id": 4, "machine_id": 5, "duration": 69 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 1, "duration": 1 }, { "task": 1, "start": 1, "machine": 2, "duration": 3 }, { "task": 2, "start": 4, "machine": 3, "duration": 10 }, { "task": 3, "start": 14, "machine": 4, "duration": 97 }, { "task": 4, "start": 111, "machine": 5, "duration": 50 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 330, "machine": 1, "duration": 36 }, { "task": 1, "start": 653, "machine": 2, "duration": 87 }, { "task": 2, "start": 740, "machine": 3, "duration": 41 }, { "task": 3, "start": 781, "machine": 4, "duration": 44 }, { "task": 4, "start": 825, "machine": 5, "duration": 2 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 85, "machine": 1, "duration": 39 }, { "task": 1, "start": 585, "machine": 2, "duration": 68 }, { "task": 2, "start": 653, "machine": 3, "duration": 69 }, { "task": 3, "start": 735, "machine": 4, "duration": 11 }, { "task": 4, "start": 788, "machine": 5, "duration": 26 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 299, "machine": 1, "duration": 31 }, { "task": 1, "start": 491, "machine": 2, "duration": 94 }, { "task": 2, "start": 590, "machine": 3, "duration": 47 }, { "task": 3, "start": 696, "machine": 4, "duration": 39 }, { "task": 4, "start": 814, "machine": 5, "duration": 8 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 177, "machine": 1, "duration": 47 }, { "task": 1, "start": 334, "machine": 2, "duration": 89 }, { "task": 2, "start": 423, "machine": 3, "duration": 92 }, { "task": 3, "start": 575, "machine": 4, "duration": 75 }, { "task": 4, "start": 657, "machine": 5, "duration": 62 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 47, "machine": 1, "duration": 15 }, { "task": 1, "start": 63, "machine": 2, "duration": 61 }, { "task": 2, "start": 124, "machine": 3, "duration": 89 }, { "task": 3, "start": 213, "machine": 4, "duration": 38 }, { "task": 4, "start": 251, "machine": 5, "duration": 77 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 124, "machine": 1, "duration": 53 }, { "task": 1, "start": 177, "machine": 2, "duration": 49 }, { "task": 2, "start": 226, "machine": 3, "duration": 1 }, { "task": 3, "start": 251, "machine": 4, "duration": 89 }, { "task": 4, "start": 340, "machine": 5, "duration": 90 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 1, "machine": 1, "duration": 3 }, { "task": 1, "start": 4, "machine": 2, "duration": 59 }, { "task": 2, "start": 63, "machine": 3, "duration": 14 }, { "task": 3, "start": 111, "machine": 4, "duration": 45 }, { "task": 4, "start": 161, "machine": 5, "duration": 29 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 62, "machine": 1, "duration": 7 }, { "task": 1, "start": 226, "machine": 2, "duration": 93 }, { "task": 2, "start": 323, "machine": 3, "duration": 9 }, { "task": 3, "start": 480, "machine": 4, "duration": 95 }, { "task": 4, "start": 583, "machine": 5, "duration": 74 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 4, "machine": 1, "duration": 43 }, { "task": 1, "start": 124, "machine": 2, "duration": 53 }, { "task": 2, "start": 227, "machine": 3, "duration": 96 }, { "task": 3, "start": 340, "machine": 4, "duration": 63 }, { "task": 4, "start": 430, "machine": 5, "duration": 62 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 224, "machine": 1, "duration": 75 }, { "task": 1, "start": 319, "machine": 2, "duration": 15 }, { "task": 2, "start": 334, "machine": 3, "duration": 50 }, { "task": 3, "start": 403, "machine": 4, "duration": 77 }, { "task": 4, "start": 492, "machine": 5, "duration": 91 } ] }, { "job": "J12", "tasks": [ { "task": 0, "start": 69, "machine": 1, "duration": 16 }, { "task": 1, "start": 423, "machine": 2, "duration": 68 }, { "task": 2, "start": 515, "machine": 3, "duration": 75 }, { "task": 3, "start": 650, "machine": 4, "duration": 46 }, { "task": 4, "start": 719, "machine": 5, "duration": 69 } ] } ], "context_index": 20, "input_format": "markdown_table", "input_index_base": 1 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Many people come through the clinic needing the same three stops in the same order — check-in, sample, then diagnostics — and the receptionist spaces their slots so those stops don’t overlap on the same equipment. Every step has a set duration, and a device can’t handle two patients at once. What makes one spacing better than another is how early the entire group is done: the best plan is the one that makes the finish time of the last patient as early as possible. No steps can be skipped or repeated, and the detailed timings are shown below.\n\nBelow are the detailed timings for the 11 patients and the 6 stations, listed by patient ids J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11 and station ids 0, 1, 2, 3, 4, 5.\nPatient J1 has step 0 at station 0 lasting 1.\nPatient J1 has step 1 at station 1 lasting 16.\nPatient J1 has step 2 at station 2 lasting 84.\nPatient J1 has step 3 at station 3 lasting 44.\nPatient J1 has step 4 at station 4 lasting 4.\nPatient J1 has step 5 at station 5 lasting 57.\nPatient J2 has step 0 at station 0 lasting 91.\nPatient J2 has step 1 at station 1 lasting 9.\nPatient J2 has step 2 at station 2 lasting 12.\nPatient J2 has step 3 at station 3 lasting 95.\nPatient J2 has step 4 at station 4 lasting 77.\nPatient J2 has step 5 at station 5 lasting 21.\nPatient J3 has step 0 at station 0 lasting 52.\nPatient J3 has step 1 at station 1 lasting 15.\nPatient J3 has step 2 at station 2 lasting 32.\nPatient J3 has step 3 at station 3 lasting 84.\nPatient J3 has step 4 at station 4 lasting 61.\nPatient J3 has step 5 at station 5 lasting 48.\nPatient J4 has step 0 at station 0 lasting 77.\nPatient J4 has step 1 at station 1 lasting 15.\nPatient J4 has step 2 at station 2 lasting 88.\nPatient J4 has step 3 at station 3 lasting 58.\nPatient J4 has step 4 at station 4 lasting 52.\nPatient J4 has step 5 at station 5 lasting 69.\nPatient J5 has step 0 at station 0 lasting 46.\nPatient J5 has step 1 at station 1 lasting 67.\nPatient J5 has step 2 at station 2 lasting 70.\nPatient J5 has step 3 at station 3 lasting 54.\nPatient J5 has step 4 at station 4 lasting 79.\nPatient J5 has step 5 at station 5 lasting 47.\nPatient J6 has step 0 at station 0 lasting 44.\nPatient J6 has step 1 at station 1 lasting 26.\nPatient J6 has step 2 at station 2 lasting 27.\nPatient J6 has step 3 at station 3 lasting 94.\nPatient J6 has step 4 at station 4 lasting 64.\nPatient J6 has step 5 at station 5 lasting 35.\nPatient J7 has step 0 at station 0 lasting 23.\nPatient J7 has step 1 at station 1 lasting 89.\nPatient J7 has step 2 at station 2 lasting 44.\nPatient J7 has step 3 at station 3 lasting 65.\nPatient J7 has step 4 at station 4 lasting 32.\nPatient J7 has step 5 at station 5 lasting 91.\nPatient J8 has step 0 at station 0 lasting 80.\nPatient J8 has step 1 at station 1 lasting 71.\nPatient J8 has step 2 at station 2 lasting 40.\nPatient J8 has step 3 at station 3 lasting 51.\nPatient J8 has step 4 at station 4 lasting 16.\nPatient J8 has step 5 at station 5 lasting 85.\nPatient J9 has step 0 at station 0 lasting 90.\nPatient J9 has step 1 at station 1 lasting 6.\nPatient J9 has step 2 at station 2 lasting 52.\nPatient J9 has step 3 at station 3 lasting 62.\nPatient J9 has step 4 at station 4 lasting 74.\nPatient J9 has step 5 at station 5 lasting 5.\nPatient J10 has step 0 at station 0 lasting 28.\nPatient J10 has step 1 at station 1 lasting 33.\nPatient J10 has step 2 at station 2 lasting 17.\nPatient J10 has step 3 at station 3 lasting 65.\nPatient J10 has step 4 at station 4 lasting 37.\nPatient J10 has step 5 at station 5 lasting 75.\nPatient J11 has step 0 at station 0 lasting 9.\nPatient J11 has step 1 at station 1 lasting 28.\nPatient J11 has step 2 at station 2 lasting 2.\nPatient J11 has step 3 at station 3 lasting 78.\nPatient J11 has step 4 at station 4 lasting 18.\nPatient J11 has step 5 at station 5 lasting 63.\nThe receptionist will use these timings to space slots so no station handles two patients at once and the goal is to finish the last patient as early as possible.\n\nIf you'd like the schedule in a machine-friendly form, I usually return it in this little JSON shape:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of that like a simple form: \"solution\" is the whole plan; inside it there's one entry per patient (job). Each patient entry names the job and then lists their tasks in order. Each task line just says which step number it is, when it starts, which device it uses, and how long it takes. This is just the shape I need — a sketch, not the actual filled-in schedule.\n\nPlease make sure to use the exact identifiers from the instance input — don't rename or invent labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 6, "nr_jobs": 11, "jobs": [ [ [ 0, 1 ], [ 1, 16 ], [ 2, 84 ], [ 3, 44 ], [ 4, 4 ], [ 5, 57 ] ], [ [ 0, 91 ], [ 1, 9 ], [ 2, 12 ], [ 3, 95 ], [ 4, 77 ], [ 5, 21 ] ], [ [ 0, 52 ], [ 1, 15 ], [ 2, 32 ], [ 3, 84 ], [ 4, 61 ], [ 5, 48 ] ], [ [ 0, 77 ], [ 1, 15 ], [ 2, 88 ], [ 3, 58 ], [ 4, 52 ], [ 5, 69 ] ], [ [ 0, 46 ], [ 1, 67 ], [ 2, 70 ], [ 3, 54 ], [ 4, 79 ], [ 5, 47 ] ], [ [ 0, 44 ], [ 1, 26 ], [ 2, 27 ], [ 3, 94 ], [ 4, 64 ], [ 5, 35 ] ], [ [ 0, 23 ], [ 1, 89 ], [ 2, 44 ], [ 3, 65 ], [ 4, 32 ], [ 5, 91 ] ], [ [ 0, 80 ], [ 1, 71 ], [ 2, 40 ], [ 3, 51 ], [ 4, 16 ], [ 5, 85 ] ], [ [ 0, 90 ], [ 1, 6 ], [ 2, 52 ], [ 3, 62 ], [ 4, 74 ], [ 5, 5 ] ], [ [ 0, 28 ], [ 1, 33 ], [ 2, 17 ], [ 3, 65 ], [ 4, 37 ], [ 5, 75 ] ], [ [ 0, 9 ], [ 1, 28 ], [ 2, 2 ], [ 3, 78 ], [ 4, 18 ], [ 5, 63 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 60, "machine": 0, "duration": 1 }, { "task": 1, "start": 70, "machine": 1, "duration": 16 }, { "task": 2, "start": 87, "machine": 2, "duration": 84 }, { "task": 3, "start": 182, "machine": 3, "duration": 44 }, { "task": 4, "start": 226, "machine": 4, "duration": 4 }, { "task": 5, "start": 230, "machine": 5, "duration": 57 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 113, "machine": 0, "duration": 91 }, { "task": 1, "start": 204, "machine": 1, "duration": 9 }, { "task": 2, "start": 251, "machine": 2, "duration": 12 }, { "task": 3, "start": 291, "machine": 3, "duration": 95 }, { "task": 4, "start": 386, "machine": 4, "duration": 77 }, { "task": 5, "start": 463, "machine": 5, "duration": 21 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 61, "machine": 0, "duration": 52 }, { "task": 1, "start": 175, "machine": 1, "duration": 15 }, { "task": 2, "start": 219, "machine": 2, "duration": 32 }, { "task": 3, "start": 643, "machine": 3, "duration": 84 }, { "task": 4, "start": 727, "machine": 4, "duration": 61 }, { "task": 5, "start": 813, "machine": 5, "duration": 48 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 204, "machine": 0, "duration": 77 }, { "task": 1, "start": 281, "machine": 1, "duration": 15 }, { "task": 2, "start": 296, "machine": 2, "duration": 88 }, { "task": 3, "start": 386, "machine": 3, "duration": 58 }, { "task": 4, "start": 463, "machine": 4, "duration": 52 }, { "task": 5, "start": 515, "machine": 5, "duration": 69 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 325, "machine": 0, "duration": 46 }, { "task": 1, "start": 371, "machine": 1, "duration": 67 }, { "task": 2, "start": 438, "machine": 2, "duration": 70 }, { "task": 3, "start": 538, "machine": 3, "duration": 54 }, { "task": 4, "start": 602, "machine": 4, "duration": 79 }, { "task": 5, "start": 681, "machine": 5, "duration": 47 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 281, "machine": 0, "duration": 44 }, { "task": 1, "start": 325, "machine": 1, "duration": 26 }, { "task": 2, "start": 384, "machine": 2, "duration": 27 }, { "task": 3, "start": 444, "machine": 3, "duration": 94 }, { "task": 4, "start": 538, "machine": 4, "duration": 64 }, { "task": 5, "start": 602, "machine": 5, "duration": 35 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 37, "machine": 0, "duration": 23 }, { "task": 1, "start": 86, "machine": 1, "duration": 89 }, { "task": 2, "start": 175, "machine": 2, "duration": 44 }, { "task": 3, "start": 226, "machine": 3, "duration": 65 }, { "task": 4, "start": 291, "machine": 4, "duration": 32 }, { "task": 5, "start": 362, "machine": 5, "duration": 91 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 371, "machine": 0, "duration": 80 }, { "task": 1, "start": 451, "machine": 1, "duration": 71 }, { "task": 2, "start": 522, "machine": 2, "duration": 40 }, { "task": 3, "start": 592, "machine": 3, "duration": 51 }, { "task": 4, "start": 681, "machine": 4, "duration": 16 }, { "task": 5, "start": 728, "machine": 5, "duration": 85 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 451, "machine": 0, "duration": 90 }, { "task": 1, "start": 541, "machine": 1, "duration": 6 }, { "task": 2, "start": 562, "machine": 2, "duration": 52 }, { "task": 3, "start": 727, "machine": 3, "duration": 62 }, { "task": 4, "start": 789, "machine": 4, "duration": 74 }, { "task": 5, "start": 863, "machine": 5, "duration": 5 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 9, "machine": 0, "duration": 28 }, { "task": 1, "start": 37, "machine": 1, "duration": 33 }, { "task": 2, "start": 70, "machine": 2, "duration": 17 }, { "task": 3, "start": 117, "machine": 3, "duration": 65 }, { "task": 4, "start": 182, "machine": 4, "duration": 37 }, { "task": 5, "start": 287, "machine": 5, "duration": 75 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 9 }, { "task": 1, "start": 9, "machine": 1, "duration": 28 }, { "task": 2, "start": 37, "machine": 2, "duration": 2 }, { "task": 3, "start": 39, "machine": 3, "duration": 78 }, { "task": 4, "start": 117, "machine": 4, "duration": 18 }, { "task": 5, "start": 135, "machine": 5, "duration": 63 } ] } ], "obj": 868.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 11, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11" ], "machines": [ 0, 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 16 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 84 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 44 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 4 }, { "job_id": "J1", "task_id": 5, "machine_id": 5, "duration": 57 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 91 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 9 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 12 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 95 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 77 }, { "job_id": "J2", "task_id": 5, "machine_id": 5, "duration": 21 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 52 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 15 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 32 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 84 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 61 }, { "job_id": "J3", "task_id": 5, "machine_id": 5, "duration": 48 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 77 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 15 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 88 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 58 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 52 }, { "job_id": "J4", "task_id": 5, "machine_id": 5, "duration": 69 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 46 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 67 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 70 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 54 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 79 }, { "job_id": "J5", "task_id": 5, "machine_id": 5, "duration": 47 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 44 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 26 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 27 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 94 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 64 }, { "job_id": "J6", "task_id": 5, "machine_id": 5, "duration": 35 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 23 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 89 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 44 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 65 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 32 }, { "job_id": "J7", "task_id": 5, "machine_id": 5, "duration": 91 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 80 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 71 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 40 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 51 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 16 }, { "job_id": "J8", "task_id": 5, "machine_id": 5, "duration": 85 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 90 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 6 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 52 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 62 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 74 }, { "job_id": "J9", "task_id": 5, "machine_id": 5, "duration": 5 }, { "job_id": "J10", "task_id": 0, "machine_id": 0, "duration": 28 }, { "job_id": "J10", "task_id": 1, "machine_id": 1, "duration": 33 }, { "job_id": "J10", "task_id": 2, "machine_id": 2, "duration": 17 }, { "job_id": "J10", "task_id": 3, "machine_id": 3, "duration": 65 }, { "job_id": "J10", "task_id": 4, "machine_id": 4, "duration": 37 }, { "job_id": "J10", "task_id": 5, "machine_id": 5, "duration": 75 }, { "job_id": "J11", "task_id": 0, "machine_id": 0, "duration": 9 }, { "job_id": "J11", "task_id": 1, "machine_id": 1, "duration": 28 }, { "job_id": "J11", "task_id": 2, "machine_id": 2, "duration": 2 }, { "job_id": "J11", "task_id": 3, "machine_id": 3, "duration": 78 }, { "job_id": "J11", "task_id": 4, "machine_id": 4, "duration": 18 }, { "job_id": "J11", "task_id": 5, "machine_id": 5, "duration": 63 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 60, "machine": 0, "duration": 1 }, { "task": 1, "start": 70, "machine": 1, "duration": 16 }, { "task": 2, "start": 87, "machine": 2, "duration": 84 }, { "task": 3, "start": 182, "machine": 3, "duration": 44 }, { "task": 4, "start": 226, "machine": 4, "duration": 4 }, { "task": 5, "start": 230, "machine": 5, "duration": 57 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 113, "machine": 0, "duration": 91 }, { "task": 1, "start": 204, "machine": 1, "duration": 9 }, { "task": 2, "start": 251, "machine": 2, "duration": 12 }, { "task": 3, "start": 291, "machine": 3, "duration": 95 }, { "task": 4, "start": 386, "machine": 4, "duration": 77 }, { "task": 5, "start": 463, "machine": 5, "duration": 21 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 61, "machine": 0, "duration": 52 }, { "task": 1, "start": 175, "machine": 1, "duration": 15 }, { "task": 2, "start": 219, "machine": 2, "duration": 32 }, { "task": 3, "start": 643, "machine": 3, "duration": 84 }, { "task": 4, "start": 727, "machine": 4, "duration": 61 }, { "task": 5, "start": 813, "machine": 5, "duration": 48 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 204, "machine": 0, "duration": 77 }, { "task": 1, "start": 281, "machine": 1, "duration": 15 }, { "task": 2, "start": 296, "machine": 2, "duration": 88 }, { "task": 3, "start": 386, "machine": 3, "duration": 58 }, { "task": 4, "start": 463, "machine": 4, "duration": 52 }, { "task": 5, "start": 515, "machine": 5, "duration": 69 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 325, "machine": 0, "duration": 46 }, { "task": 1, "start": 371, "machine": 1, "duration": 67 }, { "task": 2, "start": 438, "machine": 2, "duration": 70 }, { "task": 3, "start": 538, "machine": 3, "duration": 54 }, { "task": 4, "start": 602, "machine": 4, "duration": 79 }, { "task": 5, "start": 681, "machine": 5, "duration": 47 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 281, "machine": 0, "duration": 44 }, { "task": 1, "start": 325, "machine": 1, "duration": 26 }, { "task": 2, "start": 384, "machine": 2, "duration": 27 }, { "task": 3, "start": 444, "machine": 3, "duration": 94 }, { "task": 4, "start": 538, "machine": 4, "duration": 64 }, { "task": 5, "start": 602, "machine": 5, "duration": 35 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 37, "machine": 0, "duration": 23 }, { "task": 1, "start": 86, "machine": 1, "duration": 89 }, { "task": 2, "start": 175, "machine": 2, "duration": 44 }, { "task": 3, "start": 226, "machine": 3, "duration": 65 }, { "task": 4, "start": 291, "machine": 4, "duration": 32 }, { "task": 5, "start": 362, "machine": 5, "duration": 91 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 371, "machine": 0, "duration": 80 }, { "task": 1, "start": 451, "machine": 1, "duration": 71 }, { "task": 2, "start": 522, "machine": 2, "duration": 40 }, { "task": 3, "start": 592, "machine": 3, "duration": 51 }, { "task": 4, "start": 681, "machine": 4, "duration": 16 }, { "task": 5, "start": 728, "machine": 5, "duration": 85 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 451, "machine": 0, "duration": 90 }, { "task": 1, "start": 541, "machine": 1, "duration": 6 }, { "task": 2, "start": 562, "machine": 2, "duration": 52 }, { "task": 3, "start": 727, "machine": 3, "duration": 62 }, { "task": 4, "start": 789, "machine": 4, "duration": 74 }, { "task": 5, "start": 863, "machine": 5, "duration": 5 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 9, "machine": 0, "duration": 28 }, { "task": 1, "start": 37, "machine": 1, "duration": 33 }, { "task": 2, "start": 70, "machine": 2, "duration": 17 }, { "task": 3, "start": 117, "machine": 3, "duration": 65 }, { "task": 4, "start": 182, "machine": 4, "duration": 37 }, { "task": 5, "start": 287, "machine": 5, "duration": 75 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 9 }, { "task": 1, "start": 9, "machine": 1, "duration": 28 }, { "task": 2, "start": 37, "machine": 2, "duration": 2 }, { "task": 3, "start": 39, "machine": 3, "duration": 78 }, { "task": 4, "start": 117, "machine": 4, "duration": 18 }, { "task": 5, "start": 135, "machine": 5, "duration": 63 } ] } ], "context_index": 21, "input_format": "nl", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "That afternoon the café had back-to-back orders and the only workflow is espresso first, then milk, then finishing — always in that order for each order. The job is to decide the order of operations so the espresso machine, steamer, and assembly table aren’t booked by overlapping drinks, and every order gets each step exactly once. The better the plan, the earlier the last drink is finished — the completion time of the final cup is how success is measured. The concrete order details and prep durations follow below.\n\n# orders_count=10\n# stations_count=5\n# orders_list=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10\n# stations_list=1, 2, 3, 4, 5\norder_id,step_index,station_id,step_duration\nJ1,0,1,1\nJ1,1,2,29\nJ1,2,3,60\nJ1,3,4,89\nJ1,4,5,56\nJ2,0,1,79\nJ2,1,2,96\nJ2,2,3,77\nJ2,3,4,79\nJ2,4,5,88\nJ3,0,1,16\nJ3,1,2,72\nJ3,2,3,35\nJ3,3,4,18\nJ3,4,5,37\nJ4,0,1,37\nJ4,1,2,28\nJ4,2,3,49\nJ4,3,4,16\nJ4,4,5,21\nJ5,0,1,30\nJ5,1,2,27\nJ5,2,3,11\nJ5,3,4,62\nJ5,4,5,31\nJ6,0,1,20\nJ6,1,2,79\nJ6,2,3,20\nJ6,3,4,21\nJ6,4,5,18\nJ7,0,1,35\nJ7,1,2,2\nJ7,2,3,53\nJ7,3,4,99\nJ7,4,5,37\nJ8,0,1,68\nJ8,1,2,85\nJ8,2,3,65\nJ8,3,4,44\nJ8,4,5,2\nJ9,0,1,56\nJ9,1,2,90\nJ9,2,3,53\nJ9,3,4,46\nJ9,4,5,5\nJ10,0,1,58\nJ10,1,2,79\nJ10,2,3,73\nJ10,3,4,18\nJ10,4,5,49\n\nOh, and one more thing — when you send the plan back, please keep it in a simple JSON shape so it's easy to read by humans and machines alike. Something like this is what I expect:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThis is just a sketch of the shape I want, not the actual schedule. In plain terms: each top-level \"job\" is one drink/order, \"tasks\" is the list of steps that drink needs (espresso, milk, assembly), \"task\" is which step in the sequence, \"start\" is when that step begins, \"machine\" names the station doing the step, and \"duration\" is how long that step takes.\n\nPlease use the exact identifiers that appear in the instance input — do not rename them or invent new labels. For example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 5, "nr_jobs": 10, "jobs": [ [ [ 0, 1 ], [ 1, 29 ], [ 2, 60 ], [ 3, 89 ], [ 4, 56 ] ], [ [ 0, 79 ], [ 1, 96 ], [ 2, 77 ], [ 3, 79 ], [ 4, 88 ] ], [ [ 0, 16 ], [ 1, 72 ], [ 2, 35 ], [ 3, 18 ], [ 4, 37 ] ], [ [ 0, 37 ], [ 1, 28 ], [ 2, 49 ], [ 3, 16 ], [ 4, 21 ] ], [ [ 0, 30 ], [ 1, 27 ], [ 2, 11 ], [ 3, 62 ], [ 4, 31 ] ], [ [ 0, 20 ], [ 1, 79 ], [ 2, 20 ], [ 3, 21 ], [ 4, 18 ] ], [ [ 0, 35 ], [ 1, 2 ], [ 2, 53 ], [ 3, 99 ], [ 4, 37 ] ], [ [ 0, 68 ], [ 1, 85 ], [ 2, 65 ], [ 3, 44 ], [ 4, 2 ] ], [ [ 0, 56 ], [ 1, 90 ], [ 2, 53 ], [ 3, 46 ], [ 4, 5 ] ], [ [ 0, 58 ], [ 1, 79 ], [ 2, 73 ], [ 3, 18 ], [ 4, 49 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 29 }, { "task": 2, "start": 30, "machine": 2, "duration": 60 }, { "task": 3, "start": 90, "machine": 3, "duration": 89 }, { "task": 4, "start": 179, "machine": 4, "duration": 56 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 110, "machine": 0, "duration": 79 }, { "task": 1, "start": 189, "machine": 1, "duration": 96 }, { "task": 2, "start": 285, "machine": 2, "duration": 77 }, { "task": 3, "start": 362, "machine": 3, "duration": 79 }, { "task": 4, "start": 441, "machine": 4, "duration": 88 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 16 }, { "task": 1, "start": 30, "machine": 1, "duration": 72 }, { "task": 2, "start": 102, "machine": 2, "duration": 35 }, { "task": 3, "start": 179, "machine": 3, "duration": 18 }, { "task": 4, "start": 235, "machine": 4, "duration": 37 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 343, "machine": 0, "duration": 37 }, { "task": 1, "start": 397, "machine": 1, "duration": 28 }, { "task": 2, "start": 446, "machine": 2, "duration": 49 }, { "task": 3, "start": 508, "machine": 3, "duration": 16 }, { "task": 4, "start": 529, "machine": 4, "duration": 21 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 257, "machine": 0, "duration": 30 }, { "task": 1, "start": 370, "machine": 1, "duration": 27 }, { "task": 2, "start": 435, "machine": 2, "duration": 11 }, { "task": 3, "start": 446, "machine": 3, "duration": 62 }, { "task": 4, "start": 550, "machine": 4, "duration": 31 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 380, "machine": 0, "duration": 20 }, { "task": 1, "start": 515, "machine": 1, "duration": 79 }, { "task": 2, "start": 594, "machine": 2, "duration": 20 }, { "task": 3, "start": 614, "machine": 3, "duration": 21 }, { "task": 4, "start": 635, "machine": 4, "duration": 18 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 17, "machine": 0, "duration": 35 }, { "task": 1, "start": 102, "machine": 1, "duration": 2 }, { "task": 2, "start": 137, "machine": 2, "duration": 53 }, { "task": 3, "start": 197, "machine": 3, "duration": 99 }, { "task": 4, "start": 352, "machine": 4, "duration": 37 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 189, "machine": 0, "duration": 68 }, { "task": 1, "start": 285, "machine": 1, "duration": 85 }, { "task": 2, "start": 370, "machine": 2, "duration": 65 }, { "task": 3, "start": 524, "machine": 3, "duration": 44 }, { "task": 4, "start": 581, "machine": 4, "duration": 2 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 287, "machine": 0, "duration": 56 }, { "task": 1, "start": 425, "machine": 1, "duration": 90 }, { "task": 2, "start": 515, "machine": 2, "duration": 53 }, { "task": 3, "start": 568, "machine": 3, "duration": 46 }, { "task": 4, "start": 614, "machine": 4, "duration": 5 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 52, "machine": 0, "duration": 58 }, { "task": 1, "start": 110, "machine": 1, "duration": 79 }, { "task": 2, "start": 190, "machine": 2, "duration": 73 }, { "task": 3, "start": 296, "machine": 3, "duration": 18 }, { "task": 4, "start": 389, "machine": 4, "duration": 49 } ] } ], "obj": 653.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 10, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10" ], "machines": [ 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 2, "duration": 29 }, { "job_id": "J1", "task_id": 2, "machine_id": 3, "duration": 60 }, { "job_id": "J1", "task_id": 3, "machine_id": 4, "duration": 89 }, { "job_id": "J1", "task_id": 4, "machine_id": 5, "duration": 56 }, { "job_id": "J2", "task_id": 0, "machine_id": 1, "duration": 79 }, { "job_id": "J2", "task_id": 1, "machine_id": 2, "duration": 96 }, { "job_id": "J2", "task_id": 2, "machine_id": 3, "duration": 77 }, { "job_id": "J2", "task_id": 3, "machine_id": 4, "duration": 79 }, { "job_id": "J2", "task_id": 4, "machine_id": 5, "duration": 88 }, { "job_id": "J3", "task_id": 0, "machine_id": 1, "duration": 16 }, { "job_id": "J3", "task_id": 1, "machine_id": 2, "duration": 72 }, { "job_id": "J3", "task_id": 2, "machine_id": 3, "duration": 35 }, { "job_id": "J3", "task_id": 3, "machine_id": 4, "duration": 18 }, { "job_id": "J3", "task_id": 4, "machine_id": 5, "duration": 37 }, { "job_id": "J4", "task_id": 0, "machine_id": 1, "duration": 37 }, { "job_id": "J4", "task_id": 1, "machine_id": 2, "duration": 28 }, { "job_id": "J4", "task_id": 2, "machine_id": 3, "duration": 49 }, { "job_id": "J4", "task_id": 3, "machine_id": 4, "duration": 16 }, { "job_id": "J4", "task_id": 4, "machine_id": 5, "duration": 21 }, { "job_id": "J5", "task_id": 0, "machine_id": 1, "duration": 30 }, { "job_id": "J5", "task_id": 1, "machine_id": 2, "duration": 27 }, { "job_id": "J5", "task_id": 2, "machine_id": 3, "duration": 11 }, { "job_id": "J5", "task_id": 3, "machine_id": 4, "duration": 62 }, { "job_id": "J5", "task_id": 4, "machine_id": 5, "duration": 31 }, { "job_id": "J6", "task_id": 0, "machine_id": 1, "duration": 20 }, { "job_id": "J6", "task_id": 1, "machine_id": 2, "duration": 79 }, { "job_id": "J6", "task_id": 2, "machine_id": 3, "duration": 20 }, { "job_id": "J6", "task_id": 3, "machine_id": 4, "duration": 21 }, { "job_id": "J6", "task_id": 4, "machine_id": 5, "duration": 18 }, { "job_id": "J7", "task_id": 0, "machine_id": 1, "duration": 35 }, { "job_id": "J7", "task_id": 1, "machine_id": 2, "duration": 2 }, { "job_id": "J7", "task_id": 2, "machine_id": 3, "duration": 53 }, { "job_id": "J7", "task_id": 3, "machine_id": 4, "duration": 99 }, { "job_id": "J7", "task_id": 4, "machine_id": 5, "duration": 37 }, { "job_id": "J8", "task_id": 0, "machine_id": 1, "duration": 68 }, { "job_id": "J8", "task_id": 1, "machine_id": 2, "duration": 85 }, { "job_id": "J8", "task_id": 2, "machine_id": 3, "duration": 65 }, { "job_id": "J8", "task_id": 3, "machine_id": 4, "duration": 44 }, { "job_id": "J8", "task_id": 4, "machine_id": 5, "duration": 2 }, { "job_id": "J9", "task_id": 0, "machine_id": 1, "duration": 56 }, { "job_id": "J9", "task_id": 1, "machine_id": 2, "duration": 90 }, { "job_id": "J9", "task_id": 2, "machine_id": 3, "duration": 53 }, { "job_id": "J9", "task_id": 3, "machine_id": 4, "duration": 46 }, { "job_id": "J9", "task_id": 4, "machine_id": 5, "duration": 5 }, { "job_id": "J10", "task_id": 0, "machine_id": 1, "duration": 58 }, { "job_id": "J10", "task_id": 1, "machine_id": 2, "duration": 79 }, { "job_id": "J10", "task_id": 2, "machine_id": 3, "duration": 73 }, { "job_id": "J10", "task_id": 3, "machine_id": 4, "duration": 18 }, { "job_id": "J10", "task_id": 4, "machine_id": 5, "duration": 49 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 1, "duration": 1 }, { "task": 1, "start": 1, "machine": 2, "duration": 29 }, { "task": 2, "start": 30, "machine": 3, "duration": 60 }, { "task": 3, "start": 90, "machine": 4, "duration": 89 }, { "task": 4, "start": 179, "machine": 5, "duration": 56 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 110, "machine": 1, "duration": 79 }, { "task": 1, "start": 189, "machine": 2, "duration": 96 }, { "task": 2, "start": 285, "machine": 3, "duration": 77 }, { "task": 3, "start": 362, "machine": 4, "duration": 79 }, { "task": 4, "start": 441, "machine": 5, "duration": 88 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 1, "machine": 1, "duration": 16 }, { "task": 1, "start": 30, "machine": 2, "duration": 72 }, { "task": 2, "start": 102, "machine": 3, "duration": 35 }, { "task": 3, "start": 179, "machine": 4, "duration": 18 }, { "task": 4, "start": 235, "machine": 5, "duration": 37 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 343, "machine": 1, "duration": 37 }, { "task": 1, "start": 397, "machine": 2, "duration": 28 }, { "task": 2, "start": 446, "machine": 3, "duration": 49 }, { "task": 3, "start": 508, "machine": 4, "duration": 16 }, { "task": 4, "start": 529, "machine": 5, "duration": 21 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 257, "machine": 1, "duration": 30 }, { "task": 1, "start": 370, "machine": 2, "duration": 27 }, { "task": 2, "start": 435, "machine": 3, "duration": 11 }, { "task": 3, "start": 446, "machine": 4, "duration": 62 }, { "task": 4, "start": 550, "machine": 5, "duration": 31 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 380, "machine": 1, "duration": 20 }, { "task": 1, "start": 515, "machine": 2, "duration": 79 }, { "task": 2, "start": 594, "machine": 3, "duration": 20 }, { "task": 3, "start": 614, "machine": 4, "duration": 21 }, { "task": 4, "start": 635, "machine": 5, "duration": 18 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 17, "machine": 1, "duration": 35 }, { "task": 1, "start": 102, "machine": 2, "duration": 2 }, { "task": 2, "start": 137, "machine": 3, "duration": 53 }, { "task": 3, "start": 197, "machine": 4, "duration": 99 }, { "task": 4, "start": 352, "machine": 5, "duration": 37 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 189, "machine": 1, "duration": 68 }, { "task": 1, "start": 285, "machine": 2, "duration": 85 }, { "task": 2, "start": 370, "machine": 3, "duration": 65 }, { "task": 3, "start": 524, "machine": 4, "duration": 44 }, { "task": 4, "start": 581, "machine": 5, "duration": 2 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 287, "machine": 1, "duration": 56 }, { "task": 1, "start": 425, "machine": 2, "duration": 90 }, { "task": 2, "start": 515, "machine": 3, "duration": 53 }, { "task": 3, "start": 568, "machine": 4, "duration": 46 }, { "task": 4, "start": 614, "machine": 5, "duration": 5 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 52, "machine": 1, "duration": 58 }, { "task": 1, "start": 110, "machine": 2, "duration": 79 }, { "task": 2, "start": 190, "machine": 3, "duration": 73 }, { "task": 3, "start": 296, "machine": 4, "duration": 18 }, { "task": 4, "start": 389, "machine": 5, "duration": 49 } ] } ], "context_index": 22, "input_format": "csv", "input_index_base": 1 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "We try to keep the shop humming by sending each job through layout, printing, and binding in sequence, never changing the order of those stages. The job is to pick an order for the runs so no press or binder is asked to do two things at the same time and nothing is skipped or repeated. A good order is simply the one that makes the last job finish as early as possible — the finishing time of that last piece tells us how well we did. The concrete job details and timings are listed below.\n\n# total_jobs=9\n# total_machines=5\n# job_ids=J1, J2, J3, J4, J5, J6, J7, J8, J9\n# machine_ids=1, 2, 3, 4, 5\njob_run_id,stage_index,required_machine_id,processing_time\nJ1,0,1,1\nJ1,1,2,42\nJ1,2,3,36\nJ1,3,4,36\nJ1,4,5,10\nJ2,0,1,2\nJ2,1,2,2\nJ2,2,3,45\nJ2,3,4,48\nJ2,4,5,82\nJ3,0,1,54\nJ3,1,2,25\nJ3,2,3,18\nJ3,3,4,22\nJ3,4,5,42\nJ4,0,1,90\nJ4,1,2,95\nJ4,2,3,49\nJ4,3,4,54\nJ4,4,5,28\nJ5,0,1,72\nJ5,1,2,95\nJ5,2,3,69\nJ5,3,4,55\nJ5,4,5,16\nJ6,0,1,72\nJ6,1,2,88\nJ6,2,3,85\nJ6,3,4,62\nJ6,4,5,87\nJ7,0,1,26\nJ7,1,2,78\nJ7,2,3,79\nJ7,3,4,4\nJ7,4,5,11\nJ8,0,1,1\nJ8,1,2,49\nJ8,2,3,41\nJ8,3,4,43\nJ8,4,5,38\nJ9,0,1,81\nJ9,1,2,88\nJ9,2,3,25\nJ9,3,4,22\nJ9,4,5,70\n\nAnd when you're ready to hand back the actual schedule, a little heads-up: I like to see it in this simple JSON shape so it's easy to check by eye or by a quick script.\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of that as a short form: \"solution\" is the list of jobs, each job gets its id and a list of its tasks. For each task we want the task index (which step it is), the start time when that step begins, the machine it's done on, and how long it takes. Easy to read, like filling out a little schedule card.\n\nThis is just a sketch of the shape I expect — please return the actual schedule following this layout.\n\nPlease also make sure to use the exact identifiers shown in the instance input — don't rename them or invent new labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 5, "nr_jobs": 9, "jobs": [ [ [ 0, 1 ], [ 1, 42 ], [ 2, 36 ], [ 3, 36 ], [ 4, 10 ] ], [ [ 0, 2 ], [ 1, 2 ], [ 2, 45 ], [ 3, 48 ], [ 4, 82 ] ], [ [ 0, 54 ], [ 1, 25 ], [ 2, 18 ], [ 3, 22 ], [ 4, 42 ] ], [ [ 0, 90 ], [ 1, 95 ], [ 2, 49 ], [ 3, 54 ], [ 4, 28 ] ], [ [ 0, 72 ], [ 1, 95 ], [ 2, 69 ], [ 3, 55 ], [ 4, 16 ] ], [ [ 0, 72 ], [ 1, 88 ], [ 2, 85 ], [ 3, 62 ], [ 4, 87 ] ], [ [ 0, 26 ], [ 1, 78 ], [ 2, 79 ], [ 3, 4 ], [ 4, 11 ] ], [ [ 0, 1 ], [ 1, 49 ], [ 2, 41 ], [ 3, 43 ], [ 4, 38 ] ], [ [ 0, 81 ], [ 1, 88 ], [ 2, 25 ], [ 3, 22 ], [ 4, 70 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 325, "machine": 0, "duration": 1 }, { "task": 1, "start": 521, "machine": 1, "duration": 42 }, { "task": 2, "start": 563, "machine": 2, "duration": 36 }, { "task": 3, "start": 599, "machine": 3, "duration": 36 }, { "task": 4, "start": 638, "machine": 4, "duration": 10 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 27, "machine": 0, "duration": 2 }, { "task": 1, "start": 50, "machine": 1, "duration": 2 }, { "task": 2, "start": 91, "machine": 2, "duration": 45 }, { "task": 3, "start": 136, "machine": 3, "duration": 48 }, { "task": 4, "start": 184, "machine": 4, "duration": 82 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 101, "machine": 0, "duration": 54 }, { "task": 1, "start": 218, "machine": 1, "duration": 25 }, { "task": 2, "start": 303, "machine": 2, "duration": 18 }, { "task": 3, "start": 365, "machine": 3, "duration": 22 }, { "task": 4, "start": 478, "machine": 4, "duration": 42 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 235, "machine": 0, "duration": 90 }, { "task": 1, "start": 338, "machine": 1, "duration": 95 }, { "task": 2, "start": 433, "machine": 2, "duration": 49 }, { "task": 3, "start": 482, "machine": 3, "duration": 54 }, { "task": 4, "start": 536, "machine": 4, "duration": 28 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 163, "machine": 0, "duration": 72 }, { "task": 1, "start": 243, "machine": 1, "duration": 95 }, { "task": 2, "start": 338, "machine": 2, "duration": 69 }, { "task": 3, "start": 407, "machine": 3, "duration": 55 }, { "task": 4, "start": 462, "machine": 4, "duration": 16 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 29, "machine": 0, "duration": 72 }, { "task": 1, "start": 130, "machine": 1, "duration": 88 }, { "task": 2, "start": 218, "machine": 2, "duration": 85 }, { "task": 3, "start": 303, "machine": 3, "duration": 62 }, { "task": 4, "start": 365, "machine": 4, "duration": 87 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 26 }, { "task": 1, "start": 52, "machine": 1, "duration": 78 }, { "task": 2, "start": 136, "machine": 2, "duration": 79 }, { "task": 3, "start": 215, "machine": 3, "duration": 4 }, { "task": 4, "start": 266, "machine": 4, "duration": 11 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 49 }, { "task": 2, "start": 50, "machine": 2, "duration": 41 }, { "task": 3, "start": 91, "machine": 3, "duration": 43 }, { "task": 4, "start": 134, "machine": 4, "duration": 38 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 326, "machine": 0, "duration": 81 }, { "task": 1, "start": 433, "machine": 1, "duration": 88 }, { "task": 2, "start": 521, "machine": 2, "duration": 25 }, { "task": 3, "start": 546, "machine": 3, "duration": 22 }, { "task": 4, "start": 568, "machine": 4, "duration": 70 } ] } ], "obj": 648.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 9, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9" ], "machines": [ 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 2, "duration": 42 }, { "job_id": "J1", "task_id": 2, "machine_id": 3, "duration": 36 }, { "job_id": "J1", "task_id": 3, "machine_id": 4, "duration": 36 }, { "job_id": "J1", "task_id": 4, "machine_id": 5, "duration": 10 }, { "job_id": "J2", "task_id": 0, "machine_id": 1, "duration": 2 }, { "job_id": "J2", "task_id": 1, "machine_id": 2, "duration": 2 }, { "job_id": "J2", "task_id": 2, "machine_id": 3, "duration": 45 }, { "job_id": "J2", "task_id": 3, "machine_id": 4, "duration": 48 }, { "job_id": "J2", "task_id": 4, "machine_id": 5, "duration": 82 }, { "job_id": "J3", "task_id": 0, "machine_id": 1, "duration": 54 }, { "job_id": "J3", "task_id": 1, "machine_id": 2, "duration": 25 }, { "job_id": "J3", "task_id": 2, "machine_id": 3, "duration": 18 }, { "job_id": "J3", "task_id": 3, "machine_id": 4, "duration": 22 }, { "job_id": "J3", "task_id": 4, "machine_id": 5, "duration": 42 }, { "job_id": "J4", "task_id": 0, "machine_id": 1, "duration": 90 }, { "job_id": "J4", "task_id": 1, "machine_id": 2, "duration": 95 }, { "job_id": "J4", "task_id": 2, "machine_id": 3, "duration": 49 }, { "job_id": "J4", "task_id": 3, "machine_id": 4, "duration": 54 }, { "job_id": "J4", "task_id": 4, "machine_id": 5, "duration": 28 }, { "job_id": "J5", "task_id": 0, "machine_id": 1, "duration": 72 }, { "job_id": "J5", "task_id": 1, "machine_id": 2, "duration": 95 }, { "job_id": "J5", "task_id": 2, "machine_id": 3, "duration": 69 }, { "job_id": "J5", "task_id": 3, "machine_id": 4, "duration": 55 }, { "job_id": "J5", "task_id": 4, "machine_id": 5, "duration": 16 }, { "job_id": "J6", "task_id": 0, "machine_id": 1, "duration": 72 }, { "job_id": "J6", "task_id": 1, "machine_id": 2, "duration": 88 }, { "job_id": "J6", "task_id": 2, "machine_id": 3, "duration": 85 }, { "job_id": "J6", "task_id": 3, "machine_id": 4, "duration": 62 }, { "job_id": "J6", "task_id": 4, "machine_id": 5, "duration": 87 }, { "job_id": "J7", "task_id": 0, "machine_id": 1, "duration": 26 }, { "job_id": "J7", "task_id": 1, "machine_id": 2, "duration": 78 }, { "job_id": "J7", "task_id": 2, "machine_id": 3, "duration": 79 }, { "job_id": "J7", "task_id": 3, "machine_id": 4, "duration": 4 }, { "job_id": "J7", "task_id": 4, "machine_id": 5, "duration": 11 }, { "job_id": "J8", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J8", "task_id": 1, "machine_id": 2, "duration": 49 }, { "job_id": "J8", "task_id": 2, "machine_id": 3, "duration": 41 }, { "job_id": "J8", "task_id": 3, "machine_id": 4, "duration": 43 }, { "job_id": "J8", "task_id": 4, "machine_id": 5, "duration": 38 }, { "job_id": "J9", "task_id": 0, "machine_id": 1, "duration": 81 }, { "job_id": "J9", "task_id": 1, "machine_id": 2, "duration": 88 }, { "job_id": "J9", "task_id": 2, "machine_id": 3, "duration": 25 }, { "job_id": "J9", "task_id": 3, "machine_id": 4, "duration": 22 }, { "job_id": "J9", "task_id": 4, "machine_id": 5, "duration": 70 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 325, "machine": 1, "duration": 1 }, { "task": 1, "start": 521, "machine": 2, "duration": 42 }, { "task": 2, "start": 563, "machine": 3, "duration": 36 }, { "task": 3, "start": 599, "machine": 4, "duration": 36 }, { "task": 4, "start": 638, "machine": 5, "duration": 10 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 27, "machine": 1, "duration": 2 }, { "task": 1, "start": 50, "machine": 2, "duration": 2 }, { "task": 2, "start": 91, "machine": 3, "duration": 45 }, { "task": 3, "start": 136, "machine": 4, "duration": 48 }, { "task": 4, "start": 184, "machine": 5, "duration": 82 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 101, "machine": 1, "duration": 54 }, { "task": 1, "start": 218, "machine": 2, "duration": 25 }, { "task": 2, "start": 303, "machine": 3, "duration": 18 }, { "task": 3, "start": 365, "machine": 4, "duration": 22 }, { "task": 4, "start": 478, "machine": 5, "duration": 42 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 235, "machine": 1, "duration": 90 }, { "task": 1, "start": 338, "machine": 2, "duration": 95 }, { "task": 2, "start": 433, "machine": 3, "duration": 49 }, { "task": 3, "start": 482, "machine": 4, "duration": 54 }, { "task": 4, "start": 536, "machine": 5, "duration": 28 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 163, "machine": 1, "duration": 72 }, { "task": 1, "start": 243, "machine": 2, "duration": 95 }, { "task": 2, "start": 338, "machine": 3, "duration": 69 }, { "task": 3, "start": 407, "machine": 4, "duration": 55 }, { "task": 4, "start": 462, "machine": 5, "duration": 16 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 29, "machine": 1, "duration": 72 }, { "task": 1, "start": 130, "machine": 2, "duration": 88 }, { "task": 2, "start": 218, "machine": 3, "duration": 85 }, { "task": 3, "start": 303, "machine": 4, "duration": 62 }, { "task": 4, "start": 365, "machine": 5, "duration": 87 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 1, "machine": 1, "duration": 26 }, { "task": 1, "start": 52, "machine": 2, "duration": 78 }, { "task": 2, "start": 136, "machine": 3, "duration": 79 }, { "task": 3, "start": 215, "machine": 4, "duration": 4 }, { "task": 4, "start": 266, "machine": 5, "duration": 11 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 0, "machine": 1, "duration": 1 }, { "task": 1, "start": 1, "machine": 2, "duration": 49 }, { "task": 2, "start": 50, "machine": 3, "duration": 41 }, { "task": 3, "start": 91, "machine": 4, "duration": 43 }, { "task": 4, "start": 134, "machine": 5, "duration": 38 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 326, "machine": 1, "duration": 81 }, { "task": 1, "start": 433, "machine": 2, "duration": 88 }, { "task": 2, "start": 521, "machine": 3, "duration": 25 }, { "task": 3, "start": 546, "machine": 4, "duration": 22 }, { "task": 4, "start": 568, "machine": 5, "duration": 70 } ] } ], "context_index": 23, "input_format": "csv", "input_index_base": 1 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "We manage a studio schedule where every vessel must be shaped, left to dry, and then fired, always following the same three-stage sequence. The decision is how to order the pieces on the bench and in the kiln so no bench or kiln session overlaps for different pots, and every step happens exactly once per piece. What counts as a better choice is the one that gets the final piece done sooner — measured by the time the last pot is finished. The specific batch sizes and timings are given below.\n\n# num_vessels=11\n# num_stations=5\n# vessel_list=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11\n# station_list=A, B, C, D, E\nvessel_id,stage_index,station_id,stage_duration\nJ1,0,A,1\nJ1,1,B,55\nJ1,2,C,12\nJ1,3,D,81\nJ1,4,E,63\nJ2,0,A,24\nJ2,1,B,6\nJ2,2,C,13\nJ2,3,D,16\nJ2,4,E,75\nJ3,0,A,92\nJ3,1,B,76\nJ3,2,C,2\nJ3,3,D,25\nJ3,4,E,48\nJ4,0,A,43\nJ4,1,B,62\nJ4,2,C,50\nJ4,3,D,92\nJ4,4,E,35\nJ5,0,A,14\nJ5,1,B,64\nJ5,2,C,29\nJ5,3,D,48\nJ5,4,E,1\nJ6,0,A,25\nJ6,1,B,97\nJ6,2,C,50\nJ6,3,D,4\nJ6,4,E,58\nJ7,0,A,17\nJ7,1,B,54\nJ7,2,C,6\nJ7,3,D,9\nJ7,4,E,84\nJ8,0,A,34\nJ8,1,B,13\nJ8,2,C,17\nJ8,3,D,42\nJ8,4,E,74\nJ9,0,A,6\nJ9,1,B,86\nJ9,2,C,97\nJ9,3,D,96\nJ9,4,E,35\nJ10,0,A,72\nJ10,1,B,6\nJ10,2,C,51\nJ10,3,D,72\nJ10,4,E,37\nJ11,0,A,82\nJ11,1,B,6\nJ11,2,C,46\nJ11,3,D,87\nJ11,4,E,35\n\nAlso, when you return the schedule, please use this JSON layout so everything lines up nicely:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nQuick note on what the fields mean in plain terms: \"solution\" is the list of all pieces; each entry is one piece (\"job\") and its sequence of steps (\"tasks\"). Each task shows which step it is (\"task\"), when that step starts (\"start\"), which workspace or oven it uses (\"machine\"), and how long that step takes (\"duration\"). This JSON is just the shape I need — not the actual schedule yet.\n\nPlease make sure to use the exact identifiers from the instance input, with no renaming or extra labels. \n- for example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”. \"", "instance": { "nr_machines": 5, "nr_jobs": 11, "jobs": [ [ [ 0, 1 ], [ 1, 55 ], [ 2, 12 ], [ 3, 81 ], [ 4, 63 ] ], [ [ 0, 24 ], [ 1, 6 ], [ 2, 13 ], [ 3, 16 ], [ 4, 75 ] ], [ [ 0, 92 ], [ 1, 76 ], [ 2, 2 ], [ 3, 25 ], [ 4, 48 ] ], [ [ 0, 43 ], [ 1, 62 ], [ 2, 50 ], [ 3, 92 ], [ 4, 35 ] ], [ [ 0, 14 ], [ 1, 64 ], [ 2, 29 ], [ 3, 48 ], [ 4, 1 ] ], [ [ 0, 25 ], [ 1, 97 ], [ 2, 50 ], [ 3, 4 ], [ 4, 58 ] ], [ [ 0, 17 ], [ 1, 54 ], [ 2, 6 ], [ 3, 9 ], [ 4, 84 ] ], [ [ 0, 34 ], [ 1, 13 ], [ 2, 17 ], [ 3, 42 ], [ 4, 74 ] ], [ [ 0, 6 ], [ 1, 86 ], [ 2, 97 ], [ 3, 96 ], [ 4, 35 ] ], [ [ 0, 72 ], [ 1, 6 ], [ 2, 51 ], [ 3, 72 ], [ 4, 37 ] ], [ [ 0, 82 ], [ 1, 6 ], [ 2, 46 ], [ 3, 87 ], [ 4, 35 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 55 }, { "task": 2, "start": 75, "machine": 2, "duration": 12 }, { "task": 3, "start": 91, "machine": 3, "duration": 81 }, { "task": 4, "start": 172, "machine": 4, "duration": 63 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 24 }, { "task": 1, "start": 56, "machine": 1, "duration": 6 }, { "task": 2, "start": 62, "machine": 2, "duration": 13 }, { "task": 3, "start": 75, "machine": 3, "duration": 16 }, { "task": 4, "start": 91, "machine": 4, "duration": 75 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 304, "machine": 0, "duration": 92 }, { "task": 1, "start": 474, "machine": 1, "duration": 76 }, { "task": 2, "start": 550, "machine": 2, "duration": 2 }, { "task": 3, "start": 574, "machine": 3, "duration": 25 }, { "task": 4, "start": 611, "machine": 4, "duration": 48 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 25, "machine": 0, "duration": 43 }, { "task": 1, "start": 68, "machine": 1, "duration": 62 }, { "task": 2, "start": 160, "machine": 2, "duration": 50 }, { "task": 3, "start": 214, "machine": 3, "duration": 92 }, { "task": 4, "start": 436, "machine": 4, "duration": 35 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 396, "machine": 0, "duration": 14 }, { "task": 1, "start": 410, "machine": 1, "duration": 64 }, { "task": 2, "start": 482, "machine": 2, "duration": 29 }, { "task": 3, "start": 599, "machine": 3, "duration": 48 }, { "task": 4, "start": 659, "machine": 4, "duration": 1 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 197, "machine": 0, "duration": 25 }, { "task": 1, "start": 310, "machine": 1, "duration": 97 }, { "task": 2, "start": 432, "machine": 2, "duration": 50 }, { "task": 3, "start": 483, "machine": 3, "duration": 4 }, { "task": 4, "start": 518, "machine": 4, "duration": 58 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 74, "machine": 0, "duration": 17 }, { "task": 1, "start": 143, "machine": 1, "duration": 54 }, { "task": 2, "start": 261, "machine": 2, "duration": 6 }, { "task": 3, "start": 306, "machine": 3, "duration": 9 }, { "task": 4, "start": 315, "machine": 4, "duration": 84 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 91, "machine": 0, "duration": 34 }, { "task": 1, "start": 130, "machine": 1, "duration": 13 }, { "task": 2, "start": 143, "machine": 2, "duration": 17 }, { "task": 3, "start": 172, "machine": 3, "duration": 42 }, { "task": 4, "start": 235, "machine": 4, "duration": 74 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 68, "machine": 0, "duration": 6 }, { "task": 1, "start": 203, "machine": 1, "duration": 86 }, { "task": 2, "start": 289, "machine": 2, "duration": 97 }, { "task": 3, "start": 387, "machine": 3, "duration": 96 }, { "task": 4, "start": 483, "machine": 4, "duration": 35 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 125, "machine": 0, "duration": 72 }, { "task": 1, "start": 197, "machine": 1, "duration": 6 }, { "task": 2, "start": 210, "machine": 2, "duration": 51 }, { "task": 3, "start": 315, "machine": 3, "duration": 72 }, { "task": 4, "start": 399, "machine": 4, "duration": 37 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 222, "machine": 0, "duration": 82 }, { "task": 1, "start": 304, "machine": 1, "duration": 6 }, { "task": 2, "start": 386, "machine": 2, "duration": 46 }, { "task": 3, "start": 487, "machine": 3, "duration": 87 }, { "task": 4, "start": 576, "machine": 4, "duration": 35 } ] } ], "obj": 660.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 11, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11" ], "machines": [ "A", "B", "C", "D", "E" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 55 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 12 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 81 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 63 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 24 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 6 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 13 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 16 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 75 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 92 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 76 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 2 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 25 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 48 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 43 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 62 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 50 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 92 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 35 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 14 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 64 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 29 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 48 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 1 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 25 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 97 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 50 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 4 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 58 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 17 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 54 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 6 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 9 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 84 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 34 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 13 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 17 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 42 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 74 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 6 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 86 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 97 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 96 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 35 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 72 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 6 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 51 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 72 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 37 }, { "job_id": "J11", "task_id": 0, "machine_id": "A", "duration": 82 }, { "job_id": "J11", "task_id": 1, "machine_id": "B", "duration": 6 }, { "job_id": "J11", "task_id": 2, "machine_id": "C", "duration": 46 }, { "job_id": "J11", "task_id": 3, "machine_id": "D", "duration": 87 }, { "job_id": "J11", "task_id": 4, "machine_id": "E", "duration": 35 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 1 }, { "task": 1, "start": 1, "machine": "B", "duration": 55 }, { "task": 2, "start": 75, "machine": "C", "duration": 12 }, { "task": 3, "start": 91, "machine": "D", "duration": 81 }, { "task": 4, "start": 172, "machine": "E", "duration": 63 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 1, "machine": "A", "duration": 24 }, { "task": 1, "start": 56, "machine": "B", "duration": 6 }, { "task": 2, "start": 62, "machine": "C", "duration": 13 }, { "task": 3, "start": 75, "machine": "D", "duration": 16 }, { "task": 4, "start": 91, "machine": "E", "duration": 75 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 304, "machine": "A", "duration": 92 }, { "task": 1, "start": 474, "machine": "B", "duration": 76 }, { "task": 2, "start": 550, "machine": "C", "duration": 2 }, { "task": 3, "start": 574, "machine": "D", "duration": 25 }, { "task": 4, "start": 611, "machine": "E", "duration": 48 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 25, "machine": "A", "duration": 43 }, { "task": 1, "start": 68, "machine": "B", "duration": 62 }, { "task": 2, "start": 160, "machine": "C", "duration": 50 }, { "task": 3, "start": 214, "machine": "D", "duration": 92 }, { "task": 4, "start": 436, "machine": "E", "duration": 35 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 396, "machine": "A", "duration": 14 }, { "task": 1, "start": 410, "machine": "B", "duration": 64 }, { "task": 2, "start": 482, "machine": "C", "duration": 29 }, { "task": 3, "start": 599, "machine": "D", "duration": 48 }, { "task": 4, "start": 659, "machine": "E", "duration": 1 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 197, "machine": "A", "duration": 25 }, { "task": 1, "start": 310, "machine": "B", "duration": 97 }, { "task": 2, "start": 432, "machine": "C", "duration": 50 }, { "task": 3, "start": 483, "machine": "D", "duration": 4 }, { "task": 4, "start": 518, "machine": "E", "duration": 58 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 74, "machine": "A", "duration": 17 }, { "task": 1, "start": 143, "machine": "B", "duration": 54 }, { "task": 2, "start": 261, "machine": "C", "duration": 6 }, { "task": 3, "start": 306, "machine": "D", "duration": 9 }, { "task": 4, "start": 315, "machine": "E", "duration": 84 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 91, "machine": "A", "duration": 34 }, { "task": 1, "start": 130, "machine": "B", "duration": 13 }, { "task": 2, "start": 143, "machine": "C", "duration": 17 }, { "task": 3, "start": 172, "machine": "D", "duration": 42 }, { "task": 4, "start": 235, "machine": "E", "duration": 74 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 68, "machine": "A", "duration": 6 }, { "task": 1, "start": 203, "machine": "B", "duration": 86 }, { "task": 2, "start": 289, "machine": "C", "duration": 97 }, { "task": 3, "start": 387, "machine": "D", "duration": 96 }, { "task": 4, "start": 483, "machine": "E", "duration": 35 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 125, "machine": "A", "duration": 72 }, { "task": 1, "start": 197, "machine": "B", "duration": 6 }, { "task": 2, "start": 210, "machine": "C", "duration": 51 }, { "task": 3, "start": 315, "machine": "D", "duration": 72 }, { "task": 4, "start": 399, "machine": "E", "duration": 37 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 222, "machine": "A", "duration": 82 }, { "task": 1, "start": 304, "machine": "B", "duration": 6 }, { "task": 2, "start": 386, "machine": "C", "duration": 46 }, { "task": 3, "start": 487, "machine": "D", "duration": 87 }, { "task": 4, "start": 576, "machine": "E", "duration": 35 } ] } ], "context_index": 24, "input_format": "csv", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Recently the shop was swamped and the lead had to figure out how to queue phones through inspection, repair, and testing without letting any station work on more than one phone at a time. The problem is choosing the order every phone goes through those three stops, making sure each phone is checked, fixed, and tested once and not repeated, so the whole batch finishes sooner rather than later. Performance is measured by the time the last phone finishes testing — you can compute that by noting every phone’s finish time and taking the largest one — and the goal is to make that as small as possible. The specific job list and step times follow below.\n\nThere are 10 devices to route through 5 sequential workstations; device ids: J1, J2, J3, J4, J5, J6, J7, J8, J9, J10; workstation ids: 1, 2, 3, 4, 5.\nDevice J1, step 0 requires workstation 1 for 1 time units.\nDevice J1, step 1 requires workstation 2 for 68 time units.\nDevice J1, step 2 requires workstation 3 for 87 time units.\nDevice J1, step 3 requires workstation 4 for 27 time units.\nDevice J1, step 4 requires workstation 5 for 17 time units.\nDevice J2, step 0 requires workstation 1 for 45 time units.\nDevice J2, step 1 requires workstation 2 for 11 time units.\nDevice J2, step 2 requires workstation 3 for 80 time units.\nDevice J2, step 3 requires workstation 4 for 83 time units.\nDevice J2, step 4 requires workstation 5 for 69 time units.\nDevice J3, step 0 requires workstation 1 for 31 time units.\nDevice J3, step 1 requires workstation 2 for 28 time units.\nDevice J3, step 2 requires workstation 3 for 84 time units.\nDevice J3, step 3 requires workstation 4 for 28 time units.\nDevice J3, step 4 requires workstation 5 for 53 time units.\nDevice J4, step 0 requires workstation 1 for 96 time units.\nDevice J4, step 1 requires workstation 2 for 30 time units.\nDevice J4, step 2 requires workstation 3 for 51 time units.\nDevice J4, step 3 requires workstation 4 for 31 time units.\nDevice J4, step 4 requires workstation 5 for 41 time units.\nDevice J5, step 0 requires workstation 1 for 55 time units.\nDevice J5, step 1 requires workstation 2 for 33 time units.\nDevice J5, step 2 requires workstation 3 for 87 time units.\nDevice J5, step 3 requires workstation 4 for 41 time units.\nDevice J5, step 4 requires workstation 5 for 84 time units.\nDevice J6, step 0 requires workstation 1 for 77 time units.\nDevice J6, step 1 requires workstation 2 for 7 time units.\nDevice J6, step 2 requires workstation 3 for 16 time units.\nDevice J6, step 3 requires workstation 4 for 46 time units.\nDevice J6, step 4 requires workstation 5 for 28 time units.\nDevice J7, step 0 requires workstation 1 for 9 time units.\nDevice J7, step 1 requires workstation 2 for 31 time units.\nDevice J7, step 2 requires workstation 3 for 32 time units.\nDevice J7, step 3 requires workstation 4 for 14 time units.\nDevice J7, step 4 requires workstation 5 for 58 time units.\nDevice J8, step 0 requires workstation 1 for 66 time units.\nDevice J8, step 1 requires workstation 2 for 75 time units.\nDevice J8, step 2 requires workstation 3 for 92 time units.\nDevice J8, step 3 requires workstation 4 for 41 time units.\nDevice J8, step 4 requires workstation 5 for 12 time units.\nDevice J9, step 0 requires workstation 1 for 31 time units.\nDevice J9, step 1 requires workstation 2 for 84 time units.\nDevice J9, step 2 requires workstation 3 for 69 time units.\nDevice J9, step 3 requires workstation 4 for 72 time units.\nDevice J9, step 4 requires workstation 5 for 1 time units.\nDevice J10, step 0 requires workstation 1 for 79 time units.\nDevice J10, step 1 requires workstation 2 for 69 time units.\nDevice J10, step 2 requires workstation 3 for 39 time units.\nDevice J10, step 3 requires workstation 4 for 99 time units.\nDevice J10, step 4 requires workstation 5 for 80 time units.\nThe lead will use the listed step times to compute each device’s finish time and minimize the final makespan.\n\nAlso, when you send the actual schedule back, please stick to a simple JSON layout like this so it's easy to read and check:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThis little sketch just says: \"solution\" is a list of jobs; each job has an id and a list of its tasks; each task entry gives which step (task), when it starts, which machine it runs on, and how long it takes. Think of it like filling out a simple form for each phone: job = which phone, tasks = the checkpoints with start times, machines, and durations.\n\nNote that the JSON above is only the expected shape — it's a template, not the actual schedule. Also, please use the exact identifiers from the instance input with no renaming and no extra labels. Valid identifiers look like plain numbers such as \"1\" or \"23\", single capital letters like \"A\" or \"B\", or a capital letter followed by digits like \"A1\" or \"X7\".", "instance": { "nr_machines": 5, "nr_jobs": 10, "jobs": [ [ [ 0, 1 ], [ 1, 68 ], [ 2, 87 ], [ 3, 27 ], [ 4, 17 ] ], [ [ 0, 45 ], [ 1, 11 ], [ 2, 80 ], [ 3, 83 ], [ 4, 69 ] ], [ [ 0, 31 ], [ 1, 28 ], [ 2, 84 ], [ 3, 28 ], [ 4, 53 ] ], [ [ 0, 96 ], [ 1, 30 ], [ 2, 51 ], [ 3, 31 ], [ 4, 41 ] ], [ [ 0, 55 ], [ 1, 33 ], [ 2, 87 ], [ 3, 41 ], [ 4, 84 ] ], [ [ 0, 77 ], [ 1, 7 ], [ 2, 16 ], [ 3, 46 ], [ 4, 28 ] ], [ [ 0, 9 ], [ 1, 31 ], [ 2, 32 ], [ 3, 14 ], [ 4, 58 ] ], [ [ 0, 66 ], [ 1, 75 ], [ 2, 92 ], [ 3, 41 ], [ 4, 12 ] ], [ [ 0, 31 ], [ 1, 84 ], [ 2, 69 ], [ 3, 72 ], [ 4, 1 ] ], [ [ 0, 79 ], [ 1, 69 ], [ 2, 39 ], [ 3, 99 ], [ 4, 80 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 489, "machine": 0, "duration": 1 }, { "task": 1, "start": 496, "machine": 1, "duration": 68 }, { "task": 2, "start": 590, "machine": 2, "duration": 87 }, { "task": 3, "start": 677, "machine": 3, "duration": 27 }, { "task": 4, "start": 704, "machine": 4, "duration": 17 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 205, "machine": 0, "duration": 45 }, { "task": 1, "start": 250, "machine": 1, "duration": 11 }, { "task": 2, "start": 282, "machine": 2, "duration": 80 }, { "task": 3, "start": 383, "machine": 3, "duration": 83 }, { "task": 4, "start": 466, "machine": 4, "duration": 69 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 9, "machine": 0, "duration": 31 }, { "task": 1, "start": 40, "machine": 1, "duration": 28 }, { "task": 2, "start": 72, "machine": 2, "duration": 84 }, { "task": 3, "start": 156, "machine": 3, "duration": 28 }, { "task": 4, "start": 184, "machine": 4, "duration": 53 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 316, "machine": 0, "duration": 96 }, { "task": 1, "start": 420, "machine": 1, "duration": 30 }, { "task": 2, "start": 523, "machine": 2, "duration": 51 }, { "task": 3, "start": 579, "machine": 3, "duration": 31 }, { "task": 4, "start": 610, "machine": 4, "duration": 41 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 40, "machine": 0, "duration": 55 }, { "task": 1, "start": 95, "machine": 1, "duration": 33 }, { "task": 2, "start": 156, "machine": 2, "duration": 87 }, { "task": 3, "start": 243, "machine": 3, "duration": 41 }, { "task": 4, "start": 284, "machine": 4, "duration": 84 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 412, "machine": 0, "duration": 77 }, { "task": 1, "start": 489, "machine": 1, "duration": 7 }, { "task": 2, "start": 574, "machine": 2, "duration": 16 }, { "task": 3, "start": 610, "machine": 3, "duration": 46 }, { "task": 4, "start": 656, "machine": 4, "duration": 28 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 9 }, { "task": 1, "start": 9, "machine": 1, "duration": 31 }, { "task": 2, "start": 40, "machine": 2, "duration": 32 }, { "task": 3, "start": 72, "machine": 3, "duration": 14 }, { "task": 4, "start": 86, "machine": 4, "duration": 58 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 250, "machine": 0, "duration": 66 }, { "task": 1, "start": 345, "machine": 1, "duration": 75 }, { "task": 2, "start": 431, "machine": 2, "duration": 92 }, { "task": 3, "start": 538, "machine": 3, "duration": 41 }, { "task": 4, "start": 579, "machine": 4, "duration": 12 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 174, "machine": 0, "duration": 31 }, { "task": 1, "start": 261, "machine": 1, "duration": 84 }, { "task": 2, "start": 362, "machine": 2, "duration": 69 }, { "task": 3, "start": 466, "machine": 3, "duration": 72 }, { "task": 4, "start": 538, "machine": 4, "duration": 1 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 95, "machine": 0, "duration": 79 }, { "task": 1, "start": 174, "machine": 1, "duration": 69 }, { "task": 2, "start": 243, "machine": 2, "duration": 39 }, { "task": 3, "start": 284, "machine": 3, "duration": 99 }, { "task": 4, "start": 383, "machine": 4, "duration": 80 } ] } ], "obj": 721.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 10, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10" ], "machines": [ 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 2, "duration": 68 }, { "job_id": "J1", "task_id": 2, "machine_id": 3, "duration": 87 }, { "job_id": "J1", "task_id": 3, "machine_id": 4, "duration": 27 }, { "job_id": "J1", "task_id": 4, "machine_id": 5, "duration": 17 }, { "job_id": "J2", "task_id": 0, "machine_id": 1, "duration": 45 }, { "job_id": "J2", "task_id": 1, "machine_id": 2, "duration": 11 }, { "job_id": "J2", "task_id": 2, "machine_id": 3, "duration": 80 }, { "job_id": "J2", "task_id": 3, "machine_id": 4, "duration": 83 }, { "job_id": "J2", "task_id": 4, "machine_id": 5, "duration": 69 }, { "job_id": "J3", "task_id": 0, "machine_id": 1, "duration": 31 }, { "job_id": "J3", "task_id": 1, "machine_id": 2, "duration": 28 }, { "job_id": "J3", "task_id": 2, "machine_id": 3, "duration": 84 }, { "job_id": "J3", "task_id": 3, "machine_id": 4, "duration": 28 }, { "job_id": "J3", "task_id": 4, "machine_id": 5, "duration": 53 }, { "job_id": "J4", "task_id": 0, "machine_id": 1, "duration": 96 }, { "job_id": "J4", "task_id": 1, "machine_id": 2, "duration": 30 }, { "job_id": "J4", "task_id": 2, "machine_id": 3, "duration": 51 }, { "job_id": "J4", "task_id": 3, "machine_id": 4, "duration": 31 }, { "job_id": "J4", "task_id": 4, "machine_id": 5, "duration": 41 }, { "job_id": "J5", "task_id": 0, "machine_id": 1, "duration": 55 }, { "job_id": "J5", "task_id": 1, "machine_id": 2, "duration": 33 }, { "job_id": "J5", "task_id": 2, "machine_id": 3, "duration": 87 }, { "job_id": "J5", "task_id": 3, "machine_id": 4, "duration": 41 }, { "job_id": "J5", "task_id": 4, "machine_id": 5, "duration": 84 }, { "job_id": "J6", "task_id": 0, "machine_id": 1, "duration": 77 }, { "job_id": "J6", "task_id": 1, "machine_id": 2, "duration": 7 }, { "job_id": "J6", "task_id": 2, "machine_id": 3, "duration": 16 }, { "job_id": "J6", "task_id": 3, "machine_id": 4, "duration": 46 }, { "job_id": "J6", "task_id": 4, "machine_id": 5, "duration": 28 }, { "job_id": "J7", "task_id": 0, "machine_id": 1, "duration": 9 }, { "job_id": "J7", "task_id": 1, "machine_id": 2, "duration": 31 }, { "job_id": "J7", "task_id": 2, "machine_id": 3, "duration": 32 }, { "job_id": "J7", "task_id": 3, "machine_id": 4, "duration": 14 }, { "job_id": "J7", "task_id": 4, "machine_id": 5, "duration": 58 }, { "job_id": "J8", "task_id": 0, "machine_id": 1, "duration": 66 }, { "job_id": "J8", "task_id": 1, "machine_id": 2, "duration": 75 }, { "job_id": "J8", "task_id": 2, "machine_id": 3, "duration": 92 }, { "job_id": "J8", "task_id": 3, "machine_id": 4, "duration": 41 }, { "job_id": "J8", "task_id": 4, "machine_id": 5, "duration": 12 }, { "job_id": "J9", "task_id": 0, "machine_id": 1, "duration": 31 }, { "job_id": "J9", "task_id": 1, "machine_id": 2, "duration": 84 }, { "job_id": "J9", "task_id": 2, "machine_id": 3, "duration": 69 }, { "job_id": "J9", "task_id": 3, "machine_id": 4, "duration": 72 }, { "job_id": "J9", "task_id": 4, "machine_id": 5, "duration": 1 }, { "job_id": "J10", "task_id": 0, "machine_id": 1, "duration": 79 }, { "job_id": "J10", "task_id": 1, "machine_id": 2, "duration": 69 }, { "job_id": "J10", "task_id": 2, "machine_id": 3, "duration": 39 }, { "job_id": "J10", "task_id": 3, "machine_id": 4, "duration": 99 }, { "job_id": "J10", "task_id": 4, "machine_id": 5, "duration": 80 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 489, "machine": 1, "duration": 1 }, { "task": 1, "start": 496, "machine": 2, "duration": 68 }, { "task": 2, "start": 590, "machine": 3, "duration": 87 }, { "task": 3, "start": 677, "machine": 4, "duration": 27 }, { "task": 4, "start": 704, "machine": 5, "duration": 17 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 205, "machine": 1, "duration": 45 }, { "task": 1, "start": 250, "machine": 2, "duration": 11 }, { "task": 2, "start": 282, "machine": 3, "duration": 80 }, { "task": 3, "start": 383, "machine": 4, "duration": 83 }, { "task": 4, "start": 466, "machine": 5, "duration": 69 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 9, "machine": 1, "duration": 31 }, { "task": 1, "start": 40, "machine": 2, "duration": 28 }, { "task": 2, "start": 72, "machine": 3, "duration": 84 }, { "task": 3, "start": 156, "machine": 4, "duration": 28 }, { "task": 4, "start": 184, "machine": 5, "duration": 53 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 316, "machine": 1, "duration": 96 }, { "task": 1, "start": 420, "machine": 2, "duration": 30 }, { "task": 2, "start": 523, "machine": 3, "duration": 51 }, { "task": 3, "start": 579, "machine": 4, "duration": 31 }, { "task": 4, "start": 610, "machine": 5, "duration": 41 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 40, "machine": 1, "duration": 55 }, { "task": 1, "start": 95, "machine": 2, "duration": 33 }, { "task": 2, "start": 156, "machine": 3, "duration": 87 }, { "task": 3, "start": 243, "machine": 4, "duration": 41 }, { "task": 4, "start": 284, "machine": 5, "duration": 84 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 412, "machine": 1, "duration": 77 }, { "task": 1, "start": 489, "machine": 2, "duration": 7 }, { "task": 2, "start": 574, "machine": 3, "duration": 16 }, { "task": 3, "start": 610, "machine": 4, "duration": 46 }, { "task": 4, "start": 656, "machine": 5, "duration": 28 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 0, "machine": 1, "duration": 9 }, { "task": 1, "start": 9, "machine": 2, "duration": 31 }, { "task": 2, "start": 40, "machine": 3, "duration": 32 }, { "task": 3, "start": 72, "machine": 4, "duration": 14 }, { "task": 4, "start": 86, "machine": 5, "duration": 58 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 250, "machine": 1, "duration": 66 }, { "task": 1, "start": 345, "machine": 2, "duration": 75 }, { "task": 2, "start": 431, "machine": 3, "duration": 92 }, { "task": 3, "start": 538, "machine": 4, "duration": 41 }, { "task": 4, "start": 579, "machine": 5, "duration": 12 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 174, "machine": 1, "duration": 31 }, { "task": 1, "start": 261, "machine": 2, "duration": 84 }, { "task": 2, "start": 362, "machine": 3, "duration": 69 }, { "task": 3, "start": 466, "machine": 4, "duration": 72 }, { "task": 4, "start": 538, "machine": 5, "duration": 1 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 95, "machine": 1, "duration": 79 }, { "task": 1, "start": 174, "machine": 2, "duration": 69 }, { "task": 2, "start": 243, "machine": 3, "duration": 39 }, { "task": 3, "start": 284, "machine": 4, "duration": 99 }, { "task": 4, "start": 383, "machine": 5, "duration": 80 } ] } ], "context_index": 25, "input_format": "nl", "input_index_base": 1 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Back at the shop, there’s a rhythm: every bike goes inspection → adjustment → road check, always in that sequence, and bays can’t work on overlapping bikes. The decision is how to sequence and time each bike through those stations so nothing is missed or duplicated and no bay is double-booked. The best arrangement is the one where the final bike finishes earliest — that final completion time is how we’ll compare options. The exact job details appear below.\n\n{\n \"total_bikes\": 12,\n \"nr_service_bays\": 6,\n \"bike_ids\": [\n \"J1\",\n \"J2\",\n \"J3\",\n \"J4\",\n \"J5\",\n \"J6\",\n \"J7\",\n \"J8\",\n \"J9\",\n \"J10\",\n \"J11\",\n \"J12\"\n ],\n \"bay_ids\": [\n 0,\n 1,\n 2,\n 3,\n 4,\n 5\n ],\n \"tasks\": [\n {\n \"bike_id\": \"J1\",\n \"service_step\": 0,\n \"bay_id\": 0,\n \"service_duration\": 1\n },\n {\n \"bike_id\": \"J1\",\n \"service_step\": 1,\n \"bay_id\": 1,\n \"service_duration\": 81\n },\n {\n \"bike_id\": \"J1\",\n \"service_step\": 2,\n \"bay_id\": 2,\n \"service_duration\": 62\n },\n {\n \"bike_id\": \"J1\",\n \"service_step\": 3,\n \"bay_id\": 3,\n \"service_duration\": 73\n },\n {\n \"bike_id\": \"J1\",\n \"service_step\": 4,\n \"bay_id\": 4,\n \"service_duration\": 69\n },\n {\n \"bike_id\": \"J1\",\n \"service_step\": 5,\n \"bay_id\": 5,\n \"service_duration\": 67\n },\n {\n \"bike_id\": \"J2\",\n \"service_step\": 0,\n \"bay_id\": 0,\n \"service_duration\": 16\n },\n {\n \"bike_id\": \"J2\",\n \"service_step\": 1,\n \"bay_id\": 1,\n \"service_duration\": 48\n },\n {\n \"bike_id\": \"J2\",\n \"service_step\": 2,\n \"bay_id\": 2,\n \"service_duration\": 51\n },\n {\n \"bike_id\": \"J2\",\n \"service_step\": 3,\n \"bay_id\": 3,\n \"service_duration\": 62\n },\n {\n \"bike_id\": \"J2\",\n \"service_step\": 4,\n \"bay_id\": 4,\n \"service_duration\": 69\n },\n {\n \"bike_id\": \"J2\",\n \"service_step\": 5,\n \"bay_id\": 5,\n \"service_duration\": 80\n },\n {\n \"bike_id\": \"J3\",\n \"service_step\": 0,\n \"bay_id\": 0,\n \"service_duration\": 67\n },\n {\n \"bike_id\": \"J3\",\n \"service_step\": 1,\n \"bay_id\": 1,\n \"service_duration\": 32\n },\n {\n \"bike_id\": \"J3\",\n \"service_step\": 2,\n \"bay_id\": 2,\n \"service_duration\": 58\n },\n {\n \"bike_id\": \"J3\",\n \"service_step\": 3,\n \"bay_id\": 3,\n \"service_duration\": 49\n },\n {\n \"bike_id\": \"J3\",\n \"service_step\": 4,\n \"bay_id\": 4,\n \"service_duration\": 96\n },\n {\n \"bike_id\": \"J3\",\n \"service_step\": 5,\n \"bay_id\": 5,\n \"service_duration\": 52\n },\n {\n \"bike_id\": \"J4\",\n \"service_step\": 0,\n \"bay_id\": 0,\n \"service_duration\": 69\n },\n {\n \"bike_id\": \"J4\",\n \"service_step\": 1,\n \"bay_id\": 1,\n \"service_duration\": 48\n },\n {\n \"bike_id\": \"J4\",\n \"service_step\": 2,\n \"bay_id\": 2,\n \"service_duration\": 97\n },\n {\n \"bike_id\": \"J4\",\n \"service_step\": 3,\n \"bay_id\": 3,\n \"service_duration\": 2\n },\n {\n \"bike_id\": \"J4\",\n \"service_step\": 4,\n \"bay_id\": 4,\n \"service_duration\": 46\n },\n {\n \"bike_id\": \"J4\",\n \"service_step\": 5,\n \"bay_id\": 5,\n \"service_duration\": 34\n },\n {\n \"bike_id\": \"J5\",\n \"service_step\": 0,\n \"bay_id\": 0,\n \"service_duration\": 69\n },\n {\n \"bike_id\": \"J5\",\n \"service_step\": 1,\n \"bay_id\": 1,\n \"service_duration\": 31\n },\n {\n \"bike_id\": \"J5\",\n \"service_step\": 2,\n \"bay_id\": 2,\n \"service_duration\": 17\n },\n {\n \"bike_id\": \"J5\",\n \"service_step\": 3,\n \"bay_id\": 3,\n \"service_duration\": 81\n },\n {\n \"bike_id\": \"J5\",\n \"service_step\": 4,\n \"bay_id\": 4,\n \"service_duration\": 87\n },\n {\n \"bike_id\": \"J5\",\n \"service_step\": 5,\n \"bay_id\": 5,\n \"service_duration\": 97\n },\n {\n \"bike_id\": \"J6\",\n \"service_step\": 0,\n \"bay_id\": 0,\n \"service_duration\": 99\n },\n {\n \"bike_id\": \"J6\",\n \"service_step\": 1,\n \"bay_id\": 1,\n \"service_duration\": 7\n },\n {\n \"bike_id\": \"J6\",\n \"service_step\": 2,\n \"bay_id\": 2,\n \"service_duration\": 58\n },\n {\n \"bike_id\": \"J6\",\n \"service_step\": 3,\n \"bay_id\": 3,\n \"service_duration\": 18\n },\n {\n \"bike_id\": \"J6\",\n \"service_step\": 4,\n \"bay_id\": 4,\n \"service_duration\": 32\n },\n {\n \"bike_id\": \"J6\",\n \"service_step\": 5,\n \"bay_id\": 5,\n \"service_duration\": 99\n },\n {\n \"bike_id\": \"J7\",\n \"service_step\": 0,\n \"bay_id\": 0,\n \"service_duration\": 39\n },\n {\n \"bike_id\": \"J7\",\n \"service_step\": 1,\n \"bay_id\": 1,\n \"service_duration\": 68\n },\n {\n \"bike_id\": \"J7\",\n \"service_step\": 2,\n \"bay_id\": 2,\n \"service_duration\": 40\n },\n {\n \"bike_id\": \"J7\",\n \"service_step\": 3,\n \"bay_id\": 3,\n \"service_duration\": 48\n },\n {\n \"bike_id\": \"J7\",\n \"service_step\": 4,\n \"bay_id\": 4,\n \"service_duration\": 55\n },\n {\n \"bike_id\": \"J7\",\n \"service_step\": 5,\n \"bay_id\": 5,\n \"service_duration\": 83\n },\n {\n \"bike_id\": \"J8\",\n \"service_step\": 0,\n \"bay_id\": 0,\n \"service_duration\": 42\n },\n {\n \"bike_id\": \"J8\",\n \"service_step\": 1,\n \"bay_id\": 1,\n \"service_duration\": 48\n },\n {\n \"bike_id\": \"J8\",\n \"service_step\": 2,\n \"bay_id\": 2,\n \"service_duration\": 65\n },\n {\n \"bike_id\": \"J8\",\n \"service_step\": 3,\n \"bay_id\": 3,\n \"service_duration\": 87\n },\n {\n \"bike_id\": \"J8\",\n \"service_step\": 4,\n \"bay_id\": 4,\n \"service_duration\": 32\n },\n {\n \"bike_id\": \"J8\",\n \"service_step\": 5,\n \"bay_id\": 5,\n \"service_duration\": 28\n },\n {\n \"bike_id\": \"J9\",\n \"service_step\": 0,\n \"bay_id\": 0,\n \"service_duration\": 27\n },\n {\n \"bike_id\": \"J9\",\n \"service_step\": 1,\n \"bay_id\": 1,\n \"service_duration\": 24\n },\n {\n \"bike_id\": \"J9\",\n \"service_step\": 2,\n \"bay_id\": 2,\n \"service_duration\": 36\n },\n {\n \"bike_id\": \"J9\",\n \"service_step\": 3,\n \"bay_id\": 3,\n \"service_duration\": 1\n },\n {\n \"bike_id\": \"J9\",\n \"service_step\": 4,\n \"bay_id\": 4,\n \"service_duration\": 93\n },\n {\n \"bike_id\": \"J9\",\n \"service_step\": 5,\n \"bay_id\": 5,\n \"service_duration\": 42\n },\n {\n \"bike_id\": \"J10\",\n \"service_step\": 0,\n \"bay_id\": 0,\n \"service_duration\": 8\n },\n {\n \"bike_id\": \"J10\",\n \"service_step\": 1,\n \"bay_id\": 1,\n \"service_duration\": 16\n },\n {\n \"bike_id\": \"J10\",\n \"service_step\": 2,\n \"bay_id\": 2,\n \"service_duration\": 60\n },\n {\n \"bike_id\": \"J10\",\n \"service_step\": 3,\n \"bay_id\": 3,\n \"service_duration\": 15\n },\n {\n \"bike_id\": \"J10\",\n \"service_step\": 4,\n \"bay_id\": 4,\n \"service_duration\": 91\n },\n {\n \"bike_id\": \"J10\",\n \"service_step\": 5,\n \"bay_id\": 5,\n \"service_duration\": 6\n },\n {\n \"bike_id\": \"J11\",\n \"service_step\": 0,\n \"bay_id\": 0,\n \"service_duration\": 61\n },\n {\n \"bike_id\": \"J11\",\n \"service_step\": 1,\n \"bay_id\": 1,\n \"service_duration\": 80\n },\n {\n \"bike_id\": \"J11\",\n \"service_step\": 2,\n \"bay_id\": 2,\n \"service_duration\": 59\n },\n {\n \"bike_id\": \"J11\",\n \"service_step\": 3,\n \"bay_id\": 3,\n \"service_duration\": 38\n },\n {\n \"bike_id\": \"J11\",\n \"service_step\": 4,\n \"bay_id\": 4,\n \"service_duration\": 11\n },\n {\n \"bike_id\": \"J11\",\n \"service_step\": 5,\n \"bay_id\": 5,\n \"service_duration\": 10\n },\n {\n \"bike_id\": \"J12\",\n \"service_step\": 0,\n \"bay_id\": 0,\n \"service_duration\": 83\n },\n {\n \"bike_id\": \"J12\",\n \"service_step\": 1,\n \"bay_id\": 1,\n \"service_duration\": 8\n },\n {\n \"bike_id\": \"J12\",\n \"service_step\": 2,\n \"bay_id\": 2,\n \"service_duration\": 50\n },\n {\n \"bike_id\": \"J12\",\n \"service_step\": 3,\n \"bay_id\": 3,\n \"service_duration\": 94\n },\n {\n \"bike_id\": \"J12\",\n \"service_step\": 4,\n \"bay_id\": 4,\n \"service_duration\": 55\n },\n {\n \"bike_id\": \"J12\",\n \"service_step\": 5,\n \"bay_id\": 5,\n \"service_duration\": 74\n }\n ]\n}\n\nAlso, to keep things tidy, please reply using this JSON shape so I can read the schedule easily:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nQuick, laid-back guide to the fields:\n- \"solution\" is a list of jobs (each bike).\n- Each job entry has \"job\" for the job identifier and a \"tasks\" list.\n- Each task lists the task index (which step in the bike's sequence), the planned start time, which machine (bay/station) it runs on, and how long that step takes.\nThis JSON is just a sketch of the shape I want back — not the real schedule itself.\n\nPlease make sure to use the exact identifiers from the instance input, with no renaming and no new labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 6, "nr_jobs": 12, "jobs": [ [ [ 0, 1 ], [ 1, 81 ], [ 2, 62 ], [ 3, 73 ], [ 4, 69 ], [ 5, 67 ] ], [ [ 0, 16 ], [ 1, 48 ], [ 2, 51 ], [ 3, 62 ], [ 4, 69 ], [ 5, 80 ] ], [ [ 0, 67 ], [ 1, 32 ], [ 2, 58 ], [ 3, 49 ], [ 4, 96 ], [ 5, 52 ] ], [ [ 0, 69 ], [ 1, 48 ], [ 2, 97 ], [ 3, 2 ], [ 4, 46 ], [ 5, 34 ] ], [ [ 0, 69 ], [ 1, 31 ], [ 2, 17 ], [ 3, 81 ], [ 4, 87 ], [ 5, 97 ] ], [ [ 0, 99 ], [ 1, 7 ], [ 2, 58 ], [ 3, 18 ], [ 4, 32 ], [ 5, 99 ] ], [ [ 0, 39 ], [ 1, 68 ], [ 2, 40 ], [ 3, 48 ], [ 4, 55 ], [ 5, 83 ] ], [ [ 0, 42 ], [ 1, 48 ], [ 2, 65 ], [ 3, 87 ], [ 4, 32 ], [ 5, 28 ] ], [ [ 0, 27 ], [ 1, 24 ], [ 2, 36 ], [ 3, 1 ], [ 4, 93 ], [ 5, 42 ] ], [ [ 0, 8 ], [ 1, 16 ], [ 2, 60 ], [ 3, 15 ], [ 4, 91 ], [ 5, 6 ] ], [ [ 0, 61 ], [ 1, 80 ], [ 2, 59 ], [ 3, 38 ], [ 4, 11 ], [ 5, 10 ] ], [ [ 0, 83 ], [ 1, 8 ], [ 2, 50 ], [ 3, 94 ], [ 4, 55 ], [ 5, 74 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 181, "machine": 0, "duration": 1 }, { "task": 1, "start": 191, "machine": 1, "duration": 81 }, { "task": 2, "start": 320, "machine": 2, "duration": 62 }, { "task": 3, "start": 402, "machine": 3, "duration": 73 }, { "task": 4, "start": 501, "machine": 4, "duration": 69 }, { "task": 5, "start": 710, "machine": 5, "duration": 67 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 66, "machine": 0, "duration": 16 }, { "task": 1, "start": 134, "machine": 1, "duration": 48 }, { "task": 2, "start": 182, "machine": 2, "duration": 51 }, { "task": 3, "start": 233, "machine": 3, "duration": 62 }, { "task": 4, "start": 345, "machine": 4, "duration": 69 }, { "task": 5, "start": 459, "machine": 5, "duration": 80 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 384, "machine": 0, "duration": 67 }, { "task": 1, "start": 473, "machine": 1, "duration": 32 }, { "task": 2, "start": 507, "machine": 2, "duration": 58 }, { "task": 3, "start": 569, "machine": 3, "duration": 49 }, { "task": 4, "start": 625, "machine": 4, "duration": 96 }, { "task": 5, "start": 811, "machine": 5, "duration": 52 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 451, "machine": 0, "duration": 69 }, { "task": 1, "start": 520, "machine": 1, "duration": 48 }, { "task": 2, "start": 568, "machine": 2, "duration": 97 }, { "task": 3, "start": 705, "machine": 3, "duration": 2 }, { "task": 4, "start": 721, "machine": 4, "duration": 46 }, { "task": 5, "start": 777, "machine": 5, "duration": 34 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 182, "machine": 0, "duration": 69 }, { "task": 1, "start": 272, "machine": 1, "duration": 31 }, { "task": 2, "start": 303, "machine": 2, "duration": 17 }, { "task": 3, "start": 320, "machine": 3, "duration": 81 }, { "task": 4, "start": 414, "machine": 4, "duration": 87 }, { "task": 5, "start": 539, "machine": 5, "duration": 97 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 82, "machine": 0, "duration": 99 }, { "task": 1, "start": 182, "machine": 1, "duration": 7 }, { "task": 2, "start": 234, "machine": 2, "duration": 58 }, { "task": 3, "start": 295, "machine": 3, "duration": 18 }, { "task": 4, "start": 313, "machine": 4, "duration": 32 }, { "task": 5, "start": 360, "machine": 5, "duration": 99 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 27, "machine": 0, "duration": 39 }, { "task": 1, "start": 66, "machine": 1, "duration": 68 }, { "task": 2, "start": 134, "machine": 2, "duration": 40 }, { "task": 3, "start": 174, "machine": 3, "duration": 48 }, { "task": 4, "start": 222, "machine": 4, "duration": 55 }, { "task": 5, "start": 277, "machine": 5, "duration": 83 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 251, "machine": 0, "duration": 42 }, { "task": 1, "start": 303, "machine": 1, "duration": 48 }, { "task": 2, "start": 442, "machine": 2, "duration": 65 }, { "task": 3, "start": 618, "machine": 3, "duration": 87 }, { "task": 4, "start": 767, "machine": 4, "duration": 32 }, { "task": 5, "start": 863, "machine": 5, "duration": 28 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 27 }, { "task": 1, "start": 29, "machine": 1, "duration": 24 }, { "task": 2, "start": 53, "machine": 2, "duration": 36 }, { "task": 3, "start": 89, "machine": 3, "duration": 1 }, { "task": 4, "start": 90, "machine": 4, "duration": 93 }, { "task": 5, "start": 183, "machine": 5, "duration": 42 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 293, "machine": 0, "duration": 8 }, { "task": 1, "start": 351, "machine": 1, "duration": 16 }, { "task": 2, "start": 724, "machine": 2, "duration": 60 }, { "task": 3, "start": 784, "machine": 3, "duration": 15 }, { "task": 4, "start": 810, "machine": 4, "duration": 91 }, { "task": 5, "start": 901, "machine": 5, "duration": 6 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 520, "machine": 0, "duration": 61 }, { "task": 1, "start": 581, "machine": 1, "duration": 80 }, { "task": 2, "start": 665, "machine": 2, "duration": 59 }, { "task": 3, "start": 724, "machine": 3, "duration": 38 }, { "task": 4, "start": 799, "machine": 4, "duration": 11 }, { "task": 5, "start": 891, "machine": 5, "duration": 10 } ] }, { "job": 11, "tasks": [ { "task": 0, "start": 301, "machine": 0, "duration": 83 }, { "task": 1, "start": 384, "machine": 1, "duration": 8 }, { "task": 2, "start": 392, "machine": 2, "duration": 50 }, { "task": 3, "start": 475, "machine": 3, "duration": 94 }, { "task": 4, "start": 570, "machine": 4, "duration": 55 }, { "task": 5, "start": 636, "machine": 5, "duration": 74 } ] } ], "obj": 907.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 12, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11", "J12" ], "machines": [ 0, 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 81 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 62 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 73 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 69 }, { "job_id": "J1", "task_id": 5, "machine_id": 5, "duration": 67 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 16 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 48 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 51 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 62 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 69 }, { "job_id": "J2", "task_id": 5, "machine_id": 5, "duration": 80 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 67 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 32 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 58 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 49 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 96 }, { "job_id": "J3", "task_id": 5, "machine_id": 5, "duration": 52 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 69 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 48 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 97 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 2 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 46 }, { "job_id": "J4", "task_id": 5, "machine_id": 5, "duration": 34 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 69 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 31 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 17 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 81 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 87 }, { "job_id": "J5", "task_id": 5, "machine_id": 5, "duration": 97 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 99 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 7 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 58 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 18 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 32 }, { "job_id": "J6", "task_id": 5, "machine_id": 5, "duration": 99 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 39 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 68 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 40 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 48 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 55 }, { "job_id": "J7", "task_id": 5, "machine_id": 5, "duration": 83 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 42 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 48 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 65 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 87 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 32 }, { "job_id": "J8", "task_id": 5, "machine_id": 5, "duration": 28 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 27 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 24 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 36 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 1 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 93 }, { "job_id": "J9", "task_id": 5, "machine_id": 5, "duration": 42 }, { "job_id": "J10", "task_id": 0, "machine_id": 0, "duration": 8 }, { "job_id": "J10", "task_id": 1, "machine_id": 1, "duration": 16 }, { "job_id": "J10", "task_id": 2, "machine_id": 2, "duration": 60 }, { "job_id": "J10", "task_id": 3, "machine_id": 3, "duration": 15 }, { "job_id": "J10", "task_id": 4, "machine_id": 4, "duration": 91 }, { "job_id": "J10", "task_id": 5, "machine_id": 5, "duration": 6 }, { "job_id": "J11", "task_id": 0, "machine_id": 0, "duration": 61 }, { "job_id": "J11", "task_id": 1, "machine_id": 1, "duration": 80 }, { "job_id": "J11", "task_id": 2, "machine_id": 2, "duration": 59 }, { "job_id": "J11", "task_id": 3, "machine_id": 3, "duration": 38 }, { "job_id": "J11", "task_id": 4, "machine_id": 4, "duration": 11 }, { "job_id": "J11", "task_id": 5, "machine_id": 5, "duration": 10 }, { "job_id": "J12", "task_id": 0, "machine_id": 0, "duration": 83 }, { "job_id": "J12", "task_id": 1, "machine_id": 1, "duration": 8 }, { "job_id": "J12", "task_id": 2, "machine_id": 2, "duration": 50 }, { "job_id": "J12", "task_id": 3, "machine_id": 3, "duration": 94 }, { "job_id": "J12", "task_id": 4, "machine_id": 4, "duration": 55 }, { "job_id": "J12", "task_id": 5, "machine_id": 5, "duration": 74 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 181, "machine": 0, "duration": 1 }, { "task": 1, "start": 191, "machine": 1, "duration": 81 }, { "task": 2, "start": 320, "machine": 2, "duration": 62 }, { "task": 3, "start": 402, "machine": 3, "duration": 73 }, { "task": 4, "start": 501, "machine": 4, "duration": 69 }, { "task": 5, "start": 710, "machine": 5, "duration": 67 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 66, "machine": 0, "duration": 16 }, { "task": 1, "start": 134, "machine": 1, "duration": 48 }, { "task": 2, "start": 182, "machine": 2, "duration": 51 }, { "task": 3, "start": 233, "machine": 3, "duration": 62 }, { "task": 4, "start": 345, "machine": 4, "duration": 69 }, { "task": 5, "start": 459, "machine": 5, "duration": 80 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 384, "machine": 0, "duration": 67 }, { "task": 1, "start": 473, "machine": 1, "duration": 32 }, { "task": 2, "start": 507, "machine": 2, "duration": 58 }, { "task": 3, "start": 569, "machine": 3, "duration": 49 }, { "task": 4, "start": 625, "machine": 4, "duration": 96 }, { "task": 5, "start": 811, "machine": 5, "duration": 52 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 451, "machine": 0, "duration": 69 }, { "task": 1, "start": 520, "machine": 1, "duration": 48 }, { "task": 2, "start": 568, "machine": 2, "duration": 97 }, { "task": 3, "start": 705, "machine": 3, "duration": 2 }, { "task": 4, "start": 721, "machine": 4, "duration": 46 }, { "task": 5, "start": 777, "machine": 5, "duration": 34 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 182, "machine": 0, "duration": 69 }, { "task": 1, "start": 272, "machine": 1, "duration": 31 }, { "task": 2, "start": 303, "machine": 2, "duration": 17 }, { "task": 3, "start": 320, "machine": 3, "duration": 81 }, { "task": 4, "start": 414, "machine": 4, "duration": 87 }, { "task": 5, "start": 539, "machine": 5, "duration": 97 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 82, "machine": 0, "duration": 99 }, { "task": 1, "start": 182, "machine": 1, "duration": 7 }, { "task": 2, "start": 234, "machine": 2, "duration": 58 }, { "task": 3, "start": 295, "machine": 3, "duration": 18 }, { "task": 4, "start": 313, "machine": 4, "duration": 32 }, { "task": 5, "start": 360, "machine": 5, "duration": 99 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 27, "machine": 0, "duration": 39 }, { "task": 1, "start": 66, "machine": 1, "duration": 68 }, { "task": 2, "start": 134, "machine": 2, "duration": 40 }, { "task": 3, "start": 174, "machine": 3, "duration": 48 }, { "task": 4, "start": 222, "machine": 4, "duration": 55 }, { "task": 5, "start": 277, "machine": 5, "duration": 83 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 251, "machine": 0, "duration": 42 }, { "task": 1, "start": 303, "machine": 1, "duration": 48 }, { "task": 2, "start": 442, "machine": 2, "duration": 65 }, { "task": 3, "start": 618, "machine": 3, "duration": 87 }, { "task": 4, "start": 767, "machine": 4, "duration": 32 }, { "task": 5, "start": 863, "machine": 5, "duration": 28 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 27 }, { "task": 1, "start": 29, "machine": 1, "duration": 24 }, { "task": 2, "start": 53, "machine": 2, "duration": 36 }, { "task": 3, "start": 89, "machine": 3, "duration": 1 }, { "task": 4, "start": 90, "machine": 4, "duration": 93 }, { "task": 5, "start": 183, "machine": 5, "duration": 42 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 293, "machine": 0, "duration": 8 }, { "task": 1, "start": 351, "machine": 1, "duration": 16 }, { "task": 2, "start": 724, "machine": 2, "duration": 60 }, { "task": 3, "start": 784, "machine": 3, "duration": 15 }, { "task": 4, "start": 810, "machine": 4, "duration": 91 }, { "task": 5, "start": 901, "machine": 5, "duration": 6 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 520, "machine": 0, "duration": 61 }, { "task": 1, "start": 581, "machine": 1, "duration": 80 }, { "task": 2, "start": 665, "machine": 2, "duration": 59 }, { "task": 3, "start": 724, "machine": 3, "duration": 38 }, { "task": 4, "start": 799, "machine": 4, "duration": 11 }, { "task": 5, "start": 891, "machine": 5, "duration": 10 } ] }, { "job": "J12", "tasks": [ { "task": 0, "start": 301, "machine": 0, "duration": 83 }, { "task": 1, "start": 384, "machine": 1, "duration": 8 }, { "task": 2, "start": 392, "machine": 2, "duration": 50 }, { "task": 3, "start": 475, "machine": 3, "duration": 94 }, { "task": 4, "start": 570, "machine": 4, "duration": 55 }, { "task": 5, "start": 636, "machine": 5, "duration": 74 } ] } ], "context_index": 26, "input_format": "json", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "There’s a stack of shirts, dresses, and coats that all need the same three stops in order — spot treatment, a wash, then a press — and each stop takes a set amount of time per item. Since each machine handles one garment at a time, the trick is deciding the sequence to feed them through so the last garment is done as early as possible; the finish time of that last piece is how to tell if the plan is better. Everything must go through each step exactly once, and no two garments can use the same machine simultaneously. The concrete details for this batch appear below.\n\n# num_garments=12\n# num_stations=6\n# garment_ids=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11, J12\n# station_ids=A, B, C, D, E, F\ngarment_id,stage_index,station_id,processing_time\nJ1,0,A,1\nJ1,1,B,94\nJ1,2,C,38\nJ1,3,D,19\nJ1,4,E,23\nJ1,5,F,89\nJ2,0,A,20\nJ2,1,B,17\nJ2,2,C,20\nJ2,3,D,56\nJ2,4,E,8\nJ2,5,F,32\nJ3,0,A,51\nJ3,1,B,35\nJ3,2,C,63\nJ3,3,D,2\nJ3,4,E,64\nJ3,5,F,52\nJ4,0,A,8\nJ4,1,B,54\nJ4,2,C,39\nJ4,3,D,70\nJ4,4,E,5\nJ4,5,F,27\nJ5,0,A,54\nJ5,1,B,83\nJ5,2,C,26\nJ5,3,D,47\nJ5,4,E,29\nJ5,5,F,68\nJ6,0,A,90\nJ6,1,B,83\nJ6,2,C,84\nJ6,3,D,23\nJ6,4,E,6\nJ6,5,F,32\nJ7,0,A,2\nJ7,1,B,44\nJ7,2,C,39\nJ7,3,D,84\nJ7,4,E,80\nJ7,5,F,81\nJ8,0,A,14\nJ8,1,B,23\nJ8,2,C,31\nJ8,3,D,94\nJ8,4,E,95\nJ8,5,F,16\nJ9,0,A,54\nJ9,1,B,67\nJ9,2,C,13\nJ9,3,D,49\nJ9,4,E,17\nJ9,5,F,69\nJ10,0,A,43\nJ10,1,B,32\nJ10,2,C,9\nJ10,3,D,5\nJ10,4,E,82\nJ10,5,F,12\nJ11,0,A,52\nJ11,1,B,31\nJ11,2,C,11\nJ11,3,D,69\nJ11,4,E,10\nJ11,5,F,59\nJ12,0,A,10\nJ12,1,B,17\nJ12,2,C,45\nJ12,3,D,2\nJ12,4,E,5\nJ12,5,F,13\n\nYou can just follow this simple JSON layout when you send the actual schedule — nothing fancy, just a tidy form that lists each garment (job) and the tasks it goes through with timings and machines. Here’s the shape I expect:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of it like a little checklist: \"solution\" holds all the garments, each garment has a \"job\" identifier and a \"tasks\" list, and each task entry tells you which step it is (\"task\"), when that step begins (\"start\"), which station handles it (\"machine\"), and how long it takes (\"duration\"). Super casual — it's just a way to keep everything consistent.\n\nThis JSON is just a sketch of the shape I need, not the actual scheduled times. Please use the exact identifiers from the instance input — do not rename them or invent new labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 6, "nr_jobs": 12, "jobs": [ [ [ 0, 1 ], [ 1, 94 ], [ 2, 38 ], [ 3, 19 ], [ 4, 23 ], [ 5, 89 ] ], [ [ 0, 20 ], [ 1, 17 ], [ 2, 20 ], [ 3, 56 ], [ 4, 8 ], [ 5, 32 ] ], [ [ 0, 51 ], [ 1, 35 ], [ 2, 63 ], [ 3, 2 ], [ 4, 64 ], [ 5, 52 ] ], [ [ 0, 8 ], [ 1, 54 ], [ 2, 39 ], [ 3, 70 ], [ 4, 5 ], [ 5, 27 ] ], [ [ 0, 54 ], [ 1, 83 ], [ 2, 26 ], [ 3, 47 ], [ 4, 29 ], [ 5, 68 ] ], [ [ 0, 90 ], [ 1, 83 ], [ 2, 84 ], [ 3, 23 ], [ 4, 6 ], [ 5, 32 ] ], [ [ 0, 2 ], [ 1, 44 ], [ 2, 39 ], [ 3, 84 ], [ 4, 80 ], [ 5, 81 ] ], [ [ 0, 14 ], [ 1, 23 ], [ 2, 31 ], [ 3, 94 ], [ 4, 95 ], [ 5, 16 ] ], [ [ 0, 54 ], [ 1, 67 ], [ 2, 13 ], [ 3, 49 ], [ 4, 17 ], [ 5, 69 ] ], [ [ 0, 43 ], [ 1, 32 ], [ 2, 9 ], [ 3, 5 ], [ 4, 82 ], [ 5, 12 ] ], [ [ 0, 52 ], [ 1, 31 ], [ 2, 11 ], [ 3, 69 ], [ 4, 10 ], [ 5, 59 ] ], [ [ 0, 10 ], [ 1, 17 ], [ 2, 45 ], [ 3, 2 ], [ 4, 5 ], [ 5, 13 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 179, "machine": 0, "duration": 1 }, { "task": 1, "start": 231, "machine": 1, "duration": 94 }, { "task": 2, "start": 325, "machine": 2, "duration": 38 }, { "task": 3, "start": 365, "machine": 3, "duration": 19 }, { "task": 4, "start": 384, "machine": 4, "duration": 23 }, { "task": 5, "start": 415, "machine": 5, "duration": 89 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 2, "machine": 0, "duration": 20 }, { "task": 1, "start": 46, "machine": 1, "duration": 17 }, { "task": 2, "start": 63, "machine": 2, "duration": 20 }, { "task": 3, "start": 83, "machine": 3, "duration": 56 }, { "task": 4, "start": 139, "machine": 4, "duration": 8 }, { "task": 5, "start": 147, "machine": 5, "duration": 32 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 128, "machine": 0, "duration": 51 }, { "task": 1, "start": 179, "machine": 1, "duration": 35 }, { "task": 2, "start": 214, "machine": 2, "duration": 63 }, { "task": 3, "start": 277, "machine": 3, "duration": 2 }, { "task": 4, "start": 284, "machine": 4, "duration": 64 }, { "task": 5, "start": 350, "machine": 5, "duration": 52 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 294, "machine": 0, "duration": 8 }, { "task": 1, "start": 546, "machine": 1, "duration": 54 }, { "task": 2, "start": 600, "machine": 2, "duration": 39 }, { "task": 3, "start": 639, "machine": 3, "duration": 70 }, { "task": 4, "start": 709, "machine": 4, "duration": 5 }, { "task": 5, "start": 714, "machine": 5, "duration": 27 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 345, "machine": 0, "duration": 54 }, { "task": 1, "start": 431, "machine": 1, "duration": 83 }, { "task": 2, "start": 515, "machine": 2, "duration": 26 }, { "task": 3, "start": 541, "machine": 3, "duration": 47 }, { "task": 4, "start": 589, "machine": 4, "duration": 29 }, { "task": 5, "start": 633, "machine": 5, "duration": 68 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 204, "machine": 0, "duration": 90 }, { "task": 1, "start": 348, "machine": 1, "duration": 83 }, { "task": 2, "start": 431, "machine": 2, "duration": 84 }, { "task": 3, "start": 515, "machine": 3, "duration": 23 }, { "task": 4, "start": 583, "machine": 4, "duration": 6 }, { "task": 5, "start": 601, "machine": 5, "duration": 32 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 2 }, { "task": 1, "start": 2, "machine": 1, "duration": 44 }, { "task": 2, "start": 83, "machine": 2, "duration": 39 }, { "task": 3, "start": 279, "machine": 3, "duration": 84 }, { "task": 4, "start": 407, "machine": 4, "duration": 80 }, { "task": 5, "start": 504, "machine": 5, "duration": 81 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 190, "machine": 0, "duration": 14 }, { "task": 1, "start": 325, "machine": 1, "duration": 23 }, { "task": 2, "start": 363, "machine": 2, "duration": 31 }, { "task": 3, "start": 394, "machine": 3, "duration": 94 }, { "task": 4, "start": 488, "machine": 4, "duration": 95 }, { "task": 5, "start": 585, "machine": 5, "duration": 16 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 22, "machine": 0, "duration": 54 }, { "task": 1, "start": 76, "machine": 1, "duration": 67 }, { "task": 2, "start": 143, "machine": 2, "duration": 13 }, { "task": 3, "start": 156, "machine": 3, "duration": 49 }, { "task": 4, "start": 205, "machine": 4, "duration": 17 }, { "task": 5, "start": 222, "machine": 5, "duration": 69 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 302, "machine": 0, "duration": 43 }, { "task": 1, "start": 514, "machine": 1, "duration": 32 }, { "task": 2, "start": 546, "machine": 2, "duration": 9 }, { "task": 3, "start": 588, "machine": 3, "duration": 5 }, { "task": 4, "start": 618, "machine": 4, "duration": 82 }, { "task": 5, "start": 701, "machine": 5, "duration": 12 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 76, "machine": 0, "duration": 52 }, { "task": 1, "start": 143, "machine": 1, "duration": 31 }, { "task": 2, "start": 174, "machine": 2, "duration": 11 }, { "task": 3, "start": 205, "machine": 3, "duration": 69 }, { "task": 4, "start": 274, "machine": 4, "duration": 10 }, { "task": 5, "start": 291, "machine": 5, "duration": 59 } ] }, { "job": 11, "tasks": [ { "task": 0, "start": 180, "machine": 0, "duration": 10 }, { "task": 1, "start": 214, "machine": 1, "duration": 17 }, { "task": 2, "start": 277, "machine": 2, "duration": 45 }, { "task": 3, "start": 363, "machine": 3, "duration": 2 }, { "task": 4, "start": 365, "machine": 4, "duration": 5 }, { "task": 5, "start": 402, "machine": 5, "duration": 13 } ] } ], "obj": 741.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 12, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11", "J12" ], "machines": [ "A", "B", "C", "D", "E", "F" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 94 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 38 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 19 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 23 }, { "job_id": "J1", "task_id": 5, "machine_id": "F", "duration": 89 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 20 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 17 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 20 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 56 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 8 }, { "job_id": "J2", "task_id": 5, "machine_id": "F", "duration": 32 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 51 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 35 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 63 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 2 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 64 }, { "job_id": "J3", "task_id": 5, "machine_id": "F", "duration": 52 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 8 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 54 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 39 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 70 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 5 }, { "job_id": "J4", "task_id": 5, "machine_id": "F", "duration": 27 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 54 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 83 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 26 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 47 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 29 }, { "job_id": "J5", "task_id": 5, "machine_id": "F", "duration": 68 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 90 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 83 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 84 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 23 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 6 }, { "job_id": "J6", "task_id": 5, "machine_id": "F", "duration": 32 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 2 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 44 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 39 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 84 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 80 }, { "job_id": "J7", "task_id": 5, "machine_id": "F", "duration": 81 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 14 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 23 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 31 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 94 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 95 }, { "job_id": "J8", "task_id": 5, "machine_id": "F", "duration": 16 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 54 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 67 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 13 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 49 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 17 }, { "job_id": "J9", "task_id": 5, "machine_id": "F", "duration": 69 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 43 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 32 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 9 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 5 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 82 }, { "job_id": "J10", "task_id": 5, "machine_id": "F", "duration": 12 }, { "job_id": "J11", "task_id": 0, "machine_id": "A", "duration": 52 }, { "job_id": "J11", "task_id": 1, "machine_id": "B", "duration": 31 }, { "job_id": "J11", "task_id": 2, "machine_id": "C", "duration": 11 }, { "job_id": "J11", "task_id": 3, "machine_id": "D", "duration": 69 }, { "job_id": "J11", "task_id": 4, "machine_id": "E", "duration": 10 }, { "job_id": "J11", "task_id": 5, "machine_id": "F", "duration": 59 }, { "job_id": "J12", "task_id": 0, "machine_id": "A", "duration": 10 }, { "job_id": "J12", "task_id": 1, "machine_id": "B", "duration": 17 }, { "job_id": "J12", "task_id": 2, "machine_id": "C", "duration": 45 }, { "job_id": "J12", "task_id": 3, "machine_id": "D", "duration": 2 }, { "job_id": "J12", "task_id": 4, "machine_id": "E", "duration": 5 }, { "job_id": "J12", "task_id": 5, "machine_id": "F", "duration": 13 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 179, "machine": "A", "duration": 1 }, { "task": 1, "start": 231, "machine": "B", "duration": 94 }, { "task": 2, "start": 325, "machine": "C", "duration": 38 }, { "task": 3, "start": 365, "machine": "D", "duration": 19 }, { "task": 4, "start": 384, "machine": "E", "duration": 23 }, { "task": 5, "start": 415, "machine": "F", "duration": 89 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 2, "machine": "A", "duration": 20 }, { "task": 1, "start": 46, "machine": "B", "duration": 17 }, { "task": 2, "start": 63, "machine": "C", "duration": 20 }, { "task": 3, "start": 83, "machine": "D", "duration": 56 }, { "task": 4, "start": 139, "machine": "E", "duration": 8 }, { "task": 5, "start": 147, "machine": "F", "duration": 32 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 128, "machine": "A", "duration": 51 }, { "task": 1, "start": 179, "machine": "B", "duration": 35 }, { "task": 2, "start": 214, "machine": "C", "duration": 63 }, { "task": 3, "start": 277, "machine": "D", "duration": 2 }, { "task": 4, "start": 284, "machine": "E", "duration": 64 }, { "task": 5, "start": 350, "machine": "F", "duration": 52 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 294, "machine": "A", "duration": 8 }, { "task": 1, "start": 546, "machine": "B", "duration": 54 }, { "task": 2, "start": 600, "machine": "C", "duration": 39 }, { "task": 3, "start": 639, "machine": "D", "duration": 70 }, { "task": 4, "start": 709, "machine": "E", "duration": 5 }, { "task": 5, "start": 714, "machine": "F", "duration": 27 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 345, "machine": "A", "duration": 54 }, { "task": 1, "start": 431, "machine": "B", "duration": 83 }, { "task": 2, "start": 515, "machine": "C", "duration": 26 }, { "task": 3, "start": 541, "machine": "D", "duration": 47 }, { "task": 4, "start": 589, "machine": "E", "duration": 29 }, { "task": 5, "start": 633, "machine": "F", "duration": 68 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 204, "machine": "A", "duration": 90 }, { "task": 1, "start": 348, "machine": "B", "duration": 83 }, { "task": 2, "start": 431, "machine": "C", "duration": 84 }, { "task": 3, "start": 515, "machine": "D", "duration": 23 }, { "task": 4, "start": 583, "machine": "E", "duration": 6 }, { "task": 5, "start": 601, "machine": "F", "duration": 32 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 2 }, { "task": 1, "start": 2, "machine": "B", "duration": 44 }, { "task": 2, "start": 83, "machine": "C", "duration": 39 }, { "task": 3, "start": 279, "machine": "D", "duration": 84 }, { "task": 4, "start": 407, "machine": "E", "duration": 80 }, { "task": 5, "start": 504, "machine": "F", "duration": 81 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 190, "machine": "A", "duration": 14 }, { "task": 1, "start": 325, "machine": "B", "duration": 23 }, { "task": 2, "start": 363, "machine": "C", "duration": 31 }, { "task": 3, "start": 394, "machine": "D", "duration": 94 }, { "task": 4, "start": 488, "machine": "E", "duration": 95 }, { "task": 5, "start": 585, "machine": "F", "duration": 16 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 22, "machine": "A", "duration": 54 }, { "task": 1, "start": 76, "machine": "B", "duration": 67 }, { "task": 2, "start": 143, "machine": "C", "duration": 13 }, { "task": 3, "start": 156, "machine": "D", "duration": 49 }, { "task": 4, "start": 205, "machine": "E", "duration": 17 }, { "task": 5, "start": 222, "machine": "F", "duration": 69 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 302, "machine": "A", "duration": 43 }, { "task": 1, "start": 514, "machine": "B", "duration": 32 }, { "task": 2, "start": 546, "machine": "C", "duration": 9 }, { "task": 3, "start": 588, "machine": "D", "duration": 5 }, { "task": 4, "start": 618, "machine": "E", "duration": 82 }, { "task": 5, "start": 701, "machine": "F", "duration": 12 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 76, "machine": "A", "duration": 52 }, { "task": 1, "start": 143, "machine": "B", "duration": 31 }, { "task": 2, "start": 174, "machine": "C", "duration": 11 }, { "task": 3, "start": 205, "machine": "D", "duration": 69 }, { "task": 4, "start": 274, "machine": "E", "duration": 10 }, { "task": 5, "start": 291, "machine": "F", "duration": 59 } ] }, { "job": "J12", "tasks": [ { "task": 0, "start": 180, "machine": "A", "duration": 10 }, { "task": 1, "start": 214, "machine": "B", "duration": 17 }, { "task": 2, "start": 277, "machine": "C", "duration": 45 }, { "task": 3, "start": 363, "machine": "D", "duration": 2 }, { "task": 4, "start": 365, "machine": "E", "duration": 5 }, { "task": 5, "start": 402, "machine": "F", "duration": 13 } ] } ], "context_index": 27, "input_format": "csv", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "There’s this constant puzzle at the studio: scenes move from shooting to a rough cut and finally to color, and they must all follow that same route. The task is picking the sequence so that no single editing or grading room gets two scenes at the same time. What matters is finishing the whole package as quickly as possible — checked by the time the last scene exits color grading. Every scene has to go through each of the three stages exactly once; details about durations and rooms follow below.\n\nBelow are the details for the 10 scenes and the 6 rooms: scene ids J1, J2, J3, J4, J5, J6, J7, J8, J9, J10; room ids 1, 2, 3, 4, 5, 6.\nScene J1, stage 0, requires room 1 for 1.\nScene J1, stage 1, requires room 2 for 8.\nScene J1, stage 2, requires room 3 for 14.\nScene J1, stage 3, requires room 4 for 65.\nScene J1, stage 4, requires room 5 for 76.\nScene J1, stage 5, requires room 6 for 11.\nScene J2, stage 0, requires room 1 for 25.\nScene J2, stage 1, requires room 2 for 84.\nScene J2, stage 2, requires room 3 for 87.\nScene J2, stage 3, requires room 4 for 49.\nScene J2, stage 4, requires room 5 for 46.\nScene J2, stage 5, requires room 6 for 84.\nScene J3, stage 0, requires room 1 for 34.\nScene J3, stage 1, requires room 2 for 39.\nScene J3, stage 2, requires room 3 for 69.\nScene J3, stage 3, requires room 4 for 55.\nScene J3, stage 4, requires room 5 for 31.\nScene J3, stage 5, requires room 6 for 53.\nScene J4, stage 0, requires room 1 for 46.\nScene J4, stage 1, requires room 2 for 61.\nScene J4, stage 2, requires room 3 for 80.\nScene J4, stage 3, requires room 4 for 39.\nScene J4, stage 4, requires room 5 for 64.\nScene J4, stage 5, requires room 6 for 20.\nScene J5, stage 0, requires room 1 for 39.\nScene J5, stage 1, requires room 2 for 36.\nScene J5, stage 2, requires room 3 for 35.\nScene J5, stage 3, requires room 4 for 12.\nScene J5, stage 4, requires room 5 for 70.\nScene J5, stage 5, requires room 6 for 38.\nScene J6, stage 0, requires room 1 for 81.\nScene J6, stage 1, requires room 2 for 59.\nScene J6, stage 2, requires room 3 for 11.\nScene J6, stage 3, requires room 4 for 28.\nScene J6, stage 4, requires room 5 for 79.\nScene J6, stage 5, requires room 6 for 65.\nScene J7, stage 0, requires room 1 for 65.\nScene J7, stage 1, requires room 2 for 20.\nScene J7, stage 2, requires room 3 for 38.\nScene J7, stage 3, requires room 4 for 21.\nScene J7, stage 4, requires room 5 for 5.\nScene J7, stage 5, requires room 6 for 79.\nScene J8, stage 0, requires room 1 for 86.\nScene J8, stage 1, requires room 2 for 98.\nScene J8, stage 2, requires room 3 for 95.\nScene J8, stage 3, requires room 4 for 2.\nScene J8, stage 4, requires room 5 for 58.\nScene J8, stage 5, requires room 6 for 5.\nScene J9, stage 0, requires room 1 for 81.\nScene J9, stage 1, requires room 2 for 12.\nScene J9, stage 2, requires room 3 for 88.\nScene J9, stage 3, requires room 4 for 96.\nScene J9, stage 4, requires room 5 for 41.\nScene J9, stage 5, requires room 6 for 96.\nScene J10, stage 0, requires room 1 for 79.\nScene J10, stage 1, requires room 2 for 49.\nScene J10, stage 2, requires room 3 for 57.\nScene J10, stage 3, requires room 4 for 93.\nScene J10, stage 4, requires room 5 for 73.\nScene J10, stage 5, requires room 6 for 18.\nThe aim is to sequence these entries so no room is double-booked and the last scene exits color grading as soon as possible.\n\nOh, and one more thing — when you send the schedule back, it'd be great if you follow a simple JSON layout so it's easy to read and parse. Something like this:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThis just shows the shape I expect: each top-level entry is a job (a scene), inside each job there's a list of tasks (the three stages), and each task has when it starts, which room it uses, and how long it takes. It's just a template — not the actual schedule.\n\nPlease use the exact identifiers from the instance input (don’t rename them or invent new ones). \n- for example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 6, "nr_jobs": 10, "jobs": [ [ [ 0, 1 ], [ 1, 8 ], [ 2, 14 ], [ 3, 65 ], [ 4, 76 ], [ 5, 11 ] ], [ [ 0, 25 ], [ 1, 84 ], [ 2, 87 ], [ 3, 49 ], [ 4, 46 ], [ 5, 84 ] ], [ [ 0, 34 ], [ 1, 39 ], [ 2, 69 ], [ 3, 55 ], [ 4, 31 ], [ 5, 53 ] ], [ [ 0, 46 ], [ 1, 61 ], [ 2, 80 ], [ 3, 39 ], [ 4, 64 ], [ 5, 20 ] ], [ [ 0, 39 ], [ 1, 36 ], [ 2, 35 ], [ 3, 12 ], [ 4, 70 ], [ 5, 38 ] ], [ [ 0, 81 ], [ 1, 59 ], [ 2, 11 ], [ 3, 28 ], [ 4, 79 ], [ 5, 65 ] ], [ [ 0, 65 ], [ 1, 20 ], [ 2, 38 ], [ 3, 21 ], [ 4, 5 ], [ 5, 79 ] ], [ [ 0, 86 ], [ 1, 98 ], [ 2, 95 ], [ 3, 2 ], [ 4, 58 ], [ 5, 5 ] ], [ [ 0, 81 ], [ 1, 12 ], [ 2, 88 ], [ 3, 96 ], [ 4, 41 ], [ 5, 96 ] ], [ [ 0, 79 ], [ 1, 49 ], [ 2, 57 ], [ 3, 93 ], [ 4, 73 ], [ 5, 18 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 8 }, { "task": 2, "start": 9, "machine": 2, "duration": 14 }, { "task": 3, "start": 23, "machine": 3, "duration": 65 }, { "task": 4, "start": 88, "machine": 4, "duration": 76 }, { "task": 5, "start": 164, "machine": 5, "duration": 11 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 116, "machine": 0, "duration": 25 }, { "task": 1, "start": 141, "machine": 1, "duration": 84 }, { "task": 2, "start": 231, "machine": 2, "duration": 87 }, { "task": 3, "start": 357, "machine": 3, "duration": 49 }, { "task": 4, "start": 447, "machine": 4, "duration": 46 }, { "task": 5, "start": 529, "machine": 5, "duration": 84 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 34 }, { "task": 1, "start": 35, "machine": 1, "duration": 39 }, { "task": 2, "start": 74, "machine": 2, "duration": 69 }, { "task": 3, "start": 143, "machine": 3, "duration": 55 }, { "task": 4, "start": 198, "machine": 4, "duration": 31 }, { "task": 5, "start": 229, "machine": 5, "duration": 53 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 301, "machine": 0, "duration": 46 }, { "task": 1, "start": 350, "machine": 1, "duration": 61 }, { "task": 2, "start": 411, "machine": 2, "duration": 80 }, { "task": 3, "start": 500, "machine": 3, "duration": 39 }, { "task": 4, "start": 573, "machine": 4, "duration": 64 }, { "task": 5, "start": 637, "machine": 5, "duration": 20 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 498, "machine": 0, "duration": 39 }, { "task": 1, "start": 551, "machine": 1, "duration": 36 }, { "task": 2, "start": 589, "machine": 2, "duration": 35 }, { "task": 3, "start": 624, "machine": 3, "duration": 12 }, { "task": 4, "start": 642, "machine": 4, "duration": 70 }, { "task": 5, "start": 736, "machine": 5, "duration": 38 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 141, "machine": 0, "duration": 81 }, { "task": 1, "start": 225, "machine": 1, "duration": 59 }, { "task": 2, "start": 318, "machine": 2, "duration": 11 }, { "task": 3, "start": 329, "machine": 3, "duration": 28 }, { "task": 4, "start": 368, "machine": 4, "duration": 79 }, { "task": 5, "start": 464, "machine": 5, "duration": 65 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 433, "machine": 0, "duration": 65 }, { "task": 1, "start": 531, "machine": 1, "duration": 20 }, { "task": 2, "start": 551, "machine": 2, "duration": 38 }, { "task": 3, "start": 589, "machine": 3, "duration": 21 }, { "task": 4, "start": 637, "machine": 4, "duration": 5 }, { "task": 5, "start": 657, "machine": 5, "duration": 79 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 347, "machine": 0, "duration": 86 }, { "task": 1, "start": 433, "machine": 1, "duration": 98 }, { "task": 2, "start": 624, "machine": 2, "duration": 95 }, { "task": 3, "start": 719, "machine": 3, "duration": 2 }, { "task": 4, "start": 721, "machine": 4, "duration": 58 }, { "task": 5, "start": 779, "machine": 5, "duration": 5 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 35, "machine": 0, "duration": 81 }, { "task": 1, "start": 116, "machine": 1, "duration": 12 }, { "task": 2, "start": 143, "machine": 2, "duration": 88 }, { "task": 3, "start": 231, "machine": 3, "duration": 96 }, { "task": 4, "start": 327, "machine": 4, "duration": 41 }, { "task": 5, "start": 368, "machine": 5, "duration": 96 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 222, "machine": 0, "duration": 79 }, { "task": 1, "start": 301, "machine": 1, "duration": 49 }, { "task": 2, "start": 350, "machine": 2, "duration": 57 }, { "task": 3, "start": 407, "machine": 3, "duration": 93 }, { "task": 4, "start": 500, "machine": 4, "duration": 73 }, { "task": 5, "start": 613, "machine": 5, "duration": 18 } ] } ], "obj": 784.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 10, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10" ], "machines": [ 1, 2, 3, 4, 5, 6 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 2, "duration": 8 }, { "job_id": "J1", "task_id": 2, "machine_id": 3, "duration": 14 }, { "job_id": "J1", "task_id": 3, "machine_id": 4, "duration": 65 }, { "job_id": "J1", "task_id": 4, "machine_id": 5, "duration": 76 }, { "job_id": "J1", "task_id": 5, "machine_id": 6, "duration": 11 }, { "job_id": "J2", "task_id": 0, "machine_id": 1, "duration": 25 }, { "job_id": "J2", "task_id": 1, "machine_id": 2, "duration": 84 }, { "job_id": "J2", "task_id": 2, "machine_id": 3, "duration": 87 }, { "job_id": "J2", "task_id": 3, "machine_id": 4, "duration": 49 }, { "job_id": "J2", "task_id": 4, "machine_id": 5, "duration": 46 }, { "job_id": "J2", "task_id": 5, "machine_id": 6, "duration": 84 }, { "job_id": "J3", "task_id": 0, "machine_id": 1, "duration": 34 }, { "job_id": "J3", "task_id": 1, "machine_id": 2, "duration": 39 }, { "job_id": "J3", "task_id": 2, "machine_id": 3, "duration": 69 }, { "job_id": "J3", "task_id": 3, "machine_id": 4, "duration": 55 }, { "job_id": "J3", "task_id": 4, "machine_id": 5, "duration": 31 }, { "job_id": "J3", "task_id": 5, "machine_id": 6, "duration": 53 }, { "job_id": "J4", "task_id": 0, "machine_id": 1, "duration": 46 }, { "job_id": "J4", "task_id": 1, "machine_id": 2, "duration": 61 }, { "job_id": "J4", "task_id": 2, "machine_id": 3, "duration": 80 }, { "job_id": "J4", "task_id": 3, "machine_id": 4, "duration": 39 }, { "job_id": "J4", "task_id": 4, "machine_id": 5, "duration": 64 }, { "job_id": "J4", "task_id": 5, "machine_id": 6, "duration": 20 }, { "job_id": "J5", "task_id": 0, "machine_id": 1, "duration": 39 }, { "job_id": "J5", "task_id": 1, "machine_id": 2, "duration": 36 }, { "job_id": "J5", "task_id": 2, "machine_id": 3, "duration": 35 }, { "job_id": "J5", "task_id": 3, "machine_id": 4, "duration": 12 }, { "job_id": "J5", "task_id": 4, "machine_id": 5, "duration": 70 }, { "job_id": "J5", "task_id": 5, "machine_id": 6, "duration": 38 }, { "job_id": "J6", "task_id": 0, "machine_id": 1, "duration": 81 }, { "job_id": "J6", "task_id": 1, "machine_id": 2, "duration": 59 }, { "job_id": "J6", "task_id": 2, "machine_id": 3, "duration": 11 }, { "job_id": "J6", "task_id": 3, "machine_id": 4, "duration": 28 }, { "job_id": "J6", "task_id": 4, "machine_id": 5, "duration": 79 }, { "job_id": "J6", "task_id": 5, "machine_id": 6, "duration": 65 }, { "job_id": "J7", "task_id": 0, "machine_id": 1, "duration": 65 }, { "job_id": "J7", "task_id": 1, "machine_id": 2, "duration": 20 }, { "job_id": "J7", "task_id": 2, "machine_id": 3, "duration": 38 }, { "job_id": "J7", "task_id": 3, "machine_id": 4, "duration": 21 }, { "job_id": "J7", "task_id": 4, "machine_id": 5, "duration": 5 }, { "job_id": "J7", "task_id": 5, "machine_id": 6, "duration": 79 }, { "job_id": "J8", "task_id": 0, "machine_id": 1, "duration": 86 }, { "job_id": "J8", "task_id": 1, "machine_id": 2, "duration": 98 }, { "job_id": "J8", "task_id": 2, "machine_id": 3, "duration": 95 }, { "job_id": "J8", "task_id": 3, "machine_id": 4, "duration": 2 }, { "job_id": "J8", "task_id": 4, "machine_id": 5, "duration": 58 }, { "job_id": "J8", "task_id": 5, "machine_id": 6, "duration": 5 }, { "job_id": "J9", "task_id": 0, "machine_id": 1, "duration": 81 }, { "job_id": "J9", "task_id": 1, "machine_id": 2, "duration": 12 }, { "job_id": "J9", "task_id": 2, "machine_id": 3, "duration": 88 }, { "job_id": "J9", "task_id": 3, "machine_id": 4, "duration": 96 }, { "job_id": "J9", "task_id": 4, "machine_id": 5, "duration": 41 }, { "job_id": "J9", "task_id": 5, "machine_id": 6, "duration": 96 }, { "job_id": "J10", "task_id": 0, "machine_id": 1, "duration": 79 }, { "job_id": "J10", "task_id": 1, "machine_id": 2, "duration": 49 }, { "job_id": "J10", "task_id": 2, "machine_id": 3, "duration": 57 }, { "job_id": "J10", "task_id": 3, "machine_id": 4, "duration": 93 }, { "job_id": "J10", "task_id": 4, "machine_id": 5, "duration": 73 }, { "job_id": "J10", "task_id": 5, "machine_id": 6, "duration": 18 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 1, "duration": 1 }, { "task": 1, "start": 1, "machine": 2, "duration": 8 }, { "task": 2, "start": 9, "machine": 3, "duration": 14 }, { "task": 3, "start": 23, "machine": 4, "duration": 65 }, { "task": 4, "start": 88, "machine": 5, "duration": 76 }, { "task": 5, "start": 164, "machine": 6, "duration": 11 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 116, "machine": 1, "duration": 25 }, { "task": 1, "start": 141, "machine": 2, "duration": 84 }, { "task": 2, "start": 231, "machine": 3, "duration": 87 }, { "task": 3, "start": 357, "machine": 4, "duration": 49 }, { "task": 4, "start": 447, "machine": 5, "duration": 46 }, { "task": 5, "start": 529, "machine": 6, "duration": 84 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 1, "machine": 1, "duration": 34 }, { "task": 1, "start": 35, "machine": 2, "duration": 39 }, { "task": 2, "start": 74, "machine": 3, "duration": 69 }, { "task": 3, "start": 143, "machine": 4, "duration": 55 }, { "task": 4, "start": 198, "machine": 5, "duration": 31 }, { "task": 5, "start": 229, "machine": 6, "duration": 53 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 301, "machine": 1, "duration": 46 }, { "task": 1, "start": 350, "machine": 2, "duration": 61 }, { "task": 2, "start": 411, "machine": 3, "duration": 80 }, { "task": 3, "start": 500, "machine": 4, "duration": 39 }, { "task": 4, "start": 573, "machine": 5, "duration": 64 }, { "task": 5, "start": 637, "machine": 6, "duration": 20 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 498, "machine": 1, "duration": 39 }, { "task": 1, "start": 551, "machine": 2, "duration": 36 }, { "task": 2, "start": 589, "machine": 3, "duration": 35 }, { "task": 3, "start": 624, "machine": 4, "duration": 12 }, { "task": 4, "start": 642, "machine": 5, "duration": 70 }, { "task": 5, "start": 736, "machine": 6, "duration": 38 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 141, "machine": 1, "duration": 81 }, { "task": 1, "start": 225, "machine": 2, "duration": 59 }, { "task": 2, "start": 318, "machine": 3, "duration": 11 }, { "task": 3, "start": 329, "machine": 4, "duration": 28 }, { "task": 4, "start": 368, "machine": 5, "duration": 79 }, { "task": 5, "start": 464, "machine": 6, "duration": 65 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 433, "machine": 1, "duration": 65 }, { "task": 1, "start": 531, "machine": 2, "duration": 20 }, { "task": 2, "start": 551, "machine": 3, "duration": 38 }, { "task": 3, "start": 589, "machine": 4, "duration": 21 }, { "task": 4, "start": 637, "machine": 5, "duration": 5 }, { "task": 5, "start": 657, "machine": 6, "duration": 79 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 347, "machine": 1, "duration": 86 }, { "task": 1, "start": 433, "machine": 2, "duration": 98 }, { "task": 2, "start": 624, "machine": 3, "duration": 95 }, { "task": 3, "start": 719, "machine": 4, "duration": 2 }, { "task": 4, "start": 721, "machine": 5, "duration": 58 }, { "task": 5, "start": 779, "machine": 6, "duration": 5 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 35, "machine": 1, "duration": 81 }, { "task": 1, "start": 116, "machine": 2, "duration": 12 }, { "task": 2, "start": 143, "machine": 3, "duration": 88 }, { "task": 3, "start": 231, "machine": 4, "duration": 96 }, { "task": 4, "start": 327, "machine": 5, "duration": 41 }, { "task": 5, "start": 368, "machine": 6, "duration": 96 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 222, "machine": 1, "duration": 79 }, { "task": 1, "start": 301, "machine": 2, "duration": 49 }, { "task": 2, "start": 350, "machine": 3, "duration": 57 }, { "task": 3, "start": 407, "machine": 4, "duration": 93 }, { "task": 4, "start": 500, "machine": 5, "duration": 73 }, { "task": 5, "start": 613, "machine": 6, "duration": 18 } ] } ], "context_index": 28, "input_format": "nl", "input_index_base": 1 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "As the teacher juggling multiple lab groups, the routine is the same for everyone — setup, run the experiment, then clean up — and no bench can take two groups at once. What needs deciding is the order and timing of those starts so the whole rotation wraps up fast. The thing to look at is the clock time when the final group is done cleaning: whoever finishes sooner wins in practice. Each group has set durations for the three parts, nothing is omitted or repeated, and the exact numbers are given below.\n\nThere are 11 student groups and 5 lab benches; the group ids are J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11 and the bench ids are A, B, C, D, E.\n\n| group_id | step_index | bench_id | duration_minutes |\n|---|---|---|---|\n| J1 | 0 | A | 1 |\n| J1 | 1 | B | 21 |\n| J1 | 2 | C | 89 |\n| J1 | 3 | D | 11 |\n| J1 | 4 | E | 30 |\n| J2 | 0 | A | 33 |\n| J2 | 1 | B | 30 |\n| J2 | 2 | C | 52 |\n| J2 | 3 | D | 55 |\n| J2 | 4 | E | 43 |\n| J3 | 0 | A | 84 |\n| J3 | 1 | B | 36 |\n| J3 | 2 | C | 17 |\n| J3 | 3 | D | 42 |\n| J3 | 4 | E | 74 |\n| J4 | 0 | A | 8 |\n| J4 | 1 | B | 98 |\n| J4 | 2 | C | 54 |\n| J4 | 3 | D | 84 |\n| J4 | 4 | E | 68 |\n| J5 | 0 | A | 23 |\n| J5 | 1 | B | 8 |\n| J5 | 2 | C | 23 |\n| J5 | 3 | D | 13 |\n| J5 | 4 | E | 23 |\n| J6 | 0 | A | 88 |\n| J6 | 1 | B | 44 |\n| J6 | 2 | C | 77 |\n| J6 | 3 | D | 12 |\n| J6 | 4 | E | 9 |\n| J7 | 0 | A | 72 |\n| J7 | 1 | B | 36 |\n| J7 | 2 | C | 37 |\n| J7 | 3 | D | 32 |\n| J7 | 4 | E | 53 |\n| J8 | 0 | A | 97 |\n| J8 | 1 | B | 29 |\n| J8 | 2 | C | 94 |\n| J8 | 3 | D | 37 |\n| J8 | 4 | E | 57 |\n| J9 | 0 | A | 29 |\n| J9 | 1 | B | 78 |\n| J9 | 2 | C | 59 |\n| J9 | 3 | D | 73 |\n| J9 | 4 | E | 61 |\n| J10 | 0 | A | 9 |\n| J10 | 1 | B | 22 |\n| J10 | 2 | C | 93 |\n| J10 | 3 | D | 9 |\n| J10 | 4 | E | 55 |\n| J11 | 0 | A | 65 |\n| J11 | 1 | B | 44 |\n| J11 | 2 | C | 64 |\n| J11 | 3 | D | 25 |\n| J11 | 4 | E | 15 |\n\nKeep the goal in mind: minimize the clock time when the final group finishes cleaning.\n\nAlso, when you send the actual plan, please put it in this simple JSON shape so it's easy to read and check:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of that JSON as a little form: \"solution\" holds a list of groups (jobs), each group gets a job id and a list of its steps. Each step (task) just records which numbered step it is, when it starts, which bench (machine) it uses, and how long it takes. It's just a sketch of the shape I need — not the real filled-in answer.\n\nPlease be sure to use the exact identifiers from the instance input — don't rename them or invent new labels. \n- for example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 5, "nr_jobs": 11, "jobs": [ [ [ 0, 1 ], [ 1, 21 ], [ 2, 89 ], [ 3, 11 ], [ 4, 30 ] ], [ [ 0, 33 ], [ 1, 30 ], [ 2, 52 ], [ 3, 55 ], [ 4, 43 ] ], [ [ 0, 84 ], [ 1, 36 ], [ 2, 17 ], [ 3, 42 ], [ 4, 74 ] ], [ [ 0, 8 ], [ 1, 98 ], [ 2, 54 ], [ 3, 84 ], [ 4, 68 ] ], [ [ 0, 23 ], [ 1, 8 ], [ 2, 23 ], [ 3, 13 ], [ 4, 23 ] ], [ [ 0, 88 ], [ 1, 44 ], [ 2, 77 ], [ 3, 12 ], [ 4, 9 ] ], [ [ 0, 72 ], [ 1, 36 ], [ 2, 37 ], [ 3, 32 ], [ 4, 53 ] ], [ [ 0, 97 ], [ 1, 29 ], [ 2, 94 ], [ 3, 37 ], [ 4, 57 ] ], [ [ 0, 29 ], [ 1, 78 ], [ 2, 59 ], [ 3, 73 ], [ 4, 61 ] ], [ [ 0, 9 ], [ 1, 22 ], [ 2, 93 ], [ 3, 9 ], [ 4, 55 ] ], [ [ 0, 65 ], [ 1, 44 ], [ 2, 64 ], [ 3, 25 ], [ 4, 15 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 21 }, { "task": 2, "start": 22, "machine": 2, "duration": 89 }, { "task": 3, "start": 111, "machine": 3, "duration": 11 }, { "task": 4, "start": 122, "machine": 4, "duration": 30 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 204, "machine": 0, "duration": 33 }, { "task": 1, "start": 387, "machine": 1, "duration": 30 }, { "task": 2, "start": 465, "machine": 2, "duration": 52 }, { "task": 3, "start": 517, "machine": 3, "duration": 55 }, { "task": 4, "start": 621, "machine": 4, "duration": 43 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 31, "machine": 0, "duration": 84 }, { "task": 1, "start": 115, "machine": 1, "duration": 36 }, { "task": 2, "start": 170, "machine": 2, "duration": 17 }, { "task": 3, "start": 187, "machine": 3, "duration": 42 }, { "task": 4, "start": 229, "machine": 4, "duration": 74 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 124, "machine": 0, "duration": 8 }, { "task": 1, "start": 179, "machine": 1, "duration": 98 }, { "task": 2, "start": 280, "machine": 2, "duration": 54 }, { "task": 3, "start": 334, "machine": 3, "duration": 84 }, { "task": 4, "start": 419, "machine": 4, "duration": 68 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 399, "machine": 0, "duration": 23 }, { "task": 1, "start": 564, "machine": 1, "duration": 8 }, { "task": 2, "start": 581, "machine": 2, "duration": 23 }, { "task": 3, "start": 606, "machine": 3, "duration": 13 }, { "task": 4, "start": 664, "machine": 4, "duration": 23 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 422, "machine": 0, "duration": 88 }, { "task": 1, "start": 510, "machine": 1, "duration": 44 }, { "task": 2, "start": 604, "machine": 2, "duration": 77 }, { "task": 3, "start": 681, "machine": 3, "duration": 12 }, { "task": 4, "start": 693, "machine": 4, "duration": 9 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 132, "machine": 0, "duration": 72 }, { "task": 1, "start": 277, "machine": 1, "duration": 36 }, { "task": 2, "start": 334, "machine": 2, "duration": 37 }, { "task": 3, "start": 418, "machine": 3, "duration": 32 }, { "task": 4, "start": 487, "machine": 4, "duration": 53 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 237, "machine": 0, "duration": 97 }, { "task": 1, "start": 336, "machine": 1, "duration": 29 }, { "task": 2, "start": 371, "machine": 2, "duration": 94 }, { "task": 3, "start": 465, "machine": 3, "duration": 37 }, { "task": 4, "start": 540, "machine": 4, "duration": 57 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 2, "machine": 0, "duration": 29 }, { "task": 1, "start": 31, "machine": 1, "duration": 78 }, { "task": 2, "start": 111, "machine": 2, "duration": 59 }, { "task": 3, "start": 229, "machine": 3, "duration": 73 }, { "task": 4, "start": 303, "machine": 4, "duration": 61 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 115, "machine": 0, "duration": 9 }, { "task": 1, "start": 157, "machine": 1, "duration": 22 }, { "task": 2, "start": 187, "machine": 2, "duration": 93 }, { "task": 3, "start": 302, "machine": 3, "duration": 9 }, { "task": 4, "start": 364, "machine": 4, "duration": 55 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 334, "machine": 0, "duration": 65 }, { "task": 1, "start": 417, "machine": 1, "duration": 44 }, { "task": 2, "start": 517, "machine": 2, "duration": 64 }, { "task": 3, "start": 581, "machine": 3, "duration": 25 }, { "task": 4, "start": 606, "machine": 4, "duration": 15 } ] } ], "obj": 702.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 11, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11" ], "machines": [ "A", "B", "C", "D", "E" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 21 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 89 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 11 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 30 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 33 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 30 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 52 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 55 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 43 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 84 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 36 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 17 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 42 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 74 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 8 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 98 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 54 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 84 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 68 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 23 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 8 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 23 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 13 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 23 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 88 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 44 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 77 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 12 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 9 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 72 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 36 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 37 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 32 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 53 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 97 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 29 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 94 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 37 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 57 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 29 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 78 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 59 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 73 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 61 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 9 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 22 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 93 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 9 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 55 }, { "job_id": "J11", "task_id": 0, "machine_id": "A", "duration": 65 }, { "job_id": "J11", "task_id": 1, "machine_id": "B", "duration": 44 }, { "job_id": "J11", "task_id": 2, "machine_id": "C", "duration": 64 }, { "job_id": "J11", "task_id": 3, "machine_id": "D", "duration": 25 }, { "job_id": "J11", "task_id": 4, "machine_id": "E", "duration": 15 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 1 }, { "task": 1, "start": 1, "machine": "B", "duration": 21 }, { "task": 2, "start": 22, "machine": "C", "duration": 89 }, { "task": 3, "start": 111, "machine": "D", "duration": 11 }, { "task": 4, "start": 122, "machine": "E", "duration": 30 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 204, "machine": "A", "duration": 33 }, { "task": 1, "start": 387, "machine": "B", "duration": 30 }, { "task": 2, "start": 465, "machine": "C", "duration": 52 }, { "task": 3, "start": 517, "machine": "D", "duration": 55 }, { "task": 4, "start": 621, "machine": "E", "duration": 43 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 31, "machine": "A", "duration": 84 }, { "task": 1, "start": 115, "machine": "B", "duration": 36 }, { "task": 2, "start": 170, "machine": "C", "duration": 17 }, { "task": 3, "start": 187, "machine": "D", "duration": 42 }, { "task": 4, "start": 229, "machine": "E", "duration": 74 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 124, "machine": "A", "duration": 8 }, { "task": 1, "start": 179, "machine": "B", "duration": 98 }, { "task": 2, "start": 280, "machine": "C", "duration": 54 }, { "task": 3, "start": 334, "machine": "D", "duration": 84 }, { "task": 4, "start": 419, "machine": "E", "duration": 68 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 399, "machine": "A", "duration": 23 }, { "task": 1, "start": 564, "machine": "B", "duration": 8 }, { "task": 2, "start": 581, "machine": "C", "duration": 23 }, { "task": 3, "start": 606, "machine": "D", "duration": 13 }, { "task": 4, "start": 664, "machine": "E", "duration": 23 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 422, "machine": "A", "duration": 88 }, { "task": 1, "start": 510, "machine": "B", "duration": 44 }, { "task": 2, "start": 604, "machine": "C", "duration": 77 }, { "task": 3, "start": 681, "machine": "D", "duration": 12 }, { "task": 4, "start": 693, "machine": "E", "duration": 9 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 132, "machine": "A", "duration": 72 }, { "task": 1, "start": 277, "machine": "B", "duration": 36 }, { "task": 2, "start": 334, "machine": "C", "duration": 37 }, { "task": 3, "start": 418, "machine": "D", "duration": 32 }, { "task": 4, "start": 487, "machine": "E", "duration": 53 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 237, "machine": "A", "duration": 97 }, { "task": 1, "start": 336, "machine": "B", "duration": 29 }, { "task": 2, "start": 371, "machine": "C", "duration": 94 }, { "task": 3, "start": 465, "machine": "D", "duration": 37 }, { "task": 4, "start": 540, "machine": "E", "duration": 57 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 2, "machine": "A", "duration": 29 }, { "task": 1, "start": 31, "machine": "B", "duration": 78 }, { "task": 2, "start": 111, "machine": "C", "duration": 59 }, { "task": 3, "start": 229, "machine": "D", "duration": 73 }, { "task": 4, "start": 303, "machine": "E", "duration": 61 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 115, "machine": "A", "duration": 9 }, { "task": 1, "start": 157, "machine": "B", "duration": 22 }, { "task": 2, "start": 187, "machine": "C", "duration": 93 }, { "task": 3, "start": 302, "machine": "D", "duration": 9 }, { "task": 4, "start": 364, "machine": "E", "duration": 55 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 334, "machine": "A", "duration": 65 }, { "task": 1, "start": 417, "machine": "B", "duration": 44 }, { "task": 2, "start": 517, "machine": "C", "duration": 64 }, { "task": 3, "start": 581, "machine": "D", "duration": 25 }, { "task": 4, "start": 606, "machine": "E", "duration": 15 } ] } ], "context_index": 29, "input_format": "markdown_table", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Recently the nursery has been juggling batches of saplings through potting, fertilizing, and then shading, and it’s clear the stations can’t share work at the same time. The task is to arrange the processing order and start times so each plant goes through those three steps in order, nobody skips a step, and no workstation is asked to handle two plants simultaneously. The way to compare plans is simple: look at the time the final sapling is completed (when it leaves the shading station) — the earlier that finish time, the better the plan. Concrete task durations and the batch list are given below.\n\nConcretely, the batch contains 11 saplings to process through 5 stations; sapling ids: J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11; station sequence: A, B, C, D, E.\nSapling J1, step 0, needs station A for 1 time units.\nSapling J1, step 1, needs station B for 34 time units.\nSapling J1, step 2, needs station C for 65 time units.\nSapling J1, step 3, needs station D for 56 time units.\nSapling J1, step 4, needs station E for 82 time units.\nSapling J2, step 0, needs station A for 55 time units.\nSapling J2, step 1, needs station B for 34 time units.\nSapling J2, step 2, needs station C for 20 time units.\nSapling J2, step 3, needs station D for 23 time units.\nSapling J2, step 4, needs station E for 36 time units.\nSapling J3, step 0, needs station A for 23 time units.\nSapling J3, step 1, needs station B for 87 time units.\nSapling J3, step 2, needs station C for 99 time units.\nSapling J3, step 3, needs station D for 46 time units.\nSapling J3, step 4, needs station E for 79 time units.\nSapling J4, step 0, needs station A for 61 time units.\nSapling J4, step 1, needs station B for 65 time units.\nSapling J4, step 2, needs station C for 55 time units.\nSapling J4, step 3, needs station D for 23 time units.\nSapling J4, step 4, needs station E for 74 time units.\nSapling J5, step 0, needs station A for 64 time units.\nSapling J5, step 1, needs station B for 76 time units.\nSapling J5, step 2, needs station C for 81 time units.\nSapling J5, step 3, needs station D for 7 time units.\nSapling J5, step 4, needs station E for 8 time units.\nSapling J6, step 0, needs station A for 41 time units.\nSapling J6, step 1, needs station B for 53 time units.\nSapling J6, step 2, needs station C for 43 time units.\nSapling J6, step 3, needs station D for 54 time units.\nSapling J6, step 4, needs station E for 78 time units.\nSapling J7, step 0, needs station A for 63 time units.\nSapling J7, step 1, needs station B for 12 time units.\nSapling J7, step 2, needs station C for 63 time units.\nSapling J7, step 3, needs station D for 37 time units.\nSapling J7, step 4, needs station E for 26 time units.\nSapling J8, step 0, needs station A for 31 time units.\nSapling J8, step 1, needs station B for 91 time units.\nSapling J8, step 2, needs station C for 70 time units.\nSapling J8, step 3, needs station D for 37 time units.\nSapling J8, step 4, needs station E for 93 time units.\nSapling J9, step 0, needs station A for 54 time units.\nSapling J9, step 1, needs station B for 76 time units.\nSapling J9, step 2, needs station C for 31 time units.\nSapling J9, step 3, needs station D for 49 time units.\nSapling J9, step 4, needs station E for 26 time units.\nSapling J10, step 0, needs station A for 16 time units.\nSapling J10, step 1, needs station B for 84 time units.\nSapling J10, step 2, needs station C for 81 time units.\nSapling J10, step 3, needs station D for 36 time units.\nSapling J10, step 4, needs station E for 98 time units.\nSapling J11, step 0, needs station A for 42 time units.\nSapling J11, step 1, needs station B for 91 time units.\nSapling J11, step 2, needs station C for 88 time units.\nSapling J11, step 3, needs station D for 52 time units.\nSapling J11, step 4, needs station E for 51 time units.\nRespect these task entries so every sapling follows the three-step sequence without station overlap; the plan that minimizes the completion time of the last sapling is best.\n\nIf you want the plan in a machine-friendly form (or just to keep things tidy), I usually lay it out in a little JSON shape like this:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of that as a simple form: \"solution\" is a list of the plants (jobs), each entry names the job and then lists its tasks in order. Each task entry has the task number, when it starts, which station (machine) it uses, and how long it runs. Super informal: it’s just a way to say “this job does task 1 on machine A at time 5 for 10 minutes,” but in a neat, copy-pasteable format.\n\nThis JSON is only a sketch of the shape I’ll use — not the actual schedule yet.\n\nPlease use the exact identifiers from the instance input when you give or expect results — no renaming and don’t invent new labels. For example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 5, "nr_jobs": 11, "jobs": [ [ [ 0, 1 ], [ 1, 34 ], [ 2, 65 ], [ 3, 56 ], [ 4, 82 ] ], [ [ 0, 55 ], [ 1, 34 ], [ 2, 20 ], [ 3, 23 ], [ 4, 36 ] ], [ [ 0, 23 ], [ 1, 87 ], [ 2, 99 ], [ 3, 46 ], [ 4, 79 ] ], [ [ 0, 61 ], [ 1, 65 ], [ 2, 55 ], [ 3, 23 ], [ 4, 74 ] ], [ [ 0, 64 ], [ 1, 76 ], [ 2, 81 ], [ 3, 7 ], [ 4, 8 ] ], [ [ 0, 41 ], [ 1, 53 ], [ 2, 43 ], [ 3, 54 ], [ 4, 78 ] ], [ [ 0, 63 ], [ 1, 12 ], [ 2, 63 ], [ 3, 37 ], [ 4, 26 ] ], [ [ 0, 31 ], [ 1, 91 ], [ 2, 70 ], [ 3, 37 ], [ 4, 93 ] ], [ [ 0, 54 ], [ 1, 76 ], [ 2, 31 ], [ 3, 49 ], [ 4, 26 ] ], [ [ 0, 16 ], [ 1, 84 ], [ 2, 81 ], [ 3, 36 ], [ 4, 98 ] ], [ [ 0, 42 ], [ 1, 91 ], [ 2, 88 ], [ 3, 52 ], [ 4, 51 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 34 }, { "task": 2, "start": 35, "machine": 2, "duration": 65 }, { "task": 3, "start": 100, "machine": 3, "duration": 56 }, { "task": 4, "start": 156, "machine": 4, "duration": 82 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 396, "machine": 0, "duration": 55 }, { "task": 1, "start": 582, "machine": 1, "duration": 34 }, { "task": 2, "start": 691, "machine": 2, "duration": 20 }, { "task": 3, "start": 732, "machine": 3, "duration": 23 }, { "task": 4, "start": 763, "machine": 4, "duration": 36 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 32, "machine": 0, "duration": 23 }, { "task": 1, "start": 263, "machine": 1, "duration": 87 }, { "task": 2, "start": 350, "machine": 2, "duration": 99 }, { "task": 3, "start": 449, "machine": 3, "duration": 46 }, { "task": 4, "start": 507, "machine": 4, "duration": 79 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 272, "machine": 0, "duration": 61 }, { "task": 1, "start": 350, "machine": 1, "duration": 65 }, { "task": 2, "start": 449, "machine": 2, "duration": 55 }, { "task": 3, "start": 504, "machine": 3, "duration": 23 }, { "task": 4, "start": 586, "machine": 4, "duration": 74 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 208, "machine": 0, "duration": 64 }, { "task": 1, "start": 628, "machine": 1, "duration": 76 }, { "task": 2, "start": 711, "machine": 2, "duration": 81 }, { "task": 3, "start": 792, "machine": 3, "duration": 7 }, { "task": 4, "start": 799, "machine": 4, "duration": 8 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 71, "machine": 0, "duration": 41 }, { "task": 1, "start": 126, "machine": 1, "duration": 53 }, { "task": 2, "start": 196, "machine": 2, "duration": 43 }, { "task": 3, "start": 239, "machine": 3, "duration": 54 }, { "task": 4, "start": 331, "machine": 4, "duration": 78 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 333, "machine": 0, "duration": 63 }, { "task": 1, "start": 616, "machine": 1, "duration": 12 }, { "task": 2, "start": 628, "machine": 2, "duration": 63 }, { "task": 3, "start": 695, "machine": 3, "duration": 37 }, { "task": 4, "start": 737, "machine": 4, "duration": 26 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 31 }, { "task": 1, "start": 35, "machine": 1, "duration": 91 }, { "task": 2, "start": 126, "machine": 2, "duration": 70 }, { "task": 3, "start": 196, "machine": 3, "duration": 37 }, { "task": 4, "start": 238, "machine": 4, "duration": 93 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 154, "machine": 0, "duration": 54 }, { "task": 1, "start": 506, "machine": 1, "duration": 76 }, { "task": 2, "start": 594, "machine": 2, "duration": 31 }, { "task": 3, "start": 646, "machine": 3, "duration": 49 }, { "task": 4, "start": 711, "machine": 4, "duration": 26 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 55, "machine": 0, "duration": 16 }, { "task": 1, "start": 179, "machine": 1, "duration": 84 }, { "task": 2, "start": 263, "machine": 2, "duration": 81 }, { "task": 3, "start": 344, "machine": 3, "duration": 36 }, { "task": 4, "start": 409, "machine": 4, "duration": 98 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 112, "machine": 0, "duration": 42 }, { "task": 1, "start": 415, "machine": 1, "duration": 91 }, { "task": 2, "start": 506, "machine": 2, "duration": 88 }, { "task": 3, "start": 594, "machine": 3, "duration": 52 }, { "task": 4, "start": 660, "machine": 4, "duration": 51 } ] } ], "obj": 807.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 11, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11" ], "machines": [ "A", "B", "C", "D", "E" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 34 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 65 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 56 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 82 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 55 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 34 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 20 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 23 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 36 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 23 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 87 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 99 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 46 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 79 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 61 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 65 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 55 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 23 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 74 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 64 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 76 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 81 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 7 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 8 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 41 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 53 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 43 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 54 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 78 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 63 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 12 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 63 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 37 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 26 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 31 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 91 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 70 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 37 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 93 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 54 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 76 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 31 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 49 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 26 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 16 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 84 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 81 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 36 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 98 }, { "job_id": "J11", "task_id": 0, "machine_id": "A", "duration": 42 }, { "job_id": "J11", "task_id": 1, "machine_id": "B", "duration": 91 }, { "job_id": "J11", "task_id": 2, "machine_id": "C", "duration": 88 }, { "job_id": "J11", "task_id": 3, "machine_id": "D", "duration": 52 }, { "job_id": "J11", "task_id": 4, "machine_id": "E", "duration": 51 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 1 }, { "task": 1, "start": 1, "machine": "B", "duration": 34 }, { "task": 2, "start": 35, "machine": "C", "duration": 65 }, { "task": 3, "start": 100, "machine": "D", "duration": 56 }, { "task": 4, "start": 156, "machine": "E", "duration": 82 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 396, "machine": "A", "duration": 55 }, { "task": 1, "start": 582, "machine": "B", "duration": 34 }, { "task": 2, "start": 691, "machine": "C", "duration": 20 }, { "task": 3, "start": 732, "machine": "D", "duration": 23 }, { "task": 4, "start": 763, "machine": "E", "duration": 36 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 32, "machine": "A", "duration": 23 }, { "task": 1, "start": 263, "machine": "B", "duration": 87 }, { "task": 2, "start": 350, "machine": "C", "duration": 99 }, { "task": 3, "start": 449, "machine": "D", "duration": 46 }, { "task": 4, "start": 507, "machine": "E", "duration": 79 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 272, "machine": "A", "duration": 61 }, { "task": 1, "start": 350, "machine": "B", "duration": 65 }, { "task": 2, "start": 449, "machine": "C", "duration": 55 }, { "task": 3, "start": 504, "machine": "D", "duration": 23 }, { "task": 4, "start": 586, "machine": "E", "duration": 74 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 208, "machine": "A", "duration": 64 }, { "task": 1, "start": 628, "machine": "B", "duration": 76 }, { "task": 2, "start": 711, "machine": "C", "duration": 81 }, { "task": 3, "start": 792, "machine": "D", "duration": 7 }, { "task": 4, "start": 799, "machine": "E", "duration": 8 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 71, "machine": "A", "duration": 41 }, { "task": 1, "start": 126, "machine": "B", "duration": 53 }, { "task": 2, "start": 196, "machine": "C", "duration": 43 }, { "task": 3, "start": 239, "machine": "D", "duration": 54 }, { "task": 4, "start": 331, "machine": "E", "duration": 78 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 333, "machine": "A", "duration": 63 }, { "task": 1, "start": 616, "machine": "B", "duration": 12 }, { "task": 2, "start": 628, "machine": "C", "duration": 63 }, { "task": 3, "start": 695, "machine": "D", "duration": 37 }, { "task": 4, "start": 737, "machine": "E", "duration": 26 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 1, "machine": "A", "duration": 31 }, { "task": 1, "start": 35, "machine": "B", "duration": 91 }, { "task": 2, "start": 126, "machine": "C", "duration": 70 }, { "task": 3, "start": 196, "machine": "D", "duration": 37 }, { "task": 4, "start": 238, "machine": "E", "duration": 93 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 154, "machine": "A", "duration": 54 }, { "task": 1, "start": 506, "machine": "B", "duration": 76 }, { "task": 2, "start": 594, "machine": "C", "duration": 31 }, { "task": 3, "start": 646, "machine": "D", "duration": 49 }, { "task": 4, "start": 711, "machine": "E", "duration": 26 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 55, "machine": "A", "duration": 16 }, { "task": 1, "start": 179, "machine": "B", "duration": 84 }, { "task": 2, "start": 263, "machine": "C", "duration": 81 }, { "task": 3, "start": 344, "machine": "D", "duration": 36 }, { "task": 4, "start": 409, "machine": "E", "duration": 98 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 112, "machine": "A", "duration": 42 }, { "task": 1, "start": 415, "machine": "B", "duration": 91 }, { "task": 2, "start": 506, "machine": "C", "duration": 88 }, { "task": 3, "start": 594, "machine": "D", "duration": 52 }, { "task": 4, "start": 660, "machine": "E", "duration": 51 } ] } ], "context_index": 30, "input_format": "nl", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "There’s this rhythm to running a pizzeria: every pie needs shaping, then toppings, and then a turn in the oven, and the job is to schedule them so the last pie finishes as early as possible. Picking one schedule over another matters because the clock time when the final pie is done changes — that finishing time is what’s used to judge a plan. Rules are simple: every pizza must go through the three stations in the same order, nothing is duplicated or left out, and a station can’t handle overlapping pies. The exact order of pies and how long each step takes will be shown below.\n\n# number_of_pizzas=10\n# number_of_stations=5\n# pizza_ids=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10\n# station_ids=A, B, C, D, E\npizza_id,step_index,required_station_id,processing_time_minutes\nJ1,0,A,1\nJ1,1,B,47\nJ1,2,C,40\nJ1,3,D,3\nJ1,4,E,36\nJ2,0,A,76\nJ2,1,B,39\nJ2,2,C,87\nJ2,3,D,91\nJ2,4,E,30\nJ3,0,A,61\nJ3,1,B,40\nJ3,2,C,83\nJ3,3,D,49\nJ3,4,E,85\nJ4,0,A,14\nJ4,1,B,32\nJ4,2,C,55\nJ4,3,D,60\nJ4,4,E,81\nJ5,0,A,6\nJ5,1,B,45\nJ5,2,C,41\nJ5,3,D,99\nJ5,4,E,92\nJ6,0,A,93\nJ6,1,B,62\nJ6,2,C,9\nJ6,3,D,95\nJ6,4,E,49\nJ7,0,A,54\nJ7,1,B,87\nJ7,2,C,89\nJ7,3,D,42\nJ7,4,E,99\nJ8,0,A,63\nJ8,1,B,55\nJ8,2,C,46\nJ8,3,D,36\nJ8,4,E,31\nJ9,0,A,78\nJ9,1,B,74\nJ9,2,C,4\nJ9,3,D,24\nJ9,4,E,91\nJ10,0,A,24\nJ10,1,B,48\nJ10,2,C,70\nJ10,3,D,63\nJ10,4,E,42\n\nAlso, when you give me the schedule, please follow this JSON layout so it's clear and machine-friendly — nothing fancy, just the shape below.\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of the pieces like a simple form: \"solution\" is a list of pizzas (jobs), each entry names the job (\"job\") and lists its steps (\"tasks\"). Each step says which step number it is (\"task\"), when that step starts (\"start\"), which station handles it (\"machine\"), and how long it takes (\"duration\"). This JSON is just a sketch of the shape I expect — not the actual schedule.\n\nPlease also be sure to use the exact identifiers from the instance input — don't rename them and don't invent new labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 5, "nr_jobs": 10, "jobs": [ [ [ 0, 1 ], [ 1, 47 ], [ 2, 40 ], [ 3, 3 ], [ 4, 36 ] ], [ [ 0, 76 ], [ 1, 39 ], [ 2, 87 ], [ 3, 91 ], [ 4, 30 ] ], [ [ 0, 61 ], [ 1, 40 ], [ 2, 83 ], [ 3, 49 ], [ 4, 85 ] ], [ [ 0, 14 ], [ 1, 32 ], [ 2, 55 ], [ 3, 60 ], [ 4, 81 ] ], [ [ 0, 6 ], [ 1, 45 ], [ 2, 41 ], [ 3, 99 ], [ 4, 92 ] ], [ [ 0, 93 ], [ 1, 62 ], [ 2, 9 ], [ 3, 95 ], [ 4, 49 ] ], [ [ 0, 54 ], [ 1, 87 ], [ 2, 89 ], [ 3, 42 ], [ 4, 99 ] ], [ [ 0, 63 ], [ 1, 55 ], [ 2, 46 ], [ 3, 36 ], [ 4, 31 ] ], [ [ 0, 78 ], [ 1, 74 ], [ 2, 4 ], [ 3, 24 ], [ 4, 91 ] ], [ [ 0, 24 ], [ 1, 48 ], [ 2, 70 ], [ 3, 63 ], [ 4, 42 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 47 }, { "task": 2, "start": 49, "machine": 2, "duration": 40 }, { "task": 3, "start": 89, "machine": 3, "duration": 3 }, { "task": 4, "start": 92, "machine": 4, "duration": 36 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 394, "machine": 0, "duration": 76 }, { "task": 1, "start": 504, "machine": 1, "duration": 39 }, { "task": 2, "start": 578, "machine": 2, "duration": 87 }, { "task": 3, "start": 665, "machine": 3, "duration": 91 }, { "task": 4, "start": 765, "machine": 4, "duration": 30 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 333, "machine": 0, "duration": 61 }, { "task": 1, "start": 409, "machine": 1, "duration": 40 }, { "task": 2, "start": 449, "machine": 2, "duration": 83 }, { "task": 3, "start": 614, "machine": 3, "duration": 49 }, { "task": 4, "start": 680, "machine": 4, "duration": 85 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 14 }, { "task": 1, "start": 48, "machine": 1, "duration": 32 }, { "task": 2, "start": 89, "machine": 2, "duration": 55 }, { "task": 3, "start": 195, "machine": 3, "duration": 60 }, { "task": 4, "start": 286, "machine": 4, "duration": 81 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 117, "machine": 0, "duration": 6 }, { "task": 1, "start": 167, "machine": 1, "duration": 45 }, { "task": 2, "start": 212, "machine": 2, "duration": 41 }, { "task": 3, "start": 255, "machine": 3, "duration": 99 }, { "task": 4, "start": 367, "machine": 4, "duration": 92 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 177, "machine": 0, "duration": 93 }, { "task": 1, "start": 347, "machine": 1, "duration": 62 }, { "task": 2, "start": 436, "machine": 2, "duration": 9 }, { "task": 3, "start": 478, "machine": 3, "duration": 95 }, { "task": 4, "start": 600, "machine": 4, "duration": 49 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 123, "machine": 0, "duration": 54 }, { "task": 1, "start": 260, "machine": 1, "duration": 87 }, { "task": 2, "start": 347, "machine": 2, "duration": 89 }, { "task": 3, "start": 436, "machine": 3, "duration": 42 }, { "task": 4, "start": 501, "machine": 4, "duration": 99 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 270, "machine": 0, "duration": 63 }, { "task": 1, "start": 449, "machine": 1, "duration": 55 }, { "task": 2, "start": 532, "machine": 2, "duration": 46 }, { "task": 3, "start": 578, "machine": 3, "duration": 36 }, { "task": 4, "start": 649, "machine": 4, "duration": 31 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 15, "machine": 0, "duration": 78 }, { "task": 1, "start": 93, "machine": 1, "duration": 74 }, { "task": 2, "start": 167, "machine": 2, "duration": 4 }, { "task": 3, "start": 171, "machine": 3, "duration": 24 }, { "task": 4, "start": 195, "machine": 4, "duration": 91 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 93, "machine": 0, "duration": 24 }, { "task": 1, "start": 212, "machine": 1, "duration": 48 }, { "task": 2, "start": 260, "machine": 2, "duration": 70 }, { "task": 3, "start": 354, "machine": 3, "duration": 63 }, { "task": 4, "start": 459, "machine": 4, "duration": 42 } ] } ], "obj": 795.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 10, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10" ], "machines": [ "A", "B", "C", "D", "E" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 47 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 40 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 3 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 36 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 76 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 39 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 87 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 91 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 30 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 61 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 40 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 83 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 49 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 85 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 14 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 32 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 55 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 60 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 81 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 6 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 45 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 41 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 99 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 92 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 93 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 62 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 9 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 95 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 49 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 54 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 87 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 89 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 42 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 99 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 63 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 55 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 46 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 36 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 31 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 78 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 74 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 4 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 24 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 91 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 24 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 48 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 70 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 63 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 42 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 1 }, { "task": 1, "start": 1, "machine": "B", "duration": 47 }, { "task": 2, "start": 49, "machine": "C", "duration": 40 }, { "task": 3, "start": 89, "machine": "D", "duration": 3 }, { "task": 4, "start": 92, "machine": "E", "duration": 36 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 394, "machine": "A", "duration": 76 }, { "task": 1, "start": 504, "machine": "B", "duration": 39 }, { "task": 2, "start": 578, "machine": "C", "duration": 87 }, { "task": 3, "start": 665, "machine": "D", "duration": 91 }, { "task": 4, "start": 765, "machine": "E", "duration": 30 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 333, "machine": "A", "duration": 61 }, { "task": 1, "start": 409, "machine": "B", "duration": 40 }, { "task": 2, "start": 449, "machine": "C", "duration": 83 }, { "task": 3, "start": 614, "machine": "D", "duration": 49 }, { "task": 4, "start": 680, "machine": "E", "duration": 85 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 1, "machine": "A", "duration": 14 }, { "task": 1, "start": 48, "machine": "B", "duration": 32 }, { "task": 2, "start": 89, "machine": "C", "duration": 55 }, { "task": 3, "start": 195, "machine": "D", "duration": 60 }, { "task": 4, "start": 286, "machine": "E", "duration": 81 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 117, "machine": "A", "duration": 6 }, { "task": 1, "start": 167, "machine": "B", "duration": 45 }, { "task": 2, "start": 212, "machine": "C", "duration": 41 }, { "task": 3, "start": 255, "machine": "D", "duration": 99 }, { "task": 4, "start": 367, "machine": "E", "duration": 92 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 177, "machine": "A", "duration": 93 }, { "task": 1, "start": 347, "machine": "B", "duration": 62 }, { "task": 2, "start": 436, "machine": "C", "duration": 9 }, { "task": 3, "start": 478, "machine": "D", "duration": 95 }, { "task": 4, "start": 600, "machine": "E", "duration": 49 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 123, "machine": "A", "duration": 54 }, { "task": 1, "start": 260, "machine": "B", "duration": 87 }, { "task": 2, "start": 347, "machine": "C", "duration": 89 }, { "task": 3, "start": 436, "machine": "D", "duration": 42 }, { "task": 4, "start": 501, "machine": "E", "duration": 99 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 270, "machine": "A", "duration": 63 }, { "task": 1, "start": 449, "machine": "B", "duration": 55 }, { "task": 2, "start": 532, "machine": "C", "duration": 46 }, { "task": 3, "start": 578, "machine": "D", "duration": 36 }, { "task": 4, "start": 649, "machine": "E", "duration": 31 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 15, "machine": "A", "duration": 78 }, { "task": 1, "start": 93, "machine": "B", "duration": 74 }, { "task": 2, "start": 167, "machine": "C", "duration": 4 }, { "task": 3, "start": 171, "machine": "D", "duration": 24 }, { "task": 4, "start": 195, "machine": "E", "duration": 91 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 93, "machine": "A", "duration": 24 }, { "task": 1, "start": 212, "machine": "B", "duration": 48 }, { "task": 2, "start": 260, "machine": "C", "duration": 70 }, { "task": 3, "start": 354, "machine": "D", "duration": 63 }, { "task": 4, "start": 459, "machine": "E", "duration": 42 } ] } ], "context_index": 31, "input_format": "csv", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Back when the shop was busiest, the challenge was lining up vehicles so each went through inspection, repair, and paint in the same sequence, with known durations for each step. The goal was to choose an order that kept each bay from handling two cars at once, ensured every car received those three steps exactly once in order, and got everyone out fast. To tell which ordering is best, look at the clock when the final vehicle is completed — the earlier that finish time, the better the plan. The exact vehicle times are included below.\n\n{\n \"nr_vehicles\": 10,\n \"nr_service_bays\": 6,\n \"vehicles\": [\n \"J1\",\n \"J2\",\n \"J3\",\n \"J4\",\n \"J5\",\n \"J6\",\n \"J7\",\n \"J8\",\n \"J9\",\n \"J10\"\n ],\n \"service_bays\": [\n \"A\",\n \"B\",\n \"C\",\n \"D\",\n \"E\",\n \"F\"\n ],\n \"tasks\": [\n {\n \"vehicle_id\": \"J1\",\n \"service_step_index\": 0,\n \"bay_id\": \"A\",\n \"service_duration\": 1\n },\n {\n \"vehicle_id\": \"J1\",\n \"service_step_index\": 1,\n \"bay_id\": \"B\",\n \"service_duration\": 60\n },\n {\n \"vehicle_id\": \"J1\",\n \"service_step_index\": 2,\n \"bay_id\": \"C\",\n \"service_duration\": 16\n },\n {\n \"vehicle_id\": \"J1\",\n \"service_step_index\": 3,\n \"bay_id\": \"D\",\n \"service_duration\": 48\n },\n {\n \"vehicle_id\": \"J1\",\n \"service_step_index\": 4,\n \"bay_id\": \"E\",\n \"service_duration\": 89\n },\n {\n \"vehicle_id\": \"J1\",\n \"service_step_index\": 5,\n \"bay_id\": \"F\",\n \"service_duration\": 98\n },\n {\n \"vehicle_id\": \"J2\",\n \"service_step_index\": 0,\n \"bay_id\": \"A\",\n \"service_duration\": 43\n },\n {\n \"vehicle_id\": \"J2\",\n \"service_step_index\": 1,\n \"bay_id\": \"B\",\n \"service_duration\": 56\n },\n {\n \"vehicle_id\": \"J2\",\n \"service_step_index\": 2,\n \"bay_id\": \"C\",\n \"service_duration\": 59\n },\n {\n \"vehicle_id\": \"J2\",\n \"service_step_index\": 3,\n \"bay_id\": \"D\",\n \"service_duration\": 24\n },\n {\n \"vehicle_id\": \"J2\",\n \"service_step_index\": 4,\n \"bay_id\": \"E\",\n \"service_duration\": 99\n },\n {\n \"vehicle_id\": \"J2\",\n \"service_step_index\": 5,\n \"bay_id\": \"F\",\n \"service_duration\": 91\n },\n {\n \"vehicle_id\": \"J3\",\n \"service_step_index\": 0,\n \"bay_id\": \"A\",\n \"service_duration\": 66\n },\n {\n \"vehicle_id\": \"J3\",\n \"service_step_index\": 1,\n \"bay_id\": \"B\",\n \"service_duration\": 52\n },\n {\n \"vehicle_id\": \"J3\",\n \"service_step_index\": 2,\n \"bay_id\": \"C\",\n \"service_duration\": 90\n },\n {\n \"vehicle_id\": \"J3\",\n \"service_step_index\": 3,\n \"bay_id\": \"D\",\n \"service_duration\": 67\n },\n {\n \"vehicle_id\": \"J3\",\n \"service_step_index\": 4,\n \"bay_id\": \"E\",\n \"service_duration\": 99\n },\n {\n \"vehicle_id\": \"J3\",\n \"service_step_index\": 5,\n \"bay_id\": \"F\",\n \"service_duration\": 56\n },\n {\n \"vehicle_id\": \"J4\",\n \"service_step_index\": 0,\n \"bay_id\": \"A\",\n \"service_duration\": 98\n },\n {\n \"vehicle_id\": \"J4\",\n \"service_step_index\": 1,\n \"bay_id\": \"B\",\n \"service_duration\": 88\n },\n {\n \"vehicle_id\": \"J4\",\n \"service_step_index\": 2,\n \"bay_id\": \"C\",\n \"service_duration\": 48\n },\n {\n \"vehicle_id\": \"J4\",\n \"service_step_index\": 3,\n \"bay_id\": \"D\",\n \"service_duration\": 14\n },\n {\n \"vehicle_id\": \"J4\",\n \"service_step_index\": 4,\n \"bay_id\": \"E\",\n \"service_duration\": 99\n },\n {\n \"vehicle_id\": \"J4\",\n \"service_step_index\": 5,\n \"bay_id\": \"F\",\n \"service_duration\": 92\n },\n {\n \"vehicle_id\": \"J5\",\n \"service_step_index\": 0,\n \"bay_id\": \"A\",\n \"service_duration\": 77\n },\n {\n \"vehicle_id\": \"J5\",\n \"service_step_index\": 1,\n \"bay_id\": \"B\",\n \"service_duration\": 47\n },\n {\n \"vehicle_id\": \"J5\",\n \"service_step_index\": 2,\n \"bay_id\": \"C\",\n \"service_duration\": 71\n },\n {\n \"vehicle_id\": \"J5\",\n \"service_step_index\": 3,\n \"bay_id\": \"D\",\n \"service_duration\": 73\n },\n {\n \"vehicle_id\": \"J5\",\n \"service_step_index\": 4,\n \"bay_id\": \"E\",\n \"service_duration\": 37\n },\n {\n \"vehicle_id\": \"J5\",\n \"service_step_index\": 5,\n \"bay_id\": \"F\",\n \"service_duration\": 19\n },\n {\n \"vehicle_id\": \"J6\",\n \"service_step_index\": 0,\n \"bay_id\": \"A\",\n \"service_duration\": 45\n },\n {\n \"vehicle_id\": \"J6\",\n \"service_step_index\": 1,\n \"bay_id\": \"B\",\n \"service_duration\": 64\n },\n {\n \"vehicle_id\": \"J6\",\n \"service_step_index\": 2,\n \"bay_id\": \"C\",\n \"service_duration\": 16\n },\n {\n \"vehicle_id\": \"J6\",\n \"service_step_index\": 3,\n \"bay_id\": \"D\",\n \"service_duration\": 47\n },\n {\n \"vehicle_id\": \"J6\",\n \"service_step_index\": 4,\n \"bay_id\": \"E\",\n \"service_duration\": 73\n },\n {\n \"vehicle_id\": \"J6\",\n \"service_step_index\": 5,\n \"bay_id\": \"F\",\n \"service_duration\": 96\n },\n {\n \"vehicle_id\": \"J7\",\n \"service_step_index\": 0,\n \"bay_id\": \"A\",\n \"service_duration\": 19\n },\n {\n \"vehicle_id\": \"J7\",\n \"service_step_index\": 1,\n \"bay_id\": \"B\",\n \"service_duration\": 22\n },\n {\n \"vehicle_id\": \"J7\",\n \"service_step_index\": 2,\n \"bay_id\": \"C\",\n \"service_duration\": 35\n },\n {\n \"vehicle_id\": \"J7\",\n \"service_step_index\": 3,\n \"bay_id\": \"D\",\n \"service_duration\": 67\n },\n {\n \"vehicle_id\": \"J7\",\n \"service_step_index\": 4,\n \"bay_id\": \"E\",\n \"service_duration\": 4\n },\n {\n \"vehicle_id\": \"J7\",\n \"service_step_index\": 5,\n \"bay_id\": \"F\",\n \"service_duration\": 72\n },\n {\n \"vehicle_id\": \"J8\",\n \"service_step_index\": 0,\n \"bay_id\": \"A\",\n \"service_duration\": 75\n },\n {\n \"vehicle_id\": \"J8\",\n \"service_step_index\": 1,\n \"bay_id\": \"B\",\n \"service_duration\": 99\n },\n {\n \"vehicle_id\": \"J8\",\n \"service_step_index\": 2,\n \"bay_id\": \"C\",\n \"service_duration\": 56\n },\n {\n \"vehicle_id\": \"J8\",\n \"service_step_index\": 3,\n \"bay_id\": \"D\",\n \"service_duration\": 31\n },\n {\n \"vehicle_id\": \"J8\",\n \"service_step_index\": 4,\n \"bay_id\": \"E\",\n \"service_duration\": 11\n },\n {\n \"vehicle_id\": \"J8\",\n \"service_step_index\": 5,\n \"bay_id\": \"F\",\n \"service_duration\": 58\n },\n {\n \"vehicle_id\": \"J9\",\n \"service_step_index\": 0,\n \"bay_id\": \"A\",\n \"service_duration\": 90\n },\n {\n \"vehicle_id\": \"J9\",\n \"service_step_index\": 1,\n \"bay_id\": \"B\",\n \"service_duration\": 85\n },\n {\n \"vehicle_id\": \"J9\",\n \"service_step_index\": 2,\n \"bay_id\": \"C\",\n \"service_duration\": 95\n },\n {\n \"vehicle_id\": \"J9\",\n \"service_step_index\": 3,\n \"bay_id\": \"D\",\n \"service_duration\": 87\n },\n {\n \"vehicle_id\": \"J9\",\n \"service_step_index\": 4,\n \"bay_id\": \"E\",\n \"service_duration\": 36\n },\n {\n \"vehicle_id\": \"J9\",\n \"service_step_index\": 5,\n \"bay_id\": \"F\",\n \"service_duration\": 7\n },\n {\n \"vehicle_id\": \"J10\",\n \"service_step_index\": 0,\n \"bay_id\": \"A\",\n \"service_duration\": 23\n },\n {\n \"vehicle_id\": \"J10\",\n \"service_step_index\": 1,\n \"bay_id\": \"B\",\n \"service_duration\": 16\n },\n {\n \"vehicle_id\": \"J10\",\n \"service_step_index\": 2,\n \"bay_id\": \"C\",\n \"service_duration\": 52\n },\n {\n \"vehicle_id\": \"J10\",\n \"service_step_index\": 3,\n \"bay_id\": \"D\",\n \"service_duration\": 53\n },\n {\n \"vehicle_id\": \"J10\",\n \"service_step_index\": 4,\n \"bay_id\": \"E\",\n \"service_duration\": 37\n },\n {\n \"vehicle_id\": \"J10\",\n \"service_step_index\": 5,\n \"bay_id\": \"F\",\n \"service_duration\": 42\n }\n ]\n}\n\nIf you want the plan from me, I’ll return it in a compact JSON layout so it’s easy to check or load into other tools. Here’s the little sketch of the shape I’ll follow:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of that as a simple form: \"solution\" is a list of cars (jobs), each entry names the job and then lists its tasks in order. Each task entry just says which step number it is, when it starts, which bay (machine) handles it, and how long that step takes. It’s just a template — I’ll fill in the real numbers and IDs for the actual schedule.\n\nPlease use the identifiers exactly as they appear in the instance input — do not rename them or invent new labels. For example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 6, "nr_jobs": 10, "jobs": [ [ [ 0, 1 ], [ 1, 60 ], [ 2, 16 ], [ 3, 48 ], [ 4, 89 ], [ 5, 98 ] ], [ [ 0, 43 ], [ 1, 56 ], [ 2, 59 ], [ 3, 24 ], [ 4, 99 ], [ 5, 91 ] ], [ [ 0, 66 ], [ 1, 52 ], [ 2, 90 ], [ 3, 67 ], [ 4, 99 ], [ 5, 56 ] ], [ [ 0, 98 ], [ 1, 88 ], [ 2, 48 ], [ 3, 14 ], [ 4, 99 ], [ 5, 92 ] ], [ [ 0, 77 ], [ 1, 47 ], [ 2, 71 ], [ 3, 73 ], [ 4, 37 ], [ 5, 19 ] ], [ [ 0, 45 ], [ 1, 64 ], [ 2, 16 ], [ 3, 47 ], [ 4, 73 ], [ 5, 96 ] ], [ [ 0, 19 ], [ 1, 22 ], [ 2, 35 ], [ 3, 67 ], [ 4, 4 ], [ 5, 72 ] ], [ [ 0, 75 ], [ 1, 99 ], [ 2, 56 ], [ 3, 31 ], [ 4, 11 ], [ 5, 58 ] ], [ [ 0, 90 ], [ 1, 85 ], [ 2, 95 ], [ 3, 87 ], [ 4, 36 ], [ 5, 7 ] ], [ [ 0, 23 ], [ 1, 16 ], [ 2, 52 ], [ 3, 53 ], [ 4, 37 ], [ 5, 42 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 129, "machine": 1, "duration": 60 }, { "task": 2, "start": 189, "machine": 2, "duration": 16 }, { "task": 3, "start": 205, "machine": 3, "duration": 48 }, { "task": 4, "start": 265, "machine": 4, "duration": 89 }, { "task": 5, "start": 361, "machine": 5, "duration": 98 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 154, "machine": 0, "duration": 43 }, { "task": 1, "start": 205, "machine": 1, "duration": 56 }, { "task": 2, "start": 261, "machine": 2, "duration": 59 }, { "task": 3, "start": 320, "machine": 3, "duration": 24 }, { "task": 4, "start": 391, "machine": 4, "duration": 99 }, { "task": 5, "start": 501, "machine": 5, "duration": 91 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 65, "machine": 0, "duration": 66 }, { "task": 1, "start": 261, "machine": 1, "duration": 52 }, { "task": 2, "start": 320, "machine": 2, "duration": 90 }, { "task": 3, "start": 472, "machine": 3, "duration": 67 }, { "task": 4, "start": 589, "machine": 4, "duration": 99 }, { "task": 5, "start": 688, "machine": 5, "duration": 56 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 197, "machine": 0, "duration": 98 }, { "task": 1, "start": 313, "machine": 1, "duration": 88 }, { "task": 2, "start": 410, "machine": 2, "duration": 48 }, { "task": 3, "start": 458, "machine": 3, "duration": 14 }, { "task": 4, "start": 490, "machine": 4, "duration": 99 }, { "task": 5, "start": 592, "machine": 5, "duration": 92 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 295, "machine": 0, "duration": 77 }, { "task": 1, "start": 401, "machine": 1, "duration": 47 }, { "task": 2, "start": 458, "machine": 2, "duration": 71 }, { "task": 3, "start": 539, "machine": 3, "duration": 73 }, { "task": 4, "start": 688, "machine": 4, "duration": 37 }, { "task": 5, "start": 744, "machine": 5, "duration": 19 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 20, "machine": 0, "duration": 45 }, { "task": 1, "start": 65, "machine": 1, "duration": 64 }, { "task": 2, "start": 129, "machine": 2, "duration": 16 }, { "task": 3, "start": 145, "machine": 3, "duration": 47 }, { "task": 4, "start": 192, "machine": 4, "duration": 73 }, { "task": 5, "start": 265, "machine": 5, "duration": 96 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 19 }, { "task": 1, "start": 20, "machine": 1, "duration": 22 }, { "task": 2, "start": 42, "machine": 2, "duration": 35 }, { "task": 3, "start": 77, "machine": 3, "duration": 67 }, { "task": 4, "start": 144, "machine": 4, "duration": 4 }, { "task": 5, "start": 148, "machine": 5, "duration": 72 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 462, "machine": 0, "duration": 75 }, { "task": 1, "start": 547, "machine": 1, "duration": 99 }, { "task": 2, "start": 646, "machine": 2, "duration": 56 }, { "task": 3, "start": 729, "machine": 3, "duration": 31 }, { "task": 4, "start": 765, "machine": 4, "duration": 11 }, { "task": 5, "start": 776, "machine": 5, "duration": 58 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 372, "machine": 0, "duration": 90 }, { "task": 1, "start": 462, "machine": 1, "duration": 85 }, { "task": 2, "start": 547, "machine": 2, "duration": 95 }, { "task": 3, "start": 642, "machine": 3, "duration": 87 }, { "task": 4, "start": 729, "machine": 4, "duration": 36 }, { "task": 5, "start": 765, "machine": 5, "duration": 7 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 131, "machine": 0, "duration": 23 }, { "task": 1, "start": 189, "machine": 1, "duration": 16 }, { "task": 2, "start": 205, "machine": 2, "duration": 52 }, { "task": 3, "start": 257, "machine": 3, "duration": 53 }, { "task": 4, "start": 354, "machine": 4, "duration": 37 }, { "task": 5, "start": 459, "machine": 5, "duration": 42 } ] } ], "obj": 834.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 10, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10" ], "machines": [ "A", "B", "C", "D", "E", "F" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 60 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 16 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 48 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 89 }, { "job_id": "J1", "task_id": 5, "machine_id": "F", "duration": 98 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 43 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 56 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 59 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 24 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 99 }, { "job_id": "J2", "task_id": 5, "machine_id": "F", "duration": 91 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 66 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 52 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 90 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 67 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 99 }, { "job_id": "J3", "task_id": 5, "machine_id": "F", "duration": 56 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 98 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 88 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 48 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 14 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 99 }, { "job_id": "J4", "task_id": 5, "machine_id": "F", "duration": 92 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 77 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 47 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 71 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 73 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 37 }, { "job_id": "J5", "task_id": 5, "machine_id": "F", "duration": 19 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 45 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 64 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 16 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 47 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 73 }, { "job_id": "J6", "task_id": 5, "machine_id": "F", "duration": 96 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 19 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 22 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 35 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 67 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 4 }, { "job_id": "J7", "task_id": 5, "machine_id": "F", "duration": 72 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 75 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 99 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 56 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 31 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 11 }, { "job_id": "J8", "task_id": 5, "machine_id": "F", "duration": 58 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 90 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 85 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 95 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 87 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 36 }, { "job_id": "J9", "task_id": 5, "machine_id": "F", "duration": 7 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 23 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 16 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 52 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 53 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 37 }, { "job_id": "J10", "task_id": 5, "machine_id": "F", "duration": 42 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 1 }, { "task": 1, "start": 129, "machine": "B", "duration": 60 }, { "task": 2, "start": 189, "machine": "C", "duration": 16 }, { "task": 3, "start": 205, "machine": "D", "duration": 48 }, { "task": 4, "start": 265, "machine": "E", "duration": 89 }, { "task": 5, "start": 361, "machine": "F", "duration": 98 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 154, "machine": "A", "duration": 43 }, { "task": 1, "start": 205, "machine": "B", "duration": 56 }, { "task": 2, "start": 261, "machine": "C", "duration": 59 }, { "task": 3, "start": 320, "machine": "D", "duration": 24 }, { "task": 4, "start": 391, "machine": "E", "duration": 99 }, { "task": 5, "start": 501, "machine": "F", "duration": 91 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 65, "machine": "A", "duration": 66 }, { "task": 1, "start": 261, "machine": "B", "duration": 52 }, { "task": 2, "start": 320, "machine": "C", "duration": 90 }, { "task": 3, "start": 472, "machine": "D", "duration": 67 }, { "task": 4, "start": 589, "machine": "E", "duration": 99 }, { "task": 5, "start": 688, "machine": "F", "duration": 56 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 197, "machine": "A", "duration": 98 }, { "task": 1, "start": 313, "machine": "B", "duration": 88 }, { "task": 2, "start": 410, "machine": "C", "duration": 48 }, { "task": 3, "start": 458, "machine": "D", "duration": 14 }, { "task": 4, "start": 490, "machine": "E", "duration": 99 }, { "task": 5, "start": 592, "machine": "F", "duration": 92 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 295, "machine": "A", "duration": 77 }, { "task": 1, "start": 401, "machine": "B", "duration": 47 }, { "task": 2, "start": 458, "machine": "C", "duration": 71 }, { "task": 3, "start": 539, "machine": "D", "duration": 73 }, { "task": 4, "start": 688, "machine": "E", "duration": 37 }, { "task": 5, "start": 744, "machine": "F", "duration": 19 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 20, "machine": "A", "duration": 45 }, { "task": 1, "start": 65, "machine": "B", "duration": 64 }, { "task": 2, "start": 129, "machine": "C", "duration": 16 }, { "task": 3, "start": 145, "machine": "D", "duration": 47 }, { "task": 4, "start": 192, "machine": "E", "duration": 73 }, { "task": 5, "start": 265, "machine": "F", "duration": 96 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 1, "machine": "A", "duration": 19 }, { "task": 1, "start": 20, "machine": "B", "duration": 22 }, { "task": 2, "start": 42, "machine": "C", "duration": 35 }, { "task": 3, "start": 77, "machine": "D", "duration": 67 }, { "task": 4, "start": 144, "machine": "E", "duration": 4 }, { "task": 5, "start": 148, "machine": "F", "duration": 72 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 462, "machine": "A", "duration": 75 }, { "task": 1, "start": 547, "machine": "B", "duration": 99 }, { "task": 2, "start": 646, "machine": "C", "duration": 56 }, { "task": 3, "start": 729, "machine": "D", "duration": 31 }, { "task": 4, "start": 765, "machine": "E", "duration": 11 }, { "task": 5, "start": 776, "machine": "F", "duration": 58 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 372, "machine": "A", "duration": 90 }, { "task": 1, "start": 462, "machine": "B", "duration": 85 }, { "task": 2, "start": 547, "machine": "C", "duration": 95 }, { "task": 3, "start": 642, "machine": "D", "duration": 87 }, { "task": 4, "start": 729, "machine": "E", "duration": 36 }, { "task": 5, "start": 765, "machine": "F", "duration": 7 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 131, "machine": "A", "duration": 23 }, { "task": 1, "start": 189, "machine": "B", "duration": 16 }, { "task": 2, "start": 205, "machine": "C", "duration": 52 }, { "task": 3, "start": 257, "machine": "D", "duration": 53 }, { "task": 4, "start": 354, "machine": "E", "duration": 37 }, { "task": 5, "start": 459, "machine": "F", "duration": 42 } ] } ], "context_index": 32, "input_format": "json", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "I run the little tailoring corner and my job is to line up a pile of garments so each one goes through cutting, then stitching, then pressing — always in that order. The decision is about which piece goes when and how to time them so the cutting table, sewing machines, and press never have two pieces fighting for the same spot at once. A better plan is simply one where the whole batch is done sooner: measure that by the clock time when the last garment comes off the press, and try to make that as small as possible. Every garment must go through all three steps exactly once, with the known time each step takes, and the exact timings and durations will be shown below.\n\n# nr_garments=12\n# nr_workstations=6\n# garment_ids=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11, J12\n# workstation_ids=0, 1, 2, 3, 4, 5\ngarment_id,step_index,workstation_id,operation_time\nJ1,0,0,1\nJ1,1,1,73\nJ1,2,2,91\nJ1,3,3,94\nJ1,4,4,43\nJ1,5,5,21\nJ2,0,0,48\nJ2,1,1,24\nJ2,2,2,27\nJ2,3,3,17\nJ2,4,4,38\nJ2,5,5,44\nJ3,0,0,49\nJ3,1,1,56\nJ3,2,2,95\nJ3,3,3,20\nJ3,4,4,66\nJ3,5,5,57\nJ4,0,0,37\nJ4,1,1,94\nJ4,2,2,89\nJ4,3,3,82\nJ4,4,4,58\nJ4,5,5,85\nJ5,0,0,62\nJ5,1,1,99\nJ5,2,2,80\nJ5,3,3,39\nJ5,4,4,78\nJ5,5,5,88\nJ6,0,0,37\nJ6,1,1,40\nJ6,2,2,42\nJ6,3,3,51\nJ6,4,4,47\nJ6,5,5,29\nJ7,0,0,81\nJ7,1,1,97\nJ7,2,2,34\nJ7,3,3,4\nJ7,4,4,28\nJ7,5,5,71\nJ8,0,0,48\nJ8,1,1,75\nJ8,2,2,22\nJ8,3,3,38\nJ8,4,4,74\nJ8,5,5,47\nJ9,0,0,18\nJ9,1,1,30\nJ9,2,2,72\nJ9,3,3,35\nJ9,4,4,59\nJ9,5,5,34\nJ10,0,0,58\nJ10,1,1,32\nJ10,2,2,1\nJ10,3,3,43\nJ10,4,4,28\nJ10,5,5,48\nJ11,0,0,94\nJ11,1,1,34\nJ11,2,2,21\nJ11,3,3,61\nJ11,4,4,2\nJ11,5,5,55\nJ12,0,0,69\nJ12,1,1,71\nJ12,2,2,14\nJ12,3,3,46\nJ12,4,4,6\nJ12,5,5,43\n\nIf you want to send me a plan, a neat little JSON sketch makes it easy for me to read — nothing fancy, just this shape:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThis shows the shape I'm expecting: a top-level \"solution\" list with one entry per garment (job). Each job has its identifier under \"job\" and a \"tasks\" list describing each step for that garment. Inside each task you'll put which step it is (\"task\"), when it starts (\"start\"), which machine it uses (\"machine\"), and how long it takes (\"duration\"). Think of it like filling out a simple work ticket for each piece.\n\nThis is just the sketch of the format — not the actual schedule itself. Please use the exact identifiers from the instance input when you fill it in — don't rename things or invent new labels.\n\nValid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 6, "nr_jobs": 12, "jobs": [ [ [ 0, 1 ], [ 1, 73 ], [ 2, 91 ], [ 3, 94 ], [ 4, 43 ], [ 5, 21 ] ], [ [ 0, 48 ], [ 1, 24 ], [ 2, 27 ], [ 3, 17 ], [ 4, 38 ], [ 5, 44 ] ], [ [ 0, 49 ], [ 1, 56 ], [ 2, 95 ], [ 3, 20 ], [ 4, 66 ], [ 5, 57 ] ], [ [ 0, 37 ], [ 1, 94 ], [ 2, 89 ], [ 3, 82 ], [ 4, 58 ], [ 5, 85 ] ], [ [ 0, 62 ], [ 1, 99 ], [ 2, 80 ], [ 3, 39 ], [ 4, 78 ], [ 5, 88 ] ], [ [ 0, 37 ], [ 1, 40 ], [ 2, 42 ], [ 3, 51 ], [ 4, 47 ], [ 5, 29 ] ], [ [ 0, 81 ], [ 1, 97 ], [ 2, 34 ], [ 3, 4 ], [ 4, 28 ], [ 5, 71 ] ], [ [ 0, 48 ], [ 1, 75 ], [ 2, 22 ], [ 3, 38 ], [ 4, 74 ], [ 5, 47 ] ], [ [ 0, 18 ], [ 1, 30 ], [ 2, 72 ], [ 3, 35 ], [ 4, 59 ], [ 5, 34 ] ], [ [ 0, 58 ], [ 1, 32 ], [ 2, 1 ], [ 3, 43 ], [ 4, 28 ], [ 5, 48 ] ], [ [ 0, 94 ], [ 1, 34 ], [ 2, 21 ], [ 3, 61 ], [ 4, 2 ], [ 5, 55 ] ], [ [ 0, 69 ], [ 1, 71 ], [ 2, 14 ], [ 3, 46 ], [ 4, 6 ], [ 5, 43 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 103, "machine": 0, "duration": 1 }, { "task": 1, "start": 205, "machine": 1, "duration": 73 }, { "task": 2, "start": 295, "machine": 2, "duration": 91 }, { "task": 3, "start": 386, "machine": 3, "duration": 94 }, { "task": 4, "start": 480, "machine": 4, "duration": 43 }, { "task": 5, "start": 523, "machine": 5, "duration": 21 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 55, "machine": 0, "duration": 48 }, { "task": 1, "start": 149, "machine": 1, "duration": 24 }, { "task": 2, "start": 174, "machine": 2, "duration": 27 }, { "task": 3, "start": 201, "machine": 3, "duration": 17 }, { "task": 4, "start": 310, "machine": 4, "duration": 38 }, { "task": 5, "start": 358, "machine": 5, "duration": 44 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 408, "machine": 0, "duration": 49 }, { "task": 1, "start": 508, "machine": 1, "duration": 56 }, { "task": 2, "start": 564, "machine": 2, "duration": 95 }, { "task": 3, "start": 659, "machine": 3, "duration": 20 }, { "task": 4, "start": 679, "machine": 4, "duration": 66 }, { "task": 5, "start": 758, "machine": 5, "duration": 57 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 18, "machine": 0, "duration": 37 }, { "task": 1, "start": 55, "machine": 1, "duration": 94 }, { "task": 2, "start": 206, "machine": 2, "duration": 89 }, { "task": 3, "start": 295, "machine": 3, "duration": 82 }, { "task": 4, "start": 377, "machine": 4, "duration": 58 }, { "task": 5, "start": 435, "machine": 5, "duration": 85 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 171, "machine": 0, "duration": 62 }, { "task": 1, "start": 278, "machine": 1, "duration": 99 }, { "task": 2, "start": 432, "machine": 2, "duration": 80 }, { "task": 3, "start": 550, "machine": 3, "duration": 39 }, { "task": 4, "start": 589, "machine": 4, "duration": 78 }, { "task": 5, "start": 670, "machine": 5, "duration": 88 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 574, "machine": 0, "duration": 37 }, { "task": 1, "start": 710, "machine": 1, "duration": 40 }, { "task": 2, "start": 750, "machine": 2, "duration": 42 }, { "task": 3, "start": 792, "machine": 3, "duration": 51 }, { "task": 4, "start": 850, "machine": 4, "duration": 47 }, { "task": 5, "start": 905, "machine": 5, "duration": 29 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 327, "machine": 0, "duration": 81 }, { "task": 1, "start": 411, "machine": 1, "duration": 97 }, { "task": 2, "start": 512, "machine": 2, "duration": 34 }, { "task": 3, "start": 546, "machine": 3, "duration": 4 }, { "task": 4, "start": 550, "machine": 4, "duration": 28 }, { "task": 5, "start": 599, "machine": 5, "duration": 71 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 457, "machine": 0, "duration": 48 }, { "task": 1, "start": 564, "machine": 1, "duration": 75 }, { "task": 2, "start": 659, "machine": 2, "duration": 22 }, { "task": 3, "start": 681, "machine": 3, "duration": 38 }, { "task": 4, "start": 776, "machine": 4, "duration": 74 }, { "task": 5, "start": 858, "machine": 5, "duration": 47 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 18 }, { "task": 1, "start": 18, "machine": 1, "duration": 30 }, { "task": 2, "start": 48, "machine": 2, "duration": 72 }, { "task": 3, "start": 120, "machine": 3, "duration": 35 }, { "task": 4, "start": 155, "machine": 4, "duration": 59 }, { "task": 5, "start": 214, "machine": 5, "duration": 34 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 113, "machine": 0, "duration": 58 }, { "task": 1, "start": 173, "machine": 1, "duration": 32 }, { "task": 2, "start": 205, "machine": 2, "duration": 1 }, { "task": 3, "start": 239, "machine": 3, "duration": 43 }, { "task": 4, "start": 282, "machine": 4, "duration": 28 }, { "task": 5, "start": 310, "machine": 5, "duration": 48 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 233, "machine": 0, "duration": 94 }, { "task": 1, "start": 377, "machine": 1, "duration": 34 }, { "task": 2, "start": 411, "machine": 2, "duration": 21 }, { "task": 3, "start": 480, "machine": 3, "duration": 61 }, { "task": 4, "start": 541, "machine": 4, "duration": 2 }, { "task": 5, "start": 544, "machine": 5, "duration": 55 } ] }, { "job": 11, "tasks": [ { "task": 0, "start": 505, "machine": 0, "duration": 69 }, { "task": 1, "start": 639, "machine": 1, "duration": 71 }, { "task": 2, "start": 710, "machine": 2, "duration": 14 }, { "task": 3, "start": 724, "machine": 3, "duration": 46 }, { "task": 4, "start": 770, "machine": 4, "duration": 6 }, { "task": 5, "start": 815, "machine": 5, "duration": 43 } ] } ], "obj": 934.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 12, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11", "J12" ], "machines": [ 0, 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 73 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 91 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 94 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 43 }, { "job_id": "J1", "task_id": 5, "machine_id": 5, "duration": 21 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 48 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 24 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 27 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 17 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 38 }, { "job_id": "J2", "task_id": 5, "machine_id": 5, "duration": 44 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 49 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 56 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 95 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 20 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 66 }, { "job_id": "J3", "task_id": 5, "machine_id": 5, "duration": 57 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 37 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 94 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 89 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 82 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 58 }, { "job_id": "J4", "task_id": 5, "machine_id": 5, "duration": 85 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 62 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 99 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 80 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 39 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 78 }, { "job_id": "J5", "task_id": 5, "machine_id": 5, "duration": 88 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 37 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 40 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 42 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 51 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 47 }, { "job_id": "J6", "task_id": 5, "machine_id": 5, "duration": 29 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 81 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 97 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 34 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 4 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 28 }, { "job_id": "J7", "task_id": 5, "machine_id": 5, "duration": 71 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 48 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 75 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 22 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 38 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 74 }, { "job_id": "J8", "task_id": 5, "machine_id": 5, "duration": 47 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 18 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 30 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 72 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 35 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 59 }, { "job_id": "J9", "task_id": 5, "machine_id": 5, "duration": 34 }, { "job_id": "J10", "task_id": 0, "machine_id": 0, "duration": 58 }, { "job_id": "J10", "task_id": 1, "machine_id": 1, "duration": 32 }, { "job_id": "J10", "task_id": 2, "machine_id": 2, "duration": 1 }, { "job_id": "J10", "task_id": 3, "machine_id": 3, "duration": 43 }, { "job_id": "J10", "task_id": 4, "machine_id": 4, "duration": 28 }, { "job_id": "J10", "task_id": 5, "machine_id": 5, "duration": 48 }, { "job_id": "J11", "task_id": 0, "machine_id": 0, "duration": 94 }, { "job_id": "J11", "task_id": 1, "machine_id": 1, "duration": 34 }, { "job_id": "J11", "task_id": 2, "machine_id": 2, "duration": 21 }, { "job_id": "J11", "task_id": 3, "machine_id": 3, "duration": 61 }, { "job_id": "J11", "task_id": 4, "machine_id": 4, "duration": 2 }, { "job_id": "J11", "task_id": 5, "machine_id": 5, "duration": 55 }, { "job_id": "J12", "task_id": 0, "machine_id": 0, "duration": 69 }, { "job_id": "J12", "task_id": 1, "machine_id": 1, "duration": 71 }, { "job_id": "J12", "task_id": 2, "machine_id": 2, "duration": 14 }, { "job_id": "J12", "task_id": 3, "machine_id": 3, "duration": 46 }, { "job_id": "J12", "task_id": 4, "machine_id": 4, "duration": 6 }, { "job_id": "J12", "task_id": 5, "machine_id": 5, "duration": 43 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 103, "machine": 0, "duration": 1 }, { "task": 1, "start": 205, "machine": 1, "duration": 73 }, { "task": 2, "start": 295, "machine": 2, "duration": 91 }, { "task": 3, "start": 386, "machine": 3, "duration": 94 }, { "task": 4, "start": 480, "machine": 4, "duration": 43 }, { "task": 5, "start": 523, "machine": 5, "duration": 21 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 55, "machine": 0, "duration": 48 }, { "task": 1, "start": 149, "machine": 1, "duration": 24 }, { "task": 2, "start": 174, "machine": 2, "duration": 27 }, { "task": 3, "start": 201, "machine": 3, "duration": 17 }, { "task": 4, "start": 310, "machine": 4, "duration": 38 }, { "task": 5, "start": 358, "machine": 5, "duration": 44 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 408, "machine": 0, "duration": 49 }, { "task": 1, "start": 508, "machine": 1, "duration": 56 }, { "task": 2, "start": 564, "machine": 2, "duration": 95 }, { "task": 3, "start": 659, "machine": 3, "duration": 20 }, { "task": 4, "start": 679, "machine": 4, "duration": 66 }, { "task": 5, "start": 758, "machine": 5, "duration": 57 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 18, "machine": 0, "duration": 37 }, { "task": 1, "start": 55, "machine": 1, "duration": 94 }, { "task": 2, "start": 206, "machine": 2, "duration": 89 }, { "task": 3, "start": 295, "machine": 3, "duration": 82 }, { "task": 4, "start": 377, "machine": 4, "duration": 58 }, { "task": 5, "start": 435, "machine": 5, "duration": 85 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 171, "machine": 0, "duration": 62 }, { "task": 1, "start": 278, "machine": 1, "duration": 99 }, { "task": 2, "start": 432, "machine": 2, "duration": 80 }, { "task": 3, "start": 550, "machine": 3, "duration": 39 }, { "task": 4, "start": 589, "machine": 4, "duration": 78 }, { "task": 5, "start": 670, "machine": 5, "duration": 88 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 574, "machine": 0, "duration": 37 }, { "task": 1, "start": 710, "machine": 1, "duration": 40 }, { "task": 2, "start": 750, "machine": 2, "duration": 42 }, { "task": 3, "start": 792, "machine": 3, "duration": 51 }, { "task": 4, "start": 850, "machine": 4, "duration": 47 }, { "task": 5, "start": 905, "machine": 5, "duration": 29 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 327, "machine": 0, "duration": 81 }, { "task": 1, "start": 411, "machine": 1, "duration": 97 }, { "task": 2, "start": 512, "machine": 2, "duration": 34 }, { "task": 3, "start": 546, "machine": 3, "duration": 4 }, { "task": 4, "start": 550, "machine": 4, "duration": 28 }, { "task": 5, "start": 599, "machine": 5, "duration": 71 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 457, "machine": 0, "duration": 48 }, { "task": 1, "start": 564, "machine": 1, "duration": 75 }, { "task": 2, "start": 659, "machine": 2, "duration": 22 }, { "task": 3, "start": 681, "machine": 3, "duration": 38 }, { "task": 4, "start": 776, "machine": 4, "duration": 74 }, { "task": 5, "start": 858, "machine": 5, "duration": 47 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 18 }, { "task": 1, "start": 18, "machine": 1, "duration": 30 }, { "task": 2, "start": 48, "machine": 2, "duration": 72 }, { "task": 3, "start": 120, "machine": 3, "duration": 35 }, { "task": 4, "start": 155, "machine": 4, "duration": 59 }, { "task": 5, "start": 214, "machine": 5, "duration": 34 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 113, "machine": 0, "duration": 58 }, { "task": 1, "start": 173, "machine": 1, "duration": 32 }, { "task": 2, "start": 205, "machine": 2, "duration": 1 }, { "task": 3, "start": 239, "machine": 3, "duration": 43 }, { "task": 4, "start": 282, "machine": 4, "duration": 28 }, { "task": 5, "start": 310, "machine": 5, "duration": 48 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 233, "machine": 0, "duration": 94 }, { "task": 1, "start": 377, "machine": 1, "duration": 34 }, { "task": 2, "start": 411, "machine": 2, "duration": 21 }, { "task": 3, "start": 480, "machine": 3, "duration": 61 }, { "task": 4, "start": 541, "machine": 4, "duration": 2 }, { "task": 5, "start": 544, "machine": 5, "duration": 55 } ] }, { "job": "J12", "tasks": [ { "task": 0, "start": 505, "machine": 0, "duration": 69 }, { "task": 1, "start": 639, "machine": 1, "duration": 71 }, { "task": 2, "start": 710, "machine": 2, "duration": 14 }, { "task": 3, "start": 724, "machine": 3, "duration": 46 }, { "task": 4, "start": 770, "machine": 4, "duration": 6 }, { "task": 5, "start": 815, "machine": 5, "duration": 43 } ] } ], "context_index": 33, "input_format": "csv", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "On a typical day the process is the same for everyone: sign in, get scanned, then meet the reviewer, with each segment taking a predictable amount of time. The goal is to schedule people into registration desks, scanners, and review rooms so no resource is handling more than one person at a time and nobody skips or repeats any step. Which schedule is best is decided by the clock time when the final patient is completely done — earlier finish times win. The detailed instance information is shown below.\n\nThere are 10 patients and 6 sequential stages; patient IDs: J1, J2, J3, J4, J5, J6, J7, J8, J9, J10; stage IDs: 0, 1, 2, 3, 4, 5.\n\n| patient_id | stage_index | stage_id | duration_minutes |\n|---|---|---|---|\n| J1 | 0 | 0 | 1 |\n| J1 | 1 | 1 | 86 |\n| J1 | 2 | 2 | 67 |\n| J1 | 3 | 3 | 40 |\n| J1 | 4 | 4 | 95 |\n| J1 | 5 | 5 | 42 |\n| J2 | 0 | 0 | 53 |\n| J2 | 1 | 1 | 91 |\n| J2 | 2 | 2 | 94 |\n| J2 | 3 | 3 | 11 |\n| J2 | 4 | 4 | 76 |\n| J2 | 5 | 5 | 95 |\n| J3 | 0 | 0 | 32 |\n| J3 | 1 | 1 | 59 |\n| J3 | 2 | 2 | 1 |\n| J3 | 3 | 3 | 73 |\n| J3 | 4 | 4 | 34 |\n| J3 | 5 | 5 | 58 |\n| J4 | 0 | 0 | 75 |\n| J4 | 1 | 1 | 2 |\n| J4 | 2 | 2 | 31 |\n| J4 | 3 | 3 | 51 |\n| J4 | 4 | 4 | 18 |\n| J4 | 5 | 5 | 78 |\n| J5 | 0 | 0 | 46 |\n| J5 | 1 | 1 | 52 |\n| J5 | 2 | 2 | 89 |\n| J5 | 3 | 3 | 5 |\n| J5 | 4 | 4 | 20 |\n| J5 | 5 | 5 | 59 |\n| J6 | 0 | 0 | 28 |\n| J6 | 1 | 1 | 17 |\n| J6 | 2 | 2 | 68 |\n| J6 | 3 | 3 | 56 |\n| J6 | 4 | 4 | 21 |\n| J6 | 5 | 5 | 62 |\n| J7 | 0 | 0 | 45 |\n| J7 | 1 | 1 | 73 |\n| J7 | 2 | 2 | 33 |\n| J7 | 3 | 3 | 40 |\n| J7 | 4 | 4 | 53 |\n| J7 | 5 | 5 | 69 |\n| J8 | 0 | 0 | 20 |\n| J8 | 1 | 1 | 50 |\n| J8 | 2 | 2 | 86 |\n| J8 | 3 | 3 | 45 |\n| J8 | 4 | 4 | 37 |\n| J8 | 5 | 5 | 35 |\n| J9 | 0 | 0 | 45 |\n| J9 | 1 | 1 | 73 |\n| J9 | 2 | 2 | 49 |\n| J9 | 3 | 3 | 83 |\n| J9 | 4 | 4 | 83 |\n| J9 | 5 | 5 | 62 |\n| J10 | 0 | 0 | 94 |\n| J10 | 1 | 1 | 49 |\n| J10 | 2 | 2 | 49 |\n| J10 | 3 | 3 | 33 |\n| J10 | 4 | 4 | 19 |\n| J10 | 5 | 5 | 54 |\n\nUse these details to build schedules and determine the earliest completion time.\n\nAlso, just so we're on the same page about how I'd like the reply laid out, a relaxed little JSON sketch is easiest for me to read — just list the jobs and their tasks. Something like this:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of it like a simple form: each \"job\" is one person going through the process, the \"tasks\" array lists the steps they take in order, and for each step you give which task number it is, when it starts, which machine/desk/room it uses, and how long that step lasts. That JSON is just the shape I want — a template, not the actual filled-in schedule.\n\nPlease use the exact identifiers from the instance input — don't rename them or invent new labels. \n- for example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 6, "nr_jobs": 10, "jobs": [ [ [ 0, 1 ], [ 1, 86 ], [ 2, 67 ], [ 3, 40 ], [ 4, 95 ], [ 5, 42 ] ], [ [ 0, 53 ], [ 1, 91 ], [ 2, 94 ], [ 3, 11 ], [ 4, 76 ], [ 5, 95 ] ], [ [ 0, 32 ], [ 1, 59 ], [ 2, 1 ], [ 3, 73 ], [ 4, 34 ], [ 5, 58 ] ], [ [ 0, 75 ], [ 1, 2 ], [ 2, 31 ], [ 3, 51 ], [ 4, 18 ], [ 5, 78 ] ], [ [ 0, 46 ], [ 1, 52 ], [ 2, 89 ], [ 3, 5 ], [ 4, 20 ], [ 5, 59 ] ], [ [ 0, 28 ], [ 1, 17 ], [ 2, 68 ], [ 3, 56 ], [ 4, 21 ], [ 5, 62 ] ], [ [ 0, 45 ], [ 1, 73 ], [ 2, 33 ], [ 3, 40 ], [ 4, 53 ], [ 5, 69 ] ], [ [ 0, 20 ], [ 1, 50 ], [ 2, 86 ], [ 3, 45 ], [ 4, 37 ], [ 5, 35 ] ], [ [ 0, 45 ], [ 1, 73 ], [ 2, 49 ], [ 3, 83 ], [ 4, 83 ], [ 5, 62 ] ], [ [ 0, 94 ], [ 1, 49 ], [ 2, 49 ], [ 3, 33 ], [ 4, 19 ], [ 5, 54 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 438, "machine": 0, "duration": 1 }, { "task": 1, "start": 474, "machine": 1, "duration": 86 }, { "task": 2, "start": 560, "machine": 2, "duration": 67 }, { "task": 3, "start": 627, "machine": 3, "duration": 40 }, { "task": 4, "start": 667, "machine": 4, "duration": 95 }, { "task": 5, "start": 762, "machine": 5, "duration": 42 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 106, "machine": 0, "duration": 53 }, { "task": 1, "start": 175, "machine": 1, "duration": 91 }, { "task": 2, "start": 299, "machine": 2, "duration": 94 }, { "task": 3, "start": 393, "machine": 3, "duration": 11 }, { "task": 4, "start": 404, "machine": 4, "duration": 76 }, { "task": 5, "start": 480, "machine": 5, "duration": 95 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 32 }, { "task": 1, "start": 32, "machine": 1, "duration": 59 }, { "task": 2, "start": 91, "machine": 2, "duration": 1 }, { "task": 3, "start": 92, "machine": 3, "duration": 73 }, { "task": 4, "start": 165, "machine": 4, "duration": 34 }, { "task": 5, "start": 199, "machine": 5, "duration": 58 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 159, "machine": 0, "duration": 75 }, { "task": 1, "start": 266, "machine": 1, "duration": 2 }, { "task": 2, "start": 268, "machine": 2, "duration": 31 }, { "task": 3, "start": 299, "machine": 3, "duration": 51 }, { "task": 4, "start": 350, "machine": 4, "duration": 18 }, { "task": 5, "start": 389, "machine": 5, "duration": 78 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 60, "machine": 0, "duration": 46 }, { "task": 1, "start": 123, "machine": 1, "duration": 52 }, { "task": 2, "start": 176, "machine": 2, "duration": 89 }, { "task": 3, "start": 280, "machine": 3, "duration": 5 }, { "task": 4, "start": 285, "machine": 4, "duration": 20 }, { "task": 5, "start": 330, "machine": 5, "duration": 59 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 32, "machine": 0, "duration": 28 }, { "task": 1, "start": 91, "machine": 1, "duration": 17 }, { "task": 2, "start": 108, "machine": 2, "duration": 68 }, { "task": 3, "start": 191, "machine": 3, "duration": 56 }, { "task": 4, "start": 247, "machine": 4, "duration": 21 }, { "task": 5, "start": 268, "machine": 5, "duration": 62 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 234, "machine": 0, "duration": 45 }, { "task": 1, "start": 279, "machine": 1, "duration": 73 }, { "task": 2, "start": 393, "machine": 2, "duration": 33 }, { "task": 3, "start": 438, "machine": 3, "duration": 40 }, { "task": 4, "start": 480, "machine": 4, "duration": 53 }, { "task": 5, "start": 575, "machine": 5, "duration": 69 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 439, "machine": 0, "duration": 20 }, { "task": 1, "start": 580, "machine": 1, "duration": 50 }, { "task": 2, "start": 630, "machine": 2, "duration": 86 }, { "task": 3, "start": 716, "machine": 3, "duration": 45 }, { "task": 4, "start": 762, "machine": 4, "duration": 37 }, { "task": 5, "start": 804, "machine": 5, "duration": 35 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 279, "machine": 0, "duration": 45 }, { "task": 1, "start": 352, "machine": 1, "duration": 73 }, { "task": 2, "start": 426, "machine": 2, "duration": 49 }, { "task": 3, "start": 478, "machine": 3, "duration": 83 }, { "task": 4, "start": 561, "machine": 4, "duration": 83 }, { "task": 5, "start": 644, "machine": 5, "duration": 62 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 324, "machine": 0, "duration": 94 }, { "task": 1, "start": 425, "machine": 1, "duration": 49 }, { "task": 2, "start": 495, "machine": 2, "duration": 49 }, { "task": 3, "start": 570, "machine": 3, "duration": 33 }, { "task": 4, "start": 644, "machine": 4, "duration": 19 }, { "task": 5, "start": 706, "machine": 5, "duration": 54 } ] } ], "obj": 839.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 10, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10" ], "machines": [ 0, 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 86 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 67 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 40 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 95 }, { "job_id": "J1", "task_id": 5, "machine_id": 5, "duration": 42 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 53 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 91 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 94 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 11 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 76 }, { "job_id": "J2", "task_id": 5, "machine_id": 5, "duration": 95 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 32 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 59 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 1 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 73 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 34 }, { "job_id": "J3", "task_id": 5, "machine_id": 5, "duration": 58 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 75 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 2 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 31 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 51 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 18 }, { "job_id": "J4", "task_id": 5, "machine_id": 5, "duration": 78 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 46 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 52 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 89 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 5 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 20 }, { "job_id": "J5", "task_id": 5, "machine_id": 5, "duration": 59 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 28 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 17 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 68 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 56 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 21 }, { "job_id": "J6", "task_id": 5, "machine_id": 5, "duration": 62 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 45 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 73 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 33 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 40 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 53 }, { "job_id": "J7", "task_id": 5, "machine_id": 5, "duration": 69 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 20 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 50 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 86 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 45 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 37 }, { "job_id": "J8", "task_id": 5, "machine_id": 5, "duration": 35 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 45 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 73 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 49 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 83 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 83 }, { "job_id": "J9", "task_id": 5, "machine_id": 5, "duration": 62 }, { "job_id": "J10", "task_id": 0, "machine_id": 0, "duration": 94 }, { "job_id": "J10", "task_id": 1, "machine_id": 1, "duration": 49 }, { "job_id": "J10", "task_id": 2, "machine_id": 2, "duration": 49 }, { "job_id": "J10", "task_id": 3, "machine_id": 3, "duration": 33 }, { "job_id": "J10", "task_id": 4, "machine_id": 4, "duration": 19 }, { "job_id": "J10", "task_id": 5, "machine_id": 5, "duration": 54 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 438, "machine": 0, "duration": 1 }, { "task": 1, "start": 474, "machine": 1, "duration": 86 }, { "task": 2, "start": 560, "machine": 2, "duration": 67 }, { "task": 3, "start": 627, "machine": 3, "duration": 40 }, { "task": 4, "start": 667, "machine": 4, "duration": 95 }, { "task": 5, "start": 762, "machine": 5, "duration": 42 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 106, "machine": 0, "duration": 53 }, { "task": 1, "start": 175, "machine": 1, "duration": 91 }, { "task": 2, "start": 299, "machine": 2, "duration": 94 }, { "task": 3, "start": 393, "machine": 3, "duration": 11 }, { "task": 4, "start": 404, "machine": 4, "duration": 76 }, { "task": 5, "start": 480, "machine": 5, "duration": 95 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 32 }, { "task": 1, "start": 32, "machine": 1, "duration": 59 }, { "task": 2, "start": 91, "machine": 2, "duration": 1 }, { "task": 3, "start": 92, "machine": 3, "duration": 73 }, { "task": 4, "start": 165, "machine": 4, "duration": 34 }, { "task": 5, "start": 199, "machine": 5, "duration": 58 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 159, "machine": 0, "duration": 75 }, { "task": 1, "start": 266, "machine": 1, "duration": 2 }, { "task": 2, "start": 268, "machine": 2, "duration": 31 }, { "task": 3, "start": 299, "machine": 3, "duration": 51 }, { "task": 4, "start": 350, "machine": 4, "duration": 18 }, { "task": 5, "start": 389, "machine": 5, "duration": 78 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 60, "machine": 0, "duration": 46 }, { "task": 1, "start": 123, "machine": 1, "duration": 52 }, { "task": 2, "start": 176, "machine": 2, "duration": 89 }, { "task": 3, "start": 280, "machine": 3, "duration": 5 }, { "task": 4, "start": 285, "machine": 4, "duration": 20 }, { "task": 5, "start": 330, "machine": 5, "duration": 59 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 32, "machine": 0, "duration": 28 }, { "task": 1, "start": 91, "machine": 1, "duration": 17 }, { "task": 2, "start": 108, "machine": 2, "duration": 68 }, { "task": 3, "start": 191, "machine": 3, "duration": 56 }, { "task": 4, "start": 247, "machine": 4, "duration": 21 }, { "task": 5, "start": 268, "machine": 5, "duration": 62 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 234, "machine": 0, "duration": 45 }, { "task": 1, "start": 279, "machine": 1, "duration": 73 }, { "task": 2, "start": 393, "machine": 2, "duration": 33 }, { "task": 3, "start": 438, "machine": 3, "duration": 40 }, { "task": 4, "start": 480, "machine": 4, "duration": 53 }, { "task": 5, "start": 575, "machine": 5, "duration": 69 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 439, "machine": 0, "duration": 20 }, { "task": 1, "start": 580, "machine": 1, "duration": 50 }, { "task": 2, "start": 630, "machine": 2, "duration": 86 }, { "task": 3, "start": 716, "machine": 3, "duration": 45 }, { "task": 4, "start": 762, "machine": 4, "duration": 37 }, { "task": 5, "start": 804, "machine": 5, "duration": 35 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 279, "machine": 0, "duration": 45 }, { "task": 1, "start": 352, "machine": 1, "duration": 73 }, { "task": 2, "start": 426, "machine": 2, "duration": 49 }, { "task": 3, "start": 478, "machine": 3, "duration": 83 }, { "task": 4, "start": 561, "machine": 4, "duration": 83 }, { "task": 5, "start": 644, "machine": 5, "duration": 62 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 324, "machine": 0, "duration": 94 }, { "task": 1, "start": 425, "machine": 1, "duration": 49 }, { "task": 2, "start": 495, "machine": 2, "duration": 49 }, { "task": 3, "start": 570, "machine": 3, "duration": 33 }, { "task": 4, "start": 644, "machine": 4, "duration": 19 }, { "task": 5, "start": 706, "machine": 5, "duration": 54 } ] } ], "context_index": 34, "input_format": "markdown_table", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Someone in the shop has to line up the pieces so each one goes through cutting, sanding, and varnishing in that exact sequence, with each operation taking a predetermined amount of time. No station can handle overlapping pieces and nothing can be skipped or repeated; the decision is just the order of the pieces, and the goal is to minimize the total time until the very last piece is finished — basically the elapsed time from the start of work to the last varnished piece. The detailed list of pieces and times is below.\n\nThere are 9 pieces and 5 stations; the pieces are J1, J2, J3, J4, J5, J6, J7, J8, J9 and the stations are 0, 1, 2, 3, 4.\nPiece J1, operation 0 at station 0, processing time 1.\nPiece J1, operation 1 at station 1, processing time 99.\nPiece J1, operation 2 at station 2, processing time 43.\nPiece J1, operation 3 at station 3, processing time 85.\nPiece J1, operation 4 at station 4, processing time 49.\nPiece J2, operation 0 at station 0, processing time 64.\nPiece J2, operation 1 at station 1, processing time 57.\nPiece J2, operation 2 at station 2, processing time 59.\nPiece J2, operation 3 at station 3, processing time 63.\nPiece J2, operation 4 at station 4, processing time 4.\nPiece J3, operation 0 at station 0, processing time 15.\nPiece J3, operation 1 at station 1, processing time 48.\nPiece J3, operation 2 at station 2, processing time 16.\nPiece J3, operation 3 at station 3, processing time 63.\nPiece J3, operation 4 at station 4, processing time 7.\nPiece J4, operation 0 at station 0, processing time 26.\nPiece J4, operation 1 at station 1, processing time 1.\nPiece J4, operation 2 at station 2, processing time 58.\nPiece J4, operation 3 at station 3, processing time 14.\nPiece J4, operation 4 at station 4, processing time 8.\nPiece J5, operation 0 at station 0, processing time 73.\nPiece J5, operation 1 at station 1, processing time 20.\nPiece J5, operation 2 at station 2, processing time 76.\nPiece J5, operation 3 at station 3, processing time 71.\nPiece J5, operation 4 at station 4, processing time 31.\nPiece J6, operation 0 at station 0, processing time 5.\nPiece J6, operation 1 at station 1, processing time 98.\nPiece J6, operation 2 at station 2, processing time 70.\nPiece J6, operation 3 at station 3, processing time 61.\nPiece J6, operation 4 at station 4, processing time 29.\nPiece J7, operation 0 at station 0, processing time 19.\nPiece J7, operation 1 at station 1, processing time 92.\nPiece J7, operation 2 at station 2, processing time 94.\nPiece J7, operation 3 at station 3, processing time 61.\nPiece J7, operation 4 at station 4, processing time 94.\nPiece J8, operation 0 at station 0, processing time 94.\nPiece J8, operation 1 at station 1, processing time 8.\nPiece J8, operation 2 at station 2, processing time 49.\nPiece J8, operation 3 at station 3, processing time 32.\nPiece J8, operation 4 at station 4, processing time 76.\nPiece J9, operation 0 at station 0, processing time 77.\nPiece J9, operation 1 at station 1, processing time 67.\nPiece J9, operation 2 at station 2, processing time 92.\nPiece J9, operation 3 at station 3, processing time 26.\nPiece J9, operation 4 at station 4, processing time 52.\nThe goal remains to minimize the elapsed time until the last piece is varnished.\n\nAlso, when you send the schedule back, please shape it like this JSON so it's easy to read and parse:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThis is just the form I expect: each item in \"solution\" is a job (a piece), \"tasks\" lists that job's operations in order, and each task shows which step it is, when it starts, which machine it uses, and how long it takes. Think of it like filling out a simple form — it's the shape I need, not the final numbers.\n\nPlease use the exact identifiers from the instance input — don't rename jobs or machines or invent new labels. \n- for example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 5, "nr_jobs": 9, "jobs": [ [ [ 0, 1 ], [ 1, 99 ], [ 2, 43 ], [ 3, 85 ], [ 4, 49 ] ], [ [ 0, 64 ], [ 1, 57 ], [ 2, 59 ], [ 3, 63 ], [ 4, 4 ] ], [ [ 0, 15 ], [ 1, 48 ], [ 2, 16 ], [ 3, 63 ], [ 4, 7 ] ], [ [ 0, 26 ], [ 1, 1 ], [ 2, 58 ], [ 3, 14 ], [ 4, 8 ] ], [ [ 0, 73 ], [ 1, 20 ], [ 2, 76 ], [ 3, 71 ], [ 4, 31 ] ], [ [ 0, 5 ], [ 1, 98 ], [ 2, 70 ], [ 3, 61 ], [ 4, 29 ] ], [ [ 0, 19 ], [ 1, 92 ], [ 2, 94 ], [ 3, 61 ], [ 4, 94 ] ], [ [ 0, 94 ], [ 1, 8 ], [ 2, 49 ], [ 3, 32 ], [ 4, 76 ] ], [ [ 0, 77 ], [ 1, 67 ], [ 2, 92 ], [ 3, 26 ], [ 4, 52 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 99 }, { "task": 2, "start": 100, "machine": 2, "duration": 43 }, { "task": 3, "start": 143, "machine": 3, "duration": 85 }, { "task": 4, "start": 228, "machine": 4, "duration": 49 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 192, "machine": 0, "duration": 64 }, { "task": 1, "start": 441, "machine": 1, "duration": 57 }, { "task": 2, "start": 540, "machine": 2, "duration": 59 }, { "task": 3, "start": 599, "machine": 3, "duration": 63 }, { "task": 4, "start": 662, "machine": 4, "duration": 4 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 256, "machine": 0, "duration": 15 }, { "task": 1, "start": 319, "machine": 1, "duration": 48 }, { "task": 2, "start": 432, "machine": 2, "duration": 16 }, { "task": 3, "start": 493, "machine": 3, "duration": 63 }, { "task": 4, "start": 639, "machine": 4, "duration": 7 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 271, "machine": 0, "duration": 26 }, { "task": 1, "start": 318, "machine": 1, "duration": 1 }, { "task": 2, "start": 599, "machine": 2, "duration": 58 }, { "task": 3, "start": 662, "machine": 3, "duration": 14 }, { "task": 4, "start": 676, "machine": 4, "duration": 8 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 73 }, { "task": 1, "start": 100, "machine": 1, "duration": 20 }, { "task": 2, "start": 143, "machine": 2, "duration": 76 }, { "task": 3, "start": 228, "machine": 3, "duration": 71 }, { "task": 4, "start": 299, "machine": 4, "duration": 31 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 74, "machine": 0, "duration": 5 }, { "task": 1, "start": 120, "machine": 1, "duration": 98 }, { "task": 2, "start": 219, "machine": 2, "duration": 70 }, { "task": 3, "start": 299, "machine": 3, "duration": 61 }, { "task": 4, "start": 360, "machine": 4, "duration": 29 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 173, "machine": 0, "duration": 19 }, { "task": 1, "start": 226, "machine": 1, "duration": 92 }, { "task": 2, "start": 338, "machine": 2, "duration": 94 }, { "task": 3, "start": 432, "machine": 3, "duration": 61 }, { "task": 4, "start": 493, "machine": 4, "duration": 94 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 79, "machine": 0, "duration": 94 }, { "task": 1, "start": 218, "machine": 1, "duration": 8 }, { "task": 2, "start": 289, "machine": 2, "duration": 49 }, { "task": 3, "start": 360, "machine": 3, "duration": 32 }, { "task": 4, "start": 392, "machine": 4, "duration": 76 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 297, "machine": 0, "duration": 77 }, { "task": 1, "start": 374, "machine": 1, "duration": 67 }, { "task": 2, "start": 448, "machine": 2, "duration": 92 }, { "task": 3, "start": 556, "machine": 3, "duration": 26 }, { "task": 4, "start": 587, "machine": 4, "duration": 52 } ] } ], "obj": 684.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 9, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9" ], "machines": [ 0, 1, 2, 3, 4 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 99 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 43 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 85 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 49 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 64 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 57 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 59 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 63 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 4 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 15 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 48 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 16 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 63 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 7 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 26 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 1 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 58 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 14 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 8 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 73 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 20 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 76 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 71 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 31 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 5 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 98 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 70 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 61 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 29 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 19 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 92 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 94 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 61 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 94 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 94 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 8 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 49 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 32 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 76 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 77 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 67 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 92 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 26 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 52 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 99 }, { "task": 2, "start": 100, "machine": 2, "duration": 43 }, { "task": 3, "start": 143, "machine": 3, "duration": 85 }, { "task": 4, "start": 228, "machine": 4, "duration": 49 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 192, "machine": 0, "duration": 64 }, { "task": 1, "start": 441, "machine": 1, "duration": 57 }, { "task": 2, "start": 540, "machine": 2, "duration": 59 }, { "task": 3, "start": 599, "machine": 3, "duration": 63 }, { "task": 4, "start": 662, "machine": 4, "duration": 4 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 256, "machine": 0, "duration": 15 }, { "task": 1, "start": 319, "machine": 1, "duration": 48 }, { "task": 2, "start": 432, "machine": 2, "duration": 16 }, { "task": 3, "start": 493, "machine": 3, "duration": 63 }, { "task": 4, "start": 639, "machine": 4, "duration": 7 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 271, "machine": 0, "duration": 26 }, { "task": 1, "start": 318, "machine": 1, "duration": 1 }, { "task": 2, "start": 599, "machine": 2, "duration": 58 }, { "task": 3, "start": 662, "machine": 3, "duration": 14 }, { "task": 4, "start": 676, "machine": 4, "duration": 8 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 73 }, { "task": 1, "start": 100, "machine": 1, "duration": 20 }, { "task": 2, "start": 143, "machine": 2, "duration": 76 }, { "task": 3, "start": 228, "machine": 3, "duration": 71 }, { "task": 4, "start": 299, "machine": 4, "duration": 31 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 74, "machine": 0, "duration": 5 }, { "task": 1, "start": 120, "machine": 1, "duration": 98 }, { "task": 2, "start": 219, "machine": 2, "duration": 70 }, { "task": 3, "start": 299, "machine": 3, "duration": 61 }, { "task": 4, "start": 360, "machine": 4, "duration": 29 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 173, "machine": 0, "duration": 19 }, { "task": 1, "start": 226, "machine": 1, "duration": 92 }, { "task": 2, "start": 338, "machine": 2, "duration": 94 }, { "task": 3, "start": 432, "machine": 3, "duration": 61 }, { "task": 4, "start": 493, "machine": 4, "duration": 94 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 79, "machine": 0, "duration": 94 }, { "task": 1, "start": 218, "machine": 1, "duration": 8 }, { "task": 2, "start": 289, "machine": 2, "duration": 49 }, { "task": 3, "start": 360, "machine": 3, "duration": 32 }, { "task": 4, "start": 392, "machine": 4, "duration": 76 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 297, "machine": 0, "duration": 77 }, { "task": 1, "start": 374, "machine": 1, "duration": 67 }, { "task": 2, "start": 448, "machine": 2, "duration": 92 }, { "task": 3, "start": 556, "machine": 3, "duration": 26 }, { "task": 4, "start": 587, "machine": 4, "duration": 52 } ] } ], "context_index": 35, "input_format": "nl", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "There’s a steady rhythm on the shop floor: every frame needs cutting, then assembly, then stitching, and we know how long each of those tasks takes. The puzzle is arranging which frame goes through which station at what time so a station never handles two frames simultaneously, each frame gets each step in order exactly once, and the total job is wrapped up as early as possible — determined by the time the very last frame comes off the final station. Concrete details will be shown below.\n\nBelow are the concrete details for 9 frames processed across 6 stations: frame IDs J1, J2, J3, J4, J5, J6, J7, J8, J9, station IDs 1, 2, 3, 4, 5, 6.\nFrame J1 requires step 0 on station 1 for 1 time units.\nFrame J1 requires step 1 on station 2 for 13 time units.\nFrame J1 requires step 2 on station 3 for 18 time units.\nFrame J1 requires step 3 on station 4 for 32 time units.\nFrame J1 requires step 4 on station 5 for 3 time units.\nFrame J1 requires step 5 on station 6 for 86 time units.\nFrame J2 requires step 0 on station 1 for 62 time units.\nFrame J2 requires step 1 on station 2 for 27 time units.\nFrame J2 requires step 2 on station 3 for 31 time units.\nFrame J2 requires step 3 on station 4 for 97 time units.\nFrame J2 requires step 4 on station 5 for 53 time units.\nFrame J2 requires step 5 on station 6 for 99 time units.\nFrame J3 requires step 0 on station 1 for 98 time units.\nFrame J3 requires step 1 on station 2 for 66 time units.\nFrame J3 requires step 2 on station 3 for 12 time units.\nFrame J3 requires step 3 on station 4 for 78 time units.\nFrame J3 requires step 4 on station 5 for 68 time units.\nFrame J3 requires step 5 on station 6 for 59 time units.\nFrame J4 requires step 0 on station 1 for 52 time units.\nFrame J4 requires step 1 on station 2 for 15 time units.\nFrame J4 requires step 2 on station 3 for 15 time units.\nFrame J4 requires step 3 on station 4 for 88 time units.\nFrame J4 requires step 4 on station 5 for 35 time units.\nFrame J4 requires step 5 on station 6 for 64 time units.\nFrame J5 requires step 0 on station 1 for 16 time units.\nFrame J5 requires step 1 on station 2 for 57 time units.\nFrame J5 requires step 2 on station 3 for 9 time units.\nFrame J5 requires step 3 on station 4 for 35 time units.\nFrame J5 requires step 4 on station 5 for 4 time units.\nFrame J5 requires step 5 on station 6 for 99 time units.\nFrame J6 requires step 0 on station 1 for 10 time units.\nFrame J6 requires step 1 on station 2 for 69 time units.\nFrame J6 requires step 2 on station 3 for 21 time units.\nFrame J6 requires step 3 on station 4 for 65 time units.\nFrame J6 requires step 4 on station 5 for 68 time units.\nFrame J6 requires step 5 on station 6 for 28 time units.\nFrame J7 requires step 0 on station 1 for 71 time units.\nFrame J7 requires step 1 on station 2 for 25 time units.\nFrame J7 requires step 2 on station 3 for 31 time units.\nFrame J7 requires step 3 on station 4 for 13 time units.\nFrame J7 requires step 4 on station 5 for 3 time units.\nFrame J7 requires step 5 on station 6 for 65 time units.\nFrame J8 requires step 0 on station 1 for 64 time units.\nFrame J8 requires step 1 on station 2 for 1 time units.\nFrame J8 requires step 2 on station 3 for 17 time units.\nFrame J8 requires step 3 on station 4 for 60 time units.\nFrame J8 requires step 4 on station 5 for 63 time units.\nFrame J8 requires step 5 on station 6 for 13 time units.\nFrame J9 requires step 0 on station 1 for 99 time units.\nFrame J9 requires step 1 on station 2 for 60 time units.\nFrame J9 requires step 2 on station 3 for 2 time units.\nFrame J9 requires step 3 on station 4 for 78 time units.\nFrame J9 requires step 4 on station 5 for 31 time units.\nFrame J9 requires step 5 on station 6 for 17 time units.\nWe’ll arrange these task entries so no station handles two frames at once and each frame’s steps occur in order to minimize the overall completion time.\n\nI'll return the schedule in a simple JSON layout so it's easy to read and machine-friendly — something like this:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThis sketch shows the shape I'll use: each job gets an entry, with a list of its tasks. For each task you'll see which step it is (task), when it starts (start), which machine/station it runs on (machine), and how long it takes (duration). Think of it as a little form for each frame going through cut → assemble → stitch.\n\nPlease remember to use the exact identifiers from the instance input with no renaming or added labels. \nValid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 6, "nr_jobs": 9, "jobs": [ [ [ 0, 1 ], [ 1, 13 ], [ 2, 18 ], [ 3, 32 ], [ 4, 3 ], [ 5, 86 ] ], [ [ 0, 62 ], [ 1, 27 ], [ 2, 31 ], [ 3, 97 ], [ 4, 53 ], [ 5, 99 ] ], [ [ 0, 98 ], [ 1, 66 ], [ 2, 12 ], [ 3, 78 ], [ 4, 68 ], [ 5, 59 ] ], [ [ 0, 52 ], [ 1, 15 ], [ 2, 15 ], [ 3, 88 ], [ 4, 35 ], [ 5, 64 ] ], [ [ 0, 16 ], [ 1, 57 ], [ 2, 9 ], [ 3, 35 ], [ 4, 4 ], [ 5, 99 ] ], [ [ 0, 10 ], [ 1, 69 ], [ 2, 21 ], [ 3, 65 ], [ 4, 68 ], [ 5, 28 ] ], [ [ 0, 71 ], [ 1, 25 ], [ 2, 31 ], [ 3, 13 ], [ 4, 3 ], [ 5, 65 ] ], [ [ 0, 64 ], [ 1, 1 ], [ 2, 17 ], [ 3, 60 ], [ 4, 63 ], [ 5, 13 ] ], [ [ 0, 99 ], [ 1, 60 ], [ 2, 2 ], [ 3, 78 ], [ 4, 31 ], [ 5, 17 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 13 }, { "task": 2, "start": 14, "machine": 2, "duration": 18 }, { "task": 3, "start": 32, "machine": 3, "duration": 32 }, { "task": 4, "start": 64, "machine": 4, "duration": 3 }, { "task": 5, "start": 67, "machine": 5, "duration": 86 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 63, "machine": 0, "duration": 62 }, { "task": 1, "start": 137, "machine": 1, "duration": 27 }, { "task": 2, "start": 164, "machine": 2, "duration": 31 }, { "task": 3, "start": 271, "machine": 3, "duration": 97 }, { "task": 4, "start": 384, "machine": 4, "duration": 53 }, { "task": 5, "start": 467, "machine": 5, "duration": 99 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 141, "machine": 0, "duration": 98 }, { "task": 1, "start": 239, "machine": 1, "duration": 66 }, { "task": 2, "start": 305, "machine": 2, "duration": 12 }, { "task": 3, "start": 381, "machine": 3, "duration": 78 }, { "task": 4, "start": 459, "machine": 4, "duration": 68 }, { "task": 5, "start": 566, "machine": 5, "duration": 59 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 52 }, { "task": 1, "start": 53, "machine": 1, "duration": 15 }, { "task": 2, "start": 68, "machine": 2, "duration": 15 }, { "task": 3, "start": 83, "machine": 3, "duration": 88 }, { "task": 4, "start": 171, "machine": 4, "duration": 35 }, { "task": 5, "start": 206, "machine": 5, "duration": 64 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 125, "machine": 0, "duration": 16 }, { "task": 1, "start": 164, "machine": 1, "duration": 57 }, { "task": 2, "start": 221, "machine": 2, "duration": 9 }, { "task": 3, "start": 236, "machine": 3, "duration": 35 }, { "task": 4, "start": 271, "machine": 4, "duration": 4 }, { "task": 5, "start": 275, "machine": 5, "duration": 99 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 53, "machine": 0, "duration": 10 }, { "task": 1, "start": 68, "machine": 1, "duration": 69 }, { "task": 2, "start": 137, "machine": 2, "duration": 21 }, { "task": 3, "start": 171, "machine": 3, "duration": 65 }, { "task": 4, "start": 275, "machine": 4, "duration": 68 }, { "task": 5, "start": 374, "machine": 5, "duration": 28 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 239, "machine": 0, "duration": 71 }, { "task": 1, "start": 310, "machine": 1, "duration": 25 }, { "task": 2, "start": 335, "machine": 2, "duration": 31 }, { "task": 3, "start": 368, "machine": 3, "duration": 13 }, { "task": 4, "start": 381, "machine": 4, "duration": 3 }, { "task": 5, "start": 402, "machine": 5, "duration": 65 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 310, "machine": 0, "duration": 64 }, { "task": 1, "start": 374, "machine": 1, "duration": 1 }, { "task": 2, "start": 375, "machine": 2, "duration": 17 }, { "task": 3, "start": 459, "machine": 3, "duration": 60 }, { "task": 4, "start": 527, "machine": 4, "duration": 63 }, { "task": 5, "start": 625, "machine": 5, "duration": 13 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 374, "machine": 0, "duration": 99 }, { "task": 1, "start": 473, "machine": 1, "duration": 60 }, { "task": 2, "start": 533, "machine": 2, "duration": 2 }, { "task": 3, "start": 535, "machine": 3, "duration": 78 }, { "task": 4, "start": 613, "machine": 4, "duration": 31 }, { "task": 5, "start": 644, "machine": 5, "duration": 17 } ] } ], "obj": 661.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 9, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9" ], "machines": [ 1, 2, 3, 4, 5, 6 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 2, "duration": 13 }, { "job_id": "J1", "task_id": 2, "machine_id": 3, "duration": 18 }, { "job_id": "J1", "task_id": 3, "machine_id": 4, "duration": 32 }, { "job_id": "J1", "task_id": 4, "machine_id": 5, "duration": 3 }, { "job_id": "J1", "task_id": 5, "machine_id": 6, "duration": 86 }, { "job_id": "J2", "task_id": 0, "machine_id": 1, "duration": 62 }, { "job_id": "J2", "task_id": 1, "machine_id": 2, "duration": 27 }, { "job_id": "J2", "task_id": 2, "machine_id": 3, "duration": 31 }, { "job_id": "J2", "task_id": 3, "machine_id": 4, "duration": 97 }, { "job_id": "J2", "task_id": 4, "machine_id": 5, "duration": 53 }, { "job_id": "J2", "task_id": 5, "machine_id": 6, "duration": 99 }, { "job_id": "J3", "task_id": 0, "machine_id": 1, "duration": 98 }, { "job_id": "J3", "task_id": 1, "machine_id": 2, "duration": 66 }, { "job_id": "J3", "task_id": 2, "machine_id": 3, "duration": 12 }, { "job_id": "J3", "task_id": 3, "machine_id": 4, "duration": 78 }, { "job_id": "J3", "task_id": 4, "machine_id": 5, "duration": 68 }, { "job_id": "J3", "task_id": 5, "machine_id": 6, "duration": 59 }, { "job_id": "J4", "task_id": 0, "machine_id": 1, "duration": 52 }, { "job_id": "J4", "task_id": 1, "machine_id": 2, "duration": 15 }, { "job_id": "J4", "task_id": 2, "machine_id": 3, "duration": 15 }, { "job_id": "J4", "task_id": 3, "machine_id": 4, "duration": 88 }, { "job_id": "J4", "task_id": 4, "machine_id": 5, "duration": 35 }, { "job_id": "J4", "task_id": 5, "machine_id": 6, "duration": 64 }, { "job_id": "J5", "task_id": 0, "machine_id": 1, "duration": 16 }, { "job_id": "J5", "task_id": 1, "machine_id": 2, "duration": 57 }, { "job_id": "J5", "task_id": 2, "machine_id": 3, "duration": 9 }, { "job_id": "J5", "task_id": 3, "machine_id": 4, "duration": 35 }, { "job_id": "J5", "task_id": 4, "machine_id": 5, "duration": 4 }, { "job_id": "J5", "task_id": 5, "machine_id": 6, "duration": 99 }, { "job_id": "J6", "task_id": 0, "machine_id": 1, "duration": 10 }, { "job_id": "J6", "task_id": 1, "machine_id": 2, "duration": 69 }, { "job_id": "J6", "task_id": 2, "machine_id": 3, "duration": 21 }, { "job_id": "J6", "task_id": 3, "machine_id": 4, "duration": 65 }, { "job_id": "J6", "task_id": 4, "machine_id": 5, "duration": 68 }, { "job_id": "J6", "task_id": 5, "machine_id": 6, "duration": 28 }, { "job_id": "J7", "task_id": 0, "machine_id": 1, "duration": 71 }, { "job_id": "J7", "task_id": 1, "machine_id": 2, "duration": 25 }, { "job_id": "J7", "task_id": 2, "machine_id": 3, "duration": 31 }, { "job_id": "J7", "task_id": 3, "machine_id": 4, "duration": 13 }, { "job_id": "J7", "task_id": 4, "machine_id": 5, "duration": 3 }, { "job_id": "J7", "task_id": 5, "machine_id": 6, "duration": 65 }, { "job_id": "J8", "task_id": 0, "machine_id": 1, "duration": 64 }, { "job_id": "J8", "task_id": 1, "machine_id": 2, "duration": 1 }, { "job_id": "J8", "task_id": 2, "machine_id": 3, "duration": 17 }, { "job_id": "J8", "task_id": 3, "machine_id": 4, "duration": 60 }, { "job_id": "J8", "task_id": 4, "machine_id": 5, "duration": 63 }, { "job_id": "J8", "task_id": 5, "machine_id": 6, "duration": 13 }, { "job_id": "J9", "task_id": 0, "machine_id": 1, "duration": 99 }, { "job_id": "J9", "task_id": 1, "machine_id": 2, "duration": 60 }, { "job_id": "J9", "task_id": 2, "machine_id": 3, "duration": 2 }, { "job_id": "J9", "task_id": 3, "machine_id": 4, "duration": 78 }, { "job_id": "J9", "task_id": 4, "machine_id": 5, "duration": 31 }, { "job_id": "J9", "task_id": 5, "machine_id": 6, "duration": 17 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 1, "duration": 1 }, { "task": 1, "start": 1, "machine": 2, "duration": 13 }, { "task": 2, "start": 14, "machine": 3, "duration": 18 }, { "task": 3, "start": 32, "machine": 4, "duration": 32 }, { "task": 4, "start": 64, "machine": 5, "duration": 3 }, { "task": 5, "start": 67, "machine": 6, "duration": 86 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 63, "machine": 1, "duration": 62 }, { "task": 1, "start": 137, "machine": 2, "duration": 27 }, { "task": 2, "start": 164, "machine": 3, "duration": 31 }, { "task": 3, "start": 271, "machine": 4, "duration": 97 }, { "task": 4, "start": 384, "machine": 5, "duration": 53 }, { "task": 5, "start": 467, "machine": 6, "duration": 99 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 141, "machine": 1, "duration": 98 }, { "task": 1, "start": 239, "machine": 2, "duration": 66 }, { "task": 2, "start": 305, "machine": 3, "duration": 12 }, { "task": 3, "start": 381, "machine": 4, "duration": 78 }, { "task": 4, "start": 459, "machine": 5, "duration": 68 }, { "task": 5, "start": 566, "machine": 6, "duration": 59 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 1, "machine": 1, "duration": 52 }, { "task": 1, "start": 53, "machine": 2, "duration": 15 }, { "task": 2, "start": 68, "machine": 3, "duration": 15 }, { "task": 3, "start": 83, "machine": 4, "duration": 88 }, { "task": 4, "start": 171, "machine": 5, "duration": 35 }, { "task": 5, "start": 206, "machine": 6, "duration": 64 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 125, "machine": 1, "duration": 16 }, { "task": 1, "start": 164, "machine": 2, "duration": 57 }, { "task": 2, "start": 221, "machine": 3, "duration": 9 }, { "task": 3, "start": 236, "machine": 4, "duration": 35 }, { "task": 4, "start": 271, "machine": 5, "duration": 4 }, { "task": 5, "start": 275, "machine": 6, "duration": 99 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 53, "machine": 1, "duration": 10 }, { "task": 1, "start": 68, "machine": 2, "duration": 69 }, { "task": 2, "start": 137, "machine": 3, "duration": 21 }, { "task": 3, "start": 171, "machine": 4, "duration": 65 }, { "task": 4, "start": 275, "machine": 5, "duration": 68 }, { "task": 5, "start": 374, "machine": 6, "duration": 28 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 239, "machine": 1, "duration": 71 }, { "task": 1, "start": 310, "machine": 2, "duration": 25 }, { "task": 2, "start": 335, "machine": 3, "duration": 31 }, { "task": 3, "start": 368, "machine": 4, "duration": 13 }, { "task": 4, "start": 381, "machine": 5, "duration": 3 }, { "task": 5, "start": 402, "machine": 6, "duration": 65 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 310, "machine": 1, "duration": 64 }, { "task": 1, "start": 374, "machine": 2, "duration": 1 }, { "task": 2, "start": 375, "machine": 3, "duration": 17 }, { "task": 3, "start": 459, "machine": 4, "duration": 60 }, { "task": 4, "start": 527, "machine": 5, "duration": 63 }, { "task": 5, "start": 625, "machine": 6, "duration": 13 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 374, "machine": 1, "duration": 99 }, { "task": 1, "start": 473, "machine": 2, "duration": 60 }, { "task": 2, "start": 533, "machine": 3, "duration": 2 }, { "task": 3, "start": 535, "machine": 4, "duration": 78 }, { "task": 4, "start": 613, "machine": 5, "duration": 31 }, { "task": 5, "start": 644, "machine": 6, "duration": 17 } ] } ], "context_index": 36, "input_format": "nl", "input_index_base": 1 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "There's a cramped shop where every part must be stamped, then assembled, then inspected in that order, and the supervisor needs to arrange the batch flow so machines aren’t stuck doing two things at once. The whole point is to get the entire set of parts done as quickly as possible — you track that by the time the last part clears inspection — and you can’t drop or duplicate any operation. The specific job times and items follow below.\n\n{\n \"batch_size\": 12,\n \"workstation_count\": 6,\n \"item_ids\": [\n \"J1\",\n \"J2\",\n \"J3\",\n \"J4\",\n \"J5\",\n \"J6\",\n \"J7\",\n \"J8\",\n \"J9\",\n \"J10\",\n \"J11\",\n \"J12\"\n ],\n \"workstation_ids\": [\n 0,\n 1,\n 2,\n 3,\n 4,\n 5\n ],\n \"tasks\": [\n {\n \"item_id\": \"J1\",\n \"operation_step\": 0,\n \"station_id\": 0,\n \"operation_time\": 1\n },\n {\n \"item_id\": \"J1\",\n \"operation_step\": 1,\n \"station_id\": 1,\n \"operation_time\": 26\n },\n {\n \"item_id\": \"J1\",\n \"operation_step\": 2,\n \"station_id\": 2,\n \"operation_time\": 93\n },\n {\n \"item_id\": \"J1\",\n \"operation_step\": 3,\n \"station_id\": 3,\n \"operation_time\": 77\n },\n {\n \"item_id\": \"J1\",\n \"operation_step\": 4,\n \"station_id\": 4,\n \"operation_time\": 56\n },\n {\n \"item_id\": \"J1\",\n \"operation_step\": 5,\n \"station_id\": 5,\n \"operation_time\": 8\n },\n {\n \"item_id\": \"J2\",\n \"operation_step\": 0,\n \"station_id\": 0,\n \"operation_time\": 67\n },\n {\n \"item_id\": \"J2\",\n \"operation_step\": 1,\n \"station_id\": 1,\n \"operation_time\": 95\n },\n {\n \"item_id\": \"J2\",\n \"operation_step\": 2,\n \"station_id\": 2,\n \"operation_time\": 98\n },\n {\n \"item_id\": \"J2\",\n \"operation_step\": 3,\n \"station_id\": 3,\n \"operation_time\": 90\n },\n {\n \"item_id\": \"J2\",\n \"operation_step\": 4,\n \"station_id\": 4,\n \"operation_time\": 91\n },\n {\n \"item_id\": \"J2\",\n \"operation_step\": 5,\n \"station_id\": 5,\n \"operation_time\": 51\n },\n {\n \"item_id\": \"J3\",\n \"operation_step\": 0,\n \"station_id\": 0,\n \"operation_time\": 81\n },\n {\n \"item_id\": \"J3\",\n \"operation_step\": 1,\n \"station_id\": 1,\n \"operation_time\": 69\n },\n {\n \"item_id\": \"J3\",\n \"operation_step\": 2,\n \"station_id\": 2,\n \"operation_time\": 17\n },\n {\n \"item_id\": \"J3\",\n \"operation_step\": 3,\n \"station_id\": 3,\n \"operation_time\": 32\n },\n {\n \"item_id\": \"J3\",\n \"operation_step\": 4,\n \"station_id\": 4,\n \"operation_time\": 35\n },\n {\n \"item_id\": \"J3\",\n \"operation_step\": 5,\n \"station_id\": 5,\n \"operation_time\": 60\n },\n {\n \"item_id\": \"J4\",\n \"operation_step\": 0,\n \"station_id\": 0,\n \"operation_time\": 90\n },\n {\n \"item_id\": \"J4\",\n \"operation_step\": 1,\n \"station_id\": 1,\n \"operation_time\": 22\n },\n {\n \"item_id\": \"J4\",\n \"operation_step\": 2,\n \"station_id\": 2,\n \"operation_time\": 56\n },\n {\n \"item_id\": \"J4\",\n \"operation_step\": 3,\n \"station_id\": 3,\n \"operation_time\": 57\n },\n {\n \"item_id\": \"J4\",\n \"operation_step\": 4,\n \"station_id\": 4,\n \"operation_time\": 94\n },\n {\n \"item_id\": \"J4\",\n \"operation_step\": 5,\n \"station_id\": 5,\n \"operation_time\": 57\n },\n {\n \"item_id\": \"J5\",\n \"operation_step\": 0,\n \"station_id\": 0,\n \"operation_time\": 1\n },\n {\n \"item_id\": \"J5\",\n \"operation_step\": 1,\n \"station_id\": 1,\n \"operation_time\": 10\n },\n {\n \"item_id\": \"J5\",\n \"operation_step\": 2,\n \"station_id\": 2,\n \"operation_time\": 18\n },\n {\n \"item_id\": \"J5\",\n \"operation_step\": 3,\n \"station_id\": 3,\n \"operation_time\": 1\n },\n {\n \"item_id\": \"J5\",\n \"operation_step\": 4,\n \"station_id\": 4,\n \"operation_time\": 45\n },\n {\n \"item_id\": \"J5\",\n \"operation_step\": 5,\n \"station_id\": 5,\n \"operation_time\": 69\n },\n {\n \"item_id\": \"J6\",\n \"operation_step\": 0,\n \"station_id\": 0,\n \"operation_time\": 1\n },\n {\n \"item_id\": \"J6\",\n \"operation_step\": 1,\n \"station_id\": 1,\n \"operation_time\": 45\n },\n {\n \"item_id\": \"J6\",\n \"operation_step\": 2,\n \"station_id\": 2,\n \"operation_time\": 47\n },\n {\n \"item_id\": \"J6\",\n \"operation_step\": 3,\n \"station_id\": 3,\n \"operation_time\": 70\n },\n {\n \"item_id\": \"J6\",\n \"operation_step\": 4,\n \"station_id\": 4,\n \"operation_time\": 42\n },\n {\n \"item_id\": \"J6\",\n \"operation_step\": 5,\n \"station_id\": 5,\n \"operation_time\": 60\n },\n {\n \"item_id\": \"J7\",\n \"operation_step\": 0,\n \"station_id\": 0,\n \"operation_time\": 35\n },\n {\n \"item_id\": \"J7\",\n \"operation_step\": 1,\n \"station_id\": 1,\n \"operation_time\": 1\n },\n {\n \"item_id\": \"J7\",\n \"operation_step\": 2,\n \"station_id\": 2,\n \"operation_time\": 30\n },\n {\n \"item_id\": \"J7\",\n \"operation_step\": 3,\n \"station_id\": 3,\n \"operation_time\": 50\n },\n {\n \"item_id\": \"J7\",\n \"operation_step\": 4,\n \"station_id\": 4,\n \"operation_time\": 27\n },\n {\n \"item_id\": \"J7\",\n \"operation_step\": 5,\n \"station_id\": 5,\n \"operation_time\": 64\n },\n {\n \"item_id\": \"J8\",\n \"operation_step\": 0,\n \"station_id\": 0,\n \"operation_time\": 37\n },\n {\n \"item_id\": \"J8\",\n \"operation_step\": 1,\n \"station_id\": 1,\n \"operation_time\": 76\n },\n {\n \"item_id\": \"J8\",\n \"operation_step\": 2,\n \"station_id\": 2,\n \"operation_time\": 82\n },\n {\n \"item_id\": \"J8\",\n \"operation_step\": 3,\n \"station_id\": 3,\n \"operation_time\": 67\n },\n {\n \"item_id\": \"J8\",\n \"operation_step\": 4,\n \"station_id\": 4,\n \"operation_time\": 27\n },\n {\n \"item_id\": \"J8\",\n \"operation_step\": 5,\n \"station_id\": 5,\n \"operation_time\": 1\n },\n {\n \"item_id\": \"J9\",\n \"operation_step\": 0,\n \"station_id\": 0,\n \"operation_time\": 27\n },\n {\n \"item_id\": \"J9\",\n \"operation_step\": 1,\n \"station_id\": 1,\n \"operation_time\": 4\n },\n {\n \"item_id\": \"J9\",\n \"operation_step\": 2,\n \"station_id\": 2,\n \"operation_time\": 78\n },\n {\n \"item_id\": \"J9\",\n \"operation_step\": 3,\n \"station_id\": 3,\n \"operation_time\": 27\n },\n {\n \"item_id\": \"J9\",\n \"operation_step\": 4,\n \"station_id\": 4,\n \"operation_time\": 55\n },\n {\n \"item_id\": \"J9\",\n \"operation_step\": 5,\n \"station_id\": 5,\n \"operation_time\": 44\n },\n {\n \"item_id\": \"J10\",\n \"operation_step\": 0,\n \"station_id\": 0,\n \"operation_time\": 3\n },\n {\n \"item_id\": \"J10\",\n \"operation_step\": 1,\n \"station_id\": 1,\n \"operation_time\": 98\n },\n {\n \"item_id\": \"J10\",\n \"operation_step\": 2,\n \"station_id\": 2,\n \"operation_time\": 94\n },\n {\n \"item_id\": \"J10\",\n \"operation_step\": 3,\n \"station_id\": 3,\n \"operation_time\": 2\n },\n {\n \"item_id\": \"J10\",\n \"operation_step\": 4,\n \"station_id\": 4,\n \"operation_time\": 91\n },\n {\n \"item_id\": \"J10\",\n \"operation_step\": 5,\n \"station_id\": 5,\n \"operation_time\": 72\n },\n {\n \"item_id\": \"J11\",\n \"operation_step\": 0,\n \"station_id\": 0,\n \"operation_time\": 56\n },\n {\n \"item_id\": \"J11\",\n \"operation_step\": 1,\n \"station_id\": 1,\n \"operation_time\": 35\n },\n {\n \"item_id\": \"J11\",\n \"operation_step\": 2,\n \"station_id\": 2,\n \"operation_time\": 27\n },\n {\n \"item_id\": \"J11\",\n \"operation_step\": 3,\n \"station_id\": 3,\n \"operation_time\": 88\n },\n {\n \"item_id\": \"J11\",\n \"operation_step\": 4,\n \"station_id\": 4,\n \"operation_time\": 95\n },\n {\n \"item_id\": \"J11\",\n \"operation_step\": 5,\n \"station_id\": 5,\n \"operation_time\": 53\n },\n {\n \"item_id\": \"J12\",\n \"operation_step\": 0,\n \"station_id\": 0,\n \"operation_time\": 76\n },\n {\n \"item_id\": \"J12\",\n \"operation_step\": 1,\n \"station_id\": 1,\n \"operation_time\": 8\n },\n {\n \"item_id\": \"J12\",\n \"operation_step\": 2,\n \"station_id\": 2,\n \"operation_time\": 92\n },\n {\n \"item_id\": \"J12\",\n \"operation_step\": 3,\n \"station_id\": 3,\n \"operation_time\": 75\n },\n {\n \"item_id\": \"J12\",\n \"operation_step\": 4,\n \"station_id\": 4,\n \"operation_time\": 6\n },\n {\n \"item_id\": \"J12\",\n \"operation_step\": 5,\n \"station_id\": 5,\n \"operation_time\": 96\n }\n ]\n}\n\nAlso, when you hand me the actual schedule, please stick to this simple JSON layout so everything lines up neatly:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of that JSON as a little form: \"solution\" holds the whole batch, each entry is one job with its id, and under \"tasks\" you list the operations for that job. For each task you fill in which task number it is, when it starts, which machine does it, and how long it takes. Super straightforward — like filling in a work ticket.\n\nThis is just a sketch of the expected shape, not the actual schedule. Also, please make sure to use the exact identifiers from the instance input — no renaming and no inventing new labels. \n\n- for example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 6, "nr_jobs": 12, "jobs": [ [ [ 0, 1 ], [ 1, 26 ], [ 2, 93 ], [ 3, 77 ], [ 4, 56 ], [ 5, 8 ] ], [ [ 0, 67 ], [ 1, 95 ], [ 2, 98 ], [ 3, 90 ], [ 4, 91 ], [ 5, 51 ] ], [ [ 0, 81 ], [ 1, 69 ], [ 2, 17 ], [ 3, 32 ], [ 4, 35 ], [ 5, 60 ] ], [ [ 0, 90 ], [ 1, 22 ], [ 2, 56 ], [ 3, 57 ], [ 4, 94 ], [ 5, 57 ] ], [ [ 0, 1 ], [ 1, 10 ], [ 2, 18 ], [ 3, 1 ], [ 4, 45 ], [ 5, 69 ] ], [ [ 0, 1 ], [ 1, 45 ], [ 2, 47 ], [ 3, 70 ], [ 4, 42 ], [ 5, 60 ] ], [ [ 0, 35 ], [ 1, 1 ], [ 2, 30 ], [ 3, 50 ], [ 4, 27 ], [ 5, 64 ] ], [ [ 0, 37 ], [ 1, 76 ], [ 2, 82 ], [ 3, 67 ], [ 4, 27 ], [ 5, 1 ] ], [ [ 0, 27 ], [ 1, 4 ], [ 2, 78 ], [ 3, 27 ], [ 4, 55 ], [ 5, 44 ] ], [ [ 0, 3 ], [ 1, 98 ], [ 2, 94 ], [ 3, 2 ], [ 4, 91 ], [ 5, 72 ] ], [ [ 0, 56 ], [ 1, 35 ], [ 2, 27 ], [ 3, 88 ], [ 4, 95 ], [ 5, 53 ] ], [ [ 0, 76 ], [ 1, 8 ], [ 2, 92 ], [ 3, 75 ], [ 4, 6 ], [ 5, 96 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 474, "machine": 0, "duration": 1 }, { "task": 1, "start": 520, "machine": 1, "duration": 26 }, { "task": 2, "start": 571, "machine": 2, "duration": 93 }, { "task": 3, "start": 676, "machine": 3, "duration": 77 }, { "task": 4, "start": 770, "machine": 4, "duration": 56 }, { "task": 5, "start": 846, "machine": 5, "duration": 8 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 289, "machine": 0, "duration": 67 }, { "task": 1, "start": 356, "machine": 1, "duration": 95 }, { "task": 2, "start": 456, "machine": 2, "duration": 98 }, { "task": 3, "start": 554, "machine": 3, "duration": 90 }, { "task": 4, "start": 644, "machine": 4, "duration": 91 }, { "task": 5, "start": 735, "machine": 5, "duration": 51 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 356, "machine": 0, "duration": 81 }, { "task": 1, "start": 451, "machine": 1, "duration": 69 }, { "task": 2, "start": 554, "machine": 2, "duration": 17 }, { "task": 3, "start": 644, "machine": 3, "duration": 32 }, { "task": 4, "start": 735, "machine": 4, "duration": 35 }, { "task": 5, "start": 786, "machine": 5, "duration": 60 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 199, "machine": 0, "duration": 90 }, { "task": 1, "start": 305, "machine": 1, "duration": 22 }, { "task": 2, "start": 400, "machine": 2, "duration": 56 }, { "task": 3, "start": 456, "machine": 3, "duration": 57 }, { "task": 4, "start": 540, "machine": 4, "duration": 94 }, { "task": 5, "start": 664, "machine": 5, "duration": 57 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 3, "machine": 1, "duration": 10 }, { "task": 2, "start": 13, "machine": 2, "duration": 18 }, { "task": 3, "start": 31, "machine": 3, "duration": 1 }, { "task": 4, "start": 32, "machine": 4, "duration": 45 }, { "task": 5, "start": 77, "machine": 5, "duration": 69 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 63, "machine": 0, "duration": 1 }, { "task": 1, "start": 64, "machine": 1, "duration": 45 }, { "task": 2, "start": 140, "machine": 2, "duration": 47 }, { "task": 3, "start": 190, "machine": 3, "duration": 70 }, { "task": 4, "start": 260, "machine": 4, "duration": 42 }, { "task": 5, "start": 303, "machine": 5, "duration": 60 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 28, "machine": 0, "duration": 35 }, { "task": 1, "start": 109, "machine": 1, "duration": 1 }, { "task": 2, "start": 110, "machine": 2, "duration": 30 }, { "task": 3, "start": 140, "machine": 3, "duration": 50 }, { "task": 4, "start": 195, "machine": 4, "duration": 27 }, { "task": 5, "start": 239, "machine": 5, "duration": 64 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 437, "machine": 0, "duration": 37 }, { "task": 1, "start": 546, "machine": 1, "duration": 76 }, { "task": 2, "start": 664, "machine": 2, "duration": 82 }, { "task": 3, "start": 753, "machine": 3, "duration": 67 }, { "task": 4, "start": 826, "machine": 4, "duration": 27 }, { "task": 5, "start": 854, "machine": 5, "duration": 1 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 27 }, { "task": 1, "start": 28, "machine": 1, "duration": 4 }, { "task": 2, "start": 32, "machine": 2, "duration": 78 }, { "task": 3, "start": 113, "machine": 3, "duration": 27 }, { "task": 4, "start": 140, "machine": 4, "duration": 55 }, { "task": 5, "start": 195, "machine": 5, "duration": 44 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 64, "machine": 0, "duration": 3 }, { "task": 1, "start": 207, "machine": 1, "duration": 98 }, { "task": 2, "start": 306, "machine": 2, "duration": 94 }, { "task": 3, "start": 431, "machine": 3, "duration": 2 }, { "task": 4, "start": 449, "machine": 4, "duration": 91 }, { "task": 5, "start": 592, "machine": 5, "duration": 72 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 67, "machine": 0, "duration": 56 }, { "task": 1, "start": 123, "machine": 1, "duration": 35 }, { "task": 2, "start": 187, "machine": 2, "duration": 27 }, { "task": 3, "start": 260, "machine": 3, "duration": 88 }, { "task": 4, "start": 348, "machine": 4, "duration": 95 }, { "task": 5, "start": 443, "machine": 5, "duration": 53 } ] }, { "job": 11, "tasks": [ { "task": 0, "start": 123, "machine": 0, "duration": 76 }, { "task": 1, "start": 199, "machine": 1, "duration": 8 }, { "task": 2, "start": 214, "machine": 2, "duration": 92 }, { "task": 3, "start": 348, "machine": 3, "duration": 75 }, { "task": 4, "start": 443, "machine": 4, "duration": 6 }, { "task": 5, "start": 496, "machine": 5, "duration": 96 } ] } ], "obj": 855.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 12, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11", "J12" ], "machines": [ 0, 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 26 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 93 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 77 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 56 }, { "job_id": "J1", "task_id": 5, "machine_id": 5, "duration": 8 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 67 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 95 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 98 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 90 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 91 }, { "job_id": "J2", "task_id": 5, "machine_id": 5, "duration": 51 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 81 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 69 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 17 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 32 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 35 }, { "job_id": "J3", "task_id": 5, "machine_id": 5, "duration": 60 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 90 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 22 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 56 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 57 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 94 }, { "job_id": "J4", "task_id": 5, "machine_id": 5, "duration": 57 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 10 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 18 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 1 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 45 }, { "job_id": "J5", "task_id": 5, "machine_id": 5, "duration": 69 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 45 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 47 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 70 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 42 }, { "job_id": "J6", "task_id": 5, "machine_id": 5, "duration": 60 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 35 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 1 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 30 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 50 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 27 }, { "job_id": "J7", "task_id": 5, "machine_id": 5, "duration": 64 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 37 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 76 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 82 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 67 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 27 }, { "job_id": "J8", "task_id": 5, "machine_id": 5, "duration": 1 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 27 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 4 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 78 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 27 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 55 }, { "job_id": "J9", "task_id": 5, "machine_id": 5, "duration": 44 }, { "job_id": "J10", "task_id": 0, "machine_id": 0, "duration": 3 }, { "job_id": "J10", "task_id": 1, "machine_id": 1, "duration": 98 }, { "job_id": "J10", "task_id": 2, "machine_id": 2, "duration": 94 }, { "job_id": "J10", "task_id": 3, "machine_id": 3, "duration": 2 }, { "job_id": "J10", "task_id": 4, "machine_id": 4, "duration": 91 }, { "job_id": "J10", "task_id": 5, "machine_id": 5, "duration": 72 }, { "job_id": "J11", "task_id": 0, "machine_id": 0, "duration": 56 }, { "job_id": "J11", "task_id": 1, "machine_id": 1, "duration": 35 }, { "job_id": "J11", "task_id": 2, "machine_id": 2, "duration": 27 }, { "job_id": "J11", "task_id": 3, "machine_id": 3, "duration": 88 }, { "job_id": "J11", "task_id": 4, "machine_id": 4, "duration": 95 }, { "job_id": "J11", "task_id": 5, "machine_id": 5, "duration": 53 }, { "job_id": "J12", "task_id": 0, "machine_id": 0, "duration": 76 }, { "job_id": "J12", "task_id": 1, "machine_id": 1, "duration": 8 }, { "job_id": "J12", "task_id": 2, "machine_id": 2, "duration": 92 }, { "job_id": "J12", "task_id": 3, "machine_id": 3, "duration": 75 }, { "job_id": "J12", "task_id": 4, "machine_id": 4, "duration": 6 }, { "job_id": "J12", "task_id": 5, "machine_id": 5, "duration": 96 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 474, "machine": 0, "duration": 1 }, { "task": 1, "start": 520, "machine": 1, "duration": 26 }, { "task": 2, "start": 571, "machine": 2, "duration": 93 }, { "task": 3, "start": 676, "machine": 3, "duration": 77 }, { "task": 4, "start": 770, "machine": 4, "duration": 56 }, { "task": 5, "start": 846, "machine": 5, "duration": 8 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 289, "machine": 0, "duration": 67 }, { "task": 1, "start": 356, "machine": 1, "duration": 95 }, { "task": 2, "start": 456, "machine": 2, "duration": 98 }, { "task": 3, "start": 554, "machine": 3, "duration": 90 }, { "task": 4, "start": 644, "machine": 4, "duration": 91 }, { "task": 5, "start": 735, "machine": 5, "duration": 51 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 356, "machine": 0, "duration": 81 }, { "task": 1, "start": 451, "machine": 1, "duration": 69 }, { "task": 2, "start": 554, "machine": 2, "duration": 17 }, { "task": 3, "start": 644, "machine": 3, "duration": 32 }, { "task": 4, "start": 735, "machine": 4, "duration": 35 }, { "task": 5, "start": 786, "machine": 5, "duration": 60 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 199, "machine": 0, "duration": 90 }, { "task": 1, "start": 305, "machine": 1, "duration": 22 }, { "task": 2, "start": 400, "machine": 2, "duration": 56 }, { "task": 3, "start": 456, "machine": 3, "duration": 57 }, { "task": 4, "start": 540, "machine": 4, "duration": 94 }, { "task": 5, "start": 664, "machine": 5, "duration": 57 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 3, "machine": 1, "duration": 10 }, { "task": 2, "start": 13, "machine": 2, "duration": 18 }, { "task": 3, "start": 31, "machine": 3, "duration": 1 }, { "task": 4, "start": 32, "machine": 4, "duration": 45 }, { "task": 5, "start": 77, "machine": 5, "duration": 69 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 63, "machine": 0, "duration": 1 }, { "task": 1, "start": 64, "machine": 1, "duration": 45 }, { "task": 2, "start": 140, "machine": 2, "duration": 47 }, { "task": 3, "start": 190, "machine": 3, "duration": 70 }, { "task": 4, "start": 260, "machine": 4, "duration": 42 }, { "task": 5, "start": 303, "machine": 5, "duration": 60 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 28, "machine": 0, "duration": 35 }, { "task": 1, "start": 109, "machine": 1, "duration": 1 }, { "task": 2, "start": 110, "machine": 2, "duration": 30 }, { "task": 3, "start": 140, "machine": 3, "duration": 50 }, { "task": 4, "start": 195, "machine": 4, "duration": 27 }, { "task": 5, "start": 239, "machine": 5, "duration": 64 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 437, "machine": 0, "duration": 37 }, { "task": 1, "start": 546, "machine": 1, "duration": 76 }, { "task": 2, "start": 664, "machine": 2, "duration": 82 }, { "task": 3, "start": 753, "machine": 3, "duration": 67 }, { "task": 4, "start": 826, "machine": 4, "duration": 27 }, { "task": 5, "start": 854, "machine": 5, "duration": 1 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 27 }, { "task": 1, "start": 28, "machine": 1, "duration": 4 }, { "task": 2, "start": 32, "machine": 2, "duration": 78 }, { "task": 3, "start": 113, "machine": 3, "duration": 27 }, { "task": 4, "start": 140, "machine": 4, "duration": 55 }, { "task": 5, "start": 195, "machine": 5, "duration": 44 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 64, "machine": 0, "duration": 3 }, { "task": 1, "start": 207, "machine": 1, "duration": 98 }, { "task": 2, "start": 306, "machine": 2, "duration": 94 }, { "task": 3, "start": 431, "machine": 3, "duration": 2 }, { "task": 4, "start": 449, "machine": 4, "duration": 91 }, { "task": 5, "start": 592, "machine": 5, "duration": 72 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 67, "machine": 0, "duration": 56 }, { "task": 1, "start": 123, "machine": 1, "duration": 35 }, { "task": 2, "start": 187, "machine": 2, "duration": 27 }, { "task": 3, "start": 260, "machine": 3, "duration": 88 }, { "task": 4, "start": 348, "machine": 4, "duration": 95 }, { "task": 5, "start": 443, "machine": 5, "duration": 53 } ] }, { "job": "J12", "tasks": [ { "task": 0, "start": 123, "machine": 0, "duration": 76 }, { "task": 1, "start": 199, "machine": 1, "duration": 8 }, { "task": 2, "start": 214, "machine": 2, "duration": 92 }, { "task": 3, "start": 348, "machine": 3, "duration": 75 }, { "task": 4, "start": 443, "machine": 4, "duration": 6 }, { "task": 5, "start": 496, "machine": 5, "duration": 96 } ] } ], "context_index": 37, "input_format": "json", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Someone at the dispatch desk juggles parcels through scan, label, and sort every shift, and they have to decide which parcel to send first, second, third, and so on. The rule is rigid: every parcel must go through the three steps in that order, no step can be skipped or repeated, and a station can only work on one parcel at a time. A sequence is judged by when the very last parcel is done — the sooner that time happens, the better the sequence. The full list of parcel times and the setup follows below.\n\nThere are 9 parcels (J1, J2, J3, J4, J5, J6, J7, J8, J9), each routed through 5 sequential workstations in order: 0, 1, 2, 3, 4.\n\n| parcel_id | step_index | workstation_id | handling_time |\n|---|---|---|---|\n| J1 | 0 | 0 | 1 |\n| J1 | 1 | 1 | 39 |\n| J1 | 2 | 2 | 69 |\n| J1 | 3 | 3 | 24 |\n| J1 | 4 | 4 | 9 |\n| J2 | 0 | 0 | 30 |\n| J2 | 1 | 1 | 71 |\n| J2 | 2 | 2 | 63 |\n| J2 | 3 | 3 | 66 |\n| J2 | 4 | 4 | 84 |\n| J3 | 0 | 0 | 30 |\n| J3 | 1 | 1 | 4 |\n| J3 | 2 | 2 | 64 |\n| J3 | 3 | 3 | 73 |\n| J3 | 4 | 4 | 23 |\n| J4 | 0 | 0 | 84 |\n| J4 | 1 | 1 | 3 |\n| J4 | 2 | 2 | 61 |\n| J4 | 3 | 3 | 29 |\n| J4 | 4 | 4 | 28 |\n| J5 | 0 | 0 | 98 |\n| J5 | 1 | 1 | 26 |\n| J5 | 2 | 2 | 53 |\n| J5 | 3 | 3 | 50 |\n| J5 | 4 | 4 | 84 |\n| J6 | 0 | 0 | 63 |\n| J6 | 1 | 1 | 27 |\n| J6 | 2 | 2 | 66 |\n| J6 | 3 | 3 | 86 |\n| J6 | 4 | 4 | 40 |\n| J7 | 0 | 0 | 91 |\n| J7 | 1 | 1 | 22 |\n| J7 | 2 | 2 | 73 |\n| J7 | 3 | 3 | 75 |\n| J7 | 4 | 4 | 15 |\n| J8 | 0 | 0 | 93 |\n| J8 | 1 | 1 | 97 |\n| J8 | 2 | 2 | 75 |\n| J8 | 3 | 3 | 29 |\n| J8 | 4 | 4 | 86 |\n| J9 | 0 | 0 | 52 |\n| J9 | 1 | 1 | 62 |\n| J9 | 2 | 2 | 9 |\n| J9 | 3 | 3 | 51 |\n| J9 | 4 | 4 | 47 |\n\nUse this list to pick the parcel order that minimizes when the very last parcel is done.\n\nAlso, when you send back the schedule, please use this simple JSON layout so I can read it easily:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nPretty straightforward — in story terms, each \"job\" is a parcel, and the tasks list shows the steps that parcel goes through (scan, label, sort) in order. \"task\" is the step index in that job's sequence, \"start\" is when that step begins, \"machine\" is which station handles it, and \"duration\" is how long that step takes. Think of it as filling out a little form for each parcel: which parcel, which steps, when each step starts, which station does it, and how long it runs.\n\nThis JSON is just a sketch of the shape I expect, not the actual schedule — you'll fill in the real numbers and IDs when you answer.\n\nPlease make sure you use the exact identifiers from the instance input — do not rename them or invent new labels. For example: Valid identifiers look like plain numbers such as \"1\" or \"23\", single capital letters like \"A\" or \"B\", or a capital letter followed by digits like \"A1\" or \"X7\".", "instance": { "nr_machines": 5, "nr_jobs": 9, "jobs": [ [ [ 0, 1 ], [ 1, 39 ], [ 2, 69 ], [ 3, 24 ], [ 4, 9 ] ], [ [ 0, 30 ], [ 1, 71 ], [ 2, 63 ], [ 3, 66 ], [ 4, 84 ] ], [ [ 0, 30 ], [ 1, 4 ], [ 2, 64 ], [ 3, 73 ], [ 4, 23 ] ], [ [ 0, 84 ], [ 1, 3 ], [ 2, 61 ], [ 3, 29 ], [ 4, 28 ] ], [ [ 0, 98 ], [ 1, 26 ], [ 2, 53 ], [ 3, 50 ], [ 4, 84 ] ], [ [ 0, 63 ], [ 1, 27 ], [ 2, 66 ], [ 3, 86 ], [ 4, 40 ] ], [ [ 0, 91 ], [ 1, 22 ], [ 2, 73 ], [ 3, 75 ], [ 4, 15 ] ], [ [ 0, 93 ], [ 1, 97 ], [ 2, 75 ], [ 3, 29 ], [ 4, 86 ] ], [ [ 0, 52 ], [ 1, 62 ], [ 2, 9 ], [ 3, 51 ], [ 4, 47 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 35, "machine": 1, "duration": 39 }, { "task": 2, "start": 99, "machine": 2, "duration": 69 }, { "task": 3, "start": 172, "machine": 3, "duration": 24 }, { "task": 4, "start": 196, "machine": 4, "duration": 9 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 31, "machine": 0, "duration": 30 }, { "task": 1, "start": 74, "machine": 1, "duration": 71 }, { "task": 2, "start": 168, "machine": 2, "duration": 63 }, { "task": 3, "start": 231, "machine": 3, "duration": 66 }, { "task": 4, "start": 297, "machine": 4, "duration": 84 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 30 }, { "task": 1, "start": 31, "machine": 1, "duration": 4 }, { "task": 2, "start": 35, "machine": 2, "duration": 64 }, { "task": 3, "start": 99, "machine": 3, "duration": 73 }, { "task": 4, "start": 172, "machine": 4, "duration": 23 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 458, "machine": 0, "duration": 84 }, { "task": 1, "start": 542, "machine": 1, "duration": 3 }, { "task": 2, "start": 553, "machine": 2, "duration": 61 }, { "task": 3, "start": 628, "machine": 3, "duration": 29 }, { "task": 4, "start": 657, "machine": 4, "duration": 28 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 217, "machine": 0, "duration": 98 }, { "task": 1, "start": 315, "machine": 1, "duration": 26 }, { "task": 2, "start": 389, "machine": 2, "duration": 53 }, { "task": 3, "start": 442, "machine": 3, "duration": 50 }, { "task": 4, "start": 509, "machine": 4, "duration": 84 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 61, "machine": 0, "duration": 63 }, { "task": 1, "start": 145, "machine": 1, "duration": 27 }, { "task": 2, "start": 231, "machine": 2, "duration": 66 }, { "task": 3, "start": 297, "machine": 3, "duration": 86 }, { "task": 4, "start": 383, "machine": 4, "duration": 40 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 367, "machine": 0, "duration": 91 }, { "task": 1, "start": 458, "machine": 1, "duration": 22 }, { "task": 2, "start": 480, "machine": 2, "duration": 73 }, { "task": 3, "start": 553, "machine": 3, "duration": 75 }, { "task": 4, "start": 640, "machine": 4, "duration": 15 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 124, "machine": 0, "duration": 93 }, { "task": 1, "start": 217, "machine": 1, "duration": 97 }, { "task": 2, "start": 314, "machine": 2, "duration": 75 }, { "task": 3, "start": 389, "machine": 3, "duration": 29 }, { "task": 4, "start": 423, "machine": 4, "duration": 86 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 315, "machine": 0, "duration": 52 }, { "task": 1, "start": 367, "machine": 1, "duration": 62 }, { "task": 2, "start": 442, "machine": 2, "duration": 9 }, { "task": 3, "start": 492, "machine": 3, "duration": 51 }, { "task": 4, "start": 593, "machine": 4, "duration": 47 } ] } ], "obj": 685.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 9, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9" ], "machines": [ 0, 1, 2, 3, 4 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 39 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 69 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 24 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 9 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 30 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 71 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 63 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 66 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 84 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 30 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 4 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 64 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 73 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 23 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 84 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 3 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 61 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 29 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 28 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 98 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 26 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 53 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 50 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 84 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 63 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 27 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 66 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 86 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 40 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 91 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 22 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 73 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 75 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 15 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 93 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 97 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 75 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 29 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 86 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 52 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 62 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 9 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 51 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 47 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 35, "machine": 1, "duration": 39 }, { "task": 2, "start": 99, "machine": 2, "duration": 69 }, { "task": 3, "start": 172, "machine": 3, "duration": 24 }, { "task": 4, "start": 196, "machine": 4, "duration": 9 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 31, "machine": 0, "duration": 30 }, { "task": 1, "start": 74, "machine": 1, "duration": 71 }, { "task": 2, "start": 168, "machine": 2, "duration": 63 }, { "task": 3, "start": 231, "machine": 3, "duration": 66 }, { "task": 4, "start": 297, "machine": 4, "duration": 84 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 30 }, { "task": 1, "start": 31, "machine": 1, "duration": 4 }, { "task": 2, "start": 35, "machine": 2, "duration": 64 }, { "task": 3, "start": 99, "machine": 3, "duration": 73 }, { "task": 4, "start": 172, "machine": 4, "duration": 23 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 458, "machine": 0, "duration": 84 }, { "task": 1, "start": 542, "machine": 1, "duration": 3 }, { "task": 2, "start": 553, "machine": 2, "duration": 61 }, { "task": 3, "start": 628, "machine": 3, "duration": 29 }, { "task": 4, "start": 657, "machine": 4, "duration": 28 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 217, "machine": 0, "duration": 98 }, { "task": 1, "start": 315, "machine": 1, "duration": 26 }, { "task": 2, "start": 389, "machine": 2, "duration": 53 }, { "task": 3, "start": 442, "machine": 3, "duration": 50 }, { "task": 4, "start": 509, "machine": 4, "duration": 84 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 61, "machine": 0, "duration": 63 }, { "task": 1, "start": 145, "machine": 1, "duration": 27 }, { "task": 2, "start": 231, "machine": 2, "duration": 66 }, { "task": 3, "start": 297, "machine": 3, "duration": 86 }, { "task": 4, "start": 383, "machine": 4, "duration": 40 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 367, "machine": 0, "duration": 91 }, { "task": 1, "start": 458, "machine": 1, "duration": 22 }, { "task": 2, "start": 480, "machine": 2, "duration": 73 }, { "task": 3, "start": 553, "machine": 3, "duration": 75 }, { "task": 4, "start": 640, "machine": 4, "duration": 15 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 124, "machine": 0, "duration": 93 }, { "task": 1, "start": 217, "machine": 1, "duration": 97 }, { "task": 2, "start": 314, "machine": 2, "duration": 75 }, { "task": 3, "start": 389, "machine": 3, "duration": 29 }, { "task": 4, "start": 423, "machine": 4, "duration": 86 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 315, "machine": 0, "duration": 52 }, { "task": 1, "start": 367, "machine": 1, "duration": 62 }, { "task": 2, "start": 442, "machine": 2, "duration": 9 }, { "task": 3, "start": 492, "machine": 3, "duration": 51 }, { "task": 4, "start": 593, "machine": 4, "duration": 47 } ] } ], "context_index": 38, "input_format": "markdown_table", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "At my job the pipeline is strict — compile, then test, then deploy for every change — and each stage takes a fixed time. I have to slot changes into the build agents without letting any agent do two tasks at once, and every change must go through each stage once. The aim is to have the entire batch finished as soon as possible: the important number is the time when the last deployment completes, found by looking at each change’s deploy finish time and taking the latest. The concrete schedules and durations are provided below.\n\n# nr_changes=11\n# nr_pipeline_stages=5\n# changes=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11\n# pipeline_stages=A, B, C, D, E\nchange_id,stage_index,stage_id,stage_duration\nJ1,0,A,1\nJ1,1,B,52\nJ1,2,C,45\nJ1,3,D,69\nJ1,4,E,62\nJ2,0,A,52\nJ2,1,B,76\nJ2,2,C,31\nJ2,3,D,35\nJ2,4,E,77\nJ3,0,A,68\nJ3,1,B,55\nJ3,2,C,48\nJ3,3,D,76\nJ3,4,E,28\nJ4,0,A,38\nJ4,1,B,69\nJ4,2,C,61\nJ4,3,D,67\nJ4,4,E,35\nJ5,0,A,40\nJ5,1,B,94\nJ5,2,C,12\nJ5,3,D,44\nJ5,4,E,69\nJ6,0,A,16\nJ6,1,B,36\nJ6,2,C,32\nJ6,3,D,28\nJ6,4,E,10\nJ7,0,A,82\nJ7,1,B,97\nJ7,2,C,99\nJ7,3,D,79\nJ7,4,E,88\nJ8,0,A,26\nJ8,1,B,61\nJ8,2,C,51\nJ8,3,D,29\nJ8,4,E,23\nJ9,0,A,76\nJ9,1,B,60\nJ9,2,C,81\nJ9,3,D,27\nJ9,4,E,13\nJ10,0,A,81\nJ10,1,B,53\nJ10,2,C,77\nJ10,3,D,81\nJ10,4,E,91\nJ11,0,A,32\nJ11,1,B,22\nJ11,2,C,3\nJ11,3,D,99\nJ11,4,E,74\n\nIf you want the result in a predictable, machine-friendly layout, just use this JSON shape — nothing fancy, just a list of jobs and their tasks:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of it like a simple form: each top-level entry is a job (a single change), \"tasks\" lists its stages in order, \"task\" is the stage index, \"start\" is when that stage begins, \"machine\" is which build agent handles it, and \"duration\" is how long that stage runs. This JSON is just a sketch of the shape I want back — not the actual filled-in schedule.\n\nPlease make sure to use the exact identifiers from the instance input — don't rename them and don't invent new labels. For example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 5, "nr_jobs": 11, "jobs": [ [ [ 0, 1 ], [ 1, 52 ], [ 2, 45 ], [ 3, 69 ], [ 4, 62 ] ], [ [ 0, 52 ], [ 1, 76 ], [ 2, 31 ], [ 3, 35 ], [ 4, 77 ] ], [ [ 0, 68 ], [ 1, 55 ], [ 2, 48 ], [ 3, 76 ], [ 4, 28 ] ], [ [ 0, 38 ], [ 1, 69 ], [ 2, 61 ], [ 3, 67 ], [ 4, 35 ] ], [ [ 0, 40 ], [ 1, 94 ], [ 2, 12 ], [ 3, 44 ], [ 4, 69 ] ], [ [ 0, 16 ], [ 1, 36 ], [ 2, 32 ], [ 3, 28 ], [ 4, 10 ] ], [ [ 0, 82 ], [ 1, 97 ], [ 2, 99 ], [ 3, 79 ], [ 4, 88 ] ], [ [ 0, 26 ], [ 1, 61 ], [ 2, 51 ], [ 3, 29 ], [ 4, 23 ] ], [ [ 0, 76 ], [ 1, 60 ], [ 2, 81 ], [ 3, 27 ], [ 4, 13 ] ], [ [ 0, 81 ], [ 1, 53 ], [ 2, 77 ], [ 3, 81 ], [ 4, 91 ] ], [ [ 0, 32 ], [ 1, 22 ], [ 2, 3 ], [ 3, 99 ], [ 4, 74 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 52 }, { "task": 2, "start": 53, "machine": 2, "duration": 45 }, { "task": 3, "start": 98, "machine": 3, "duration": 69 }, { "task": 4, "start": 167, "machine": 4, "duration": 62 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 381, "machine": 0, "duration": 52 }, { "task": 1, "start": 448, "machine": 1, "duration": 76 }, { "task": 2, "start": 561, "machine": 2, "duration": 31 }, { "task": 3, "start": 592, "machine": 3, "duration": 35 }, { "task": 4, "start": 628, "machine": 4, "duration": 77 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 237, "machine": 0, "duration": 68 }, { "task": 1, "start": 333, "machine": 1, "duration": 55 }, { "task": 2, "start": 432, "machine": 2, "duration": 48 }, { "task": 3, "start": 512, "machine": 3, "duration": 76 }, { "task": 4, "start": 600, "machine": 4, "duration": 28 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 433, "machine": 0, "duration": 38 }, { "task": 1, "start": 524, "machine": 1, "duration": 69 }, { "task": 2, "start": 593, "machine": 2, "duration": 61 }, { "task": 3, "start": 654, "machine": 3, "duration": 67 }, { "task": 4, "start": 721, "machine": 4, "duration": 35 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 40 }, { "task": 1, "start": 53, "machine": 1, "duration": 94 }, { "task": 2, "start": 147, "machine": 2, "duration": 12 }, { "task": 3, "start": 167, "machine": 3, "duration": 44 }, { "task": 4, "start": 229, "machine": 4, "duration": 69 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 471, "machine": 0, "duration": 16 }, { "task": 1, "start": 655, "machine": 1, "duration": 36 }, { "task": 2, "start": 706, "machine": 2, "duration": 32 }, { "task": 3, "start": 751, "machine": 3, "duration": 28 }, { "task": 4, "start": 779, "machine": 4, "duration": 10 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 154, "machine": 0, "duration": 82 }, { "task": 1, "start": 236, "machine": 1, "duration": 97 }, { "task": 2, "start": 333, "machine": 2, "duration": 99 }, { "task": 3, "start": 433, "machine": 3, "duration": 79 }, { "task": 4, "start": 512, "machine": 4, "duration": 88 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 487, "machine": 0, "duration": 26 }, { "task": 1, "start": 594, "machine": 1, "duration": 61 }, { "task": 2, "start": 655, "machine": 2, "duration": 51 }, { "task": 3, "start": 722, "machine": 3, "duration": 29 }, { "task": 4, "start": 756, "machine": 4, "duration": 23 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 305, "machine": 0, "duration": 76 }, { "task": 1, "start": 388, "machine": 1, "duration": 60 }, { "task": 2, "start": 480, "machine": 2, "duration": 81 }, { "task": 3, "start": 627, "machine": 3, "duration": 27 }, { "task": 4, "start": 705, "machine": 4, "duration": 13 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 73, "machine": 0, "duration": 81 }, { "task": 1, "start": 169, "machine": 1, "duration": 53 }, { "task": 2, "start": 225, "machine": 2, "duration": 77 }, { "task": 3, "start": 324, "machine": 3, "duration": 81 }, { "task": 4, "start": 405, "machine": 4, "duration": 91 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 41, "machine": 0, "duration": 32 }, { "task": 1, "start": 147, "machine": 1, "duration": 22 }, { "task": 2, "start": 222, "machine": 2, "duration": 3 }, { "task": 3, "start": 225, "machine": 3, "duration": 99 }, { "task": 4, "start": 324, "machine": 4, "duration": 74 } ] } ], "obj": 789.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 11, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11" ], "machines": [ "A", "B", "C", "D", "E" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 52 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 45 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 69 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 62 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 52 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 76 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 31 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 35 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 77 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 68 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 55 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 48 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 76 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 28 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 38 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 69 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 61 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 67 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 35 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 40 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 94 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 12 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 44 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 69 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 16 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 36 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 32 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 28 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 10 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 82 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 97 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 99 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 79 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 88 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 26 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 61 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 51 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 29 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 23 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 76 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 60 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 81 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 27 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 13 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 81 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 53 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 77 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 81 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 91 }, { "job_id": "J11", "task_id": 0, "machine_id": "A", "duration": 32 }, { "job_id": "J11", "task_id": 1, "machine_id": "B", "duration": 22 }, { "job_id": "J11", "task_id": 2, "machine_id": "C", "duration": 3 }, { "job_id": "J11", "task_id": 3, "machine_id": "D", "duration": 99 }, { "job_id": "J11", "task_id": 4, "machine_id": "E", "duration": 74 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 1 }, { "task": 1, "start": 1, "machine": "B", "duration": 52 }, { "task": 2, "start": 53, "machine": "C", "duration": 45 }, { "task": 3, "start": 98, "machine": "D", "duration": 69 }, { "task": 4, "start": 167, "machine": "E", "duration": 62 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 381, "machine": "A", "duration": 52 }, { "task": 1, "start": 448, "machine": "B", "duration": 76 }, { "task": 2, "start": 561, "machine": "C", "duration": 31 }, { "task": 3, "start": 592, "machine": "D", "duration": 35 }, { "task": 4, "start": 628, "machine": "E", "duration": 77 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 237, "machine": "A", "duration": 68 }, { "task": 1, "start": 333, "machine": "B", "duration": 55 }, { "task": 2, "start": 432, "machine": "C", "duration": 48 }, { "task": 3, "start": 512, "machine": "D", "duration": 76 }, { "task": 4, "start": 600, "machine": "E", "duration": 28 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 433, "machine": "A", "duration": 38 }, { "task": 1, "start": 524, "machine": "B", "duration": 69 }, { "task": 2, "start": 593, "machine": "C", "duration": 61 }, { "task": 3, "start": 654, "machine": "D", "duration": 67 }, { "task": 4, "start": 721, "machine": "E", "duration": 35 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 1, "machine": "A", "duration": 40 }, { "task": 1, "start": 53, "machine": "B", "duration": 94 }, { "task": 2, "start": 147, "machine": "C", "duration": 12 }, { "task": 3, "start": 167, "machine": "D", "duration": 44 }, { "task": 4, "start": 229, "machine": "E", "duration": 69 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 471, "machine": "A", "duration": 16 }, { "task": 1, "start": 655, "machine": "B", "duration": 36 }, { "task": 2, "start": 706, "machine": "C", "duration": 32 }, { "task": 3, "start": 751, "machine": "D", "duration": 28 }, { "task": 4, "start": 779, "machine": "E", "duration": 10 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 154, "machine": "A", "duration": 82 }, { "task": 1, "start": 236, "machine": "B", "duration": 97 }, { "task": 2, "start": 333, "machine": "C", "duration": 99 }, { "task": 3, "start": 433, "machine": "D", "duration": 79 }, { "task": 4, "start": 512, "machine": "E", "duration": 88 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 487, "machine": "A", "duration": 26 }, { "task": 1, "start": 594, "machine": "B", "duration": 61 }, { "task": 2, "start": 655, "machine": "C", "duration": 51 }, { "task": 3, "start": 722, "machine": "D", "duration": 29 }, { "task": 4, "start": 756, "machine": "E", "duration": 23 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 305, "machine": "A", "duration": 76 }, { "task": 1, "start": 388, "machine": "B", "duration": 60 }, { "task": 2, "start": 480, "machine": "C", "duration": 81 }, { "task": 3, "start": 627, "machine": "D", "duration": 27 }, { "task": 4, "start": 705, "machine": "E", "duration": 13 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 73, "machine": "A", "duration": 81 }, { "task": 1, "start": 169, "machine": "B", "duration": 53 }, { "task": 2, "start": 225, "machine": "C", "duration": 77 }, { "task": 3, "start": 324, "machine": "D", "duration": 81 }, { "task": 4, "start": 405, "machine": "E", "duration": 91 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 41, "machine": "A", "duration": 32 }, { "task": 1, "start": 147, "machine": "B", "duration": 22 }, { "task": 2, "start": 222, "machine": "C", "duration": 3 }, { "task": 3, "start": 225, "machine": "D", "duration": 99 }, { "task": 4, "start": 324, "machine": "E", "duration": 74 } ] } ], "context_index": 39, "input_format": "csv", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "I run the little canning line and every day I have to line up a batch of cans so each one goes through sterilization, then filling, then sealing — in that exact order. The choice to make is how to time and order those cans down the line so no station ever tries to work on two cans at once and no can skips or repeats a step. A better plan is simply the one that gets the very last can finished sooner; the clock time when the final sealed can leaves the line is the number to watch, and the aim is to make that time as small as possible. The exact batch sizes and step times are shown below.\n\nToday that means I have 12 cans and 6 stations — their identifiers are J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11, J12 and A, B, C, D, E, F.\nCan J1, step 0, goes to station A and takes 1.\nCan J1, step 1, goes to station B and takes 65.\nCan J1, step 2, goes to station C and takes 21.\nCan J1, step 3, goes to station D and takes 15.\nCan J1, step 4, goes to station E and takes 16.\nCan J1, step 5, goes to station F and takes 73.\nCan J2, step 0, goes to station A and takes 81.\nCan J2, step 1, goes to station B and takes 98.\nCan J2, step 2, goes to station C and takes 3.\nCan J2, step 3, goes to station D and takes 71.\nCan J2, step 4, goes to station E and takes 7.\nCan J2, step 5, goes to station F and takes 8.\nCan J3, step 0, goes to station A and takes 31.\nCan J3, step 1, goes to station B and takes 80.\nCan J3, step 2, goes to station C and takes 33.\nCan J3, step 3, goes to station D and takes 90.\nCan J3, step 4, goes to station E and takes 36.\nCan J3, step 5, goes to station F and takes 62.\nCan J4, step 0, goes to station A and takes 6.\nCan J4, step 1, goes to station B and takes 42.\nCan J4, step 2, goes to station C and takes 81.\nCan J4, step 3, goes to station D and takes 63.\nCan J4, step 4, goes to station E and takes 71.\nCan J4, step 5, goes to station F and takes 37.\nCan J5, step 0, goes to station A and takes 54.\nCan J5, step 1, goes to station B and takes 68.\nCan J5, step 2, goes to station C and takes 45.\nCan J5, step 3, goes to station D and takes 96.\nCan J5, step 4, goes to station E and takes 69.\nCan J5, step 5, goes to station F and takes 79.\nCan J6, step 0, goes to station A and takes 73.\nCan J6, step 1, goes to station B and takes 74.\nCan J6, step 2, goes to station C and takes 26.\nCan J6, step 3, goes to station D and takes 84.\nCan J6, step 4, goes to station E and takes 62.\nCan J6, step 5, goes to station F and takes 59.\nCan J7, step 0, goes to station A and takes 25.\nCan J7, step 1, goes to station B and takes 27.\nCan J7, step 2, goes to station C and takes 28.\nCan J7, step 3, goes to station D and takes 59.\nCan J7, step 4, goes to station E and takes 2.\nCan J7, step 5, goes to station F and takes 59.\nCan J8, step 0, goes to station A and takes 54.\nCan J8, step 1, goes to station B and takes 3.\nCan J8, step 2, goes to station C and takes 77.\nCan J8, step 3, goes to station D and takes 88.\nCan J8, step 4, goes to station E and takes 17.\nCan J8, step 5, goes to station F and takes 66.\nCan J9, step 0, goes to station A and takes 9.\nCan J9, step 1, goes to station B and takes 35.\nCan J9, step 2, goes to station C and takes 9.\nCan J9, step 3, goes to station D and takes 69.\nCan J9, step 4, goes to station E and takes 26.\nCan J9, step 5, goes to station F and takes 27.\nCan J10, step 0, goes to station A and takes 10.\nCan J10, step 1, goes to station B and takes 49.\nCan J10, step 2, goes to station C and takes 41.\nCan J10, step 3, goes to station D and takes 71.\nCan J10, step 4, goes to station E and takes 64.\nCan J10, step 5, goes to station F and takes 90.\nCan J11, step 0, goes to station A and takes 28.\nCan J11, step 1, goes to station B and takes 86.\nCan J11, step 2, goes to station C and takes 82.\nCan J11, step 3, goes to station D and takes 84.\nCan J11, step 4, goes to station E and takes 91.\nCan J11, step 5, goes to station F and takes 2.\nCan J12, step 0, goes to station A and takes 56.\nCan J12, step 1, goes to station B and takes 35.\nCan J12, step 2, goes to station C and takes 77.\nCan J12, step 3, goes to station D and takes 97.\nCan J12, step 4, goes to station E and takes 56.\nCan J12, step 5, goes to station F and takes 12.\nThat's the lot; I'll sequence these steps to get the final sealed can out as soon as possible.\n\nAlso, when you send the actual schedule back, it'd be handy if you stick to this little JSON layout so I can read it straightaway:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nIt's just a simple form: \"solution\" holds a list of jobs; each job has a job id and a list of its tasks. For each task, \"task\" is which step in the job's sequence, \"start\" is the clock time that step begins, \"machine\" tells which station does it, and \"duration\" is how long that step takes. Think of it like filling out a little card for every can and every step it goes through.\n\nThis JSON is only a sketch of the expected shape, not the real answer. Please make sure to use the exact identifiers from the instance input — do not rename or invent labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 6, "nr_jobs": 12, "jobs": [ [ [ 0, 1 ], [ 1, 65 ], [ 2, 21 ], [ 3, 15 ], [ 4, 16 ], [ 5, 73 ] ], [ [ 0, 81 ], [ 1, 98 ], [ 2, 3 ], [ 3, 71 ], [ 4, 7 ], [ 5, 8 ] ], [ [ 0, 31 ], [ 1, 80 ], [ 2, 33 ], [ 3, 90 ], [ 4, 36 ], [ 5, 62 ] ], [ [ 0, 6 ], [ 1, 42 ], [ 2, 81 ], [ 3, 63 ], [ 4, 71 ], [ 5, 37 ] ], [ [ 0, 54 ], [ 1, 68 ], [ 2, 45 ], [ 3, 96 ], [ 4, 69 ], [ 5, 79 ] ], [ [ 0, 73 ], [ 1, 74 ], [ 2, 26 ], [ 3, 84 ], [ 4, 62 ], [ 5, 59 ] ], [ [ 0, 25 ], [ 1, 27 ], [ 2, 28 ], [ 3, 59 ], [ 4, 2 ], [ 5, 59 ] ], [ [ 0, 54 ], [ 1, 3 ], [ 2, 77 ], [ 3, 88 ], [ 4, 17 ], [ 5, 66 ] ], [ [ 0, 9 ], [ 1, 35 ], [ 2, 9 ], [ 3, 69 ], [ 4, 26 ], [ 5, 27 ] ], [ [ 0, 10 ], [ 1, 49 ], [ 2, 41 ], [ 3, 71 ], [ 4, 64 ], [ 5, 90 ] ], [ [ 0, 28 ], [ 1, 86 ], [ 2, 82 ], [ 3, 84 ], [ 4, 91 ], [ 5, 2 ] ], [ [ 0, 56 ], [ 1, 35 ], [ 2, 77 ], [ 3, 97 ], [ 4, 56 ], [ 5, 12 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 573, "machine": 0, "duration": 1 }, { "task": 1, "start": 671, "machine": 1, "duration": 65 }, { "task": 2, "start": 736, "machine": 2, "duration": 21 }, { "task": 3, "start": 757, "machine": 3, "duration": 15 }, { "task": 4, "start": 793, "machine": 4, "duration": 16 }, { "task": 5, "start": 855, "machine": 5, "duration": 73 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 492, "machine": 0, "duration": 81 }, { "task": 1, "start": 573, "machine": 1, "duration": 98 }, { "task": 2, "start": 733, "machine": 2, "duration": 3 }, { "task": 3, "start": 869, "machine": 3, "duration": 71 }, { "task": 4, "start": 940, "machine": 4, "duration": 7 }, { "task": 5, "start": 947, "machine": 5, "duration": 8 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 461, "machine": 0, "duration": 31 }, { "task": 1, "start": 493, "machine": 1, "duration": 80 }, { "task": 2, "start": 577, "machine": 2, "duration": 33 }, { "task": 3, "start": 667, "machine": 3, "duration": 90 }, { "task": 4, "start": 757, "machine": 4, "duration": 36 }, { "task": 5, "start": 793, "machine": 5, "duration": 62 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 363, "machine": 0, "duration": 6 }, { "task": 1, "start": 451, "machine": 1, "duration": 42 }, { "task": 2, "start": 496, "machine": 2, "duration": 81 }, { "task": 3, "start": 604, "machine": 3, "duration": 63 }, { "task": 4, "start": 673, "machine": 4, "duration": 71 }, { "task": 5, "start": 752, "machine": 5, "duration": 37 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 309, "machine": 0, "duration": 54 }, { "task": 1, "start": 383, "machine": 1, "duration": 68 }, { "task": 2, "start": 451, "machine": 2, "duration": 45 }, { "task": 3, "start": 508, "machine": 3, "duration": 96 }, { "task": 4, "start": 604, "machine": 4, "duration": 69 }, { "task": 5, "start": 673, "machine": 5, "duration": 79 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 236, "machine": 0, "duration": 73 }, { "task": 1, "start": 309, "machine": 1, "duration": 74 }, { "task": 2, "start": 398, "machine": 2, "duration": 26 }, { "task": 3, "start": 424, "machine": 3, "duration": 84 }, { "task": 4, "start": 517, "machine": 4, "duration": 62 }, { "task": 5, "start": 579, "machine": 5, "duration": 59 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 9, "machine": 0, "duration": 25 }, { "task": 1, "start": 44, "machine": 1, "duration": 27 }, { "task": 2, "start": 71, "machine": 2, "duration": 28 }, { "task": 3, "start": 122, "machine": 3, "duration": 59 }, { "task": 4, "start": 515, "machine": 4, "duration": 2 }, { "task": 5, "start": 517, "machine": 5, "duration": 59 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 72, "machine": 0, "duration": 54 }, { "task": 1, "start": 126, "machine": 1, "duration": 3 }, { "task": 2, "start": 162, "machine": 2, "duration": 77 }, { "task": 3, "start": 252, "machine": 3, "duration": 88 }, { "task": 4, "start": 342, "machine": 4, "duration": 17 }, { "task": 5, "start": 433, "machine": 5, "duration": 66 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 9 }, { "task": 1, "start": 9, "machine": 1, "duration": 35 }, { "task": 2, "start": 44, "machine": 2, "duration": 9 }, { "task": 3, "start": 53, "machine": 3, "duration": 69 }, { "task": 4, "start": 316, "machine": 4, "duration": 26 }, { "task": 5, "start": 406, "machine": 5, "duration": 27 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 62, "machine": 0, "duration": 10 }, { "task": 1, "start": 72, "machine": 1, "duration": 49 }, { "task": 2, "start": 121, "machine": 2, "duration": 41 }, { "task": 3, "start": 181, "machine": 3, "duration": 71 }, { "task": 4, "start": 252, "machine": 4, "duration": 64 }, { "task": 5, "start": 316, "machine": 5, "duration": 90 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 34, "machine": 0, "duration": 28 }, { "task": 1, "start": 153, "machine": 1, "duration": 86 }, { "task": 2, "start": 239, "machine": 2, "duration": 82 }, { "task": 3, "start": 340, "machine": 3, "duration": 84 }, { "task": 4, "start": 424, "machine": 4, "duration": 91 }, { "task": 5, "start": 945, "machine": 5, "duration": 2 } ] }, { "job": 11, "tasks": [ { "task": 0, "start": 180, "machine": 0, "duration": 56 }, { "task": 1, "start": 239, "machine": 1, "duration": 35 }, { "task": 2, "start": 321, "machine": 2, "duration": 77 }, { "task": 3, "start": 772, "machine": 3, "duration": 97 }, { "task": 4, "start": 869, "machine": 4, "duration": 56 }, { "task": 5, "start": 933, "machine": 5, "duration": 12 } ] } ], "obj": 955.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 12, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11", "J12" ], "machines": [ "A", "B", "C", "D", "E", "F" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 65 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 21 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 15 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 16 }, { "job_id": "J1", "task_id": 5, "machine_id": "F", "duration": 73 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 81 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 98 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 3 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 71 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 7 }, { "job_id": "J2", "task_id": 5, "machine_id": "F", "duration": 8 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 31 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 80 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 33 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 90 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 36 }, { "job_id": "J3", "task_id": 5, "machine_id": "F", "duration": 62 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 6 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 42 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 81 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 63 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 71 }, { "job_id": "J4", "task_id": 5, "machine_id": "F", "duration": 37 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 54 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 68 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 45 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 96 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 69 }, { "job_id": "J5", "task_id": 5, "machine_id": "F", "duration": 79 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 73 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 74 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 26 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 84 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 62 }, { "job_id": "J6", "task_id": 5, "machine_id": "F", "duration": 59 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 25 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 27 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 28 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 59 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 2 }, { "job_id": "J7", "task_id": 5, "machine_id": "F", "duration": 59 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 54 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 3 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 77 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 88 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 17 }, { "job_id": "J8", "task_id": 5, "machine_id": "F", "duration": 66 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 9 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 35 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 9 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 69 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 26 }, { "job_id": "J9", "task_id": 5, "machine_id": "F", "duration": 27 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 10 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 49 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 41 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 71 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 64 }, { "job_id": "J10", "task_id": 5, "machine_id": "F", "duration": 90 }, { "job_id": "J11", "task_id": 0, "machine_id": "A", "duration": 28 }, { "job_id": "J11", "task_id": 1, "machine_id": "B", "duration": 86 }, { "job_id": "J11", "task_id": 2, "machine_id": "C", "duration": 82 }, { "job_id": "J11", "task_id": 3, "machine_id": "D", "duration": 84 }, { "job_id": "J11", "task_id": 4, "machine_id": "E", "duration": 91 }, { "job_id": "J11", "task_id": 5, "machine_id": "F", "duration": 2 }, { "job_id": "J12", "task_id": 0, "machine_id": "A", "duration": 56 }, { "job_id": "J12", "task_id": 1, "machine_id": "B", "duration": 35 }, { "job_id": "J12", "task_id": 2, "machine_id": "C", "duration": 77 }, { "job_id": "J12", "task_id": 3, "machine_id": "D", "duration": 97 }, { "job_id": "J12", "task_id": 4, "machine_id": "E", "duration": 56 }, { "job_id": "J12", "task_id": 5, "machine_id": "F", "duration": 12 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 573, "machine": "A", "duration": 1 }, { "task": 1, "start": 671, "machine": "B", "duration": 65 }, { "task": 2, "start": 736, "machine": "C", "duration": 21 }, { "task": 3, "start": 757, "machine": "D", "duration": 15 }, { "task": 4, "start": 793, "machine": "E", "duration": 16 }, { "task": 5, "start": 855, "machine": "F", "duration": 73 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 492, "machine": "A", "duration": 81 }, { "task": 1, "start": 573, "machine": "B", "duration": 98 }, { "task": 2, "start": 733, "machine": "C", "duration": 3 }, { "task": 3, "start": 869, "machine": "D", "duration": 71 }, { "task": 4, "start": 940, "machine": "E", "duration": 7 }, { "task": 5, "start": 947, "machine": "F", "duration": 8 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 461, "machine": "A", "duration": 31 }, { "task": 1, "start": 493, "machine": "B", "duration": 80 }, { "task": 2, "start": 577, "machine": "C", "duration": 33 }, { "task": 3, "start": 667, "machine": "D", "duration": 90 }, { "task": 4, "start": 757, "machine": "E", "duration": 36 }, { "task": 5, "start": 793, "machine": "F", "duration": 62 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 363, "machine": "A", "duration": 6 }, { "task": 1, "start": 451, "machine": "B", "duration": 42 }, { "task": 2, "start": 496, "machine": "C", "duration": 81 }, { "task": 3, "start": 604, "machine": "D", "duration": 63 }, { "task": 4, "start": 673, "machine": "E", "duration": 71 }, { "task": 5, "start": 752, "machine": "F", "duration": 37 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 309, "machine": "A", "duration": 54 }, { "task": 1, "start": 383, "machine": "B", "duration": 68 }, { "task": 2, "start": 451, "machine": "C", "duration": 45 }, { "task": 3, "start": 508, "machine": "D", "duration": 96 }, { "task": 4, "start": 604, "machine": "E", "duration": 69 }, { "task": 5, "start": 673, "machine": "F", "duration": 79 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 236, "machine": "A", "duration": 73 }, { "task": 1, "start": 309, "machine": "B", "duration": 74 }, { "task": 2, "start": 398, "machine": "C", "duration": 26 }, { "task": 3, "start": 424, "machine": "D", "duration": 84 }, { "task": 4, "start": 517, "machine": "E", "duration": 62 }, { "task": 5, "start": 579, "machine": "F", "duration": 59 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 9, "machine": "A", "duration": 25 }, { "task": 1, "start": 44, "machine": "B", "duration": 27 }, { "task": 2, "start": 71, "machine": "C", "duration": 28 }, { "task": 3, "start": 122, "machine": "D", "duration": 59 }, { "task": 4, "start": 515, "machine": "E", "duration": 2 }, { "task": 5, "start": 517, "machine": "F", "duration": 59 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 72, "machine": "A", "duration": 54 }, { "task": 1, "start": 126, "machine": "B", "duration": 3 }, { "task": 2, "start": 162, "machine": "C", "duration": 77 }, { "task": 3, "start": 252, "machine": "D", "duration": 88 }, { "task": 4, "start": 342, "machine": "E", "duration": 17 }, { "task": 5, "start": 433, "machine": "F", "duration": 66 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 9 }, { "task": 1, "start": 9, "machine": "B", "duration": 35 }, { "task": 2, "start": 44, "machine": "C", "duration": 9 }, { "task": 3, "start": 53, "machine": "D", "duration": 69 }, { "task": 4, "start": 316, "machine": "E", "duration": 26 }, { "task": 5, "start": 406, "machine": "F", "duration": 27 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 62, "machine": "A", "duration": 10 }, { "task": 1, "start": 72, "machine": "B", "duration": 49 }, { "task": 2, "start": 121, "machine": "C", "duration": 41 }, { "task": 3, "start": 181, "machine": "D", "duration": 71 }, { "task": 4, "start": 252, "machine": "E", "duration": 64 }, { "task": 5, "start": 316, "machine": "F", "duration": 90 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 34, "machine": "A", "duration": 28 }, { "task": 1, "start": 153, "machine": "B", "duration": 86 }, { "task": 2, "start": 239, "machine": "C", "duration": 82 }, { "task": 3, "start": 340, "machine": "D", "duration": 84 }, { "task": 4, "start": 424, "machine": "E", "duration": 91 }, { "task": 5, "start": 945, "machine": "F", "duration": 2 } ] }, { "job": "J12", "tasks": [ { "task": 0, "start": 180, "machine": "A", "duration": 56 }, { "task": 1, "start": 239, "machine": "B", "duration": 35 }, { "task": 2, "start": 321, "machine": "C", "duration": 77 }, { "task": 3, "start": 772, "machine": "D", "duration": 97 }, { "task": 4, "start": 869, "machine": "E", "duration": 56 }, { "task": 5, "start": 933, "machine": "F", "duration": 12 } ] } ], "context_index": 40, "input_format": "nl", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "We manage a small appliances repair shop where every item must go through diagnosis, parts replacement, then final testing in that order. The job is to line things up so no station is double-booked and nothing gets skipped or repeated, and to pick the sequence that gets the very last unit ready for pickup as early as possible — that completion moment is found by looking at the end times of the final tests and taking the largest. Concrete runtimes and the list of units are shown below.\n\nWe have 12 units and 5 stations, with unit IDs J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11, J12 and station IDs A, B, C, D, E.\n\n| unit_id | step_index | station_id | step_duration_minutes |\n|---|---|---|---|\n| J1 | 0 | A | 1 |\n| J1 | 1 | B | 78 |\n| J1 | 2 | C | 96 |\n| J1 | 3 | D | 61 |\n| J1 | 4 | E | 69 |\n| J2 | 0 | A | 95 |\n| J2 | 1 | B | 85 |\n| J2 | 2 | C | 67 |\n| J2 | 3 | D | 70 |\n| J2 | 4 | E | 64 |\n| J3 | 0 | A | 45 |\n| J3 | 1 | B | 59 |\n| J3 | 2 | C | 14 |\n| J3 | 3 | D | 83 |\n| J3 | 4 | E | 39 |\n| J4 | 0 | A | 44 |\n| J4 | 1 | B | 4 |\n| J4 | 2 | C | 63 |\n| J4 | 3 | D | 44 |\n| J4 | 4 | E | 48 |\n| J5 | 0 | A | 24 |\n| J5 | 1 | B | 32 |\n| J5 | 2 | C | 30 |\n| J5 | 3 | D | 30 |\n| J5 | 4 | E | 39 |\n| J6 | 0 | A | 21 |\n| J6 | 1 | B | 54 |\n| J6 | 2 | C | 62 |\n| J6 | 3 | D | 12 |\n| J6 | 4 | E | 50 |\n| J7 | 0 | A | 64 |\n| J7 | 1 | B | 50 |\n| J7 | 2 | C | 52 |\n| J7 | 3 | D | 89 |\n| J7 | 4 | E | 36 |\n| J8 | 0 | A | 91 |\n| J8 | 1 | B | 87 |\n| J8 | 2 | C | 3 |\n| J8 | 3 | D | 27 |\n| J8 | 4 | E | 95 |\n| J9 | 0 | A | 26 |\n| J9 | 1 | B | 57 |\n| J9 | 2 | C | 26 |\n| J9 | 3 | D | 77 |\n| J9 | 4 | E | 43 |\n| J10 | 0 | A | 96 |\n| J10 | 1 | B | 79 |\n| J10 | 2 | C | 55 |\n| J10 | 3 | D | 36 |\n| J10 | 4 | E | 78 |\n| J11 | 0 | A | 85 |\n| J11 | 1 | B | 18 |\n| J11 | 2 | C | 50 |\n| J11 | 3 | D | 54 |\n| J11 | 4 | E | 46 |\n| J12 | 0 | A | 65 |\n| J12 | 1 | B | 89 |\n| J12 | 2 | C | 61 |\n| J12 | 3 | D | 55 |\n| J12 | 4 | E | 96 |\n\nWe schedule these steps to avoid double-booking and to minimize when the last final test finishes.\n\nOh, and when you send the planned schedule back, a simple JSON sketch like this is perfect to capture the structure:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of it as a little form: \"solution\" is a list of repair jobs; each job entry has the job identifier under \"job\" and a \"tasks\" list showing the steps that job goes through. For each task we note which step number it is (\"task\"), when that step starts (\"start\"), which station handles it (\"machine\"), and how long it takes (\"duration\"). This is just the expected shape — a sketch of the format, not the actual schedule.\n\nPlease make sure to use the exact identifiers given in the instance input — no renaming and no invented labels. \nFor example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 5, "nr_jobs": 12, "jobs": [ [ [ 0, 1 ], [ 1, 78 ], [ 2, 96 ], [ 3, 61 ], [ 4, 69 ] ], [ [ 0, 95 ], [ 1, 85 ], [ 2, 67 ], [ 3, 70 ], [ 4, 64 ] ], [ [ 0, 45 ], [ 1, 59 ], [ 2, 14 ], [ 3, 83 ], [ 4, 39 ] ], [ [ 0, 44 ], [ 1, 4 ], [ 2, 63 ], [ 3, 44 ], [ 4, 48 ] ], [ [ 0, 24 ], [ 1, 32 ], [ 2, 30 ], [ 3, 30 ], [ 4, 39 ] ], [ [ 0, 21 ], [ 1, 54 ], [ 2, 62 ], [ 3, 12 ], [ 4, 50 ] ], [ [ 0, 64 ], [ 1, 50 ], [ 2, 52 ], [ 3, 89 ], [ 4, 36 ] ], [ [ 0, 91 ], [ 1, 87 ], [ 2, 3 ], [ 3, 27 ], [ 4, 95 ] ], [ [ 0, 26 ], [ 1, 57 ], [ 2, 26 ], [ 3, 77 ], [ 4, 43 ] ], [ [ 0, 96 ], [ 1, 79 ], [ 2, 55 ], [ 3, 36 ], [ 4, 78 ] ], [ [ 0, 85 ], [ 1, 18 ], [ 2, 50 ], [ 3, 54 ], [ 4, 46 ] ], [ [ 0, 65 ], [ 1, 89 ], [ 2, 61 ], [ 3, 55 ], [ 4, 96 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 94, "machine": 0, "duration": 1 }, { "task": 1, "start": 117, "machine": 1, "duration": 78 }, { "task": 2, "start": 202, "machine": 2, "duration": 96 }, { "task": 3, "start": 428, "machine": 3, "duration": 61 }, { "task": 4, "start": 519, "machine": 4, "duration": 69 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 402, "machine": 0, "duration": 95 }, { "task": 1, "start": 502, "machine": 1, "duration": 85 }, { "task": 2, "start": 587, "machine": 2, "duration": 67 }, { "task": 3, "start": 654, "machine": 3, "duration": 70 }, { "task": 4, "start": 724, "machine": 4, "duration": 64 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 292, "machine": 0, "duration": 45 }, { "task": 1, "start": 354, "machine": 1, "duration": 59 }, { "task": 2, "start": 416, "machine": 2, "duration": 14 }, { "task": 3, "start": 489, "machine": 3, "duration": 83 }, { "task": 4, "start": 588, "machine": 4, "duration": 39 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 50, "machine": 0, "duration": 44 }, { "task": 1, "start": 113, "machine": 1, "duration": 4 }, { "task": 2, "start": 139, "machine": 2, "duration": 63 }, { "task": 3, "start": 216, "machine": 3, "duration": 44 }, { "task": 4, "start": 262, "machine": 4, "duration": 48 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 24 }, { "task": 1, "start": 24, "machine": 1, "duration": 32 }, { "task": 2, "start": 56, "machine": 2, "duration": 30 }, { "task": 3, "start": 86, "machine": 3, "duration": 30 }, { "task": 4, "start": 116, "machine": 4, "duration": 39 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 271, "machine": 0, "duration": 21 }, { "task": 1, "start": 300, "machine": 1, "duration": 54 }, { "task": 2, "start": 354, "machine": 2, "duration": 62 }, { "task": 3, "start": 416, "machine": 3, "duration": 12 }, { "task": 4, "start": 469, "machine": 4, "duration": 50 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 593, "machine": 0, "duration": 64 }, { "task": 1, "start": 672, "machine": 1, "duration": 50 }, { "task": 2, "start": 727, "machine": 2, "duration": 52 }, { "task": 3, "start": 779, "machine": 3, "duration": 89 }, { "task": 4, "start": 868, "machine": 4, "duration": 36 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 95, "machine": 0, "duration": 91 }, { "task": 1, "start": 195, "machine": 1, "duration": 87 }, { "task": 2, "start": 298, "machine": 2, "duration": 3 }, { "task": 3, "start": 301, "machine": 3, "duration": 27 }, { "task": 4, "start": 328, "machine": 4, "duration": 95 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 24, "machine": 0, "duration": 26 }, { "task": 1, "start": 56, "machine": 1, "duration": 57 }, { "task": 2, "start": 113, "machine": 2, "duration": 26 }, { "task": 3, "start": 139, "machine": 3, "duration": 77 }, { "task": 4, "start": 216, "machine": 4, "duration": 43 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 497, "machine": 0, "duration": 96 }, { "task": 1, "start": 593, "machine": 1, "duration": 79 }, { "task": 2, "start": 672, "machine": 2, "duration": 55 }, { "task": 3, "start": 727, "machine": 3, "duration": 36 }, { "task": 4, "start": 788, "machine": 4, "duration": 78 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 186, "machine": 0, "duration": 85 }, { "task": 1, "start": 282, "machine": 1, "duration": 18 }, { "task": 2, "start": 301, "machine": 2, "duration": 50 }, { "task": 3, "start": 351, "machine": 3, "duration": 54 }, { "task": 4, "start": 423, "machine": 4, "duration": 46 } ] }, { "job": 11, "tasks": [ { "task": 0, "start": 337, "machine": 0, "duration": 65 }, { "task": 1, "start": 413, "machine": 1, "duration": 89 }, { "task": 2, "start": 502, "machine": 2, "duration": 61 }, { "task": 3, "start": 572, "machine": 3, "duration": 55 }, { "task": 4, "start": 627, "machine": 4, "duration": 96 } ] } ], "obj": 904.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 12, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11", "J12" ], "machines": [ "A", "B", "C", "D", "E" ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": "A", "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": "B", "duration": 78 }, { "job_id": "J1", "task_id": 2, "machine_id": "C", "duration": 96 }, { "job_id": "J1", "task_id": 3, "machine_id": "D", "duration": 61 }, { "job_id": "J1", "task_id": 4, "machine_id": "E", "duration": 69 }, { "job_id": "J2", "task_id": 0, "machine_id": "A", "duration": 95 }, { "job_id": "J2", "task_id": 1, "machine_id": "B", "duration": 85 }, { "job_id": "J2", "task_id": 2, "machine_id": "C", "duration": 67 }, { "job_id": "J2", "task_id": 3, "machine_id": "D", "duration": 70 }, { "job_id": "J2", "task_id": 4, "machine_id": "E", "duration": 64 }, { "job_id": "J3", "task_id": 0, "machine_id": "A", "duration": 45 }, { "job_id": "J3", "task_id": 1, "machine_id": "B", "duration": 59 }, { "job_id": "J3", "task_id": 2, "machine_id": "C", "duration": 14 }, { "job_id": "J3", "task_id": 3, "machine_id": "D", "duration": 83 }, { "job_id": "J3", "task_id": 4, "machine_id": "E", "duration": 39 }, { "job_id": "J4", "task_id": 0, "machine_id": "A", "duration": 44 }, { "job_id": "J4", "task_id": 1, "machine_id": "B", "duration": 4 }, { "job_id": "J4", "task_id": 2, "machine_id": "C", "duration": 63 }, { "job_id": "J4", "task_id": 3, "machine_id": "D", "duration": 44 }, { "job_id": "J4", "task_id": 4, "machine_id": "E", "duration": 48 }, { "job_id": "J5", "task_id": 0, "machine_id": "A", "duration": 24 }, { "job_id": "J5", "task_id": 1, "machine_id": "B", "duration": 32 }, { "job_id": "J5", "task_id": 2, "machine_id": "C", "duration": 30 }, { "job_id": "J5", "task_id": 3, "machine_id": "D", "duration": 30 }, { "job_id": "J5", "task_id": 4, "machine_id": "E", "duration": 39 }, { "job_id": "J6", "task_id": 0, "machine_id": "A", "duration": 21 }, { "job_id": "J6", "task_id": 1, "machine_id": "B", "duration": 54 }, { "job_id": "J6", "task_id": 2, "machine_id": "C", "duration": 62 }, { "job_id": "J6", "task_id": 3, "machine_id": "D", "duration": 12 }, { "job_id": "J6", "task_id": 4, "machine_id": "E", "duration": 50 }, { "job_id": "J7", "task_id": 0, "machine_id": "A", "duration": 64 }, { "job_id": "J7", "task_id": 1, "machine_id": "B", "duration": 50 }, { "job_id": "J7", "task_id": 2, "machine_id": "C", "duration": 52 }, { "job_id": "J7", "task_id": 3, "machine_id": "D", "duration": 89 }, { "job_id": "J7", "task_id": 4, "machine_id": "E", "duration": 36 }, { "job_id": "J8", "task_id": 0, "machine_id": "A", "duration": 91 }, { "job_id": "J8", "task_id": 1, "machine_id": "B", "duration": 87 }, { "job_id": "J8", "task_id": 2, "machine_id": "C", "duration": 3 }, { "job_id": "J8", "task_id": 3, "machine_id": "D", "duration": 27 }, { "job_id": "J8", "task_id": 4, "machine_id": "E", "duration": 95 }, { "job_id": "J9", "task_id": 0, "machine_id": "A", "duration": 26 }, { "job_id": "J9", "task_id": 1, "machine_id": "B", "duration": 57 }, { "job_id": "J9", "task_id": 2, "machine_id": "C", "duration": 26 }, { "job_id": "J9", "task_id": 3, "machine_id": "D", "duration": 77 }, { "job_id": "J9", "task_id": 4, "machine_id": "E", "duration": 43 }, { "job_id": "J10", "task_id": 0, "machine_id": "A", "duration": 96 }, { "job_id": "J10", "task_id": 1, "machine_id": "B", "duration": 79 }, { "job_id": "J10", "task_id": 2, "machine_id": "C", "duration": 55 }, { "job_id": "J10", "task_id": 3, "machine_id": "D", "duration": 36 }, { "job_id": "J10", "task_id": 4, "machine_id": "E", "duration": 78 }, { "job_id": "J11", "task_id": 0, "machine_id": "A", "duration": 85 }, { "job_id": "J11", "task_id": 1, "machine_id": "B", "duration": 18 }, { "job_id": "J11", "task_id": 2, "machine_id": "C", "duration": 50 }, { "job_id": "J11", "task_id": 3, "machine_id": "D", "duration": 54 }, { "job_id": "J11", "task_id": 4, "machine_id": "E", "duration": 46 }, { "job_id": "J12", "task_id": 0, "machine_id": "A", "duration": 65 }, { "job_id": "J12", "task_id": 1, "machine_id": "B", "duration": 89 }, { "job_id": "J12", "task_id": 2, "machine_id": "C", "duration": 61 }, { "job_id": "J12", "task_id": 3, "machine_id": "D", "duration": 55 }, { "job_id": "J12", "task_id": 4, "machine_id": "E", "duration": 96 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 94, "machine": "A", "duration": 1 }, { "task": 1, "start": 117, "machine": "B", "duration": 78 }, { "task": 2, "start": 202, "machine": "C", "duration": 96 }, { "task": 3, "start": 428, "machine": "D", "duration": 61 }, { "task": 4, "start": 519, "machine": "E", "duration": 69 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 402, "machine": "A", "duration": 95 }, { "task": 1, "start": 502, "machine": "B", "duration": 85 }, { "task": 2, "start": 587, "machine": "C", "duration": 67 }, { "task": 3, "start": 654, "machine": "D", "duration": 70 }, { "task": 4, "start": 724, "machine": "E", "duration": 64 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 292, "machine": "A", "duration": 45 }, { "task": 1, "start": 354, "machine": "B", "duration": 59 }, { "task": 2, "start": 416, "machine": "C", "duration": 14 }, { "task": 3, "start": 489, "machine": "D", "duration": 83 }, { "task": 4, "start": 588, "machine": "E", "duration": 39 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 50, "machine": "A", "duration": 44 }, { "task": 1, "start": 113, "machine": "B", "duration": 4 }, { "task": 2, "start": 139, "machine": "C", "duration": 63 }, { "task": 3, "start": 216, "machine": "D", "duration": 44 }, { "task": 4, "start": 262, "machine": "E", "duration": 48 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 0, "machine": "A", "duration": 24 }, { "task": 1, "start": 24, "machine": "B", "duration": 32 }, { "task": 2, "start": 56, "machine": "C", "duration": 30 }, { "task": 3, "start": 86, "machine": "D", "duration": 30 }, { "task": 4, "start": 116, "machine": "E", "duration": 39 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 271, "machine": "A", "duration": 21 }, { "task": 1, "start": 300, "machine": "B", "duration": 54 }, { "task": 2, "start": 354, "machine": "C", "duration": 62 }, { "task": 3, "start": 416, "machine": "D", "duration": 12 }, { "task": 4, "start": 469, "machine": "E", "duration": 50 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 593, "machine": "A", "duration": 64 }, { "task": 1, "start": 672, "machine": "B", "duration": 50 }, { "task": 2, "start": 727, "machine": "C", "duration": 52 }, { "task": 3, "start": 779, "machine": "D", "duration": 89 }, { "task": 4, "start": 868, "machine": "E", "duration": 36 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 95, "machine": "A", "duration": 91 }, { "task": 1, "start": 195, "machine": "B", "duration": 87 }, { "task": 2, "start": 298, "machine": "C", "duration": 3 }, { "task": 3, "start": 301, "machine": "D", "duration": 27 }, { "task": 4, "start": 328, "machine": "E", "duration": 95 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 24, "machine": "A", "duration": 26 }, { "task": 1, "start": 56, "machine": "B", "duration": 57 }, { "task": 2, "start": 113, "machine": "C", "duration": 26 }, { "task": 3, "start": 139, "machine": "D", "duration": 77 }, { "task": 4, "start": 216, "machine": "E", "duration": 43 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 497, "machine": "A", "duration": 96 }, { "task": 1, "start": 593, "machine": "B", "duration": 79 }, { "task": 2, "start": 672, "machine": "C", "duration": 55 }, { "task": 3, "start": 727, "machine": "D", "duration": 36 }, { "task": 4, "start": 788, "machine": "E", "duration": 78 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 186, "machine": "A", "duration": 85 }, { "task": 1, "start": 282, "machine": "B", "duration": 18 }, { "task": 2, "start": 301, "machine": "C", "duration": 50 }, { "task": 3, "start": 351, "machine": "D", "duration": 54 }, { "task": 4, "start": 423, "machine": "E", "duration": 46 } ] }, { "job": "J12", "tasks": [ { "task": 0, "start": 337, "machine": "A", "duration": 65 }, { "task": 1, "start": 413, "machine": "B", "duration": 89 }, { "task": 2, "start": 502, "machine": "C", "duration": 61 }, { "task": 3, "start": 572, "machine": "D", "duration": 55 }, { "task": 4, "start": 627, "machine": "E", "duration": 96 } ] } ], "context_index": 41, "input_format": "markdown_table", "input_index_base": "names" }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Someone set up a potluck and left a batch of casseroles to be handled — each one needs prep, then baking, then cooling, and the challenge is to schedule when each casserole starts each step so the meal is ready fast. Because the prep station, oven, and cooling area can only work on one casserole at a time and no step can be skipped or repeated, the timing choices matter. The better the timing, the sooner the last casserole is completed; the plan is evaluated by that final finish time on the clock. Specifics about how long each step takes and how many dishes there are appear below.\n\n{\n \"nr_casseroles\": 11,\n \"nr_appliances\": 5,\n \"casserole_ids\": [\n \"J1\",\n \"J2\",\n \"J3\",\n \"J4\",\n \"J5\",\n \"J6\",\n \"J7\",\n \"J8\",\n \"J9\",\n \"J10\",\n \"J11\"\n ],\n \"appliance_ids\": [\n 0,\n 1,\n 2,\n 3,\n 4\n ],\n \"tasks\": [\n {\n \"casserole_id\": \"J1\",\n \"step_index\": 0,\n \"appliance_id\": 0,\n \"duration_minutes\": 1\n },\n {\n \"casserole_id\": \"J1\",\n \"step_index\": 1,\n \"appliance_id\": 1,\n \"duration_minutes\": 91\n },\n {\n \"casserole_id\": \"J1\",\n \"step_index\": 2,\n \"appliance_id\": 2,\n \"duration_minutes\": 71\n },\n {\n \"casserole_id\": \"J1\",\n \"step_index\": 3,\n \"appliance_id\": 3,\n \"duration_minutes\": 7\n },\n {\n \"casserole_id\": \"J1\",\n \"step_index\": 4,\n \"appliance_id\": 4,\n \"duration_minutes\": 22\n },\n {\n \"casserole_id\": \"J2\",\n \"step_index\": 0,\n \"appliance_id\": 0,\n \"duration_minutes\": 18\n },\n {\n \"casserole_id\": \"J2\",\n \"step_index\": 1,\n \"appliance_id\": 1,\n \"duration_minutes\": 90\n },\n {\n \"casserole_id\": \"J2\",\n \"step_index\": 2,\n \"appliance_id\": 2,\n \"duration_minutes\": 35\n },\n {\n \"casserole_id\": \"J2\",\n \"step_index\": 3,\n \"appliance_id\": 3,\n \"duration_minutes\": 38\n },\n {\n \"casserole_id\": \"J2\",\n \"step_index\": 4,\n \"appliance_id\": 4,\n \"duration_minutes\": 58\n },\n {\n \"casserole_id\": \"J3\",\n \"step_index\": 0,\n \"appliance_id\": 0,\n \"duration_minutes\": 83\n },\n {\n \"casserole_id\": \"J3\",\n \"step_index\": 1,\n \"appliance_id\": 1,\n \"duration_minutes\": 12\n },\n {\n \"casserole_id\": \"J3\",\n \"step_index\": 2,\n \"appliance_id\": 2,\n \"duration_minutes\": 97\n },\n {\n \"casserole_id\": \"J3\",\n \"step_index\": 3,\n \"appliance_id\": 3,\n \"duration_minutes\": 87\n },\n {\n \"casserole_id\": \"J3\",\n \"step_index\": 4,\n \"appliance_id\": 4,\n \"duration_minutes\": 44\n },\n {\n \"casserole_id\": \"J4\",\n \"step_index\": 0,\n \"appliance_id\": 0,\n \"duration_minutes\": 96\n },\n {\n \"casserole_id\": \"J4\",\n \"step_index\": 1,\n \"appliance_id\": 1,\n \"duration_minutes\": 70\n },\n {\n \"casserole_id\": \"J4\",\n \"step_index\": 2,\n \"appliance_id\": 2,\n \"duration_minutes\": 64\n },\n {\n \"casserole_id\": \"J4\",\n \"step_index\": 3,\n \"appliance_id\": 3,\n \"duration_minutes\": 82\n },\n {\n \"casserole_id\": \"J4\",\n \"step_index\": 4,\n \"appliance_id\": 4,\n \"duration_minutes\": 55\n },\n {\n \"casserole_id\": \"J5\",\n \"step_index\": 0,\n \"appliance_id\": 0,\n \"duration_minutes\": 65\n },\n {\n \"casserole_id\": \"J5\",\n \"step_index\": 1,\n \"appliance_id\": 1,\n \"duration_minutes\": 1\n },\n {\n \"casserole_id\": \"J5\",\n \"step_index\": 2,\n \"appliance_id\": 2,\n \"duration_minutes\": 88\n },\n {\n \"casserole_id\": \"J5\",\n \"step_index\": 3,\n \"appliance_id\": 3,\n \"duration_minutes\": 23\n },\n {\n \"casserole_id\": \"J5\",\n \"step_index\": 4,\n \"appliance_id\": 4,\n \"duration_minutes\": 23\n },\n {\n \"casserole_id\": \"J6\",\n \"step_index\": 0,\n \"appliance_id\": 0,\n \"duration_minutes\": 73\n },\n {\n \"casserole_id\": \"J6\",\n \"step_index\": 1,\n \"appliance_id\": 1,\n \"duration_minutes\": 63\n },\n {\n \"casserole_id\": \"J6\",\n \"step_index\": 2,\n \"appliance_id\": 2,\n \"duration_minutes\": 28\n },\n {\n \"casserole_id\": \"J6\",\n \"step_index\": 3,\n \"appliance_id\": 3,\n \"duration_minutes\": 53\n },\n {\n \"casserole_id\": \"J6\",\n \"step_index\": 4,\n \"appliance_id\": 4,\n \"duration_minutes\": 20\n },\n {\n \"casserole_id\": \"J7\",\n \"step_index\": 0,\n \"appliance_id\": 0,\n \"duration_minutes\": 56\n },\n {\n \"casserole_id\": \"J7\",\n \"step_index\": 1,\n \"appliance_id\": 1,\n \"duration_minutes\": 26\n },\n {\n \"casserole_id\": \"J7\",\n \"step_index\": 2,\n \"appliance_id\": 2,\n \"duration_minutes\": 78\n },\n {\n \"casserole_id\": \"J7\",\n \"step_index\": 3,\n \"appliance_id\": 3,\n \"duration_minutes\": 94\n },\n {\n \"casserole_id\": \"J7\",\n \"step_index\": 4,\n \"appliance_id\": 4,\n \"duration_minutes\": 10\n },\n {\n \"casserole_id\": \"J8\",\n \"step_index\": 0,\n \"appliance_id\": 0,\n \"duration_minutes\": 25\n },\n {\n \"casserole_id\": \"J8\",\n \"step_index\": 1,\n \"appliance_id\": 1,\n \"duration_minutes\": 51\n },\n {\n \"casserole_id\": \"J8\",\n \"step_index\": 2,\n \"appliance_id\": 2,\n \"duration_minutes\": 78\n },\n {\n \"casserole_id\": \"J8\",\n \"step_index\": 3,\n \"appliance_id\": 3,\n \"duration_minutes\": 26\n },\n {\n \"casserole_id\": \"J8\",\n \"step_index\": 4,\n \"appliance_id\": 4,\n \"duration_minutes\": 32\n },\n {\n \"casserole_id\": \"J9\",\n \"step_index\": 0,\n \"appliance_id\": 0,\n \"duration_minutes\": 50\n },\n {\n \"casserole_id\": \"J9\",\n \"step_index\": 1,\n \"appliance_id\": 1,\n \"duration_minutes\": 55\n },\n {\n \"casserole_id\": \"J9\",\n \"step_index\": 2,\n \"appliance_id\": 2,\n \"duration_minutes\": 98\n },\n {\n \"casserole_id\": \"J9\",\n \"step_index\": 3,\n \"appliance_id\": 3,\n \"duration_minutes\": 53\n },\n {\n \"casserole_id\": \"J9\",\n \"step_index\": 4,\n \"appliance_id\": 4,\n \"duration_minutes\": 8\n },\n {\n \"casserole_id\": \"J10\",\n \"step_index\": 0,\n \"appliance_id\": 0,\n \"duration_minutes\": 4\n },\n {\n \"casserole_id\": \"J10\",\n \"step_index\": 1,\n \"appliance_id\": 1,\n \"duration_minutes\": 43\n },\n {\n \"casserole_id\": \"J10\",\n \"step_index\": 2,\n \"appliance_id\": 2,\n \"duration_minutes\": 43\n },\n {\n \"casserole_id\": \"J10\",\n \"step_index\": 3,\n \"appliance_id\": 3,\n \"duration_minutes\": 63\n },\n {\n \"casserole_id\": \"J10\",\n \"step_index\": 4,\n \"appliance_id\": 4,\n \"duration_minutes\": 22\n },\n {\n \"casserole_id\": \"J11\",\n \"step_index\": 0,\n \"appliance_id\": 0,\n \"duration_minutes\": 62\n },\n {\n \"casserole_id\": \"J11\",\n \"step_index\": 1,\n \"appliance_id\": 1,\n \"duration_minutes\": 65\n },\n {\n \"casserole_id\": \"J11\",\n \"step_index\": 2,\n \"appliance_id\": 2,\n \"duration_minutes\": 73\n },\n {\n \"casserole_id\": \"J11\",\n \"step_index\": 3,\n \"appliance_id\": 3,\n \"duration_minutes\": 81\n },\n {\n \"casserole_id\": \"J11\",\n \"step_index\": 4,\n \"appliance_id\": 4,\n \"duration_minutes\": 82\n }\n ]\n}\n\nIf you want to hand me the schedule, a simple JSON layout works nicely — something like this:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of it as a little form: \"solution\" holds a list of casseroles, each entry's \"job\" is the dish identifier, and \"tasks\" is the sequence of steps for that dish. Each task line says which step it is (\"task\"), when that step starts on the clock (\"start\"), which station it's on (\"machine\"), and how long it runs (\"duration\"). This is just a sketch of the shape I expect, not the actual plan.\n\nPlease make sure to use the exact identifiers from the instance input — don't rename or invent labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 5, "nr_jobs": 11, "jobs": [ [ [ 0, 1 ], [ 1, 91 ], [ 2, 71 ], [ 3, 7 ], [ 4, 22 ] ], [ [ 0, 18 ], [ 1, 90 ], [ 2, 35 ], [ 3, 38 ], [ 4, 58 ] ], [ [ 0, 83 ], [ 1, 12 ], [ 2, 97 ], [ 3, 87 ], [ 4, 44 ] ], [ [ 0, 96 ], [ 1, 70 ], [ 2, 64 ], [ 3, 82 ], [ 4, 55 ] ], [ [ 0, 65 ], [ 1, 1 ], [ 2, 88 ], [ 3, 23 ], [ 4, 23 ] ], [ [ 0, 73 ], [ 1, 63 ], [ 2, 28 ], [ 3, 53 ], [ 4, 20 ] ], [ [ 0, 56 ], [ 1, 26 ], [ 2, 78 ], [ 3, 94 ], [ 4, 10 ] ], [ [ 0, 25 ], [ 1, 51 ], [ 2, 78 ], [ 3, 26 ], [ 4, 32 ] ], [ [ 0, 50 ], [ 1, 55 ], [ 2, 98 ], [ 3, 53 ], [ 4, 8 ] ], [ [ 0, 4 ], [ 1, 43 ], [ 2, 43 ], [ 3, 63 ], [ 4, 22 ] ], [ [ 0, 62 ], [ 1, 65 ], [ 2, 73 ], [ 3, 81 ], [ 4, 82 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 4, "machine": 0, "duration": 1 }, { "task": 1, "start": 608, "machine": 1, "duration": 91 }, { "task": 2, "start": 729, "machine": 2, "duration": 71 }, { "task": 3, "start": 800, "machine": 3, "duration": 7 }, { "task": 4, "start": 807, "machine": 4, "duration": 22 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 70, "machine": 0, "duration": 18 }, { "task": 1, "start": 88, "machine": 1, "duration": 90 }, { "task": 2, "start": 178, "machine": 2, "duration": 35 }, { "task": 3, "start": 213, "machine": 3, "duration": 38 }, { "task": 4, "start": 251, "machine": 4, "duration": 58 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 88, "machine": 0, "duration": 83 }, { "task": 1, "start": 178, "machine": 1, "duration": 12 }, { "task": 2, "start": 213, "machine": 2, "duration": 97 }, { "task": 3, "start": 310, "machine": 3, "duration": 87 }, { "task": 4, "start": 397, "machine": 4, "duration": 44 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 387, "machine": 0, "duration": 96 }, { "task": 1, "start": 483, "machine": 1, "duration": 70 }, { "task": 2, "start": 567, "machine": 2, "duration": 64 }, { "task": 3, "start": 662, "machine": 3, "duration": 82 }, { "task": 4, "start": 744, "machine": 4, "duration": 55 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 5, "machine": 0, "duration": 65 }, { "task": 1, "start": 70, "machine": 1, "duration": 1 }, { "task": 2, "start": 90, "machine": 2, "duration": 88 }, { "task": 3, "start": 178, "machine": 3, "duration": 23 }, { "task": 4, "start": 201, "machine": 4, "duration": 23 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 233, "machine": 0, "duration": 73 }, { "task": 1, "start": 382, "machine": 1, "duration": 63 }, { "task": 2, "start": 461, "machine": 2, "duration": 28 }, { "task": 3, "start": 489, "machine": 3, "duration": 53 }, { "task": 4, "start": 560, "machine": 4, "duration": 20 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 331, "machine": 0, "duration": 56 }, { "task": 1, "start": 445, "machine": 1, "duration": 26 }, { "task": 2, "start": 489, "machine": 2, "duration": 78 }, { "task": 3, "start": 568, "machine": 3, "duration": 94 }, { "task": 4, "start": 662, "machine": 4, "duration": 10 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 306, "machine": 0, "duration": 25 }, { "task": 1, "start": 331, "machine": 1, "duration": 51 }, { "task": 2, "start": 383, "machine": 2, "duration": 78 }, { "task": 3, "start": 542, "machine": 3, "duration": 26 }, { "task": 4, "start": 580, "machine": 4, "duration": 32 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 483, "machine": 0, "duration": 50 }, { "task": 1, "start": 553, "machine": 1, "duration": 55 }, { "task": 2, "start": 631, "machine": 2, "duration": 98 }, { "task": 3, "start": 744, "machine": 3, "duration": 53 }, { "task": 4, "start": 799, "machine": 4, "duration": 8 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 4 }, { "task": 1, "start": 4, "machine": 1, "duration": 43 }, { "task": 2, "start": 47, "machine": 2, "duration": 43 }, { "task": 3, "start": 90, "machine": 3, "duration": 63 }, { "task": 4, "start": 153, "machine": 4, "duration": 22 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 171, "machine": 0, "duration": 62 }, { "task": 1, "start": 233, "machine": 1, "duration": 65 }, { "task": 2, "start": 310, "machine": 2, "duration": 73 }, { "task": 3, "start": 397, "machine": 3, "duration": 81 }, { "task": 4, "start": 478, "machine": 4, "duration": 82 } ] } ], "obj": 829.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 11, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11" ], "machines": [ 0, 1, 2, 3, 4 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 91 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 71 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 7 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 22 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 18 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 90 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 35 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 38 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 58 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 83 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 12 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 97 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 87 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 44 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 96 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 70 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 64 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 82 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 55 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 65 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 1 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 88 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 23 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 23 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 73 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 63 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 28 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 53 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 20 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 56 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 26 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 78 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 94 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 10 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 25 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 51 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 78 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 26 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 32 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 50 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 55 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 98 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 53 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 8 }, { "job_id": "J10", "task_id": 0, "machine_id": 0, "duration": 4 }, { "job_id": "J10", "task_id": 1, "machine_id": 1, "duration": 43 }, { "job_id": "J10", "task_id": 2, "machine_id": 2, "duration": 43 }, { "job_id": "J10", "task_id": 3, "machine_id": 3, "duration": 63 }, { "job_id": "J10", "task_id": 4, "machine_id": 4, "duration": 22 }, { "job_id": "J11", "task_id": 0, "machine_id": 0, "duration": 62 }, { "job_id": "J11", "task_id": 1, "machine_id": 1, "duration": 65 }, { "job_id": "J11", "task_id": 2, "machine_id": 2, "duration": 73 }, { "job_id": "J11", "task_id": 3, "machine_id": 3, "duration": 81 }, { "job_id": "J11", "task_id": 4, "machine_id": 4, "duration": 82 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 4, "machine": 0, "duration": 1 }, { "task": 1, "start": 608, "machine": 1, "duration": 91 }, { "task": 2, "start": 729, "machine": 2, "duration": 71 }, { "task": 3, "start": 800, "machine": 3, "duration": 7 }, { "task": 4, "start": 807, "machine": 4, "duration": 22 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 70, "machine": 0, "duration": 18 }, { "task": 1, "start": 88, "machine": 1, "duration": 90 }, { "task": 2, "start": 178, "machine": 2, "duration": 35 }, { "task": 3, "start": 213, "machine": 3, "duration": 38 }, { "task": 4, "start": 251, "machine": 4, "duration": 58 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 88, "machine": 0, "duration": 83 }, { "task": 1, "start": 178, "machine": 1, "duration": 12 }, { "task": 2, "start": 213, "machine": 2, "duration": 97 }, { "task": 3, "start": 310, "machine": 3, "duration": 87 }, { "task": 4, "start": 397, "machine": 4, "duration": 44 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 387, "machine": 0, "duration": 96 }, { "task": 1, "start": 483, "machine": 1, "duration": 70 }, { "task": 2, "start": 567, "machine": 2, "duration": 64 }, { "task": 3, "start": 662, "machine": 3, "duration": 82 }, { "task": 4, "start": 744, "machine": 4, "duration": 55 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 5, "machine": 0, "duration": 65 }, { "task": 1, "start": 70, "machine": 1, "duration": 1 }, { "task": 2, "start": 90, "machine": 2, "duration": 88 }, { "task": 3, "start": 178, "machine": 3, "duration": 23 }, { "task": 4, "start": 201, "machine": 4, "duration": 23 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 233, "machine": 0, "duration": 73 }, { "task": 1, "start": 382, "machine": 1, "duration": 63 }, { "task": 2, "start": 461, "machine": 2, "duration": 28 }, { "task": 3, "start": 489, "machine": 3, "duration": 53 }, { "task": 4, "start": 560, "machine": 4, "duration": 20 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 331, "machine": 0, "duration": 56 }, { "task": 1, "start": 445, "machine": 1, "duration": 26 }, { "task": 2, "start": 489, "machine": 2, "duration": 78 }, { "task": 3, "start": 568, "machine": 3, "duration": 94 }, { "task": 4, "start": 662, "machine": 4, "duration": 10 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 306, "machine": 0, "duration": 25 }, { "task": 1, "start": 331, "machine": 1, "duration": 51 }, { "task": 2, "start": 383, "machine": 2, "duration": 78 }, { "task": 3, "start": 542, "machine": 3, "duration": 26 }, { "task": 4, "start": 580, "machine": 4, "duration": 32 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 483, "machine": 0, "duration": 50 }, { "task": 1, "start": 553, "machine": 1, "duration": 55 }, { "task": 2, "start": 631, "machine": 2, "duration": 98 }, { "task": 3, "start": 744, "machine": 3, "duration": 53 }, { "task": 4, "start": 799, "machine": 4, "duration": 8 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 4 }, { "task": 1, "start": 4, "machine": 1, "duration": 43 }, { "task": 2, "start": 47, "machine": 2, "duration": 43 }, { "task": 3, "start": 90, "machine": 3, "duration": 63 }, { "task": 4, "start": 153, "machine": 4, "duration": 22 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 171, "machine": 0, "duration": 62 }, { "task": 1, "start": 233, "machine": 1, "duration": 65 }, { "task": 2, "start": 310, "machine": 2, "duration": 73 }, { "task": 3, "start": 397, "machine": 3, "duration": 81 }, { "task": 4, "start": 478, "machine": 4, "duration": 82 } ] } ], "context_index": 42, "input_format": "json", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "I was thinking about a busy bakery where every loaf has to go from the mixer to the oven to the glazing bench in that exact order, each step taking a set amount of time. The decision is how to line up the loaves so that the whole batch is finished as quickly as possible — the plan that finishes the very last loaf sooner is the better one. To see which plan wins, look at when each loaf comes off the glazing bench and take the latest finishing time; that number is what needs to be as small as possible. Remember, the mixer, oven, and glazing station can each handle only one loaf at a time, and every loaf must go through all three steps exactly once. The exact loaf times and details are shown below.\n\nBelow are the details for the 10 loaves, the 6 stations, the loaf IDs J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, and the station sequence 0, 1, 2, 3, 4, 5.\n\n| loaf_id | step_index | station_id | processing_time |\n|---|---|---|---|\n| J1 | 0 | 0 | 1 |\n| J1 | 1 | 1 | 5 |\n| J1 | 2 | 2 | 47 |\n| J1 | 3 | 3 | 53 |\n| J1 | 4 | 4 | 75 |\n| J1 | 5 | 5 | 39 |\n| J2 | 0 | 0 | 95 |\n| J2 | 1 | 1 | 3 |\n| J2 | 2 | 2 | 7 |\n| J2 | 3 | 3 | 51 |\n| J2 | 4 | 4 | 22 |\n| J2 | 5 | 5 | 63 |\n| J3 | 0 | 0 | 80 |\n| J3 | 1 | 1 | 90 |\n| J3 | 2 | 2 | 49 |\n| J3 | 3 | 3 | 49 |\n| J3 | 4 | 4 | 38 |\n| J3 | 5 | 5 | 65 |\n| J4 | 0 | 0 | 21 |\n| J4 | 1 | 1 | 61 |\n| J4 | 2 | 2 | 7 |\n| J4 | 3 | 3 | 69 |\n| J4 | 4 | 4 | 47 |\n| J4 | 5 | 5 | 16 |\n| J5 | 0 | 0 | 8 |\n| J5 | 1 | 1 | 26 |\n| J5 | 2 | 2 | 72 |\n| J5 | 3 | 3 | 92 |\n| J5 | 4 | 4 | 94 |\n| J5 | 5 | 5 | 90 |\n| J6 | 0 | 0 | 47 |\n| J6 | 1 | 1 | 3 |\n| J6 | 2 | 2 | 5 |\n| J6 | 3 | 3 | 98 |\n| J6 | 4 | 4 | 83 |\n| J6 | 5 | 5 | 57 |\n| J7 | 0 | 0 | 15 |\n| J7 | 1 | 1 | 54 |\n| J7 | 2 | 2 | 25 |\n| J7 | 3 | 3 | 69 |\n| J7 | 4 | 4 | 75 |\n| J7 | 5 | 5 | 53 |\n| J8 | 0 | 0 | 70 |\n| J8 | 1 | 1 | 28 |\n| J8 | 2 | 2 | 73 |\n| J8 | 3 | 3 | 11 |\n| J8 | 4 | 4 | 6 |\n| J8 | 5 | 5 | 32 |\n| J9 | 0 | 0 | 90 |\n| J9 | 1 | 1 | 66 |\n| J9 | 2 | 2 | 39 |\n| J9 | 3 | 3 | 13 |\n| J9 | 4 | 4 | 97 |\n| J9 | 5 | 5 | 10 |\n| J10 | 0 | 0 | 18 |\n| J10 | 1 | 1 | 98 |\n| J10 | 2 | 2 | 86 |\n| J10 | 3 | 3 | 40 |\n| J10 | 4 | 4 | 37 |\n| J10 | 5 | 5 | 9 |\n\nI will use these details to compute each loaf's start and finish times and to determine which lineup gives the smallest makespan.\n\nOh, and when you send back the actual plan, please follow this simple JSON layout so I can read it easily:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of it like a little form: \"solution\" is the list of loaves, each loaf object has a \"job\" label and a \"tasks\" list, and each task entry says which step it is (\"task\"), when that step starts (\"start\"), which station handles it (\"machine\"), and how long it takes (\"duration\"). Pretty informal — just the shape of what I expect, not the real answers.\n\nThis JSON is only a sketch of the expected shape, not the actual schedule. Also make sure to use the exact identifiers from the instance input — do not rename them and don't invent new labels.\n\nValid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 6, "nr_jobs": 10, "jobs": [ [ [ 0, 1 ], [ 1, 5 ], [ 2, 47 ], [ 3, 53 ], [ 4, 75 ], [ 5, 39 ] ], [ [ 0, 95 ], [ 1, 3 ], [ 2, 7 ], [ 3, 51 ], [ 4, 22 ], [ 5, 63 ] ], [ [ 0, 80 ], [ 1, 90 ], [ 2, 49 ], [ 3, 49 ], [ 4, 38 ], [ 5, 65 ] ], [ [ 0, 21 ], [ 1, 61 ], [ 2, 7 ], [ 3, 69 ], [ 4, 47 ], [ 5, 16 ] ], [ [ 0, 8 ], [ 1, 26 ], [ 2, 72 ], [ 3, 92 ], [ 4, 94 ], [ 5, 90 ] ], [ [ 0, 47 ], [ 1, 3 ], [ 2, 5 ], [ 3, 98 ], [ 4, 83 ], [ 5, 57 ] ], [ [ 0, 15 ], [ 1, 54 ], [ 2, 25 ], [ 3, 69 ], [ 4, 75 ], [ 5, 53 ] ], [ [ 0, 70 ], [ 1, 28 ], [ 2, 73 ], [ 3, 11 ], [ 4, 6 ], [ 5, 32 ] ], [ [ 0, 90 ], [ 1, 66 ], [ 2, 39 ], [ 3, 13 ], [ 4, 97 ], [ 5, 10 ] ], [ [ 0, 18 ], [ 1, 98 ], [ 2, 86 ], [ 3, 40 ], [ 4, 37 ], [ 5, 9 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 5 }, { "task": 2, "start": 6, "machine": 2, "duration": 47 }, { "task": 3, "start": 53, "machine": 3, "duration": 53 }, { "task": 4, "start": 107, "machine": 4, "duration": 75 }, { "task": 5, "start": 182, "machine": 5, "duration": 39 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 329, "machine": 0, "duration": 95 }, { "task": 1, "start": 424, "machine": 1, "duration": 3 }, { "task": 2, "start": 427, "machine": 2, "duration": 7 }, { "task": 3, "start": 436, "machine": 3, "duration": 51 }, { "task": 4, "start": 496, "machine": 4, "duration": 22 }, { "task": 5, "start": 558, "machine": 5, "duration": 63 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 42, "machine": 0, "duration": 80 }, { "task": 1, "start": 122, "machine": 1, "duration": 90 }, { "task": 2, "start": 212, "machine": 2, "duration": 49 }, { "task": 3, "start": 267, "machine": 3, "duration": 49 }, { "task": 4, "start": 361, "machine": 4, "duration": 38 }, { "task": 5, "start": 451, "machine": 5, "duration": 65 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 424, "machine": 0, "duration": 21 }, { "task": 1, "start": 445, "machine": 1, "duration": 61 }, { "task": 2, "start": 507, "machine": 2, "duration": 7 }, { "task": 3, "start": 518, "machine": 3, "duration": 69 }, { "task": 4, "start": 607, "machine": 4, "duration": 47 }, { "task": 5, "start": 678, "machine": 5, "duration": 16 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 34, "machine": 0, "duration": 8 }, { "task": 1, "start": 70, "machine": 1, "duration": 26 }, { "task": 2, "start": 96, "machine": 2, "duration": 72 }, { "task": 3, "start": 175, "machine": 3, "duration": 92 }, { "task": 4, "start": 267, "machine": 4, "duration": 94 }, { "task": 5, "start": 361, "machine": 5, "duration": 90 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 212, "machine": 0, "duration": 47 }, { "task": 1, "start": 278, "machine": 1, "duration": 3 }, { "task": 2, "start": 281, "machine": 2, "duration": 5 }, { "task": 3, "start": 338, "machine": 3, "duration": 98 }, { "task": 4, "start": 524, "machine": 4, "duration": 83 }, { "task": 5, "start": 621, "machine": 5, "duration": 57 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 15 }, { "task": 1, "start": 16, "machine": 1, "duration": 54 }, { "task": 2, "start": 70, "machine": 2, "duration": 25 }, { "task": 3, "start": 106, "machine": 3, "duration": 69 }, { "task": 4, "start": 182, "machine": 4, "duration": 75 }, { "task": 5, "start": 257, "machine": 5, "duration": 53 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 259, "machine": 0, "duration": 70 }, { "task": 1, "start": 379, "machine": 1, "duration": 28 }, { "task": 2, "start": 434, "machine": 2, "duration": 73 }, { "task": 3, "start": 507, "machine": 3, "duration": 11 }, { "task": 4, "start": 518, "machine": 4, "duration": 6 }, { "task": 5, "start": 526, "machine": 5, "duration": 32 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 122, "machine": 0, "duration": 90 }, { "task": 1, "start": 212, "machine": 1, "duration": 66 }, { "task": 2, "start": 286, "machine": 2, "duration": 39 }, { "task": 3, "start": 325, "machine": 3, "duration": 13 }, { "task": 4, "start": 399, "machine": 4, "duration": 97 }, { "task": 5, "start": 516, "machine": 5, "duration": 10 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 16, "machine": 0, "duration": 18 }, { "task": 1, "start": 281, "machine": 1, "duration": 98 }, { "task": 2, "start": 514, "machine": 2, "duration": 86 }, { "task": 3, "start": 600, "machine": 3, "duration": 40 }, { "task": 4, "start": 654, "machine": 4, "duration": 37 }, { "task": 5, "start": 694, "machine": 5, "duration": 9 } ] } ], "obj": 703.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 10, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10" ], "machines": [ 0, 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 5 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 47 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 53 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 75 }, { "job_id": "J1", "task_id": 5, "machine_id": 5, "duration": 39 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 95 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 3 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 7 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 51 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 22 }, { "job_id": "J2", "task_id": 5, "machine_id": 5, "duration": 63 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 80 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 90 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 49 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 49 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 38 }, { "job_id": "J3", "task_id": 5, "machine_id": 5, "duration": 65 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 21 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 61 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 7 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 69 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 47 }, { "job_id": "J4", "task_id": 5, "machine_id": 5, "duration": 16 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 8 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 26 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 72 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 92 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 94 }, { "job_id": "J5", "task_id": 5, "machine_id": 5, "duration": 90 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 47 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 3 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 5 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 98 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 83 }, { "job_id": "J6", "task_id": 5, "machine_id": 5, "duration": 57 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 15 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 54 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 25 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 69 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 75 }, { "job_id": "J7", "task_id": 5, "machine_id": 5, "duration": 53 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 70 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 28 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 73 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 11 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 6 }, { "job_id": "J8", "task_id": 5, "machine_id": 5, "duration": 32 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 90 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 66 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 39 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 13 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 97 }, { "job_id": "J9", "task_id": 5, "machine_id": 5, "duration": 10 }, { "job_id": "J10", "task_id": 0, "machine_id": 0, "duration": 18 }, { "job_id": "J10", "task_id": 1, "machine_id": 1, "duration": 98 }, { "job_id": "J10", "task_id": 2, "machine_id": 2, "duration": 86 }, { "job_id": "J10", "task_id": 3, "machine_id": 3, "duration": 40 }, { "job_id": "J10", "task_id": 4, "machine_id": 4, "duration": 37 }, { "job_id": "J10", "task_id": 5, "machine_id": 5, "duration": 9 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 5 }, { "task": 2, "start": 6, "machine": 2, "duration": 47 }, { "task": 3, "start": 53, "machine": 3, "duration": 53 }, { "task": 4, "start": 107, "machine": 4, "duration": 75 }, { "task": 5, "start": 182, "machine": 5, "duration": 39 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 329, "machine": 0, "duration": 95 }, { "task": 1, "start": 424, "machine": 1, "duration": 3 }, { "task": 2, "start": 427, "machine": 2, "duration": 7 }, { "task": 3, "start": 436, "machine": 3, "duration": 51 }, { "task": 4, "start": 496, "machine": 4, "duration": 22 }, { "task": 5, "start": 558, "machine": 5, "duration": 63 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 42, "machine": 0, "duration": 80 }, { "task": 1, "start": 122, "machine": 1, "duration": 90 }, { "task": 2, "start": 212, "machine": 2, "duration": 49 }, { "task": 3, "start": 267, "machine": 3, "duration": 49 }, { "task": 4, "start": 361, "machine": 4, "duration": 38 }, { "task": 5, "start": 451, "machine": 5, "duration": 65 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 424, "machine": 0, "duration": 21 }, { "task": 1, "start": 445, "machine": 1, "duration": 61 }, { "task": 2, "start": 507, "machine": 2, "duration": 7 }, { "task": 3, "start": 518, "machine": 3, "duration": 69 }, { "task": 4, "start": 607, "machine": 4, "duration": 47 }, { "task": 5, "start": 678, "machine": 5, "duration": 16 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 34, "machine": 0, "duration": 8 }, { "task": 1, "start": 70, "machine": 1, "duration": 26 }, { "task": 2, "start": 96, "machine": 2, "duration": 72 }, { "task": 3, "start": 175, "machine": 3, "duration": 92 }, { "task": 4, "start": 267, "machine": 4, "duration": 94 }, { "task": 5, "start": 361, "machine": 5, "duration": 90 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 212, "machine": 0, "duration": 47 }, { "task": 1, "start": 278, "machine": 1, "duration": 3 }, { "task": 2, "start": 281, "machine": 2, "duration": 5 }, { "task": 3, "start": 338, "machine": 3, "duration": 98 }, { "task": 4, "start": 524, "machine": 4, "duration": 83 }, { "task": 5, "start": 621, "machine": 5, "duration": 57 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 15 }, { "task": 1, "start": 16, "machine": 1, "duration": 54 }, { "task": 2, "start": 70, "machine": 2, "duration": 25 }, { "task": 3, "start": 106, "machine": 3, "duration": 69 }, { "task": 4, "start": 182, "machine": 4, "duration": 75 }, { "task": 5, "start": 257, "machine": 5, "duration": 53 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 259, "machine": 0, "duration": 70 }, { "task": 1, "start": 379, "machine": 1, "duration": 28 }, { "task": 2, "start": 434, "machine": 2, "duration": 73 }, { "task": 3, "start": 507, "machine": 3, "duration": 11 }, { "task": 4, "start": 518, "machine": 4, "duration": 6 }, { "task": 5, "start": 526, "machine": 5, "duration": 32 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 122, "machine": 0, "duration": 90 }, { "task": 1, "start": 212, "machine": 1, "duration": 66 }, { "task": 2, "start": 286, "machine": 2, "duration": 39 }, { "task": 3, "start": 325, "machine": 3, "duration": 13 }, { "task": 4, "start": 399, "machine": 4, "duration": 97 }, { "task": 5, "start": 516, "machine": 5, "duration": 10 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 16, "machine": 0, "duration": 18 }, { "task": 1, "start": 281, "machine": 1, "duration": 98 }, { "task": 2, "start": 514, "machine": 2, "duration": 86 }, { "task": 3, "start": 600, "machine": 3, "duration": 40 }, { "task": 4, "start": 654, "machine": 4, "duration": 37 }, { "task": 5, "start": 694, "machine": 5, "duration": 9 } ] } ], "context_index": 43, "input_format": "markdown_table", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "At the shop the workflow is straightforward: every booklet goes through printing, then trimming, then binding. The decision is how to schedule the batches through those three stations so that the final booklet is finished as early as possible — the finish time of the last job is the way to tell which plan is better. Machines can't handle more than one batch simultaneously, and every job must complete all three steps in order. The exact timings and batches are shown below.\n\n# nr_booklets=12\n# nr_stations=6\n# booklet_ids=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11, J12\n# station_ids=1, 2, 3, 4, 5, 6\nbooklet_id,step_index,station_id,processing_time\nJ1,0,1,1\nJ1,1,2,18\nJ1,2,3,23\nJ1,3,4,98\nJ1,4,5,29\nJ1,5,6,61\nJ2,0,1,99\nJ2,1,2,70\nJ2,2,3,74\nJ2,3,4,45\nJ2,4,5,60\nJ2,5,6,15\nJ3,0,1,63\nJ3,1,2,93\nJ3,2,3,54\nJ3,3,4,3\nJ3,4,5,5\nJ3,5,6,65\nJ4,0,1,59\nJ4,1,2,68\nJ4,2,3,49\nJ4,3,4,38\nJ4,4,5,7\nJ4,5,6,9\nJ5,0,1,92\nJ5,1,2,79\nJ5,2,3,81\nJ5,3,4,58\nJ5,4,5,36\nJ5,5,6,60\nJ6,0,1,38\nJ6,1,2,78\nJ6,2,3,31\nJ6,3,4,4\nJ6,4,5,57\nJ6,5,6,90\nJ7,0,1,77\nJ7,1,2,30\nJ7,2,3,24\nJ7,3,4,6\nJ7,4,5,99\nJ7,5,6,52\nJ8,0,1,43\nJ8,1,2,4\nJ8,2,3,38\nJ8,3,4,18\nJ8,4,5,69\nJ8,5,6,20\nJ9,0,1,18\nJ9,1,2,10\nJ9,2,3,16\nJ9,3,4,61\nJ9,4,5,21\nJ9,5,6,37\nJ10,0,1,54\nJ10,1,2,16\nJ10,2,3,36\nJ10,3,4,30\nJ10,4,5,28\nJ10,5,6,15\nJ11,0,1,89\nJ11,1,2,88\nJ11,2,3,88\nJ11,3,4,12\nJ11,4,5,86\nJ11,5,6,98\nJ12,0,1,62\nJ12,1,2,71\nJ12,2,3,56\nJ12,3,4,27\nJ12,4,5,56\nJ12,5,6,65\n\nAlso, when you give me the actual schedule, please follow this simple JSON layout so I can read it programmatically — nothing fancy, just the shape shown below.\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of that JSON as a little form: \"solution\" holds a list of jobs, each job has an id and a list of its tasks; each task notes which step it is, when it starts, which machine does it, and how long it takes. It's just a sketch of the expected shape — not the actual schedule yet.\n\nPlease make sure to use the exact identifiers from the instance input — do not rename or invent labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 6, "nr_jobs": 12, "jobs": [ [ [ 0, 1 ], [ 1, 18 ], [ 2, 23 ], [ 3, 98 ], [ 4, 29 ], [ 5, 61 ] ], [ [ 0, 99 ], [ 1, 70 ], [ 2, 74 ], [ 3, 45 ], [ 4, 60 ], [ 5, 15 ] ], [ [ 0, 63 ], [ 1, 93 ], [ 2, 54 ], [ 3, 3 ], [ 4, 5 ], [ 5, 65 ] ], [ [ 0, 59 ], [ 1, 68 ], [ 2, 49 ], [ 3, 38 ], [ 4, 7 ], [ 5, 9 ] ], [ [ 0, 92 ], [ 1, 79 ], [ 2, 81 ], [ 3, 58 ], [ 4, 36 ], [ 5, 60 ] ], [ [ 0, 38 ], [ 1, 78 ], [ 2, 31 ], [ 3, 4 ], [ 4, 57 ], [ 5, 90 ] ], [ [ 0, 77 ], [ 1, 30 ], [ 2, 24 ], [ 3, 6 ], [ 4, 99 ], [ 5, 52 ] ], [ [ 0, 43 ], [ 1, 4 ], [ 2, 38 ], [ 3, 18 ], [ 4, 69 ], [ 5, 20 ] ], [ [ 0, 18 ], [ 1, 10 ], [ 2, 16 ], [ 3, 61 ], [ 4, 21 ], [ 5, 37 ] ], [ [ 0, 54 ], [ 1, 16 ], [ 2, 36 ], [ 3, 30 ], [ 4, 28 ], [ 5, 15 ] ], [ [ 0, 89 ], [ 1, 88 ], [ 2, 88 ], [ 3, 12 ], [ 4, 86 ], [ 5, 98 ] ], [ [ 0, 62 ], [ 1, 71 ], [ 2, 56 ], [ 3, 27 ], [ 4, 56 ], [ 5, 65 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 18 }, { "task": 2, "start": 19, "machine": 2, "duration": 23 }, { "task": 3, "start": 42, "machine": 3, "duration": 98 }, { "task": 4, "start": 140, "machine": 4, "duration": 29 }, { "task": 5, "start": 169, "machine": 5, "duration": 61 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 300, "machine": 0, "duration": 99 }, { "task": 1, "start": 399, "machine": 1, "duration": 70 }, { "task": 2, "start": 530, "machine": 2, "duration": 74 }, { "task": 3, "start": 604, "machine": 3, "duration": 45 }, { "task": 4, "start": 652, "machine": 4, "duration": 60 }, { "task": 5, "start": 712, "machine": 5, "duration": 15 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 476, "machine": 0, "duration": 63 }, { "task": 1, "start": 539, "machine": 1, "duration": 93 }, { "task": 2, "start": 632, "machine": 2, "duration": 54 }, { "task": 3, "start": 695, "machine": 3, "duration": 3 }, { "task": 4, "start": 712, "machine": 4, "duration": 5 }, { "task": 5, "start": 727, "machine": 5, "duration": 65 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 582, "machine": 0, "duration": 59 }, { "task": 1, "start": 641, "machine": 1, "duration": 68 }, { "task": 2, "start": 761, "machine": 2, "duration": 49 }, { "task": 3, "start": 810, "machine": 3, "duration": 38 }, { "task": 4, "start": 848, "machine": 4, "duration": 7 }, { "task": 5, "start": 855, "machine": 5, "duration": 9 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 146, "machine": 0, "duration": 92 }, { "task": 1, "start": 238, "machine": 1, "duration": 79 }, { "task": 2, "start": 322, "machine": 2, "duration": 81 }, { "task": 3, "start": 403, "machine": 3, "duration": 58 }, { "task": 4, "start": 461, "machine": 4, "duration": 36 }, { "task": 5, "start": 518, "machine": 5, "duration": 60 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 38 }, { "task": 1, "start": 39, "machine": 1, "duration": 78 }, { "task": 2, "start": 117, "machine": 2, "duration": 31 }, { "task": 3, "start": 148, "machine": 3, "duration": 4 }, { "task": 4, "start": 169, "machine": 4, "duration": 57 }, { "task": 5, "start": 230, "machine": 5, "duration": 90 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 399, "machine": 0, "duration": 77 }, { "task": 1, "start": 476, "machine": 1, "duration": 30 }, { "task": 2, "start": 506, "machine": 2, "duration": 24 }, { "task": 3, "start": 530, "machine": 3, "duration": 6 }, { "task": 4, "start": 553, "machine": 4, "duration": 99 }, { "task": 5, "start": 652, "machine": 5, "duration": 52 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 539, "machine": 0, "duration": 43 }, { "task": 1, "start": 633, "machine": 1, "duration": 4 }, { "task": 2, "start": 686, "machine": 2, "duration": 38 }, { "task": 3, "start": 724, "machine": 3, "duration": 18 }, { "task": 4, "start": 742, "machine": 4, "duration": 69 }, { "task": 5, "start": 811, "machine": 5, "duration": 20 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 39, "machine": 0, "duration": 18 }, { "task": 1, "start": 117, "machine": 1, "duration": 10 }, { "task": 2, "start": 148, "machine": 2, "duration": 16 }, { "task": 3, "start": 230, "machine": 3, "duration": 61 }, { "task": 4, "start": 291, "machine": 4, "duration": 21 }, { "task": 5, "start": 320, "machine": 5, "duration": 37 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 641, "machine": 0, "duration": 54 }, { "task": 1, "start": 709, "machine": 1, "duration": 16 }, { "task": 2, "start": 725, "machine": 2, "duration": 36 }, { "task": 3, "start": 761, "machine": 3, "duration": 30 }, { "task": 4, "start": 812, "machine": 4, "duration": 28 }, { "task": 5, "start": 840, "machine": 5, "duration": 15 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 57, "machine": 0, "duration": 89 }, { "task": 1, "start": 146, "machine": 1, "duration": 88 }, { "task": 2, "start": 234, "machine": 2, "duration": 88 }, { "task": 3, "start": 322, "machine": 3, "duration": 12 }, { "task": 4, "start": 334, "machine": 4, "duration": 86 }, { "task": 5, "start": 420, "machine": 5, "duration": 98 } ] }, { "job": 11, "tasks": [ { "task": 0, "start": 238, "machine": 0, "duration": 62 }, { "task": 1, "start": 317, "machine": 1, "duration": 71 }, { "task": 2, "start": 403, "machine": 2, "duration": 56 }, { "task": 3, "start": 461, "machine": 3, "duration": 27 }, { "task": 4, "start": 497, "machine": 4, "duration": 56 }, { "task": 5, "start": 586, "machine": 5, "duration": 65 } ] } ], "obj": 864.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 12, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11", "J12" ], "machines": [ 1, 2, 3, 4, 5, 6 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 2, "duration": 18 }, { "job_id": "J1", "task_id": 2, "machine_id": 3, "duration": 23 }, { "job_id": "J1", "task_id": 3, "machine_id": 4, "duration": 98 }, { "job_id": "J1", "task_id": 4, "machine_id": 5, "duration": 29 }, { "job_id": "J1", "task_id": 5, "machine_id": 6, "duration": 61 }, { "job_id": "J2", "task_id": 0, "machine_id": 1, "duration": 99 }, { "job_id": "J2", "task_id": 1, "machine_id": 2, "duration": 70 }, { "job_id": "J2", "task_id": 2, "machine_id": 3, "duration": 74 }, { "job_id": "J2", "task_id": 3, "machine_id": 4, "duration": 45 }, { "job_id": "J2", "task_id": 4, "machine_id": 5, "duration": 60 }, { "job_id": "J2", "task_id": 5, "machine_id": 6, "duration": 15 }, { "job_id": "J3", "task_id": 0, "machine_id": 1, "duration": 63 }, { "job_id": "J3", "task_id": 1, "machine_id": 2, "duration": 93 }, { "job_id": "J3", "task_id": 2, "machine_id": 3, "duration": 54 }, { "job_id": "J3", "task_id": 3, "machine_id": 4, "duration": 3 }, { "job_id": "J3", "task_id": 4, "machine_id": 5, "duration": 5 }, { "job_id": "J3", "task_id": 5, "machine_id": 6, "duration": 65 }, { "job_id": "J4", "task_id": 0, "machine_id": 1, "duration": 59 }, { "job_id": "J4", "task_id": 1, "machine_id": 2, "duration": 68 }, { "job_id": "J4", "task_id": 2, "machine_id": 3, "duration": 49 }, { "job_id": "J4", "task_id": 3, "machine_id": 4, "duration": 38 }, { "job_id": "J4", "task_id": 4, "machine_id": 5, "duration": 7 }, { "job_id": "J4", "task_id": 5, "machine_id": 6, "duration": 9 }, { "job_id": "J5", "task_id": 0, "machine_id": 1, "duration": 92 }, { "job_id": "J5", "task_id": 1, "machine_id": 2, "duration": 79 }, { "job_id": "J5", "task_id": 2, "machine_id": 3, "duration": 81 }, { "job_id": "J5", "task_id": 3, "machine_id": 4, "duration": 58 }, { "job_id": "J5", "task_id": 4, "machine_id": 5, "duration": 36 }, { "job_id": "J5", "task_id": 5, "machine_id": 6, "duration": 60 }, { "job_id": "J6", "task_id": 0, "machine_id": 1, "duration": 38 }, { "job_id": "J6", "task_id": 1, "machine_id": 2, "duration": 78 }, { "job_id": "J6", "task_id": 2, "machine_id": 3, "duration": 31 }, { "job_id": "J6", "task_id": 3, "machine_id": 4, "duration": 4 }, { "job_id": "J6", "task_id": 4, "machine_id": 5, "duration": 57 }, { "job_id": "J6", "task_id": 5, "machine_id": 6, "duration": 90 }, { "job_id": "J7", "task_id": 0, "machine_id": 1, "duration": 77 }, { "job_id": "J7", "task_id": 1, "machine_id": 2, "duration": 30 }, { "job_id": "J7", "task_id": 2, "machine_id": 3, "duration": 24 }, { "job_id": "J7", "task_id": 3, "machine_id": 4, "duration": 6 }, { "job_id": "J7", "task_id": 4, "machine_id": 5, "duration": 99 }, { "job_id": "J7", "task_id": 5, "machine_id": 6, "duration": 52 }, { "job_id": "J8", "task_id": 0, "machine_id": 1, "duration": 43 }, { "job_id": "J8", "task_id": 1, "machine_id": 2, "duration": 4 }, { "job_id": "J8", "task_id": 2, "machine_id": 3, "duration": 38 }, { "job_id": "J8", "task_id": 3, "machine_id": 4, "duration": 18 }, { "job_id": "J8", "task_id": 4, "machine_id": 5, "duration": 69 }, { "job_id": "J8", "task_id": 5, "machine_id": 6, "duration": 20 }, { "job_id": "J9", "task_id": 0, "machine_id": 1, "duration": 18 }, { "job_id": "J9", "task_id": 1, "machine_id": 2, "duration": 10 }, { "job_id": "J9", "task_id": 2, "machine_id": 3, "duration": 16 }, { "job_id": "J9", "task_id": 3, "machine_id": 4, "duration": 61 }, { "job_id": "J9", "task_id": 4, "machine_id": 5, "duration": 21 }, { "job_id": "J9", "task_id": 5, "machine_id": 6, "duration": 37 }, { "job_id": "J10", "task_id": 0, "machine_id": 1, "duration": 54 }, { "job_id": "J10", "task_id": 1, "machine_id": 2, "duration": 16 }, { "job_id": "J10", "task_id": 2, "machine_id": 3, "duration": 36 }, { "job_id": "J10", "task_id": 3, "machine_id": 4, "duration": 30 }, { "job_id": "J10", "task_id": 4, "machine_id": 5, "duration": 28 }, { "job_id": "J10", "task_id": 5, "machine_id": 6, "duration": 15 }, { "job_id": "J11", "task_id": 0, "machine_id": 1, "duration": 89 }, { "job_id": "J11", "task_id": 1, "machine_id": 2, "duration": 88 }, { "job_id": "J11", "task_id": 2, "machine_id": 3, "duration": 88 }, { "job_id": "J11", "task_id": 3, "machine_id": 4, "duration": 12 }, { "job_id": "J11", "task_id": 4, "machine_id": 5, "duration": 86 }, { "job_id": "J11", "task_id": 5, "machine_id": 6, "duration": 98 }, { "job_id": "J12", "task_id": 0, "machine_id": 1, "duration": 62 }, { "job_id": "J12", "task_id": 1, "machine_id": 2, "duration": 71 }, { "job_id": "J12", "task_id": 2, "machine_id": 3, "duration": 56 }, { "job_id": "J12", "task_id": 3, "machine_id": 4, "duration": 27 }, { "job_id": "J12", "task_id": 4, "machine_id": 5, "duration": 56 }, { "job_id": "J12", "task_id": 5, "machine_id": 6, "duration": 65 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 1, "duration": 1 }, { "task": 1, "start": 1, "machine": 2, "duration": 18 }, { "task": 2, "start": 19, "machine": 3, "duration": 23 }, { "task": 3, "start": 42, "machine": 4, "duration": 98 }, { "task": 4, "start": 140, "machine": 5, "duration": 29 }, { "task": 5, "start": 169, "machine": 6, "duration": 61 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 300, "machine": 1, "duration": 99 }, { "task": 1, "start": 399, "machine": 2, "duration": 70 }, { "task": 2, "start": 530, "machine": 3, "duration": 74 }, { "task": 3, "start": 604, "machine": 4, "duration": 45 }, { "task": 4, "start": 652, "machine": 5, "duration": 60 }, { "task": 5, "start": 712, "machine": 6, "duration": 15 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 476, "machine": 1, "duration": 63 }, { "task": 1, "start": 539, "machine": 2, "duration": 93 }, { "task": 2, "start": 632, "machine": 3, "duration": 54 }, { "task": 3, "start": 695, "machine": 4, "duration": 3 }, { "task": 4, "start": 712, "machine": 5, "duration": 5 }, { "task": 5, "start": 727, "machine": 6, "duration": 65 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 582, "machine": 1, "duration": 59 }, { "task": 1, "start": 641, "machine": 2, "duration": 68 }, { "task": 2, "start": 761, "machine": 3, "duration": 49 }, { "task": 3, "start": 810, "machine": 4, "duration": 38 }, { "task": 4, "start": 848, "machine": 5, "duration": 7 }, { "task": 5, "start": 855, "machine": 6, "duration": 9 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 146, "machine": 1, "duration": 92 }, { "task": 1, "start": 238, "machine": 2, "duration": 79 }, { "task": 2, "start": 322, "machine": 3, "duration": 81 }, { "task": 3, "start": 403, "machine": 4, "duration": 58 }, { "task": 4, "start": 461, "machine": 5, "duration": 36 }, { "task": 5, "start": 518, "machine": 6, "duration": 60 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 1, "machine": 1, "duration": 38 }, { "task": 1, "start": 39, "machine": 2, "duration": 78 }, { "task": 2, "start": 117, "machine": 3, "duration": 31 }, { "task": 3, "start": 148, "machine": 4, "duration": 4 }, { "task": 4, "start": 169, "machine": 5, "duration": 57 }, { "task": 5, "start": 230, "machine": 6, "duration": 90 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 399, "machine": 1, "duration": 77 }, { "task": 1, "start": 476, "machine": 2, "duration": 30 }, { "task": 2, "start": 506, "machine": 3, "duration": 24 }, { "task": 3, "start": 530, "machine": 4, "duration": 6 }, { "task": 4, "start": 553, "machine": 5, "duration": 99 }, { "task": 5, "start": 652, "machine": 6, "duration": 52 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 539, "machine": 1, "duration": 43 }, { "task": 1, "start": 633, "machine": 2, "duration": 4 }, { "task": 2, "start": 686, "machine": 3, "duration": 38 }, { "task": 3, "start": 724, "machine": 4, "duration": 18 }, { "task": 4, "start": 742, "machine": 5, "duration": 69 }, { "task": 5, "start": 811, "machine": 6, "duration": 20 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 39, "machine": 1, "duration": 18 }, { "task": 1, "start": 117, "machine": 2, "duration": 10 }, { "task": 2, "start": 148, "machine": 3, "duration": 16 }, { "task": 3, "start": 230, "machine": 4, "duration": 61 }, { "task": 4, "start": 291, "machine": 5, "duration": 21 }, { "task": 5, "start": 320, "machine": 6, "duration": 37 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 641, "machine": 1, "duration": 54 }, { "task": 1, "start": 709, "machine": 2, "duration": 16 }, { "task": 2, "start": 725, "machine": 3, "duration": 36 }, { "task": 3, "start": 761, "machine": 4, "duration": 30 }, { "task": 4, "start": 812, "machine": 5, "duration": 28 }, { "task": 5, "start": 840, "machine": 6, "duration": 15 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 57, "machine": 1, "duration": 89 }, { "task": 1, "start": 146, "machine": 2, "duration": 88 }, { "task": 2, "start": 234, "machine": 3, "duration": 88 }, { "task": 3, "start": 322, "machine": 4, "duration": 12 }, { "task": 4, "start": 334, "machine": 5, "duration": 86 }, { "task": 5, "start": 420, "machine": 6, "duration": 98 } ] }, { "job": "J12", "tasks": [ { "task": 0, "start": 238, "machine": 1, "duration": 62 }, { "task": 1, "start": 317, "machine": 2, "duration": 71 }, { "task": 2, "start": 403, "machine": 3, "duration": 56 }, { "task": 3, "start": 461, "machine": 4, "duration": 27 }, { "task": 4, "start": 497, "machine": 5, "duration": 56 }, { "task": 5, "start": 586, "machine": 6, "duration": 65 } ] } ], "context_index": 44, "input_format": "csv", "input_index_base": 1 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Many people on the floor watch three stations — roast, cool, pack — and every load must pass through them in that order, once each. The choice to make is the order of the loads through the line; the better the choice, the sooner the last load will finish, and that finish time is the simple way to compare plans. No station can be doing two loads at the same time. The detailed timings for each load are listed below.\n\n# nr_loads=11\n# nr_stations=5\n# load_ids=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11\n# station_ids=0, 1, 2, 3, 4\nload_id,stage_index,station_id,processing_time\nJ1,0,0,1\nJ1,1,1,31\nJ1,2,2,98\nJ1,3,3,44\nJ1,4,4,81\nJ2,0,0,83\nJ2,1,1,5\nJ2,2,2,38\nJ2,3,3,42\nJ2,4,4,38\nJ3,0,0,98\nJ3,1,1,67\nJ3,2,2,46\nJ3,3,3,97\nJ3,4,4,60\nJ4,0,0,55\nJ4,1,1,72\nJ4,2,2,66\nJ4,3,3,97\nJ4,4,4,75\nJ5,0,0,90\nJ5,1,1,7\nJ5,2,2,65\nJ5,3,3,2\nJ5,4,4,77\nJ6,0,0,32\nJ6,1,1,90\nJ6,2,2,24\nJ6,3,3,77\nJ6,4,4,30\nJ7,0,0,29\nJ7,1,1,55\nJ7,2,2,57\nJ7,3,3,9\nJ7,4,4,31\nJ8,0,0,23\nJ8,1,1,41\nJ8,2,2,6\nJ8,3,3,23\nJ8,4,4,42\nJ9,0,0,25\nJ9,1,1,50\nJ9,2,2,15\nJ9,3,3,79\nJ9,4,4,4\nJ10,0,0,25\nJ10,1,1,32\nJ10,2,2,9\nJ10,3,3,45\nJ10,4,4,53\nJ11,0,0,91\nJ11,1,1,9\nJ11,2,2,45\nJ11,3,3,64\nJ11,4,4,89\n\nOh, and when you send the actual plan back, please use this simple JSON shape so I can read it easily — something like:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of it like a little form: \"solution\" is the list of loads, each entry names the job and then lists its tasks in order. Each task line just says which step it is, when it starts, which machine (station) it runs on, and how long it takes. This is just the shape I want — not the actual schedule.\n\nPlease use the exact identifiers from the input — no renaming and no new labels. \n- for example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 5, "nr_jobs": 11, "jobs": [ [ [ 0, 1 ], [ 1, 31 ], [ 2, 98 ], [ 3, 44 ], [ 4, 81 ] ], [ [ 0, 83 ], [ 1, 5 ], [ 2, 38 ], [ 3, 42 ], [ 4, 38 ] ], [ [ 0, 98 ], [ 1, 67 ], [ 2, 46 ], [ 3, 97 ], [ 4, 60 ] ], [ [ 0, 55 ], [ 1, 72 ], [ 2, 66 ], [ 3, 97 ], [ 4, 75 ] ], [ [ 0, 90 ], [ 1, 7 ], [ 2, 65 ], [ 3, 2 ], [ 4, 77 ] ], [ [ 0, 32 ], [ 1, 90 ], [ 2, 24 ], [ 3, 77 ], [ 4, 30 ] ], [ [ 0, 29 ], [ 1, 55 ], [ 2, 57 ], [ 3, 9 ], [ 4, 31 ] ], [ [ 0, 23 ], [ 1, 41 ], [ 2, 6 ], [ 3, 23 ], [ 4, 42 ] ], [ [ 0, 25 ], [ 1, 50 ], [ 2, 15 ], [ 3, 79 ], [ 4, 4 ] ], [ [ 0, 25 ], [ 1, 32 ], [ 2, 9 ], [ 3, 45 ], [ 4, 53 ] ], [ [ 0, 91 ], [ 1, 9 ], [ 2, 45 ], [ 3, 64 ], [ 4, 89 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 31 }, { "task": 2, "start": 73, "machine": 2, "duration": 98 }, { "task": 3, "start": 200, "machine": 3, "duration": 44 }, { "task": 4, "start": 244, "machine": 4, "duration": 81 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 444, "machine": 0, "duration": 83 }, { "task": 1, "start": 527, "machine": 1, "duration": 5 }, { "task": 2, "start": 532, "machine": 2, "duration": 38 }, { "task": 3, "start": 602, "machine": 3, "duration": 42 }, { "task": 4, "start": 693, "machine": 4, "duration": 38 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 227, "machine": 0, "duration": 98 }, { "task": 1, "start": 325, "machine": 1, "duration": 67 }, { "task": 2, "start": 392, "machine": 2, "duration": 46 }, { "task": 3, "start": 505, "machine": 3, "duration": 97 }, { "task": 4, "start": 602, "machine": 4, "duration": 60 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 49, "machine": 0, "duration": 55 }, { "task": 1, "start": 105, "machine": 1, "duration": 72 }, { "task": 2, "start": 249, "machine": 2, "duration": 66 }, { "task": 3, "start": 315, "machine": 3, "duration": 97 }, { "task": 4, "start": 414, "machine": 4, "duration": 75 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 325, "machine": 0, "duration": 90 }, { "task": 1, "start": 415, "machine": 1, "duration": 7 }, { "task": 2, "start": 438, "machine": 2, "duration": 65 }, { "task": 3, "start": 503, "machine": 3, "duration": 2 }, { "task": 4, "start": 519, "machine": 4, "duration": 77 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 195, "machine": 0, "duration": 32 }, { "task": 1, "start": 227, "machine": 1, "duration": 90 }, { "task": 2, "start": 317, "machine": 2, "duration": 24 }, { "task": 3, "start": 412, "machine": 3, "duration": 77 }, { "task": 4, "start": 489, "machine": 4, "duration": 30 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 415, "machine": 0, "duration": 29 }, { "task": 1, "start": 444, "machine": 1, "duration": 55 }, { "task": 2, "start": 570, "machine": 2, "duration": 57 }, { "task": 3, "start": 644, "machine": 3, "duration": 9 }, { "task": 4, "start": 662, "machine": 4, "duration": 31 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 26, "machine": 0, "duration": 23 }, { "task": 1, "start": 64, "machine": 1, "duration": 41 }, { "task": 2, "start": 171, "machine": 2, "duration": 6 }, { "task": 3, "start": 177, "machine": 3, "duration": 23 }, { "task": 4, "start": 200, "machine": 4, "duration": 42 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 527, "machine": 0, "duration": 25 }, { "task": 1, "start": 553, "machine": 1, "duration": 50 }, { "task": 2, "start": 627, "machine": 2, "duration": 15 }, { "task": 3, "start": 653, "machine": 3, "duration": 79 }, { "task": 4, "start": 732, "machine": 4, "duration": 4 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 25 }, { "task": 1, "start": 32, "machine": 1, "duration": 32 }, { "task": 2, "start": 64, "machine": 2, "duration": 9 }, { "task": 3, "start": 73, "machine": 3, "duration": 45 }, { "task": 4, "start": 118, "machine": 4, "duration": 53 } ] }, { "job": 10, "tasks": [ { "task": 0, "start": 104, "machine": 0, "duration": 91 }, { "task": 1, "start": 195, "machine": 1, "duration": 9 }, { "task": 2, "start": 204, "machine": 2, "duration": 45 }, { "task": 3, "start": 249, "machine": 3, "duration": 64 }, { "task": 4, "start": 325, "machine": 4, "duration": 89 } ] } ], "obj": 736.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 11, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10", "J11" ], "machines": [ 0, 1, 2, 3, 4 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 31 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 98 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 44 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 81 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 83 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 5 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 38 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 42 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 38 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 98 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 67 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 46 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 97 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 60 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 55 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 72 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 66 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 97 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 75 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 90 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 7 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 65 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 2 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 77 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 32 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 90 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 24 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 77 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 30 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 29 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 55 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 57 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 9 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 31 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 23 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 41 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 6 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 23 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 42 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 25 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 50 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 15 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 79 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 4 }, { "job_id": "J10", "task_id": 0, "machine_id": 0, "duration": 25 }, { "job_id": "J10", "task_id": 1, "machine_id": 1, "duration": 32 }, { "job_id": "J10", "task_id": 2, "machine_id": 2, "duration": 9 }, { "job_id": "J10", "task_id": 3, "machine_id": 3, "duration": 45 }, { "job_id": "J10", "task_id": 4, "machine_id": 4, "duration": 53 }, { "job_id": "J11", "task_id": 0, "machine_id": 0, "duration": 91 }, { "job_id": "J11", "task_id": 1, "machine_id": 1, "duration": 9 }, { "job_id": "J11", "task_id": 2, "machine_id": 2, "duration": 45 }, { "job_id": "J11", "task_id": 3, "machine_id": 3, "duration": 64 }, { "job_id": "J11", "task_id": 4, "machine_id": 4, "duration": 89 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 31 }, { "task": 2, "start": 73, "machine": 2, "duration": 98 }, { "task": 3, "start": 200, "machine": 3, "duration": 44 }, { "task": 4, "start": 244, "machine": 4, "duration": 81 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 444, "machine": 0, "duration": 83 }, { "task": 1, "start": 527, "machine": 1, "duration": 5 }, { "task": 2, "start": 532, "machine": 2, "duration": 38 }, { "task": 3, "start": 602, "machine": 3, "duration": 42 }, { "task": 4, "start": 693, "machine": 4, "duration": 38 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 227, "machine": 0, "duration": 98 }, { "task": 1, "start": 325, "machine": 1, "duration": 67 }, { "task": 2, "start": 392, "machine": 2, "duration": 46 }, { "task": 3, "start": 505, "machine": 3, "duration": 97 }, { "task": 4, "start": 602, "machine": 4, "duration": 60 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 49, "machine": 0, "duration": 55 }, { "task": 1, "start": 105, "machine": 1, "duration": 72 }, { "task": 2, "start": 249, "machine": 2, "duration": 66 }, { "task": 3, "start": 315, "machine": 3, "duration": 97 }, { "task": 4, "start": 414, "machine": 4, "duration": 75 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 325, "machine": 0, "duration": 90 }, { "task": 1, "start": 415, "machine": 1, "duration": 7 }, { "task": 2, "start": 438, "machine": 2, "duration": 65 }, { "task": 3, "start": 503, "machine": 3, "duration": 2 }, { "task": 4, "start": 519, "machine": 4, "duration": 77 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 195, "machine": 0, "duration": 32 }, { "task": 1, "start": 227, "machine": 1, "duration": 90 }, { "task": 2, "start": 317, "machine": 2, "duration": 24 }, { "task": 3, "start": 412, "machine": 3, "duration": 77 }, { "task": 4, "start": 489, "machine": 4, "duration": 30 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 415, "machine": 0, "duration": 29 }, { "task": 1, "start": 444, "machine": 1, "duration": 55 }, { "task": 2, "start": 570, "machine": 2, "duration": 57 }, { "task": 3, "start": 644, "machine": 3, "duration": 9 }, { "task": 4, "start": 662, "machine": 4, "duration": 31 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 26, "machine": 0, "duration": 23 }, { "task": 1, "start": 64, "machine": 1, "duration": 41 }, { "task": 2, "start": 171, "machine": 2, "duration": 6 }, { "task": 3, "start": 177, "machine": 3, "duration": 23 }, { "task": 4, "start": 200, "machine": 4, "duration": 42 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 527, "machine": 0, "duration": 25 }, { "task": 1, "start": 553, "machine": 1, "duration": 50 }, { "task": 2, "start": 627, "machine": 2, "duration": 15 }, { "task": 3, "start": 653, "machine": 3, "duration": 79 }, { "task": 4, "start": 732, "machine": 4, "duration": 4 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 25 }, { "task": 1, "start": 32, "machine": 1, "duration": 32 }, { "task": 2, "start": 64, "machine": 2, "duration": 9 }, { "task": 3, "start": 73, "machine": 3, "duration": 45 }, { "task": 4, "start": 118, "machine": 4, "duration": 53 } ] }, { "job": "J11", "tasks": [ { "task": 0, "start": 104, "machine": 0, "duration": 91 }, { "task": 1, "start": 195, "machine": 1, "duration": 9 }, { "task": 2, "start": 204, "machine": 2, "duration": 45 }, { "task": 3, "start": 249, "machine": 3, "duration": 64 }, { "task": 4, "start": 325, "machine": 4, "duration": 89 } ] } ], "context_index": 45, "input_format": "csv", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "There’s a small factory scene: parts come in, hit the molding machine, then the trimmer, then the inspector — always in that sequence. The task is to arrange which part goes when so the whole group clears inspection as quickly as possible; the result is judged by the moment the last part is finished. Each part has its own times for each stage, none of the stages can be done in parallel on multiple parts, and every part must go through all three stations exactly once. The concrete details will be shown below.\n\n# nr_parts=10\n# nr_stations=6\n# parts=J1, J2, J3, J4, J5, J6, J7, J8, J9, J10\n# stations=0, 1, 2, 3, 4, 5\npart_id,stage_index,station_id,processing_time\nJ1,0,0,1\nJ1,1,1,44\nJ1,2,2,74\nJ1,3,3,90\nJ1,4,4,35\nJ1,5,5,5\nJ2,0,0,10\nJ2,1,1,7\nJ2,2,2,10\nJ2,3,3,32\nJ2,4,4,37\nJ2,5,5,19\nJ3,0,0,30\nJ3,1,1,1\nJ3,2,2,65\nJ3,3,3,9\nJ3,4,4,39\nJ3,5,5,67\nJ4,0,0,36\nJ4,1,1,81\nJ4,2,2,32\nJ4,3,3,75\nJ4,4,4,24\nJ4,5,5,94\nJ5,0,0,62\nJ5,1,1,84\nJ5,2,2,1\nJ5,3,3,89\nJ5,4,4,20\nJ5,5,5,1\nJ6,0,0,20\nJ6,1,1,31\nJ6,2,2,83\nJ6,3,3,13\nJ6,4,4,4\nJ6,5,5,56\nJ7,0,0,4\nJ7,1,1,80\nJ7,2,2,22\nJ7,3,3,78\nJ7,4,4,49\nJ7,5,5,48\nJ8,0,0,87\nJ8,1,1,54\nJ8,2,2,68\nJ8,3,3,33\nJ8,4,4,95\nJ8,5,5,96\nJ9,0,0,72\nJ9,1,1,96\nJ9,2,2,68\nJ9,3,3,56\nJ9,4,4,68\nJ9,5,5,91\nJ10,0,0,26\nJ10,1,1,49\nJ10,2,2,33\nJ10,3,3,10\nJ10,4,4,11\nJ10,5,5,27\n\nOh, and when you send the schedule back, please use this little JSON shape so I can read it easily:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of it like a simple form: \"solution\" is the list of parts, each entry says which part (job) it is and then lists the tasks for that part. Each task entry notes which step it is (task), when that step starts (start), which station/machine handles it (machine), and how long it runs (duration). It's just a sketch of the shape I need, not the actual schedule yet.\n\nAlso: use the exact identifiers from the instance input — no renaming and no new labels. For example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 6, "nr_jobs": 10, "jobs": [ [ [ 0, 1 ], [ 1, 44 ], [ 2, 74 ], [ 3, 90 ], [ 4, 35 ], [ 5, 5 ] ], [ [ 0, 10 ], [ 1, 7 ], [ 2, 10 ], [ 3, 32 ], [ 4, 37 ], [ 5, 19 ] ], [ [ 0, 30 ], [ 1, 1 ], [ 2, 65 ], [ 3, 9 ], [ 4, 39 ], [ 5, 67 ] ], [ [ 0, 36 ], [ 1, 81 ], [ 2, 32 ], [ 3, 75 ], [ 4, 24 ], [ 5, 94 ] ], [ [ 0, 62 ], [ 1, 84 ], [ 2, 1 ], [ 3, 89 ], [ 4, 20 ], [ 5, 1 ] ], [ [ 0, 20 ], [ 1, 31 ], [ 2, 83 ], [ 3, 13 ], [ 4, 4 ], [ 5, 56 ] ], [ [ 0, 4 ], [ 1, 80 ], [ 2, 22 ], [ 3, 78 ], [ 4, 49 ], [ 5, 48 ] ], [ [ 0, 87 ], [ 1, 54 ], [ 2, 68 ], [ 3, 33 ], [ 4, 95 ], [ 5, 96 ] ], [ [ 0, 72 ], [ 1, 96 ], [ 2, 68 ], [ 3, 56 ], [ 4, 68 ], [ 5, 91 ] ], [ [ 0, 26 ], [ 1, 49 ], [ 2, 33 ], [ 3, 10 ], [ 4, 11 ], [ 5, 27 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 14, "machine": 0, "duration": 1 }, { "task": 1, "start": 438, "machine": 1, "duration": 44 }, { "task": 2, "start": 482, "machine": 2, "duration": 74 }, { "task": 3, "start": 563, "machine": 3, "duration": 90 }, { "task": 4, "start": 674, "machine": 4, "duration": 35 }, { "task": 5, "start": 714, "machine": 5, "duration": 5 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 4, "machine": 0, "duration": 10 }, { "task": 1, "start": 84, "machine": 1, "duration": 7 }, { "task": 2, "start": 91, "machine": 2, "duration": 10 }, { "task": 3, "start": 101, "machine": 3, "duration": 32 }, { "task": 4, "start": 133, "machine": 4, "duration": 37 }, { "task": 5, "start": 199, "machine": 5, "duration": 19 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 97, "machine": 0, "duration": 30 }, { "task": 1, "start": 203, "machine": 1, "duration": 1 }, { "task": 2, "start": 238, "machine": 2, "duration": 65 }, { "task": 3, "start": 315, "machine": 3, "duration": 9 }, { "task": 4, "start": 342, "machine": 4, "duration": 39 }, { "task": 5, "start": 431, "machine": 5, "duration": 67 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 61, "machine": 0, "duration": 36 }, { "task": 1, "start": 122, "machine": 1, "duration": 81 }, { "task": 2, "start": 206, "machine": 2, "duration": 32 }, { "task": 3, "start": 238, "machine": 3, "duration": 75 }, { "task": 4, "start": 313, "machine": 4, "duration": 24 }, { "task": 5, "start": 337, "machine": 5, "duration": 94 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 286, "machine": 0, "duration": 62 }, { "task": 1, "start": 354, "machine": 1, "duration": 84 }, { "task": 2, "start": 441, "machine": 2, "duration": 1 }, { "task": 3, "start": 474, "machine": 3, "duration": 89 }, { "task": 4, "start": 592, "machine": 4, "duration": 20 }, { "task": 5, "start": 686, "machine": 5, "duration": 1 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 41, "machine": 0, "duration": 20 }, { "task": 1, "start": 91, "machine": 1, "duration": 31 }, { "task": 2, "start": 123, "machine": 2, "duration": 83 }, { "task": 3, "start": 211, "machine": 3, "duration": 13 }, { "task": 4, "start": 224, "machine": 4, "duration": 4 }, { "task": 5, "start": 228, "machine": 5, "duration": 56 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 4 }, { "task": 1, "start": 4, "machine": 1, "duration": 80 }, { "task": 2, "start": 101, "machine": 2, "duration": 22 }, { "task": 3, "start": 133, "machine": 3, "duration": 78 }, { "task": 4, "start": 228, "machine": 4, "duration": 49 }, { "task": 5, "start": 284, "machine": 5, "duration": 48 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 199, "machine": 0, "duration": 87 }, { "task": 1, "start": 300, "machine": 1, "duration": 54 }, { "task": 2, "start": 373, "machine": 2, "duration": 68 }, { "task": 3, "start": 441, "machine": 3, "duration": 33 }, { "task": 4, "start": 495, "machine": 4, "duration": 95 }, { "task": 5, "start": 590, "machine": 5, "duration": 96 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 127, "machine": 0, "duration": 72 }, { "task": 1, "start": 204, "machine": 1, "duration": 96 }, { "task": 2, "start": 303, "machine": 2, "duration": 68 }, { "task": 3, "start": 371, "machine": 3, "duration": 56 }, { "task": 4, "start": 427, "machine": 4, "duration": 68 }, { "task": 5, "start": 498, "machine": 5, "duration": 91 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 15, "machine": 0, "duration": 26 }, { "task": 1, "start": 482, "machine": 1, "duration": 49 }, { "task": 2, "start": 556, "machine": 2, "duration": 33 }, { "task": 3, "start": 653, "machine": 3, "duration": 10 }, { "task": 4, "start": 663, "machine": 4, "duration": 11 }, { "task": 5, "start": 687, "machine": 5, "duration": 27 } ] } ], "obj": 719.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 10, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10" ], "machines": [ 0, 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 44 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 74 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 90 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 35 }, { "job_id": "J1", "task_id": 5, "machine_id": 5, "duration": 5 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 10 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 7 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 10 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 32 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 37 }, { "job_id": "J2", "task_id": 5, "machine_id": 5, "duration": 19 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 30 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 1 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 65 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 9 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 39 }, { "job_id": "J3", "task_id": 5, "machine_id": 5, "duration": 67 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 36 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 81 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 32 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 75 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 24 }, { "job_id": "J4", "task_id": 5, "machine_id": 5, "duration": 94 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 62 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 84 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 1 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 89 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 20 }, { "job_id": "J5", "task_id": 5, "machine_id": 5, "duration": 1 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 20 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 31 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 83 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 13 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 4 }, { "job_id": "J6", "task_id": 5, "machine_id": 5, "duration": 56 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 4 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 80 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 22 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 78 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 49 }, { "job_id": "J7", "task_id": 5, "machine_id": 5, "duration": 48 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 87 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 54 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 68 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 33 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 95 }, { "job_id": "J8", "task_id": 5, "machine_id": 5, "duration": 96 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 72 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 96 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 68 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 56 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 68 }, { "job_id": "J9", "task_id": 5, "machine_id": 5, "duration": 91 }, { "job_id": "J10", "task_id": 0, "machine_id": 0, "duration": 26 }, { "job_id": "J10", "task_id": 1, "machine_id": 1, "duration": 49 }, { "job_id": "J10", "task_id": 2, "machine_id": 2, "duration": 33 }, { "job_id": "J10", "task_id": 3, "machine_id": 3, "duration": 10 }, { "job_id": "J10", "task_id": 4, "machine_id": 4, "duration": 11 }, { "job_id": "J10", "task_id": 5, "machine_id": 5, "duration": 27 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 14, "machine": 0, "duration": 1 }, { "task": 1, "start": 438, "machine": 1, "duration": 44 }, { "task": 2, "start": 482, "machine": 2, "duration": 74 }, { "task": 3, "start": 563, "machine": 3, "duration": 90 }, { "task": 4, "start": 674, "machine": 4, "duration": 35 }, { "task": 5, "start": 714, "machine": 5, "duration": 5 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 4, "machine": 0, "duration": 10 }, { "task": 1, "start": 84, "machine": 1, "duration": 7 }, { "task": 2, "start": 91, "machine": 2, "duration": 10 }, { "task": 3, "start": 101, "machine": 3, "duration": 32 }, { "task": 4, "start": 133, "machine": 4, "duration": 37 }, { "task": 5, "start": 199, "machine": 5, "duration": 19 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 97, "machine": 0, "duration": 30 }, { "task": 1, "start": 203, "machine": 1, "duration": 1 }, { "task": 2, "start": 238, "machine": 2, "duration": 65 }, { "task": 3, "start": 315, "machine": 3, "duration": 9 }, { "task": 4, "start": 342, "machine": 4, "duration": 39 }, { "task": 5, "start": 431, "machine": 5, "duration": 67 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 61, "machine": 0, "duration": 36 }, { "task": 1, "start": 122, "machine": 1, "duration": 81 }, { "task": 2, "start": 206, "machine": 2, "duration": 32 }, { "task": 3, "start": 238, "machine": 3, "duration": 75 }, { "task": 4, "start": 313, "machine": 4, "duration": 24 }, { "task": 5, "start": 337, "machine": 5, "duration": 94 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 286, "machine": 0, "duration": 62 }, { "task": 1, "start": 354, "machine": 1, "duration": 84 }, { "task": 2, "start": 441, "machine": 2, "duration": 1 }, { "task": 3, "start": 474, "machine": 3, "duration": 89 }, { "task": 4, "start": 592, "machine": 4, "duration": 20 }, { "task": 5, "start": 686, "machine": 5, "duration": 1 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 41, "machine": 0, "duration": 20 }, { "task": 1, "start": 91, "machine": 1, "duration": 31 }, { "task": 2, "start": 123, "machine": 2, "duration": 83 }, { "task": 3, "start": 211, "machine": 3, "duration": 13 }, { "task": 4, "start": 224, "machine": 4, "duration": 4 }, { "task": 5, "start": 228, "machine": 5, "duration": 56 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 4 }, { "task": 1, "start": 4, "machine": 1, "duration": 80 }, { "task": 2, "start": 101, "machine": 2, "duration": 22 }, { "task": 3, "start": 133, "machine": 3, "duration": 78 }, { "task": 4, "start": 228, "machine": 4, "duration": 49 }, { "task": 5, "start": 284, "machine": 5, "duration": 48 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 199, "machine": 0, "duration": 87 }, { "task": 1, "start": 300, "machine": 1, "duration": 54 }, { "task": 2, "start": 373, "machine": 2, "duration": 68 }, { "task": 3, "start": 441, "machine": 3, "duration": 33 }, { "task": 4, "start": 495, "machine": 4, "duration": 95 }, { "task": 5, "start": 590, "machine": 5, "duration": 96 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 127, "machine": 0, "duration": 72 }, { "task": 1, "start": 204, "machine": 1, "duration": 96 }, { "task": 2, "start": 303, "machine": 2, "duration": 68 }, { "task": 3, "start": 371, "machine": 3, "duration": 56 }, { "task": 4, "start": 427, "machine": 4, "duration": 68 }, { "task": 5, "start": 498, "machine": 5, "duration": 91 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 15, "machine": 0, "duration": 26 }, { "task": 1, "start": 482, "machine": 1, "duration": 49 }, { "task": 2, "start": 556, "machine": 2, "duration": 33 }, { "task": 3, "start": 653, "machine": 3, "duration": 10 }, { "task": 4, "start": 663, "machine": 4, "duration": 11 }, { "task": 5, "start": 687, "machine": 5, "duration": 27 } ] } ], "context_index": 46, "input_format": "csv", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Backstage at the reception, the coordinator had to line platters up so they’d each go through making, cooling, and setting out in that order, and the only real choice was the sequence in which they’d take turns at each station. Each platter’s make, chill, and staging times were known ahead of time, and since every station can handle only one platter at a time and every platter must visit all three stations exactly once, the order can’t break those rules. The whole thing is judged by when the final platter is ready on the serving table — the earlier that finish time, the better the schedule. The detailed platter times are shown below.\n\n# total_platters=9\n# total_stations=5\n# platter_ids=J1, J2, J3, J4, J5, J6, J7, J8, J9\n# station_ids=0, 1, 2, 3, 4\nplatter_id,step_index,station_id,processing_time\nJ1,0,0,1\nJ1,1,1,57\nJ1,2,2,49\nJ1,3,3,36\nJ1,4,4,88\nJ2,0,0,27\nJ2,1,1,14\nJ2,2,2,74\nJ2,3,3,78\nJ2,4,4,26\nJ3,0,0,75\nJ3,1,1,71\nJ3,2,2,13\nJ3,3,3,5\nJ3,4,4,70\nJ4,0,0,61\nJ4,1,1,7\nJ4,2,2,68\nJ4,3,3,74\nJ4,4,4,88\nJ5,0,0,74\nJ5,1,1,44\nJ5,2,2,83\nJ5,3,3,87\nJ5,4,4,46\nJ6,0,0,37\nJ6,1,1,10\nJ6,2,2,54\nJ6,3,3,61\nJ6,4,4,70\nJ7,0,0,11\nJ7,1,1,8\nJ7,2,2,10\nJ7,3,3,18\nJ7,4,4,77\nJ8,0,0,88\nJ8,1,1,67\nJ8,2,2,56\nJ8,3,3,21\nJ8,4,4,15\nJ9,0,0,74\nJ9,1,1,46\nJ9,2,2,59\nJ9,3,3,30\nJ9,4,4,34\n\nIf you want the schedule back in a tidy, machine-friendly way, just follow this little JSON layout when you send it over:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of it like a simple form: \"solution\" holds a list of platters (jobs). Each platter entry names the platter (\"job\") and then lists its steps (\"tasks\"). For each step you say which step number it is (\"task\"), when that step should start (\"start\"), which station it's on (\"machine\"), and how long that step takes (\"duration\"). This is just the sketch of the shape I need, not the actual schedule.\n\nPlease use the exact identifiers from the instance input — don’t rename them or invent new labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 5, "nr_jobs": 9, "jobs": [ [ [ 0, 1 ], [ 1, 57 ], [ 2, 49 ], [ 3, 36 ], [ 4, 88 ] ], [ [ 0, 27 ], [ 1, 14 ], [ 2, 74 ], [ 3, 78 ], [ 4, 26 ] ], [ [ 0, 75 ], [ 1, 71 ], [ 2, 13 ], [ 3, 5 ], [ 4, 70 ] ], [ [ 0, 61 ], [ 1, 7 ], [ 2, 68 ], [ 3, 74 ], [ 4, 88 ] ], [ [ 0, 74 ], [ 1, 44 ], [ 2, 83 ], [ 3, 87 ], [ 4, 46 ] ], [ [ 0, 37 ], [ 1, 10 ], [ 2, 54 ], [ 3, 61 ], [ 4, 70 ] ], [ [ 0, 11 ], [ 1, 8 ], [ 2, 10 ], [ 3, 18 ], [ 4, 77 ] ], [ [ 0, 88 ], [ 1, 67 ], [ 2, 56 ], [ 3, 21 ], [ 4, 15 ] ], [ [ 0, 74 ], [ 1, 46 ], [ 2, 59 ], [ 3, 30 ], [ 4, 34 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 11, "machine": 0, "duration": 1 }, { "task": 1, "start": 19, "machine": 1, "duration": 57 }, { "task": 2, "start": 76, "machine": 2, "duration": 49 }, { "task": 3, "start": 125, "machine": 3, "duration": 36 }, { "task": 4, "start": 161, "machine": 4, "duration": 88 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 110, "machine": 0, "duration": 27 }, { "task": 1, "start": 137, "machine": 1, "duration": 14 }, { "task": 2, "start": 247, "machine": 2, "duration": 74 }, { "task": 3, "start": 321, "machine": 3, "duration": 78 }, { "task": 4, "start": 409, "machine": 4, "duration": 26 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 211, "machine": 0, "duration": 75 }, { "task": 1, "start": 286, "machine": 1, "duration": 71 }, { "task": 2, "start": 404, "machine": 2, "duration": 13 }, { "task": 3, "start": 417, "machine": 3, "duration": 5 }, { "task": 4, "start": 435, "machine": 4, "duration": 70 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 12, "machine": 0, "duration": 61 }, { "task": 1, "start": 76, "machine": 1, "duration": 7 }, { "task": 2, "start": 179, "machine": 2, "duration": 68 }, { "task": 3, "start": 247, "machine": 3, "duration": 74 }, { "task": 4, "start": 321, "machine": 4, "duration": 88 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 137, "machine": 0, "duration": 74 }, { "task": 1, "start": 211, "machine": 1, "duration": 44 }, { "task": 2, "start": 321, "machine": 2, "duration": 83 }, { "task": 3, "start": 422, "machine": 3, "duration": 87 }, { "task": 4, "start": 509, "machine": 4, "duration": 46 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 73, "machine": 0, "duration": 37 }, { "task": 1, "start": 110, "machine": 1, "duration": 10 }, { "task": 2, "start": 125, "machine": 2, "duration": 54 }, { "task": 3, "start": 179, "machine": 3, "duration": 61 }, { "task": 4, "start": 249, "machine": 4, "duration": 70 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 11 }, { "task": 1, "start": 11, "machine": 1, "duration": 8 }, { "task": 2, "start": 19, "machine": 2, "duration": 10 }, { "task": 3, "start": 29, "machine": 3, "duration": 18 }, { "task": 4, "start": 47, "machine": 4, "duration": 77 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 360, "machine": 0, "duration": 88 }, { "task": 1, "start": 448, "machine": 1, "duration": 67 }, { "task": 2, "start": 515, "machine": 2, "duration": 56 }, { "task": 3, "start": 571, "machine": 3, "duration": 21 }, { "task": 4, "start": 592, "machine": 4, "duration": 15 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 286, "machine": 0, "duration": 74 }, { "task": 1, "start": 360, "machine": 1, "duration": 46 }, { "task": 2, "start": 417, "machine": 2, "duration": 59 }, { "task": 3, "start": 509, "machine": 3, "duration": 30 }, { "task": 4, "start": 555, "machine": 4, "duration": 34 } ] } ], "obj": 607.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 9, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9" ], "machines": [ 0, 1, 2, 3, 4 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 57 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 49 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 36 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 88 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 27 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 14 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 74 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 78 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 26 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 75 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 71 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 13 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 5 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 70 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 61 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 7 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 68 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 74 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 88 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 74 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 44 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 83 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 87 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 46 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 37 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 10 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 54 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 61 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 70 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 11 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 8 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 10 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 18 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 77 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 88 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 67 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 56 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 21 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 15 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 74 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 46 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 59 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 30 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 34 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 11, "machine": 0, "duration": 1 }, { "task": 1, "start": 19, "machine": 1, "duration": 57 }, { "task": 2, "start": 76, "machine": 2, "duration": 49 }, { "task": 3, "start": 125, "machine": 3, "duration": 36 }, { "task": 4, "start": 161, "machine": 4, "duration": 88 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 110, "machine": 0, "duration": 27 }, { "task": 1, "start": 137, "machine": 1, "duration": 14 }, { "task": 2, "start": 247, "machine": 2, "duration": 74 }, { "task": 3, "start": 321, "machine": 3, "duration": 78 }, { "task": 4, "start": 409, "machine": 4, "duration": 26 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 211, "machine": 0, "duration": 75 }, { "task": 1, "start": 286, "machine": 1, "duration": 71 }, { "task": 2, "start": 404, "machine": 2, "duration": 13 }, { "task": 3, "start": 417, "machine": 3, "duration": 5 }, { "task": 4, "start": 435, "machine": 4, "duration": 70 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 12, "machine": 0, "duration": 61 }, { "task": 1, "start": 76, "machine": 1, "duration": 7 }, { "task": 2, "start": 179, "machine": 2, "duration": 68 }, { "task": 3, "start": 247, "machine": 3, "duration": 74 }, { "task": 4, "start": 321, "machine": 4, "duration": 88 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 137, "machine": 0, "duration": 74 }, { "task": 1, "start": 211, "machine": 1, "duration": 44 }, { "task": 2, "start": 321, "machine": 2, "duration": 83 }, { "task": 3, "start": 422, "machine": 3, "duration": 87 }, { "task": 4, "start": 509, "machine": 4, "duration": 46 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 73, "machine": 0, "duration": 37 }, { "task": 1, "start": 110, "machine": 1, "duration": 10 }, { "task": 2, "start": 125, "machine": 2, "duration": 54 }, { "task": 3, "start": 179, "machine": 3, "duration": 61 }, { "task": 4, "start": 249, "machine": 4, "duration": 70 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 11 }, { "task": 1, "start": 11, "machine": 1, "duration": 8 }, { "task": 2, "start": 19, "machine": 2, "duration": 10 }, { "task": 3, "start": 29, "machine": 3, "duration": 18 }, { "task": 4, "start": 47, "machine": 4, "duration": 77 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 360, "machine": 0, "duration": 88 }, { "task": 1, "start": 448, "machine": 1, "duration": 67 }, { "task": 2, "start": 515, "machine": 2, "duration": 56 }, { "task": 3, "start": 571, "machine": 3, "duration": 21 }, { "task": 4, "start": 592, "machine": 4, "duration": 15 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 286, "machine": 0, "duration": 74 }, { "task": 1, "start": 360, "machine": 1, "duration": 46 }, { "task": 2, "start": 417, "machine": 2, "duration": 59 }, { "task": 3, "start": 509, "machine": 3, "duration": 30 }, { "task": 4, "start": 555, "machine": 4, "duration": 34 } ] } ], "context_index": 47, "input_format": "csv", "input_index_base": 0 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Picture a simple route through the kitchen — prep, warming, serving — with a bunch of trays that each have to travel those three steps; the job is slotting each tray’s passage so the last tray is done sooner and nobody tries to use the same station at the same time. To judge a plan, look at the finish time of the last tray; that’s the number to bring down. No tray can skip or repeat a step, every tray follows the same sequence, and the concrete timings and tray details follow below.\n\n{\n \"number_of_trays\": 9,\n \"number_of_stations\": 5,\n \"tray_ids\": [\n \"J1\",\n \"J2\",\n \"J3\",\n \"J4\",\n \"J5\",\n \"J6\",\n \"J7\",\n \"J8\",\n \"J9\"\n ],\n \"station_ids\": [\n 1,\n 2,\n 3,\n 4,\n 5\n ],\n \"tasks\": [\n {\n \"tray_id\": \"J1\",\n \"step_index\": 0,\n \"station_id\": 1,\n \"task_duration\": 1\n },\n {\n \"tray_id\": \"J1\",\n \"step_index\": 1,\n \"station_id\": 2,\n \"task_duration\": 70\n },\n {\n \"tray_id\": \"J1\",\n \"step_index\": 2,\n \"station_id\": 3,\n \"task_duration\": 25\n },\n {\n \"tray_id\": \"J1\",\n \"step_index\": 3,\n \"station_id\": 4,\n \"task_duration\": 82\n },\n {\n \"tray_id\": \"J1\",\n \"step_index\": 4,\n \"station_id\": 5,\n \"task_duration\": 42\n },\n {\n \"tray_id\": \"J2\",\n \"step_index\": 0,\n \"station_id\": 1,\n \"task_duration\": 49\n },\n {\n \"tray_id\": \"J2\",\n \"step_index\": 1,\n \"station_id\": 2,\n \"task_duration\": 19\n },\n {\n \"tray_id\": \"J2\",\n \"step_index\": 2,\n \"station_id\": 3,\n \"task_duration\": 42\n },\n {\n \"tray_id\": \"J2\",\n \"step_index\": 3,\n \"station_id\": 4,\n \"task_duration\": 46\n },\n {\n \"tray_id\": \"J2\",\n \"step_index\": 4,\n \"station_id\": 5,\n \"task_duration\": 19\n },\n {\n \"tray_id\": \"J3\",\n \"step_index\": 0,\n \"station_id\": 1,\n \"task_duration\": 14\n },\n {\n \"tray_id\": \"J3\",\n \"step_index\": 1,\n \"station_id\": 2,\n \"task_duration\": 23\n },\n {\n \"tray_id\": \"J3\",\n \"step_index\": 2,\n \"station_id\": 3,\n \"task_duration\": 95\n },\n {\n \"tray_id\": \"J3\",\n \"step_index\": 3,\n \"station_id\": 4,\n \"task_duration\": 8\n },\n {\n \"tray_id\": \"J3\",\n \"step_index\": 4,\n \"station_id\": 5,\n \"task_duration\": 76\n },\n {\n \"tray_id\": \"J4\",\n \"step_index\": 0,\n \"station_id\": 1,\n \"task_duration\": 15\n },\n {\n \"tray_id\": \"J4\",\n \"step_index\": 1,\n \"station_id\": 2,\n \"task_duration\": 73\n },\n {\n \"tray_id\": \"J4\",\n \"step_index\": 2,\n \"station_id\": 3,\n \"task_duration\": 68\n },\n {\n \"tray_id\": \"J4\",\n \"step_index\": 3,\n \"station_id\": 4,\n \"task_duration\": 13\n },\n {\n \"tray_id\": \"J4\",\n \"step_index\": 4,\n \"station_id\": 5,\n \"task_duration\": 94\n },\n {\n \"tray_id\": \"J5\",\n \"step_index\": 0,\n \"station_id\": 1,\n \"task_duration\": 16\n },\n {\n \"tray_id\": \"J5\",\n \"step_index\": 1,\n \"station_id\": 2,\n \"task_duration\": 13\n },\n {\n \"tray_id\": \"J5\",\n \"step_index\": 2,\n \"station_id\": 3,\n \"task_duration\": 42\n },\n {\n \"tray_id\": \"J5\",\n \"step_index\": 3,\n \"station_id\": 4,\n \"task_duration\": 81\n },\n {\n \"tray_id\": \"J5\",\n \"step_index\": 4,\n \"station_id\": 5,\n \"task_duration\": 31\n },\n {\n \"tray_id\": \"J6\",\n \"step_index\": 0,\n \"station_id\": 1,\n \"task_duration\": 89\n },\n {\n \"tray_id\": \"J6\",\n \"step_index\": 1,\n \"station_id\": 2,\n \"task_duration\": 19\n },\n {\n \"tray_id\": \"J6\",\n \"step_index\": 2,\n \"station_id\": 3,\n \"task_duration\": 20\n },\n {\n \"tray_id\": \"J6\",\n \"step_index\": 3,\n \"station_id\": 4,\n \"task_duration\": 3\n },\n {\n \"tray_id\": \"J6\",\n \"step_index\": 4,\n \"station_id\": 5,\n \"task_duration\": 41\n },\n {\n \"tray_id\": \"J7\",\n \"step_index\": 0,\n \"station_id\": 1,\n \"task_duration\": 2\n },\n {\n \"tray_id\": \"J7\",\n \"step_index\": 1,\n \"station_id\": 2,\n \"task_duration\": 83\n },\n {\n \"tray_id\": \"J7\",\n \"step_index\": 2,\n \"station_id\": 3,\n \"task_duration\": 36\n },\n {\n \"tray_id\": \"J7\",\n \"step_index\": 3,\n \"station_id\": 4,\n \"task_duration\": 23\n },\n {\n \"tray_id\": \"J7\",\n \"step_index\": 4,\n \"station_id\": 5,\n \"task_duration\": 51\n },\n {\n \"tray_id\": \"J8\",\n \"step_index\": 0,\n \"station_id\": 1,\n \"task_duration\": 22\n },\n {\n \"tray_id\": \"J8\",\n \"step_index\": 1,\n \"station_id\": 2,\n \"task_duration\": 31\n },\n {\n \"tray_id\": \"J8\",\n \"step_index\": 2,\n \"station_id\": 3,\n \"task_duration\": 32\n },\n {\n \"tray_id\": \"J8\",\n \"step_index\": 3,\n \"station_id\": 4,\n \"task_duration\": 21\n },\n {\n \"tray_id\": \"J8\",\n \"step_index\": 4,\n \"station_id\": 5,\n \"task_duration\": 51\n },\n {\n \"tray_id\": \"J9\",\n \"step_index\": 0,\n \"station_id\": 1,\n \"task_duration\": 98\n },\n {\n \"tray_id\": \"J9\",\n \"step_index\": 1,\n \"station_id\": 2,\n \"task_duration\": 45\n },\n {\n \"tray_id\": \"J9\",\n \"step_index\": 2,\n \"station_id\": 3,\n \"task_duration\": 32\n },\n {\n \"tray_id\": \"J9\",\n \"step_index\": 3,\n \"station_id\": 4,\n \"task_duration\": 5\n },\n {\n \"tray_id\": \"J9\",\n \"step_index\": 4,\n \"station_id\": 5,\n \"task_duration\": 98\n }\n ]\n}\n\nIf you want to hand me a plan, the easiest is to use a tiny JSON form — think of it like filling out a little schedule sheet. Here’s the shape I expect:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThis is just a sketch of the shape, not the actual plan. In plain terms: \"solution\" is a list of trays (jobs). Each job has a job id and a list of tasks. Each task records which step it is (task), when that step starts (start), which station it uses (machine), and how long it takes (duration). Keep it simple and human-readable, like filling in a timetable.\n\nPlease use the instance’s identifiers exactly as given — don’t rename them or invent new labels. \n- for example: \"Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.\"", "instance": { "nr_machines": 5, "nr_jobs": 9, "jobs": [ [ [ 0, 1 ], [ 1, 70 ], [ 2, 25 ], [ 3, 82 ], [ 4, 42 ] ], [ [ 0, 49 ], [ 1, 19 ], [ 2, 42 ], [ 3, 46 ], [ 4, 19 ] ], [ [ 0, 14 ], [ 1, 23 ], [ 2, 95 ], [ 3, 8 ], [ 4, 76 ] ], [ [ 0, 15 ], [ 1, 73 ], [ 2, 68 ], [ 3, 13 ], [ 4, 94 ] ], [ [ 0, 16 ], [ 1, 13 ], [ 2, 42 ], [ 3, 81 ], [ 4, 31 ] ], [ [ 0, 89 ], [ 1, 19 ], [ 2, 20 ], [ 3, 3 ], [ 4, 41 ] ], [ [ 0, 2 ], [ 1, 83 ], [ 2, 36 ], [ 3, 23 ], [ 4, 51 ] ], [ [ 0, 22 ], [ 1, 31 ], [ 2, 32 ], [ 3, 21 ], [ 4, 51 ] ], [ [ 0, 98 ], [ 1, 45 ], [ 2, 32 ], [ 3, 5 ], [ 4, 98 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 37, "machine": 0, "duration": 1 }, { "task": 1, "start": 149, "machine": 1, "duration": 70 }, { "task": 2, "start": 248, "machine": 2, "duration": 25 }, { "task": 3, "start": 273, "machine": 3, "duration": 82 }, { "task": 4, "start": 358, "machine": 4, "duration": 42 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 168, "machine": 0, "duration": 49 }, { "task": 1, "start": 360, "machine": 1, "duration": 19 }, { "task": 2, "start": 421, "machine": 2, "duration": 42 }, { "task": 3, "start": 502, "machine": 3, "duration": 46 }, { "task": 4, "start": 621, "machine": 4, "duration": 19 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 38, "machine": 0, "duration": 14 }, { "task": 1, "start": 53, "machine": 1, "duration": 23 }, { "task": 2, "start": 85, "machine": 2, "duration": 95 }, { "task": 3, "start": 180, "machine": 3, "duration": 8 }, { "task": 4, "start": 188, "machine": 4, "duration": 76 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 22, "machine": 0, "duration": 15 }, { "task": 1, "start": 76, "machine": 1, "duration": 73 }, { "task": 2, "start": 180, "machine": 2, "duration": 68 }, { "task": 3, "start": 248, "machine": 3, "duration": 13 }, { "task": 4, "start": 264, "machine": 4, "duration": 94 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 152, "machine": 0, "duration": 16 }, { "task": 1, "start": 347, "machine": 1, "duration": 13 }, { "task": 2, "start": 379, "machine": 2, "duration": 42 }, { "task": 3, "start": 421, "machine": 3, "duration": 81 }, { "task": 4, "start": 549, "machine": 4, "duration": 31 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 217, "machine": 0, "duration": 89 }, { "task": 1, "start": 379, "machine": 1, "duration": 19 }, { "task": 2, "start": 463, "machine": 2, "duration": 20 }, { "task": 3, "start": 548, "machine": 3, "duration": 3 }, { "task": 4, "start": 580, "machine": 4, "duration": 41 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 150, "machine": 0, "duration": 2 }, { "task": 1, "start": 219, "machine": 1, "duration": 83 }, { "task": 2, "start": 302, "machine": 2, "duration": 36 }, { "task": 3, "start": 355, "machine": 3, "duration": 23 }, { "task": 4, "start": 498, "machine": 4, "duration": 51 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 22 }, { "task": 1, "start": 22, "machine": 1, "duration": 31 }, { "task": 2, "start": 53, "machine": 2, "duration": 32 }, { "task": 3, "start": 85, "machine": 3, "duration": 21 }, { "task": 4, "start": 106, "machine": 4, "duration": 51 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 52, "machine": 0, "duration": 98 }, { "task": 1, "start": 302, "machine": 1, "duration": 45 }, { "task": 2, "start": 347, "machine": 2, "duration": 32 }, { "task": 3, "start": 379, "machine": 3, "duration": 5 }, { "task": 4, "start": 400, "machine": 4, "duration": 98 } ] } ], "obj": 640.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 9, "nr_machines": 5, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9" ], "machines": [ 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 2, "duration": 70 }, { "job_id": "J1", "task_id": 2, "machine_id": 3, "duration": 25 }, { "job_id": "J1", "task_id": 3, "machine_id": 4, "duration": 82 }, { "job_id": "J1", "task_id": 4, "machine_id": 5, "duration": 42 }, { "job_id": "J2", "task_id": 0, "machine_id": 1, "duration": 49 }, { "job_id": "J2", "task_id": 1, "machine_id": 2, "duration": 19 }, { "job_id": "J2", "task_id": 2, "machine_id": 3, "duration": 42 }, { "job_id": "J2", "task_id": 3, "machine_id": 4, "duration": 46 }, { "job_id": "J2", "task_id": 4, "machine_id": 5, "duration": 19 }, { "job_id": "J3", "task_id": 0, "machine_id": 1, "duration": 14 }, { "job_id": "J3", "task_id": 1, "machine_id": 2, "duration": 23 }, { "job_id": "J3", "task_id": 2, "machine_id": 3, "duration": 95 }, { "job_id": "J3", "task_id": 3, "machine_id": 4, "duration": 8 }, { "job_id": "J3", "task_id": 4, "machine_id": 5, "duration": 76 }, { "job_id": "J4", "task_id": 0, "machine_id": 1, "duration": 15 }, { "job_id": "J4", "task_id": 1, "machine_id": 2, "duration": 73 }, { "job_id": "J4", "task_id": 2, "machine_id": 3, "duration": 68 }, { "job_id": "J4", "task_id": 3, "machine_id": 4, "duration": 13 }, { "job_id": "J4", "task_id": 4, "machine_id": 5, "duration": 94 }, { "job_id": "J5", "task_id": 0, "machine_id": 1, "duration": 16 }, { "job_id": "J5", "task_id": 1, "machine_id": 2, "duration": 13 }, { "job_id": "J5", "task_id": 2, "machine_id": 3, "duration": 42 }, { "job_id": "J5", "task_id": 3, "machine_id": 4, "duration": 81 }, { "job_id": "J5", "task_id": 4, "machine_id": 5, "duration": 31 }, { "job_id": "J6", "task_id": 0, "machine_id": 1, "duration": 89 }, { "job_id": "J6", "task_id": 1, "machine_id": 2, "duration": 19 }, { "job_id": "J6", "task_id": 2, "machine_id": 3, "duration": 20 }, { "job_id": "J6", "task_id": 3, "machine_id": 4, "duration": 3 }, { "job_id": "J6", "task_id": 4, "machine_id": 5, "duration": 41 }, { "job_id": "J7", "task_id": 0, "machine_id": 1, "duration": 2 }, { "job_id": "J7", "task_id": 1, "machine_id": 2, "duration": 83 }, { "job_id": "J7", "task_id": 2, "machine_id": 3, "duration": 36 }, { "job_id": "J7", "task_id": 3, "machine_id": 4, "duration": 23 }, { "job_id": "J7", "task_id": 4, "machine_id": 5, "duration": 51 }, { "job_id": "J8", "task_id": 0, "machine_id": 1, "duration": 22 }, { "job_id": "J8", "task_id": 1, "machine_id": 2, "duration": 31 }, { "job_id": "J8", "task_id": 2, "machine_id": 3, "duration": 32 }, { "job_id": "J8", "task_id": 3, "machine_id": 4, "duration": 21 }, { "job_id": "J8", "task_id": 4, "machine_id": 5, "duration": 51 }, { "job_id": "J9", "task_id": 0, "machine_id": 1, "duration": 98 }, { "job_id": "J9", "task_id": 1, "machine_id": 2, "duration": 45 }, { "job_id": "J9", "task_id": 2, "machine_id": 3, "duration": 32 }, { "job_id": "J9", "task_id": 3, "machine_id": 4, "duration": 5 }, { "job_id": "J9", "task_id": 4, "machine_id": 5, "duration": 98 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 37, "machine": 1, "duration": 1 }, { "task": 1, "start": 149, "machine": 2, "duration": 70 }, { "task": 2, "start": 248, "machine": 3, "duration": 25 }, { "task": 3, "start": 273, "machine": 4, "duration": 82 }, { "task": 4, "start": 358, "machine": 5, "duration": 42 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 168, "machine": 1, "duration": 49 }, { "task": 1, "start": 360, "machine": 2, "duration": 19 }, { "task": 2, "start": 421, "machine": 3, "duration": 42 }, { "task": 3, "start": 502, "machine": 4, "duration": 46 }, { "task": 4, "start": 621, "machine": 5, "duration": 19 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 38, "machine": 1, "duration": 14 }, { "task": 1, "start": 53, "machine": 2, "duration": 23 }, { "task": 2, "start": 85, "machine": 3, "duration": 95 }, { "task": 3, "start": 180, "machine": 4, "duration": 8 }, { "task": 4, "start": 188, "machine": 5, "duration": 76 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 22, "machine": 1, "duration": 15 }, { "task": 1, "start": 76, "machine": 2, "duration": 73 }, { "task": 2, "start": 180, "machine": 3, "duration": 68 }, { "task": 3, "start": 248, "machine": 4, "duration": 13 }, { "task": 4, "start": 264, "machine": 5, "duration": 94 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 152, "machine": 1, "duration": 16 }, { "task": 1, "start": 347, "machine": 2, "duration": 13 }, { "task": 2, "start": 379, "machine": 3, "duration": 42 }, { "task": 3, "start": 421, "machine": 4, "duration": 81 }, { "task": 4, "start": 549, "machine": 5, "duration": 31 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 217, "machine": 1, "duration": 89 }, { "task": 1, "start": 379, "machine": 2, "duration": 19 }, { "task": 2, "start": 463, "machine": 3, "duration": 20 }, { "task": 3, "start": 548, "machine": 4, "duration": 3 }, { "task": 4, "start": 580, "machine": 5, "duration": 41 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 150, "machine": 1, "duration": 2 }, { "task": 1, "start": 219, "machine": 2, "duration": 83 }, { "task": 2, "start": 302, "machine": 3, "duration": 36 }, { "task": 3, "start": 355, "machine": 4, "duration": 23 }, { "task": 4, "start": 498, "machine": 5, "duration": 51 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 0, "machine": 1, "duration": 22 }, { "task": 1, "start": 22, "machine": 2, "duration": 31 }, { "task": 2, "start": 53, "machine": 3, "duration": 32 }, { "task": 3, "start": 85, "machine": 4, "duration": 21 }, { "task": 4, "start": 106, "machine": 5, "duration": 51 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 52, "machine": 1, "duration": 98 }, { "task": 1, "start": 302, "machine": 2, "duration": 45 }, { "task": 2, "start": 347, "machine": 3, "duration": 32 }, { "task": 3, "start": 379, "machine": 4, "duration": 5 }, { "task": 4, "start": 400, "machine": 5, "duration": 98 } ] } ], "context_index": 48, "input_format": "json", "input_index_base": 1 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Someone in the workshop is juggling a stack of tabletops and a calendar: each tabletop must be cut, sanded and finished, and the only choice is the order to feed them through those machines. A good ordering is the one that makes the last tabletop come off the finishing stage sooner rather than later — that final completion time is the score for the plan. All tabletops must go through cutting → sanding → finishing exactly once, and machines can’t handle two pieces at once. The detailed task times are laid out below.\n\nThere are 10 tabletops and 6 stations, listed as J1, J2, J3, J4, J5, J6, J7, J8, J9, J10 and 1, 2, 3, 4, 5, 6.\nTabletop J1: operation 0 on station 1 takes 1.\nTabletop J1: operation 1 on station 2 takes 84.\nTabletop J1: operation 2 on station 3 takes 1.\nTabletop J1: operation 3 on station 4 takes 28.\nTabletop J1: operation 4 on station 5 takes 94.\nTabletop J1: operation 5 on station 6 takes 70.\nTabletop J2: operation 0 on station 1 takes 24.\nTabletop J2: operation 1 on station 2 takes 10.\nTabletop J2: operation 2 on station 3 takes 14.\nTabletop J2: operation 3 on station 4 takes 13.\nTabletop J2: operation 4 on station 5 takes 52.\nTabletop J2: operation 5 on station 6 takes 74.\nTabletop J3: operation 0 on station 1 takes 78.\nTabletop J3: operation 1 on station 2 takes 12.\nTabletop J3: operation 2 on station 3 takes 81.\nTabletop J3: operation 3 on station 4 takes 67.\nTabletop J3: operation 4 on station 5 takes 40.\nTabletop J3: operation 5 on station 6 takes 69.\nTabletop J4: operation 0 on station 1 takes 51.\nTabletop J4: operation 1 on station 2 takes 2.\nTabletop J4: operation 2 on station 3 takes 57.\nTabletop J4: operation 3 on station 4 takes 81.\nTabletop J4: operation 4 on station 5 takes 1.\nTabletop J4: operation 5 on station 6 takes 74.\nTabletop J5: operation 0 on station 1 takes 16.\nTabletop J5: operation 1 on station 2 takes 42.\nTabletop J5: operation 2 on station 3 takes 28.\nTabletop J5: operation 3 on station 4 takes 85.\nTabletop J5: operation 4 on station 5 takes 44.\nTabletop J5: operation 5 on station 6 takes 11.\nTabletop J6: operation 0 on station 1 takes 92.\nTabletop J6: operation 1 on station 2 takes 60.\nTabletop J6: operation 2 on station 3 takes 62.\nTabletop J6: operation 3 on station 4 takes 27.\nTabletop J6: operation 4 on station 5 takes 25.\nTabletop J6: operation 5 on station 6 takes 54.\nTabletop J7: operation 0 on station 1 takes 93.\nTabletop J7: operation 1 on station 2 takes 8.\nTabletop J7: operation 2 on station 3 takes 20.\nTabletop J7: operation 3 on station 4 takes 88.\nTabletop J7: operation 4 on station 5 takes 24.\nTabletop J7: operation 5 on station 6 takes 43.\nTabletop J8: operation 0 on station 1 takes 4.\nTabletop J8: operation 1 on station 2 takes 80.\nTabletop J8: operation 2 on station 3 takes 64.\nTabletop J8: operation 3 on station 4 takes 54.\nTabletop J8: operation 4 on station 5 takes 84.\nTabletop J8: operation 5 on station 6 takes 62.\nTabletop J9: operation 0 on station 1 takes 54.\nTabletop J9: operation 1 on station 2 takes 28.\nTabletop J9: operation 2 on station 3 takes 98.\nTabletop J9: operation 3 on station 4 takes 99.\nTabletop J9: operation 4 on station 5 takes 40.\nTabletop J9: operation 5 on station 6 takes 74.\nTabletop J10: operation 0 on station 1 takes 34.\nTabletop J10: operation 1 on station 2 takes 98.\nTabletop J10: operation 2 on station 3 takes 78.\nTabletop J10: operation 3 on station 4 takes 79.\nTabletop J10: operation 4 on station 5 takes 83.\nTabletop J10: operation 5 on station 6 takes 45.\nOrder them to minimize when the last of the 10 tabletops finishes.\n\nAlso, when you hand me the plan, please put it in a simple JSON shape so it's easy to read and reuse. Something like this:\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThis is just a sketch of the shape I expect: \"solution\" is an array of jobs, each job entry gives the job identifier and a list of its tasks. Each task entry shows which task number it is, when that task starts, which machine it runs on, and how long it takes. Keep it casual — it's like filling out a little form for each tabletop as it moves through cutting, sanding and finishing.\n\nThis JSON block is only the expected shape, not the actual schedule. Please use the exact identifiers from the instance input — do not rename them or invent new labels. \n\nValid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 6, "nr_jobs": 10, "jobs": [ [ [ 0, 1 ], [ 1, 84 ], [ 2, 1 ], [ 3, 28 ], [ 4, 94 ], [ 5, 70 ] ], [ [ 0, 24 ], [ 1, 10 ], [ 2, 14 ], [ 3, 13 ], [ 4, 52 ], [ 5, 74 ] ], [ [ 0, 78 ], [ 1, 12 ], [ 2, 81 ], [ 3, 67 ], [ 4, 40 ], [ 5, 69 ] ], [ [ 0, 51 ], [ 1, 2 ], [ 2, 57 ], [ 3, 81 ], [ 4, 1 ], [ 5, 74 ] ], [ [ 0, 16 ], [ 1, 42 ], [ 2, 28 ], [ 3, 85 ], [ 4, 44 ], [ 5, 11 ] ], [ [ 0, 92 ], [ 1, 60 ], [ 2, 62 ], [ 3, 27 ], [ 4, 25 ], [ 5, 54 ] ], [ [ 0, 93 ], [ 1, 8 ], [ 2, 20 ], [ 3, 88 ], [ 4, 24 ], [ 5, 43 ] ], [ [ 0, 4 ], [ 1, 80 ], [ 2, 64 ], [ 3, 54 ], [ 4, 84 ], [ 5, 62 ] ], [ [ 0, 54 ], [ 1, 28 ], [ 2, 98 ], [ 3, 99 ], [ 4, 40 ], [ 5, 74 ] ], [ [ 0, 34 ], [ 1, 98 ], [ 2, 78 ], [ 3, 79 ], [ 4, 83 ], [ 5, 45 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 84 }, { "task": 2, "start": 85, "machine": 2, "duration": 1 }, { "task": 3, "start": 86, "machine": 3, "duration": 28 }, { "task": 4, "start": 114, "machine": 4, "duration": 94 }, { "task": 5, "start": 300, "machine": 5, "duration": 70 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 106, "machine": 0, "duration": 24 }, { "task": 1, "start": 134, "machine": 1, "duration": 10 }, { "task": 2, "start": 144, "machine": 2, "duration": 14 }, { "task": 3, "start": 225, "machine": 3, "duration": 13 }, { "task": 4, "start": 238, "machine": 4, "duration": 52 }, { "task": 5, "start": 370, "machine": 5, "duration": 74 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 257, "machine": 0, "duration": 78 }, { "task": 1, "start": 335, "machine": 1, "duration": 12 }, { "task": 2, "start": 347, "machine": 2, "duration": 81 }, { "task": 3, "start": 434, "machine": 3, "duration": 67 }, { "task": 4, "start": 517, "machine": 4, "duration": 40 }, { "task": 5, "start": 563, "machine": 5, "duration": 69 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 51 }, { "task": 1, "start": 85, "machine": 1, "duration": 2 }, { "task": 2, "start": 87, "machine": 2, "duration": 57 }, { "task": 3, "start": 144, "machine": 3, "duration": 81 }, { "task": 4, "start": 225, "machine": 4, "duration": 1 }, { "task": 5, "start": 226, "machine": 5, "duration": 74 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 431, "machine": 0, "duration": 16 }, { "task": 1, "start": 492, "machine": 1, "duration": 42 }, { "task": 2, "start": 582, "machine": 2, "duration": 28 }, { "task": 3, "start": 670, "machine": 3, "duration": 85 }, { "task": 4, "start": 755, "machine": 4, "duration": 44 }, { "task": 5, "start": 799, "machine": 5, "duration": 11 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 339, "machine": 0, "duration": 92 }, { "task": 1, "start": 432, "machine": 1, "duration": 60 }, { "task": 2, "start": 492, "machine": 2, "duration": 62 }, { "task": 3, "start": 555, "machine": 3, "duration": 27 }, { "task": 4, "start": 582, "machine": 4, "duration": 25 }, { "task": 5, "start": 632, "machine": 5, "duration": 54 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 164, "machine": 0, "duration": 93 }, { "task": 1, "start": 277, "machine": 1, "duration": 8 }, { "task": 2, "start": 554, "machine": 2, "duration": 20 }, { "task": 3, "start": 582, "machine": 3, "duration": 88 }, { "task": 4, "start": 694, "machine": 4, "duration": 24 }, { "task": 5, "start": 756, "machine": 5, "duration": 43 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 335, "machine": 0, "duration": 4 }, { "task": 1, "start": 347, "machine": 1, "duration": 80 }, { "task": 2, "start": 428, "machine": 2, "duration": 64 }, { "task": 3, "start": 501, "machine": 3, "duration": 54 }, { "task": 4, "start": 610, "machine": 4, "duration": 84 }, { "task": 5, "start": 694, "machine": 5, "duration": 62 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 52, "machine": 0, "duration": 54 }, { "task": 1, "start": 106, "machine": 1, "duration": 28 }, { "task": 2, "start": 158, "machine": 2, "duration": 98 }, { "task": 3, "start": 256, "machine": 3, "duration": 99 }, { "task": 4, "start": 355, "machine": 4, "duration": 40 }, { "task": 5, "start": 444, "machine": 5, "duration": 74 } ] }, { "job": 9, "tasks": [ { "task": 0, "start": 130, "machine": 0, "duration": 34 }, { "task": 1, "start": 164, "machine": 1, "duration": 98 }, { "task": 2, "start": 262, "machine": 2, "duration": 78 }, { "task": 3, "start": 355, "machine": 3, "duration": 79 }, { "task": 4, "start": 434, "machine": 4, "duration": 83 }, { "task": 5, "start": 518, "machine": 5, "duration": 45 } ] } ], "obj": 810.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 10, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9", "J10" ], "machines": [ 1, 2, 3, 4, 5, 6 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 1, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 2, "duration": 84 }, { "job_id": "J1", "task_id": 2, "machine_id": 3, "duration": 1 }, { "job_id": "J1", "task_id": 3, "machine_id": 4, "duration": 28 }, { "job_id": "J1", "task_id": 4, "machine_id": 5, "duration": 94 }, { "job_id": "J1", "task_id": 5, "machine_id": 6, "duration": 70 }, { "job_id": "J2", "task_id": 0, "machine_id": 1, "duration": 24 }, { "job_id": "J2", "task_id": 1, "machine_id": 2, "duration": 10 }, { "job_id": "J2", "task_id": 2, "machine_id": 3, "duration": 14 }, { "job_id": "J2", "task_id": 3, "machine_id": 4, "duration": 13 }, { "job_id": "J2", "task_id": 4, "machine_id": 5, "duration": 52 }, { "job_id": "J2", "task_id": 5, "machine_id": 6, "duration": 74 }, { "job_id": "J3", "task_id": 0, "machine_id": 1, "duration": 78 }, { "job_id": "J3", "task_id": 1, "machine_id": 2, "duration": 12 }, { "job_id": "J3", "task_id": 2, "machine_id": 3, "duration": 81 }, { "job_id": "J3", "task_id": 3, "machine_id": 4, "duration": 67 }, { "job_id": "J3", "task_id": 4, "machine_id": 5, "duration": 40 }, { "job_id": "J3", "task_id": 5, "machine_id": 6, "duration": 69 }, { "job_id": "J4", "task_id": 0, "machine_id": 1, "duration": 51 }, { "job_id": "J4", "task_id": 1, "machine_id": 2, "duration": 2 }, { "job_id": "J4", "task_id": 2, "machine_id": 3, "duration": 57 }, { "job_id": "J4", "task_id": 3, "machine_id": 4, "duration": 81 }, { "job_id": "J4", "task_id": 4, "machine_id": 5, "duration": 1 }, { "job_id": "J4", "task_id": 5, "machine_id": 6, "duration": 74 }, { "job_id": "J5", "task_id": 0, "machine_id": 1, "duration": 16 }, { "job_id": "J5", "task_id": 1, "machine_id": 2, "duration": 42 }, { "job_id": "J5", "task_id": 2, "machine_id": 3, "duration": 28 }, { "job_id": "J5", "task_id": 3, "machine_id": 4, "duration": 85 }, { "job_id": "J5", "task_id": 4, "machine_id": 5, "duration": 44 }, { "job_id": "J5", "task_id": 5, "machine_id": 6, "duration": 11 }, { "job_id": "J6", "task_id": 0, "machine_id": 1, "duration": 92 }, { "job_id": "J6", "task_id": 1, "machine_id": 2, "duration": 60 }, { "job_id": "J6", "task_id": 2, "machine_id": 3, "duration": 62 }, { "job_id": "J6", "task_id": 3, "machine_id": 4, "duration": 27 }, { "job_id": "J6", "task_id": 4, "machine_id": 5, "duration": 25 }, { "job_id": "J6", "task_id": 5, "machine_id": 6, "duration": 54 }, { "job_id": "J7", "task_id": 0, "machine_id": 1, "duration": 93 }, { "job_id": "J7", "task_id": 1, "machine_id": 2, "duration": 8 }, { "job_id": "J7", "task_id": 2, "machine_id": 3, "duration": 20 }, { "job_id": "J7", "task_id": 3, "machine_id": 4, "duration": 88 }, { "job_id": "J7", "task_id": 4, "machine_id": 5, "duration": 24 }, { "job_id": "J7", "task_id": 5, "machine_id": 6, "duration": 43 }, { "job_id": "J8", "task_id": 0, "machine_id": 1, "duration": 4 }, { "job_id": "J8", "task_id": 1, "machine_id": 2, "duration": 80 }, { "job_id": "J8", "task_id": 2, "machine_id": 3, "duration": 64 }, { "job_id": "J8", "task_id": 3, "machine_id": 4, "duration": 54 }, { "job_id": "J8", "task_id": 4, "machine_id": 5, "duration": 84 }, { "job_id": "J8", "task_id": 5, "machine_id": 6, "duration": 62 }, { "job_id": "J9", "task_id": 0, "machine_id": 1, "duration": 54 }, { "job_id": "J9", "task_id": 1, "machine_id": 2, "duration": 28 }, { "job_id": "J9", "task_id": 2, "machine_id": 3, "duration": 98 }, { "job_id": "J9", "task_id": 3, "machine_id": 4, "duration": 99 }, { "job_id": "J9", "task_id": 4, "machine_id": 5, "duration": 40 }, { "job_id": "J9", "task_id": 5, "machine_id": 6, "duration": 74 }, { "job_id": "J10", "task_id": 0, "machine_id": 1, "duration": 34 }, { "job_id": "J10", "task_id": 1, "machine_id": 2, "duration": 98 }, { "job_id": "J10", "task_id": 2, "machine_id": 3, "duration": 78 }, { "job_id": "J10", "task_id": 3, "machine_id": 4, "duration": 79 }, { "job_id": "J10", "task_id": 4, "machine_id": 5, "duration": 83 }, { "job_id": "J10", "task_id": 5, "machine_id": 6, "duration": 45 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 0, "machine": 1, "duration": 1 }, { "task": 1, "start": 1, "machine": 2, "duration": 84 }, { "task": 2, "start": 85, "machine": 3, "duration": 1 }, { "task": 3, "start": 86, "machine": 4, "duration": 28 }, { "task": 4, "start": 114, "machine": 5, "duration": 94 }, { "task": 5, "start": 300, "machine": 6, "duration": 70 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 106, "machine": 1, "duration": 24 }, { "task": 1, "start": 134, "machine": 2, "duration": 10 }, { "task": 2, "start": 144, "machine": 3, "duration": 14 }, { "task": 3, "start": 225, "machine": 4, "duration": 13 }, { "task": 4, "start": 238, "machine": 5, "duration": 52 }, { "task": 5, "start": 370, "machine": 6, "duration": 74 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 257, "machine": 1, "duration": 78 }, { "task": 1, "start": 335, "machine": 2, "duration": 12 }, { "task": 2, "start": 347, "machine": 3, "duration": 81 }, { "task": 3, "start": 434, "machine": 4, "duration": 67 }, { "task": 4, "start": 517, "machine": 5, "duration": 40 }, { "task": 5, "start": 563, "machine": 6, "duration": 69 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 1, "machine": 1, "duration": 51 }, { "task": 1, "start": 85, "machine": 2, "duration": 2 }, { "task": 2, "start": 87, "machine": 3, "duration": 57 }, { "task": 3, "start": 144, "machine": 4, "duration": 81 }, { "task": 4, "start": 225, "machine": 5, "duration": 1 }, { "task": 5, "start": 226, "machine": 6, "duration": 74 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 431, "machine": 1, "duration": 16 }, { "task": 1, "start": 492, "machine": 2, "duration": 42 }, { "task": 2, "start": 582, "machine": 3, "duration": 28 }, { "task": 3, "start": 670, "machine": 4, "duration": 85 }, { "task": 4, "start": 755, "machine": 5, "duration": 44 }, { "task": 5, "start": 799, "machine": 6, "duration": 11 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 339, "machine": 1, "duration": 92 }, { "task": 1, "start": 432, "machine": 2, "duration": 60 }, { "task": 2, "start": 492, "machine": 3, "duration": 62 }, { "task": 3, "start": 555, "machine": 4, "duration": 27 }, { "task": 4, "start": 582, "machine": 5, "duration": 25 }, { "task": 5, "start": 632, "machine": 6, "duration": 54 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 164, "machine": 1, "duration": 93 }, { "task": 1, "start": 277, "machine": 2, "duration": 8 }, { "task": 2, "start": 554, "machine": 3, "duration": 20 }, { "task": 3, "start": 582, "machine": 4, "duration": 88 }, { "task": 4, "start": 694, "machine": 5, "duration": 24 }, { "task": 5, "start": 756, "machine": 6, "duration": 43 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 335, "machine": 1, "duration": 4 }, { "task": 1, "start": 347, "machine": 2, "duration": 80 }, { "task": 2, "start": 428, "machine": 3, "duration": 64 }, { "task": 3, "start": 501, "machine": 4, "duration": 54 }, { "task": 4, "start": 610, "machine": 5, "duration": 84 }, { "task": 5, "start": 694, "machine": 6, "duration": 62 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 52, "machine": 1, "duration": 54 }, { "task": 1, "start": 106, "machine": 2, "duration": 28 }, { "task": 2, "start": 158, "machine": 3, "duration": 98 }, { "task": 3, "start": 256, "machine": 4, "duration": 99 }, { "task": 4, "start": 355, "machine": 5, "duration": 40 }, { "task": 5, "start": 444, "machine": 6, "duration": 74 } ] }, { "job": "J10", "tasks": [ { "task": 0, "start": 130, "machine": 1, "duration": 34 }, { "task": 1, "start": 164, "machine": 2, "duration": 98 }, { "task": 2, "start": 262, "machine": 3, "duration": 78 }, { "task": 3, "start": 355, "machine": 4, "duration": 79 }, { "task": 4, "start": 434, "machine": 5, "duration": 83 }, { "task": 5, "start": 518, "machine": 6, "duration": 45 } ] } ], "context_index": 49, "input_format": "nl", "input_index_base": 1 }, { "task_name": "FSP", "problem_type": "FSP", "instruction": "Many people don’t realize how much planning goes into a simple run: samples must go through a centrifuge, then an incubator, then an assay, and the order you send them in determines how long the whole batch takes. The better plan is the one where the last sample exits the assay sooner — that finish time is what you compare. All samples have set times for each stage, none can skip or repeat a stage, and equipment can’t work on more than one sample at once. The exact sample timings are listed below.\n\n# nr_samples=9\n# nr_equipment=6\n# sample_ids=J1, J2, J3, J4, J5, J6, J7, J8, J9\n# equipment_ids=0, 1, 2, 3, 4, 5\nsample_id,step_index,equipment_id,processing_time\nJ1,0,0,1\nJ1,1,1,97\nJ1,2,2,76\nJ1,3,3,73\nJ1,4,4,48\nJ1,5,5,92\nJ2,0,0,28\nJ2,1,1,77\nJ2,2,2,81\nJ2,3,3,6\nJ2,4,4,89\nJ2,5,5,27\nJ3,0,0,62\nJ3,1,1,15\nJ3,2,2,86\nJ3,3,3,21\nJ3,4,4,8\nJ3,5,5,70\nJ4,0,0,89\nJ4,1,1,9\nJ4,2,2,99\nJ4,3,3,50\nJ4,4,4,60\nJ4,5,5,67\nJ5,0,0,1\nJ5,1,1,95\nJ5,2,2,37\nJ5,3,3,51\nJ5,4,4,85\nJ5,5,5,81\nJ6,0,0,84\nJ6,1,1,36\nJ6,2,2,88\nJ6,3,3,32\nJ6,4,4,98\nJ6,5,5,87\nJ7,0,0,57\nJ7,1,1,83\nJ7,2,2,19\nJ7,3,3,25\nJ7,4,4,48\nJ7,5,5,41\nJ8,0,0,76\nJ8,1,1,55\nJ8,2,2,29\nJ8,3,3,61\nJ8,4,4,48\nJ8,5,5,51\nJ9,0,0,81\nJ9,1,1,71\nJ9,2,2,75\nJ9,3,3,47\nJ9,4,4,64\nJ9,5,5,2\n\nIf you prefer the schedule in a neat, machine-friendly layout, I'll use the JSON shape below so it's easy to read and parse.\n\n{\n \"solution\": [\n {\n \"job\": ,\n \"tasks\": [\n {\n \"task\": ,\n \"start\": ,\n \"machine\": ,\n \"duration\": \n }\n ]\n }\n ]\n}\n\nThink of it like a simple form: \"solution\" holds a list of jobs; each job entry names the job and then lists its tasks. Each task entry says which step it is (\"task\"), when that step starts (\"start\"), which piece of equipment it uses (\"machine\"), and how long it runs (\"duration\"). It's just a sketch of the shape I need — not the real schedule yet.\n\nPlease use the exact identifiers from the instance input when filling this in — no renaming and no new labels. Valid identifiers look like plain numbers such as “1” or “23”, single capital letters like “A” or “B”, or a capital letter followed by digits like “A1” or “X7”.", "instance": { "nr_machines": 6, "nr_jobs": 9, "jobs": [ [ [ 0, 1 ], [ 1, 97 ], [ 2, 76 ], [ 3, 73 ], [ 4, 48 ], [ 5, 92 ] ], [ [ 0, 28 ], [ 1, 77 ], [ 2, 81 ], [ 3, 6 ], [ 4, 89 ], [ 5, 27 ] ], [ [ 0, 62 ], [ 1, 15 ], [ 2, 86 ], [ 3, 21 ], [ 4, 8 ], [ 5, 70 ] ], [ [ 0, 89 ], [ 1, 9 ], [ 2, 99 ], [ 3, 50 ], [ 4, 60 ], [ 5, 67 ] ], [ [ 0, 1 ], [ 1, 95 ], [ 2, 37 ], [ 3, 51 ], [ 4, 85 ], [ 5, 81 ] ], [ [ 0, 84 ], [ 1, 36 ], [ 2, 88 ], [ 3, 32 ], [ 4, 98 ], [ 5, 87 ] ], [ [ 0, 57 ], [ 1, 83 ], [ 2, 19 ], [ 3, 25 ], [ 4, 48 ], [ 5, 41 ] ], [ [ 0, 76 ], [ 1, 55 ], [ 2, 29 ], [ 3, 61 ], [ 4, 48 ], [ 5, 51 ] ], [ [ 0, 81 ], [ 1, 71 ], [ 2, 75 ], [ 3, 47 ], [ 4, 64 ], [ 5, 2 ] ] ] }, "solution": [ { "job": 0, "tasks": [ { "task": 0, "start": 223, "machine": 0, "duration": 1 }, { "task": 1, "start": 238, "machine": 1, "duration": 97 }, { "task": 2, "start": 336, "machine": 2, "duration": 76 }, { "task": 3, "start": 412, "machine": 3, "duration": 73 }, { "task": 4, "start": 485, "machine": 4, "duration": 48 }, { "task": 5, "start": 570, "machine": 5, "duration": 92 } ] }, { "job": 1, "tasks": [ { "task": 0, "start": 224, "machine": 0, "duration": 28 }, { "task": 1, "start": 335, "machine": 1, "duration": 77 }, { "task": 2, "start": 412, "machine": 2, "duration": 81 }, { "task": 3, "start": 493, "machine": 3, "duration": 6 }, { "task": 4, "start": 533, "machine": 4, "duration": 89 }, { "task": 5, "start": 662, "machine": 5, "duration": 27 } ] }, { "job": 2, "tasks": [ { "task": 0, "start": 161, "machine": 0, "duration": 62 }, { "task": 1, "start": 223, "machine": 1, "duration": 15 }, { "task": 2, "start": 250, "machine": 2, "duration": 86 }, { "task": 3, "start": 336, "machine": 3, "duration": 21 }, { "task": 4, "start": 362, "machine": 4, "duration": 8 }, { "task": 5, "start": 413, "machine": 5, "duration": 70 } ] }, { "job": 3, "tasks": [ { "task": 0, "start": 390, "machine": 0, "duration": 89 }, { "task": 1, "start": 495, "machine": 1, "duration": 9 }, { "task": 2, "start": 514, "machine": 2, "duration": 99 }, { "task": 3, "start": 613, "machine": 3, "duration": 50 }, { "task": 4, "start": 670, "machine": 4, "duration": 60 }, { "task": 5, "start": 730, "machine": 5, "duration": 67 } ] }, { "job": 4, "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 95 }, { "task": 2, "start": 96, "machine": 2, "duration": 37 }, { "task": 3, "start": 133, "machine": 3, "duration": 51 }, { "task": 4, "start": 184, "machine": 4, "duration": 85 }, { "task": 5, "start": 269, "machine": 5, "duration": 81 } ] }, { "job": 5, "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 84 }, { "task": 1, "start": 96, "machine": 1, "duration": 36 }, { "task": 2, "start": 133, "machine": 2, "duration": 88 }, { "task": 3, "start": 221, "machine": 3, "duration": 32 }, { "task": 4, "start": 370, "machine": 4, "duration": 98 }, { "task": 5, "start": 483, "machine": 5, "duration": 87 } ] }, { "job": 6, "tasks": [ { "task": 0, "start": 333, "machine": 0, "duration": 57 }, { "task": 1, "start": 412, "machine": 1, "duration": 83 }, { "task": 2, "start": 495, "machine": 2, "duration": 19 }, { "task": 3, "start": 514, "machine": 3, "duration": 25 }, { "task": 4, "start": 622, "machine": 4, "duration": 48 }, { "task": 5, "start": 689, "machine": 5, "duration": 41 } ] }, { "job": 7, "tasks": [ { "task": 0, "start": 85, "machine": 0, "duration": 76 }, { "task": 1, "start": 161, "machine": 1, "duration": 55 }, { "task": 2, "start": 221, "machine": 2, "duration": 29 }, { "task": 3, "start": 253, "machine": 3, "duration": 61 }, { "task": 4, "start": 314, "machine": 4, "duration": 48 }, { "task": 5, "start": 362, "machine": 5, "duration": 51 } ] }, { "job": 8, "tasks": [ { "task": 0, "start": 252, "machine": 0, "duration": 81 }, { "task": 1, "start": 504, "machine": 1, "duration": 71 }, { "task": 2, "start": 613, "machine": 2, "duration": 75 }, { "task": 3, "start": 688, "machine": 3, "duration": 47 }, { "task": 4, "start": 735, "machine": 4, "duration": 64 }, { "task": 5, "start": 799, "machine": 5, "duration": 2 } ] } ], "obj": 801.0, "instance_variant": { "problem_type": "FSP", "nr_jobs": 9, "nr_machines": 6, "jobs": [ "J1", "J2", "J3", "J4", "J5", "J6", "J7", "J8", "J9" ], "machines": [ 0, 1, 2, 3, 4, 5 ], "records": [ { "job_id": "J1", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J1", "task_id": 1, "machine_id": 1, "duration": 97 }, { "job_id": "J1", "task_id": 2, "machine_id": 2, "duration": 76 }, { "job_id": "J1", "task_id": 3, "machine_id": 3, "duration": 73 }, { "job_id": "J1", "task_id": 4, "machine_id": 4, "duration": 48 }, { "job_id": "J1", "task_id": 5, "machine_id": 5, "duration": 92 }, { "job_id": "J2", "task_id": 0, "machine_id": 0, "duration": 28 }, { "job_id": "J2", "task_id": 1, "machine_id": 1, "duration": 77 }, { "job_id": "J2", "task_id": 2, "machine_id": 2, "duration": 81 }, { "job_id": "J2", "task_id": 3, "machine_id": 3, "duration": 6 }, { "job_id": "J2", "task_id": 4, "machine_id": 4, "duration": 89 }, { "job_id": "J2", "task_id": 5, "machine_id": 5, "duration": 27 }, { "job_id": "J3", "task_id": 0, "machine_id": 0, "duration": 62 }, { "job_id": "J3", "task_id": 1, "machine_id": 1, "duration": 15 }, { "job_id": "J3", "task_id": 2, "machine_id": 2, "duration": 86 }, { "job_id": "J3", "task_id": 3, "machine_id": 3, "duration": 21 }, { "job_id": "J3", "task_id": 4, "machine_id": 4, "duration": 8 }, { "job_id": "J3", "task_id": 5, "machine_id": 5, "duration": 70 }, { "job_id": "J4", "task_id": 0, "machine_id": 0, "duration": 89 }, { "job_id": "J4", "task_id": 1, "machine_id": 1, "duration": 9 }, { "job_id": "J4", "task_id": 2, "machine_id": 2, "duration": 99 }, { "job_id": "J4", "task_id": 3, "machine_id": 3, "duration": 50 }, { "job_id": "J4", "task_id": 4, "machine_id": 4, "duration": 60 }, { "job_id": "J4", "task_id": 5, "machine_id": 5, "duration": 67 }, { "job_id": "J5", "task_id": 0, "machine_id": 0, "duration": 1 }, { "job_id": "J5", "task_id": 1, "machine_id": 1, "duration": 95 }, { "job_id": "J5", "task_id": 2, "machine_id": 2, "duration": 37 }, { "job_id": "J5", "task_id": 3, "machine_id": 3, "duration": 51 }, { "job_id": "J5", "task_id": 4, "machine_id": 4, "duration": 85 }, { "job_id": "J5", "task_id": 5, "machine_id": 5, "duration": 81 }, { "job_id": "J6", "task_id": 0, "machine_id": 0, "duration": 84 }, { "job_id": "J6", "task_id": 1, "machine_id": 1, "duration": 36 }, { "job_id": "J6", "task_id": 2, "machine_id": 2, "duration": 88 }, { "job_id": "J6", "task_id": 3, "machine_id": 3, "duration": 32 }, { "job_id": "J6", "task_id": 4, "machine_id": 4, "duration": 98 }, { "job_id": "J6", "task_id": 5, "machine_id": 5, "duration": 87 }, { "job_id": "J7", "task_id": 0, "machine_id": 0, "duration": 57 }, { "job_id": "J7", "task_id": 1, "machine_id": 1, "duration": 83 }, { "job_id": "J7", "task_id": 2, "machine_id": 2, "duration": 19 }, { "job_id": "J7", "task_id": 3, "machine_id": 3, "duration": 25 }, { "job_id": "J7", "task_id": 4, "machine_id": 4, "duration": 48 }, { "job_id": "J7", "task_id": 5, "machine_id": 5, "duration": 41 }, { "job_id": "J8", "task_id": 0, "machine_id": 0, "duration": 76 }, { "job_id": "J8", "task_id": 1, "machine_id": 1, "duration": 55 }, { "job_id": "J8", "task_id": 2, "machine_id": 2, "duration": 29 }, { "job_id": "J8", "task_id": 3, "machine_id": 3, "duration": 61 }, { "job_id": "J8", "task_id": 4, "machine_id": 4, "duration": 48 }, { "job_id": "J8", "task_id": 5, "machine_id": 5, "duration": 51 }, { "job_id": "J9", "task_id": 0, "machine_id": 0, "duration": 81 }, { "job_id": "J9", "task_id": 1, "machine_id": 1, "duration": 71 }, { "job_id": "J9", "task_id": 2, "machine_id": 2, "duration": 75 }, { "job_id": "J9", "task_id": 3, "machine_id": 3, "duration": 47 }, { "job_id": "J9", "task_id": 4, "machine_id": 4, "duration": 64 }, { "job_id": "J9", "task_id": 5, "machine_id": 5, "duration": 2 } ] }, "solution_variant": [ { "job": "J1", "tasks": [ { "task": 0, "start": 223, "machine": 0, "duration": 1 }, { "task": 1, "start": 238, "machine": 1, "duration": 97 }, { "task": 2, "start": 336, "machine": 2, "duration": 76 }, { "task": 3, "start": 412, "machine": 3, "duration": 73 }, { "task": 4, "start": 485, "machine": 4, "duration": 48 }, { "task": 5, "start": 570, "machine": 5, "duration": 92 } ] }, { "job": "J2", "tasks": [ { "task": 0, "start": 224, "machine": 0, "duration": 28 }, { "task": 1, "start": 335, "machine": 1, "duration": 77 }, { "task": 2, "start": 412, "machine": 2, "duration": 81 }, { "task": 3, "start": 493, "machine": 3, "duration": 6 }, { "task": 4, "start": 533, "machine": 4, "duration": 89 }, { "task": 5, "start": 662, "machine": 5, "duration": 27 } ] }, { "job": "J3", "tasks": [ { "task": 0, "start": 161, "machine": 0, "duration": 62 }, { "task": 1, "start": 223, "machine": 1, "duration": 15 }, { "task": 2, "start": 250, "machine": 2, "duration": 86 }, { "task": 3, "start": 336, "machine": 3, "duration": 21 }, { "task": 4, "start": 362, "machine": 4, "duration": 8 }, { "task": 5, "start": 413, "machine": 5, "duration": 70 } ] }, { "job": "J4", "tasks": [ { "task": 0, "start": 390, "machine": 0, "duration": 89 }, { "task": 1, "start": 495, "machine": 1, "duration": 9 }, { "task": 2, "start": 514, "machine": 2, "duration": 99 }, { "task": 3, "start": 613, "machine": 3, "duration": 50 }, { "task": 4, "start": 670, "machine": 4, "duration": 60 }, { "task": 5, "start": 730, "machine": 5, "duration": 67 } ] }, { "job": "J5", "tasks": [ { "task": 0, "start": 0, "machine": 0, "duration": 1 }, { "task": 1, "start": 1, "machine": 1, "duration": 95 }, { "task": 2, "start": 96, "machine": 2, "duration": 37 }, { "task": 3, "start": 133, "machine": 3, "duration": 51 }, { "task": 4, "start": 184, "machine": 4, "duration": 85 }, { "task": 5, "start": 269, "machine": 5, "duration": 81 } ] }, { "job": "J6", "tasks": [ { "task": 0, "start": 1, "machine": 0, "duration": 84 }, { "task": 1, "start": 96, "machine": 1, "duration": 36 }, { "task": 2, "start": 133, "machine": 2, "duration": 88 }, { "task": 3, "start": 221, "machine": 3, "duration": 32 }, { "task": 4, "start": 370, "machine": 4, "duration": 98 }, { "task": 5, "start": 483, "machine": 5, "duration": 87 } ] }, { "job": "J7", "tasks": [ { "task": 0, "start": 333, "machine": 0, "duration": 57 }, { "task": 1, "start": 412, "machine": 1, "duration": 83 }, { "task": 2, "start": 495, "machine": 2, "duration": 19 }, { "task": 3, "start": 514, "machine": 3, "duration": 25 }, { "task": 4, "start": 622, "machine": 4, "duration": 48 }, { "task": 5, "start": 689, "machine": 5, "duration": 41 } ] }, { "job": "J8", "tasks": [ { "task": 0, "start": 85, "machine": 0, "duration": 76 }, { "task": 1, "start": 161, "machine": 1, "duration": 55 }, { "task": 2, "start": 221, "machine": 2, "duration": 29 }, { "task": 3, "start": 253, "machine": 3, "duration": 61 }, { "task": 4, "start": 314, "machine": 4, "duration": 48 }, { "task": 5, "start": 362, "machine": 5, "duration": 51 } ] }, { "job": "J9", "tasks": [ { "task": 0, "start": 252, "machine": 0, "duration": 81 }, { "task": 1, "start": 504, "machine": 1, "duration": 71 }, { "task": 2, "start": 613, "machine": 2, "duration": 75 }, { "task": 3, "start": 688, "machine": 3, "duration": 47 }, { "task": 4, "start": 735, "machine": 4, "duration": 64 }, { "task": 5, "start": 799, "machine": 5, "duration": 2 } ] } ], "context_index": 50, "input_format": "csv", "input_index_base": 0 } ]