SlideShare una empresa de Scribd logo
1 de 29
Live Integrated Visualization Environment:
An Experiment in Generalized Structured
Frameworks for Visualization and Analysis
James H. Money, Ph.D.
Idaho National Laboratory
PEARC 17
Contents
• Background
– Problem Environment
– Past Approaches/Goals
• Live Integrate Visualization Environment
– Data Feeds/Input Connectors
– Output Connectors
– Technical & System Details
– Initial Application
– Driver Details
• Output Connector Process
– Modes of Use
– Dynamic Model Processing
• Shortcomings
• SIEVAS
• Accomplishments
• Examples
Background
• Joint Intelligence Laboratory (JIL) – built in 2006 as a rapid test bed for end-to-end
intelligence solutions for Department of Defense (DoD)
• Initially based on the Joint Intelligence Operations Center Experimental (JIOC-X)
developed early 2000s
• Built to test, experiment and train using real operational data
• Supported a number of advanced visualization systems including:
– Knowledge Wall
– Tabletop Touch Displays
– Stereo Wall
– Knowledge Advanced Visualization Environment (KAVE) – A CAVE by another
name
• Joined the JIL in late 2007
• During 2008 installed a new CAVE that is 18’x10’x10’ – largest in DoD at the time
Problem Environment
• DoD has invested in over 18 CAVEs now, mostly used for modeling and simulation and
intelligence work
• Software products used by these groups included:
– Presagis Vega Prime
– Mechdyne vGeo
– Mechdyne Conduit
– GeoTime
– Delta3D
– Google Earth Professional
– And several more…
• Strategy included having the DoD pay for modifications to CAVE-enable the proprietary
tools (high supports costs!)
Problem Environment
• Various groups were attempting to process and analyze data in real
time with these and other production systems
• Approaches varied but all contained some major flaws in execution
• The desire was to ingest real time feeds into all the environments
seamlessly
• Data feeds included Distributed Common Ground System (DCGS),
Global Command and Control System (GCCS), as well as other lessor
know systems
• Showed first prototype of real-time/in-situ visualization with GOTS
systems using DCGS-A and a Force Directed Layout in 2008 – this led
to the development of a framework for more general purpose use
Past Approaches
• Vendor Specific Extensions
– Works out of the box
– Breaks down on larger datasets/Addition cost
• Direct Vendor Modifications
– Costly to install
– Frequently, do not meet 100% of user requirements
• Custom Coding/Toolkits
– Costly to build and maintain
– Custom build for each CAVE
• OpenGL Interceptors
– Usage of desktop applications
– Requires desktop to use, features do not work in immersive
environment
Goals
1. Multi-application and domain area aware
2. Data/Model Abstraction using standard techniques
3. Simultaneous access to same data streams
4. Real-time access with DVR capability
5. Merging of simulated and live data streams
6. Utilization of off-the-shelf products
Live Integrated Visualization Environment
• Live Integrated Visualization Environment (LIVE) is the end-to-end
solution for handling the live feeds while allowing a myriad of software
and tools to visualize the results
• Supported geospatial data as well as non-geospatial data at the design
phase
• Allowed for advanced analytics in the system with verification in the
CAVE (Now called “big data”)
• Allowed for live viewing, recording, playback and manipulation of data
• Permits remote viewing to phones, tablets and other types of displays
LIVE
• Built on idea of “connectors”
• Utilized input connectors for importing and storing data
• Utilized output connectors for visualization of results
• All the components were loosely coupled and connected by a
data/message bus
• Everything was distributed out of the box
• This allows products such as Google Earth to have local data sources
without changes
LIVE
GeoTime
vGeo
Google Earth
Vega Prime
LIVE Data Feeds
• DCGS-A (ESRI Map Server)
• GCCS Tactical Management Server (TMS)
• Link 16
• Distributed Interactive Simulation (DIS)/High Level Architecture (HLA)
• Cursor-on-Target (CoT)
• System Toolkit (STK)
Live Output Connectors
• Vega Prime Modules (display, control, and loading/saving)
• Google Earth KML feed
• Force Directed Layout (FDL)
• GeoJSON for GeoTime
Technical Details
• Built initial on Microsoft .NET 2.0 -> Later migrate to 3.5
• Data storage used Microsoft SQL Server
• MessageBus custom developed using .NET Remoting
• Combination of reflection, C#, and managed and unmanaged C++ to
connect components
• Contained system information on sessions, data sources, drivers, and
configuration options
• Session
– List of Data Sources -> Associated Driver
• DVRService will load these sessions
• Also possible to use in distributed mode without centralized drivers
• Output connectors required to choose session at startup or pass by
configuration option
System Details
• First developed demo application using System Toolkit for UAV
applications to aid in planning tasks
• Developed Google Earth connector
• DVR Controls developed as desktop application
• Later DVR moved into Vega Prime as billboard controls
• Message bus used a publish-subscribe paradigm for messaging
• Message bus sent both control (for example DVR play, stop, goto) and
messages
Initial Application
LIVE
Message Bus/Web Service
CAVE
KML
Connector
Google
Earth
UAV Tool
VLC Client
Desktop
Configura) on
Tool
Vega Prime
Driver Details
• Components include
– IDriver
– IRecordable
– IPlayable
– ILIVEPlayable – live stream sources only
– ITransformable
Driver Details
Send Details
SendObjects
IDriver
LIVE
Message
Bus
Storage
IRecordable
IPlayable
ILIVEPlayable
ITransformable
Store
Retrive
Densify
DVR
Details
Instantiate
Driver
Output Connector Process
• Process
– Session would load drivers for each data source at startup
– Connect to web service for information about session
– Connect to message bus
– Subscribe to messages of interest – in this case DVR controls and
Platform type messages
– Handling dynamic loading of models in threads
– Show model and changes after model load and thereafter
• Google Earth (using Stand-alone middleware)
– Connect and listen for message
– Keep log of messages
– Generate KML when requested from Google Earth
– KMZ file would request periodic refresh of KML data
Modes of Use
• Two primary modes of use for input: Drivers (Input Connectors) and
Standalone applications
– Drivers allowed automated processing but not real user interaction
at run time
– Standalone – allowed user to change items on the fly; used by the
UAV Tool
• Output similarly two ways to obtain data
– Plugin using native SDK (Vega Prime)
– Standalone application that acted as middleware between the
message bus and the data (Google Earth)
• This allowed swapping of simulated feeds in place of real-time data
connections when network connectivity was limited. (For example,
static vs. live full motion video (FMV) feeds)
• Chaining with multiple instances for data analytics
Modes of Use
Dynamic Model Processing
LIVE
Web Service
Request for
Model
Information
Model
Information
Returned
Request for
Model
Model ZIP
Returned Model
extracted and
dynamically
added
Vega
Prime
Shortcomings
• Single point of failure for message bus “server”
• No partitioning
• No multiple session support
• No user authentication support
• Not multi-platform
• Hard to integrate some SDKs with C#
• Direct connections to databases for certain tasks
• Needs to be open source
Scientific & Intelligence Exascale Visualization Analysis System –
aka LIVE 2.0
• Fixed the above shortcomings by integrating users, multiple sessions
support, and distributed “servers”
• Enabled using Java primarily with ActiveMQ
• Supports a range of clients from Java, C#, C++, Python, R, etc. – just
need a Http Client, ActiveMQ Client, and JSON Mapper to connect
• Acts much like a microservice architecture but with web services
driving longer term activities
• Server side uses component such as Spring Framework, Hibernate,
Jackson JSON Mapper
• Clients use Apache HttpClient, Jackson, and ActiveMQ client
• Web services are RESTful with JSON data exchange
• Native web interface for administration
SIEVAS
• Integrated:
– Unity 3D
– Aspen Data
– Imagery (position + orientation from EXIF data)
– CT Data
– N-Body particle physics
– Initial Dashboard
• Release on Github in ~30 days on INL’s page
https://github.com/idaholab
Accomplishments
• Added in-situ/real-time capability to immersive environments
• Permitted code re-use and interoperability among display systems
using disparate datasets
• Decreased time to completion from months and years to days and
weeks.
• Utilized in production use cases for mission planning, rehearsal, and
after action reviews across a range of domains
• Permitted discovery of new insights and analyses for ISR based
missions not before seen using traditional methods
Development Status
Completed In-Progress
(FY2017)
Multiple Sessions
Users, Groups, Authentication
Non-Java Clients (Unity)
DVR (Java & Unity)
Configurable data sources
Multiple data source integration
Auto-Partitioning (Driver level)
One-time session keys
HPC Connection/C++ Client
Larger volume datasets
Dynamic Model Loading
Dynamic isosurfaces
Water Security Testbed
UAV Application
Conclusion
• Any questions or comments?

