Closed-loop
authorThomas Pietrzak <thomas.pietrzak@gmail.com>
Wed, 30 Mar 2022 15:47:11 +0000 (17:47 +0200)
committerThomas Pietrzak <thomas.pietrzak@gmail.com>
Wed, 30 Mar 2022 15:47:11 +0000 (17:47 +0200)
figures/amplifiers.tex
mystyle.sty
tex/4-loop.tex

index f1f7922be38bd4ed78308c7a663a89017383a517..c4a9eabced05008b83222fe37af10026bc70586b 100644 (file)
   %\begin{circuitikz}[scale=0.8, transform shape]
   \begin{circuitikz}[]
     \ctikzset{amplifiers/fill=cellblue, resistors/scale=0.5, component text=left}
-    \draw (0,0) node[above]{$v_i$} to[short, o-] ++(0.5,0)
+    \draw (0,0) node[above]{$v_i$} to[short, o-] ++(1,0)
       node[op amp, noinv input up, anchor=+, scale=0.7](OA){}
       (OA.-) -- ++(0,-0.8) coordinate(outnode)
-      to[R=$R_1$] ++(0,-1.0) node[tlground]{}
+      to[R, l_=$R_1$] ++(-1.0,0) -- ++(0,-0.5) node[tlground]{}
       (outnode) to[R=$R_2$, *-] (outnode -| OA.out) -- (OA.out)
       to [short, *-o] ++(1,0) node[above]{$v_o$}
     ;
 
-    \draw (7,0) node[above]{$v_i$} to[short,o-] ++(0.5,0) 
-      to[R=$R_1$] ++(1.5,0) coordinate(outnode2)
+    \draw (7,0) node[above]{$v_i$} to[short,o-] ++(0.2,0) 
+      to[R=$R_1$] ++(1.2,0) coordinate(outnode2)
       to[R=$R_2$] ++(2.0,0) -- ++(0,-1.0)
       node[op amp, anchor=out, scale=0.7](OB){} to [short, *-o] ++(1,0) node[above]{$v_o$}
-      (OB.+) -- ++(0,-0.5) node[ground]{}
+      (OB.+) -- ++(0,-0.5) node[tlground]{}
       (OB.-) -- (OB.- -| outnode2) to[short, -*] (outnode2)
     ;
   \end{circuitikz}%
   \tikzexternaldisable
   \caption[Non-inverting amplifier and inverting amplifier.]{Non-inverting amplifier and inverting amplifier. They both use their inputs and their own output to compute their output.}
-  \label{fig:actuatorcircuit}
+  \label{fig:amplifiers}
 \end{figure}
index 3c3477d0b0d3bf6336bf555cf2718c63245cda67..d522dab7a0fc0a8efdbad98952c830f0716abf7f 100644 (file)
 }
 
 \newcommand{\etal}{\emph{et al.}\xspace}
+\newcommand{\eg}{\emph{e.g.}\xspace}
 
 \newcommand{\fixme}[1]{\textcolor{red}{#1}\xspace}
 
index 150f10db64cdc93a2b3df349c9b559f598c7e2b9..f9fa0aeef2e0efa9096423592fca88b6709742e9 100644 (file)
@@ -490,7 +490,24 @@ However, functions such as in this example make sense.
 
 We observe here that each iteration of the co-fixpoint can be inductive, as it is the case in the example.
 It shows that interaction is a general process that connects entities in the environment to enable them exchanging information.
-Algorithms only process information to transform input into outputs without knowledge of the overall scheme.
+Algorithms only process information to transform known input into outputs without knowledge of the overall scheme, and no external event can change their behavior during their execution.
+Interactive systems we use everyday react to unpredictable inputs in real time.
+Therefore they are not just built with algorithms.
+%The input streams are unpredictable, and their behavior adapts to 
+They have separated input and output loops at different levels that communicate through streams.
+For example, on the system level an input loop gets input streams of input data (\eg mouse displacements), produce output streams of input events (\eg mouse move event).
+On the application level, an input loops gets output streams of input events and combine the information they convey with interaction techniques to produce an output stream of actions to be executed.
+On the application level, a graphics loop gets an input stream of graphic commands and produces an output stream of objects to be displayed.
+Therefore, applications are what Wegner calls \defwords{interaction machines}{interaction machine}~\cite{wegner97}.
+%\defwords{Neural networks}{neural network} are other examples of interaction machines: they also get input streams and produce output streams~\cite{mcculloch43}.
+
+In the previous section we discussed the fundamental coupling between humans' perception and action.
+Systems called \defword{closed-loop systems}\footurl{https://en.wikipedia.org/wiki/Control_system} also leverage such a mechanism.
+For example the non-inverting and inverting amplifiers circuit depicted on \reffig{fig:amplifiers} have the output of their operational amplifier connected to one of its input through a resistor.
+The output voltage is proportional to the input voltage whose value depends on $R_1$ and $R_2$.
+But most importantly, the feedback loop stabilizes the output voltage to the desired value.
+This kind of mechanism is used in many applications such as robots or drones control.
+%Human-in-the-loop
 
 \input{figures/amplifiers.tex}
 
@@ -547,7 +564,7 @@ Flexibility? Adaptability?
 
 PAC \cite{coutaz87}
 Arch \cite{arch92}
-MVC \cite{reenskaug79a}
+MVC \cite{reenskaug79,reenskaug79a}
 Seeheim \cite{green85}
 
 DiffĂ©rent ? Ou pas ?
@@ -561,8 +578,6 @@ Their behavior
 
 Curiosity~\cite{laversannefinot18}
 
-Arch~\cite{arch92}, MVC~\cite{reenskaug79,reenskaug79a}, PAC~\cite{coutaz87}
-
 Implementation depends on ethnographic background of programmers \cite{rode04}
 
 Software architecture reproduce the organization structure\cite{conway68}