This repository contains the company code with the preprint: "High-dimensional Automated Radiation Therapy Treatment Planning via Bayesian Optimization". The code serves to perform automated hyperparameter tuning for IMRT treatment planning. The implemented automated framework was integrated with Eclipse TPS for FMO, leaf sequencing and dose calculation.
Tested with the Eclipse TPS 15.6 and 16.1.
- /bo_planner/: contains source files realizing key functionalities.
- main.py is the running script to perform the hyperparameter tuning.
- /results/ contains data and script reproducing figures in the manuscript.
- /config/ configuration files defining the treatment planning environment, clinical goals, and planning parameters(i.e. search space). Objective constraints can be defined to limit the search space.
You need Python 3.7.3 or later to run BOPlanner.
The required Python dependencies are in requirements.txt.
Clinical goals are saved in a CSV file as PQM with Structure, Type, Volume, Doselimit, LimitType, Priority, etc. The types of PQM include, min/max dose, mean dose, dose-volume parameters, and dose spillage (R50%, R90%). PQM grouped the clinical goals into several tiers indexed by Priority where lower tiers, such as 1, have greater importance. The format of PQM can refer to PQM.
-
Search space: planning parameters and adjustment ranges are stored in a CSV file. The adjustable planning parameters included both dose objectives and their corresponding weights, using closed intervals to indicate the range of adjustment. And fixed plan parameters were defined by fixed floats. The format of search space can refer to search space.
-
Constraints: in order for the planning parameters to be valid and meaningful, constraints need to be added, which only exist for DoseLimit. The format of constraints can refer to objective constraints.
tutorial_for_BOPlanner.ipynb shows how to use BOPlanner and results of BOPlanner.
More details of this work are available in our preprint "High-dimensional Automated Radiation Therapy Treatment Planning via Bayesian Optimization" .
This work is greatly inspired by the Raybay project.