Más contenido relacionado

La actualidad más candente

Teradata Partners 2011 - Utilizing Teradata Express For Development And Sandb...
Teradata Partners 2011 - Utilizing Teradata Express For Development And Sandb...Teradata Partners 2011 - Utilizing Teradata Express For Development And Sandb...
Teradata Partners 2011 - Utilizing Teradata Express For Development And Sandb...
monsonc
 

La actualidad más candente (20)

Build your first Internet of Things app today with Open Source
Build your first Internet of Things app today with Open SourceBuild your first Internet of Things app today with Open Source
Build your first Internet of Things app today with Open Source
 
Task programming
Task programmingTask programming
Task programming
 
Dell efficiency through convergence - Dell Active Infrastructure
Dell efficiency through convergence - Dell Active InfrastructureDell efficiency through convergence - Dell Active Infrastructure
Dell efficiency through convergence - Dell Active Infrastructure
 
Simulating Heterogeneous Resources in CloudLightning
Simulating Heterogeneous Resources in CloudLightningSimulating Heterogeneous Resources in CloudLightning
Simulating Heterogeneous Resources in CloudLightning
 
Running Non-MapReduce Big Data Applications on Apache Hadoop
Running Non-MapReduce Big Data Applications on Apache HadoopRunning Non-MapReduce Big Data Applications on Apache Hadoop
Running Non-MapReduce Big Data Applications on Apache Hadoop
 
