<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Comput. Neurosci.</journal-id>
<journal-title>Frontiers in Computational Neuroscience</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Comput. Neurosci.</abbrev-journal-title>
<issn pub-type="epub">1662-5188</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fncom.2022.980613</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Neuroscience</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Combining backpropagation with Equilibrium Propagation to improve an Actor-Critic reinforcement learning framework</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes">
<name><surname>Kubo</surname> <given-names>Yoshimasa</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<xref ref-type="corresp" rid="c001"><sup>&#x002A;</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/1461140/overview"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Chalmers</surname> <given-names>Eric</given-names></name>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/370030/overview"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name><surname>Luczak</surname> <given-names>Artur</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<xref ref-type="corresp" rid="c002"><sup>&#x002A;</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/7576/overview"/>
</contrib>
</contrib-group>
<aff id="aff1"><sup>1</sup><institution>Canadian Centre for Behavioural Neuroscience, University of Lethbridge</institution>, <addr-line>Lethbridge, AB</addr-line>, <country>Canada</country></aff>
<aff id="aff2"><sup>2</sup><institution>Department of Mathematics and Computing, Mount Royal University</institution>, <addr-line>Calgary, AB</addr-line>, <country>Canada</country></aff>
<author-notes>
<fn fn-type="edited-by"><p>Edited by: Jiyoung Kang, Pukyong National University, South Korea</p></fn>
<fn fn-type="edited-by"><p>Reviewed by: Sergio Verduzco Flores, Okinawa Institute of Science and Technology Graduate University, Japan; Axel Laborieux, Friedrich Miescher Institute for Biomedical Research (FMI), Switzerland</p></fn>
<corresp id="c001">&#x002A;Correspondence: Yoshimasa Kubo, <email>yoshi.kubo@uleth.ca</email></corresp>
<corresp id="c002">Artur Luczak, <email>luczak@uleth.ca</email></corresp>
<fn fn-type="other" id="fn004"><p>This article was submitted to Computational Neuroscience, a section of the journal Frontiers in Computational Neuroscience</p></fn>
</author-notes>
<pub-date pub-type="epub">
<day>23</day>
<month>08</month>
<year>2022</year>
</pub-date>
<pub-date pub-type="collection">
<year>2022</year>
</pub-date>
<volume>16</volume>
<elocation-id>980613</elocation-id>
<history>
<date date-type="received">
<day>28</day>
<month>06</month>
<year>2022</year>
</date>
<date date-type="accepted">
<day>05</day>
<month>08</month>
<year>2022</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#x00A9; 2022 Kubo, Chalmers and Luczak.</copyright-statement>
<copyright-year>2022</copyright-year>
<copyright-holder>Kubo, Chalmers and Luczak</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/"><p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p></license>
</permissions>
<abstract>
<p>Backpropagation (BP) has been used to train neural networks for many years, allowing them to solve a wide variety of tasks like image classification, speech recognition, and reinforcement learning tasks. But the biological plausibility of BP as a mechanism of neural learning has been questioned. Equilibrium Propagation (EP) has been proposed as a more biologically plausible alternative and achieves comparable accuracy on the CIFAR-10 image classification task. This study proposes the first EP-based reinforcement learning architecture: an Actor-Critic architecture with the actor network trained by EP. We show that this model can solve the basic control tasks often used as benchmarks for BP-based models. Interestingly, our trained model demonstrates more consistent high-reward behavior than a comparable model trained exclusively by BP.</p>
</abstract>
<kwd-group>
<kwd>Equilibrium Propagation</kwd>
<kwd>Actor-Critic (AC)</kwd>
<kwd>biologically plausible</kwd>
<kwd>reinforcement learning</kwd>
<kwd>backpropagation</kwd>
</kwd-group>
<counts>
<fig-count count="5"/>
<table-count count="1"/>
<equation-count count="10"/>
<ref-count count="40"/>
<page-count count="8"/>
<word-count count="5008"/>
</counts>
</article-meta>
</front>
<body>
<sec id="S1" sec-type="intro">
<title>Introduction</title>
<p>The backpropagation (BP) algorithm (<xref ref-type="bibr" rid="B30">Rumelhart et al., 1986</xref>) has long been the workhorse of deep neural networks, allowing their successful application to many tasks. BP-powered neural networks have enabled reinforcement learning systems to outperform humans at Go (<xref ref-type="bibr" rid="B35">Silver et al., 2016</xref>) and Atari games (<xref ref-type="bibr" rid="B24">Mnih et al., 2015</xref>). But BP has been criticized as being not biologically plausible (it seems unlikely that neurons do anything like compute partial derivatives). It has also been observed that humans still outperform deep neural networks on many tasks, like adversarial examples (<xref ref-type="bibr" rid="B8">Goodfellow et al., 2014</xref>), art and music. Could more biologically plausible learning mechanisms help close this gap?</p>
<p>In the reinforcement learning context, one biologically plausible method is the REINFORCE framework&#x2013;a policy-gradient algorithm that was described in a neuroscience context by <xref ref-type="bibr" rid="B39">Williams (1992)</xref>. The parallels between REINFORCE and biological neural learning have been discussed by <xref ref-type="bibr" rid="B36">Sutton and Barto (2018)</xref> and <xref ref-type="bibr" rid="B6">Chung (2020)</xref>, and it has led to more recent developments such as the Attention-Gated Brain Propagation approach (<xref ref-type="bibr" rid="B28">Pozzi et al., 2020</xref>). Actor-Critic is another reinforcement learning architecture with parallels to biological learning: several studies have seen the Actor-Critic architecture as an analog of learning mechanisms in the basal ganglia (<xref ref-type="bibr" rid="B9">Joel et al., 2002</xref>; <xref ref-type="bibr" rid="B37">Takahashi et al., 2008</xref>; <xref ref-type="bibr" rid="B34">Sheikhnezhad Fard, 2018</xref>). Biologically plausible reinforcement learning approaches can demonstrate more human-like behavior (<xref ref-type="bibr" rid="B5">Chalmers and Luczak, 2022</xref>), and so may provide important insights into human learning and intelligence.</p>
<p>In the supervised learning context, Equilibrium Propagation (EP) has been proposed as a more biologically plausible alternative to BP (<xref ref-type="bibr" rid="B32">Scellier and Bengio, 2017</xref>, <xref ref-type="bibr" rid="B33">2019</xref>; <xref ref-type="bibr" rid="B7">Ernoult et al., 2019</xref>; <xref ref-type="bibr" rid="B25">O&#x2019;Connor et al., 2019</xref>; <xref ref-type="bibr" rid="B14">Laborieux et al., 2021</xref>). EP is an extension of Contrastive Hebbian Learning (<xref ref-type="bibr" rid="B1">Almeida, 1987</xref>; <xref ref-type="bibr" rid="B26">Pineda, 1987</xref>; <xref ref-type="bibr" rid="B2">Baldi and Pineda, 1991</xref>) that sees the neural network as a dynamical system whose steady state can be perturbed by inputs during an initial &#x201C;free&#x201D; phase, and then clamped by teaching signals in a second &#x201C;clamped&#x201D; phase, affecting learning in a biologically realistic way. EP has successfully trained algorithms to perform image classification tasks like MNIST (<xref ref-type="bibr" rid="B15">LeCun et al., 1998</xref>) and CIFAR10 (<xref ref-type="bibr" rid="B12">Krizhevsky and Hinton, 2009</xref>), and <xref ref-type="bibr" rid="B14">Laborieux et al. (2021)</xref> showed that convolutional networks trained by EP can achieve comparable accuracy to BP in the CIFAR10 task. A further extension of EP by <xref ref-type="bibr" rid="B20">Luczak et al. (2022)</xref> showed how learning might occur in a single phase&#x2013;making the algorithm even more biologically plausible&#x2013;while still achieving good classification accuracy.</p>
<p>A biologically plausible reinforcement learning approach based on EP has not yet been proposed. Here we explore an Actor-Critic architecture trained by both BP and by brain-inspired modification of EP proposed by <xref ref-type="bibr" rid="B20">Luczak et al. (2022)</xref>. This study provides two contributions:</p>
<list list-type="simple">
<list-item>
<label>1.</label>
<p>We propose the first application of EP to reinforcement learning, in the form of an Actor-Critic architecture trained by a combination of EP (Actor) and BP (Critic).</p>
</list-item>
<list-item>
<label>2.</label>
<p>We demonstrate that our architecture can solve several control tasks, and that its learned behaviors are more consistently rewarding than behaviors learned using BP alone.</p>
</list-item>
</list>
</sec>
<sec id="S2" sec-type="materials|methods">
<title>Materials and methods</title>
<p>This section details how our Actor-Critic architecture was implemented.</p>
<sec id="S2.SS1">
<title>Actor-Critic architecture</title>
<p>Actor-Critic is a two-part architecture for reinforcement learning. The &#x201C;Actor&#x201D; is a model that encapsulates the learner&#x2019;s policy: it observes the current state and outputs an action to execute. The &#x201C;Critic&#x201D; is a separate model that estimates the value of an action given a particular state. It observes the effect of each executed action, often in the form of a difference between the predicted value of the action and the value actually experienced (a &#x201C;temporal difference error&#x201D;). It uses the temporal difference error as a learning signal to improve its own future value estimates, and also to update the Actor to make high-value actions more likely, and low-value actions less likely.</p>
</sec>
<sec id="S2.SS2">
<title>Actor network (trained by Equilibrium Propagation)</title>
<p>Equilibrium Propagation envisions a neural network as a dynamical system that learns in two phases. First is the &#x201C;free phase,&#x201D; in which an input is applied and the network is allowed to equilibrate. During this phase the network dynamics obey the equations:</p>
<disp-formula id="S2.Ex1">
<label>(1)</label>
<mml:math id="M1">
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mpadded>
<mml:mo rspace="5.8pt">=</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mo lspace="5.8pt" rspace="5.8pt">+</mml:mo>
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:mi>h</mml:mi>
</mml:mpadded>
<mml:mo rspace="5.8pt">&#x002A;</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mo rspace="7.5pt">-</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:msub>
<mml:mi mathvariant="normal">&#x03A3;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mpadded>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mi mathvariant="normal">&#x03B3;</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mpadded width="+3.3pt">
<mml:msub>
<mml:mi mathvariant="normal">&#x03A3;</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
</mml:mpadded>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="S2.E2">
<label>(2)</label>
<mml:math id="M3">
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mpadded>
<mml:mo rspace="5.8pt">=</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mo rspace="7.5pt">+</mml:mo>
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:mi>h</mml:mi>
</mml:mpadded>
<mml:mo rspace="5.8pt">&#x002A;</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mo rspace="7.5pt">-</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:msub>
<mml:mi mathvariant="normal">&#x03A3;</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
</mml:mpadded>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo rspace="7.5pt">+</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <italic>x</italic> is an activation, <italic>w</italic> is weights for each layer, <italic>i, j</italic>, and <italic>o</italic>, are indexes of input, hidden and output layer neurons, <italic>b</italic> is a bias. <italic>P</italic> is an activation function such as the sigmoid function, and is the feedback parameter. <italic>h</italic> is the Euler method&#x2019;s time-step. Please note that for consistency with our previous work (<xref ref-type="bibr" rid="B20">Luczak et al., 2022</xref>) we use letter <italic>o</italic> for indexing output units. We hope that &#x201C;<italic>o</italic>&#x201D; will not be confused with number <italic>0</italic>, which is not present in our equations.</p>
<p>After the network has reached a free-phase steady state, the second &#x201C;clamped&#x201D; phase begins. During this phase the output neurons are clamped (or rather, weakly clamped or nudged) toward the target values. In conventional EP the dynamics during this phase obey the equations:</p>
<disp-formula id="S2.Ex2">
<label>(3)</label>
<mml:math id="M4">
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mpadded>
<mml:mo rspace="5.8pt">=</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mo lspace="5.8pt" rspace="5.8pt">+</mml:mo>
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:mi>h</mml:mi>
</mml:mpadded>
<mml:mo rspace="5.8pt">&#x002A;</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mo rspace="7.5pt">-</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:msub>
<mml:mi mathvariant="normal">&#x03A3;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mpadded>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mi mathvariant="normal">&#x03B3;</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mpadded width="+3.3pt">
<mml:msub>
<mml:mi mathvariant="normal">&#x03A3;</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
</mml:mpadded>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="S2.Ex3">
<label>(4)</label>
<mml:math id="M6">
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mpadded>
<mml:mo rspace="5.8pt">=</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:mi>h</mml:mi>
</mml:mpadded>
<mml:mo rspace="5.8pt">&#x002A;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x03A3;</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mmultiscripts>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>o</mml:mi>
</mml:mrow>
<mml:none/>
<mml:mprescripts/>
<mml:mi>j</mml:mi>
<mml:none/>
</mml:mmultiscripts>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:mi mathvariant="normal">&#x03B2;</mml:mi>
</mml:mpadded>
<mml:mo rspace="5.8pt">&#x002A;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mo>-</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <italic>T</italic> is a target for the classification task.</p>
<p>However, in a reinforcement learning setting there is no target signal <italic>per se</italic>; only the reward signal, which the learner must use to estimate values of particular states and actions in the environment. To accommodate this different paradigm, our Actor network modifies Eq. 4 as follows:</p>
<disp-formula id="S2.Ex4">
<label>(5)</label>
<mml:math id="M8">
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mpadded>
<mml:mo rspace="5.8pt">=</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mo rspace="7.5pt">+</mml:mo>
<mml:mpadded width="+3.3pt">
<mml:mi>h</mml:mi>
</mml:mpadded>
<mml:mo rspace="5.8pt">&#x002A;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo rspace="7.5pt">-</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mpadded width="+3.3pt">
<mml:munder>
<mml:mo movablelimits="false">&#x03A3;</mml:mo>
<mml:mi>j</mml:mi>
</mml:munder>
</mml:mpadded>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mo rspace="7.5pt">+</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x2003;</mml:mi>
<mml:mo mathvariant="italic" separator="true">&#x2003;&#x2003;&#x2005;</mml:mo>
<mml:mo rspace="5.8pt">+</mml:mo>
<mml:mpadded width="+3.3pt">
<mml:mi mathvariant="normal">&#x03B2;</mml:mi>
</mml:mpadded>
<mml:mo rspace="5.8pt">&#x002A;</mml:mo>
<mml:mpadded width="+3.3pt">
<mml:mi>V</mml:mi>
</mml:mpadded>
<mml:mo rspace="5.8pt">&#x002A;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>a</mml:mi>
<mml:mo rspace="7.5pt">-</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <italic>a</italic> is the action that was taken, and <italic>V</italic> is the estimated value of the state, as estimated by the critic network (see <xref ref-type="supplementary-material" rid="DS1">Supplementary Section</xref> &#x201C;Dynamics for Actor&#x201D; for further discussion on the forms of Eqs 2, 5). Each <italic>x_o</italic> is the output of a unit corresponding to a particular action. Alternatively, <italic>V</italic> can be replaced with a temporal-difference-style quantity to reduce variance:</p>
<disp-formula id="S2.E6">
<label>(6)</label>
<mml:math id="M10">
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo rspace="5.8pt" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo rspace="5.8pt">=</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mi>V</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:msup>
<mml:mi/>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:msup>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo>-</mml:mo>
<mml:mrow>
<mml:mi>V</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <italic>s</italic> is the current state, and <italic>s</italic>&#x2032; is the new state (arrived at after executing <italic>a</italic>). Making this substitution into Eq. 5 gives the following equation for the clamped-phase dynamics at the output:</p>
<disp-formula id="S2.Ex5">
<label>(7)</label>
<mml:math id="M11">
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mpadded>
<mml:mo rspace="5.8pt">=</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mo rspace="7.5pt">+</mml:mo>
<mml:mpadded width="+3.3pt">
<mml:mi>h</mml:mi>
</mml:mpadded>
<mml:mo rspace="5.8pt">&#x002A;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo rspace="7.5pt">-</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mpadded width="+3.3pt">
<mml:munder>
<mml:mo movablelimits="false">&#x03A3;</mml:mo>
<mml:mi>j</mml:mi>
</mml:munder>
</mml:mpadded>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mo rspace="7.5pt">+</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x2003;</mml:mi>
<mml:mo mathvariant="italic" separator="true">&#x2003;&#x2003;</mml:mo>
<mml:mo>+</mml:mo>
<mml:mpadded width="+3.3pt">
<mml:mi mathvariant="normal">&#x03B2;</mml:mi>
</mml:mpadded>
<mml:mo rspace="5.8pt">&#x002A;</mml:mo>
<mml:mi>A</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo rspace="5.8pt" stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo rspace="5.8pt">&#x002A;</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mi>a</mml:mi>
<mml:mo>-</mml:mo>
<mml:mo mathvariant="italic" separator="true">&#x2003;</mml:mo>
<mml:mpadded width="+5pt">
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mpadded>
<mml:mo>}</mml:mo>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
<p>After the network reaches a clamped-phase steady state, weights could be updated according to the rule derived in the original EP paper (<xref ref-type="bibr" rid="B32">Scellier and Bengio, 2017</xref>):</p>
<disp-formula id="S2.E8">
<label>(8)</label>
<mml:math id="M13">
<mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x0394;</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mpadded width="+3.3pt">
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>r</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>o</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mpadded>
</mml:mrow>
<mml:mo rspace="5.8pt">=</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mi mathvariant="normal">&#x03B2;</mml:mi>
</mml:mfrac>
<mml:mo>&#x2062;</mml:mo>
<mml:mi mathvariant="normal">&#x03B1;</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">^</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>r</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">^</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>o</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo rspace="7.5pt">-</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">&#x02C7;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>r</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">&#x02C7;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>o</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <inline-formula><mml:math id="INEQ2"><mml:mover accent="true"><mml:mi>x</mml:mi><mml:mo stretchy="false">^</mml:mo></mml:mover></mml:math></inline-formula> is an activity at the weakly clamped phase, <italic>x</italic>? is an activity at the free phase, &#x03B1; is the learning rate, &#x03B2; is a nudging parameter, <italic>pre</italic> and <italic>post</italic> are previous and post layer neuron indexes, respectively (e.g., for &#x0394;<italic>w</italic><sub><italic>i</italic>,<italic>j</italic></sub>, <italic>pre</italic> and <italic>post</italic> will be <italic>i</italic> and <italic>j</italic>, respectively).</p>
<p>Here we replace Eq. 8 with the new rule proposed in our previous work (<xref ref-type="bibr" rid="B20">Luczak et al., 2022</xref>), which allows learning to occur in a single phase by assuming that neurons may predict their own future activity. The study showed that a rule of this form emerges naturally if we assume that each neuron is working to maximize its metabolic energy. The new rule is:</p>
<disp-formula id="S2.Ex6">
<label>(9)</label>
<mml:math id="M14">
<mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x0394;</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>r</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>o</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>&#x221D;</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mi mathvariant="normal">&#x03B2;</mml:mi>
</mml:mfrac>
<mml:mo>&#x2062;</mml:mo>
<mml:mi mathvariant="normal">&#x03B1;</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">^</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>r</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">^</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>o</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo rspace="7.5pt">-</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">^</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>r</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2062;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">&#x02C7;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>o</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x2003;</mml:mi>
<mml:mo mathvariant="italic" separator="true">&#x2003;&#x2003;&#x2005;</mml:mo>
<mml:mo rspace="10.8pt">=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mi mathvariant="normal">&#x03B2;</mml:mi>
</mml:mfrac>
<mml:mpadded width="+5pt">
<mml:mi mathvariant="normal">&#x03B1;</mml:mi>
</mml:mpadded>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">^</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>r</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">^</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>o</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo rspace="7.5pt">-</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">&#x02C7;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>o</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
<p>In this study we use this update rule for training the Actor, but omit the feature of neurons predicting their own future activity for simplicity [i.e., we assume perfect predictions by using the free-phase and clamped-phase activities directly. For details of how the prediction feature was implemented previously, see <xref ref-type="bibr" rid="B20">Luczak et al. (2022)</xref>]. Interestingly, this new, single-phase learning rule performs similarly or slightly better than the original rule in Eq. 8 [see <xref ref-type="supplementary-material" rid="DS1">Supplementary Section</xref> &#x201C;Original update rule for Actor (Equilibrium Propagation)&#x201D;].</p>
</sec>
<sec id="S2.SS3">
<title>Critic network (trained by backpropagation)</title>
<p>Equation 5 represents a prediction error&#x2013;the error between <italic>r</italic> + <italic>V</italic>(<italic>s</italic>&#x2032;), the actual value of the present experience, and <italic>V</italic>(<italic>s</italic>), the predicted value. The mean squared prediction error is then:</p>
<disp-formula id="S2.E10">
<label>(10)</label>
<mml:math id="M16">
<mml:mrow>
<mml:mpadded width="+3.3pt">
<mml:mi>L</mml:mi>
</mml:mpadded>
<mml:mo rspace="5.8pt">=</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mo fence="true">||</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mi>V</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:msup>
<mml:mi/>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:msup>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>-</mml:mo>
<mml:mrow>
<mml:mi>V</mml:mi>
<mml:mo>&#x2062;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>s</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo fence="true">||</mml:mo>
</mml:mrow>
<mml:mn>2</mml:mn>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</disp-formula>
<p>The critic network is tuned using BP in the usual way to minimize this prediction error.</p>
</sec>
<sec id="S2.SS4">
<title>Experience replay</title>
<p>We use experience replay (<xref ref-type="bibr" rid="B16">Lin, 1992</xref>; <xref ref-type="bibr" rid="B23">Mnih et al., 2013</xref>, <xref ref-type="bibr" rid="B24">2015</xref>; <xref ref-type="bibr" rid="B38">Wang et al., 2016</xref>) to make our model more stable. This method stores the agent&#x2019;s experiences (including states, actions, rewards, and next-states) and makes them available for learning later. It is worth noting that experience replay is also biologically plausible; analogous to memory replay during sleep (<xref ref-type="bibr" rid="B40">Wilson and McNaughton, 1994</xref>).</p>
<p>The complete algorithm is shown in <xref ref-type="table" rid="A1">Algorithm 1</xref>.</p>
<table-wrap position="float" id="A1">
<label>ALGORITHM 1</label>
<caption><p>Train Actor-Critic by EP and BP.</p></caption>
<table cellspacing="5" cellpadding="5" frame="hsides" rules="groups">
<tbody>
<tr>
<td valign="top" align="left"><bold>Input</bold>: Initialize action value function with synaptic weights <italic>w</italic> and <italic>b.</italic> Initialize replay memory <italic>D</italic>, episode size <italic>E</italic>, maximum step for each episode <italic>J</italic>. maximum iteration <italic>T</italic> for actor, learning rate &#x03B1;, nudging parameter &#x03B2;, time step <italic>dt</italic>, activation function <italic>p</italic></td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;for episode = 1, 2,&#x2026;., E do</td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;for j = 1, 2,&#x2026;, J do</td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;Compute x<sub>j,f</sub> with Eqs 1, 2 // index f means free phase</td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;Select action based on the probability of x<sub>j,f</sub></td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;Execute action a<sub>j</sub> in emulator and observe reward r<sub>j</sub> and state s<sub>j</sub> <sub>+</sub> <sub>1</sub></td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;store transition (a<sub>j</sub>, r<sub>j</sub>, s<sub>j</sub>, s<sub>j</sub> <sub>+</sub> <sub>1</sub>) in D</td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;set s = s&#x2032;</td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;if D has enough transition then</td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;Sample random minibatch of transitions (a<sub>k</sub>, r<sub>k</sub>, s<sub>k</sub>, s<sub>k</sub> <sub>+</sub> <sub>1</sub>) from D <disp-formula id="S2.Ex7"><mml:math id="M17"><mml:mrow><mml:mi>y</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable displaystyle="true" rowspacing="0pt"><mml:mtr><mml:mtd columnalign="center"><mml:mrow><mml:msub><mml:mi>r</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo rspace="60.8pt">,</mml:mo><mml:mrow><mml:mi>f</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>o</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mpadded width="+2.8pt"><mml:mi>r</mml:mi></mml:mpadded><mml:mo>&#x2062;</mml:mo><mml:mi>t</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>e</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>r</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>m</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>i</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>n</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>a</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>l</mml:mi></mml:mrow></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd columnalign="center"><mml:mrow><mml:mrow><mml:msub><mml:mi>r</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>s</mml:mi><mml:mrow><mml:mi>k</mml:mi><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msub></mml:mrow><mml:mo rspace="13.6pt">,</mml:mo><mml:mrow><mml:mi>f</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>o</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mpadded width="+2.8pt"><mml:mi>r</mml:mi></mml:mpadded><mml:mo>&#x2062;</mml:mo><mml:mi>n</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>o</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mpadded width="+2.8pt"><mml:mi>n</mml:mi></mml:mpadded><mml:mo>&#x2062;</mml:mo><mml:mi>t</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>e</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>r</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>m</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>i</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>n</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>a</mml:mi><mml:mo>&#x2062;</mml:mo><mml:mi>l</mml:mi></mml:mrow></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo>}</mml:mo></mml:mrow></mml:mrow></mml:math></disp-formula></td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;Compute <italic>A(<sub><italic>sk</italic></sub>)</italic> with <italic>y</italic> and <italic>V(<sub><italic>sk</italic></sub>)</italic> by Eq. 6</td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;// Update actor weights</td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;Compute <italic>x</italic><sub><italic>k,f</italic></sub> by Eqs 1, 2 // index f means free phase</td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;Compute <italic>x</italic><sub><italic>k,c</italic></sub> with <italic>A</italic>(s) and <italic>a</italic><sub><italic>k</italic></sub> by Eqs 3, 7 // index c means clamped phase</td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;Compute <italic>&#x0394;w</italic> by Eq. 9 with <italic>x<sub><italic>k,f</italic></sub>, x<sub><italic>k,c</italic></sub></italic></td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;<italic>w &#x2190; w + &#x0394;w</italic></td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;// Update critic weights</td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;Perform a gradient stop on <italic><sub>(y&#x2013;V(s))^2</sub></italic></td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;end if</td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;end for</td>
</tr>
<tr>
<td valign="top" align="left">&#x00A0;&#x00A0;&#x00A0;&#x00A0;end for</td>
</tr>
</tbody>
</table></table-wrap>
<p>The code to reproduce our results is located at: <ext-link ext-link-type="uri" xlink:href="https://github.com/ykubo82/HybridRL">https://github.com/ykubo82/HybridRL</ext-link>.</p>
</sec>
</sec>
<sec id="S3">
<title>Experiments</title>
<p>We tested our model in three simple Open AI gym tasks (<xref ref-type="bibr" rid="B4">Brockman et al., 2016</xref>): CartPole-v0, Acrobot-v1, and LunarLander-v2 (<xref ref-type="fig" rid="F1">Figure 1</xref> shows the images of these tasks). All of these tasks feature continuous states and discrete actions. Our model uses multilayer perceptrons for both Actor and Critic networks, trained by EP and BP, respectively (For comparison we also trained the actor using BP through time, but performance was not as good. Those results can be found in <xref ref-type="supplementary-material" rid="DS1">Supplementary Section</xref> &#x201C;Backpropagation through time with Actor&#x201D;). Each multilayer-perceptron neural network (MLP) consists of 1 hidden layer with 256 nodes. For LunarLander-v2, we increased the hidden size to 512 due to the complexity of the task.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption><p>Images of environments in tasks for our model: CartPole-v0 (left), Acrobot-v1 (center), and LunarLander-v2 (right). CartPole-v0 task: A pole is on a cart, and this pole is unstable. The goal of this task is to move the cart to left or right to balance the pole. Acrobot-v1: a robot arm is composed of two joints. The goal of this task is to swing the arm to reach the black horizontal line. LunarLander-v2: There is a spaceship that tries to land. The goal of this task is to land the spaceship between the flags smoothly by moving the spaceship.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fncom-16-980613-g001.tif"/>
</fig>
<p>The activation function for the hidden layer on both Actor and Critic is the hard sigmoid from <xref ref-type="bibr" rid="B14">Laborieux et al. (2021)</xref> for CartPole-v0 and LunarLander-v2, the hard sigmoid from <xref ref-type="bibr" rid="B7">Ernoult et al. (2019)</xref> for Acrobot-v1. The activation function for the Actor&#x2019;s output layer is the softmax function. A maximum of 1000 experiences were stored for experience replay, and the mini-batch size was 20. The learner was allowed 1000 steps for the CartPole-v0 and Acrobot-v1 tasks, and 2000 for LunarLander-v2. Parameter settings are shown in <xref ref-type="table" rid="T1">Table 1</xref>. Experimental results for additional BP learning rates may be found in our <xref ref-type="supplementary-material" rid="DS1">Supplementary Section</xref> &#x201C;Small learning rate for BP.&#x201D; For critic networks trained by BP, we used Adam optimizer (<xref ref-type="bibr" rid="B11">Kingma and Ba, 2014</xref>) to accelerate models&#x2019; training.</p>
<table-wrap position="float" id="T1">
<label>TABLE 1</label>
<caption><p>Parameters for our models on each task.</p></caption>
<table cellspacing="5" cellpadding="5" frame="hsides" rules="groups">
<thead>
<tr>
<td valign="top" align="left">Task</td>
<td valign="top" align="center">NN Actor</td>
<td valign="top" align="center">NN Critic</td>
<td valign="top" align="center">&#x03B1;1 for Actor</td>
<td valign="top" align="center">&#x03B1;2 for Actor</td>
<td valign="top" align="center">&#x03B2; for Actor</td>
<td valign="top" align="center">&#x03B1; for Critic</td>
<td valign="top" align="center" colspan="2">Iteration for Actor<hr/></td>
</tr>
<tr>
<td/>
<td/>
<td/>
<td/>
<td/>
<td/>
<td/>
<td valign="top" align="center">1st phase</td>
<td valign="top" align="center">2nd phase</td>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">CartPole</td>
<td valign="top" align="center">4-256-2</td>
<td valign="top" align="center">4-256-1</td>
<td valign="top" align="center">0.0001</td>
<td valign="top" align="center">0.0001</td>
<td valign="top" align="center">0.02</td>
<td valign="top" align="center">0.001</td>
<td valign="top" align="center">150</td>
<td valign="top" align="center">25</td>
</tr>
<tr>
<td valign="top" align="left">Acrobot</td>
<td valign="top" align="center">6-256-3</td>
<td valign="top" align="center">6-256-1</td>
<td valign="top" align="center">0.001</td>
<td valign="top" align="center">0.001</td>
<td valign="top" align="center">0.02</td>
<td valign="top" align="center">0.001</td>
<td valign="top" align="center">150</td>
<td valign="top" align="center">25</td>
</tr>
<tr>
<td valign="top" align="left">LunarLander</td>
<td valign="top" align="center">8-512-4</td>
<td valign="top" align="center">8-512-1</td>
<td valign="top" align="center">0.0001</td>
<td valign="top" align="center">0.002</td>
<td valign="top" align="center">0.03</td>
<td valign="top" align="center">0.0003</td>
<td valign="top" align="center">180</td>
<td valign="top" align="center">25</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn><p>NN describes number of neurons in each layer, &#x03B1;<sub>1</sub> is the learning rate for the weights between the input and hidden layer, &#x03B1;<sub>2</sub> is the learning rate for the weights between the hidden and output layers, and 1st and 2nd phases mean duration of free phase and weakly clamped phases, respectively. Results for additional learning rates may be found in our <xref ref-type="supplementary-material" rid="DS1">Supplementary Section</xref> &#x201C;The other learning rates for EP-BP&#x201D;.</p></fn>
</table-wrap-foot>
</table-wrap>
<p>For comparison, we also implement a model with the same architecture as described above, but trained purely by BP. Hereafter we refer to our model with Actor trained by EP and Critic trained by backpropagation as EP-BP, while the baseline Actor-Critic model trained entirely by backpropagation as BP. All models were run eight times, and means and standard deviations were recorded.</p>
</sec>
<sec id="S4" sec-type="results">
<title>Results</title>
<p><xref ref-type="fig" rid="F2">Figure 2</xref> shows performance of EP-BP and BP on each task. On all tasks our EP-BP model converges to more stable rewarding behavior than the baseline model train with BP only. This is quantified in <xref ref-type="fig" rid="F3">Figure 3</xref> which shows the mean reward obtained in the last 25% episodes. In each case the mean reward obtained by EP-BP is higher as compared to BP model. Moreover, closer examination of traces in <xref ref-type="fig" rid="F2">Figure 2</xref> showed higher variability in reward for BP trained model. To quantify it, for each of 8 runs of the model we calculated standard deviation (SD) from the last 25% of episodes. <xref ref-type="fig" rid="F4">Figure 4</xref> shows average SD across 8 runs for each model. This measure of variability was consistently lower for our EP-BP model. This tells us that our model is more stable than the base line model.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption><p>Plotting the reward vs. episode for CartPole-v0 (left), Acrobot-v1 (center), and LunarLander-v2 (right) on both backpropagation (BP) and EP-BP. Solid lines shows mean across 8 runs and shaded area denote standard deviation. Note that for Acrobot-v1, the agent receives &#x2013;1 as punishment until it reaches the target.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fncom-16-980613-g002.tif"/>
</fig>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption><p>Average rewards and std error (SEM) for the last 25% of episodes for backpropagation (BP) and EP-BP on CartPole-v0, Acrobot-v1, and LunarLander-v2.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fncom-16-980613-g003.tif"/>
</fig>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption><p>Average variability and std error (SEM) for the last 25% of episodes for backpropagation (BP) and EP-BP on CartPole-v0, Acrobot-v1, and LunarLander-v2.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fncom-16-980613-g004.tif"/>
</fig>
<p>As an internal measure of learning, similar to <xref ref-type="bibr" rid="B29">R&#x00F6;mer et al. (2022)</xref>, we recorded the softmax probability for each action executed by the Actor network throughout learning. For each episode, we saved the probabilities of actions that EP-BP and BP took. <xref ref-type="fig" rid="F5">Figure 5</xref> shows EP-BP executing actions with very high (&#x003E;90%) confidence after about 600 episodes in the CarPole-v0 task. This means that less than 10% of actions are selected randomly. Randomness might be important for exploring the environment in the early phase for gathering information about the environment (exploration), but in the last phase, the model should take the optimal action after getting enough information (exploitation) (<xref ref-type="bibr" rid="B22">Maroti, 2019</xref>). However, if a model does not have a high enough confidence which action is optimal, the model might not take that action because there is still some randomness. For example, a person knows that A route is always busy with traffic jams based on his experience (thanks to exploration), thus he always takes B route to the office and arrives on time (exploitation). However, another person also knows that A route is always busy based on his experience, but he sometimes takes the A route (more often than the first person) because he does not have enough confidence for the B route (this means he thinks sometimes the B route might not be busy), and he is sometimes late. Thus, the BP model&#x2019;s confidence is lower after learning, which may explain its somewhat less consistent behavior (this means the BP model takes more often non-optimal actions than EP-BP model). Of course, it is possible to drive the BP model&#x2019;s action probabilities up by decreasing the temperature of the softmax operation, but this does not outperform our model (see <xref ref-type="supplementary-material" rid="DS1">Supplementary Section</xref> &#x201C;Softmax function with low temperature for BP model&#x201D;).</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption><p>Mean and std error (SEM) (shaded area) for the probability of actions that EP-BP and backpropagation (BP) models takes on CartPole-v0.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fncom-16-980613-g005.tif"/>
</fig>
</sec>
<sec id="S5" sec-type="discussion">
<title>Discussion</title>
<p>This study has explored the value of EP in reinforcement learning by proposing an Actor-Critic model with the Actor network trained by EP and the Critic network trained by BP. The resulting models learn more consistent high-reward behavior than a baseline model trained exclusively by BP. EP has been previously applied to image classification, but to our knowledge this is the first attempt to formulate an EP-based reinforcement learning system. Thus, we consider it to be an important development toward the next generation of biologically plausible algorithms. Other, future developments should include application of EP to tasks like video classification (<xref ref-type="bibr" rid="B10">Karpathy et al., 2014</xref>) and speech recognition (<xref ref-type="bibr" rid="B21">Malik et al., 2021</xref>).</p>
<p>By exploring an EP-BP hybrid, this work provides an important step toward a completely biologically plausible Actor-Critic model. Conventional, purely BP-based models, being not very biologically plausible, can be interpreted as purely abstract models of real biological learning processes. Here we have replaced the abstract BP-based Actor with a biologically plausible EP-based Actor, while allowing the Critic to remain an abstract model of the sophisticated neuronal system that evaluates actions. At present, we find this is necessary to achieve stability: we have implemented AC models trained purely by EP and found they do not always converge [for these results, see our <xref ref-type="supplementary-material" rid="DS1">Supplementary Section</xref> &#x201C;Critic network (trained by Equilibrium Propagation)&#x201D;]. Thus, a stable method for reducing both Actor and Critic to biologically plausible networks remains elusive.</p>
<p>In addition to pursuing a purely EP learning system, future work should consider a convolutional network for application to more complex tasks such as Atari games (<xref ref-type="bibr" rid="B3">Bellemare et al., 2013</xref>) or for neuronal data analysis tasks (<xref ref-type="bibr" rid="B19">Luczak et al., 2004</xref>; <xref ref-type="bibr" rid="B18">Luczak and Narayanan, 2005</xref>; <xref ref-type="bibr" rid="B27">Ponjavic-Conte et al., 2012</xref>; <xref ref-type="bibr" rid="B31">Ryait et al., 2019</xref>). Another avenue for exploration would be the inclusion of neural adaptation (<xref ref-type="bibr" rid="B17">Luczak and Kubo, 2021</xref>; <xref ref-type="bibr" rid="B13">Kubo et al., 2022</xref>); a biologically inspired modification to EP which previous work has shown to work well on image classification tasks, and may have value in reinforcement learning as well.</p>
<p>On three tasks investigated here, our EP-BP model works better than the AC trained only by BP. One of the reasons why it works better is, again, the higher probabilities of action. In the last phase of the training, we could see that our model is very stable and has higher probabilities of action. This means our model has enough information about the environment of the tasks, and the model takes optimal actions. Another, related reason may be the somewhat slower learning of EP-BP, as observed in <xref ref-type="fig" rid="F2">Figures 2</xref>, <xref ref-type="fig" rid="F5">5</xref>. This could indicate a more thorough exploration of the environment in the early stages of learning.</p>
</sec>
<sec id="S6" sec-type="data-availability">
<title>Data availability statement</title>
<p>The original contributions presented in this study are included in the article/<xref ref-type="supplementary-material" rid="DS1">Supplementary material</xref>, further inquiries can be directed to the corresponding authors.</p>
</sec>
<sec id="S7">
<title>Author contributions</title>
<p>YK conceived the project, analyzed data, performed simulations, and wrote the manuscript. EC engaged in theoretical discussions and commented extensively on the manuscript. AL analyzed data and contributed to writing the manuscript. All authors contributed to the article and approved the submitted version.</p>
</sec>
</body>
<back>
<sec id="S8" sec-type="funding-information">
<title>Funding</title>
<p>This work was supported by grants from CIHR, NSERC, and Compute Canada to AL.</p>
</sec>
<sec id="S9" sec-type="COI-statement">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec id="S10" sec-type="disclaimer">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<sec id="S11" sec-type="supplementary-material">
<title>Supplementary material</title>
<p>The Supplementary Material for this article can be found online at: <ext-link ext-link-type="uri" xlink:href="https://www.frontiersin.org/articles/10.3389/fncom.2022.980613/full#supplementary-material">https://www.frontiersin.org/articles/10.3389/fncom.2022.980613/full#supplementary-material</ext-link></p>
<supplementary-material xlink:href="Data_Sheet_1.PDF" id="DS1" mimetype="application/pdf" xmlns:xlink="http://www.w3.org/1999/xlink"/>
</sec>
<ref-list>
<title>References</title>
<ref id="B1"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Almeida</surname> <given-names>L. B.</given-names></name></person-group> (<year>1987</year>). &#x201C;<article-title>A learning rule for asynchronous perceptrons with feedback in a combinatorial environment</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE 1st International Conference on Neural Networks</italic></source>, <role>eds</role> <person-group person-group-type="editor"><name><surname>Caudil</surname> <given-names>M.</given-names></name> <name><surname>Butler</surname> <given-names>C.</given-names></name></person-group> (<publisher-loc>San Diego, CA</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>609</fpage>&#x2013;<lpage>618</lpage>.</citation></ref>
<ref id="B2"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Baldi</surname> <given-names>P.</given-names></name> <name><surname>Pineda</surname> <given-names>F.</given-names></name></person-group> (<year>1991</year>). <article-title>Contrastive learning and neural oscillations.</article-title> <source><italic>Neural Comput.</italic></source> <volume>3</volume> <fpage>526</fpage>&#x2013;<lpage>545</lpage>. <pub-id pub-id-type="doi">10.1162/neco.1991.3.4.526</pub-id></citation></ref>
<ref id="B3"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Bellemare</surname> <given-names>M. G.</given-names></name> <name><surname>Naddaf</surname> <given-names>Y.</given-names></name> <name><surname>Veness</surname> <given-names>J.</given-names></name> <name><surname>Bowling</surname> <given-names>M.</given-names></name></person-group> (<year>2013</year>). <article-title>The arcade learning environment: An evaluation platform for general agents.</article-title> <source><italic>J. Artif. Intell. Res.</italic></source> <volume>47</volume> <fpage>253</fpage>&#x2013;<lpage>279</lpage>. <pub-id pub-id-type="doi">10.1613/jair.3912</pub-id></citation></ref>
<ref id="B4"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Brockman</surname> <given-names>G.</given-names></name> <name><surname>Cheung</surname> <given-names>V.</given-names></name> <name><surname>Pettersson</surname> <given-names>L.</given-names></name> <name><surname>Schneider</surname> <given-names>J.</given-names></name> <name><surname>Schulman</surname> <given-names>J.</given-names></name> <name><surname>Tang</surname> <given-names>J.</given-names></name><etal/></person-group> (<year>2016</year>). <article-title>Openai gym.</article-title> <source><italic>arXiv</italic></source> <comment>[Preprint]. arXiv:1606.01540</comment>.</citation></ref>
<ref id="B5"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Chalmers</surname> <given-names>E.</given-names></name> <name><surname>Luczak</surname> <given-names>A.</given-names></name></person-group> (<year>2022</year>). <article-title>Reinforcement learning with brain-inspired modulation can improve adaptation to environmental changes.</article-title> <source><italic>arXiv</italic></source> [<comment>Preprint</comment>] <pub-id pub-id-type="doi">10.48550/arXiv.2205.09729</pub-id> <pub-id pub-id-type="pmid">35895330</pub-id></citation></ref>
<ref id="B6"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Chung</surname> <given-names>S.</given-names></name></person-group> (<year>2020</year>). <article-title>An Alternative to backpropagation in deep reinforcement learning</article-title>. <source><italic>arxiv</italic></source> <comment>[Preprint] arXiv: 2010.07893v1</comment>.</citation></ref>
<ref id="B7"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ernoult</surname> <given-names>M.</given-names></name> <name><surname>Grollier</surname> <given-names>J.</given-names></name> <name><surname>Querlioz</surname> <given-names>D.</given-names></name> <name><surname>Bengio</surname> <given-names>Y.</given-names></name> <name><surname>Scellier</surname> <given-names>B.</given-names></name></person-group> (<year>2019</year>). <article-title>Updates of equilibrium prop match gradients of backprop through time in an RNN with static input.</article-title> <source><italic>Adv. Neural Inf. Process. Syst.</italic></source> <volume>32</volume> <fpage>7079</fpage>&#x2013;<lpage>7089</lpage>.</citation></ref>
<ref id="B8"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Goodfellow</surname> <given-names>I. J.</given-names></name> <name><surname>Shlens</surname> <given-names>J.</given-names></name> <name><surname>Szegedy</surname> <given-names>C.</given-names></name></person-group> (<year>2014</year>). <article-title>Explaining and harnessing adversarial examples.</article-title> <source><italic>arXiv</italic></source> [<comment>Preprint</comment>] <pub-id pub-id-type="doi">10.48550/arXiv.1412.6572</pub-id> <pub-id pub-id-type="pmid">35895330</pub-id></citation></ref>
<ref id="B9"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Joel</surname> <given-names>D.</given-names></name> <name><surname>Niv</surname> <given-names>Y.</given-names></name> <name><surname>Ruppin</surname> <given-names>E.</given-names></name></person-group> (<year>2002</year>). <article-title>Actor&#x2013;critic models of the basal ganglia: New anatomical and computational perspectives.</article-title> <source><italic>Neural Netw.</italic></source> <volume>15</volume> <fpage>535</fpage>&#x2013;<lpage>547</lpage>. <pub-id pub-id-type="doi">10.1016/s0893-6080(02)00047-3</pub-id> <pub-id pub-id-type="pmid">12371510</pub-id></citation></ref>
<ref id="B10"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Karpathy</surname> <given-names>A.</given-names></name> <name><surname>Toderici</surname> <given-names>G.</given-names></name> <name><surname>Shetty</surname> <given-names>S.</given-names></name> <name><surname>Leung</surname> <given-names>T.</given-names></name> <name><surname>Sukthankar</surname> <given-names>R.</given-names></name> <name><surname>Fei-Fei</surname> <given-names>L.</given-names></name></person-group> (<year>2014</year>). &#x201C;<article-title>Large-scale video classification with convolutional neural networks</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE conference on Computer Vision and Pattern Recognition</italic></source>, <pub-id pub-id-type="doi">10.1109/CVPR.2014.223</pub-id> <publisher-loc>Columbus, OH</publisher-loc>.</citation></ref>
<ref id="B11"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kingma</surname> <given-names>D. P.</given-names></name> <name><surname>Ba</surname> <given-names>J.</given-names></name></person-group> (<year>2014</year>). <article-title>Adam: A method for stochastic optimization.</article-title> <source><italic>arXiv</italic></source> <comment>[Preprint]. arXiv:1412.6980</comment>.</citation></ref>
<ref id="B12"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Krizhevsky</surname> <given-names>A.</given-names></name> <name><surname>Hinton</surname> <given-names>G.</given-names></name></person-group> (<year>2009</year>). <source><italic>Learning multiple layers of features from tiny images.</italic></source> <publisher-loc>Toronto, ON</publisher-loc>: <publisher-name>University of Toronto</publisher-name>.</citation></ref>
<ref id="B13"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kubo</surname> <given-names>Y.</given-names></name> <name><surname>Chalmers</surname> <given-names>E.</given-names></name> <name><surname>Luczak</surname> <given-names>A.</given-names></name></person-group> (<year>2022</year>). <article-title>Biologically-inspired neuronal adaptation improves learning in neural networks.</article-title> <source><italic>arXiv</italic></source> <comment>[preprint]. arXiv:2204.14008</comment>. <pub-id pub-id-type="doi">10.1371/journal.pcbi.1006781</pub-id> <pub-id pub-id-type="pmid">31022182</pub-id></citation></ref>
<ref id="B14"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Laborieux</surname> <given-names>A.</given-names></name> <name><surname>Ernoult</surname> <given-names>M.</given-names></name> <name><surname>Scellier</surname> <given-names>B.</given-names></name> <name><surname>Bengio</surname> <given-names>Y.</given-names></name> <name><surname>Grollier</surname> <given-names>J.</given-names></name> <name><surname>Querlioz</surname> <given-names>D.</given-names></name></person-group> (<year>2021</year>). <article-title>Scaling equilibrium propagation to deep convnets by drastically reducing its gradient estimator bias.</article-title> <source><italic>Front. Neurosci.</italic></source> <volume>15</volume>:<issue>633674</issue>. <pub-id pub-id-type="doi">10.3389/fnins.2021.633674</pub-id></citation></ref>
<ref id="B15"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>LeCun</surname> <given-names>Y.</given-names></name> <name><surname>Bottou</surname> <given-names>L.</given-names></name> <name><surname>Bengio</surname> <given-names>Y.</given-names></name> <name><surname>Haffner</surname> <given-names>P.</given-names></name></person-group> (<year>1998</year>). <article-title>Gradient-based learning applied to document recognition.</article-title> <source><italic>Proc. IEEE</italic></source> <volume>86</volume> <fpage>2278</fpage>&#x2013;<lpage>2324</lpage>. <pub-id pub-id-type="doi">10.1109/5.726791</pub-id></citation></ref>
<ref id="B16"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lin</surname> <given-names>L.-J.</given-names></name></person-group> (<year>1992</year>). <source><italic>Reinforcement learning for robots using neural networks.</italic></source> <publisher-loc>Pittsburgh, PA</publisher-loc>: <publisher-name>Carnegie Mellon University</publisher-name>.</citation></ref>
<ref id="B17"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Luczak</surname> <given-names>A.</given-names></name> <name><surname>Kubo</surname> <given-names>Y.</given-names></name></person-group> (<year>2021</year>). <article-title>Predictive neuronal adaptation as a basis for consciousness.</article-title> <source><italic>Front. Syst. Neurosci.</italic></source> <volume>15</volume>:<issue>767461</issue>. <pub-id pub-id-type="doi">10.3389/fnsys.2021.767461</pub-id></citation></ref>
<ref id="B18"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Luczak</surname> <given-names>A.</given-names></name> <name><surname>Narayanan</surname> <given-names>N. S.</given-names></name></person-group> (<year>2005</year>). <article-title>Spectral representation&#x2014;analyzing single-unit activity in extracellularly recorded neuronal data without spike sorting.</article-title> <source><italic>J. Neurosci. Methods</italic></source> <volume>144</volume> <fpage>53</fpage>&#x2013;<lpage>61</lpage>. <pub-id pub-id-type="doi">10.1016/j.jneumeth.2004.10.009</pub-id> <pub-id pub-id-type="pmid">15848239</pub-id></citation></ref>
<ref id="B19"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Luczak</surname> <given-names>A.</given-names></name> <name><surname>Hackett</surname> <given-names>T. A.</given-names></name> <name><surname>Kajikawa</surname> <given-names>Y.</given-names></name> <name><surname>Laubach</surname> <given-names>M.</given-names></name></person-group> (<year>2004</year>). <article-title>Multivariate receptive field mapping in marmoset auditory cortex.</article-title> <source><italic>J. Neurosci. Methods</italic></source> <volume>136</volume> <fpage>77</fpage>&#x2013;<lpage>85</lpage>. <pub-id pub-id-type="doi">10.1016/j.jneumeth.2003.12.019</pub-id> <pub-id pub-id-type="pmid">15126048</pub-id></citation></ref>
<ref id="B20"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Luczak</surname> <given-names>A.</given-names></name> <name><surname>McNaughton</surname> <given-names>B. L.</given-names></name> <name><surname>Kubo</surname> <given-names>Y.</given-names></name></person-group> (<year>2022</year>). <article-title>Neurons learn by predicting future activity.</article-title> <source><italic>Nat. Mach. Intell.</italic></source> <volume>4</volume> <fpage>62</fpage>&#x2013;<lpage>72</lpage>. <pub-id pub-id-type="doi">10.1038/s42256-021-00430-y</pub-id></citation></ref>
<ref id="B21"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Malik</surname> <given-names>M.</given-names></name> <name><surname>Malik</surname> <given-names>M. K.</given-names></name> <name><surname>Mehmood</surname> <given-names>K.</given-names></name> <name><surname>Makhdoom</surname> <given-names>I.</given-names></name></person-group> (<year>2021</year>). <article-title>Automatic speech recognition: A survey.</article-title> <source><italic>Multimed. Tools Appl.</italic></source> <volume>80</volume> <fpage>9411</fpage>&#x2013;<lpage>9457</lpage>. <pub-id pub-id-type="doi">10.1007/s11042-020-10073-7</pub-id></citation></ref>
<ref id="B22"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Maroti</surname> <given-names>A.</given-names></name></person-group> (<year>2019</year>). <article-title>Rbed: Reward based epsilon decay.</article-title> <source><italic>arXiv</italic></source> <comment>[Preprint]. arXiv:1910.13701</comment>.</citation></ref>
<ref id="B23"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Mnih</surname> <given-names>V.</given-names></name> <name><surname>Kavukcuoglu</surname> <given-names>K.</given-names></name> <name><surname>Silver</surname> <given-names>D.</given-names></name> <name><surname>Graves</surname> <given-names>A.</given-names></name> <name><surname>Antonoglou</surname> <given-names>I.</given-names></name> <name><surname>Wierstra</surname> <given-names>D.</given-names></name><etal/></person-group> (<year>2013</year>). <article-title>Playing atari with deep reinforcement learning.</article-title> <source><italic>arXiv</italic></source> <comment>[Preprint]. arXiv:1312.5602</comment>.</citation></ref>
<ref id="B24"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Mnih</surname> <given-names>V.</given-names></name> <name><surname>Kavukcuoglu</surname> <given-names>K.</given-names></name> <name><surname>Silver</surname> <given-names>D.</given-names></name> <name><surname>Rusu</surname> <given-names>A. A.</given-names></name> <name><surname>Veness</surname> <given-names>J.</given-names></name> <name><surname>Bellemare</surname> <given-names>M. G.</given-names></name><etal/></person-group> (<year>2015</year>). <article-title>Human-level control through deep reinforcement learning.</article-title> <source><italic>Nature</italic></source> <volume>518</volume> <fpage>529</fpage>&#x2013;<lpage>533</lpage>. <pub-id pub-id-type="doi">10.1038/nature14236</pub-id></citation></ref>
<ref id="B25"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>O&#x2019;Connor</surname> <given-names>P.</given-names></name> <name><surname>Gavves</surname> <given-names>E.</given-names></name> <name><surname>Welling</surname> <given-names>M.</given-names></name></person-group> (<year>2019</year>). &#x201C;<article-title>Training a spiking neural network with equilibrium propagation</article-title>,&#x201D; in <source><italic>Proceedings of the the 22nd international conference on artificial intelligence and statistics</italic></source>, <publisher-loc>Naha</publisher-loc>.</citation></ref>
<ref id="B26"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Pineda</surname> <given-names>F. J.</given-names></name></person-group> (<year>1987</year>). <article-title>Generalization of back-propagation to recurrent neural networks.</article-title> <source><italic>Phys. Rev. Lett.</italic></source> <volume>59</volume>:<issue>2229</issue>. <pub-id pub-id-type="doi">10.1103/PhysRevLett.59.2229</pub-id></citation></ref>
<ref id="B27"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ponjavic-Conte</surname> <given-names>K. D.</given-names></name> <name><surname>Dowdall</surname> <given-names>J. R.</given-names></name> <name><surname>Hambrook</surname> <given-names>D. A.</given-names></name> <name><surname>Luczak</surname> <given-names>A.</given-names></name> <name><surname>Tata</surname> <given-names>M. S.</given-names></name></person-group> (<year>2012</year>). <article-title>Neural correlates of auditory distraction revealed in theta-band EEG.</article-title> <source><italic>Neuroreport</italic></source> <volume>23</volume> <fpage>240</fpage>&#x2013;<lpage>245</lpage>. <pub-id pub-id-type="doi">10.1097/WNR.0b013e3283505ac6</pub-id> <pub-id pub-id-type="pmid">22314684</pub-id></citation></ref>
<ref id="B28"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Pozzi</surname> <given-names>I.</given-names></name> <name><surname>Bohte</surname> <given-names>S.</given-names></name> <name><surname>Roelfsema</surname> <given-names>P.</given-names></name></person-group> (<year>2020</year>). <article-title>Attention-gated brain propagation: How the brain can implement reward-based error backpropagation.</article-title> <source><italic>Adv. Neural Inf. Process. Syst.</italic></source> <volume>33</volume> <fpage>2516</fpage>&#x2013;<lpage>2526</lpage>.</citation></ref>
<ref id="B29"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>R&#x00F6;mer</surname> <given-names>M.</given-names></name> <name><surname>Bergers</surname> <given-names>J.</given-names></name> <name><surname>Gabriel</surname> <given-names>F.</given-names></name> <name><surname>Dr&#x00F6;der</surname> <given-names>K.</given-names></name></person-group> (<year>2022</year>). <article-title>Temperature control for automated tape laying with infrared heaters based on reinforcement learning.</article-title> <source><italic>Machines</italic></source> <volume>10</volume>:<issue>164</issue>. <pub-id pub-id-type="doi">10.3390/machines10030164</pub-id></citation></ref>
<ref id="B30"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Rumelhart</surname> <given-names>D. E.</given-names></name> <name><surname>Hinton</surname> <given-names>G. E.</given-names></name> <name><surname>Williams</surname> <given-names>R. J.</given-names></name></person-group> (<year>1986</year>). <article-title>Learning representations by back-propagating errors.</article-title> <source><italic>Nature</italic></source> <volume>323</volume> <fpage>533</fpage>&#x2013;<lpage>536</lpage>. <pub-id pub-id-type="doi">10.1038/323533a0</pub-id></citation></ref>
<ref id="B31"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ryait</surname> <given-names>H.</given-names></name> <name><surname>Bermudez-Contreras</surname> <given-names>E.</given-names></name> <name><surname>Harvey</surname> <given-names>M.</given-names></name> <name><surname>Faraji</surname> <given-names>J.</given-names></name> <name><surname>Mirza Agha</surname> <given-names>B.</given-names></name> <name><surname>Gomez-Palacio Schjetnan</surname> <given-names>A.</given-names></name><etal/></person-group> (<year>2019</year>). <article-title>Data-driven analyses of motor impairments in animal models of neurological disorders.</article-title> <source><italic>PLoS Biol.</italic></source> <volume>17</volume>:<issue>e3000516</issue>. <pub-id pub-id-type="doi">10.1371/journal.pbio.3000516</pub-id></citation></ref>
<ref id="B32"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Scellier</surname> <given-names>B.</given-names></name> <name><surname>Bengio</surname> <given-names>Y.</given-names></name></person-group> (<year>2017</year>). <article-title>Equilibrium propagation: Bridging the gap between energy-based models and backpropagation.</article-title> <source><italic>Front. Comput. Neurosci.</italic></source> <volume>11</volume>:<issue>24</issue>. <pub-id pub-id-type="doi">10.3389/fncom.2017.00024</pub-id></citation></ref>
<ref id="B33"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Scellier</surname> <given-names>B.</given-names></name> <name><surname>Bengio</surname> <given-names>Y.</given-names></name></person-group> (<year>2019</year>). <article-title>Equivalence of equilibrium propagation and recurrent backpropagation.</article-title> <source><italic>Neural Comput.</italic></source> <volume>31</volume> <fpage>312</fpage>&#x2013;<lpage>329</lpage>. <pub-id pub-id-type="doi">10.1162/neco_a_01160</pub-id> <pub-id pub-id-type="pmid">30576611</pub-id></citation></ref>
<ref id="B34"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sheikhnezhad Fard</surname> <given-names>F.</given-names></name></person-group> (<year>2018</year>). <source><italic>Modelling human target reaching using a novel predictive deep reinforcement learning technique</italic></source>. <comment>Ph.D. thesis</comment>. <publisher-loc>Halifax, NS</publisher-loc>: <publisher-name>Dalhousie University</publisher-name>.</citation></ref>
<ref id="B35"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Silver</surname> <given-names>D.</given-names></name> <name><surname>Huang</surname> <given-names>A.</given-names></name> <name><surname>Maddison</surname> <given-names>C. J.</given-names></name> <name><surname>Guez</surname> <given-names>A.</given-names></name> <name><surname>Sifre</surname> <given-names>L.</given-names></name> <name><surname>van den Driessche</surname> <given-names>G.</given-names></name><etal/></person-group> (<year>2016</year>). <article-title>Mastering the game of Go with deep neural networks and tree search.</article-title> <source><italic>Nature</italic></source> <volume>529</volume> <fpage>484</fpage>&#x2013;<lpage>489</lpage>.<pub-id pub-id-type="doi">10.1038/nature16961</pub-id></citation></ref>
<ref id="B36"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sutton</surname> <given-names>R. S.</given-names></name> <name><surname>Barto</surname> <given-names>A. G.</given-names></name></person-group> (<year>2018</year>). <source><italic>Reinforcement learning: An introduction.</italic></source> <publisher-loc>Cambridge, MA</publisher-loc>: <publisher-name>MIT press</publisher-name>.</citation></ref>
<ref id="B37"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Takahashi</surname> <given-names>Y.</given-names></name> <name><surname>Schoenbaum</surname> <given-names>G.</given-names></name> <name><surname>Niv</surname> <given-names>Y.</given-names></name></person-group> (<year>2008</year>). <article-title>Silencing the critics: Understanding the effects of cocaine sensitization on dorsolateral and ventral striatum in the context of an actor/critic model.</article-title> <source><italic>Front. Neurosci.</italic></source> <volume>2</volume>:<issue>14</issue>. <pub-id pub-id-type="doi">10.3389/neuro.01.014.2008</pub-id></citation></ref>
<ref id="B38"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wang</surname> <given-names>Z.</given-names></name> <name><surname>Bapst</surname> <given-names>V.</given-names></name> <name><surname>Heess</surname> <given-names>N.</given-names></name> <name><surname>Mnih</surname> <given-names>V.</given-names></name> <name><surname>Munos</surname> <given-names>R.</given-names></name> <name><surname>Kavukcuoglu</surname> <given-names>K.</given-names></name><etal/></person-group> (<year>2016</year>). <article-title>Sample efficient actor-critic with experience replay.</article-title> <source><italic>arXiv</italic></source> <comment>[Preprint]. arXiv:1611.01224</comment>.</citation></ref>
<ref id="B39"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Williams</surname> <given-names>R. J.</given-names></name></person-group> (<year>1992</year>). <article-title>Simple statistical gradient-following algorithms for connectionist reinforcement learning.</article-title> <source><italic>Mach. Learn.</italic></source> <volume>8</volume> <fpage>229</fpage>&#x2013;<lpage>256</lpage>. <pub-id pub-id-type="doi">10.1007/BF00992696</pub-id></citation></ref>
<ref id="B40"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wilson</surname> <given-names>M. A.</given-names></name> <name><surname>McNaughton</surname> <given-names>B. L.</given-names></name></person-group> (<year>1994</year>). <article-title>Reactivation of hippocampal ensemble memories during sleep.</article-title> <source><italic>Science</italic></source> <volume>265</volume> <fpage>676</fpage>&#x2013;<lpage>679</lpage>. <pub-id pub-id-type="doi">10.1126/science.8036517</pub-id></citation></ref>
</ref-list>
</back>
</article>