\documentclass[11pt]{beamer}

\usepackage{xunicode}% for XeTex!
\usepackage{fontspec}% for XeTex!
\usepackage{xltxtra} % for XeTex!

\usepackage{amsfonts}% for Z12
\usepackage[french]{babel}
\usepackage{url}
\usepackage{tikz}
\usetikzlibrary{shapes}
\usetikzlibrary{shapes.geometric}
\usetikzlibrary{positioning}
\usetikzlibrary{fit}
\usetikzlibrary{lindenmayersystems}% for Hilbert curve
\usetikzlibrary{external}
\tikzexternalize[prefix=figs/]
\tikzset{external/system call={xelatex \tikzexternalcheckshellescape
    -halt-on-error -interaction=batchmode -jobname "\image" "\texsource"}}
\usepackage[lofdepth,lotdepth]{subfig}% replaces subfigure

% The presentation specific packages
%\usepackage{hyperref}
\usepackage{multimedia}

\defaultfontfeatures{Scale=MatchLowercase}
\setromanfont[Mapping=tex−text]{Linux Libertine O}
\setsansfont [Mapping=tex−text]{Ubuntu}
\setmonofont [Mapping=tex−text]{Inconsolata}

\newcommand{\ircam}{Ircam}
\newcommand{\lps}{Lps}
\newcommand{\lisp}{Lisp}
\newcommand{\mlys}{Modalys}
\newcommand{\om}{OpenMusic}
\newcommand{\mpri}{Mpri}
\newcommand{\todo}{\fbox{\texttt{todo}}}
\newcommand{\sonif}[2]{%
    \parbox{2ex}{\includegraphics[height=2ex]{figs/speaker}}%
    \hspace{.5em}\emph{#2}}

\hyphenation{con-cen-trent}
\AtBeginSection[]{
    \frame{\sectionpage} 
}

\begin{document}
\title{De la sonification à la « musification »\\de systèmes complexes}
\subtitle{Présentation de stage}
\author{Martin Potier\\
{\scriptsize MPRI, Université Paris Diderot}}
\date{6 septembre 2012}
\institute{
    {\small\textbf{Moreno Andreatta} et \textbf{Jean-Louis Giavitto}}\\
    Équipe Représentation Musicales, Institut de Recherche et Coordination Acoustique/Musique, CNRS \and
    {\small\textbf{Wiebke Drenckhan}}\\
    Laboratoire de Physique des Solides, Université Paris Sud, CNRS}

% Each presentation will last 30 minutes (20 minutes of presentation + 10
% minutes of questions). A video-projector will be available.

\frame{\titlepage}

\begin{frame}{Plan}
    \tableofcontents
\end{frame}

\section{Motivations}
% Trouver des lois d'un système complexe sans connaissance a priori
\begin{frame}{Comprendre l'évolution d'une mousse liquide}
    Vidéo
    % movie
\end{frame}

\begin{frame}{Comprendre l'évolution d'une mousse liquide (suite)}
    \begin{columns}
        \column{.3\textwidth}
        \includegraphics[width=\textwidth]{figs/foam2D-honeycomb}
        \column{.3\textwidth}
        \includegraphics[width=\textwidth]{figs/foam2D-grain-boundaries}
        \column{.3\textwidth}
        \includegraphics[width=\textwidth]{figs/foam2D-disordered}
    \end{columns}

    \pause
    \begin{center}
        \includegraphics[width=.6\textwidth]{figs/lauriesfoam}

        10 ans pour obtenir le modèle
    \end{center}
\end{frame}

\section{De la sonification\ldots}
\begin{frame}{Un domaine nouveau}
    \begin{quote}
    « Sonification is the transformation of data relations into perceived
    relations in an acoustic signal for the purposes of facilitating
    communication or interpretation. »\hfill\textbf{Kramer~1999}
    \end{quote}
    \begin{center}
    \usebeamercolor{frametitle}
    \begin{tikzpicture}[align=center, every node/.style={fg,auto}]
        \node (phystate)                    {État local du système};
        \node (phyobs) [below=of phystate]  {Observables};
        \node (sonrel) [right=of phystate]  {Relations sonores\\(analogiques)};
        \node (sonobs) [below=of sonrel]    {Objets sonores};
        \node (qb) at (barycentric cs:phyobs=1,sonobs=1)
        [black,yshift=-1cm,font=\scriptsize] {mappings\\sonification};

        \draw[thick,->, dotted] (phyobs) -- (phystate);
        \draw[black,thick,->] (phyobs) |- (qb) -| (sonobs);
        \draw[black,thick,font=\scriptsize,->] (sonobs)
        to node [swap,text width=21mm] {perception (IHM)} (sonrel);
        \draw[black,thick,->,dotted] (sonrel) to node [swap] {?} (phystate);
    \end{tikzpicture}
    \end{center}
\end{frame}

\begin{frame}{\sonif{sound/M1}{M$_1$ : synthèse modale, timbre et ordre (30 s)}}
    Utilise Modalys (outil de l'IRCAM) pour la synthèse de timbre

    \begin{tabular}{|l|l|}
        Nombre de voisines & $\rightarrow$ Fréquence \\
        Nombre de voisines & $\rightarrow$ Fréquence \\
        Nombre de voisines & $\rightarrow$ Fréquence \\
    \end{tabular}

    Modalys simule 900 oscillateurs (un par bulle).

    On peut entendre les configurations spatiales :
    \begin{description}
        \item[Ordre]            $\rightarrow$ fréquence pure ;
        \item[Grain boundaries] $\rightarrow$ battement (deux fréquences proches) ;
        \item[Désordre]         $\rightarrow$ bruit non caractéristique.
    \end{description}
\end{frame}

\section{\ldots à la musification}
\begin{frame}{Enrichir la sonification}
    \begin{columns}
        \column{.7\textwidth}
        \usebeamercolor{frametitle}
        \pgfdeclarelayer{background}
        \pgfsetlayers{background,main}
        \begin{tikzpicture}[align=center, every node/.style={fg,auto}]
            \node (phystate)                    {État local du système};
            \node (phyobs) [below=of phystate]  {Observables};
            \node (sonrel) [right=of phystate]  {Relations sonores\\(analogiques)};
            \node (musrel) [above=of sonrel]    {Relations musicales\\(symboliques)};
            \node (sonobs) [below=of sonrel]    {Objets sonores};
            \node (phyrel) [above=of phystate]  {État global du système\\Lois du système};
            \node (qt) at (barycentric cs:musrel=1,phyrel=1) [black,yshift=1cm] {?};
            \node (qb) at (barycentric cs:phyobs=1,sonobs=1)
            [black,yshift=-1cm,font=\scriptsize] {mappings\\sonification/musification};

            \draw[thick,->, dotted] (phyobs) -- (phystate);
            \draw[thick,->, dotted] (phystate) -- (phyrel);
            \draw[black,thick,->] (phyobs) |- (qb) -| (sonobs);
            \draw[black,thick,font=\scriptsize,->] (sonobs)
            to node [swap,text width=21mm] {perception (IHM)} (sonrel);
            \draw[black,thick,->,dotted] (sonrel) to node [swap] {?} (phystate);
            \draw[black,thick,->] (sonrel) to (musrel);
            \draw[black,thick,->] (musrel.north) |- (qt) -| (phyrel.north);

            \begin{pgfonlayer}{background}
                \node[draw=gray,dashed,thick,fill=gray!10,inner sep=5mm,xshift=3mm,yshift=-4mm,
                fit=(phystate) (sonrel) (sonobs) (phyobs) (qb)] {};
            \end{pgfonlayer}
        \end{tikzpicture}

        \column{.3\textwidth}
        \begin{itemize}
            \item plus de paramètres
            \item plus de multi-échelle
        \end{itemize}
    \end{columns}
\end{frame}

\begin{frame}{\sonif{sound/M2}{M$_2$ : un mapping rythmique (24 s)}}
    
    \begin{columns}
        \column{.5\textwidth}
        \includegraphics[width=\textwidth]{figs/chemin-rythm1}
        \column{.5\textwidth}
        \includegraphics[width=\textwidth]{figs/chemin-rythm2}
    \end{columns}

\end{frame}

\begin{frame}{Des Tonnetz aux graphes de Cayley}
    \begin{columns}[c]
        \column{.4\textwidth}
        \includegraphics[width=\textwidth]{figs/eulers-tonnetz}

        \column{.05\textwidth}
        $$ \rightarrow $$

        \column{.4\textwidth}
        \begin{tikzpicture}
            [note/.style={draw,black,circle,inner sep=.5mm,minimum size=8mm},
                label distance=-1mm,label position=below left,
            double distance=.5mm, scale=.5, transform shape]
            \node[note,double]      (C)  {Do  };
            \node[note,left=of C]   (F)  {Fa  };
            \node[note,right=of C]  (G)  {Sol };
            \node[note,right=of G]  (D)  {Ré  };

            \node[note,above=of F]  (A)  {La  };
            \node[note,right=of A]  (E)  {Mi  };
            \node[note,right=of E]  (B)  {Si  };
            \node[note,right=of B]  (Fd) { Fa\#};

            \node[note,above=of A]  (Cd) { Do\#};
            \node[note,right=of Cd] (Gd) {Sol\#};
            \node[note,right=of Gd] (Dd) { Ré\#};
            \node[note,right=of Dd] (Ad) { La\#};

            \draw (F)  -- (C)  -- node[above,midway] {+7} (G)  -- (D);
            \draw (A)  -- (E)  -- (B)  -- (Fd);
            \draw (Cd) -- (Gd) -- (Dd) -- (Ad);

            \draw (F) -- (A)  -- (Cd);
            \draw (C) -- node[right,midway] {+4} (E)  -- (Gd);
            \draw (G) -- (B)  -- (Dd);
            \draw (D) -- (Fd) -- (Ad);

            \draw[dashed] (Cd.north) -- +(0cm ,6mm );
            \draw[dashed] (Gd.north) -- +(0cm ,6mm );
            \draw[dashed] (Dd.north) -- +(0cm ,6mm );
            \draw[dashed] (Ad.north) -- +(0cm ,6mm );
            \draw[dashed] (F.south)  -- +(0cm ,-6mm);
            \draw[dashed] (C.south)  -- +(0cm ,-6mm);
            \draw[dashed] (G.south)  -- +(0cm ,-6mm);
            \draw[dashed] (D.south)  -- +(0cm ,-6mm);
            \draw[dashed] (F.west)   -- +(-6mm,0cm );
            \draw[dashed] (A.west)   -- +(-6mm,0cm );
            \draw[dashed] (Cd.west)  -- +(-6mm,0cm );
            \draw[dashed] (Ad.east)  -- +(6mm ,0cm );
            \draw[dashed] (Fd.east)  -- +(6mm ,0cm );
            \draw[dashed] (D.east)   -- +(6mm ,0cm );
        \end{tikzpicture}
    \end{columns}

    \medskip
    Présentation du groupe $\mathbb{Z}_{12}$ :
    $$ g_{4,7} = < \mathbf{4}, \mathbf{7}\ |\ 3.\mathbf{4} + 0.\mathbf{7} = 0,\quad0.\mathbf{4} +
    12.\mathbf{7} = 0,\quad\mathbf{4} + \mathbf{7} = \mathbf{7} + \mathbf{4} > $$
\end{frame}

\begin{frame}{Des Tonnetz aux graphes de Cayley (suite)}
    \begin{center} 
        \begin{tikzpicture}
            [note/.style={draw,black,circle,inner sep=2mm},
                hex/.style={},
                label distance=-1mm,label position=below left,
                double distance=.5mm,xscale=.60\textwidth/9.2cm,
            yscale=.50\textwidth/9.2cm]
            \begin{scope}[opacity=.5]
                \node[note]        (F)  at (-1cm,0cm) {};
                \node[note,double] (C)  at ( 1cm,0cm) {};
                \node[note]        (G)  at ( 3cm,0cm) {};
                \node[note]        (D)  at ( 5cm,0cm) {};

                \node[note]        (A)  at ( 0cm,2cm) {};
                \node[note]        (E)  at ( 2cm,2cm) {};
                \node[note]        (B)  at ( 4cm,2cm) {};
                \node[note]        (Fd) at ( 6cm,2cm) {};

                \node[note]        (Cd) at ( 1cm,4cm) {};
                \node[note]        (Gd) at ( 3cm,4cm) {};
                \node[note]        (Dd) at ( 5cm,4cm) {};
                \node[note]        (Ad) at ( 7cm,4cm) {};

                \draw (F)  -- (C)  -- (G)  -- (D);
                \draw (A)  -- (E)  -- (B)  -- (Fd);
                \draw (Cd) -- (Gd) -- (Dd) -- (Ad);

                \draw (F) -- (A)  -- (Cd);
                \draw (C) -- (E)  -- (Gd);
                \draw (G) -- (B)  -- (Dd);
                \draw (D) -- (Fd) -- (Ad);
                \draw (Cd) -- (E) -- (G);
                \draw (Gd) -- (B) -- (D);
                \draw (Dd) -- (Fd);
                \draw (A) -- (C);

                \node (1u) at (barycentric cs:A=1,Cd=1,E=1)   {};
                \node (2u) at (barycentric cs:Gd=1,B=1,E=1)   {};
                \node (3u) at (barycentric cs:B=1,Dd=1,Fd=1)  {}; 
                \node (4u) at (barycentric cs:F=1,A=1,C=1)    {};
                \node (5u) at (barycentric cs:E=1,G=1,C=1)    {};
                \node (6u) at (barycentric cs:B=1,G=1,D=1)    {};
                \node (1d) at (barycentric cs:Cd=1,Gd=1,E=1)  {}; 
                \node (2d) at (barycentric cs:Dd=1,Gd=1,B=1)  {}; 
                \node (3d) at (barycentric cs:Dd=1,Ad=1,Fd=1) {};
                \node (4d) at (barycentric cs:A=1,E=1,C=1)    {};
                \node (5d) at (barycentric cs:G=1,E=1,B=1)    {};
                \node (6d) at (barycentric cs:D=1,Fd=1,B=1)   {};

                \draw[dashed] (Cd.north) -- +(0cm ,6mm );
                \draw[dashed] (Gd.north) -- +(0cm ,6mm );
                \draw[dashed] (Dd.north) -- +(0cm ,6mm );
                \draw[dashed] (Ad.north) -- +(0cm ,6mm );
                \draw[dashed] (F.south)  -- +(0cm ,-6mm);
                \draw[dashed] (C.south)  -- +(0cm ,-6mm);
                \draw[dashed] (G.south)  -- +(0cm ,-6mm);
                \draw[dashed] (D.south)  -- +(0cm ,-6mm);
                \draw[dashed] (F.west)   -- +(-6mm,0cm );
                \draw[dashed] (A.west)   -- +(-6mm,0cm );
                \draw[dashed] (Cd.west)  -- +(-6mm,0cm );
                \draw[dashed] (Ad.east)  -- +(6mm ,0cm );
                \draw[dashed] (Fd.east)  -- +(6mm ,0cm );
                \draw[dashed] (D.east)   -- +(6mm ,0cm );
            \end{scope}

            \draw[hex] (1u.center) -- (1d.center) -- (2u.center)
            -- (2d.center) -- (3u.center) -- (3d.center);
            \draw[hex] (4u.center) -- (4d.center) -- (5u.center)
            -- (5d.center) -- (6u.center) -- (6d.center);
            \draw[hex] (1u.center) -- (4d.center);
            \draw[hex] (2u.center) -- (5d.center);
            \draw[hex] (3u.center) -- (6d.center);
            \draw[hex,dashed] (1d.center) -- +(0, 1.5cm);
            \draw[hex,dashed] (2d.center) -- +(0, 1.5cm);
            \draw[hex,dashed] (3d.center) -- +(0, 1.5cm);
            \draw[hex,dashed] (4u.center) -- +(0,-1.5cm);
            \draw[hex,dashed] (5u.center) -- +(0,-1.5cm);
            \draw[hex,dashed] (6u.center) -- +(0,-1.5cm);

            \draw[hex,dashed] (1u.center) -- +(150:1.0cm);
            \draw[hex,dashed] (4u.center) -- +(150:1.0cm);
            \draw[hex,dashed] (3d.center) -- +(-30:1.0cm);
            \draw[hex,dashed] (6d.center) -- +(-30:1.0cm);
        \end{tikzpicture}
    \end{center}
\end{frame}

\begin{frame}{\sonif{sounds/M3}{M$_3$ : un mapping intervallique (45 s)}}
\begin{columns}
\column{.2\textwidth}
\begin{tikzpicture}[rotate=30,scale=.5,                                        
    hex/.style={regular polygon, regular polygon sides=6, draw, inner sep=.5cm,
    transform shape, text width=0}]                                            
\node[hex,gray] (5) at ( 30:1.41cm) {}; %5                                     
\node[hex,gray] (6) at ( 90:1.41cm) {}; %6                                     
\node[hex,gray] (1) at (150:1.41cm) {}; %1                                     
\node[hex,gray] (2) at (210:1.41cm) {}; %2                                     
\node[hex,gray] (3) at (270:1.41cm) {}; %3                                     
\node[hex,gray] (4) at (330:1.41cm) {}; %4                                     
\node[hex,thick] (h) at (0,0) {};                                              
                                                                               
\foreach \i in {1,...,6} {                                                     
    \draw[gray,->,dashed] (h.center) -- (\i) node[gray] {\i} ;}                
\end{tikzpicture}

\column{.6\textwidth}
\includegraphics[width=\textwidth]{figs/bulandhex}
\end{columns}

\medskip
\begin{columns}
\column{.3\textwidth}
\includegraphics[width=\textwidth]{figs/hex}
\column{.3\textwidth}
\includegraphics[width=\textwidth]{figs/bul}
\end{columns}

\medskip
\begin{center}
\end{center}
\end{frame}

\begin{frame}{\sonif{sounds/M4}{M$_4$ : un mapping intervallique et rythmique (56 s)}}
    Association de M$_2$ et de M$_3$
\end{frame}

\section{Bilan et perspectives}
\begin{frame}{Bilan}
    Ce qui a été fait :
    \begin{itemize}
        \item Musify
    \end{itemize}

    Résultats préliminaires encourageants
\end{frame}

\begin{frame}{Perspectives}
    Ce qui est prévu :
\begin{itemize}
    \item \texttt{gnusic} (en référence à gnuplot)
    \item exploration assisté des mappings
\end{itemize}
\end{frame}
\end{document}
