muuss-cgc by liuqingyan


									                     4th CGC Workshop on
                    Computational Geometry

                   Geometry at Work:
               Open Issues Encountered in
           Real Applications using BRL-CADTM

                     Michael John Muuss
                   The U. S. Army Research Laboratory

16-October-1999                                         1
                   Why We Model
     • Storytellers communicate feelings to people.
        + “Skin-deep” models are fine for movies.
     • We are predicting or matching physical phenomena:
        + Energy levels received by a sensor.
        + Damage statistics of live-fire tests.

16-October-1999                                            2
                    Modeling is Only
                  One Part of the Process

                        Analysis Products

                  Today‟s topic is modeling and simulation.

16-October-1999                                               3
                  Modeling Means
                  Different Things...
     • Goal: Re-creating the real-world in simulation:
       + Re-creating individual laboratory tests.
          • Science & Engineering community starts here.
       + Re-creating real proving grounds.
       + Re-creating training centers and actual exercises.
       + Re-creating combat locations and scenarios.
          • Training community & wargamers start here.

16-October-1999                                               4
                  The Simulation Challenge

16-October-1999                              5
                      Meeting the
                  Simulation Challenge
     • Engineering-level geometric detail.
     • Physics-based simulation.
     • Realistic 3-D atmosphere, ground, and sea models.
     • Fast: Hardware-in-the-loop, man-in-the-loop.
        + Real-time, near-real-time, Web, and offline.
     • Common geometry.
     • Common software.
     • Massively parallel processing.

16-October-1999                                            6
                  Two Types of Simulation

     • Image Generation            • Vulnerability/Lethality
     • “If you can‟t see it, you     Analysis
       can‟t shoot it.”            • “Will the bullet bounce off?”

16-October-1999                                                      7

     • I. BRL-CADTM and Targets
     • II. Shooting Bullets
     • III. Making Pictures

16-October-1999                   8
                  I. BRL-CADTM and Targets

16-October-1999                              9
                     BRL-CADTM Primitive Solids

       sphere           spheroid               ellipsoid         right circular   right elliptical   truncated right       truncated
                                                                    cylinder         cylinder         circular cone     elliptical cone

                                          edge-contracted                          quadrilateral                         of halfspaces
     truncated        topo. cubic       topo. cubic 6-hedron   right triangular                      tetrahedron
    general cone       6-hedron                                     prism            pyramid

                           torus           right parabolic     right hyperbolic     elliptical         elliptical
        torus                                 cylinder             cylinder        paraboloid         hyperboloid      waterline-based

                                                                                                           voxel data
                                                                                                              general polyhedron
                                                                                                                  trimmed NURBS
                                              extruded            revolved           extruded
     Path and bend    convex hull                                plane curve        plane curve
                     of two spheres            bit map
16-October-1999                                                                                                                           10
                  Primitive Solids

16-October-1999                      11
                   CSG Boolean Operations
                                   (wedge block) - cylinder

                                    wedge - block - cylinder

      block - (wedge  cylinder)

16-October-1999                                                 12
                           Database Organization

         hull                turret                         suspension              crew

            turret_armor          turret_interior                  gun

                                breech               gun_tube            bore_evacuator

                              cylinder_1.s          cylinder_2.s     cylinder_3.s

16-October-1999                                                                            13
                  A Medium-Resolution
                  BRL-CAD Database

16-October-1999                         14
                  Corps Command Post

16-October-1999                        15
                   Library of Existing
                  BRL-CAD™ Geometry

16-October-1999                          16
                    One Geometry,
                    Multiple Uses
     • To compute ballistic penetration & vulnerability:
        + Need 3-D solid geometry and material information.
     • The same targets are also useful for:
        + Signatures: Radar, MMW, IR, X-ray, etc.
        + Smoke & Obscurants simulation.
        + Chem./Bio agent infiltration.
        + Electro-Magnetic Interference.
     • BRL-CADTM is the basis for all our simulations.

16-October-1999                                               17
                        Ray Tracing



16-October-1999                              18
                  Evaluating Boolean Expressions
                              in CSG

                    A                    C



  ABC:             100   110     010    011   010


