From fd22f81f80bf935f9c068d2029257c2802476862 Mon Sep 17 00:00:00 2001 From: Quentin Guilloteau <Quentin.Guilloteau@inria.fr> Date: Mon, 9 Jan 2023 16:29:03 +0100 Subject: [PATCH] start adding some content --- README.md | 3 +++ pages/src/SUMMARY.md | 12 ++++++++--- pages/src/autonomic_computing.md | 0 pages/src/contacts.md | 16 ++++++++++++++ pages/src/control_theory.md | 0 pages/src/intro.md | 11 ++++++---- pages/src/motivation.md | 36 ++++++++++++++++++++++++++++++++ pages/src/problems.md | 3 ++- pages/src/sessions.md | 5 +++++ 9 files changed, 78 insertions(+), 8 deletions(-) create mode 100644 pages/src/autonomic_computing.md create mode 100644 pages/src/contacts.md create mode 100644 pages/src/control_theory.md create mode 100644 pages/src/motivation.md create mode 100644 pages/src/sessions.md diff --git a/README.md b/README.md index 8f353b6..fb70bd9 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,8 @@ # tuto ctrl for computing + +Link to the tuto: [https://tinyurl.com/CtrlComputing](https://tinyurl.com/CtrlComputing) + ```bash docker run --privileged -it -v $(pwd):/data guilloteauq/tuto-ctrl-docker:july2022 tuto-ctrl main.lua 1000000 ``` diff --git a/pages/src/SUMMARY.md b/pages/src/SUMMARY.md index 8839a90..0c261ba 100644 --- a/pages/src/SUMMARY.md +++ b/pages/src/SUMMARY.md @@ -2,10 +2,16 @@ [Introduction](intro.md) -[Frequent Problems](problems.md) +[Motivation](motivation.md) + +[Control Theory](control_theory.md) +[Autonomic Computing](autonomic_computing.md) + +[Frequent Problems](problems.md) -# To go further +[Publications](publications.md) -- [Publications](publications.md) +[Sessions](sessions.md) +[Contacts](contacts.md) diff --git a/pages/src/autonomic_computing.md b/pages/src/autonomic_computing.md new file mode 100644 index 0000000..e69de29 diff --git a/pages/src/contacts.md b/pages/src/contacts.md new file mode 100644 index 0000000..926cb96 --- /dev/null +++ b/pages/src/contacts.md @@ -0,0 +1,16 @@ +# Contacts + +The authors of this tutorial are: + +- [Quentin GUILLOTEAU](https://guilloteauq.github.io/) (Quentin.Guilloteau AT univ-grenoble-alpes.fr) + +- [Sophie CERF](https://sites.google.com/view/sophiecerf/) (Sophie.Cerf AT inria.fr) + +- [Eric RUTTEN](http://team.inria.fr/ctrl-a/members/eric-rutten) (Eric.Rutten AT inria.fr) + +- [Bogdan ROBU](http://www.gipsa-lab.grenoble-inp.fr/page_pro.php?vid=1451) (Bogdan.Robu AT grenoble-inp.fr) + + +All the source code is available [here](https://gitlab.inria.fr/control-for-computing/tutorial). + +Feel free to make contributions! :) diff --git a/pages/src/control_theory.md b/pages/src/control_theory.md new file mode 100644 index 0000000..e69de29 diff --git a/pages/src/intro.md b/pages/src/intro.md index e2d4496..9b66877 100644 --- a/pages/src/intro.md +++ b/pages/src/intro.md @@ -1,14 +1,17 @@ # Tutorial Control for Computing +Link to this page: [https://tinyurl.com/CtrlComputing](https://tinyurl.com/CtrlComputing) + +## Introduction This tutorial aims at introducing the notions and tool of the Control-Theory field to computer scientists. The tutorial is composed of two parts: -- In the first part, students get familiar with the concepts, tools, and methodology of Control-Theory. - This part is done by experimenting on a simulated system on Jupyter notebooks. +- In the first part, attendees get familiar with the concepts, tools, and methodology of Control-Theory. + This part is done by experimenting on a simulated system with Jupyter notebooks. -- In the second part, students are given a pseudo-realistic system and have to design a controller to regulate its behavior. +- In the second part, attendees are given a pseudo-realistic system and have to design a controller to regulate its behavior. ## Requirements @@ -31,5 +34,5 @@ Start the tutorial by running: docker run -it -p 8888:8888 -v $(pwd):/tuto/data registry.gitlab.inria.fr/control-for-computing/tutorial/tuto:v0.0 ``` -This should start a `JupyterLab` instance. +This should start a `JupyterLab` instance (you may have to click the link in the terminal). Once in `JupyterLab`, begin with the file named `00_Main.ipynb`. diff --git a/pages/src/motivation.md b/pages/src/motivation.md new file mode 100644 index 0000000..fb93537 --- /dev/null +++ b/pages/src/motivation.md @@ -0,0 +1,36 @@ +# Motivation + +Computing systems are getting more and more complex. + + +The software stacks are growing, and are executed on top of complex hardware. +The behavior of such systems is thus becoming extremely difficult to model correctly. + +The usual approach is to have a theoretical model of the system and design complex algorithm based on this model. +This approach is limited by the quality of the model. +Modelling all the possible cases, and behaviors is tedious and error-prone. + +TODO: TAKE AN EXAMPLE OF SYSTEM + +A different approach to regulate the behavior of a computing system is to take measurements of the system metrics, and adapt the input based on these measurements. + + +One classical example is a *heating device*. +The user defines the temperature they want their room to be at. +The heating device will take a measurement of the temperature of the room. +If the temperature is lower than the desired temperature, the heating device will increase the power of its resistance. +If the temperature is greater than the desired temperature, the heating device must stop heating, and will thus decrease the power of its resistance. + +This approach is called **closed-loop**. +Indeed, the system takes a decision based on a sensor, which will impact the next measure of the sensor and thus the next decision. + +There are several ways to "close the loop" in a computing system. + +- AI +- ad-hoc solutions +- control theory + + + + + diff --git a/pages/src/problems.md b/pages/src/problems.md index 1e7383f..4db7375 100644 --- a/pages/src/problems.md +++ b/pages/src/problems.md @@ -1,3 +1,4 @@ # Frequent Problems -... +Nothing yet... + diff --git a/pages/src/sessions.md b/pages/src/sessions.md new file mode 100644 index 0000000..0afbfe8 --- /dev/null +++ b/pages/src/sessions.md @@ -0,0 +1,5 @@ +# Sessions + +This tutorial has been given at the following events: + +- ... -- GitLab