optimizacion en imrt

20
Optimización en IMRT Armando Alaminos Bouza MEVIS Informática Médica LTDA. CEPRO – São Paulo, Brasil PTV en “C” !!

Upload: armando-alaminos-bouza

Post on 21-Jul-2015

339 views

Category:

Health & Medicine


2 download

TRANSCRIPT

Optimización en IMRT

Armando Alaminos Bouza

MEVIS Informática Médica LTDA.

CEPRO – São Paulo, Brasil

PTV en “C” !!

La planificación de Radioterapia de Intensidad Modulada ( IMRT )

conduce a procesos de optimización en más de una etapa. Las fases

que generan situaciones de optimización suelen ser :

• Optimización de mapas de flujo para cada campo.

• Segmentación óptima para Step & Shot.

• Esquemas de ruta/velocidad óptima para Sliding Window.

• Optimización de la topografía de moduladores sólidos.

• Posible optimización del número y ángulos de campo.

En esta presentación vamos a centrarnos en una posibleimplementación de la optimización de los mapas de flujo.

Nos proponemos mostrar de forma clara como es el algoritmo que

conduce a los mapas de intensidad de flujo para cada campo.

Algoritmos presentes en los programas para planificación inversa con modulación de intensidad

(IMRT).

- La planificación inversa se implementa como un proceso de optimización de los parámetros

para cada haz de radiación. Cada conjunto de parámetros define un posible tratamiento para

ser evaluado y comparado con los otros posibles.

- La función que mide la calidad del tratamiento se denomina “función objetivo”. La función

objetivo expresa numericamente la distancia entre la distribución de dosis “deseada” y la

alcanzada por el plan que está siendo probado.

- En IMRT los haces de radiación tienen un perfil de fluencia complejo, generalmente dividido en

pequeños sub-haces (“beamlet”), cuya distribución de intensidades debe ser investigada hasta

conseguir el mejor resultado de la función objetivo.

- Un problema típico de planificación inversa (7 campos de 100 cm2 cada) debe optimizar 700

intensidades. Dicho de otra forma: buscar un extremo de la función objetivo en un espacio de

700 dimensiones.

- Métodos de optimización empleados:mínimos cuadrados iterativos.

Powell, Downhill-simplex, Simulated annealing.

Davidon-Fletcher-Powell (en general , con evaluación de derivadas).

programación lineal.

entre otros, todos con virtudes y fragilidades.

El problema inverso de la RT no tiene solución analítica y debe ser

formulado como una optimización, computacionalmente costosa.

Posibles formas de optimización automática :

1. Optimiza un número de aperturas por campo del Sistema Colimador /

MLC (DAO).

2. Optimiza el mapa de flujo de cada campo, considerando al campo como un conjunto de mini-haces que llamamos “beamlet”.

El método DAO (Direct Aperture Optimization) usualmente se implementa como Simulated Annealing, pues el universo de posibles soluciones a

explorar es gigantesco y nosotros no necesitamos el óptimo absoluto,

apenas uno suficientemente bueno.

El DAO tiene una ventaja para el uso en MLC, en el solo hay una etapa ,

pues las aperturas posibles se eligen entre las que sean físicamente posibles

para el MLC

En esta charla vamos a concentrarnos en el método 2, basado en “Beamlets”.

Formulación del modelo de distribución de dosis a partir de “Beamlets”

o Pencil Beam finitos.

Plano axial con secciones

del PTV (cóncavo) y OARs.

Algunos puntos de control

como ilustración, la

densidad de puntos de

control es mucho mayor.

Ilustración de la

contribución de dosis de

una serie de “beamlets”

sobre los puntos de control.

Todos los beamlets con

igual peso (no modulados)

Integración de

contribuciones de todos los

beamlets. Con todos los

pesos iguales, es decir

campo sin modulación de

intensidad.

El cálculo del aporte de dosis por parte de un beamlet a un punto de

control puede realizarse con diversos algoritmos: Monte Carlo, CCC o Pencil Beam de sección finita. Los resultados que mostraremos utilizan el

modelo de Pencil Beam divergente y finito.

Con el modelo anterior de Beamlets la dosis depositada en cualquier punto

puede calcularse como la sumatoria de los aportes de todos los beamlets al

punto de interés.

Si a cada beamlet lo identificamos por un índice m y a cada voxel de

control de dosis le atribuimos el índice n, podemos calcular y almacenar que

fracción de la energía recibida por cada beamlet se le entrega a cada

voxel de control.

Wnm - fracción de energía del beamlet m al punto n.

Los valores de Wnm se pueden almacenar en forma de matriz .

De esta forma podemos calcular la dosis en cualquier voxel de

control como :

𝐷𝑛 =

𝑗=1

𝑀

𝑊𝑛𝑗 ∗ 𝐼𝑗

