Is Boeing 737-MAX Still Safe? Analysis and Prevention of MCAS-Induced Crashes

20 Jan 2023  ·  Noah T. Curran, Thomas Kennings, Kang G. Shin ·

Semi-autonomous (SA) systems face the problem of deciding whether to select control input from the human operator or autonomous controller when they conflict with each other. While one may design an SA system to default to accepting control from one or the other, such design choices can have catastrophic consequences in safety-critical settings. For instance, the sensors an autonomous controller relies upon may provide incorrect information about the environment due to tampering or natural wear. On the other hand, the human operator may also provide dangerous input. This begs an important question: Can we convert an existing SA system to make dynamic real-time control decisions that are tolerant of erroneous/malicious input? To explore this question in this paper, we investigate a specific application of an SA system that failed due to a static assignment of control authority. Namely, the well-publicized failure of the Boeing 737-MAX Maneuvering Characteristics Augmentation System (MCAS) that caused the crashes of Lion Air Flight 610 and Ethiopian Airlines Flight 302. First, through in-depth real-time simulation, we analyze and demonstrate the ease by which the original MCAS design could fail. Our analysis reveals several novel vectors of failure that were not present in the original crashes. We also analyze Boeing's revised MCAS and show how it falls short of its intended goals. Using these insights, we present Semi-Autonomous MCAS (SA-MCAS), a new MCAS that both meets the intended goals of MCAS and avoids the failure cases that plagued the original MCAS design. We demonstrate SA-MCAS's ability to make correct control decisions of the aircraft, even when the human and autonomous operators provide conflicting control inputs.

PDF Abstract
No code implementations yet. Submit your code now

Tasks


Datasets


  Add Datasets introduced or used in this paper

Results from the Paper


  Submit results from this paper to get state-of-the-art GitHub badges and help the community compare results to other papers.

Methods