(ATS6-PLAT06) Maximizing AEP Performance
(ATS6-PLAT06) Maximizing AEP Performance(ATS6-PLAT06) Maximizing AEP Performance
(ATS6-PLAT06) Maximizing AEP Performance
 
Evolution of unix environments and the road to faster deployments
Evolution of unix environments and the road to faster deploymentsEvolution of unix environments and the road to faster deployments
Evolution of unix environments and the road to faster deployments
 
Introduction to Apache Geode (Cork, Ireland)
Introduction to Apache Geode (Cork, Ireland)Introduction to Apache Geode (Cork, Ireland)
Introduction to Apache Geode (Cork, Ireland)
 
Teradata Partners 2011 - Utilizing Teradata Express For Development And Sandb...
Teradata Partners 2011 - Utilizing Teradata Express For Development And Sandb...Teradata Partners 2011 - Utilizing Teradata Express For Development And Sandb...
Teradata Partners 2011 - Utilizing Teradata Express For Development And Sandb...
 
Hadoop Summit Europe Talk 2014: Apache Hadoop YARN: Present and Future
Hadoop Summit Europe Talk 2014: Apache Hadoop YARN: Present and FutureHadoop Summit Europe Talk 2014: Apache Hadoop YARN: Present and Future
Hadoop Summit Europe Talk 2014: Apache Hadoop YARN: Present and Future
 
Hadoop Summit Europe 2015 - YARN Present and Future
Hadoop Summit Europe 2015 - YARN Present and FutureHadoop Summit Europe 2015 - YARN Present and Future
Hadoop Summit Europe 2015 - YARN Present and Future
 