Donde M es el número total de beamlets en el tratamiento. Ij es la energía

inicial recibida por el beamlet j en un plano de referencia.

Ahora ya podemos evaluar la dosis administrada a cualquier voxel de control

de una forma muy rápida.

¿ Como evaluar la calidad de un plan que pertence al universo de soluciones

posibles ?

Debemos crear una métrica que exprese la distancia entre la distribución de

dosis deseada por el médico y la distribución alcanzada por el plan siendo

evaluado. Esta métrica puede incluir parámetros físicos (dosis) y

radiobiológicos.

Esta métrica usualmente se denomina como “función objetivo”, como es usual

en los problemas de optimización.

En optimización de IMRT generalmente queremos minimizar la función objetivo,

por la forma en que ella se formula (como distancia a un plan ideal).

F = rα EPTV + rβ EOAR + rμ EOHT

donde :

EPTV = 1/N Σ (Dci - Dpi)2i

EOAR = 1/N Σ [ ( Dci > Dpi) ? (Dci - Dpi)2 : 0.0 ]

EOHT = 1/N Σ [ ( Dci > Dpi) ? (Dci - Dpi)2 : 0.0 ]

Función objetivo articulada, ejemplo.

Restricciones físicas del problema :

Los valores de fluencia relativa son no negativos. En la práctica

las fluencias están acotadas, pues la modulación de intensidad enfrenta

limitaciones físicas.

Cada punto del dominio que el método de optimización

investiga genera una evaluación de la función objetivo

y un chequeo de las restricciones.

La función objetivo puede contener también métricas basadas en:

• Histograma Dosis Volumen (DVH) para cada estructura de interés.

• Limitaciones físicas, tales como límites al gradiente de flujo.

Los elementos incluidos en la función objetivo pueden tornar el problema

cada vez más complejo de optimizar globalmente pues se introducen

más concavidades al comportamiento de la función en el dominio de

soluciones.

Para funciones objetivo complejas los métodos de optimización basados

solo en gradiente de la función pueden resultar insuficientes por no lograr

salir de mínimos locales. En estos casos métodos como el “simulated

annealing” pueden ayudar, al costo de mayores tiempos de

convergencia.

d1

d2

d3

.

.

.

dm

w11 w12 w13 . . . w1n

w21 w22 w23 . . . W2n

w31 w32 w33 . . . w3n

.

.

.

wm1 wm2 wm3 . . . wmn

I1

I2

I3

.

.

.

In

= •

Cual es el costo de evaluar la distribución de dosis para <m> puntos de control en

un plan con <n> beamlets ?

del modelo matricial anterior se deduce que son necesarias (como mínimo) :

multiplicaciones : m * n

adiciones : m * (n -1)

memory read : (m * n) + n

memory write : m

Por que investigamos en algoritmos e implementaciones para minimizar el tiempo de cálculo ?- La planificación de IMRT aún es un proceso de “prueba y error” en que varios parámetros deben ser

ajustados hasta alcanzar un plan clinicamente satisfactorio. Sin un programa rápido no se consigue un

ambiente interactivo para planificación inversa (Crooks, Xing; I.J. Radiat. Oncol. Biol Phys. 2002).

- Otros parámetros pueden investigarse automáticamente si la optimización para modulación de

intensidad es suficientemente rápida. Por ejemplo la selección del número y angulación de los campos

( Gaede, Wong, Rasmussen; “An algorithm for systematic selection of beam directions for IMRT”, Med.

Phys. 31 (2) 2004 ).

¿ Como optimizamos las implementaciones de IMRT ?

• Procesamiento en paralelo, conocido como multithread. Dividimos la ejecución

de una tarea en varias sub-tareas. Podemos paralelizar la multiplicación matriz

por vector, pues esa matriz tiene usualmente dimensión de 780x65000, es decir 50

millones de elementos, mientras que el vector es de 65000 elementos. Ya he visto

casos con 7 o más campos grandes tener matrices cercanas a 2 GB! Esto lo

favorecen las arquitecturas de multinúcleos (multicores) y el hyper-threading.

También puede emplearse procesamiento en GPU o Xeon Phi, que generan

multithread masivo, es decir cientos o miles de threads.

• Es necesario adaptar el algoritmo para explotar estos recursos. Procesamiento

vectorial de con las instrucciones SSEx y AVX, presentes en CPUs de INTEL y AMD.

Usando compiladores capaces de explotar el recurso.

• Emplear en forma óptima la memoria llamada cache (L1 a L3). En la matriz del

modelo de IMRT y en sus puntos de control y constrains empleamos mucho más

espacio de direcciones que la capacidad de la L3, por ello necesitamos una

estrategia que maximice los “cache hits”. O programar con cuidado o emplear

