  A set of about 80 researchers, practitioners, and federal agency program
managers participated in the NSF-sponsored Grand Challenges in Resilience
Workshop held on Purdue campus on March 19-21, 2019. The workshop was divided
into three themes: resilience in cyber, cyber-physical, and socio-technical
systems. About 30 attendees in all participated in the discussions of cyber
resilience. This article brings out the substantive parts of the challenges and
solution approaches that were identified in the cyber resilience theme. In this
article, we put forward the substantial challenges in cyber resilience in a few
representative application domains and outline foundational solutions to
address these challenges. These solutions fall into two broad themes:
resilience-by-design and resilience-by-reaction. We use examples of autonomous
systems as the application drivers motivating cyber resilience. We focus on
some autonomous systems in the near horizon (autonomous ground and aerial
vehicles) and also a little more distant (autonomous rescue and relief).
  For resilience-by-design, we focus on design methods in software that are
needed for our cyber systems to be resilient. In contrast, for
resilience-by-reaction, we discuss how to make systems resilient by responding,
reconfiguring, or recovering at runtime when failures happen. We also discuss
the notion of adaptive execution to improve resilience, execution transparently
and adaptively among available execution platforms (mobile/embedded, edge, and
cloud). For each of the two themes, we survey the current state, and the
desired state and ways to get there. We conclude the paper by looking at the
research challenges we will have to solve in the short and the mid-term to make
the vision of resilient autonomous systems a reality.
