planning:userguide:tutorials:finding_optimal_plan
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
planning:userguide:tutorials:finding_optimal_plan [2017/01/20 22:53] – [Dose Display Normalization] kerhart | planning:userguide:tutorials:finding_optimal_plan [2021/07/29 18:28] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Astroid Optimization ====== | + | ====== Astroid Optimization |
- | With IMRT plans the variety of possible dose distributions is quite large. Typically if a physician does not like an IMRT plan they will request | + | With intensity modulated PBS treatment |
- | // | + | |
+ | // | ||
+ | | ||
+ | ===== Optimizer Algorithm Selection ===== | ||
+ | |||
+ | The user is able to select the MCO optimization algorithm from a list defined in the site configuration settings. The default option is the first algorithm in this site level list of pluggable_functions designated with the mco_optimizer key. | ||
+ | |||
+ | As of Planning 2.3.2 the available optimizers are Art3+O and Nymph. Both optimizers use the same constraints and objectives. However Nymph does not use a separate feasibility stage and has it built in to the optimization step. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | ===== PBS Fraction Groups ===== | ||
+ | |||
+ | {{page> | ||
+ | |||
+ | ===== Optimization Constraints ===== | ||
+ | |||
+ | ==== About Constraints ==== | ||
+ | |||
+ | // | ||
+ | |||
+ | It should be noted that all constraints are considered "hard limits" | ||
+ | |||
+ | The following constraint types are available. Note certain constraints are available only for //Target// type structures. | ||
+ | * **Min**: The minimum dose the structure must receive | ||
+ | * **Max**: The maximum dose the structure may receive | ||
+ | * **Min Mean**: The minimum mean dose a structure must receive | ||
+ | * This will drive the dose up across the structure | ||
+ | * **Max Mean**: The maximum mean dose a structure may receive | ||
+ | * This will limit the mean dose across the structure | ||
+ | * **Overdose**: | ||
+ | * This will limit the total volume-weighted overdose (dose above a given threshold) that a structure receives, driving down hot spots | ||
+ | * **Underdose**: | ||
+ | * This will limit the total volume weighted underdose (dose below a given threshold) that a structures, driving up cold spots | ||
+ | * **Hot Spot Vol**: The maximum mean dose to the hottest portion of a structure (//not available for ART3+O optimizer// | ||
+ | * This will keep the mean dose to the hottest portion of a structure below the given limit; portion is set as a % vol and the limit is the max mean dose allowed to that portion of the structure | ||
+ | * **Cold Spot Vol**: The minimum mean dose to the coldest portion of a structure (//not available for ART3+O optimizer// | ||
+ | * This will keep the mean dose to the coldest portion of a structure above the given limit; portion is set as a % vol and the limit is the min mean allowed to that portion of the structure | ||
+ | |||
+ | The user can choose to apply one or multiple of these constraints to any number of structures. | ||
+ | |||
+ | ==== Working with Constraints ==== | ||
+ | |||
+ | === Working with Fraction Group and Target/Beam Set Constraints === | ||
+ | |||
+ | |||
+ | // | ||
+ | |||
+ | - Select the //Fraction Group// if it has been created or create a new one by clicking //Create New Fraction Group// | ||
+ | - Choose the prescription, | ||
+ | - Choose the type of treatment (SFO, IMPT, Advanced) and target {{ : | ||
+ | - Choose the //Beams// to be treated | ||
+ | - Choose the //Target// to be treated | ||
+ | - Assign the dose constraints to the //Target// | ||
+ | - The assigned constraint doses at this level will be divided evenly among the //Beams// to the //Target//, which allows for quick creation of SFO treatments {{ : | ||
+ | |||
+ | |||
+ | |||
+ | === Working with Plan Constraints === | ||
+ | // | ||
+ | - Open the // | ||
+ | - Choose from the drop down the structure or structures to which constraints should be added | ||
+ | - Define what constraint(s) should be applied to each structure by choosing the constraint and entering the dose | ||
+ | - Follow this and enter the constraints for all applicable structures. {{ : | ||
+ | - When finished click the //OK// button. | ||
+ | - Once all the Constraints have been set the user can either start the Feasibility by choosing // | ||
| | ||
===== Feasibility and Constraints ===== | ===== Feasibility and Constraints ===== | ||
- | After the //constraints// have been entered, the user may start the // | + | After the //Constraints// have been entered, the user may start the // |
- | The user also needs to be aware of the impact of //constraints// being set on //Fraction Group// level versus the //Plan// level. For example, it is possible to have a //constraint// set in the //Plan// level so that the whole dose to an OAR is given on one day and none on the other day. This could happen when there are two //Fraction Groups// and the OAR dose is not split between the two by using Fraction Group level constraints. | + | The user also needs to be aware of the impact of //Constraints// being set at the //Fraction Group// level versus the //Plan// level. For example, it is possible to have a //Constraint// set in the //Plan// level so that the whole dose to an OAR is given on one day and none on the other day. This could happen when there are two //Fraction Groups// and the OAR dose is not split between the two by using Fraction Group level constraints. |
+ | ===== Optimization Objectives ===== | ||
+ | // | ||
+ | The following objective selections are available in Astroid: | ||
+ | * **min_max**: | ||
+ | * **max_min**: | ||
+ | <WRAP 1000px center>< | ||
+ | * **min_mean**: | ||
+ | * **max_mean**: | ||
+ | * **min_overdose**: | ||
+ | * Dose will be driven down only until the specified limit is reached (this is often more relevant that min_max, since it may not be beneficial to continue minimizing beyond a certain dose level) | ||
+ | * **min_underdose**: | ||
+ | * Dose will be driven up only until the specified limit is reached (this is often more relevant that max_min, since it may not be beneficial to continue maximizing beyond a certain dose level) | ||
+ | <WRAP 920px center>< | ||
+ | * **min_hot_spot**: | ||
+ | * The mean dose to the hottest portion of a structure will be driven down (i.e. the tail dose on the DVH); portion is set as a % vol of the structure | ||
+ | * **min_cold_spot**: | ||
+ | * The mean dose to the coldest portion of a structure will be driven up (i.e. the shoulder dose on the DVH); portion is set as a % vol of the structure | ||
+ | |||
+ | ==== Working with Objectives ==== | ||
+ | - Open the // | ||
+ | - Choose a structure to which you wish to apply objectives | ||
+ | - Check the boxes to activate the desired objectives for the structure and then set the dose level if applicable | ||
+ | <WRAP center> | ||
+ | |||
+ | Once all the // | ||
Line 19: | Line 109: | ||
===== Running the Optimizer ===== | ===== Running the Optimizer ===== | ||
- | The // | + | The // |
- | * The number of points in the calculation grid (linear impact) | + | * The number of points in the calculation grid |
- | * The total number of spots from all beams (linear impact) | + | * The total number of spots from all beams |
- | * The number of objectives (quadratic impact) | + | The number of calculation points and number |
- | The number of calculation points and number spots will have a direct | + | |
+ | * 1-16 objectives: a single 16 core calculation will be issued, with an objective being run on each core | ||
+ | * 16-32 objectives: a single 32 core calculation will be issued, with an objective being run on each core | ||
+ | * >32 objectives: a single 32 core calculation will be issued, and the server will be responsible for balancing the load to achieve full CPU utilization | ||
+ | |||
+ | Understanding this pattern is important, as it can be seen that using less than 16 objectives generally will have minimal impact on MCO run-time and no impact on resource usage. Using between 17-32 objectives will use additional resources, but generally not impact run-time, but using >32 objectives will increase the MCO run-time without using additional resources. | ||
Once all the desired // | Once all the desired // | ||
Line 29: | Line 124: | ||
- | FIXME Discuss how to check progress (put in later when progress widget done) | + | During the calculation process the user may check to see the status of the calculations. The example below shows a Feasibility calculation that is 4% complete. As calculations finish the user will notice this number increasing. {{ : |
+ | By clicking on //Show Details// a detailed list of what calculations have been finished and which are running will be displayed. In the example below the dij's are completed and the Feasibility is currently running. In the detailed view if the user chooses //show completed subcalculations// | ||
===== Dose Normalization and Display ===== | ===== Dose Normalization and Display ===== | ||
- | The user has many options for how the dose is displayed. The options for controlling the display of the dose are on the right hand side of the display under //Dose Options//. The //Dose Options// provide controls over the DVH type (relative or absolute volume), the colors and scaling of the display dose, and the type of dose display shown (colorwash, isolines, or isobands). | + | The user has many options for how the dose is displayed |
==== Dose Volume Histogram (DVH) ==== | ==== Dose Volume Histogram (DVH) ==== | ||
- | The planner has the option of viewing the dose for the DVH in relative volume (dose per percentage of the volume) or in absolute volume (dose per cc of the structure) using the //Absolute DVH// option. The user may also hover over any area of the DVH curve to obtain the dose and percentage of a given structure or click on a line to obtain | + | === Relative and Absolute DVH === |
+ | |||
+ | The planner has the option of viewing the dose for the DVH in relative volume (dose per percentage of the volume) or in absolute volume (dose per cc of the structure) using the //Absolute DVH// option. The user may also hover over any area of the DVH curve to obtain the dose and percentage of a given structure or click on one or more lines to start tracking the cursor value for the lines. | ||
<WRAP center box> | <WRAP center box> | ||
- | {{: | + | {{: |
+ | === Dual Dose DVH === | ||
- | ==== Dose Display Normalization ==== | + | The planner has the option of viewing the original MCO dose and the currently navigated MCO dose in the DVH graph. By selecting the //Show Secondary Doses// option under the Dose Options, the DVH graph will display the following doses: |
+ | * **Dotted Line:** Original un-navigated dose. | ||
+ | * **Solid Line:** Current navigated dose based on the position of the MCO sliders. | ||
+ | With the //Show Secondary Doses// option disabled, only the current navigated dose will be displayed within the DVH graph. | ||
- | As in the DVH the user has multiple options for displaying the dose. The dose can be displayed in either relative (percentage) or absolute. This can be chosen by using the drop down menu under //Levels//. If the user chooses to view dose in relative mode they must then enter the 100% line dose- usually the prescription dose. The percentage isodose lines that the user wants to see must then be entered. If the user chooses to view absolute dose they need to choose absolute from the drop down and then enter the dose lines that they want to see. | + | {{ : |
+ | ==== Dose Display Normalization ==== | ||
- | The user also can choose to view the isodose as either isobands, isolines, color wash or combinations of these. The user may use the sliders to set the opacity for each of these as well. They may also choose the line width and whether it is solid, dashed or dotted for isolines. | ||
+ | As in the DVH the user has multiple options for displaying the dose. The user may change the percentage isodose line and its corresponding Gy they would like displayed. This is done by entering the appropriate numbers in the boxes under //Levels//. The user may turn on and off specific levels by clicking on the //X// to the left of the line. | ||
+ | The user also can choose to view the dose as either isobands, isolines, color wash or combinations of these. The user may use the sliders to set the opacity for each of these as well. They may choose the line width and whether it is solid, dashed or dotted for isolines. | ||
+ | {{ : | ||
- | {{ : | + | In the case of a plan with multiple //Fraction Groups// the user may choose to view the dose: |
+ | - In a composite dose- //Full Plan//- which will take into account all //Fractions groups// | ||
+ | - For a particular //Fraction Group// or | ||
+ | - For an individual beam | ||
+ | To pick one of the above the user must choose from the dropdown list under //Scope//. The //Scope// automatically defaults to //Full Plan// | ||
- | Note: When in a sliced image display containing dose, slice scrolling will be based on the smallest voxel size of the calculation grid. For any sliced image displays that do not show dose scrolling positions will be based on the CT image slices | + | Note: When in a sliced image display containing dose, slice scrolling |
- | == Isobands == | + | ==== Isobands |
Isobands are an interpolation of dose from isodose line to isodose line. Isobands take a range of interpolated dose and fills it in with color. | Isobands are an interpolation of dose from isodose line to isodose line. Isobands take a range of interpolated dose and fills it in with color. | ||
- | {{ : | + | {{ : |
- | == Isoline == | + | ==== Isoline |
- | Isoline | + | Isolines |
- | {{ : | + | {{ : |
- | == Color Wash == | + | ==== Color Wash ==== |
- | Color Wash demonstrates | + | Color Wash shows the raw dose across |
- | {{ : | + | {{ : |
- | == Combination == | + | ==== Combination |
- | The user does have the ability to combine multiple representations. Below shows a combination of Isobands and Isolines | + | The user does have the ability to combine multiple representations. Below shows a combination of Isobands and Isolines. |
+ | |||
+ | {{ : | ||
- | {{ : | ||
=====Navigating the Solutions ===== | =====Navigating the Solutions ===== | ||
Once the plan has been calculated the // | Once the plan has been calculated the // | ||
- | The Navigation Sliders should provide an intuitive process for finding the optimal plan, but by gaining a complete understanding of the Navigation Sliders users will be better equipped to quickly reach their plan goals. On each slider there are two vertical bars. The thick white bar is the user controlled slider handle and it represents the worst value of an objective that the user wants to allow (note sliders for minimize objectives will slide to the left and sliders for maximize objectives will slide to the right). Simply stated, the objective will not go past this limit. The thin blue bar denotes the actual current value of the objective. Astroid calculates this value by balancing the solution over the available ranges of each objective. It should now be clear that moving a slider does **not** directly set an objective, but rather it places limits on the allowable range of an objective. It is this feature that makes navigating the solution space very clear and effective. | + | The Navigation Sliders should provide an intuitive process for finding the optimal plan, but by gaining a complete understanding of the Navigation Sliders users will be better equipped to quickly reach their plan goals. It should also be noted that sliders for minimize objectives will slide to the left and sliders for maximize objectives will slide to the right. On each slider there are two vertical bars. The thick white bar is the user controlled slider handle and it represents the worst value of an objective that the user wants to allow. Simply stated, the objective will not go past this limit. The thin blue bar denotes the actual current value of the objective. Astroid calculates this value by balancing the solution over the available ranges of each objective. It should now be clear that moving a slider does **not** directly set an objective, but rather it places limits on the allowable range of an objective. It is this feature that makes navigating the solution space very clear and effective. |
- | {{ : | + | {{ : |
- | The blue and white numbers to the upper right of each slider correlate to the objective value for the current plan and the objective limit based on the slider position, respectively. | + | The blue and white numbers to the upper right of each slider correlate to the objective value for the current plan and the objective limit based on the slider position, respectively. |
- | FIXME Add some details of how to adjust and why (need to discuss with MGH??) | ||
All of these adjustments are able to be done without running a new plan as would needed to be done in traditional treatment planning systems. This allows the user to look at many different solutions in a short amount of time. | All of these adjustments are able to be done without running a new plan as would needed to be done in traditional treatment planning systems. This allows the user to look at many different solutions in a short amount of time. | ||
- | If the user does not like the adjustments | + | If the user likes the adjustments |
- | + | ||
- | {{ : | + | |
- | + | ||
- | + | ||
- | + | ||
- | + |
planning/userguide/tutorials/finding_optimal_plan.1484952824.txt.gz · Last modified: 2021/07/29 18:24 (external edit)