Abstract
This chapter provides practical insights into specific systems engineering and architecture considerations for building autonomous driving systems. It is aimed at the ambitious practitioner with a solid engineering background. We envision such a practitioner to be interested not just in concrete system implementations, but also in borrowing ideas from the general theory of intelligent systems to advance the state of autonomous driving.
Notes
- 1.
This is the popular version. Turing actually framed a somewhat different test, as discussed in [37].
- 2.
Although some libraries do provide bindings for other languages, in our experience C++ still dominates the scene.
References
Methodology Guidelines When Using EAST-ADL2. Public deliverable 5.1.1 of the ATESST2 project (2010), http://www.atesst.org/home/liblocal/docs/ATESST2_Deliverable_D5.1.1_V1.1.pdf
Automotive Grade Linux (2015), https://www.automotivelinux.org/
Biologically Inspired Cognitive Architectures (BICA) Society. The MAPPED Repository (2015), http://bicasociety.org/mapped/
Distributed Messaging with Zero MQ (2015), http://zeromq.org/
FMI: Functional Mock-up Interface (2015), https://www.fmi-standard.org/
IEEE Spectrum. How Google’s Autonomous Car Passed the First U.S. State Self-Driving Test (2015), http://spectrum.ieee.org/transportation/advanced-cars/how-googles-autonomous-car-passed-the-first-us-state-selfdriving-test
OSLC: Open Services for Lifecycle Collaboration (2015), http://open-services.net/
Oxford Dictionaries (2015), http://www.oxforddictionaries.com/definition/english/consciousness
The ARCADIA MBSE method for systems, hardware and software architectural design (2015), https://www.polarsys.org/capella/arcadia.html
The AUTOSAR Platform (2015), http://www.autosar.org/
The Capella Graphical Modeling Workbench (2015), https://www.polarsys.org/capella/index.html
The HAVE-it EU project. Deliverable D12.1 Architecture document (2015), http://haveit-eu.org/LH2Uploads/ItemsContent/24/HAVEit_212154_D12.1_Public.pdf
The OMG MBSE Wiki page on Methodology and Metrics (2015), http://www.omgwiki.org/MBSE/doku.php?id=mbse:methodology
The OSEK-VDX portal (2015), http://www.osek-vdx.org/
The PREEMPT_RT patch for the Linux kernel. Real-Time Linux Wiki (2015), https://rt.wiki.kernel.org
The Unreal gaming engine (2015), https://www.unrealengine.com/
The Xenomai solution for real-time Linux (2015), http://xenomai.org/
A. Albinet, J.L. Boulanger, H. Dubois, M.A. Peraldi-Frati, Y. Sorel, Q.D. Van, Model-based methodology for requirements traceability in embedded systems, in Proceedings of 3rd European Conference on Model Driven Architecture Foundations and Applications, ECMDA’07, Haifa (2007), https://hal.inria.fr/inria-00413488
S. Behere, M. Törngren, Architecture challenges for intelligent autonomous machines: an industrial perspective, in Proceedings of the 13th International Conference on Intelligent Autonomous Machines, IAS-13 (Springer International Publishing, Berlin, 2014). http://link.springer.com/chapter/10.1007%2F978-3-319-08338-4_120
S. Behere, M. Törngren, A functional architecture for autonomous driving, in Proceedings of the First International Workshop on Automotive Software Architecture, WASA ’15 (ACM, New York, NY, 2015), pp. 3–10. doi:10.1145/2752489.2752491. http://doi.acm.org/10.1145/2752489.2752491
S. Behere, M. Törngren, D. Chen, A reference architecture for cooperative driving. J. Syst. Archit. 59 (10, Part C), 1095–1112 (2013). doi:http://dx.doi.org/10.1016/j.sysarc.2013.05.014. http://www.sciencedirect.com/science/article/pii/S1383762113000957. Embedded Systems Software Architecture
P. Bieber, F. Boniol, M. Boyer, E. Noulard, C. Pagetti, New challenges for future avionic architectures. Aerosp. Lab (4), 1–10 (2012)
B.W. Boehm, A spiral model of software development and enhancement. Computer 21 (5), 61–72 (1988)
J. Bongard, H. Lipson, Automatic synthesis of multiple internal models through active exploration, in AAAI Fall Symposium: From Reactive to Anticipatory Cognitive Embodied Systems (2005)
J. Bongard, V. Zykov, H. Lipson, Resilient machines through continuous self-modeling. Science 314 (5802), 1118–1121 (2006)
G. Bradski, The OpenCV library. Dr Dobb’s J. Softw. Tools (2000). http://www.drdobbs.com/open-source/the-opencv-library/184404319
P. Braun, M. Broy, F. Houdek, M. Kirchmayr, M. Müller, B. Penzenstadler, K. Pohl, T. Weyer, Guiding requirements engineering for software-intensive embedded systems in the automotive industry. Comput. Sci. Res. Dev. 29 (1), 21–43 (2014)
M. Broy, Model-driven architecture-centric engineering of (embedded) software intensive systems: modeling theories and architectural milestones. Innov. Syst. Softw. Eng. 3 (1), 75–102 (2006). doi:10.1007/s11334-006-0011-y. http://link.springer.com/10.1007/s11334-006-0011-y
M. Broy, Two sides of structuring multi-functional software systems: function hierarchy and component architecture, in 5th ACIS International Conference on Software Engineering Research, Management & Applications (SERA 2007) (2007), pp. 3–12. doi:10.1109/SERA.2007.129. http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=4296910
M. Broy, Software and system modeling: structured multi-view modeling, specification, design and implementation, in Conquering Complexity, ed. by M. Hinchey, L. Coyle (Springer, London, 2012), pp. 309–372
M. Broy, F. Huber, B. Paech, B. Rumpe, K. Spies, Software and system modeling based on a unified formal semantics, in Requirements Targeting Software and Systems Engineering, ed. by M. Broy, B. Rumpe. Lecture Notes in Computer Science, vol. 1526 (Springer, Berlin, Heidelberg, 1998), pp. 43–68
H. Bruyninckx, Open robot control software: the OROCOS project, in Proceedings 2001 ICRA IEEE International Conference on Robotics and Automation (Cat No01CH37164), vol. 3 (2001), pp. 2523–2528. doi:10.1109/ROBOT.2001.933002. http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=933002
A. Burns, The Ravenscar profile. Ada Lett. XIX (4), 49–52 (1999). doi:10.1145/340396.340450. http://doi.acm.org/10.1145/340396.340450
D. Chalmers, The Conscious Mind: In Search of a Fundamental Theory. Oxford paperbacks (OUP, New York, 1996)
A. Chella, M. Cossentino, V. Seidita, C. Tona, An approach for the design of self-conscious agent for robotics, in Active Media Technology, ed. by A. An, P. Lingras, S. Petty, R. Huang. Lecture Notes in Computer Science, vol. 6335 (Springer, Berlin, Heidelberg, 2010), pp. 306–317
P. Cuenot, P. Frey, R. Johansson, The EAST-ADL architecture description language for automotive embedded software, in Model-Based Engineering of Embedded Real-Time Systems (springer, Berlin, Heidelberg, 2010), pp. 297–307. http://link.springer.com/chapter/10.1007%2F978-3-642-16277-0_11
D. Davidson, Turing’s test, in Modelling the Mind, ed. by K. Said (Oxford University Press, Oxford, 1990)
J.A. Estefan et al., Survey of model-based systems engineering (MBSE) methodologies. INCOSE MBSE Focus Group 25:8 (2007)
P.H. Feiler, B.A. Lewis, S. Vestal, The SAE Architecture Analysis and Design Language (AADL) a standard for engineering performance critical systems, in 2006 IEEE Conference on Computer Aided Control System Design, 2006 IEEE International Conference on Control Applications, 2006 IEEE International Symposium on Intelligent Control (2006). doi:10.1109/CACSD-CCA-ISIC.2006.4776814
T. Ferris, On the methods of research for systems engineering, in Annual Conference on Systems Engineering Research (April 2009). http://cser.lboro.ac.uk/papers/S10-62.pdf
T. Ferris, Engineering design as research, in Research Methodologies, Innovations and Philosophies in Software Systems Engineering and Information Systems, IGI Global, ed. by M. Mora, O. Gelman, A.L. Steenkamp, M. Raisinghani (2012). doi:10.4018/978-1-4666-0179-6. http://services.igi-global.com/resolvedoi/resolve.aspx?doi=10.4018/978-1-4666-0179-6
T. Fong, C. Thorpe, Vehicle teleoperation interfaces. Auton. Robots 11 (1), 9–18 (2001)
K. Forsberg, H. Mooz, The relationship of systems engineering to the project cycle. Eng. Manag. J. 4 (3), 36–43 (1992)
K. Forsberg, H. Mooz, Application of the “vee” to incremental and evolutionary development, in Systems Engineering in the Global Market Place (1995), pp. 801–808
D. Gamez, Progress in machine consciousness. Conscious. Cogn. 17 (3), 887–910 (2008)
T. Henzinger, J. Sifakis, The embedded systems design challenge, in FM 2006: Formal Methods, ed. by J. Misra, T. Nipkow, E. Sekerinski. Lecture Notes in Computer Science, vol. 4085 (Springer, Berlin, Heidelberg, 2006), pp. 1–15
S. Hussain, Investigating architecture description languages (ADLs) a systematic literature review. Master’s thesis, Linköpings universitet, Linköping, 2013
A.L. Juarez Dominguez, Feature interaction detection in the automotive domain, in 2008 23rd IEEE/ACM International Conference on Automated Software Engineering (IEEE, 2008), pp. 521–524. doi:10.1109/ASE.2008.97. http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=4639390
E.Y. Kang, E.P. Enoiu, R. Marinescu, C. Seceleanu, P.Y. Schobbens, P. Pettersson, A methodology for formal analysis and verification of east-ADL models. Reliab. Eng. Syst. Saf. 120, 127–138 (2013). doi:http://dx.doi.org/10.1016/j.ress.2013.06.007
H. Kopetz, The complexity challenge in embedded system design, in 2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC) (IEEE, 2008), pp. 3–12. doi:10.1109/ISORC.2008.14. http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=4519555 http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=4519555
E.A. Lee, Computing needs time. Commun. ACM 52 (5), 70–79 (2009). doi:10.1145/1506409.1506426. http://doi.acm.org/10.1145/1506409.1506426
P. Maes, Concepts and experiments in computational reflection, in Conference Proceedings on Object-Oriented Programming Systems, Languages and Applications, OOPSLA ’87 (ACM, New York, NY, 1987), pp. 147–155. doi:10.1145/38765.38821. http://doi.acm.org/10.1145/38765.38821
I. Malavolta, H. Muccini, P. Pelliccione, D. Tamburri, Providing architectural languages and tools interoperability through model transformation technologies. IEEE Trans. Softw. Eng. 36 (1), 119–140 (2010). doi:10.1109/TSE.2009.51
J. Mårtensson, A. Alam, S. Behere, The development of a cooperative heavy-duty vehicle for the GCDC 2011: team scoop. IEEE Trans. Intell. Transp. Syst. 13 (3), 1033–1049 (2012). doi:10.1109/TITS.2012.2204876. http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=6236179 http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6236179
J. McCarthy, Making robots conscious of their mental states, in Working Notes of the AAAI Spring Symposium on Representing Mental States and Mechanisms, Menlo Park, CA, 1995
D. McDermott, Artificial intelligence and consciousness, in The Cambridge Handbook of Consciousness, ed. by P.D. Zelazo, M. Moscovitch, E. Thompson (Cambridge University Press, Cambridge, 2007), pp. 117–150. http://dx.doi.org/10.1017/CBO9780511816789.007. Books Online
A. Metzger, Feature interactions in embedded control systems. Comput. Netw. 45 (5), 625–644 (2004). doi:10.1016/j.comnet.2004.03.002. http://linkinghub.elsevier.com/retrieve/pii/S138912860400043X
M. Minsky, Matter, mind, and models, in Semantic Information Processing, ed. by M.L. Minsky (1968)
M. Montemerlo et al., Junior: the Stanford entry in the urban challenge. J. Field Rob. 25 (9), 569–597 (2008). http://onlinelibrary.wiley.com/doi/10.1002/rob.20258/abstract
E. Nivel, K. Thórisson, Towards a programming paradigm for control systems with high levels of existential autonomy, in Artificial General Intelligence, ed. by K.U. Kühnberger, S. Rudolph, P. Wang. Lecture Notes in Computer Science, vol. 7999 (Springer, Berlin, Heidelberg, 2013), pp. 78–87
M. Odersky, L. Spoon, B. Venners, Programming in Scala: A Comprehensive Step-by-Step Guide, 2nd edn. (Artima Incorporation, Walnut Creek, 2011)
G. Pardo-Castellote, OMG data-distribution service: architectural overview, in Proceedings of the 2003 IEEE Conference on Military Communications - Volume I, MILCOM’03 (IEEE Computer Society, Washington, DC, 2003), pp. 242–247
F. Perotto, R. Vicari, L. Alvares, An autonomous intelligent agent architecture based on constructivist ai, in Artificial Intelligence Applications and Innovations, IFIP International Federation for Information Processing, vol. 154, ed. by M. Bramer, V. Devedzic (Springer US, 2004), pp. 103–115. http://link.springer.com/chapter/10.1007%2F1-4020-8151-0_10
M. Quigley, K. Conley, B. Gerkey, J. Faust, T.B. Foote, J. Leibs, R. Wheeler, A.Y. Ng, ROS: an open-source robot operating system, in ICRA Workshop on Open Source Software (2009)
W.W. Royce, Managing the development of large software systems: concepts and techniques, in Proceedings of the 9th International Conference on Software Engineering, ICSE ’87 (IEEE Computer Society Press, Los Alamitos, CA, 1987), pp. 328–338
R.B. Rusu, S. Cousins, 3D is here: Point Cloud Library (PCL), in 2011 IEEE International Conference on Robotics and Automation (ICRA) (IEEE, 2011), pp. 1–4. doi:10.1109/icra.2011.5980567
A.V. Samsonovich, Toward a unified catalog of implemented cognitive architectures, in Proceedings of the 2010 Conference on Biologically Inspired Cognitive Architectures 2010: Proceedings of the First Annual Meeting of the BICA Society (IOS Press, Amsterdam, 2010), pp. 195–244. http://dl.acm.org/citation.cfm?id=1893313.1893352
S. Sarma, N. Dutt, P. Gupta, A. Nicolau, N. Venkatasubramanian, On-chip self-awareness using cyberphysical-systems-on-chip (CPSOC), in Proceedings of the 2014 International Conference on Hardware/Software Codesign and System Synthesis, CODES ’14 (ACM, New York, NY, 2014), pp. 22:1–22:3. doi:10.1145/2656075.2661648. http://doi.acm.org/10.1145/2656075.2661648
K.R. Thórisson, From constructionist to constructivist ai, in AAAI Fall Symposium: Biologically Inspired Cognitive Architectures (2009)
K.R. Thórisson, A New Constructivist AI: From Manual Methods to Self-constructive Systems (2012). doi:10.2991/978-94-91216-62-6_9
K.R. Thórisson, A new constructivist ai: from manual methods to self-constructive systems, in Theoretical Foundations of Artificial General Intelligence, Atlantis Thinking Machines, vol. 4, ed. by P. Wang, B. Goertzel (Atlantis Press, Amsterdam, 2012), pp. 145–171
K.R. Thórisson, H.P. Helgason, Cognitive architectures and autonomy: a comparative review. J. Artif. Gen. Intell. 3 (2), 1–30 (2012). doi:10.2478/v10229-011-0015-3. http://dx.doi.org/10.2478/v10229-011-0015-3
K.R. Thórisson, H. Benko, D. Abramov, A. Arnold, S. Maskey, A. Vaseekaran, Constructionist design methodology for interactive intelligences. AI Mag. 25 (4), 77 (2004)
M.Törngren, A. Qamar, M. Biehl, F. Loiret, J. El-khoury, Integrating viewpoints in the development of mechatronic products. Mechatronics 24 (7), 745–762 (2014)
A.M. Turing, Computing machinery and intelligence. Mind 59 (236), 433–460 (1950). http://www.jstor.org/stable/2251299
R. Van Gulick, Consciousness, in The Stanford Encyclopedia of Philosophy, Spring 2014 edn., ed. by E.N. Zalta (2014). http://plato.stanford.edu/entries/consciousness/
O. Wallmark et al., Design and implementation of an experimental research and concept demonstration vehicle, in Vehicle Power and Propulsion Conference (VPPC), 2014 (IEEE, 2014), pp. 1–6. doi:10.1109/VPPC.2014.7007042
J. Westman, M. Nyberg, A reference example on the specification of safety requirements using ISO 26262, in SAFECOMP 2013 - Workshop DECS (ERCIM/EWICS Workshop on Dependable Embedded and Cyber-physical Systems) of the 32nd International Conference on Computer Safety, Reliability and Security, France, ed. by M. Roy p NA (2013). https://hal.archives-ouvertes.fr/hal-00848610
J. Westman, M. Nyberg, M. Törngren, Structuring safety requirements in ISO 26262 using contract theory, in Computer Safety, Reliability, and Security, ed. by F. Bitsch, J. Guiochet, M. Kaâniche. Lecture Notes in Computer Science, vol. 8153 (Springer, Berlin, Heidelberg, 2013), pp. 166–177
J. Ziegler et al., Making bertha drive: an autonomous journey on a historic route. IEEE Intell. Transp. Syst. Mag. 6 (2), 8–20 (2014). doi:10.1109/MITS.2014.2306552
H.P. Zima, M.L. James, P.L. Springer, Fault-tolerant on-board computing for robotic space missions. Concurr. Comput. Pract. Exp. 23 (17), 2192–2204 (2011). doi:10.1002/cpe.1768. http://dx.doi.org/10.1002/cpe.1768
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing Switzerland
About this chapter
Cite this chapter
Behere, S., Törngren, M. (2017). Systems Engineering and Architecting for Intelligent Autonomous Systems. In: Watzenig, D., Horn, M. (eds) Automated Driving. Springer, Cham. https://doi.org/10.1007/978-3-319-31895-0_13
Download citation
DOI: https://doi.org/10.1007/978-3-319-31895-0_13
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-31893-6
Online ISBN: 978-3-319-31895-0
eBook Packages: EngineeringEngineering (R0)