16-October-1999                                     19
                  II. Shooting Bullets

16-October-1999                          20
                               Analysis Process
      threat/target        Level 1


                              Component                Level 2
        physics,               damage
 penetration models, ...
                                engineering,                                       Level 3
                           criticality analysis, ...

                                                             operations research,            utility
                                                            missions, scenarios, ...
                                                                                                       Level 4

16-October-1999                                                                                            21
                    Computing Component Damage
                     (Level 1 to Level 2 Mapping)

       CSG model of vehicle

                               Spall    Specification of
                  Ray tracer           munition performance

      Shotlines representing            Vulnerability model
      Penetrator+spall paths

                                           Damage Results
16-October-1999                                               22
                              Through a Target

                                                                                    fan   armor
                                                           starter       sump
                                    HE     wall
                  armor-piercing   round
        glacis       rounds
16-October-1999                                                                                   23
                     Penetration Results

              into internal volume

           Residual penetration
          inside internal volume
              0             900 mm

16-October-1999                            24
                  Behind-Armor Debris
                     (Flash X-Ray)

16-October-1999                         25
                   Spall: a Secondary
                   Damage Mechanism
     • Experimental Data:         • Simulation Results:
        + Perpendicular jet.         + Oblique impact.

                  Thousands of fragments to track!
                    Each generates another ray.
                   Behind-Armor-Debris is BAD.
16-October-1999                                           26
                        Mapping from Damage
                        to Capability (L2->L3)
                                            Main Armament Fault Tree
              Fault Trees map
             component failure
         to subsystem capability.

                  Main Armament Subsystem

         Subsystems per vehicle: 50-100
16-October-1999                                                        27
                       Is a Ray a
                  Good Approximation
                    for a Fragment?
     • Sensor pixel. 0.01mm diameter -- OK.
     • Rifle bullet. 5.56mm diameter -- Maybe.

     • Tank bullet.
        + 30-120mm diameter -- No.

16-October-1999                                  28
                    In General: No!

     • Real particles have non-zero cross-section.
       + A 0-thickness ray is not the best approximation.
     • A real fragment will hit wires that the ray will miss.
     • Most damage is done by spall cloud.
       + Has a large total surface area.
       + We sample density distribution with 1000‟s of rays.
       + This greatly under-samples the target geometry.

16-October-1999                                                 29
                  Beam or Cone Tracing?

     • Obvious solution:
        + Model particle path as a cylindrical beam.
        + Model light ray as a cone.
     • Solve cylinder-vs-object or cone-vs-object
        + Such intersections yield complex volumes.

16-October-1999                                        30
                  A Ray Slipping Through
                    Complex Geometry
                             Object on Centerline


16-October-1999                                           31
                   A Beam through
                  Complex Geometry
                          Object on Centerline


16-October-1999                                        32
                  Objects in the Beam
                            Object on Centerline

16-October-1999                                    33
                   A Simplified View
                  of the Relationships
                         Object on Centerline

                                   But it isn‟t this simple!
16-October-1999                                                34
                     Relations Along a Ray

                         entirely-precedes   occults


16-October-1999                                        35
                    Difficulties with
     • Intersection with more general solids is expensive.
        + E.g. height field, or t-NURBS.
     • Representation of the results is difficult.
        + No exact representation of the volume.
           • At best, result could be some kind of B-rep.
        + No convenient abstraction of volumetric result.
           • Partially ordered sets!
     • Utilizing the results is difficult.
        + How to compute ricochet -vs- penetration?
16-October-1999                                              36
                           A Plea!

     • Are there any good representations for these
       intersection volumes?
     • Are there any good abstractions for these intersection

16-October-1999                                                 37
                  Our Short-Term Strategy

     • Fire additional rays distributed around main ray.
        + Tightly coupled with space partitioning, for high
        + User-selected patterns.
     • Peripheral rays intersected only when main ray does
       not intersect geometry.
     • Heuristics for choosing a single interval as “most
       representative” of material in that region.
     • Reduces missing small objects in beam path.
16-October-1999                                               38
                  III. Making Pictures

