Assuring Autonomy Using MBSE, Formal Methods, and the Best Agile/DevOps Practices
摘要
Increasingly, autonomous systems, including robots, are being used in both commercial and military applications. These systems span a wide range, from unmanned ground vehicles, e.g., “smart cars,” to unmanned weapon systems. Autonomous systems can have major advantages—they perform some tasks faster and more efficiently than humans and can operate in dangerous environments where humans might be killed. Given the unsafe environments in which many autonomous systems operate, assurance is needed that they behave as intended. However, assuring autonomy is complex partly because autonomous systems often operate in rapidly changing environments, making predicting their behavior difficult. This unpredictability means that existing assurance techniques, which typically assume the system behavior is known in advance, will often not work in assuring autonomy. This chapter describes four major challenges that arise in assuring autonomous systems and how to address each challenge. We conclude with recommendations describing how formal methods, agile, and DevOps practices can be combined to produce safe autonomous systems.