This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

[1]\fnmShun-ichi \surAzuma

[1]\orgdivGraduate School of Informatics, \orgnameKyoto University, \orgaddress\streetYoshida-honmachi, Sakyo-ku, \cityKyoto, \postcode606-8501, \countryJapan

3]\orgdivFaculty of Engineering, \orgnameTokyo University of Agriculture and Technology, \orgaddress\street2-24-16 Naka-cho, \cityKoganei, \postcode184-8588, \countryJapan

4]\orgdivGraduate School of Engineering, \orgnameNagoya University, \orgaddress\street Furo-cho, Chikusa-ku, \cityNagoya, \postcode464-8603, \countryJapan

Networks of Classical Conditioning Gates and Their Learning

sazuma@i.kyoto-u.ac.jp    \fnmDai \surTakakura ultradait@gmail.com    \fnmRyo \surAriizumi ryoariizumi@go.tuat.ac.jp    \fnmToru \surAsai asai@nuem.nagoya-u.ac.jp * [ [
Abstract

Chemical AI is chemically synthesized artificial intelligence that has the ability of learning in addition to information processing. A research project on chemical AI, called the Molecular Cybernetics Project, was launched in Japan in 2021 with the goal of creating a molecular machine that can learn a type of conditioned reflex through the process called classical conditioning. If the project succeeds in developing such a molecular machine, the next step would be to configure a network of such machines to realize more complex functions. With this motivation, this paper develops a method for learning a desired function in the network of nodes each of which can implement classical conditioning. First, we present a model of classical conditioning, which is called here a classical conditioning gate. We then propose a learning algorithm for the network of classical conditioning gates.

keywords:
network, learning, classical conditioning, Pavlov’s dog, logic gate.

1 Introduction

The development of DNA nanotechnology has raised expectations for chemical AI. Chemical AI is chemically synthesized artificial intelligence that has the ability of learning in addition to information processing. A research project on chemical AI, called the Molecular Cybernetics Project, was launched in Japan in 2021 [1], with the goal of establishing an academic field called molecular cybernetics.

One of the milestones of the project is to create a molecular machine that can learn a type of conditioned reflex through the process called classical conditioning [2]. Classical conditioning is the process of acquiring a conditioned reflex by giving an conditioned stimulus with an unconditioned stimulus. It was discovered by the well-known psychological experiment of “Pavlov’s dog”:

  • if one feeds a dog repeatedly while ringing of a bell, then the dog will eventually begin to salivate at the sound of the bell;

  • If one just rings a bell repeatedly without doing anything else for the dog that salivates at the sound of the bell, the dog will stop salivating at the sound of the bell,

which are respectively called the acquisition and extinction. This project attempts to create liposomes with different functions and combine them to artificially achieve a function similar to classical conditioning.

If the milestone is achieved, the next step would be to configure a network of such machines to realize more complex functions. Therefore, it is expected to establish a learning method for such a network. However, there exists no method because the learning has to be performed by the interaction of classical conditioning on the network, which is completely different from what is being considered these days. In fact, neural networks are well known as a learning model, where learning is performed by adjusting weights between nodes [3], not by providing external inputs as in classical conditioning. On the other hand, Boolean networks [4] are known as a model of the network of logic gates and their learning has been studied, e.g., in [5]; but it also differs from learning by providing external inputs.

In this paper, we develop a method for learning a desired function in a network of nodes each of which can implement classical conditioning. First, classical conditioning is modeled as a time-varying logic gate with two inputs and single output. The two inputs correspond to the feeding and bell ringing in Pavlov’s dog experiment, and the gate operates as either a YES gate or an OR gate at each time. The gate state, which is either YES or OR, is determined by how the inputs are given, in a similar manner to classical conditioning. The model is called here a classical conditioning gate. Based on this model, the network of classical conditioning gates and its learning problem are formulated. We then derive a key principle to solving the problem, called the flipping principle, that the gate state of any node in the network can be flipped while preserving the state of some other nodes. By the flipping principle, we present a learning algorithm to obtain a desired function on the network.

Finally, we note the terminology and notation used in this paper. We consider two types of logical gates, logical YES and logical OR. Table 1 shows the truth tables. We use x1x2x_{1}\vee x_{2} to represent the logical OR operation of the binary variables x1x_{1} and x2x_{2}. Moreover, let i𝐈xi\bigvee_{i\in{\mathbf{I}}}x_{i} denote the logical OR operation of xix_{i} with respect to all the indeces in a finite set 𝐈{\mathbf{I}}.

Table 1: Truth tables of logical YES and OR.
Input 1 Input 2 Output (YES) Output (OR)
0 0 0 0
0 1 0 1
1 0 1 1
1 1 1 1

2 System Modeling

2.1 Classical Conditioning Gates

We model classical conditioning as shown in Fig. 1. It is a two-state machine that switches between the states “YES” and “OR” based on the two input signals taking a binary value. When the state is “YES”, the gate operates as a logical YES gate, whose output is equal to the first input, as shown in Table 1. On the other hand, when the state is “OR”, the gate operates as a logical OR gate, whose output is equal to 1 if and only if at least one of the two inputs is equal to 1. The state changes when two types of training inputs are applied. When the state is “YES”, the state is changed to “OR” by entering the value (1,1)(1,1) several times in row. On the other hand, when the state is “OR”, the state is changed to “YES” by entering the value (0,1)(0,1) several times in row.

This model can be interpreted in terms of Pavlov’s dog experiment as follows. The state “YES” corresponds to responding only when the dog is being fed, while the state “OR” corresponds to responding when the dog is being fed or hears the bell. Then the input value (1,1)(1,1) is interpreted as the stimulus for acquisition, i.e., feeding with bell ringing, and (0,1)(0,1) is interpreted as the stimulus for extinction, i.e., bell ringing without feeding.

The model of the above classical conditioning gate is expressed as

{x(t+1)={ORifx(ts+1)=YES,(v(τ),w(τ))=(1,1)(τ=t,t1,,ts+1),YESifx(ts+1)=OR,(v(τ),w(τ))=(0,1)(τ=t,t1,,ts+1),x(t)otherwise,y(t)={v(t)ifYES,v(t)w(t)ifOR,\displaystyle\left\{\begin{array}[]{l}x(t+1)=\left\{\begin{array}[]{ll}{\rm OR}&~{}{\rm if}~{}x(t-s+1)={\rm YES},\\ &~{}~{}~{}~{}(v(\tau),w(\tau))=(1,1)~{}(\tau=t,t-1,\ldots,t-s+1),\\ {\rm YES}&~{}{\rm if}~{}x(t-s+1)={\rm OR},\\ &~{}~{}~{}~{}(v(\tau),w(\tau))=(0,1)~{}(\tau=t,t-1,\ldots,t-s+1),\\ x(t)&~{}{\rm otherwise},\\ \end{array}\right.\\[31.29802pt] y(t)=\left\{\begin{array}[]{lll}v(t)&~{}{\rm if}~{}{\rm YES},\\ v(t)\vee w(t)&~{}{\rm if}~{}{\rm OR},\end{array}\right.\end{array}\right. (10)

where x(t){YES,OR}x(t)\in\{{\rm YES},{\rm OR}\} is the state, v(t){0,1}v(t)\in\{0,1\} and w(t){0,1}w(t)\in\{0,1\} are the inputs, y(t){0,1}y(t)\in\{0,1\} is the output, and s{1,2,}s\in\{1,2,\ldots\} is a period, called the unit training time. The state equation represents classical conditioning, while the output equation represents the resulting input-output relation at time tt.

The following result presents a basic property of (10), which will be utilized for training a network of classical conditioning gates.

Lemma 1.

Consider the classical conditioning gate in (10) with x(t)=x¯x(t)=\bar{x}, where t{0,1,}t\in\{0,1,\ldots\} and x¯{YES,OR}\bar{x}\in\{{\rm YES},{\rm OR}\} are arbitrarily given. Then the following statements hold.
(i) If (v(t),w(t))=(0,0)(v(t),w(t))=(0,0), then y(t)=0y(t)=0 and x(t+1)=x(t)x(t+1)=x(t).
(ii) If (v(t),w(t))=(1,0)(v(t),w(t))=(1,0), then y(t)=1y(t)=1 and x(t+1)=x(t)x(t+1)=x(t).

Proof.

Trivial from (10). ∎

This shows that there exists an input value that sets an arbitrary value at the output while preserving the state value.

Refer to caption
Figure 1: Classical conditioning gate.

2.2 Network of Classical Conditioning Gates

Now, we introduce a network of classical conditioning gates, as shown in Fig. 2. The network has a binary tree structure, where each gate, except for the leftmost gates, is connected to two other gates on the input side. The network has mm layers, indexed by 1,2,,m1,2,\ldots,m from the input side. The ii-th layer has 2mi2^{m-i} gates, and thus the network has i=1m2mi\sum_{i=1}^{m}2^{m-i} gates. We use nin_{i} and nn to denote these numbers, i.e., ni=2min_{i}=2^{m-i} and n=i=1m2mi=i=1mnin=\sum_{i=1}^{m}2^{m-i}=\sum_{i=1}^{m}n_{i}.

We introduce the following notation for the network. The network with mm layers is denoted by Σ(m)\Sigma(m). The jj-th gate from the top in the ii-layer is called node (i,j)(i,j), and let xij(t){YES,OR}x_{ij}(t)\in\{{\rm YES},{\rm OR}\}, vij(t){0,1}v_{ij}(t)\in\{0,1\}, wij(t){0,1}w_{ij}(t)\in\{0,1\}, and yij(t){0,1}y_{ij}(t)\in\{0,1\} be the state, first input, second input, and output of node (i,j)(i,j), respectively. The pair of vij(t)v_{ij}(t) and wij(t)w_{ij}(t) is often denoted by uij(t){0,1}2u_{ij}(t)\in\{0,1\}^{2}. We use x¯ij(t)\bar{x}_{ij}(t) to represent the flipped value of xij(t)x_{ij}(t): x¯ij(t)=YES\bar{x}_{ij}(t)={\rm YES} for xij(t)=OR{x_{ij}(t)}={\rm OR}, while x¯ij(t)=OR\bar{x}_{ij}(t)={\rm OR} for xij(t)=YES{x_{ij}(t)}={\rm YES}.

Next, let us consider the collection of signals. We use 𝐍:={(1,1),(1,2),,{\mathbf{N}}:=\{(1,1),(1,2),\ldots, (m,1)}(m,1)\}, which has nn elements, to represent the set of node indeces, and use 𝐍i𝐍{\mathbf{N}}_{i}\subset{\mathbf{N}} to represent the set of node indeces in layer ii. Let Xi(t){YES,OR}niX_{i}(t)\in\{{\rm YES},{\rm OR}\}^{n_{i}}, Ui(t)j=1ni({0,1}×{0,1})U_{i}(t)\in\prod_{j=1}^{n_{i}}(\{0,1\}\times\{0,1\}), and Yi(t){0,1}niY_{i}(t)\in\{0,1\}^{n_{i}} be the collective state, input, and output of the ii-th layer. Let also X(t):=(X1(t),X2(t),,Xm(t)){YES,OR}n1×{YES,OR}n2××{YES,OR}nm={YES,OR}nX(t):=(X_{1}(t),X_{2}(t),\ldots,X_{m}(t))\in\{{\rm YES},{\rm OR}\}^{n_{1}}\times\{{\rm YES},{\rm OR}\}^{n_{2}}\times\cdots\times\{{\rm YES},{\rm OR}\}^{n_{m}}=\{{\rm YES},{\rm OR}\}^{n}. According to this notation, the state, input, and output of the network Σ(m)\Sigma(m) are denoted by X(t)X(t), U1(t)U_{1}(t), and Ym(t)Y_{m}(t), respectively. Note that Ym(t)=ym1(t)Y_{m}(t)=y_{m1}(t).

Fig. 3 shows an example for m=3m=3. In this case, we have 𝐍={(1,1),(1,2),(1,3),{\mathbf{N}}=\{(1,1),(1,2),(1,3),
(1,4),(2,1),(2,2),(3,1)}(1,4),(2,1),(2,2),(3,1)\}, X1(t)=(x11(t),x12(t),x13(t),x14(t))X_{1}(t)=(x_{11}(t),x_{12}(t),x_{13}(t),x_{14}(t)), X2(t)=(x21(t),X_{2}(t)=(x_{21}(t), x22(t))x_{22}(t)), X3(t)=x31(t)X_{3}(t)=x_{31}(t), U1(t)=(u11(t),u12(t),u13(t),u14(t))U_{1}(t)=(u_{11}(t),u_{12}(t),u_{13}(t),u_{14}(t)), U2(t)=(u21(t),u22(t))U_{2}(t)=(u_{21}(t),u_{22}(t)), U3(t)=u31(t)U_{3}(t)=u_{31}(t), Y1(t)=(y11(t),y12(t),y13(t),y14(t))Y_{1}(t)=(y_{11}(t),y_{12}(t),y_{13}(t),y_{14}(t)), Y2(t)=(y21(t),y22(t))Y_{2}(t)=(y_{21}(t),y_{22}(t)), and Y3(t)=y31(t)Y_{3}(t)=y_{31}(t).

Refer to caption
Figure 2: Network of classical conditioning gates.
Refer to caption
Figure 3: Network Σ(3)\Sigma(3) with X(0)=(YES,YES,OR,YES,OR,OR,YES)X(0)=({\rm YES},{\rm YES},{\rm OR},{\rm YES},{\rm OR},{\rm OR},{\rm YES}).

Since a classical conditioning gate operates as either logical YES or OR, the possible input-output relation of Σ(m)\Sigma(m) is limited to logical OR of some of the inputs of Σ(m)\Sigma(m). Moreover, the output ym(t)y_{m}(t) always depends on the input v11(t)v_{11}(t) because v11(t)v_{11}(t) propagates through nodes (i,1)(i,1) (i=1,2,,mi=1,2,\ldots,m) operating as logical YES or OR. For example, y3(0)=v11(0)v12(0)y_{3}(0)=v_{11}(0)\vee v_{12}(0) for the network Σ(3)\Sigma(3) in Fig. 3. This fact is formalized as follows.

Lemma 2.

Consider the network Σ(m)\Sigma(m) with X(t)=X¯X(t)=\bar{X}, where t{0,1,}t\in\{0,1,\ldots\} and X¯{YES,OR}n\bar{X}\in\{{\rm YES},{\rm OR}\}^{n} are arbitrarily given. The following statements hold.
(i) The input-output relation at time tt is given by

ym(t)=(i𝐉1v1j(t))(i𝐉2w1j(t))\displaystyle y_{m}(t)=\left(\bigvee_{i\in{\mathbf{J}}_{1}}v_{1j}(t)\right)\vee\left(\bigvee_{i\in{\mathbf{J}}_{2}}w_{1j}(t)\right) (11)

for some 𝐉1{1,2,,n1}{\mathbf{J}}_{1}\subseteq\{1,2,\ldots,n_{1}\} and 𝐉2{1,2,,n1}{\mathbf{J}}_{2}\subseteq\{1,2,\ldots,n_{1}\}.
(ii) If (11) holds, then 1𝐉11\in{\mathbf{J}}_{1}. Moreover, if v11(t)=1v_{11}(t)=1, then ym(t)=1y_{m}(t)=1\Box

The following result shows a structural property that indicates which inputs affect node (i,j)(i,j).

Lemma 3.

Consider the network Σ(m)\Sigma(m) with X(t)=X¯X(t)=\bar{X} and a node (i,j){2,3,,m}×{1,2,,ni}(i,j)\in\{2,3,\ldots,m\}\times\{1,2,\ldots,n_{i}\}, where t{0,1,}t\in\{0,1,\ldots\} and X¯{YES,OR}n\bar{X}\in\{{\rm YES},{\rm OR}\}^{n} are arbitrarily given. Assume that the input U(t)U(t) is divided into 2ni2n_{i} blocks in the same size and let [U(t)]k{0,1}2i1[U(t)]_{k}\in\{0,1\}^{2^{i-1}} be the kk-th block. Then

vij(t)=f1([U(t)]2j1),wij(t)=f2([U(t)]2j)\displaystyle v_{ij}(t)=f_{1}([U(t)]_{2j-1}),~{}~{}w_{ij}(t)=f_{2}([U(t)]_{2j}) (12)

holds for some functions f1:{0,1}2i1{0,1}f_{1}:\{0,1\}^{2^{i-1}}\to\{0,1\} and f2:{0,1}2i1{0,1}f_{2}:\{0,1\}^{2^{i-1}}\to\{0,1\}.

Proof.

It is trivial from the definition of Σ(m)\Sigma(m). See Fig. 2. ∎

Lemma 3 is illustrated as follows. Consider the network Σ(3)\Sigma(3) in Fig. 3 and node (2,1)(2,1). Then U(t)U(t) is divided into 44 blocks (where 2n2=222n_{2}=2^{2}): [U(t)]1=(v11(t),w11(t))[U(t)]_{1}=(v_{11}(t),w_{11}(t)), [U(t)]2=(v12(t),w12(t))[U(t)]_{2}=(v_{12}(t),w_{12}(t)), [U(t)]3=(v13(t),w13(t))[U(t)]_{3}=(v_{13}(t),w_{13}(t)), and [U(t)]4=(v14(t),w14(t))[U(t)]_{4}=(v_{14}(t),w_{14}(t)). From Lemma 3, we have v21(t)=f1(U[1](t))v_{21}(t)=f_{1}(U_{[1]}(t)) and w21(t)=f2(U[2](t))w_{21}(t)=f_{2}(U_{[2]}(t)) for some f1:{0,1}2i1{0,1}f_{1}:\{0,1\}^{2^{i-1}}\to\{0,1\} and f2:{0,1}2i1{0,1}f_{2}:\{0,1\}^{2^{i-1}}\to\{0,1\}. This is consistent with the interdependence between signals in Fig. 3.

3 Problem Formulation

For the network Σ(m)\Sigma(m), we address the following learning problem.

Problem 1.

Consider the network Σ(m)\Sigma(m) with X(0)=X¯X(0)=\bar{X}, where X¯{YES,OR}n\bar{X}\in\{{\rm YES},{\rm OR}\}^{n} is arbitrarily given. Suppose that 𝐉1{1,2,,2m}{\mathbf{J}}_{1}\subseteq\{1,2,\ldots,2^{m}\} and 𝐉2{1,2,,2m}{\mathbf{J}}_{2}\subseteq\{1,2,\ldots,2^{m}\} are given. Find a time T{1,2,}T\in\{1,2,\ldots\} and an input sequence (U(0),U(1),,U(T1))(U(0),U(1),\ldots,U(T-1)) such that (11) holds for t=Tt=T\Box

Two remarks are given.

First, the problem is not always feasible because (11) cannot be always realized in Σ(m)\Sigma(m). For example, as is seen from the output equation in (10), ym(T)=v12(T)v22(T)y_{m}(T)=v_{12}(T)\vee v_{22}(T) is not possible for any T{1,2,}T\in\{1,2,\ldots\}.

Second, if the problem is feasible, there exists a vector X{YES,OR}nX^{*}\in\{{\rm YES},{\rm OR}\}^{n} such that X(T)=XX(T)=X^{*} implies (11). For example, consider the system Σ(3)\Sigma(3) in Fig. 3 and the case where 𝐉1={1,3,4}{\mathbf{J}}_{1}=\{1,3,4\} and 𝐉2={3}{\mathbf{J}}_{2}=\{3\} for (11). Then, we have X=(YES,YES,OR,YES,YES,OR,YES)X^{*}=({\rm YES},{\rm YES},{\rm OR},{\rm YES},{\rm YES},{\rm OR},{\rm YES}), for which X(T)=XX(T)=X^{*} implies ym(T)=v11(T)v13(T)w13(T)v14(T)y_{m}(T)=v_{11}(T)\vee v_{13}(T)\vee w_{13}(T)\vee v_{14}(T). Thus, the problem is reduced into finding the input sequence to steer the state to XX^{*}.

4 Learning

Now, we present a solution to Problem 1.

4.1 Flipping Principle

Let us provide a key principle, called the flipping principle, for solving Problem 1.

The following is a preliminary result to derive the flipping principle.

Lemma 4.

Consider the network Σ(m)\Sigma(m) with X(t)=X¯X(t)=\bar{X}, where t{0,1,}t\in\{0,1,\ldots\} and X¯{YES,OR}n\bar{X}\in\{{\rm YES},{\rm OR}\}^{n} are arbitrarily given. Then the following statements hold.
(i) If U(t)=(0,0,,0){0,1}2n1U(t)=(0,0,\ldots,0)\in\{0,1\}^{2n_{1}}, then ym(t)=0y_{m}(t)=0 and X(t+1)=X(t)X(t+1)=X(t).
(ii) If U(t)=(1,0,,0){0,1}2n1U(t)=(1,0,\ldots,0)\in\{0,1\}^{2n_{1}}, then ym(t)=1y_{m}(t)=1 and X(t+1)=X(t)X(t+1)=X(t).

Proof.

In (i) and (ii), the relation X(t+1)=X(t)X(t+1)=X(t) is proven by the network structure of Σ(m)\Sigma(m) and Lemma 1, which states that, in (10), x(t+1)=x(t)x(t+1)=x(t) holds under (v(t),w(t))=(0,0)(v(t),w(t))=(0,0) or (v(t),w(t))=(1,0)(v(t),w(t))=(1,0). Next, Lemma 2 (i) (in particular, (11)) implies that ym(t)=0y_{m}(t)=0 for U(t)=(0,0,,0)U(t)=(0,0,\ldots,0), which proves (i). On the other hand, it follows from Lemma 2 (ii) that ym(t)=1y_{m}(t)=1 for U(t)=(1,0,,0)U(t)=(1,0,\ldots,0). This proves (ii). ∎

Lemma 4 implies that there exists an input value for Σ(m)\Sigma(m) that sets an arbitrary value at the output of Σ(m)\Sigma(m) while preserving the state value. Note from this lemma that the state of Σ(m)\Sigma(m) does not change by an input sequence that takes (0,0,,0)(0,0,\ldots,0) and (1,0,,0)(1,0,\ldots,0) at each time.

From Lemma 4, we obtain the flipping principle for learning of Σ(m)\Sigma(m).

Theorem 1.

Consider the network Σ(m)\Sigma(m) with X(t)=X¯X(t)=\bar{X} and node (p,q)(p,q), where t{0,1,}t\in\{0,1,\ldots\} and X¯{YES,OR}n\bar{X}\in\{{\rm YES},{\rm OR}\}^{n} are arbitrarily given. Then the following statements hold.
(i) There exists an input sequence (Ut,Ut+1,,Ut+s1){0,1}2n1×{0,1}2n1××{0,1}2n1(U_{t},U_{t+1},\ldots,U_{t+s-1})\in\{0,1\}^{2n_{1}}\times\{0,1\}^{2n_{1}}\times\cdots\times\{0,1\}^{2n_{1}} (Cartesian product of ss sets) such that

xij(t+s)={x¯ij(t)if(i,j)=(p,q),xij(t)if(i,j)𝐍p{(p,q)}\displaystyle x_{ij}(t+s)=\left\{\begin{array}[]{lll}\bar{x}_{ij}(t)&~{}{\rm if}~{}(i,j)=(p,q),\\ x_{ij}(t)&~{}{\rm if}~{}(i,j)\in{\mathbf{N}}_{p}\setminus\{(p,q)\}\end{array}\right. (15)

under U(t)=UtU(t)=U_{t}, U(t+1)=Ut+1U(t+1)=U_{t+1}, \ldots, U(t+s1)=Ut+s1U(t+s-1)=U_{t+s-1}, where s{0,1,}s\in\{0,1,\ldots\} is the unit training time defined for (10).
(ii) An input sequence satisfying (15) is given by (U^(p,q),U^(p,q),,U^(p,q))(\hat{U}_{(p,q)},\hat{U}_{(p,q)},\ldots,\hat{U}_{(p,q)}) (constant on the time interval {t,t+1,,t+s1}\{t,t+1,\ldots,t+s-1\}), where U^(p,q){0,1}2n1\hat{U}_{(p,q)}\in\{0,1\}^{2n_{1}} is an input value which is divided into 2m+1p2^{m+1-p} blocks in the same size and whose blocks are given as follows:

(2q1)-th block:{(0,0,0,,0)ifxpq(t)=OR,(1,0,0,,0)ifxpq(t)=YES,2q-th block:(1,0,0,,0),Other blocks:(0,0,0,,0).\displaystyle\begin{array}[]{rl}\mbox{$(2q-1)$-th block}:&\left\{\begin{array}[]{ll}(0,0,0,\ldots,0)&{\rm if}~{}x_{pq}(t)={\rm OR},\\ (1,0,0,\ldots,0)&{\rm if}~{}x_{pq}(t)={\rm YES},\\ \end{array}\right.\\ \mbox{$2q$-th block}:&(1,0,0,\ldots,0),\\ \mbox{Other blocks}:&(0,0,0,\ldots,0).\end{array} (21)
Proof.

Statements (i) and (ii) are proven by showing that (15) holds for the input sequence (U^(p,q),U^(p,q),,U^(p,q))(\hat{U}_{(p,q)},\hat{U}_{(p,q)},\ldots,\hat{U}_{(p,q)}) specified in (ii).

By definition, the network Σ(m)\Sigma(m) can be represented as the cascade connection of mm layers as shown in Fig. 4. As we can see by comparing Figs. 2 and 4, the entire left side of the ii-th layer is the parallel system of 2ni2n_{i} subsystems, denoted by S1,S2,,S2niS_{1},S_{2},\ldots,S_{2n_{i}}, as shown in Fig. 5. Each subsystem is equivalent to the network of i1i-1 layers, i.e., Σ(i1)\Sigma(i-1). This allows us to apply Lemma 4 to each subsystem because Lemma 4 holds for any m{1,2,}m\in\{1,2,\ldots\}.

Now, consider node (p,q)(p,q). Suppose that Σ(m)\Sigma(m) is represented as Fig. 5 for i=qi=q, and let Zk(t){YES,OR}νpZ_{k}(t)\in\{{\rm YES},{\rm OR}\}^{\nu_{p}} be the state of the subsystem SkS_{k}, where νp=i=1p12i1\nu_{p}=\sum_{i=1}^{p-1}2^{i-1}. Note here that the following statements are equivalent:

  • Zk(t+s)=Zk(t)Z_{k}(t+s)=Z_{k}(t) for every k{1,2,,2np}k\in\{1,2,\ldots,2n_{p}\}.

  • xij(t+s)=xij(t)x_{ij}(t+s)=x_{ij}(t) for every (i,j)𝐍p1(i,j)\in{\mathbf{N}}_{p-1}.

We divide the proof into two cases: xpq(t)=ORx_{pq}(t)={\rm OR} and xpq(t)=YESx_{pq}(t)={\rm YES}. First, we address the case xpq(t)=ORx_{pq}(t)={\rm OR}. If xpq(t)=ORx_{pq}(t)={\rm OR} and U(t)=U^(p,q)U(t)=\hat{U}_{(p,q)}, it follows from Lemmas 3 and 4 (Lemma 4 is applied to Σ(p1)\Sigma(p-1)) that (vpq(t),wpq(t))=(0,1)(v_{pq}(t),w_{pq}(t))=(0,1), (vpj(t),wpj(t))=(0,0)(v_{pj}(t),w_{pj}(t))=(0,0) for j{1,2,,np}{q}j\in\{1,2,\ldots,n_{p}\}\setminus\{q\}, and Zk(t+1)=Zk(t)Z_{k}(t+1)=Z_{k}(t) for k{1,2,,2np}k\in\{1,2,\ldots,2n_{p}\}. Thus if U(t)=U^(p,q)U(t)=\hat{U}_{(p,q)}, U(t+1)=U^(p,q)U(t+1)=\hat{U}_{(p,q)}, \ldots, U(t+s1)=U^(p,q)U(t+s-1)=\hat{U}_{(p,q)}, then

  • xpq(t+s)=YES=x¯pq(t)x_{pq}(t+s)={\rm YES}=\bar{x}_{pq}(t),

  • xpj(t+s)=xpj(t)x_{pj}(t+s)=x_{pj}(t) for j{1,2,,np}{q}j\in\{1,2,\ldots,n_{p}\}\setminus\{q\},

  • Zk(t+s)=Zk(t)Z_{k}(t+s)=Z_{k}(t) for k{1,2,,2np}k\in\{1,2,\ldots,2n_{p}\}.

This implies (15). The other case xpq(t)=YESx_{pq}(t)={\rm YES} can be proven in the same manner. The only difference is that (vpq(t),wpq(t))=(1,1)(v_{pq}(t),w_{pq}(t))=(1,1) holds when xpq(t)=ORx_{pq}(t)={\rm OR} and U(t)=U^(p,q)U(t)=\hat{U}_{(p,q)}. ∎

Refer to caption
Figure 4: Layer-based representation of network Σ(m)\Sigma(m).
Refer to caption
Figure 5: Another layer-based representation of network Σ(m)\Sigma(m).

Theorem 1 implies that we can flip the state of any node while preserving the state of the other nodes in the layer to which the node to be flipped belongs and its upstream layers.

Example 1.

Consider the network Σ(3)\Sigma(3) in Fig. 3, where X(0)=(YES,YES,OR,X(0)=({\rm YES},{\rm YES},{\rm OR}, YES,OR,OR,YES){\rm YES},{\rm OR},{\rm OR},{\rm YES}). By the input sequence (U^(2,1),U^(2,1),,U^(2,1))(\hat{U}_{(2,1)},\hat{U}_{(2,1)},\ldots,\hat{U}_{(2,1)}) for U^(2,1)=((1,0,0,0),(0,0,0,0))\hat{U}_{(2,1)}=((1,0,0,0),(0,0,0,0)), the state of node (2,1)(2,1) is flipped while preserving the states of nodes (1,1)(1,1), (1,2)(1,2), (1,3)(1,3), (1,4)(1,4), and (2,2)(2,2). Fig. 6 shows Σ(3)\Sigma(3) with the resulting state X(s)X(s)\Box

4.2 Learning Algorithm

Theorem 1 implies that we can steer the state of the network Σ(m)\Sigma(m) from any value to any value by flipping the state of each node one by one from the upstream node. Based on this idea, we obtain the following algorithm to solve Problem 1.

Algorithm 1

(Step 1)

Let X{YES,OR}nX^{*}\in\{{\rm YES},{\rm OR}\}^{n} be a state associated with the desired input-output relation in (11) and let xij{YES,OR}x^{*}_{ij}\in\{{\rm YES},{\rm OR}\} be its element corresponding to node (i,j)(i,j). Let also k:=0k:=0 and 𝐍^:=𝐍\hat{\mathbf{N}}:={\mathbf{N}}.

(Step 2)

Pick the minimum pair (i,j)(i,j) from 𝐍^\hat{\mathbf{N}} in lexicographical order.

(Step 3)

If xij(ks)xijx_{ij}(ks)\neq x^{*}_{ij}, apply the input sequence (U^(i,j),U^(i,j),,U^(i,j))(\hat{U}_{(i,j)},\hat{U}_{(i,j)},\ldots,\hat{U}_{(i,j)}) to the network Σ(m)\Sigma(m), i.e., U(ks)=U^(i,j),U(ks+1)=U^(i,j),,U(ks+s1)=U^(i,j)U(ks)=\hat{U}_{(i,j)},U(ks+1)=\hat{U}_{(i,j)},\ldots,U(ks+s-1)=\hat{U}_{(i,j)}, and let k:=k+1k:=k+1.

(Step 4)

Let 𝐍^:=𝐍^{(i,j)}\hat{\mathbf{N}}:=\hat{\mathbf{N}}\setminus\{(i,j)\}. If 𝐍^\hat{\mathbf{N}}\neq\emptyset, goto Step 2; otherwise, halt.

In the algorithm, kk is a variable to count the number of nodes whose state is flipped, and 𝐍^\hat{\mathbf{N}} is the list of the nodes for which the algorithm has never checked whether their state needs to be flipped or not. In Step 1, XX^{*} is defined from (11) and kk and 𝐍^\hat{\mathbf{N}} are initialized. Step 2 picks a node (i,j)(i,j) from the list 𝐍^\hat{\mathbf{N}}. Step 3 checks whether the state of node (i,j)(i,j) has to be flipped or not; if it has to be flipped, the state is flipped by applying the training input sequence specified in Theorem 1. Note here that ss steps of actual time elapsed while applying the input sequence to Σ(m)\Sigma(m). In Step 4, node (i,j)(i,j) is removed from the list 𝐍^\hat{\mathbf{N}}. In addition, the terminate condition is checked; if 𝐍^\hat{\mathbf{N}} is empty, the algorithm terminates; otherwise, the above procedure is performed for a remaining node in the list 𝐍^\hat{\mathbf{N}}.

For the algorithm, we obtain the following result.

Theorem 2.

Consider Problem 1. Assume that there exists a vector X{YES,OR}nX^{*}\in\{{\rm YES},{\rm OR}\}^{n} such that (11) is equivalent to X(T)=XX(T)=X^{*}. Let k{0,1,}k^{*}\in\{0,1,\ldots\} be the value of kk when Algorithm 1 terminates and 𝕌(k){\mathbb{U}}(k) (k=0,1,k1k=0,1,\ldots k^{*}-1) are the input sequence generated in Step 3 of Algorithm 1. Then a solution to the problem is given by T=ksT=k^{*}s and (𝕌(0),𝕌(1),,𝕌(k1))({\mathbb{U}}(0),{\mathbb{U}}(1),\ldots,{\mathbb{U}}(k^{*}-1))\Box

5 Example

Consider the network Σ(3)\Sigma(3) in Fig. 3, where X(0)=(YES,YES,OR,YES,OR,OR,X(0)=({\rm YES},{\rm YES},{\rm OR},{\rm YES},{\rm OR},{\rm OR}, OR){\rm OR}). Assume that s=3s=3. Let us show how Algorithm 1 solves Problem 1 for 𝐉1={1,3,4}{\mathbf{J}}_{1}=\{1,3,4\} and 𝐉2={3}{\mathbf{J}}_{2}=\{3\}.

In Step 1, we have X=(YES,YES,OR,YES,YES,OR,YES)X^{*}=({\rm YES},{\rm YES},{\rm OR},{\rm YES},{\rm YES},{\rm OR},{\rm YES}). Then the algorithm generates the input sequence 𝕌(0)=(U^(2,1),U^(2,1),U^(2,1)){\mathbb{U}}(0)=(\hat{U}_{(2,1)},\hat{U}_{(2,1)},\hat{U}_{(2,1)}) to flip the state of node (2,1)(2,1) in Step 3 at k=0k=0. The result is shown in Fig. 6. Next, the algorithm generates the input sequence 𝕌(1)=(U^(3,1),U^(3,1),U^(3,1)){\mathbb{U}}(1)=(\hat{U}_{(3,1)},\hat{U}_{(3,1)},\hat{U}_{(3,1)}) in Step 3 at k=1k=1, which flips the state of node (3,1)(3,1). As the result, we have the system in Fig. 7 with the output ym(2s)=v11(2s)v13(2s)w13(2s)v14(2s)y_{m}(2s)=v_{11}(2s)\vee v_{13}(2s)\vee w_{13}(2s)\vee v_{14}(2s).

Refer to caption
Figure 6: Network Σ(3)\Sigma(3) at the state X(s)X(s), resulted by the input sequence 𝕌(0)=(U^(2,1),U^(2,1),U^(2,1)){\mathbb{U}}(0)=(\hat{U}_{(2,1)},\hat{U}_{(2,1)},\hat{U}_{(2,1)}) that flips the state of node (2,1)(2,1).
Refer to caption
Figure 7: Network Σ(3)\Sigma(3) at the state X(2s)X(2s), resulted by the input sequence 𝕌(1)=(U^(3,1),U^(3,1),U^(3,1)){\mathbb{U}}(1)=(\hat{U}_{(3,1)},\hat{U}_{(3,1)},\hat{U}_{(3,1)}) that flips the state of node (3,1)(3,1).

6 Conclusion

We have presented a learning method for a network of nodes each of which can implement classical conditioning. Based on the principle that the state of any node can be flipped while preserving the state of some other nodes, an algorithm has been derived.

The proposed algorithm can be applied only to the networks with a tree structure. In the future, we plan to generalize our framework to handle a more general class of networks. It is also interesting to address other types of gates, for example, whose state takes logical operators that are not necessarily YES and OR.

Acknowledgment

This work was supported by Grant-in-Aid for Transformative Research Areas (A) 20H05969 from the Ministry of Education, Culture, Sports, Science and Technology of Japan.

Declarations

Conflict of interest: The author declares that he has no conflict of interest.

References

  • [1] S. Murata, T. Toyota, S.I.M. Nomura, T. Nakakuki, and A. Kuzuya, “Molecular cybernetics: challenges toward cellular chemical AI,” Advanced Functional Materials, vol. 32, no. 37, pp. 2201866, 2022.
  • [2] A. Hart-Davis, Pavlov’s Dog: Groundbreaking Experiments in Psychology, Elwin Street Limited, 2015.
  • [3] C.C. Aggarwal, Neural Networks and Deep Learning: A Textbook, Springer, 2018.
  • [4] S. Kauffman, “Homeostasis and differentiation in random genetic control networks,” Nature, vol. 224, no. 5215, pp. 177–178, 1969.
  • [5] J. Sun, A.A.R. AlMomani, and E. Bollt, “Data-driven learning of Boolean networks and functions by optimal causation entropy principle,” Patterns, vol. 3, no. 11, pp. 100631, 2022.