16-October-1999                          39
                    What is PST?

     • PST = PTN and SWISS, Together!
        + PTN = Paint-the-Night
           • Real-time polygon rendering
           • From CECOM/NVESD
        + SWISS = Synthetic Wide-band Imaging Spectra-
          photometer and Environmental Simulation
           • Ray-traced BRL-CAD™ CSG geometry
           • From ARL/SLAD

16-October-1999                                          40
                              Application of PST

     • The image generator is just one component of a larger
       simulation. E.g. MFS3, or missile simulation.
        Full Platform Simulation                                                     Full Platform Simulation
                                              Full Environment Simulation
                or HWIL                                                                      or HWIL

              6 DoF                Motion_t
                                                        PST                 Images           ATR
         Flight Dynamics

                                                   Control Decisions

16-October-1999                                                                                                 41

     • 8-12 micron IR image generator.
     • SGI Performer based.
     • Uses outboard image processor for sensor effects.
     • A large highly tuned monolithic application
        + With exceptionally high performance.
        + Highest polygon rates seen on a real application.
     • Individually drawn trees (2 perpendicular polygons)
     • Individually drawn boulders.

16-October-1999                                               42

     • A physics-based synthetic wide-band imaging
        + A camera-like sensor
        + Looks at any frequency of energy.
     • A set of physics-based virtual worlds for it to look at:
        + Atmosphere, clouds, smoke, targets, trees,
          vegetation, high-resolution terrain.
     • A dynamic world; everything moves & changes.

16-October-1999                                                   43
                  A Grand-Challenge
                  Computing Problem
     • Real targets, enormous scene complexity, > 10Km2.
     • Physics-based hyper-spectral image generation.
     • Nano-atmospherics, smoke, and obscurants.
     • Ray-traced image generation, exact CSG geometry.
        + Near-real-time (6fps).
     • Fully scalable algorithms.
     • Network distributed MIMD parallel HPC.
     • Image delivery to desktop via ATM networks.

16-October-1999                                            44
                  Ray-Tracing for
                  Image Synthesis

16-October-1999                     45
                       Advantages of a
                       Ray-Tracing SIG
                                          • Allows reflection, refraction:
                                             + Windshields, glints.
                                             + Branch reflections, 3-5 µm.
                                          • Atmospheric attenuation,
                                             + Individual path integrals.
                                          • Accurate shadows:
                                             + Haze, clouds, smoke.
     2nd-Generation FLIR image, 8-12 µm
                                          • Multiple light sources:
         (Downsampled to 1/4 NTSC)
                                             + Sunlight, flare, spotlight.
16-October-1999                                                              46
                  CSG Rendering Advantages

     • Ray-traced CSG is free from limitations of hardware
       polygon rendering:
        + No approximate polygonal geometry.
           • No seams, exact curvatures.
        + Exact profile edges. Important for ATR!
        + No level-of-detail switching, no “popping”.
        + Full temperature range in Kelvins, not 0-255.
        + Unlimited spectral resolution, not just 3 channels.

16-October-1999                                                 47
                  Cruise Missile Shadow

                                            Ridge Profile

                                                            Missile Shadow

                     Terrain Quantization

16-October-1999                                                              48
                   Target Geometry
     • Need at least 1cm resolvable features on targets.

16-October-1999                                            49
                   Complex Geometry Today

                    • < 1cm target features.
                    • 1m terrain fence-post spacing
                    • Three-dimensional trees:
                       + Leaves.
                       + Bark.
                    • Procedural grass, other
                    • Boulders, other clutter.

16-October-1999                                                       50
                  Procedural Grass

16-October-1999                      51
                  Ray-Traced Atmosphere

                             • Propagation easy in vacuum!
                             • Modeling four effects:
                                + Absorption
                                + Emission
                                + In-scatter
                                + Out-scatter
                             • Computer can‟t do integrals.
                                + Repeated summation
                                + Discretized atmosphere

16-October-1999                                               52
                   The Blue Hills of
                  Fort Hunter-Liggett

16-October-1999                         53
                   Hyper-Spectral: The
                  Power of a Single Pixel

