ABSTRACT
This article evaluates the utility of three technical design approaches implemented during the development of a Realtime Interactive Systems (RIS) architecture focusing on the areas of Virtual and Augmented Reality (VR and AR), Robotics, and Human-Computer Interaction (HCI). The design decisions are (1) the choice of the Scala programming language, (2) the implementation of the actor computational model, and (3) the central incorporation of ontologies as a base for semantic modeling, required for several Artificial Intelligence (AI) methods. A white-box expert review is applied to a detailed use case illustrating an interactive and multimodal game scenario, which requires a number of complex functional features like speech and gesture processing and instruction mapping. The review matches the three design decisions against three comprehensive non-functional requirements from software engineering: Reusability, scalability, and extensibility. The qualitative evaluation is condensed to a semi-quantitative summary, pointing out the benefits of the chosen technical design.
- T. Abaci, J. Ciger, and D. Thalmann. Planning with smart ob jects. WSCG, pages 25--28, 2005.Google Scholar
- J. Allard, V. Gouranton, L. Lecointre, E. Melin, and B. Raffin. Net Juggler: Running VR Juggler with Multiple Displays on a Commodity Component Cluster. In Proceedings of the IEEE Virtual Reality Conference, page 273. IEEE, 2002. Google ScholarDigital Library
- J. Allard, J.-D. Lesage, and B. Raffin. Modularity for Large Virtual Reality Applications. Presence: Teleoperators and Virtual Environments, 19(2):142--162, 2010. Google ScholarDigital Library
- R. Aylett and M. Luck. Applying Artificial Intelligence to Virtual Reality: Intelligent Virtual Environments. Applied Artificial Intelligence, 14(1):3--32, 2000.Google ScholarCross Ref
- A. D. Bierbaum, C. Just, P. Hartling, K. Meinert, A. Baker, and C. Cruz-Neira. VR Juggler: A Virtual Platform for Virtual Reality Application Development. In Proceedings of the IEEE Virtual Reality Conference, pages 89--96. IEEE, 2001. Google ScholarDigital Library
- M. Bues, T. Gleue, and R. Blach. Lightning: Dataflow in motion. In Proceedings of the IEEE Virtual Reality SEARIS Workshop, pages 7--11, 2008.Google Scholar
- H. Chafi, A. Sujeeth, K. Brown, H. Lee, A. Atreya, and K. Olukotun. A domain-specific approach to heterogeneous parallelism. Principles and Practices of Parallel Programming, PPoPP, 11, 2011. Google ScholarDigital Library
- P. Chevaillier, T. Trinh, M. Barange, F. Devillers, J. Soler, P. Loor, and R. Querrec. Semantic modelling of virtual environments using MASCARET. In Proceedings of the IEEE Virtual Reality SEARIS Workshop. IEEE, 2011.Google Scholar
- M. Fischbach, D. Wiebusch, A. Giebler-Schubert, M. E. Latoschik, S. Rehfeld, and H. Tramberend. SiXton's curse - Simulator X demonstration. In Proceedings of the IEEE VR, pages 255--256, 2011. Google ScholarDigital Library
- M. Fischbach, D. Wiebusch, M. E. Latoschik, \ G. Bruder, and F. Steinicke. Blending Real and Virtual Worlds using Self-Reflection and Fiducials. In Proceedings of the ICEC, Demo Papers, 2012. Google ScholarDigital Library
- J. Herling and W. Broll. The Ocean framework: providing the basis for next-gen MR applications. In Proceedings of the IEEE Virtual Reality SEARIS Workshop. IEEE, 2010.Google Scholar
- C. Hewitt, P. Bishop, and R. Steiger. A universal modular ACTOR formalism for artificial intelligence. In Proceedings of the International Joint Conference on Artificial Intelligence, pages 235--245, 1973. Google ScholarDigital Library
- C. Hofer and K. Ostermann. Modular domain-specific language components in Scala. In SIGPLAN Notices, volume 46, pages 83--92. ACM, 2010. Google ScholarDigital Library
- P. Kapahnke, P. Liedtke, S. Nesbigall, S. Warwas, and M. Klusch. ISReal: An Open Platform for Semantic-Based 3D Simulations in the 3D Internet. The Semantic Web--ISWC, pages 161--176, 2010. Google ScholarDigital Library
- J. Kelso and L. E. Arsenault. Diverse: A framework for building extensible and reconfigurable device independent virtual environments. In IEEE Virtual Reality, pages 183--190, 2002. Google ScholarDigital Library
- M. Latoschik and H. Tramberend. A scala-based actor-entity architecture for intelligent interactive simulations. In Proceedings of the Virtual Reality SEARIS Workshop, pages 9--17, 2012.Google ScholarCross Ref
- M. E. Latoschik and H. Tramberend. Simulator X: A Scalable and Concurrent Software Platform for Intelligent Realtime Interactive Systems. In Proceedings of the IEEE VR, 2011. Google ScholarDigital Library
- E. A. Lee. The problem with threads. IEEE Computer, 39(5):33--42, 2006. Google ScholarDigital Library
- J.-L. Lugrin and M. Cavazza. Making Sense of Virtual Environments: Action Representation, Grounding and Common Sense. In Proceedings of the Intelligent User Interfaces, 2007. Google ScholarDigital Library
- J.-L. Lugrin and M. Cavazza. Towards AR Game Engines. In Proceedings of the IEEE Virtual Reality SEARIS Workshop. IEEE, 2010.Google Scholar
- M. Odersky, L. Spoon, and B. Venners. Programming in Scala. Artima Inc, 2nd edition, 2010.Google Scholar
- B. Pellens, F. Kleinermann, and O. De Troyer. An Approach Facilitating 3D/VR System Development Using Behavior Design Patterns. In Proceedings of the IEEE Virtual Reality SEARIS Workshop. IEEE, 2010.Google Scholar
- M. Thielscher. FLUX: A logic programming method for reasoning agents. Theory and Practice of Logic Programming, 5(4--5):533--565, 2005. Google ScholarDigital Library
- H. Tramberend. Avocado: A Distributed Virtual Reality Framework. In IEEE Virtual Reality Conference, pages 14--21, 1999. Google ScholarDigital Library
- W3C OWL Working Group. OWL 2 Web Ontology Language Document Overview. Technical report, W3C, October 2009.Google Scholar
- W. Walker, P. Lamere, P. Kwok, B. Raj, R. Singh, E. Gouvea, P. Wolf, and J. Woelfel. Sphinx-4: A flexible open source framework for speech recognition. Technical report, Sun Microsystems, Inc., 2004. Google ScholarDigital Library
- D. Wiebusch and M. E. Latoschik. Enhanced Decoupling of Components in Intelligent Realtime Interactive Systems using Ontologies. In Proceedings of the Virtual Reality SEARIS Workshop, pages 43--51. IEEE, 2012.Google ScholarCross Ref
Index Terms
- Evaluating scala, actors, & ontologies for intelligent realtime interactive systems
Recommendations
Scala macros: let our powers combine!: on how rich syntax and static types work with metaprogramming
SCALA '13: Proceedings of the 4th Workshop on ScalaCompile-time metaprogramming has been proven immensely useful enabling programming techniques such as language virtualization, embedding of external domain-specific languages, self-optimization, and boilerplate generation among many others.
In the ...
Scala for Real-Time Systems?
JTRES '15: Proceedings of the 13th International Workshop on Java Technologies for Real-time and Embedded SystemsJava served well as a general-purpose language. However, during its two decades of constant change it has gotten some weight and legacy in the language syntax and the libraries. Furthermore, Java's success for real-time systems is mediocre.
Scala is a ...
Simulator X: A scalable and concurrent architecture for intelligent realtime interactive systems
VR '11: Proceedings of the 2011 IEEE Virtual Reality ConferenceThis article presents a platform for software technology research in the area of intelligent Realtime Interactive Systems. Simulator X is targeted at Virtual Reality, Augmented Reality, Mixed Reality, and computer games. It provides a foundation and ...
Comments