TY - JOUR
T1 - Categorizing methods for integrating machine learning with executable specifications
AU - Harel, David
AU - Yerushalmi, Raz
AU - Marron, Assaf
AU - Elyasaf, Achiya
N1 - Publisher Copyright:
© 2023, Science China Press.
PY - 2024/1/1
Y1 - 2024/1/1
N2 - Deep learning (DL), which includes deep reinforcement learning (DRL), holds great promise for carrying out real-world tasks that human minds seem to cope with quite readily. That promise is already delivering extremely impressive results in a variety of areas. However, while DL-enabled systems achieve excellent performance, they are far from perfect. It has been demonstrated, in several domains, that DL systems can err when they encounter cases they had not hitherto encountered. Furthermore, the opacity of the produced agents makes it difficult to explain their behavior and ensure that they adhere to various requirements posed by human engineers. At the other end of the software development spectrum of methods, behavioral programming (BP) facilitates orderly system development using self-standing executable modules aligned with how humans intuitively describe desired system behavior. In this paper, we elaborate on different approaches for combining DRL with BP and, more generally, machine learning (ML) with executable specifications (ES). We begin by defining a framework for studying the various approaches, which can also be used to study new emerging approaches not covered here. We then briefly review state-of-the-art approaches to integrating ML with ES, continue with a focus on DRL, and then present the merits of integrating ML with BP. We conclude with guidelines on how this categorization can be used in decision making in system development, and outline future research challenges.
AB - Deep learning (DL), which includes deep reinforcement learning (DRL), holds great promise for carrying out real-world tasks that human minds seem to cope with quite readily. That promise is already delivering extremely impressive results in a variety of areas. However, while DL-enabled systems achieve excellent performance, they are far from perfect. It has been demonstrated, in several domains, that DL systems can err when they encounter cases they had not hitherto encountered. Furthermore, the opacity of the produced agents makes it difficult to explain their behavior and ensure that they adhere to various requirements posed by human engineers. At the other end of the software development spectrum of methods, behavioral programming (BP) facilitates orderly system development using self-standing executable modules aligned with how humans intuitively describe desired system behavior. In this paper, we elaborate on different approaches for combining DRL with BP and, more generally, machine learning (ML) with executable specifications (ES). We begin by defining a framework for studying the various approaches, which can also be used to study new emerging approaches not covered here. We then briefly review state-of-the-art approaches to integrating ML with ES, continue with a focus on DRL, and then present the merits of integrating ML with BP. We conclude with guidelines on how this categorization can be used in decision making in system development, and outline future research challenges.
KW - artificial intelligence
KW - behavioral programming
KW - deep reinforcement learning
KW - domain knowledge
KW - grey box learning
KW - machine learning
KW - rules
KW - survey
UR - http://www.scopus.com/inward/record.url?scp=85178232058&partnerID=8YFLogxK
U2 - 10.1007/s11432-022-3826-6
DO - 10.1007/s11432-022-3826-6
M3 - Review article
AN - SCOPUS:85178232058
SN - 1674-733X
VL - 67
JO - Science China Information Sciences
JF - Science China Information Sciences
IS - 1
M1 - 111101
ER -