16-October-1999                             54
                        Open Issue:
                  Representing Reflectance
     • For each material used in the virtual world, need bi-
       directional reflectance distribution function (BRDF),
     • Need BRDF as function of wavelength, too!
     • Seek a representation of this data which is:
        + Compact to store.
        + Easy to locate important lobes.

16-October-1999                                                55
                  Backplane Philosophy

                              BRL-CAD™      V/L Server
                              Ray Tracer
                          Paint-the-Night   Dynamics
                         Polygon Renderer
                          Paint-the-Night   Terrain
                         Polygon Renderer
                                            Thermal Models
     • Standardized Slots (Interface).
     • Location independent                   :

        + Except for performance.

16-October-1999                                              56
                  Implementation Goals
     • To have a software backplane:
        + Allowing each function to run as separate process.
        + Allowing easy reconfiguration.
        + Allowing independent software development.
        + Using common geometry throughout.
        + Multiple Synthetic Image Generator (SIG) types.
           • Keep simulation details out of the SIGs.

16-October-1999                                                57
                  Required Backplane
     • Event Services
        + Implement with HLA interactions.
     • Query/Response Services
        + HLA interactions with custom routing space.
     • Continuous/Bulk Data
        + Custom Distributed Shared Memory software.
           • Auto-broadcast, optional subscriber notification.
           • Notification, subscriber polls for data update.

16-October-1999                                                  58
                    PST Simulation with RT
                                     World                          Sensor        Output
        Input                      Simulations                    Simulation    Transducers
                                    Atmosphere                         RT
   ToD     Mapper     Gen                                              SIG
                                   Ground Therm
                                    Tree Therm
                      Carpet       Target Therm               RTSYNC
           Mapper    Sensor
                                    Vehicle                                    Monitor
  FlyBox   Mapper
                    Controller     Dynamics
                                    Vehicle        Process            DB
                      I/F          Dynamics

16-October-1999                                                                               59
                    PST Simulation with PTN
                                      World                                 Sensor
        Input                       Simulations                           Simulation      Output
     Transducers                                                                        Transducers
   ToD     Mapper      Gen                                                 SIG
                                    Ground Therm
                                     Tree Therm
                       Magic                                                    Data-cube
                       Carpet       Target Therm
           Mapper     Sensor
                                     Vehicle                                            Monitor
  FlyBox   Mapper
                     Controller     Dynamics
                                     Vehicle        Process                DB
                       I/F          Dynamics

16-October-1999                                                                                       60
                  Independent Time Scales

     • Image generators need to run fast:
        + 30 Hz for humans.
        + 6 Hz is fastest acquisition rate of ATRs.
        + 800 Hz for non-imaging sensors (Stinger rosette).
     • Physics-based simulations can run slower:
        + 90 sec/update for thermal & atmosphere models.
     • Transient effects need to be added as a delta:
        + Leaf flutter, explosions, smoke details.

16-October-1999                                               61
                  Hardware Environment

     • Multiple CPUs per cabinet.
     • Multiple cabinets linked via OC-3 or OC-12 ATM.
        + Geographically distributed (Belvoir, APG, Knox).
     • Multi-vendor system, e.g.:
        + Cray vector machine for thermal mesh solution.
        + SGI Origin 2000 for parallel ray-tracing.
        + SGI Infinite Reality for polygon rendering.
     • 100-200 processors participating.

16-October-1999                                              62
                        Ft. Knox Application
                               of PST
     • 1 RT SIG, 3 SGI SIGs, soldiers-in-the-loop.
                           Digital Video to ATM
                  PTN                                                                  Mapper

                                                         ATM to D-2 Video
                                                                                 DTV   Mapper
                                                                                 DTV   Mapper
                  PTN                                                            DTV   Mapper


                                                                            DREN ATM

16-October-1999                                                                                 63
                         The Ft. Knox
     • One SWISS ray-traced            • Ray-tracer in Maryland
       image display.                     + >200 cpu Origin-2000
        + For most sensitive tests.    • Environment Sim in MD.
     • Multiple PTN polygon               + Cray T916, 16 cpus.
       image displays.                    OC-3 ATM
        + Esp. to test teamwork.       • Three PTN SIGs in VA.
     • All in one shared                  + Infinite Reality
       environment: terrain, air:
                                          OC-3 ATM
        + Craters, smoke, haze…
                                       • Man-in-the-Loop in KY.
        + Multiple players, threats.
                                         + Digital Image Display