IMCSummit 2015 - Day 1 Developer Track - Implementing Operational Intelligenc...
IMCSummit 2015 - Day 1 Developer Track - Implementing Operational Intelligenc...IMCSummit 2015 - Day 1 Developer Track - Implementing Operational Intelligenc...
IMCSummit 2015 - Day 1 Developer Track - Implementing Operational Intelligenc...
 
HBase coprocessors, Uses, Abuses, Solutions
HBase coprocessors, Uses, Abuses, SolutionsHBase coprocessors, Uses, Abuses, Solutions
HBase coprocessors, Uses, Abuses, Solutions
 
Achieving scale and performance using cloud native environment
Achieving scale and performance using cloud native environmentAchieving scale and performance using cloud native environment
Achieving scale and performance using cloud native environment
 
PostgreSQL continuous backup and PITR with Barman
 PostgreSQL continuous backup and PITR with Barman PostgreSQL continuous backup and PITR with Barman
PostgreSQL continuous backup and PITR with Barman
 
VMware - Application Portability
VMware - Application PortabilityVMware - Application Portability
VMware - Application Portability
 
Building large scale, job processing systems with Scala Akka Actor framework
Building large scale, job processing systems with Scala Akka Actor frameworkBuilding large scale, job processing systems with Scala Akka Actor framework
Building large scale, job processing systems with Scala Akka Actor framework
 
Apache Tez : Accelerating Hadoop Query Processing
Apache Tez : Accelerating Hadoop Query ProcessingApache Tez : Accelerating Hadoop Query Processing
Apache Tez : Accelerating Hadoop Query Processing
 
Edge 2016 SCL-2484: a software defined scalable and flexible container manage...
Edge 2016 SCL-2484: a software defined scalable and flexible container manage...Edge 2016 SCL-2484: a software defined scalable and flexible container manage...
Edge 2016 SCL-2484: a software defined scalable and flexible container manage...
 
Evolving for Kubernetes
Evolving for KubernetesEvolving for Kubernetes
Evolving for Kubernetes
 

Similar a PEARC17: Live Integrated Visualization Environment: An Experiment in Generalized Structured Frameworks for Visualization and Analysis

DSD-INT 2015 - RSS Sentinel Toolbox - J. Manuel Delgado Blasco
DSD-INT 2015 - RSS Sentinel Toolbox - J. Manuel Delgado BlascoDSD-INT 2015 - RSS Sentinel Toolbox - J. Manuel Delgado Blasco
DSD-INT 2015 - RSS Sentinel Toolbox - J. Manuel Delgado Blasco
Deltares
 
Multi Layer Monitoring V1
Multi Layer Monitoring V1Multi Layer Monitoring V1
Multi Layer Monitoring V1
Lahav Savir
 

Similar a PEARC17: Live Integrated Visualization Environment: An Experiment in Generalized Structured Frameworks for Visualization and Analysis (20)

Hpc lunch and learn
Hpc lunch and learnHpc lunch and learn
Hpc lunch and learn
 
Unified Framework for Real Time, Near Real Time and Offline Analysis of Video...
Unified Framework for Real Time, Near Real Time and Offline Analysis of Video...Unified Framework for Real Time, Near Real Time and Offline Analysis of Video...
Unified Framework for Real Time, Near Real Time and Offline Analysis of Video...
 
Resume2015
Resume2015Resume2015
Resume2015
 
Big SQL 3.0 - Fast and easy SQL on Hadoop
Big SQL 3.0 - Fast and easy SQL on HadoopBig SQL 3.0 - Fast and easy SQL on Hadoop
Big SQL 3.0 - Fast and easy SQL on Hadoop
 
Open shift and docker - october,2014
Open shift and docker - october,2014Open shift and docker - october,2014
Open shift and docker - october,2014
 
