Page 408 - Biomedical Engineering and Design Handbook Volume 2, Applications
P. 408

386  SURGERY

                       large number of objects, may require computational power beyond what is available in single proces-
                       sor desktop computers or workstations. It is necessary to pursue the development of network-
                       enabled virtual environments to perform distributed simulations on parallel (or cluster) computers.
                       There are several studies in the literature which applied parallel high-performance computing
                       techniques to surgical simulation. Szekely et al. 76  developed a custom-built hardware system to
                       perform parallel computation of finite element models in real time. Wu et al. 37  developed a paral-
                       lel implementation of the multigrid FEM algorithm on a cluster computer as a proof of concept to
                       incorporate as part of an interactive surgical simulation. The implementation of Wu uses a readily
                       accessible hardware platform; however, the implementation is rather customized. These studies
                       demonstrate the feasibility of employing parallel computation to simulate larger-scale models in
                       real-time interactive surgical simulation applications. More recently, Cai et al. developed network
                       middleware for networked virtual environments, as part of the GiPSi/GiPSiNet surgical simulation
                       framework. 77


           13.3.7 Open Architecture Software Frameworks
           for Surgical Simulation

                       The current state of the field of medical simulation is characterized by scattered research projects
                       using a variety of models that are neither interoperable nor independently verifiable. Simulators are
                       frequently built from scratch by individual research groups without input and validation from a larger
                       community. The challenge of developing useful medical simulations is often too great for many indi-
                       vidual research groups since expertise from large number of different fields is required. Therefore,
                       model and algorithm sharing and collaborative development of surgical simulations with multiple
                       research groups are very desirable.
                         The open source/open architecture software development model provides an attractive framework
                       to address the needs of interfacing models from multiple research groups and the ability to critically
                       examine and validate quantitative biological simulations. Open source models provide means for
                       quality control, evaluation, and peer review, which are critical for basic scientific methodology.
                       Furthermore, since subsequent users of the models and the software code have access to the original
                       code, this also improves the reusability of the models and interconnectibility of the software modules.
                       On the other hand, an open architecture simulation framework allows open source or proprietary third-
                       party development of additional models, model data, and analysis and computation modules.
                         There are several technical issues that need to be addressed for the successful development of
                       such a framework for model and algorithm sharing.
                       Modularity Through Encapsulation and Data Hiding.  Maintaining the integrity of the data of the
                       individual models in an open architecture simulation is an important requirement. Moreover, the
                       application programmers interface (API) and the overall framework also need to be able to support
                       hierarchical models and abstraction of the input-output behavior of individual layers or subsystems
                       for the level of detail desired from the simulation model.
                         The object-oriented programming concepts of encapsulation and data hiding facilitate the modular-
                       ity of the components while maintaining the data integrity. It also provides mechanisms to interface and
                       embed the constructed models and other computational modules to a larger, more sophisticated model.
                       Abstraction. In the context of surgical simulation, model abstraction is an important consideration.
                       Within a general modeling and simulation framework, different applications and different problems
                       require different types or levels of abstraction for each of the processes and components in the model.
                       Therefore, the simulation framework developed needs to be able to accommodate different types and
                       levels of abstraction for each of the different subcomponents in the model hierarchy without artificially
                       limiting the possibilities based on the requirements of a specific application or a modeling approach.
                       Heterogeneous Physical Mechanisms and Models of Computation.  Another issue that arises with
                       the varying types of abstractions is the requirement on the simulation engine to be able to handle
                       heterogeneous physical mechanisms (e.g., solid mechanics, fluid mechanics, and bioelectricity) and
   403   404   405   406   407   408   409   410   411   412   413