16-October-1999                                                    64
                  Real-Time Performance!

     • Geometry has Spatial Coherence.
        + We exploit that!
     • A lot of the performance of our ray-tracer comes from
       extensive use of space partitioning.
        + Muuss NUBSP tree, a flavor of Kd tree.
     • Cost of ray/model intersection is proportional to local
       geometric complexity, not O(n). (good property)

16-October-1999                                                  65
                    Data Structures
                  versus The Hardware
     • Kd tree                     • Memory Hierarchy

                       Retrieve:                  Processor

                                       Translation Look-aside Buffer (TLB)
                        pointer                    L1 Cache

                                                   L2 Cache

                                             Memory Bus / Network

                                                Bank Arbitration
                     O(3 log n)
                   trips to RAM                      RAM
16-October-1999                                                              66
                  Walking a Binary Tree

     • Speed of walking a binary tree is limited by raw
       access time to main memory.
        + No pipelining, no unrolling, no pre-fetch.
        + Caches don‟t help much.
     • Binary tree‟s memory-wait penalty accounts for 65%
       of runtime on R8000. Worse on Origin2000.
     • Can‟t live without space partitioning, alternative is
       massive O(n) search, >100X slower.

16-October-1999                                                67
                          A Plea to
                  the Research Community
     • Develop “cache friendly” algorithms & data structures
     • Universities teach that memory access time is uniform
       across address space, not time varying. E.g. Knuth.
        + Valid for old non-cached non-paged machines, 70s
        + DEC PDP-11/45, Cray-X/MP.
     • DEC VAX-11/780 added TLB, circa 1980.
        + Extra trips to memory on TLB miss.
     • And then came the caches…

16-October-1999                                                68
                     Example of an
                  Alternative: NUGrid
     • Non-uniform 3-dimensional grid of leaf nodes.
     • Index in several dozen instructions, 3D DDA.
     • Few loads required to get to intended volume.
        + Can double overall speed on large models.
     • M. Gigante, “Accelerated Ray Tracing using Non-
       Uniform Grids”, Proceedings of Ausgraph ‟90.
                                               O(0) extra

16-October-1999                                             69
                  Some Final Thoughts

     • ARL really cares about Geometry and Algorithms.
       + We appreciate your research!

     • When you write an ARO grant proposal,
       + Feel free to suggest me as a reviewer.
       + Or Paul Tanenbaum.

16-October-1999                                          70

     • Lee Butler (environment: smoke, grass, …)
     • Paul Tanenbaum (PO sets)
     • Max Lorenzo, CECOM
        + His team of SAIC contractors
     • Chris Johnson, Paladin Software
     • DoD HPCMO
     • OSD ATR
     • VPG

16-October-1999                                    71
                  Who is this MUUSS Fellow,

                              Mike Muuss
                             Señor Scientist

                      U.S. Army Research Laboratory
                      APG, MD 21005-5068 U.S.A.

16-October-1999                                       72
                        Peer Assessment
                         of BRL-CAD

       “an effective constructive solid modeling capability with
       highly efficient ray tracing”

       “a computer-aided engineering (CAE) system, uniquely suited
       to survivability and lethality applications … in which physics-
       based simulations can build on an efficient ray-tracing engine”

       “a platform for a „virtual test environment‟ that could provide
       a powerful, cost-effective capability for survivability and
       lethality evaluation.”
                           1998 Assessment of the Army Research Laboratory,
                   ARL Technical Assessment Board, National Research Council
16-October-1999                                                                73
    Data Storage Comparison
  CSG                  BREP Splines           BREP Facets

 radius(r)              20 knot values            287 triangles
vertex(x,y,z)         45 control pts(x,y,z)   ~287 vertices (x,y,z)
                          45 weights
4 numbers                200 numbers            ~861 numbers

                CSG is most storage efficient

To top