bibliotecas optimizadas como MLK (INTEL), cuBLAS o CULA (estas de Nvidia).

Recomendaciones para la estación de trabajo destinada a IMRT:

• Memoria RAM amplia y lo más rápida posible. 8 GB o mayor.

• Sistema operacional de 64 bits, para poder explotar espacio de

direcciones superior a 4 GB.

• Múltiples núcleos para procesamiento y tecnología hyper-threading.

Caso con PTV en forma de una letra “H”, lo que

configura un volumen cóncavo. OARs anterior y

posterior, invadiendo parcialmente las concavidades.

9 campos. Genera 1824 beamlets efectivos, con 16004

puntos de control. Sólo la matrix de wik ocupa 116

MegaBytes ! El tiempo de acceso a memoria no es

despreciable.

Tomado de: Haas Olivier, “Radiotherapy Treatment

Planning, New System Approaches”, Springer-

Verlag, 1999. Página 111.)

Caso 1: Solución de un problema “benchmark”.

Solución de Haas (*) en blanco y negro. Solución del CAT3D

en figuras coloridas.

NOTA : Puede demostrarse que, en la ausencia de

modulación de intensidad es posible producir planes

conformados que se ajusten a PTVs convexos, utilizando

suficientes haces. Para el caso de PTVs con superficies

concavas, sólo puede conseguirse buena conformación de la

dosis empleando modulación de intensidad.

(*) Haas Olivier, “Radiotherapy Treatment Planning, New

System Approaches”, Springer-Verlag, 1999. Página 25.

Caso 1: Solución de un problema “benchmark”.

Caso 2: Tratar cuerpo vertebral, protegiendomédula. Fig a. - método CLS, de Crooks and Xing. SGI O2, R5000, t ~ 1 min, beamlets 10x10mm (*)

Fig b. - CORVUS (Nomos Corporation), motherboard con 4 pentiums pro en paralelo, 400MHz cada. t ~ 30 min . (*)

Figura a derecha : CAT3D, Pentium HT 3.0GHz.512 MB, t ~ 20s . Beamlets de 8x8mm

(*) Application of

constrained least-square

technique to IMRT treatment

planning. Int. J. Radiation

Oncol. Biol. Phys, vol. 54,

no.4, 2002. Crooks and

Xing, Dept. Radiat. Oncol.,

Stanford Univ. School of

Medicine, CA.

Caso 2: Detalles de tres planos diferentes de la solución con 9 campos. 295 beamlets de

8x8mm. Considera radiación dispersa. PTV = 100, W=1.0; Médula < 30, W=0.6; OHT < 43,

W=0.5

Tratamiento de los pesos y las prioridades:

• El peso de un OAR muy próximo al PTV,

necesariamente deteriorará la cobertura del PTV. Por

eso, comience con peso muy bajo y aumente solo

hasta pasar su constrain.

• Lo mismo ocurre con el peso de OHT, si es muy alto

deteriora el borde del PTV. Comience con peso muy

bajo y aumente hasta evitar regiones calientes

importantes fuera del PTV.

• La prioridad le permite decidir que condición toma el

programa en caso de colisión del volúmenes., ejemplo

si el PTV invade a un OAR.

• La penalización de gradiente impone un límite realista

a su capacidad física de modular, sea con MLC o con

moduladores.

Pero este proceso funciona como “prueba y error”.

No hay una receta mágica que siempre sea feliz.

La tabla de parámetros anteriores corresponde a este ejemplo

Caso de un PTV en forma de “C” con OAR interno

Superficie de 97%

(este es un caso extremo, pero es un buen caso de prueba para sondear nuestro TPS)

Pencil Beam integration Collapsed Cone Convolution/Superposition

Optimizamos flujo con un algoritmo. Podemos calcular la distribución de dosis con otro :

Conclusiones :

• La optimización de flujo para IMRT exige mucho tiempo en exploración de

soluciones para el equipo de radioterapia (médico + físico + dosimetrista).

• No es posible lograr “cualquier” distribución de dosis. Las restricciones físicas

imponen barreras a nuestros deseos (flujo no negativo, dosis dispersa, etc).

• Si comprendemos como funciona nuestro TPS al optimizar flujo seremos más

capaces y rápidos para alcanzar buenos planes.

• Debemos conocer nuestro TPS para entender como responde ante los

cambios de parámetros de optimización.

• Además de optimizar flujo podemos mejorar, a mano, otros parámetros,

como ángulos de gantry, número de campos, etc. Para ello nuestro TPS debe

ser rápido.

• Nuestro TPS será más rápido si contamos con una estación bien poderosa

para ejecutar la optimización de IMRT. Comparar los tiempos de dos TPS que

disponen de diferentes hardware va a conducirnos a errores de apreciación.

• En IMRT el control de calidad tiene que ser muy riguroso.

Muchas gracias