Categorizing methods for integrating machine learning with executable specifications

David Harel, Raz Yerushalmi, Assaf Marron, Achiya Elyasaf

Research output: Contribution to journalReview articlepeer-review


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.

Original languageEnglish
Article number111101
JournalScience China Information Sciences
Issue number1
Early online date17 Oct 2023
StatePublished - 1 Jan 2024


  • artificial intelligence
  • behavioral programming
  • deep reinforcement learning
  • domain knowledge
  • grey box learning
  • machine learning
  • rules
  • survey

All Science Journal Classification (ASJC) codes

  • General Computer Science


Dive into the research topics of 'Categorizing methods for integrating machine learning with executable specifications'. Together they form a unique fingerprint.

Cite this