4 %\documentclass[a4paper,11pt]{article}
6 \usepackage[T1]{fontenc}
7 \usepackage[utf8]{inputenc}
8 \usepackage{graphicx,subfigure,graphics}
10 %\usepackage[usenames]{color}
11 %\usepackage{latexsym,stmaryrd}
12 %\usepackage{amsfonts,amssymb}
13 \usepackage{verbatim,theorem,moreverb}
14 %\usepackage{float,floatflt}
15 \usepackage{boxedminipage}
21 \usepackage{algorithm}
22 \usepackage{algorithmic}
23 %\usepackage{floatfig}
27 \def\sfixme#1{\fbox{\textbf{FIXME: }#1}}
29 \newcommand{\fixme}[1]{%
31 \begin{boxedminipage}{.8\linewidth}
36 \newcommand{\FIXME}[1]{\marginpar[\null\hspace{2cm} FIXME]{FIXME} \fixme{#1}}
38 %\psfigurepath{.:fig:IMAGES}
39 \graphicspath{{.}{fig/}{IMAGES/}}
45 \title{Gridification of a Radiotherapy Dose Computation Application with the XtremWeb-CH Environment}
47 \author{Nabil Abdennhader\inst{1} \and Raphaël Couturier\inst{1} \and
48 Julien Henriet\inst{2} \and David Laiymani\inst{1} \and Sébastien Miquée\inst{1}
49 \and Marc Sauget\inst{2}}
51 \institute{Laboratoire d'Informatique de l'universit\'{e}
52 de Franche-Comt\'{e} \\
53 IUT Belfort-Montbéliard, Rue Engel Gros, 90016 Belfort - France \\
54 \email{raphael.couturier, david.laiymani, sebastien.miquee@univ-fcomte.fr}
56 FEMTO-ST, ENISYS/IRMA, F-25210 Montb\'{e}liard , FRANCE\\
58 %\email{\texttt{[delfabbro,laiymani,nicod,philippe]@lifc.univ-fcomte.fr}}}
67 %-------------INTRODUCTION--------------------
68 \section{Introduction}
70 The use of distributed architectures for solving large scientific problems seems
71 to become mandatory in a lot of cases. For example, in the domain of
72 radiotherapy dose computation the problem is crucial. The main goal of external
73 beam radiotherapy is the treatment of tumours while minimizing exposure to
74 healthy tissue. Dosimetric planning has to be carried out in order to optimize
75 the dose distribution within the patient is necessary. Thus, for determining the
76 most accurate dose distribution during treatment planning, a compromise must be
77 found between the precision and the speed of calculation. Current techniques,
78 using analytic methods, models and databases, are rapid but lack
79 precision. Enhanced precision can be achieved by using calculation codes based,
80 for example, on Monte Carlo methods. In [] the authors proposed a novel approach
81 based on the use of neural networks. The approach is based on the collaboration
82 of computation codes and multi-layer neural networks used as universal
83 approximators. It provides a fast and accurate evaluation of radiation doses in
84 any given environment for given irradiation parameters. As the learning step is
85 often very time consumming, in \cite{bcvsv08:ip} the authors proposed a parallel
86 algorithm that enable to decompose the learning domain into subdomains. The
87 decomposition has the advantage to significantly reduce the complexity of the
88 target functions to approximate.
90 Now, as there exist several classes of distributed/parallel architectures
91 (supercomputers, clusters, global computing...) we have to choose the best
92 suited one for the parallel Neurad application. The Global or Volunteer
93 computing model seems to be an interesting approach. Here, the computing power
94 is obtained by agregating unused (or volunteer) public resources connected to
95 the Internet. For our case, we can imagine for example, that a part of the
96 architecture will be composed of some of the different computers of the
97 hospital. This approach present the advantage to be clearly cheaper than a more
98 dedicated approach like the use of supercomputer or clusters.
100 The aim of this paper is to propose and evaluate a gridification of the Neurad
101 application (more precisely, of the most time consuming part, the learning step)
102 using a Global computing approach. For this, we focus on the XtremWeb-CH
103 environnement []. We choose this environnent because it tackles the centralized
104 aspect of other global computing environments such as XTremWeb [] or Seti []. It
105 tends to a peer-to-peer approach by distributing some components of the
106 architecture. For instance, the computing nodes are allowed to directly
107 communicate. Experimentations were conducted on a real Global Computing
108 testbed. The results are very encouraging. They exhibit an interesting speed-up
109 and show that the overhead induced by the use of XTremWeb-CH is very acceptable.
111 The paper is organized as follows. In section 2 we present the Neurad
112 application and particularly it most time consuming part i.e. the learning
113 step. Section 3 details the XtremWeb-CH environnement while in section 4 we
114 expose the gridification of the Neurad application. Experimental results are
115 presented in section 5 and we end in section 6 by some concluding remarks and
118 \section{The Neurad application}
122 \includegraphics[width=0.5\columnwidth]{figures/overlap.pdf}
123 \caption{Overlapping for a sub-network in a two-dimensional domain with ratio
128 The \emph{Neurad}~\cite{Neurad} project presented in this paper takes place in a
129 multi-disciplinary project , involving medical physicists and computer
130 scientists whose goal is to enhance the treatment planning of cancerous tumors
131 by external radiotherapy. In our previous
132 works~\cite{RADIO09,ICANN10,NIMB2008}, we have proposed an original approach to
133 solve scientific problems whose accurate modeling and/or analytical description
134 are difficult. That method is based on the collaboration of computational codes
135 and neural networks used as universal interpolator. Thanks to that method, the
136 \emph{Neurad} software provides a fast and accurate evaluation of radiation
137 doses in any given environment (possibly inhomogeneous) for given irradiation
138 parameters. We have shown in a previous work (\cite{AES2009}) the interest to
139 use a distributed algorithm for the neural network learning.
142 %RPROP algorithm with a HPU topology to do the training of our neural network.
144 In addition to the possibility to design a simple and efficient parallel
145 algorithm, the domain decomposition presents another important advantage in the
146 context of neural learning. It significantly reduces the complexity of the
147 target functions to approximate. Indeed, it is much easier to approximate a
148 function on a small interval than on a large one, especially if it contains
149 sharp variations. Thus, a better accuracy can even be expected on each
152 However, performing the learnings on sub-domains constituting a partition of the
153 initial domain is not satisfying according to the quality of the results. This
154 comes from the fact that the accuracy of the approximation performed by a neural
155 network is not constant over the learned domain. Thus, it is necessary to use
156 an overlapping of the sub-domains. The overall principle is depicted in
157 Figure~\ref{fig:overlap}. In this way, each sub-network has an exploitation
158 domain smaller than its training domain and the differences observed at the
159 borders are no longer relevant. Nonetheless, in order to preserve the
160 performances of the parallel algorithm, it is important to carefully set the
161 overlapping ratio $\alpha$. It must be large enough to avoid the border's
162 errors, and as small as possible to limit the size increase of the data subsets.
166 %% Je ne pense que cette partie soit nécessaire. Il faudrait essayer de %détailler la partie apprentissage d'un point de vue données en entrée et %données en sorties. Puis décomposition de ces données pour la parallélisation.
167 \subsection{Data description}
170 In the context of external radiotherapy, an essential parameter is the width of
171 the beam. The radiation result is directly dependant of this parameter. Indeed,
172 if the beam has a small width, it cannot reach the electronic balance and does
173 not present a tray as large as could be seen in Figure~\ref{f_tray} representing
174 the classical behavior for a deposit curve.
178 \includegraphics[width=0.7\columnwidth]{figures/testC.pdf}
179 \caption{Dose deposit by a photon beam of 24 mm of width in water (Normalised value). }
183 The evolution of the behaviour of the energy deposit during an irradiation is
184 shown in Figure~\ref{f_beam} which represents the energy deposit at different
185 depths for different widths of beam. The main characteristics of a dose deposit
186 curve are the regularity of the central part followed by the sharpness of the
187 beam sides. The main constraint in the scope of our work is the limited
188 tolerance about the final learning error.
192 \includegraphics[width=0.45\columnwidth]{figures/eau_02_to_24.pdf}
193 \includegraphics[width=0.45\columnwidth]{figures/ta6v4_02_to_24.pdf}
194 \caption{Dose deposits at the depth of 60 mm in water phantom and in ta6v4
195 (titanium) (Normalised value)}
199 Indeed, the neural network described here represents one tool in a very complex
200 chain of treatment for the global evaluation of the dose deposit in complex
201 environments. The use of the neural network is central in our overall project
202 and a too large error at this stage could imply that our final solution may be
203 out of the medical error tolerance.
207 \section{The XtremWeb-CH environment}
211 \section{Neurad gridification with XTremWeb-CH}
213 %The Neurad application can be divided into three parts. The first one
214 %aims at dividing data representing dose distribution on an area. This
215 %area contains various parameters, like the density of the medium and
216 %its nature. Multiple ``views'' can be superposed in order to obtain a
217 %more accurate learning.
219 As exposed before, we only focus in these works on the most time consuming part of Neurad i.e. the neural learning part.
220 These computations fit well with the model of the middleware -- all learning tasks execute in
221 parallel independently with their own local data part, with no
222 communication, following the fork-join model.
224 As described on Figure
225 \ref{fig:neurad_grid}, we first send the learning application and data
226 to the middleware (more precisely on warehouses (DW)) and create the
227 computation module. When a worker (W) is ready to compute, it requests
228 a task to execute to the coordinator (Coord.). This latter assigns it
229 a task. The worker retrieves the application and its assigned data,
230 and can start the computation. At the end of the learning process, it
231 sends the result, a weighted neural network which will be used in a
232 dose distribution process, to a warehouse. The last step of the
233 application is to retrieve these results and exploit them.
238 \includegraphics[width=7cm]{figures/neurad_gridif}
239 \caption{Neurad gridification}
240 \label{fig:neurad_grid}
244 \section{Experimental results}
248 \section{Conclusion and future works}
252 \bibliographystyle{plain}
253 \bibliography{biblio}