Ecological approach
authorThomas Pietrzak <thomas.pietrzak@gmail.com>
Mon, 4 Apr 2022 16:00:00 +0000 (18:00 +0200)
committerThomas Pietrzak <thomas.pietrzak@gmail.com>
Mon, 4 Apr 2022 16:00:00 +0000 (18:00 +0200)
figures/interactingloops.tex
figures/wholeschema.tex
tex/4-loop.tex

index c04c2f46638a9d8791d7b912f65c819960d67ff8..a39d776fa7082ad526b631902c2cf0e1408a5622 100644 (file)
@@ -33,6 +33,6 @@
       \draw [->, -stealth', line width=1mm, draw=myblue!50!black, shorten <= -1.5mm] (system.north west) to[out=135,in=90] (execution.west);
       \end{tikzpicture}
   \tikzexternaldisable
-  \caption{The similarity of a user and a system interacting with each other.}
+  \caption{The similarity of a user and a system interacting with their environment, and through which they can interact together.}
   \label{fig:loops}
 \end{figure}
index 8db78558e4dd0bcf95f8fcae1e308ec73a3639fe..2bd0ff8ffc065119a0962fbc5a736373ad9dd1a9 100644 (file)
     \draw[{Triangle Cap[bend]}-{Triangle Cap[bend]}, color=myblue, line width=\thickness] (180:\levelone)  arc[start angle=180, end angle=360, radius=\levelone];
     \path[decorate, decoration={text along path, text={|\color{white}|System},text align=center, raise=-0.5ex}] (180:\levelone) arc[start angle=180, end angle=360, radius=\levelone];
 
-    %Input pipeline
+    %Output pipeline
     \draw[{Triangle Cap[bend]}-{Triangle Cap[bend]}, color=black!40, line width=\thickness] (90:\levelthree)  arc[start angle=90, end angle=-90, radius=\levelthree];
-    \path[decorate, decoration={text along path, text={|\color{white}|Input pipeline},text align=center, raise=-0.5ex}] (90:\levelthree) arc[start angle=90, end angle=-90, radius=\levelthree];
+    \path[decorate, decoration={text along path, text={|\color{white}|Output pipeline},text align=center, raise=-0.5ex}] (90:\levelthree) arc[start angle=90, end angle=-90, radius=\levelthree];
 
-    %Output pipeline
+    %Innput pipeline
     \draw[{Triangle Cap[bend]}-{Triangle Cap[bend]}, color=black!60, line width=\thickness] (270:\levelthree)  arc[start angle=270, end angle=90, radius=\levelthree];
-    \path[decorate, decoration={text along path, text={|\color{white}|Output pipeline},text align=center, raise=-0.5ex}] (270:\levelthree) arc[start angle=270, end angle=90, radius=\levelthree];
+    \path[decorate, decoration={text along path, text={|\color{white}|Input pipeline},text align=center, raise=-0.5ex}] (270:\levelthree) arc[start angle=270, end angle=90, radius=\levelthree];
   \end{tikzpicture}
   \tikzexternaldisable
   \caption[Full pipeline.]{Full pipeline.}
index 3010adeedc692407265637db7d07b56107a03a96..192111680560e2e26d239a5c6181fa42e5db5e97 100644 (file)
@@ -444,7 +444,7 @@ Studying human behavior is useful for the design of machines for several reasons
 The first reason is to reproduce the strengths of humans.
 For example in the previous section we discussed the fundamental coupling between humans' perception and action.
 Systems called \defwords{closed-loop systems}{closed-loop system}\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.
+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 their 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 control mechanism is used in many applications such as robots, domestic appliances, or drones.
@@ -461,7 +461,7 @@ Hence we will discuss below the architecture of interactive systems, the similar
 
 \paragraph{Computation models}
 Initially, computers and programs were essentially based on theoretical models such as $\lambda$-calculus~\cite{church32} or Turing machines~\cite{turing38}.
-These are computing models, and they focus on solving numerical problem rather than contributing to everyday activities.
+These are computing models, and they focus on solving numerical problem rather than helping people with their everyday activities.
 A Turing machine has an infinite tape with symbols written in advance, and a pre-defined transition table that describes the behavior of the machine.
 Therefore these machines ignore their environment, in which anything can change at anytime.
 All these models are equivalent (or Turing-equivalent), and the Church-Turing thesis says that everything these models can compute can be implemented with an algorithm.
@@ -472,7 +472,7 @@ Induction require structures to be finite, and computation to end.
 For example the Listing~\ref{lst:induction} shows the inductive definition of a list of numbers, and a function that computes the length of a list.
 A list is buit with two constructors: either a \verb+Nil+ value for an empty list, or a \verb+Cons+ function that create a list with a number (the head) and another list (the tail).
 The \verb+Nil+ value ensures that the list is finite.
-It ensures in turn that the \verb+length+ function ends, because there is no recursive call on the base case (\verb+Nil+).
+It ensures in turn that the \verb+length+ function ends, because there is no recursive call on the base case (\verb+Nil+) and every list ends with Nil.
 
 \begin{code}[language=Coq, label=lst:induction, caption=Inductive list and example of inductive function on a list.]
   Inductive list : Set := 
@@ -523,7 +523,7 @@ Therefore, applications are therefore what Wegner calls \defwords{interaction ma
 %\defwords{Neural networks}{neural network} are other examples of interaction machines: they also get input streams and produce output streams~\cite{mcculloch43}.
 
 \paragraph{Software architectures and interaction paradigms}
-Software architectures leverage this interaction machinne to describe a higher-level structure that connects users to a functional \emph{model}.
+Software architectures leverage this interaction machine to describe a higher-level structure that connects users to a functional \emph{model}.
 This model, also called an \emph{abstraction}, defines the objects of the system, their properties and the operations on them.
 For example, the original MVC architectures distinguishes the model with \emph{views} that describe how objects are presented to users and \emph{controllers} that define the way users can manipulate them~\cite{reenskaug79,reenskaug79a}.
 Arch~\cite{arch92} and PAC~\cite{coutaz87} rather combine input and outputs as a \emph{presentation} component, and add a \emph{controler} component that manages transitions between abstract inputs/outputs and domain-specific properties of the model/abstraction.
@@ -551,36 +551,56 @@ The combination of the action and both the feedback and response forms a sensori
 
 \section{Ecological approach to computing}
 
-Pb: it reacts always the same way to the same entries. Humans tend to evolve. => ML?
-Flexibility? Adaptability?
+% humans and systems as autonomous entities
+Humans and interactive systems share the same overall schema in the sense that they are both autonomous entities that interact with their environment through input and output streams (\reffig{fig:loops}).
+People perceive and act on their environment thanks to their sensorimotor loop.
+We discussed above the critical role of the perception/action coupling.
 
-Curiosity~\cite{laversannefinot18}
+Enaction\cite{varela92,thompson10}
+Similar overall schema 
+  => entities connected to the outside world with input/output streams
+  => we perceive what our senses and motions enable us to perceive: type, range, precision…
+  
+  \input{figures/interactingloops.tex}
+  
+% humans and systems communicate
+% thei know their interpretation of the other entities, not what they actually are
+  adaptations of Norman's theory
+  
+  => we perceive indirect properties of the environment => perceptual/conceptual model
 
-Différent ? Ou pas ?
-(Not only machines behavior is different than human behavior), but most importantly the purpose of their behavior is different.
+  Communication: humans and system both have a perceptual model of the other.
+  It does not necessarily match their conceptual model.
+  On the human side, the conceptual model of systems is known by the designer, and the perceptual model comes from experience, and software part evolves.
+  On the system side, the conceptual model of humans is unknown, studied by psychologists. The perceptual model depends on sensors and algorithms that 
+  
+=> Towards computing affordance, a generalized notion of computability
 
-Computers are human inventions, and they are build to follow human-made specifications.
-Their behavior
+  \input{figures/sevenstages2.tex}
 
-=> Towards computing affordance, a generalized notion of computability
+% something…
+  Abowd \& Beale's interaction framework\cite{abowd91}
 
-Control and automation: Moravec's paradox
+  \input{figures/wholeschema.tex}
+  
 
-adaptations of Norman's theory
 
-Communication: humans and system both have a perceptual model of the other.
-It does not necessarily match their conceptual model.
-On the human side, the conceptual model of systems is known by the designer, and the perceptual model comes from experience, and software part evolves.
-On the system side, the conceptual model of humans is unknown, studied by psychologists. The perceptual model depends on sensors and algorithms that 
 
-\input{figures/sevenstages2.tex}
 
-\input{figures/interactingloops.tex}
+\begin{idee}
+Pb: it reacts always the same way to the same entries. Humans tend to evolve. => ML?
+Flexibility? Adaptability?
+
+Curiosity~\cite{laversannefinot18}
 
-Abowd \& Beale's interaction framework\cite{abowd91}
+Différent ? Ou pas ?
+(Not only machines behavior is different than human behavior), but most importantly the purpose of their behavior is different.
 
-\input{figures/wholeschema.tex}
+Computers are human inventions, and they are build to follow human-made specifications.
+Their behavior
 
+Control and automation: Moravec's paradox
+\end{idee}
 
 % \begin{algorithm}[htb]
 %   \SetAlgoLined