InfoSphere BigInsights - Analytics power for Hadoop - field experience
InfoSphere BigInsights - Analytics power for Hadoop - field experienceInfoSphere BigInsights - Analytics power for Hadoop - field experience
InfoSphere BigInsights - Analytics power for Hadoop - field experience
 
Lessons Learned from Real-World Deployments of Java EE 7 at JavaOne 2014
Lessons Learned from Real-World Deployments of Java EE 7 at JavaOne 2014Lessons Learned from Real-World Deployments of Java EE 7 at JavaOne 2014
Lessons Learned from Real-World Deployments of Java EE 7 at JavaOne 2014
 
DSD-INT 2015 - RSS Sentinel Toolbox - J. Manuel Delgado Blasco
DSD-INT 2015 - RSS Sentinel Toolbox - J. Manuel Delgado BlascoDSD-INT 2015 - RSS Sentinel Toolbox - J. Manuel Delgado Blasco
DSD-INT 2015 - RSS Sentinel Toolbox - J. Manuel Delgado Blasco
 
Android quick talk
Android quick talkAndroid quick talk
Android quick talk
 
Bigdata Hadoop project payment gateway domain
Bigdata Hadoop project payment gateway domainBigdata Hadoop project payment gateway domain
Bigdata Hadoop project payment gateway domain
 
Opal: Simple Web Services Wrappers for Scientific Applications
Opal: Simple Web Services Wrappers for Scientific ApplicationsOpal: Simple Web Services Wrappers for Scientific Applications
Opal: Simple Web Services Wrappers for Scientific Applications
 
Monitoring federation open stack infrastructure
Monitoring federation open stack infrastructureMonitoring federation open stack infrastructure
Monitoring federation open stack infrastructure
 
DEVNET-1169 CI/CT/CD on a Micro Services Applications using Docker, Salt & Ni...
DEVNET-1169	CI/CT/CD on a Micro Services Applications using Docker, Salt & Ni...DEVNET-1169	CI/CT/CD on a Micro Services Applications using Docker, Salt & Ni...
DEVNET-1169 CI/CT/CD on a Micro Services Applications using Docker, Salt & Ni...
 
Adding Support for Networking and Web Technologies to an Embedded System
Adding Support for Networking and Web Technologies to an Embedded SystemAdding Support for Networking and Web Technologies to an Embedded System
Adding Support for Networking and Web Technologies to an Embedded System
 
2013 Enterprise Track, Using Spatial ETL in a Multi-vendor Enterprise GIS Env...
2013 Enterprise Track, Using Spatial ETL in a Multi-vendor Enterprise GIS Env...2013 Enterprise Track, Using Spatial ETL in a Multi-vendor Enterprise GIS Env...
2013 Enterprise Track, Using Spatial ETL in a Multi-vendor Enterprise GIS Env...
 
Cloud Computing in Systems Programming Curriculum
Cloud Computing in Systems Programming CurriculumCloud Computing in Systems Programming Curriculum
Cloud Computing in Systems Programming Curriculum
 
Mihai_Nuta
Mihai_NutaMihai_Nuta
Mihai_Nuta
 
GPA Software Overview R3
GPA Software Overview R3GPA Software Overview R3
GPA Software Overview R3
 
Multi Layer Monitoring V1
Multi Layer Monitoring V1Multi Layer Monitoring V1
Multi Layer Monitoring V1
 
Supporting Research through "Desktop as a Service" models of e-infrastructure...
Supporting Research through "Desktop as a Service" models of e-infrastructure...Supporting Research through "Desktop as a Service" models of e-infrastructure...
Supporting Research through "Desktop as a Service" models of e-infrastructure...
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Último (20)

Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 

