<?xml version="1.0" encoding="ISO-8859-1"?><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<front>
<journal-meta>
<journal-id>1909-9762</journal-id>
<journal-title><![CDATA[Revista Ingeniería Biomédica]]></journal-title>
<abbrev-journal-title><![CDATA[Rev. ing. biomed.]]></abbrev-journal-title>
<issn>1909-9762</issn>
<publisher>
<publisher-name><![CDATA[Fondo Editorial EIA, Escuela de Ingeniería de Antioquia EIA-, Universidad CES]]></publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id>S1909-97622010000200006</article-id>
<title-group>
<article-title xml:lang="en"><![CDATA[GENERAL ALGORITHMS FOR LAPAROSCOPIC SURGICAL SIMULATORS]]></article-title>
<article-title xml:lang="en"><![CDATA[ALGORITMOS GENERALES PARA SIMULADORES DE CIRUGÍA LAPAROSCÓPICA]]></article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Diaz]]></surname>
<given-names><![CDATA[Christian]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Trefftz]]></surname>
<given-names><![CDATA[Helmuth]]></given-names>
</name>
<xref ref-type="aff" rid="A02"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Bernal]]></surname>
<given-names><![CDATA[Jorge]]></given-names>
</name>
<xref ref-type="aff" rid="A03"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Eliuk]]></surname>
<given-names><![CDATA[Steven]]></given-names>
</name>
<xref ref-type="aff" rid="A04"/>
</contrib>
</contrib-group>
<aff id="A01">
<institution><![CDATA[,EAFIT University  ]]></institution>
<addr-line><![CDATA[Medellin ]]></addr-line>
<country>Colombia</country>
</aff>
<aff id="A02">
<institution><![CDATA[,EAFIT University Virtual Reality Laboratory ]]></institution>
<addr-line><![CDATA[Medellin ]]></addr-line>
<country>Colombia</country>
</aff>
<aff id="A03">
<institution><![CDATA[,CES University Laparoscopic Surgery Research Group ]]></institution>
<addr-line><![CDATA[Medellin ]]></addr-line>
<country>Colombia</country>
</aff>
<aff id="A04">
<institution><![CDATA[,University of Alberta Advanced Man Machine Interface Laboratory ]]></institution>
<addr-line><![CDATA[Edmonton ]]></addr-line>
<country>Canada</country>
</aff>
<pub-date pub-type="pub">
<day>00</day>
<month>12</month>
<year>2010</year>
</pub-date>
<pub-date pub-type="epub">
<day>00</day>
<month>12</month>
<year>2010</year>
</pub-date>
<volume>4</volume>
<numero>8</numero>
<fpage>57</fpage>
<lpage>70</lpage>
<copyright-statement/>
<copyright-year/>
<self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_arttext&amp;pid=S1909-97622010000200006&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_abstract&amp;pid=S1909-97622010000200006&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_pdf&amp;pid=S1909-97622010000200006&amp;lng=en&amp;nrm=iso"></self-uri><abstract abstract-type="short" xml:lang="en"><p><![CDATA[Recent advances in fields such as modeling of deformable objects, haptic technologies, immersive technologies, computation capacity and virtual environments have created the conditions to offer novel and suitable training tools and learning methods in the medical area. One of these training tools is the virtual surgical simulator, which has no limitations of time or risk, unlike conventional methods of training. Moreover, these simulators allow for the quantitative evaluation of the surgeon performance, giving the possibility to create performance standards in order to define if the surgeon is well prepared to execute a determined surgical procedure on a real patient. This paper describes the development of a virtual simulator for laparoscopic surgery. The simulator allows the multimodal interaction between the surgeon and the surgical virtual environment using visual and haptic feedback devices. To make the experience of the surgeon closer to the real surgical environment a specific user interface was developed. Additionally in this paper we describe some implementations carried out to face typical challenges presented in surgical simulators related to the tradeoff between real-time performance and high realism; for instance, the deformation of soft tissues are simulated using a GPU (Graphics Processor Unit) -based implementation of the mass-spring model. In this case, we explain the algorithms developed taking into account the particular case of a cholecystectomy procedure in laparoscopic surgery.]]></p></abstract>
<abstract abstract-type="short" xml:lang="es"><p><![CDATA[Recientes avances en áreas tales como modelación computacional de objetos deformables, tecnologías hápticas, tecnologías inmersivas, capacidad de procesamiento y ambiente virtuales han proporcionado las bases para el desarrollo de herramientas y métodos de aprendizaje confiables en el entrenamiento médico. Una de estas herramientas de entrenamiento son los simuladores quirúrgicos virtuales, los cuales no tienen limitaciones de tiempo o riesgos a diferencia de los métodos convencionales de entrenamiento. Además, dichos simuladores permiten una evaluación cuantitativa del desempeño del cirujano, dando la posibilidad de crear estándares de desempeño con el fin de definir en qué momento un cirujano está preparado para realizar un determinado procedimiento quirúrgico sobre un paciente. Este artículo describe el desarrollo de un simulador virtual para cirugía laparoscópica. Este simulador permite la interacción multimodal entre el cirujano y el ambiente virtual quirúrgico usando dispositivos de retroalimentación visual y háptica. Para hacer la experiencia del cirujano más cercana a la de una ambiente quirúrgico real se desarrolló una interfaz cirujano-simulador especial. Adicionalmente en este artículo se describen algunas implementaciones que solucionan los problemas típicos cuando se desarrolla un simulador quirúrgico, principalmente relacionados con lograr un desempeño en tiempo real mientras se sacrifica el nivel de realismo de la simulación: por ejemplo, la deformación de los tejidos blandos simulados usando una implementación del modelo masa-resorte en la unidad de procesamiento gráfico. En este caso se describen los algoritmos desarrollados tomando en cuenta la simulación de un procedimiento laparoscópico llamado colecistectomía.]]></p></abstract>
<kwd-group>
<kwd lng="en"><![CDATA[Medical training]]></kwd>
<kwd lng="en"><![CDATA[Minimally invasive surgery]]></kwd>
<kwd lng="en"><![CDATA[Surgical simulation]]></kwd>
<kwd lng="en"><![CDATA[Virtual reality]]></kwd>
<kwd lng="es"><![CDATA[Entrenamiento médico]]></kwd>
<kwd lng="es"><![CDATA[cirugía mínimamente invasiva]]></kwd>
<kwd lng="es"><![CDATA[simulación quirúrgica]]></kwd>
<kwd lng="es"><![CDATA[realidad virtual]]></kwd>
</kwd-group>
</article-meta>
</front><body><![CDATA[  <font face="verdana" size="2">          <p align="center"><font size="4"><b>GENERAL ALGORITHMS FOR LAPAROSCOPIC SURGICAL SIMULATORS</b></font></p>     <p align="center"><font size="3"><b>ALGORITMOS GENERALES PARA SIMULADORES DE CIRUG&Iacute;A LAPAROSC&Oacute;PICA</b></font></p>     <p>&nbsp;</p>     <p><b>Christian Diaz<sup>1</sup>, Helmuth Trefftz<sup>2</sup>, Jorge Bernal<sup>3</sup>, Steven Eliuk<sup>4</sup></b></p>          <p><i>1 PhD candidate, Virtual Reality Laboratory, EAFIT University, Medellin, Colombia. <a href="mailto:cdiazleo@eafit.edu.co">cdiazleo@eafit.edu.co</a>.    <br>   2 Associated Professor, Virtual Reality Laboratory, EAFIT University, Medellin, Colombia.    <br>   3 Director, Laparoscopic Surgery Research Group, CES University, Medellin, Colombia.    <br> 4 PhD candidate, Advanced Man Machine Interface Laboratory (AMMi), University of Alberta, Edmonton, Canada.</i></p>     <p>Received November 25, 2010. Accepted December 29, 2010</p> <hr size="1" />              ]]></body>
<body><![CDATA[<p>&nbsp;</p>     <p><b><font size="3">ABSTRACT</font></b></p>     <p>Recent advances in fields such as modeling of deformable objects, haptic technologies, immersive technologies,   computation capacity and virtual environments have created the conditions to offer novel and suitable training tools and learning methods   in the medical area. One of these training tools is the virtual surgical simulator, which has no limitations of time or risk, unlike conventional   methods of training. Moreover, these simulators allow for the quantitative evaluation of the surgeon performance, giving the possibility to create performance standards in order to define if the surgeon is well prepared to execute a determined surgical procedure on a real patient.</p>     <p>This paper describes the development of a virtual simulator for laparoscopic surgery. The simulator allows the multimodal   interaction between the surgeon and the surgical virtual environment using visual and haptic feedback devices. To make the   experience of the surgeon closer to the real surgical environment a specific user interface was developed. Additionally in this paper   we describe some implementations carried out to face typical challenges presented in surgical simulators related to the tradeoff   between real-time performance and high realism; for instance, the deformation of soft tissues are simulated using a GPU (Graphics   Processor Unit) -based implementation of the mass-spring model. In this case, we explain the algorithms developed taking into   account the particular case of a cholecystectomy procedure in laparoscopic surgery.</p>     <p><font size="3"><b>KEY WORDS</b></font>: Medical training, Minimally invasive surgery, Surgical simulation, Virtual reality.</p>  <hr size="1" />              <p>&nbsp;</p>     <p><font size="3"><b>RESUMEN</b></font></p>     <p>Recientes avances en &aacute;reas tales como modelaci&oacute;n computacional de objetos deformables, tecnolog&iacute;as h&aacute;pticas, tecnolog&iacute;as   inmersivas, capacidad de procesamiento y ambiente virtuales han proporcionado las bases para el desarrollo de herramientas y m&eacute;todos de   aprendizaje confiables en el entrenamiento m&eacute;dico. Una de estas herramientas de entrenamiento son los simuladores quir&uacute;rgicos virtuales,   los cuales no tienen limitaciones de tiempo o riesgos a diferencia de los m&eacute;todos convencionales de entrenamiento. Adem&aacute;s, dichos   simuladores permiten una evaluaci&oacute;n cuantitativa del desempe&ntilde;o del cirujano, dando la posibilidad de crear est&aacute;ndares de desempe&ntilde;o con el fin de definir en qu&eacute; momento un cirujano est&aacute; preparado para realizar un determinado procedimiento quir&uacute;rgico sobre un paciente.</p>     <p>Este art&iacute;culo describe el desarrollo de un simulador virtual para cirug&iacute;a laparosc&oacute;pica. Este simulador permite la interacci&oacute;n   multimodal entre el cirujano y el ambiente virtual quir&uacute;rgico usando dispositivos de retroalimentaci&oacute;n visual y h&aacute;ptica. Para hacer   la experiencia del cirujano m&aacute;s cercana a la de una ambiente quir&uacute;rgico real se desarroll&oacute; una interfaz cirujano-simulador especial.   Adicionalmente en este art&iacute;culo se describen algunas implementaciones que solucionan los problemas t&iacute;picos cuando se desarrolla un   simulador quir&uacute;rgico, principalmente relacionados con lograr un desempe&ntilde;o en tiempo real mientras se sacrifica el nivel de realismo   de la simulaci&oacute;n: por ejemplo, la deformaci&oacute;n de los tejidos blandos simulados usando una implementaci&oacute;n del modelo masa-resorte   en la unidad de procesamiento gr&aacute;fico. En este caso se describen los algoritmos desarrollados tomando en cuenta la simulaci&oacute;n de un procedimiento laparosc&oacute;pico llamado colecistectom&iacute;a.</p>     <p><font size="3"><b>PALABRAS CLAVE</b></font>: Entrenamiento m&eacute;dico, cirug&iacute;a m&iacute;nimamente invasiva, simulaci&oacute;n quir&uacute;rgica, realidad virtual.</p>  <hr size="1" />           ]]></body>
<body><![CDATA[<p>&nbsp;</p>       <p><font size="3"><b>I. INTRODUCTION</b></font></p>          <p>Since mid-1980, the introduction of the compact   CCD (Charge Coupled Device) camera made   the laparoscopic surgery feasible allowing its quick   introduction in the everyday medical surgical procedures.   Due to its promising results, such as shorter recovery time   and less risk of infection, it was widely adopted.</p>     <p>Soon, the demand to execute these procedures in   clinical practice increased and surgeons were expected to   adopt these procedures. This adoption can be possible due   to the simplicity of some pioneer procedures in this new   surgical area. However, the creation of new procedures   with greater complexity and the technical risks, present   in these innovative surgical tasks, leads the surgeon to   make the mistakes and cause injuries in the patient during   execution of these surgical procedures. For example, in the   extraction of the gallbladder, an incorrect interpretation   of the anatomy can result in an injury of the bladder duct.   The treatment of this injure is complicated and sometimes,   it requires a second surgical intervention &#91;<a href="#1">1</a>&#93;.</p>     <p>The training process for laparoscopic surgery is   currently based on a combination of several techniques   of training and education, for example, training manual   skills in real surgeries supervised by an expert, using live   animals or in-vitro models based on synthetic materials,   and training cognitive skills using informative CD's,   videos and books. These techniques have disadvantages   such as expensive prices, the high risk for the patient,   limited time to train, low realism of the simulation of the   real human anatomy, amongst others. These disadvantages   limit the efficacy of the training method, therefore   increasing the surgeon's stress level and decreasing his   creativity to innovate creating new procedures &#91;<a href="#2">2</a>&#93;.</p>     <p>The advances of new technologies in fields such as   physical simulation of deformable objects and virtual   environments have created the conditions for virtual   surgical training systems to meet all key elements required   to obtain an efficient outcome. The virtual laparoscopic   simulators have no limitations of time, or risk unlike   conventional methods of training, which could further   jeopardize the health and even the lives of patients.   Moreover, these simulators can reproduce the real human   anatomy with greater accuracy, including pathologies and   anatomical variations, which the surgeon can face up in   a real procedure, and that are difficult to simulate using   other training techniques. For example, in the conventional   training method the trainee must wait for one patient with   the pathology in order to be able to train it.</p>     <p>This paper presents some of the algorithms required   to develop a virtual simulator of laparoscopic surgery.   The simulator allows the multimodal interaction between   the surgeon and the surgical virtual environment using   visual and haptic feedback devices. In order to make   the experience of the surgeon closer to the real surgical   environment, a specific user interface was developed. In   this case, we explain the algorithms developed taking into   account the particular case of a cholecystectomy procedure   in laparoscopic surgery &#91;<a href="#3">3</a>&#93;.</p>     <p>The rest of the paper is organized as follows: Section   2 describes similar projects. Section 3 describes each   component developed in the surgical simulator. Section   4 and 5 describes the obtained results and the discussion.   Finally, section 6 describes the conclusions reached so far   and the future work.</p>     <p>&nbsp;</p>     <p><b><font size="3">II. RELATED WORK</font></b></p>     ]]></body>
<body><![CDATA[<p>Due to the limitations of the medical area to   train surgical procedures of high complexity and the   technological advances in the informatics technology,   biomechanics modeling and virtual environments during   the mid-90's, several research groups around the world   pursued projects to develop virtual environments in   order to train surgeons in minimally invasive surgery.   In this way, several projects have been carried out in the   surgery simulation area with a broad range of medical   applications, such as: laparoscopic surgery &#91;<a href="#4">4</a>,<a href="#5">5</a>&#93;,   virtual endoscopy &#91;<a href="#6">6</a>&#93;, arthroscopy &#91;<a href="#7">7</a>&#93;, microsurgery   &#91;<a href="#8">8</a>&#93;, extraction of colon tumors &#91;<a href="#9">9</a>&#93;, intraocular surgery   &#91;<a href="#10">10</a>&#93;, amongst others. These different simulators have   demonstrated the utility of the virtual simulators in   medical training.</p>     <p>The development of surgical simulators has demanded   advances in different research topics, which have   contributed to the development of surgical simulators with   high realism and real-time performance. In particular,   there are four research topics, each of which has reviews   dedicated summarizing the research steps followed by the   scientific community. These topics include: deformable   objects simulation &#91;<a href="#11">11</a>&#93;, collision detection &#91;<a href="#12">12</a>&#93;,   simulation of topological changes &#91;<a href="#13">13</a>&#93; and design and   development of simulator-surgeon interfaces &#91;<a href="#14">14</a>&#93;.</p>     <p>Specifically, in the development of simulators to train   the cholecystectomy procedure several approaches have   been taken &#91;<a href="#15">15</a>&#93;, applying the algorithms and methods   developed in the research topics mentioned before.   Moreover corporations dedicated to develop and market   surgical simulators have created training systems for these   types of procedures &#91;<a href="#16">16</a>&#93;. Yet, the relatively high prices,   and low flexibility of these simulators, are limiting factors   that hinder their successful application in the training of   laparoscopic surgeons in developing countries such as   Colombia.</p>     <p>In the present paper we describe the development of   a surgical simulation system to train basics tasks and the   cholecystectomy procedure, proposing different algorithms   and hardware designs in each of four topics previously   described.</p>     <p>&nbsp;</p>     <p><b><font size="3">III. MATERIALS AND METHODS</font></b></p>     <p>In order to simulate a basic surgery environment it   is necessary to determine the surgical procedure to be   simulated. In the surgical education field a procedure   that is frequently used as the first step of training is the   cholecystectomy &#91;<a href="#3">3</a>&#93;. This procedure is ideal to train the skills in a trainee for the follow reasons:</p> <ul type="circle">     <li>The surgeon just needs a basic anatomical and   physiologic knowledge of the anatomical structures that   take active part in the procedure.</li>     <li>The procedure allows the manipulation of the organs   and tissues using several instrument types. It demands   the trainee to become familiar with the surgical   instrumental.</li>     <li>The workspace in which the trainee moves the   instruments is not very small when compared with   other procedures.</li>     ]]></body>
<body><![CDATA[<li>The step sequence to carry out the procedure is not very   complex.</li>     <li>In the laparoscopic surgery field this procedure is the most frequently executed and improved.</li>     </ul>     <p>In the next sections we describe the development of each component of the surgical simulator.</p>     <p><i><font size="3">3.1 Anatomical Model</font></i></p>     <p>All surgical simulators should have an anatomical model   of the part seen by the surgeon. In our case, the surgical   simulator developed will be composed for two different   training environments. The first simulates a basic surgical   task such as transport objects using the surgical instruments.   The second simulates an environment to execute a basic   surgical procedure. In this paper we focus on describing the development of second training environment.</p>     <p>The cholecystectomy is a surgical procedure to   extract the gallbladder. The surgeon has to interact with   two different organs, the liver and the gallbladder. Still,   there are other structures such as a common bile duct,   which must be modeled also. This duct plays a main role   in the cholecystectomy procedure because it has to be   cut and sealed before extracting the gallbladder. For this   reason a tridimensional model of the liver, gallbladder   and associated structures should be created to develop   a simulation of this procedure. In &#91;<a href="#17">17</a>&#93; the way how the   liver and gallbladder are interconnected with the other structures is described in more detail.</p>     <p>To generate the tridimensional model, we used the   images provided by the Visible Human project &#91;<a href="#18">18</a>,<a href="#19">19</a>&#93;.   From these images we carried out a process composed   of two stages. The first stage consists of the extraction of   the contour from the anatomical structure, i.e. the liver   or gallbladder, in each of the images that compose its   volume. The second stage consists of a tridimensional   reconstruction process using the contours provided by the   first stage. Each stage is composed by several processing steps, <a href="#fig1">Fig. 1</a> shows the complete process.</p>     <p align="center"><a name="fig1"></a><a href="img/revistas/rinbi/v4n8/v4n8a06fig1.gif" target="_blank">Figura 1</a></p>     <p><i>3.1.1. Contour Extraction</i></p>     ]]></body>
<body><![CDATA[<p>The segmentation methodologies for the extraction of   contours of the anatomical structures can be classified on   three types of algorithms: the automatic, semi-automatic   and manual. Considering the methodologies mentioned   above, we have chosen to pick a semi-automatic strategy,   which gives us precision and flexibility, with a little user   intervention when compared with manual methodologies. Next we will describe the methodology proposed.</p>     <p><a href="#fig2">Fig. 2</a> shows the processing steps involved with the   methodology proposed to extract the contour. First the user   has to select some points, called control points, located   over the contour of the organ. Second the application   adapts the points defined by the user to the contour, using   edge detection methods. Third the application interpolates   the points adapted applying the spline cubic method.   Fourth if the contour interpolated does not correspond   correctly to the contour of the organ because it is very   irregular, the application solves it dividing the splines in   several segments. Finally, the application applies a floodfill algorithm to define the area delimitated by the contour.</p>     <p align="center"><a name="fig2"></a><a href="img/revistas/rinbi/v4n8/v4n8a06fig2.gif" target="_blank">Figura 2</a></p>     <p><i>3.1.2 Generation of the Tridimensional Mesh</i></p>     <p>The methodology proposed to create the   tridimensional mesh of the organ is based on the   Marching Cubes algorithm. Using the areas determined   in the first stage we built a volumetric set of points that   describe the volume of the organ. From these points we   define a volumetric cell in which if the cell corresponds   to a point of the organ, its values is equal to a number   different of zero. This volumetric cell is the input of the   marching cubes algorithm to create the tridimensional   mesh, and it use the number mentioned before as a   threshold to calculate the mesh. Additionally, in order   to improve the quality of the mesh, we apply decimation   and smoothing algorithms after applying the marching cubes &#91;<a href="#20">20</a>&#93;.</p>     <p><i><font size="3">3.2 Soft Tissue Deformation</font></i></p>     <p><i>3.2.1 Mass-Spring Model</i></p>     <p>We applied the mass-spring method to simulate the   deformation of the tissues and organs in the surgical   simulator. The soft-tissue simulation engine used a   quasi-static solver, which is appropriate for heavily   damped tissues, and ignores velocity and damping   forces in return for significantly improved performance   &#91;<a href="#8">8</a>&#93;. In this way we just take the elastic part of the   equation that describes the behavior of deformable objects. This simplification results in,</p>     <p><a name="for1"></a><img src="img/revistas/rinbi/v4n8/v4n8a06for1.gif"></p>     <p>where,    ]]></body>
<body><![CDATA[<br>   <i>F<sub>ij</sub></i> (<i>x<sub>i</sub></i>, <i>x<sub>j</sub></i>) = <i>k<sub>ij</sub> &Delta;<sub>ij</sub> u<sub>ij</sub></i></p>     <p>and    <br>   <i>&Delta;<sub>ij</sub> = l<sub>ij</sub> - rl<sub>ij</sub></i></p>     <p>In these equations <i>k<sub>ij</sub></i> is stiffness constant associated   with a link between nodes <i>N<sub>i</sub></i> and <i>N<sub>j</sub></i>, <i>&Delta;<sub>ij</sub></i> is the current   length of the link minus its resting length, and <i>u<sub>ij</sub></i> is the unit vector pointing from nodes <i>N<sub>i</sub></i> toward <i>N<sub>j</sub></i>.</p>     <p>After defining the mathematical model, the next step is   to determine the method to solve the equations system. In   this system, we have <i>n</i> equations where <i>n</i> is the number   of nodes, it correspond a linear system of <i>n</i> equations   with <i>n</i> unknown variables. The unknown variables are the   positions of each node in the mesh. The application and   solution of the model can be observed in the following algorithm:</p>     <p>Acquire the position of the each node</p>     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;While <i>time</i> &lt; &delta; then    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;For each <i>i</i> <img src="img/revistas/rinbi/v4n8/v4n8a06for5.gif"> I    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="img/revistas/rinbi/v4n8/v4n8a06for2.gif"></p>     <p>  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;End For    ]]></body>
<body><![CDATA[<br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;End While</p>     <p>where time is the elapsed time, &delta; is an interval of time   predefined and &alpha; is a convergence factor of the solution   method. To solve the model, we use the iterative schema proposed in &#91;<a href="#8">8</a>&#93;.</p>     <p><i>3.2.2 Boundary Conditions Besides</i></p>     <p>defining the deformation model and setting   out a method to solve it, we have to determine the   boundary conditions of the model. These boundary   conditions depend on the surgical procedure simulated.   Our deformation model have three types of boundary   conditions to each node: (i) the first one is a free node,   in which the behavior of the node is governed by the   equations mentioned before, (ii) the second one is a node   subject to an external force, for example when the surgical   instrument push an organ or tissue, in this case | <i>F<sub>i</sub><sup>ext</sup></i> | &gt; 0   and (iii) the third one is a node with a predefined position,   for example when a surgical instrument grabs a part of the   organ or tissue. In this case the positions of nodes grabbed are equal to the position of the instrument tip.</p>     <p>It is therefore necessary to define the boundary   conditions for each particular surgical procedure in order   to faithfully reproduce the anatomical conditions of the   real environment. In our case the following conditions were defined for the cholecystectomy procedure:</p> <ul type="circle">     <li>The nodes located in the anterior and superior   diaphragmatic face of the liver are fixed to its rest position   due of the contact with the abdominal wall and diaphragm.</li>     <li>The nodes located in the division of the right lobe and   left lobe are fixed due to the action of the falciform   ligament.</li>     <li>The nodes located in the superior diaphragmatic face   of the liver are fixed due to the action of coronary   ligament.</li>     <li>The nodes located in the posterior face of the gallbladder are fixed to some nodes of the visceral face of the liver.</li>     </ul>     ]]></body>
<body><![CDATA[<p>For simplification purposes, other boundary conditions   of some additional ligaments are not accounted for. Other   boundary conditions like the contact with gastric structures   are not simulated due to the absence of these structures in the simulation environment.</p>     <p><i>3.2.3 Shape Conservation</i></p>     <p>A main characteristic that all physical models should   simulate to add realism to the deformation behavior is   the volume conservation of the anatomical structures.   When we use mass-spring models and surface mesh this   property is not guaranteed, even with a volumetric mesh   this condition is difficult to satisfy. Recent research has   proposed solutions to this problem using the mass-spring   model and superficial mesh &#91;<a href="#21">21</a>&#93;. However, the proposed   methods are computationally expensive. To avoid these   problems we propose to add a virtual spring to each node   in the mesh. This virtual spring is linked to the rest position   of the node before the simulation starts. Although this   method does not guarantee the volume conservation of   the structure, it guarantees a relative conservation of the   shape of the organ, giving some realism to the simulation.   Also, the property of the anatomical structure to come   back to its rest shape after being exposed to a deformation   phenomenon is defined by a stiffness constant of the virtual   spring. <a href="#fig3">Fig. 3</a> shows the configuration of the virtual springs   in order to guarantee the preservation of the mesh shape.   In the figure <i>k<sub>virtual</sub></i> is the stiffness constant of the springs;   <i>p<sub>start</sub></i> is the start position of a node that has not suffered a deformation; and <i>m</i> is the mass associated with each node.</p>     <p align="center"><a name="fig3"></a><a href="img/revistas/rinbi/v4n8/v4n8a06fig3.gif" target="_blank">Figura 3</a></p>     <p><i>3.2.4 GPU-based Implementation of the Mass-Spring Model</i></p>     <p>The largest computational task in surgical simulators   is that of simulation of the deformation of the anatomical   structures. In recent years, the advent of programmable   graphical processing unit (GPU), has allowed for the   use of the computational power for General-Purpose   Computing on the Graphics Processing Unit (GPGPU),   such as calculating the deformation of anatomical   structures in the surgical simulator &#91;<a href="#22">22</a>&#93;. Due to the   above reasoning, and the high degree of parallelization   possible within the calculation of the mass-spring model,   these methods are a perfect candidate to be implemented   on the GPU. In this way to get better performance using   the processing capacity of the GPU, we explore a GPUbased   implementation using the mass-spring model   and applying the CUDA (Computed Unified Device   Architecture) library. CUDA allows storing the data used   in the processing in three different kinds of memory of   the graphics device, depending on the memory used the   performance of the implementation could be better. In   &#91;<a href="#23">23</a>&#93; is described and compared the different kinds of   memory of the graphic device supported by CUDA. Next   we describe the approaches implemented in the GPU to   calculate the deformation using four different memory setups in order to store the data structure of the mesh.</p> <ul type="circle">     <li><i>Global Memory Implementation:</i> The data structure   used in the GPU implementation consists of three   1D arrays which are linked by the position of each   point in the array. The first array called <i>Positions</i>  contains the geometric coordinates, the mass and the boundary condition of the each point. The second   array called <i>Neighbors</i> has the neighbors of each point   in the mesh and the third array called <i>Length Rest</i>  contains the length rest of each link in the mesh. In   this implementation the data structure is stored in the   global memory of the GPU. To decompose the problem   each thread in GPU computes the new position of   a point in the mesh. For meshes with a large number   of points, this approach can offer a great performance   improvement, due to the high parallelization achieved   in the calculation. However, the use of global memory   to store the data structure may limit the performance   by this approach due to high latency of reading and   writing to global memory on the GPU. To solve this   problem, three additional approaches were considered:   coalescence memory, shared memory and shared   memory + coalescence memory.</li>     <li><i>Coalescence Memory Implementation:</i> By performing   a simple modification of the data structure described   before, it is possible to improve the performance of the   algorithm implemented on the GPU. To this end, it is   necessary to apply the concept of coalescence memory.   Coalesced memory refers to property that the global   memory of the GPU has been arranged in a way to   allow memory access to the same DRAM (Dynamic   Random Access Memory) page when multiple   threads simultaneously access contiguous elements of   memory &#91;<a href="#23">23</a>&#93;. For that reason, and in order to exploit   this property of the global memory, the data structure   described before was slightly modified, simply by   organizing all information that will be accessed at the   same time for each thread in a consecutive way in the memory. This schema ensures that the coordinates <i>x</i>,   <i>y</i> and <i>z</i>, the masses, boundary conditions, neighbors   of each point and the rest length of each spring are   consecutively stored in memory.</li>     <li><i>Shared Memory Implementation:</i> Other option for   improving the performance of the algorithm is to use   the shared memory of the GPU, which has writing   and reading latency that is less than that of the global   memory &#91;<a href="#23">23</a>&#93;. The idea of this approach is to copy   the positions of points from the global memory to   shared memory. Exploiting the characteristics of a   neighborhood and in this way to minimize the accesses   made to the global memory. However, this is only   applicable if the information contained in the array   is structured, i.e. if the neighbors of a specific point   within the array, are also neighbors in the geometry of   the mesh. Changes to the data structure are basically   focused on how the neighbors of each point are stored.   In this case the index is the position of a point in the   array of points. In the new data structure each point has   maximum eight neighbors, and to determine if there is   a connection with each of these neighbors, values of   <i>0</i> and <i>1</i> are used, where <i>1</i> refers to a connection and   <i>0</i> otherwise. Regarding the changes of the algorithm,   each thread of the block reads a point of the mesh and   is copied to shared memory, but for the calculation it   is necessary to have access to the coordinates of the   points around the block some threads of the block must   copy these in addition to all positions.</li>     <li><i>Shared Memory + Coalescence Memory   Implementation:</i> Finally, the last implementation   carried out, took advantage of the benefits in terms   of performance offered by shared memory and the   property of coalescence memory. For this purpose we combined the data structures used in each approach.</li>     ]]></body>
<body><![CDATA[</ul>     <p>In &#91;<a href="#24">24</a>&#93; there are more details about the GPU implementation of the mass-spring model using CUDA.</p>     <p><i><font size="3">3.3 Collision Detection</font></i></p>     <p>Quick collision detection between a rigid object   and a deformable object can be implemented applying   several techniques, for example, it is possible to compute   the distance between two objects applying spatial   decomposition using voxels. However, one of the methods   currently used in surgical simulation, is based on the use   of a hierarchy of bounding volumes of different types, for   instance spheres &#91;<a href="#25">25</a>&#93;, AABB's (Aligned Axis Bounding   Boxes) &#91;<a href="#26">26</a>&#93;, OBB's (Oriented Bounding boxes) &#91;<a href="#27">27</a>&#93;, among others.</p>     <p>The hierarchy of bounding volumes consists basically   in creating a hierarchy of several levels of bounding   volumes that cover the object, in our case the liver or the   gallbladder. For example, in a binary hierarchy, the first   level consists on a coarse bounding volume that contains   all the organ, in the second level other two bounding   volumes contain half of the organ and so on, until arriving   at level n in which the bounding volumes contain the minimum primitive of the mesh, in our case a triangle.</p>     <p>However, in the methods mentioned above, the   precision of the outcome depends on the following factors   (i) type of bounding volume used, (ii) the adaptation   to the object's shape by the bounding volume and (iii)   the computational cost of the test performed to detect   the collision. The algorithm proposed for the surgical   simulator is based on the approximation of the closest   of the most distant triangles, it allows to forgetting the overlap and fitting problem of the bounding volumes.</p>     <p>The proposed algorithm is composed by three parts:   The first one consists in building the hierarchy. The second   one consists in searching for the zone of possible collision   between two triangles of different meshes, in our case the   mesh of the organ and the mesh of the surgical instrument.   The third one consists of updating the hierarchy in order   to reflect the deformation suffered by the object when   it is exposed to the effect of external forces such as the   interaction with other anatomical structures or surgical instruments.</p>     <p>Next we describe the some basic concepts and the three parts of the proposed collision detection method.</p>     <p><i>3.3.1 Overview of the Algorithm</i></p>     <p>The triangle is the minimum primitive that can   compose the mesh of the objects in the surgical simulator.   For simplicity and accuracy purposes, we represent every   triangle in the mesh using a point; it is the intersection   of the angle bisectors, that is, the center of the triangle's   incircle. This point is called the triangle's centroid. For any triangle its centroid will always be located inside it.</p>     ]]></body>
<body><![CDATA[<p>In order to describe the algorithm for building,   searching and updating the hierarchy, we use the following notation:</p> <ul type="circle">     <li><i>U<sub>0</sub></i> denotes the universe of valid triangle's centroids that   compose the organ.</li>     <li><i>N<sub>i</sub></i> = | <i>U<sub>i</sub></i> |denotes the size of <i>U<sub>i</sub></i>, which is a subgroup of <i>U<sub>0</sub></i>.</li>     <li><i>C<sub>i</sub></i> <img src="img/revistas/rinbi/v4n8/v4n8a06for5.gif"> <i>U<sub>i</sub></i> and is a centroid point.</li>     <li><i>U<sub>i</sub></i> and <i>U<sub>k</sub></i> are two subgroups of <i>U<sub>t</sub></i> where <i>U<sub>t</sub></i> is the   parent of <i>U<sub>i</sub></i> and <i>U<sub>k</sub></i>, and <i>U<sub>i</sub></i> <img src="img/revistas/rinbi/v4n8/v4n8a06for7.gif"> <i>U<sub>k</sub></i> = <i>U<sub>t</sub></i> and <i>U<sub>i</sub></i> <img src="img/revistas/rinbi/v4n8/v4n8a06for6.gif"> <i>U<sub>k</sub></i> = <img src="img/revistas/rinbi/v4n8/v4n8a06for8.gif">.</li>     <li>The function <i>d:X</i> x <i>X</i> <img src="img/revistas/rinbi/v4n8/v4n8a06for3.gif"> <i>R</i> denotes the distance   between two points (if the distance is small, the points   are close).</li>     </ul>     <p><i>3.3.2 Building the Hierarchy</i></p>     <p>Taking into account the above notation, the proposed algorithm to build the hierarchy is described as follows:</p>     <p>Load Hierarchy (<i>U<sub>t</sub></i>)    ]]></body>
<body><![CDATA[<br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If <i>N<sub>t</sub></i> &gt; 1 then    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Divide <i>U<sub>t</sub></i> in <i>U<sub>k</sub></i> and <i>U<sub>j</sub></i>    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Does <i>U<sub>t</sub></i> father of <i>U<sub>k</sub></i> and <i>U<sub>j</sub></i>    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Load Hierarchy (<i>U<sub>k</sub></i>)    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Load Hierarchy (<i>U<sub>j</sub></i>)    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;End if    <br> End Load Hierarchy</p>     <p>In this way to divide <i>U<sub>t</sub></i> in <i>U<sub>k</sub></i> and <i>U<sub>j</sub></i>, the algorithm searches the two point <i>C<sub>k</sub></i> and <i>C<sub>j</sub></i> farthest between in <i>U<sub>t</sub></i> using this definition</p>     <p><img src="img/revistas/rinbi/v4n8/v4n8a06for9.gif"></p>     <p>where <i>t</i> is the index of group analyzed in that instant.   Based on this criterion, we proceed as follow to define the content of the hierarchy:</p>     ]]></body>
<body><![CDATA[<p>For each <i>C<sub>i</sub></i> in <i>U<sub>t</sub></i> - {<i> C<sub>k</sub></i>, <i>C<sub>j</sub></i> }do    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If <i>d</i>(<i>C<sub>j</sub></i> , <i>C<sub>i</sub></i>) &gt; <i>d</i>(<i>C<sub>k</sub></i>, <i>C<sub>i</sub></i>) then    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Include <i>T<sub>i</sub></i> in <i>U<sub>k</sub></i>    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Else If    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Include <i>T<sub>i</sub></i> in <i>U<sub>j</sub></i>    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;End if    <br> End For</p>     <p><i>3.3.3 Searching in the Hierarchy</i></p>     <p>After building the hierarchy, we can search the triangles with a possible collision, applying this algorithm:</p>     <p>Search Collision (<i>U<sub>0</sub></i>, <i>T</i>)    ]]></body>
<body><![CDATA[<br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>U<sub>search</sub></i> = <i>U<sub>0</sub></i>    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;While <i>U<sub>search</sub></i> &gt; 1 do    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If d(<i>T</i>, <i>C<sub>1</sub></i>) &gt; d(<i>T</i>, <i>C<sub>2</sub></i>)    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>U<sub>search</sub></i> = <i>U<sub>k</sub></i>    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Else if    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>U<sub>search</sub></i> = <i>U<sub>j</sub></i>    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;End if    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;End While    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Find the triangle <i>T<sub>r</sub></i> refer to <i>U<sub>search</sub></i>    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Find the triangle <i>T<sub>c</sub></i> belong to <i>T</i>    ]]></body>
<body><![CDATA[<br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return if there are collision between <i>T<sub>r</sub></i> and <i>T</i>    <br> End SearchCollision</p>     <p>where <i>U<sub>search</sub></i> is the group of points where the search is happening and <i>T<sub>r</sub></i> is the triangle reference of the point <i>T</i>.</p>     <p><i>3.3.4 Updating the Hierarchy</i></p>     <p>Due to the fact that the proposed hierarchy does   not use bounding volumes to detect the collision   between objects and it just uses points and calculates the   distance to detect the collision, the process of update the   hierarchy consist in recalculating the intersection point   of the medians of each triangle taking the vertex of the   modified triangle. The following algorithm presents the methodology used to update the hierarchy.</p>     <p>Update Hierarchy (<i>U<sub>t</sub></i>)    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;For each <i>C<sub>j</sub></i> that <i>C<sub>j</sub></i> <img src="img/revistas/rinbi/v4n8/v4n8a06for5.gif"> <i>List<sub>Modified</sub></i>    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Recalculate <i>C<sub>j</sub></i>    <br>   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;End For    <br> End UpdateHierarchy</p>     ]]></body>
<body><![CDATA[<p>Where <i>List<sub>Modified</sub></i> is a list with the centroid of the   triangles that suffer some deformation. The update   approximation is bottom-up, that is, the nodes of the   hierarchy are recalculated beginning with the leaf nodes and finalizing with the root node.</p>     <p><i><font size="3">3.4 Architecture of the Simulator</font></i></p>     <p>The surgical simulator is a complex system composed   by several components that interact amongst them. These   components are controlled to achieve the real-time   performance necessary to accomplish the requirements   of the interactivity with the user. In the <a href="#fig4">Fig. 4</a> we can   observe the global architecture of the surgical simulator developed.</p>     <p align="center"><a name="fig4"></a><img src="img/revistas/rinbi/v4n8/v4n8a06fig4.gif"></p>     <p>In general, the developed surgical simulator is   composed by three components: the physical user   interface, the graphical user interface and the simulation   core. The first component, the physical user interface   is composed by the mechanical device, it allows the   movement of the instruments in a way similar to a real   surgical procedure, the spatial position tracking device   of the surgical instruments, the hardware to measure   the opening of the instruments and finally the force   feedback devices (<i>Phantom Omni</i>). The interaction   between the <i>Phantom Omni</i> and the simulation core is   accomplished by the <i>Open Haptics</i> software library,   and to grant the real-time performance of the simulator   we have to use a temporal model of the virtual object   interacting with the user. The temporal model is just a   segment of the mesh determined using the collision zone,   it includes geometrical and physical information in order   to calculate the deformation of the mesh and the force feedback in the segment.</p>     <p>Given that the temporal model contains a reduced   subset of the complete mesh, we can achieve the   computation of the deformation and the force feedback   with an approximate performance of <i>600 Hz</i>. The second   component, the graphical user interface, uses the OpenGL   library to visualize the virtual environment and GTK   (GIMP Toolkit) to implement a GUI environment to allow   the user to interact with menus, buttons and edit textboxes   to setup the simulator. The third component, the core   simulation, implements the necessary algorithms to detect   the collisions between objects in the virtual environment,   the implementation of the physical model to calculate the   deformation and the visualization module to show the state of the virtual environment.</p>     <p><i><font size="3">3.5 Simulator-Surgeon Interface</font></i></p>     <p>In a surgical simulator the physical interface plays an   important role. The movements of the instruments and the   feedback of the different perceptions must be similar to the   real life counterparts. This guarantees a correct transfer of   the skills from the virtual to the real surgical environment.   We analyzed the movements executed by the surgeon   during a laparoscopic surgical procedure and found that   in a real laparoscopic procedure, instruments have four   degrees of freedom, and it is enough to locate the tip of the instrument in the working space.</p>     <p>The physical interface was designed and built to satisfy   the mobility requirements of the instruments and to allow   adapting the measurement devices such as the haptic   devices and the electromagnetic tracker. For this reason, we   do not use magnetic materials (metals), since they would   distort the electromagnetic field and then the measurement   of the instrument position would be incorrect. <a href="#fig5">Fig. 5</a> shows   the physical interface built for the interaction between the user and the surgical virtual environment.</p>     <p align="center"><a name="fig5"></a><a href="img/revistas/rinbi/v4n8/v4n8a06fig5.gif" target="_blank">Figura 5</a></p>     ]]></body>
<body><![CDATA[<p>On the other side, the physical interface of the surgical   simulator should measure the degrees of freedom of   each surgical instrument so that it can be visualized in   the surgical simulator. In this way, an electromagnetic   <i>Polhemus</i> tracker is adapted to the instruments of the   physical interface to measure three degrees of rotation   and one of translation. In order to measure the opening   of the instruments, we developed a hardware based on a   potentiometer link to the handle axis of the instrument.   This potentiometer is integrated with a digital-to-analog   conversion circuit and a special chip to execute the USB communication with the surgical simulation core.</p>     <p>Finally, there are two haptic devices linked to the tip   of the instrument to provide force feedback of the virtual environment to the user.</p>     <p>&nbsp;</p>     <p><b><font size="3">IV. RESULTS</font></b></p>     <p>To evaluate the implemented surgical simulator, we   tested the performance of each algorithm proposed in the   previous sections. Next we describe the results obtained during each test carried out.</p>     <p><i><font size="3">4.1 Experimental Test Collision Detection</font></i></p>     <p>The experimental test to evaluate the performance of   the search algorithm for collision detection was to take   the time required by the algorithm to perform the search   and determine the triangle which was in collision with the   tip of the instrument, evaluating different mesh sizes. The   test was carried out in Dell XPS machine, with 2 GB RAM   and processor Intel Core2Duo. In <a href="#fig6">Fig. 6</a> we can observe the results obtained.</p>     <p align="center"><a name="fig6"></a><a href="img/revistas/rinbi/v4n8/v4n8a06fig6.gif" target="_blank">Figura 6</a></p>     <p>Similarly, the update algorithm was evaluated. In   this case we calculated the time that the algorithm took   in order to recalculate the centroid of each triangle, and   update the farthest points of each of the nodes in the   hierarchy. In the <a href="#fig7">Fig. 7</a> we can observe the results obtained   respect to the updated of the hierarchy for meshes of different sizes.</p>     <p align="center"><a name="fig7"></a><a href="img/revistas/rinbi/v4n8/v4n8a06fig7.gif" target="_blank">Figura 7</a></p>     ]]></body>
<body><![CDATA[<p><i><font size="3">4.2 Experimental Test GPU-based implementation of the Mass-Spring Model</font></i></p>     <p>In order to compare the sequential and GPU algorithms   proposed for the mass-spring model, an experimental test   was developed. In the test two performance variables were   measured, time execution and speed-up. The simulation   was composed by a triangular mesh. We used four meshes   with different sizes (<a href="#tab1">Table 1</a>). In order to conduct the   experimental test, a perturbation on the physical model of   the mesh, produced by an external force, was applied. For   the implementation in the GPU, the tests were conducted   using a fixed block size for the different resolution meshes.   The experimental test was carried out in a machine with a Nvidia GeForce 8800 GT GPU.</p>     <p align="center"><a name="tab1"></a><img src="img/revistas/rinbi/v4n8/v4n8a06tab1.gif"></p>     <p><a href="#fig8">Fig. 8</a> presents the results of the execution time   obtained for each of the approaches described before   versus the number of points that possess each of the meshes evaluated.</p>     <p align="center"><a name="fig8"></a><a href="img/revistas/rinbi/v4n8/v4n8a06fig8.gif" target="_blank">Figura 8</a></p>     <p>Additionally, <a href="#fig9">Fig. 9</a> shows the speed-up achieved for   each of the approaches and meshes evaluated during the experimental tests.</p>     <p align="center"><a name="fig9"></a><img src="img/revistas/rinbi/v4n8/v4n8a06fig9.gif"></p>     <p><i><font size="3">4.3 Experimental Test Shape Conservation</font></i></p>     <p>To evaluate the effectiveness of the proposed method   for preserving the shape of objects after they suffered   a deformation phenomenon, we made a pilot test in   which a mesh suffered a deformation caused by gravity.   Evaluating different values of stiffness constant of the   virtual springs, were determined the difference between   the position of the nodes initially and after have suffered   a deformation. The different was calculated using the follow expression:</p>     <p align="center"><a name="for4"></a><img src="img/revistas/rinbi/v4n8/v4n8a06for4.gif"></p>     ]]></body>
<body><![CDATA[<p>where <i>error<sup>0</sup><sub>shape</sub></i> refer to the error calculated   using <i>k</i>=0. <a href="#tab2">Table 2</a> shows the results obtained for this experimental test.</p>     <p align="center"><a name="tab2"></a><img src="img/revistas/rinbi/v4n8/v4n8a06tab2.gif"></p>     <p><i><font size="3">4.4 General Performance Test</font></i></p>     <p>The developed system simulates a cholecystectomy   procedure with an appropriate degree of realism and in   real-time. Preliminary tests to analyze the skills transfer of   the surgeon lead us to anticipate the success of the surgeon   training using this surgical simulator as training tool &#91;<a href="#20">20</a>&#93;.   Also, the proposed architecture results in a performance of   the graphics interface up to <i>60 Hz</i> and the haptic interface   up to <i>600 Hz.</i> <a href="#fig10">Fig. 10</a> shows the surgery environment simulated by the system.</p>     <p align="center"><a name="fig10"></a><img src="img/revistas/rinbi/v4n8/v4n8a06fig10.gif"></p>     <p>On the other side, the preliminary analysis of   the physical interface and the anatomical generated   model carried out with expert surgeons has given a   positive comments about the interaction and the virtual   environment of simulation, however we must carry out   experimental tests to measure the level of skills transfer achieved with real surgical procedures.</p>     <p>&nbsp;</p>     <p><b><font size="3">V. DISCUSSION</font></b></p>     <p>We faced several challenges during the development   of the surgical simulator for a specific procedure as the   cholecystectomy; among the most important are the need   to guarantee the real-time performance and a suitable   realism of the simulation. In order to meet all requirements   it is important to develop efficient algorithms in each   component of the simulator and to design an architecture that guarantees the real-time at any moment.</p>     <p>The generation of an anatomical model that fulfills   the morphologic requirements and additionally facilitates   the mapping to the physical model to guarantee the   correct behavior of the anatomical structures was a highly   complex process. During the extraction of the contours   and the tridimensional reconstruction of the anatomical   structures using the images of the visible human project,   we faced two problems: respect to the complexity of the   mesh, that is, the large number of primitives and the stair   effect consequence of the inaccuracy of the segmentation   method of the contours. These two problems were solved   applying decimation and smoothness algorithms of the   tridimensional mesh. The size of the meshes generated   for the deformable anatomical structures such as the   gallbladder (1798 triangles) and the liver (5132 triangles)   were suitable for visualization purposes and allowed us   to achieve a real-time performance without affecting the realistic anatomical appearance of the structures.</p>     ]]></body>
<body><![CDATA[<p>In our case, the collision detection algorithm is simple   when compared to the interaction necessary in a surgical   simulator. In our approach, we do not detect collision   between meshes, but collisions between a triangle and a   mesh, that is, the deformable organ is modeled like a mesh   but the surgical instrument is modeled using a triangle of   its tip. Although there are situations during the simulation where the realism is affected by this simplification, for   example when an instrument tube overlaps some organ   or tissue, this simplification allowed us to improve the   performance of the search and update algorithm in the   hierarchy. Observing the <a href="#fig6">figure 6</a> and <a href="#fig7">figure 7</a> we can   conclude that the search and updating process can be   done by ensuring the real-time of the simulation, since   the time it takes to execute the two processes for meshes   of approximately <i>4000</i> triangles, is <i>3 ms</i>. Also, the use of   hierarchies based on distances and not bounding volumes   avoids problems related to the adaptation of the bounding volume to the geometrical characteristics of the mesh.</p>     <p>The use of a physical simulation engine concentrated   in the local behavior of the organ-instrument interaction,   allows for several simplifications to guarantee the realtime   performance without affecting the realism of the simulation.</p>     <p>However, for meshes with a large number of nodes   such simplifications may not be enough. In this case the   benefits of implementing the model mass-spring on the   GPU, can ensure real time despite the number of nodes   that have the mesh. This result is visible by analyzing   <a href="#fig9">figure 9</a> where the speed-up of the GPU algorithms can be   observed. In this case, the higher speed-up was obtained   with the implementation on the GPU that combines the   use of shared memory and the property of coalescence   memory. However, the methods that use shared memory,   need a structured mesh to be implemented, this limits   the implementation of such methods to only those with a   structured mesh. The coalesced memory approach is very   flexible since it can represent arbitrary geometry, and is   the simplest strategy to be implemented. Moreover, from   <a href="#fig8">figure 8</a> it is possible to conclude that, if it is necessary to   simulate the deformation of meshes with up to <i>43K</i> points   for real time applications, the best option is to apply the   approaches that use the GPU, since these can provide   for a computation time less than <i>16 ms</i>, and obtain an   approximate update frequency of <i>60 Hz</i>. This frequency   guarantees the interactivity of the simulation in a real-time surgical simulator.</p>     <p>Considering the use of virtual springs in the massspring   model to conserve the rest shape of the anatomical   structures can be an indirect form to conserve volume if   there is not a rigid body transformation over the structures.   <a href="#tab2">Table 2</a> shows the effect of the <i>error<sup>k</sup><sub>shape</sub></i> when we   modified the stiffness constant of the virtual springs,   as is expected the error was small when the stiffness   constant was big. However if we use a big virtual stiffness   constants, we can modify the normal physical behavior   of the mesh. In our simulation, applying the quasistatic   method solver, considering the size of the organs   reconstructed, we achieved the equilibrium of the model in   each frame using a &alpha; = 0.1 and a &delta; = 20 ms, with an error below to 0.0005.</p>     <p>On the other side, the design of the physical interface   to interact with the virtual environment in laparoscopic   surgery procedures impose the fulfillment of the   requirements inherent to the application as the mobility   of the instrument and technical requirements related   with the integration of the haptic feedback and position   tracking devices. Special articulated mechanisms had to   be designed to fulfill these design criteria. Preliminary   user test comparing the use of the interface during the   execution of a basic training task have submitted a positive evaluation of the developed interface &#91;<a href="#20">20</a>&#93;.</p>     <p>Finally, the use of a temporal model to solve the   problem of the update rate difference between the haptic   and graphic loop guarantee stability in the force perceived by the user.</p>     <p>&nbsp;</p>     <p><b><font size="3">VI. CONCLUSION</font></b></p>     <p>The proposed surgical simulator offers a solution   to satisfy every technical requirement demanded for a   simulation system; in this case the procedure simulated   is the cholecystectomy, providing a suitable visual and   haptic feedback to the user. However, the system presented   requires additional research in each of the developed   components to improve the interactivity and the realism of the simulator.</p>     <p>Future work includes research in four directions   specifically. The first one consists in the development of   dataset to allow the simulation of anatomical variations   and pathologies of the anatomical structures mentioned   before. The second one is the study and implementation   of an algorithm that allows the volume conservation using   mass-spring models and surface mesh, as the proposed in   &#91;<a href="#21">21</a>&#93;. The third one refer to add algorithms to simulate the   cut and application of surgical staples in order to allow the   complete interaction of the cholecystectomy procedure,   because at the moment the process of cut and location   of staples in the simulator is implemented in predefined   places affecting the interactivity of the simulator. Finally,   we will explore the remote training of surgical procedures developing a networked surgical simulator.</p>     ]]></body>
<body><![CDATA[<p>&nbsp;</p>     <p><b><font size="3">REFERENCES</font></b></p>     <!-- ref --><p>&#91;<a name="1">1</a>&#93;. Club,  S. S. A Prospective Analysis of 1518 Laparoscopic   Cholecystectomies. England Journal Medicine,  Volume 16,  1991,    pp. 1073-1078.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000205&pid=S1909-9762201000020000600001&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="2">2</a>&#93;. Tendick,  F.,  Downes,  M.,  Goktekin,  T.,  Cavusoglu,  M. C.,  Feygin   D.,  Wu,  X.,  Eyal,  R.,  Hegarty,  M. and Way,  L. W. A Virtual   Environment Test bed for Training Laparoscopic Surgical Skills,    Presence: Teleoperators Virtual Environment. Volume 9,  Issue 3,    2000,  pp. 236-255.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000207&pid=S1909-9762201000020000600002&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="3">3</a>&#93;. Liu,  A.,  Tendick,  F.,  Cleary,  K. and Kaufmann,  C. A Survey of   Surgical Simulation: Applications,  Technology,  and Education,    Presence: Teleoperators Virtual Environment. Volume 12,  Issue 6,    2003,  pp. 599-614.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000209&pid=S1909-9762201000020000600003&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="4">4</a>&#93;. Delingette,  H. and Ayache,  N. Hepatic Surgery Simulation,    Communications ACM,  Volume 48,  Issue 2,  2005,  pp. 31-36.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000211&pid=S1909-9762201000020000600004&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     ]]></body>
<body><![CDATA[<!-- ref --><p>&#91;<a name="5">5</a>&#93;. Laugier,  C.,  Mendoza,  C. and Sudaraj,  K. Towards a Realistic   Medical Simulator using Virtual Environments and Haptic   Interaction. Robotics Research,  Volume 6,  2003,  pp. 289-306.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000213&pid=S1909-9762201000020000600005&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="6">6</a>&#93;. Williams,  D.,  Grimm,  S.,  Coto,  E.,  Roudsari,  A. and Hatzakis,  H.   Volumetric Curved Planar Reformation for Virtual Endoscopy.   IEEE Transactions on Visualization and Computer Graphics   Volume 14,  Issue 1,  2008,  pp. 109-119.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000215&pid=S1909-9762201000020000600006&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="7">7</a>&#93;. Bayona,  S.,  Garc&iacute;a,  M.,  Mendoza,  C. and Fern&aacute;ndez,  J. M.   Shoulder Arthroscopy Training System with Force Feedback. In:   MEDIVIS '06: Proceedings of the International Conference on   Medical Information Visualization-Biomedical Visualization,    IEEE Computer Society,  Washington,  DC,  USA,  2006,  pp. 71-76.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000217&pid=S1909-9762201000020000600007&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="8">8</a>&#93;. Brown,  J.,  Sorkin,  S.,  Latombe,  J.C.,  Montgomery,  K. and Stephanides,    M. Algorithmic Tools for Real-Time Microsurgery Simulation,  Medical   Image Analysis,  Volume 6,  Issue 3,  2002,  pp. 289-300.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000219&pid=S1909-9762201000020000600008&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="9">9</a>&#93;. Raghupathi,  L.,  Grisoni,  L.,  Faure,  F.,  Marchal,  D.,  Cani,  M.P. and   Chaillou,  C. An Intestinal Surgery Simulator: Real-time Collision   Processing and Visualization. IEEE Transactions on Visualization   and Computer Graphics,  Volume 10,  Issue 6,  2004,  pp. 708-718.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000221&pid=S1909-9762201000020000600009&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     ]]></body>
<body><![CDATA[<!-- ref --><p>&#91;<a name="10">10</a>&#93;. Wagner,  C.,  Schill,  M. and Manner,  R. Intraocular Surgery on a Virtual   Eye. Communications ACM,  Volume 45,  Issue 7,  2002,  pp. 45-49.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000223&pid=S1909-9762201000020000600010&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="11">11</a>&#93;. Meier,  U.,  Lopez,  O.,  Monserrat,  C.,  Juan,  M. and Alcaiz,  M.   Real-time Deformable Models for Surgery Simulation: A Survey.   Computer Methods and Programs in Biomedicine,  Volume 77,    Issue 3,  2005,  pp. 183-197.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000225&pid=S1909-9762201000020000600011&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="12">12</a>&#93;. Teschner,  M.,  Kimmerle,  S.,  Heidelberger,  B.,  Zachmann,  G.,    Raghupathi,  L.,  Fuhrmann,  A.,  Cani,  M.,  Faure,  F.,  Magnenat-Thalmann,  N.,  Strasser,  W. and Volino,  P. Collision Detection for   Deformable Objects. In: Eurographics State-of-the-Art Report   (EG-STAR),  Eurographics Association,  2004,  pp. 119-139.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000227&pid=S1909-9762201000020000600012&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="13">13</a>&#93;. Brown,  J.,  Latombe,  J.C. and Montgomery K. Real-Time Knot-Tying Simulation. Visualization and Computer,  Volume 20,  Issue   2,  2004,  pp. 165-179.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000229&pid=S1909-9762201000020000600013&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="14">14</a>&#93;. Salleh,  R.,  Razak,  Z.,  Caldwell,  D. and Loureiro,  R. Salfsar: A Dual   Purpose Device for Laparoscopic Training and Tele-surgery. Malaysian   Journal of Computer Science,  Volume 18,  Issue 1,  2005,  pp. 78-92.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000231&pid=S1909-9762201000020000600014&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     ]]></body>
<body><![CDATA[<!-- ref --><p>&#91;<a name="15">15</a>&#93;. Webster,  R.,  Haluck,  R. S.,  Zoppetti,  G.,  Benson,  A.,  Boyd,    J.,  Charles,  N.,  Reeser,  J. and Sampson,  S. A Haptic Surgical   Simulator for Laparoscopic Cholecystectomy using Real-Time   Deformable Organs. In: Proceedings of the IASTED International   Conference Biomedical Engineering,  IASTED Press,  2003.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000233&pid=S1909-9762201000020000600015&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="16">16</a>&#93;. Schijven,  M. and Jakimowicz,  J. Virtual Reality Surgical   Laparoscopic Simulators. Surgical Endoscopy,  Volume 17,  Issue   12,  2003,  pp. 2041-2042.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000235&pid=S1909-9762201000020000600016&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="17">17</a>&#93;. Gunn,  C. Using Haptics in a Networked Inmersive 3D   Environment. Ph.D. Thesis,  2007. (Chapter 8 and 9).    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000237&pid=S1909-9762201000020000600017&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="18">18</a>&#93;. Ackerman,  M. and Banvard,  R. Imaging Outcomes from   the National Library of Medicine's Visible Human Project.   Computerized Medical Imaging and Graphics,  Volume 24,  Issue 3,    2000,  pp. 125-126.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000239&pid=S1909-9762201000020000600018&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="19">19</a>&#93;. Juanes,  J.,  Prats,  A.,  Lagndar,  M. and Riesco,  J. Application of   the Visible Human Project in the Field of Anatomy: A Review.   European Journal of Anatomy,  Volume 7,  Issue 3,  2003,  pp.   147-159.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000241&pid=S1909-9762201000020000600019&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     ]]></body>
<body><![CDATA[<!-- ref --><p>&#91;<a name="20">20</a>&#93;. Diaz,  C.,  Posada,  D.,  Trefftz,  H. and Bernal,  J. Development   of a Surgical Simulator to Training Laparoscopic Procedures.   International Journal of Education and Information Technologies,    Volume 2,  Issue 1,  2008,  pp. 95-103.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000243&pid=S1909-9762201000020000600020&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="21">21</a>&#93;. Hong,  M.,  Jung,  S.,  Choi,  M.H. and Welch,  S. W. J. Fast   Volume Preservation for a Mass-Spring System. IEEE   Computer and Graphics Applications,  Volume 26,  Issue 5,    2006,  pp. 83-91.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000245&pid=S1909-9762201000020000600021&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="22">22</a>&#93;. Sorensen,  T. S. and Mosegaard,  J. An Introduction to GPU   Accelerated Surgical Simulation. In: M. Harders,  G. Szekely   (Eds.),  Third International Symposium,  ISBMS 2006,  Vol.   4072 of Lecture Notes in Computer Science,  Springer Berlin /   Heidelberg,  2006,  pp. 93-104.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000247&pid=S1909-9762201000020000600022&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="23">23</a>&#93;. Hwu,  W.-M.,  Rodrigues,  C.,  Ryoo,  S. and Stratton,  J. Compute   Unified Device Architecture Application Suitability. In:   Computing in Science and Engineering,  Volume 11,  Issue 3,  2009,    pp. 16-26.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000249&pid=S1909-9762201000020000600023&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="24">24</a>&#93;. Diaz,  C.,  Eliuk,  S.,  Trefftz,  H. and Boulanger,  P. Simulating   Soft Tissue using GPU approach of the Mass-Spring Model. In   3IA '2010 International Conference on Computer Graphics and   Artificial Intelligence 2010.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000251&pid=S1909-9762201000020000600024&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     ]]></body>
<body><![CDATA[<!-- ref --><p>&#91;<a name="25">25</a>&#93;. Hubbard,  P. M. Approximating Polyhedra with Spheres for Time-Critical Collision Detection. In: ACM Transactions Graphics,    Volume 15,  Issue 3,  1996,  pp. 179-210.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000253&pid=S1909-9762201000020000600025&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="26">26</a>&#93;. Zhang X. and Kim,  Y. J. Interactive Collision Detection for   Deformable Models using Streaming AABB's. In: IEEE   Transactions on Visualization and Computer Graphics,  Volume   13,  Issue 2,  2007,  pp. 318-329.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000255&pid=S1909-9762201000020000600026&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;<a name="27">27</a>&#93;. Gottschalk,  S.,  Lin,  M. C.,  Manocha,  D. OBBTree: A Hierarchical   Structure for Rapid Interference Detection. In: SIGGRAPH   '96: Proceedings of the 23rd Annual Conference on Computer   Graphics and Interactive Techniques,  ACM,  New York,  NY,  USA,  1996,  pp. 171-180.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000257&pid=S1909-9762201000020000600027&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p> </font>      ]]></body><back>
<ref-list>
<ref id="B1">
<label>1</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Club]]></surname>
<given-names><![CDATA[S. S]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A Prospective Analysis of 1518 Laparoscopic Cholecystectomies]]></article-title>
<source><![CDATA[England Journal Medicine]]></source>
<year>1991</year>
<volume>16</volume>
<page-range>1073-1078</page-range></nlm-citation>
</ref>
<ref id="B2">
<label>2</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Tendick]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
<name>
<surname><![CDATA[Downes]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Goktekin]]></surname>
<given-names><![CDATA[T]]></given-names>
</name>
<name>
<surname><![CDATA[Cavusoglu]]></surname>
<given-names><![CDATA[M. C]]></given-names>
</name>
<name>
<surname><![CDATA[Feygin]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
<name>
<surname><![CDATA[Wu]]></surname>
<given-names><![CDATA[X]]></given-names>
</name>
<name>
<surname><![CDATA[Eyal]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Hegarty]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Way]]></surname>
<given-names><![CDATA[L. W]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A Virtual Environment Test bed for Training Laparoscopic Surgical Skills]]></article-title>
<source><![CDATA[Presence: Teleoperators Virtual Environment]]></source>
<year>2000</year>
<volume>9</volume>
<numero>3</numero>
<issue>3</issue>
<page-range>236-255</page-range></nlm-citation>
</ref>
<ref id="B3">
<label>3</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Liu]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[Tendick]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
<name>
<surname><![CDATA[Cleary]]></surname>
<given-names><![CDATA[K]]></given-names>
</name>
<name>
<surname><![CDATA[Kaufmann]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A Survey of Surgical Simulation: Applications, Technology, and Education]]></article-title>
<source><![CDATA[Presence: Teleoperators Virtual Environment]]></source>
<year>2003</year>
<volume>12</volume>
<numero>6</numero>
<issue>6</issue>
<page-range>599-614</page-range></nlm-citation>
</ref>
<ref id="B4">
<label>4</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Delingette]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
<name>
<surname><![CDATA[Ayache]]></surname>
<given-names><![CDATA[N]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Hepatic Surgery Simulation]]></article-title>
<source><![CDATA[Communications ACM]]></source>
<year>2005</year>
<volume>48</volume>
<numero>2</numero>
<issue>2</issue>
<page-range>31-36</page-range></nlm-citation>
</ref>
<ref id="B5">
<label>5</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Laugier]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[Mendoza]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[Sudaraj]]></surname>
<given-names><![CDATA[K]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Towards a Realistic Medical Simulator using Virtual Environments and Haptic Interaction]]></article-title>
<source><![CDATA[Robotics Research]]></source>
<year>2003</year>
<volume>6</volume>
<page-range>289-306</page-range></nlm-citation>
</ref>
<ref id="B6">
<label>6</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Williams]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
<name>
<surname><![CDATA[Grimm]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[Coto]]></surname>
<given-names><![CDATA[E]]></given-names>
</name>
<name>
<surname><![CDATA[Roudsari]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[Hatzakis]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Volumetric Curved Planar Reformation for Virtual Endoscopy]]></article-title>
<source><![CDATA[IEEE Transactions on Visualization and Computer Graphics]]></source>
<year>2008</year>
<volume>14</volume>
<numero>1</numero>
<issue>1</issue>
<page-range>109-119</page-range></nlm-citation>
</ref>
<ref id="B7">
<label>7</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Bayona]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[García]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Mendoza]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[Fernández]]></surname>
<given-names><![CDATA[J. M]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Shoulder Arthroscopy Training System with Force Feedback]]></article-title>
<source><![CDATA[]]></source>
<year></year>
<conf-name><![CDATA[ Conference on Medical Information Visualization-Biomedical Visualization]]></conf-name>
<conf-date>2006</conf-date>
<conf-loc>Washington DC</conf-loc>
</nlm-citation>
</ref>
<ref id="B8">
<label>8</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Brown]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[Sorkin]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[Latombe]]></surname>
<given-names><![CDATA[J.C]]></given-names>
</name>
<name>
<surname><![CDATA[Montgomery]]></surname>
<given-names><![CDATA[K]]></given-names>
</name>
<name>
<surname><![CDATA[Stephanides]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Algorithmic Tools for Real-Time Microsurgery Simulation]]></article-title>
<source><![CDATA[Medical Image Analysis]]></source>
<year>2002</year>
<volume>6</volume>
<numero>3</numero>
<issue>3</issue>
<page-range>289-300</page-range></nlm-citation>
</ref>
<ref id="B9">
<label>9</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Raghupathi]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[Grisoni]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[Faure]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
<name>
<surname><![CDATA[Marchal]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
<name>
<surname><![CDATA[Cani]]></surname>
<given-names><![CDATA[M.P]]></given-names>
</name>
<name>
<surname><![CDATA[Chaillou]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[An Intestinal Surgery Simulator: Real-time Collision Processing and Visualization]]></article-title>
<source><![CDATA[IEEE Transactions on Visualization and Computer Graphics]]></source>
<year>2004</year>
<volume>10</volume>
<numero>6</numero>
<issue>6</issue>
<page-range>708-718</page-range></nlm-citation>
</ref>
<ref id="B10">
<label>10</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Wagner]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[Schill]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Manner]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Intraocular Surgery on a Virtual Eye]]></article-title>
<source><![CDATA[Communications ACM]]></source>
<year>2002</year>
<volume>45</volume>
<numero>7</numero>
<issue>7</issue>
<page-range>45-49</page-range></nlm-citation>
</ref>
<ref id="B11">
<label>11</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Meier]]></surname>
<given-names><![CDATA[U]]></given-names>
</name>
<name>
<surname><![CDATA[Lopez]]></surname>
<given-names><![CDATA[O]]></given-names>
</name>
<name>
<surname><![CDATA[Monserrat]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[Juan]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Alcaiz]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Real-time Deformable Models for Surgery Simulation: A Survey]]></article-title>
<source><![CDATA[Computer Methods and Programs in Biomedicine]]></source>
<year>2005</year>
<volume>77</volume>
<numero>3</numero>
<issue>3</issue>
<page-range>183-197</page-range></nlm-citation>
</ref>
<ref id="B12">
<label>12</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Teschner]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Kimmerle]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[Heidelberger]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
<name>
<surname><![CDATA[Zachmann]]></surname>
<given-names><![CDATA[G]]></given-names>
</name>
<name>
<surname><![CDATA[Raghupathi]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[Fuhrmann]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[Cani]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Faure]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
<name>
<surname><![CDATA[Magnenat-Thalmann]]></surname>
<given-names><![CDATA[N]]></given-names>
</name>
<name>
<surname><![CDATA[Strasser]]></surname>
<given-names><![CDATA[W]]></given-names>
</name>
<name>
<surname><![CDATA[Volino]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Collision Detection for Deformable Objects]]></article-title>
<source><![CDATA[Eurographics State-of-the-Art Report (EG-STAR)]]></source>
<year></year>
</nlm-citation>
</ref>
<ref id="B13">
<label>13</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Brown]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[Latombe]]></surname>
<given-names><![CDATA[J.C]]></given-names>
</name>
<name>
<surname><![CDATA[Montgomery]]></surname>
<given-names><![CDATA[K]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Real-Time Knot-Tying Simulation]]></article-title>
<source><![CDATA[Visualization and Computer]]></source>
<year>2004</year>
<volume>20</volume>
<numero>2</numero>
<issue>2</issue>
<page-range>165-179</page-range></nlm-citation>
</ref>
<ref id="B14">
<label>14</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Salleh]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Razak]]></surname>
<given-names><![CDATA[Z]]></given-names>
</name>
<name>
<surname><![CDATA[Caldwell]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
<name>
<surname><![CDATA[Loureiro]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Salfsar: A Dual Purpose Device for Laparoscopic Training and Tele-surgery]]></article-title>
<source><![CDATA[Malaysian Journal of Computer Science]]></source>
<year>2005</year>
<volume>18</volume>
<numero>1</numero>
<issue>1</issue>
<page-range>78-92</page-range></nlm-citation>
</ref>
<ref id="B15">
<label>15</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Webster]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Haluck]]></surname>
<given-names><![CDATA[R. S.]]></given-names>
</name>
<name>
<surname><![CDATA[Zoppetti]]></surname>
<given-names><![CDATA[G]]></given-names>
</name>
<name>
<surname><![CDATA[Benson]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[Boyd]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[Charles]]></surname>
<given-names><![CDATA[N]]></given-names>
</name>
<name>
<surname><![CDATA[Reeser]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[Sampson]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A Haptic Surgical Simulator for Laparoscopic Cholecystectomy using Real-Time Deformable Organs]]></article-title>
<source><![CDATA[]]></source>
<year></year>
<conf-name><![CDATA[ IASTED International Conference Biomedical Engineering]]></conf-name>
<conf-date>2003</conf-date>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
<ref id="B16">
<label>16</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Schijven]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Jakimowicz]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Virtual Reality Surgical Laparoscopic Simulators]]></article-title>
<source><![CDATA[Surgical Endoscopy]]></source>
<year>2003</year>
<volume>17</volume>
<numero>12</numero>
<issue>12</issue>
<page-range>2041-2042</page-range></nlm-citation>
</ref>
<ref id="B17">
<label>17</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Gunn]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Using Haptics in a Networked Inmersive 3D Environment]]></article-title>
<source><![CDATA[]]></source>
<year></year>
</nlm-citation>
</ref>
<ref id="B18">
<label>18</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Ackerman]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Banvard]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Imaging Outcomes from the National Library of Medicine's Visible Human Project]]></article-title>
<source><![CDATA[Computerized Medical Imaging and Graphics]]></source>
<year>2000</year>
<volume>24</volume>
<numero>3</numero>
<issue>3</issue>
<page-range>125-126</page-range></nlm-citation>
</ref>
<ref id="B19">
<label>19</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Juanes]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[Prats]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[Lagndar]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Riesco]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Application of the Visible Human Project in the Field of Anatomy: A Review]]></article-title>
<source><![CDATA[European Journal of Anatomy]]></source>
<year>2003</year>
<volume>7</volume>
<numero>3</numero>
<issue>3</issue>
<page-range>147-159</page-range></nlm-citation>
</ref>
<ref id="B20">
<label>20</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Diaz]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[Posada]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
<name>
<surname><![CDATA[Trefftz]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
<name>
<surname><![CDATA[Bernal]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Development of a Surgical Simulator to Training Laparoscopic Procedures]]></article-title>
<source><![CDATA[International Journal of Education and Information Technologies]]></source>
<year>2008</year>
<volume>2</volume>
<numero>1</numero>
<issue>1</issue>
<page-range>95-103</page-range></nlm-citation>
</ref>
<ref id="B21">
<label>21</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Hong]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Jung]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[Choi]]></surname>
<given-names><![CDATA[M.H]]></given-names>
</name>
<name>
<surname><![CDATA[Welch]]></surname>
<given-names><![CDATA[S. W. J]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Fast Volume Preservation for a Mass-Spring System]]></article-title>
<source><![CDATA[IEEE Computer and Graphics Applications]]></source>
<year>2006</year>
<volume>26</volume>
<numero>5</numero>
<issue>5</issue>
<page-range>83-91</page-range></nlm-citation>
</ref>
<ref id="B22">
<label>22</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Sorensen]]></surname>
<given-names><![CDATA[T. S]]></given-names>
</name>
<name>
<surname><![CDATA[Mosegaard]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[An Introduction to GPU Accelerated Surgical Simulation]]></article-title>
<person-group person-group-type="editor">
<name>
<surname><![CDATA[Harders]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Szekely]]></surname>
<given-names><![CDATA[G.]]></given-names>
</name>
</person-group>
<source><![CDATA[]]></source>
<year></year>
<conf-name><![CDATA[Third International Symposium]]></conf-name>
<conf-date>2006</conf-date>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
<ref id="B23">
<label>23</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Hwu]]></surname>
<given-names><![CDATA[W.-M]]></given-names>
</name>
<name>
<surname><![CDATA[Rodrigues]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[Ryoo]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[Stratton]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Compute Unified Device Architecture Application Suitability]]></article-title>
<source><![CDATA[Computing in Science and Engineering]]></source>
<year>2009</year>
<volume>11</volume>
<numero>3</numero>
<issue>3</issue>
<page-range>16-26</page-range></nlm-citation>
</ref>
<ref id="B24">
<label>24</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Diaz]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[Eliuk]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[Trefftz]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
<name>
<surname><![CDATA[Boulanger]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Simulating Soft Tissue using GPU approach of the Mass-Spring Model]]></article-title>
<source><![CDATA[]]></source>
<year></year>
<conf-name><![CDATA[ 2010 International Conference on Computer Graphics and Artificial Intelligence]]></conf-name>
<conf-date>2010</conf-date>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
<ref id="B25">
<label>25</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Hubbard]]></surname>
<given-names><![CDATA[P. M]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Approximating Polyhedra with Spheres for Time-Critical Collision Detection]]></article-title>
<source><![CDATA[ACM Transactions Graphics]]></source>
<year>1996</year>
<volume>15</volume>
<numero>3</numero>
<issue>3</issue>
<page-range>179-210</page-range></nlm-citation>
</ref>
<ref id="B26">
<label>26</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Zhang]]></surname>
<given-names><![CDATA[X]]></given-names>
</name>
<name>
<surname><![CDATA[Kim]]></surname>
<given-names><![CDATA[Y. J]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Interactive Collision Detection for Deformable Models using Streaming AABB's]]></article-title>
<source><![CDATA[IEEE Transactions on Visualization and Computer Graphics]]></source>
<year>2007</year>
<volume>13</volume>
<numero>2</numero>
<issue>2</issue>
<page-range>318-329</page-range></nlm-citation>
</ref>
<ref id="B27">
<label>27</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Gottschalk]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[Lin]]></surname>
<given-names><![CDATA[M. C.]]></given-names>
</name>
<name>
<surname><![CDATA[Manocha]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[OBBTree: A Hierarchical Structure for Rapid Interference Detection]]></article-title>
<source><![CDATA[]]></source>
<year></year>
<conf-name><![CDATA[23 Annual Conference on Computer Graphics and Interactive Techniques]]></conf-name>
<conf-date>1996</conf-date>
<conf-loc>New York NY</conf-loc>
</nlm-citation>
</ref>
</ref-list>
</back>
</article>
