A proposal submitted to the Student Engineers' Council.
Abstract:
Virtual Environments(VE) have been hailed as the next medium for visualization and CAD tools. They present the promise of a much more immersive, collaborative and natural interface due to the presentation of data in forms specifically adapted to the human sensory system. Unfortunately, these promises have not been met. Although there have been tools created that allow the manipulation and modification of objects in an environment, difficulties ranging from gesture-recognition to format-conversions to collaborative workspaces to poor initial designs have hampered the development of truly usable, cross-application tools.
Introduction to JIVE
JIVE seeks to meld several issues at the heart of CAD, Simulation and Modeling Tools (SMT) and Virtual Environments. CAD applications have proven to be the best methods of storing, creating and representing engineering data and plots while Simulation tools help solve complex, usually unintelligible systems through recreation. Virtual Environments, such as the CAVE, I-Desk and more commonly the desktop NT system, have an unparalleled ability to present vast amounts of data in a format most natural to human cognition, three-dimensional spaces. JIVE will be a tool that combines the strength of all three. It will have the CAD powers of creation and representation, the complexity representation and programmability needed by Simulation and Modeling Tools and the display and interaction of Virtual Environments.
The applications of JIVE are far-reaching. Engineers would be able to create and design projects using natural hand-gestures and motions, and then watch the parts from all angles interact under various environmental conditions. Civil Engineers would be able to design cities like model railroads then simulate traffic patterns and disasters like earthquakes or tornadoes. Physicists could create models of interstellar constructs and observe their movements. Material engineers would demonstrate atomic forces and observe molecular movements in their theoretic designs. Geneticist would observe proteins grown off of engineered DNA for the biologists who would observe those same proteins acting as gates for cell walls. Chemical Engineers would build molecules, apply heat and catalysts then observe the reactions. Aerospace engineers could design surfaces in real-time simulated wind-tunnels and oceanographic engineers would observe their creations sailing the seas or diving under the waters. Any type of complex system requiring high levels of interaction and composed of proven or theoretically functionally defined interactions would easily find JIVE a useful tool.
Virginia Tech College of Engineering as JIVE's Birthplace
Virginia Tech is the logical choice for incubating such a far-reaching project due to the NSF-ARI CAVE Proposal which granted $1.6 Million dollars for the creation of a CAVE here at Virginia Tech. JIVE seeks to build upon the projects that have been sparked by this proposal such as the VT-CAVE PACI Collaborative Cave Console which uses EVL's LIMBO as a collaborative protocol. To deal with problems with popular format conversions, JIVE will work off of the student engineering project "Designing the Phantom II Submarine in the VT-CAVE" for ESM4714 which developed an application to convert CAD formats to formats usable by the CAVE, I-Desk and the desktop CAVE-Simulator. Another student project, "Gesture Recognition in the CAVE" for CS4234 created code to track gestures in the CAVE which will form a base for the gesture-recognition system. Given that these projects cover the major foreseen problems, and a strong, diverse engineering program exists locally in which to test the multifaceted applications of JIVE, the Virginia Tech College of Engineering is the logical choice for such an ambitious project.
Impact on Students
Virginia Tech students will have a tool in which to build rapid prototypes for projects and simulate those prototypes in action. Given that a major influence on the future of engineering is VE based computer assisted design, students will have an opportunity to work with JIVE for their Engineering projects. Similar tools are currently still in the evaluation phase such as Caterpillar's rapid prototyping research, GM's virtual designing and testing of its latest car styles, and Boeing's design of the 767. Additionally, students will understand the benefits of collaborative design through the hands-on usage of JIVE during projects and will be willing to embrace the technology, as opposed to fearing it, when it does enter the market. Given the adaptability and optimization of JIVE, it will be valuable to all students in engineering and scientific projects.
Goals
Modular Object Oriented Engineering
A goal of this project is to create an environment that is easily expandable for future interface devices, multiple fields of engineering applications, existing product plug-ins, various simulation API's, multiple graphic and CAD formats as well as collaborative protocols. This type of expandability can be created using Object Oriented design such that it contains a solid dynamic core of code surrounded by layers that abstract and expand upon the core and itself. In this way, future add-on devices and enhancements will require only minimal effort to incorporate. Since a goal of JIVE is to create an easily modifiable and expandable application, this goal will receive a serious amount of consideration.
Adapting Interaction Systems
One of the major factors determining the success of a software product is its usability, therefore, much time will be spent on creating a natural, adapting interface through a learning recognition system. This system will track, record and compare gestures to identify the most probable JIVE event using Bayesian Networks. If a gesture is interpreted correctly, the network is reinforced; if a gesture is interpreted incorrectly the network is deinforced and the user can identify the correct gesture, reinforcing that for the given input. JIVE will be accepting of input from many devices but will focus on data gloves initially because of the high data per gesture ratio.
Palettes
Palettes will be the support written in to JIVE for handling specific fields of engineering and science. A palette will have tools specific to a field and objects like beams, plates, and user defined imported objects from CAD or graphic engineering tools. The palette will also have environmental settings that will be composed of commonly occurring simulation settings like gravity, wind, water, pressure and heat. A palette will be tailor made for each field and, like the API, it will evolve over time as user feed-back dictates how each should be adjusted to increase the usability and flexibility.
Simulation API
The JIVE API (Application Program Interface) will be the method in which objects existing in JIVE interact with the environment. It will be a collection of methods that can be invoked for an object to change itself, other objects, or the environment. In order to be successful, it will have to be robust enough to cover all the possibilities that a JIVE user could possibly need and yet still protect the integrity of information in JIVE. This may require several iterations to create the optimum API but, due to the Object Oriented paradigm on which JIVE is designed, information abstraction and protection will be greatly facilitated.
Collaborative Environments
Since one of the drawbacks for working on a project with existing systems is the lack of multi-user, real-time interaction, JIVE will be initially designed to handle collaboration because of the enormous efficiency improvements foreseen. Collaboration will allow users to work as teams building a design and allow engineers and scientists to work on entire projects together as opposed to current trends of creating pieces of a project and fitting them together. This can build on the CCC (CAVE Collaborative Console) project here at Virginia Tech.
Timeline
Summer
Full Modular Object Oriented Engineering with emphasis on expandability
Initial Mechanical Engineering Palette
Time spent researching protocol layering and design for collaboration such as LIMBO and CCC
Adapting Interaction Systems for data gloves
Initial Object Simulation API
Clean object importing from major CAD/3-D Formats
Fall/Spring 1999
Collaborative Environment Fully Implemented
Additional discipline Palettes ( Chemical, Aerospace, Oceanographic, Biological )
User testing and environment analysis
Version 1.0 Object Simulation API
Eye-tracking integrated (existing system )
Voice-recognition integrated (existing system )
Budget
1 Full-time summer position
May 24th 1999 - August 13th 1999 13 weeks $12.50 $6500
1 Part-time Fall and 1 part time Spring semester position
August 30th 1999 - May 5th 2000 35 weeks $12.50 $8750
Interface Testing on Humans (20) trials $400
CAVE Time (CAVE Committee student project PM downtime)
Eye-tracking Equipment Usage ( no charge )
Software:
Poly-Trans $200
Open-Flight $250
AutoCAD