MarcMeketonVillanova / 2024_RAS_PSC

INFORMS 2024 Railway Applications Section Problem Solving Competition
MIT License
3 stars 3 forks source link

create ShuntingProblemSolutionValidator_09_18_2024.yp as the Solution Validator #2

Closed asu-trans-ai-lab closed 1 day ago

asu-trans-ai-lab commented 2 days ago

This commit introduces the ShuntingProblemSolutionValidator_09_18_2024.py, a python based solution validator for the shunting problem. The validator is designed to process input JSON files containing train movement and yard data, compute solution metrics such as track occupancy, movement time, and total shunting time, and validate them against the problem parameters. The script implements key data structures (TrainMovement, Solution, Input) and algorithms for movement (pull/push) validation, and outputs results to a CSV file. Additionally, the implementation includes:

Calculation of shunting times and track movements. Validation of train movements (pull and push) with reverse movement checks. Storage and handling of shunter and track occupancies. Output solution metrics for further analysis.

This Python code tool is now aligned with the sample spreadsheet provided in the sample_solution folder.

asu-trans-ai-lab commented 1 day ago

I use .py as the file extension now.