Autonomous Ground Vehicles are rapidly becoming more capable of handling different types of environments. This dissertation concentrates on creating a software architecture that it designed for autonomous vehicle applications, particularly autonomous urban navigation. The main novelty of this architecture is a new type of inversion of control container that can reduce complexity and programming errors by transferring many of the most important and tedious development tasks from the application developer to the inversion of control container In developing this autonomous application framework, this dissertation contributes several novel techniques for using inversion of control to facilitate complex multithreaded computational tasks. Threads completely managed by the application framework can be used to automatically execute objects at any desired frequencies and to ensure proper memory visibility between different threads. Concurrency is unproved with a Transactional State Injection method by transparently creating snapshot copies of shared objects and injecting these private copies into threads that are dependent on them. Transactional State Injection can be extended to execute on a clustered computing environment without any changes by the application developer, thus implementing transparent distribution. Threads can be transparently migrated between machines due to machine failure or to optimize performance, thus allowing for hardware fault tolerance. Finally, to improve the communication performance of distributed applications, a new serialization system for Java is introduced that offers automatic versioning of objects and significant performance gains over other serialization systems / acase@tulane.edu
Identifer | oai:union.ndltd.org:TULANE/oai:http://digitallibrary.tulane.edu/:tulane_26208 |
Date | January 2007 |
Contributors | Trepagnier, Paul Gerard (Author), Koutsougeras, Cris (Thesis advisor) |
Publisher | Tulane University |
Source Sets | Tulane University |
Language | English |
Detected Language | English |
Rights | Access requires a license to the Dissertations and Theses (ProQuest) database., Copyright is in accordance with U.S. Copyright law |
Page generated in 0.0129 seconds