PEARC17: Live Integrated Visualization Environment: An Experiment in Generalized Structured Frameworks for Visualization and Analysis

  • 1. Live Integrated Visualization Environment: An Experiment in Generalized Structured Frameworks for Visualization and Analysis James H. Money, Ph.D. Idaho National Laboratory PEARC 17
  • 2. Contents • Background – Problem Environment – Past Approaches/Goals • Live Integrate Visualization Environment – Data Feeds/Input Connectors – Output Connectors – Technical & System Details – Initial Application – Driver Details • Output Connector Process – Modes of Use – Dynamic Model Processing • Shortcomings • SIEVAS • Accomplishments • Examples
  • 3. Background • Joint Intelligence Laboratory (JIL) – built in 2006 as a rapid test bed for end-to-end intelligence solutions for Department of Defense (DoD) • Initially based on the Joint Intelligence Operations Center Experimental (JIOC-X) developed early 2000s • Built to test, experiment and train using real operational data • Supported a number of advanced visualization systems including: – Knowledge Wall – Tabletop Touch Displays – Stereo Wall – Knowledge Advanced Visualization Environment (KAVE) – A CAVE by another name • Joined the JIL in late 2007 • During 2008 installed a new CAVE that is 18’x10’x10’ – largest in DoD at the time
  • 4. Problem Environment • DoD has invested in over 18 CAVEs now, mostly used for modeling and simulation and intelligence work • Software products used by these groups included: – Presagis Vega Prime – Mechdyne vGeo – Mechdyne Conduit – GeoTime – Delta3D – Google Earth Professional – And several more… • Strategy included having the DoD pay for modifications to CAVE-enable the proprietary tools (high supports costs!)
  • 5. Problem Environment • Various groups were attempting to process and analyze data in real time with these and other production systems • Approaches varied but all contained some major flaws in execution • The desire was to ingest real time feeds into all the environments seamlessly • Data feeds included Distributed Common Ground System (DCGS), Global Command and Control System (GCCS), as well as other lessor know systems • Showed first prototype of real-time/in-situ visualization with GOTS systems using DCGS-A and a Force Directed Layout in 2008 – this led to the development of a framework for more general purpose use
  • 6. Past Approaches • Vendor Specific Extensions – Works out of the box – Breaks down on larger datasets/Addition cost • Direct Vendor Modifications – Costly to install – Frequently, do not meet 100% of user requirements • Custom Coding/Toolkits – Costly to build and maintain – Custom build for each CAVE • OpenGL Interceptors – Usage of desktop applications – Requires desktop to use, features do not work in immersive environment
  • 7. Goals 1. Multi-application and domain area aware 2. Data/Model Abstraction using standard techniques 3. Simultaneous access to same data streams 4. Real-time access with DVR capability 5. Merging of simulated and live data streams 6. Utilization of off-the-shelf products
  • 8. Live Integrated Visualization Environment • Live Integrated Visualization Environment (LIVE) is the end-to-end solution for handling the live feeds while allowing a myriad of software and tools to visualize the results • Supported geospatial data as well as non-geospatial data at the design phase • Allowed for advanced analytics in the system with verification in the CAVE (Now called “big data”) • Allowed for live viewing, recording, playback and manipulation of data • Permits remote viewing to phones, tablets and other types of displays
  • 9. LIVE • Built on idea of “connectors” • Utilized input connectors for importing and storing data • Utilized output connectors for visualization of results • All the components were loosely coupled and connected by a data/message bus • Everything was distributed out of the box • This allows products such as Google Earth to have local data sources without changes
  • 11. LIVE Data Feeds • DCGS-A (ESRI Map Server) • GCCS Tactical Management Server (TMS) • Link 16 • Distributed Interactive Simulation (DIS)/High Level Architecture (HLA) • Cursor-on-Target (CoT) • System Toolkit (STK)
  • 12. Live Output Connectors • Vega Prime Modules (display, control, and loading/saving) • Google Earth KML feed • Force Directed Layout (FDL) • GeoJSON for GeoTime
  • 13. Technical Details • Built initial on Microsoft .NET 2.0 -> Later migrate to 3.5 • Data storage used Microsoft SQL Server • MessageBus custom developed using .NET Remoting • Combination of reflection, C#, and managed and unmanaged C++ to connect components • Contained system information on sessions, data sources, drivers, and configuration options • Session – List of Data Sources -> Associated Driver • DVRService will load these sessions • Also possible to use in distributed mode without centralized drivers • Output connectors required to choose session at startup or pass by configuration option
  • 14. System Details • First developed demo application using System Toolkit for UAV applications to aid in planning tasks • Developed Google Earth connector • DVR Controls developed as desktop application • Later DVR moved into Vega Prime as billboard controls • Message bus used a publish-subscribe paradigm for messaging • Message bus sent both control (for example DVR play, stop, goto) and messages
  • 15. Initial Application LIVE Message Bus/Web Service CAVE KML Connector Google Earth UAV Tool VLC Client Desktop Configura) on Tool Vega Prime
  • 16. Driver Details • Components include – IDriver – IRecordable – IPlayable – ILIVEPlayable – live stream sources only – ITransformable
  • 18. Output Connector Process • Process – Session would load drivers for each data source at startup – Connect to web service for information about session – Connect to message bus – Subscribe to messages of interest – in this case DVR controls and Platform type messages – Handling dynamic loading of models in threads – Show model and changes after model load and thereafter • Google Earth (using Stand-alone middleware) – Connect and listen for message – Keep log of messages – Generate KML when requested from Google Earth – KMZ file would request periodic refresh of KML data
  • 19. Modes of Use • Two primary modes of use for input: Drivers (Input Connectors) and Standalone applications – Drivers allowed automated processing but not real user interaction at run time – Standalone – allowed user to change items on the fly; used by the UAV Tool • Output similarly two ways to obtain data – Plugin using native SDK (Vega Prime) – Standalone application that acted as middleware between the message bus and the data (Google Earth) • This allowed swapping of simulated feeds in place of real-time data connections when network connectivity was limited. (For example, static vs. live full motion video (FMV) feeds) • Chaining with multiple instances for data analytics
  • 21. Dynamic Model Processing LIVE Web Service Request for Model Information Model Information Returned Request for Model Model ZIP Returned Model extracted and dynamically added Vega Prime
  • 22. Shortcomings • Single point of failure for message bus “server” • No partitioning • No multiple session support • No user authentication support • Not multi-platform • Hard to integrate some SDKs with C# • Direct connections to databases for certain tasks • Needs to be open source
  • 23. Scientific & Intelligence Exascale Visualization Analysis System – aka LIVE 2.0 • Fixed the above shortcomings by integrating users, multiple sessions support, and distributed “servers” • Enabled using Java primarily with ActiveMQ • Supports a range of clients from Java, C#, C++, Python, R, etc. – just need a Http Client, ActiveMQ Client, and JSON Mapper to connect • Acts much like a microservice architecture but with web services driving longer term activities • Server side uses component such as Spring Framework, Hibernate, Jackson JSON Mapper • Clients use Apache HttpClient, Jackson, and ActiveMQ client • Web services are RESTful with JSON data exchange • Native web interface for administration
  • 24. SIEVAS • Integrated: – Unity 3D – Aspen Data – Imagery (position + orientation from EXIF data) – CT Data – N-Body particle physics – Initial Dashboard • Release on Github in ~30 days on INL’s page https://github.com/idaholab
  • 25. Accomplishments • Added in-situ/real-time capability to immersive environments • Permitted code re-use and interoperability among display systems using disparate datasets • Decreased time to completion from months and years to days and weeks. • Utilized in production use cases for mission planning, rehearsal, and after action reviews across a range of domains • Permitted discovery of new insights and analyses for ISR based missions not before seen using traditional methods
  • 26. Development Status Completed In-Progress (FY2017) Multiple Sessions Users, Groups, Authentication Non-Java Clients (Unity) DVR (Java & Unity) Configurable data sources Multiple data source integration Auto-Partitioning (Driver level) One-time session keys HPC Connection/C++ Client Larger volume datasets Dynamic Model Loading Dynamic isosurfaces