<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="it">
		<id>https://c3lab.poliba.it/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=VittorioPalmisano</id>
		<title>C3Lab - Contributi di questo Utente [it]</title>
		<link rel="self" type="application/atom+xml" href="https://c3lab.poliba.it/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=VittorioPalmisano"/>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=Speciale:Contributi/VittorioPalmisano"/>
		<updated>2026-05-21T23:42:49Z</updated>
		<subtitle>Contributi di questo Utente</subtitle>
		<generator>MediaWiki 1.27.5</generator>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=7174</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=7174"/>
				<updated>2020-05-14T12:08:36Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* 2018 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer. Particolare enfasi è riservato a casi di studio di corrente interesse applicativo.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
L'esame comprende una prova scritta, una prova orale in cui si discutono   3 articoli scientifici a scelta tra quelli studiati durante il corso e un tema d'anno. Il voto finale è la media della prova scriita, della prova orale e del tema d'anno.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2016/17===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman.  Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2015/16===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui casi di studio ===&lt;br /&gt;
* [https://arxiv.org/ftp/arxiv/papers/1805/1805.01631.pdf  On continuos versus discrete time models]&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)] (si veda anche [http://c3lab.poliba.it/images/b/b1/Acc2015.pdf &amp;quot;Characterizing Adaptive Video Streaming Control Systems&amp;quot;] per il modello del playout buffer)&lt;br /&gt;
* [https://c3lab.poliba.it/images/c/c4/Gcc-TNET.pdf Google Congestion Control for Web Real-time communication (WebRTC)]&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/0/0c/Page_rank.pdf Page Rank],&lt;br /&gt;
* [[Media:Web_Information_Retrieval.pdf | A Survey of Eigenvector Methods of Web Information Retrieval]]&lt;br /&gt;
* [[Media:tcp_mathis.pdf | The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm]]&lt;br /&gt;
* [https://static.googleusercontent.com/media/research.google.com/it//pubs/archive/35179.pdf The unreasonable effectiveness of data]&lt;br /&gt;
* [https://www.dartmouth.edu/~matc/MathDrama/reading/Wigner.html The unreasonable effectiveness of Mathematics in the Natural Sciences]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
== 2018 == &lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;a href=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub&amp;quot;&amp;gt;Link&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;iframe src=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub?embedded=true&amp;quot; frameborder=&amp;quot;0&amp;quot; marginwidth=&amp;quot;0&amp;quot; style=&amp;quot;width: 100%; min-height: 400px;&amp;quot;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===2017===&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vROaO7j6c7UlYf64pn6s7jmscSvDefSqpojibOLhwXr5Renk4wMtjE6WybpBGAt4iJvtHhApi6tBYEM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=60000 Introduction to Docker and Kubernetes]&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vSo4MzpE_NksEWUP4bxfL_ltoLvc_zc3Cea82IN-XBA59vz3jfTyXStJb3ttsF3cQGjcShQZYPJQZtK/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Introduction to VR and AR programming]&lt;br /&gt;
&lt;br /&gt;
===2016===&lt;br /&gt;
* Comunicazione real-time con WebRTC ([[Media:webrtc-metoditlc-decicco.pdf | Slides ]])&lt;br /&gt;
&lt;br /&gt;
====2015====&lt;br /&gt;
* Realizzazione di un osservatore di stato basato su filtro di Kalman per la stima della capacità del canale di trasmissione. Contattare [http://c3lab.poliba.it/index.php?title=GaetanoCarlucci Gaetano Carlucci ] per ricevere il materiale necessario.&lt;br /&gt;
* Studio di sistemi di video streaming DASH/HLS utilizzando HTTP2 o QUIC volto alla riduzione del delay utilizzando [https://github.com/ldecicco/tapas TAPAS ]&lt;br /&gt;
* Progettazione di un controllore per l’ adattamento del bitrate in un sistema di video streaming adattativo DASH/HLS utilizzando [https://github.com/ldecicco/tapas TAPAS ] - Documentazione: [https://github.com/ldecicco/tapas/tree/master/docs/sphinx Tapas documentation]&lt;br /&gt;
* Implementazione di un testbed SDN emulato mediante [http://mininet.org/ mininet] per realizzare un piano di controllo per una piattaforma di video streaming adattativo - Documentazione: [http://mininet.org/walkthrough/ mininet walkthrough ]&lt;br /&gt;
* Stabilizzazione dei movimenti di un visore stereoscopico. Link utili: [http://threejs.org/examples/#webgl_video_panorama_equirectangular Threejs demo]&lt;br /&gt;
* Trasmissione sicura tra laptop usando oscillatori caotici. Link utili: [ ]&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=ArgomentiTesi&amp;diff=7173</id>
		<title>ArgomentiTesi</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=ArgomentiTesi&amp;diff=7173"/>
				<updated>2020-05-14T12:08:11Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Argomenti di Tesi =&lt;br /&gt;
&lt;br /&gt;
Sono disponibili tesi sui seguenti argomenti:&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;iframe width=&amp;quot;960&amp;quot; height=&amp;quot;540&amp;quot; src=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vQMcJyNHsY_s1eeJdrPwVdKblZDb5ZrJoqODjDdMhgFymFr6bDApcNf5Oh0r_qNa0MIsaoAnimu4Y0F/pub?embedded=true&amp;quot; frameborder=&amp;quot;0&amp;quot; marginwidth=&amp;quot;0&amp;quot; style=&amp;quot;width: 100%; min-height: 400px;&amp;quot;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
Per informazioni contattare il Prof. Saverio Mascolo (mascolo@poliba.it).&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=Covid19&amp;diff=7095</id>
		<title>Covid19</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=Covid19&amp;diff=7095"/>
				<updated>2020-03-14T16:57:02Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* Andamenti regionali */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= COVID19 - Monitoraggio ed Analisi della situazione italiana=&lt;br /&gt;
== Andamenti regionali ==&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;showcase__section&amp;quot; id=&amp;quot;bubble&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;div class=&amp;quot;spacer --small&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
      &amp;lt;div id=&amp;quot;bubbleplots&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;div class=&amp;quot;bubbleplot&amp;quot; data-num=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;plot&amp;quot; id=&amp;quot;plotdiv&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;control-row&amp;quot;&amp;gt;&lt;br /&gt;
            Regione: &amp;lt;select class=&amp;quot;countrydata&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;/select&amp;gt;&lt;br /&gt;
          &amp;lt;/div&amp;gt;&lt;br /&gt;
        &amp;lt;/div&amp;gt;&lt;br /&gt;
      &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;div id=&amp;quot;myDiv&amp;quot; style=&amp;quot;width:100%;height:500px;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;script&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Plotly.d3.csv(&lt;br /&gt;
  &amp;quot;https://raw.githubusercontent.com/pcm-dpc/COVID-19/master/dati-regioni/dpc-covid19-ita-regioni.csv&amp;quot;,&lt;br /&gt;
  function(err, rows) {&lt;br /&gt;
    function unpack(rows, key) {&lt;br /&gt;
      return rows.map(function(row) {&lt;br /&gt;
        return row[key];&lt;br /&gt;
      });&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var allRegionNames = unpack(rows, &amp;quot;denominazione_regione&amp;quot;),&lt;br /&gt;
      allDay = unpack(rows, &amp;quot;data&amp;quot;),&lt;br /&gt;
      allRicoverati = unpack(rows, &amp;quot;ricoverati_con_sintomi&amp;quot;),&lt;br /&gt;
      allTi = unpack(rows, &amp;quot;terapia_intensiva&amp;quot;),&lt;br /&gt;
      allTo = unpack(rows, &amp;quot;totale_ospedalizzati&amp;quot;),&lt;br /&gt;
      allIdom = unpack(rows, &amp;quot;isolamento_domiciliare&amp;quot;),&lt;br /&gt;
      allAttPos = unpack(rows, &amp;quot;totale_attualmente_positivi&amp;quot;),&lt;br /&gt;
      allNewPos = unpack(rows, &amp;quot;nuovi_attualmente_positivi&amp;quot;),&lt;br /&gt;
      allDimGuariti = unpack(rows, &amp;quot;dimessi_guariti&amp;quot;),&lt;br /&gt;
      allMorti = unpack(rows, &amp;quot;deceduti&amp;quot;),&lt;br /&gt;
      allTotCasi = unpack(rows, &amp;quot;totale_casi&amp;quot;),&lt;br /&gt;
      allTamponi = unpack(rows, &amp;quot;tamponi&amp;quot;),&lt;br /&gt;
      listofRegions = [],&lt;br /&gt;
      currentCountry,&lt;br /&gt;
      currentGdp = [],&lt;br /&gt;
      currentYear = [];&lt;br /&gt;
    currTitle = &amp;quot;Abruzzo&amp;quot;;&lt;br /&gt;
    currallRicoverati = [];&lt;br /&gt;
    currallTi = [];&lt;br /&gt;
    currallTo = [];&lt;br /&gt;
    currallIdom = [];&lt;br /&gt;
    currallAttPos = [];&lt;br /&gt;
    currallNewPos = [];&lt;br /&gt;
    currallDimGuariti = [];&lt;br /&gt;
    currallMorti = [];&lt;br /&gt;
    currallTotCasi = [];&lt;br /&gt;
    currallTamponi = [];&lt;br /&gt;
&lt;br /&gt;
    for (var i = 0; i &amp;lt; allRegionNames.length; i++) {&lt;br /&gt;
      if (listofRegions.indexOf(allRegionNames[i]) === -1) {&lt;br /&gt;
        listofRegions.push(allRegionNames[i]);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    function getRegionData(chosenCountry) {&lt;br /&gt;
      currTitle = chosenCountry;&lt;br /&gt;
      currentYear = [];&lt;br /&gt;
      currallRicoverati = [];&lt;br /&gt;
      currallTi = [];&lt;br /&gt;
      currallTo = [];&lt;br /&gt;
      currallIdom = [];&lt;br /&gt;
      currallAttPos = [];&lt;br /&gt;
      currallNewPos = [];&lt;br /&gt;
      currallDimGuariti = [];&lt;br /&gt;
      currallMorti = [];&lt;br /&gt;
      currallTotCasi = [];&lt;br /&gt;
      currallTamponi = [];&lt;br /&gt;
&lt;br /&gt;
      for (var i = 0; i &amp;lt; allRegionNames.length; i++) {&lt;br /&gt;
        if (allRegionNames[i] === chosenCountry) {&lt;br /&gt;
          currentYear.push(allDay[i]);&lt;br /&gt;
          currallRicoverati.push(allRicoverati[i]);&lt;br /&gt;
          currallTi.push(allTi[i]);&lt;br /&gt;
          currallTo.push(allTo[i]);&lt;br /&gt;
          currallIdom.push(allIdom[i]);&lt;br /&gt;
          currallAttPos.push(allAttPos[i]);&lt;br /&gt;
          currallNewPos.push(allNewPos[i]);&lt;br /&gt;
          currallDimGuariti.push(allDimGuariti[i]);&lt;br /&gt;
          currallMorti.push(allMorti[i]);&lt;br /&gt;
          currallTotCasi.push(allTotCasi[i]);&lt;br /&gt;
          currallTamponi.push(allTamponi[i]);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Default Region Data&lt;br /&gt;
    setBubblePlot(&amp;quot;Abruzzo&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    function setBubblePlot(chosenCountry) {&lt;br /&gt;
      getRegionData(chosenCountry);&lt;br /&gt;
&lt;br /&gt;
            var trace1 = {&lt;br /&gt;
                visible: 'legendonly',&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallRicoverati,&lt;br /&gt;
                name: 'Ricoverati con sintomi',&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace2 = {&lt;br /&gt;
                visible: 'legendonly',&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallTi,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Terapia Intensiva',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace3 = {&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallTo,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Totale ospedalizzati',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace4 = {&lt;br /&gt;
                visible: 'legendonly',&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallIdom,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Isolamento domiciliare',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace5 = {&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallAttPos,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Totale attualmente positivi',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace6 = {&lt;br /&gt;
                visible: 'legendonly',&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallNewPos,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Nuovi attualmente positivi',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace7 = {&lt;br /&gt;
                visible: 'legendonly',&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallDimGuariti,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Dimessi guariti',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace8 = {&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallMorti,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Deceduti',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace9 = {&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallTotCasi,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Totale casi',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace10 = {&lt;br /&gt;
                visible: 'legendonly',&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallTamponi,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Tamponi',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
      var data = [&lt;br /&gt;
        trace1,&lt;br /&gt;
        trace2,&lt;br /&gt;
        trace3,&lt;br /&gt;
        trace4,&lt;br /&gt;
        trace5,&lt;br /&gt;
        trace6,&lt;br /&gt;
        trace7,&lt;br /&gt;
        trace8,&lt;br /&gt;
        trace9,&lt;br /&gt;
        trace10&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var updatemenus = [&lt;br /&gt;
        {&lt;br /&gt;
          buttons: [&lt;br /&gt;
            {&lt;br /&gt;
              args: [{ &amp;quot;yaxis.type&amp;quot;: &amp;quot;linear&amp;quot;, &amp;quot;yaxis.tickmode&amp;quot;: &amp;quot;auto&amp;quot; }],&lt;br /&gt;
              label: &amp;quot;Linear&amp;quot;,&lt;br /&gt;
              method: &amp;quot;relayout&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
              args: [{ &amp;quot;yaxis.type&amp;quot;: &amp;quot;log&amp;quot;, &amp;quot;yaxis.dtick&amp;quot;: 1 }],&lt;br /&gt;
              label: &amp;quot;SemiLog&amp;quot;,&lt;br /&gt;
              method: &amp;quot;relayout&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
          ],&lt;br /&gt;
          direction: &amp;quot;left&amp;quot;,&lt;br /&gt;
          pad: { r: 10, t: 10 },&lt;br /&gt;
          showactive: true,&lt;br /&gt;
          type: &amp;quot;buttons&amp;quot;,&lt;br /&gt;
          x: 0.1,&lt;br /&gt;
          xanchor: &amp;quot;left&amp;quot;,&lt;br /&gt;
          y: 1.1,&lt;br /&gt;
          yanchor: &amp;quot;top&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var annotations = [&lt;br /&gt;
        {&lt;br /&gt;
          text: &amp;quot;Plot type:&amp;quot;,&lt;br /&gt;
          x: 0,&lt;br /&gt;
          y: 1.085,&lt;br /&gt;
          yref: &amp;quot;paper&amp;quot;,&lt;br /&gt;
          align: &amp;quot;left&amp;quot;,&lt;br /&gt;
          showarrow: false&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var layout = {&lt;br /&gt;
        title: &amp;quot;Andamento regionale &amp;quot; + currTitle,&lt;br /&gt;
        //height: 400,&lt;br /&gt;
        //width: 800,&lt;br /&gt;
        margin: { l: 40, r: 0 },&lt;br /&gt;
        updatemenus: updatemenus,&lt;br /&gt;
        //annotations: annotations,&lt;br /&gt;
        showlegend: true,&lt;br /&gt;
        legend: { orientation: &amp;quot;h&amp;quot; },&lt;br /&gt;
        yaxis: {&lt;br /&gt;
          autorange: true&lt;br /&gt;
&lt;br /&gt;
          //type: 'log',&lt;br /&gt;
          //fixedrange: true,&lt;br /&gt;
          //range: [0,3.70]&lt;br /&gt;
          //range: [0,5000]&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
      var options = {&lt;br /&gt;
        scrollZoom: true,&lt;br /&gt;
        displayModeBar: false,&lt;br /&gt;
        responsive: true&lt;br /&gt;
      };&lt;br /&gt;
      Plotly.newPlot(&amp;quot;myDiv&amp;quot;, data, layout, options);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var innerContainer = document.querySelector('[data-num=&amp;quot;0&amp;quot;'),&lt;br /&gt;
      plotEl = innerContainer.querySelector(&amp;quot;.plot&amp;quot;),&lt;br /&gt;
      countrySelector = innerContainer.querySelector(&amp;quot;.countrydata&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    function assignOptions(textArray, selector) {&lt;br /&gt;
      for (var i = 0; i &amp;lt; textArray.length; i++) {&lt;br /&gt;
        var currentOption = document.createElement(&amp;quot;option&amp;quot;);&lt;br /&gt;
        currentOption.text = textArray[i];&lt;br /&gt;
        selector.appendChild(currentOption);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    assignOptions(listofRegions, countrySelector);&lt;br /&gt;
&lt;br /&gt;
    function updateCountry() {&lt;br /&gt;
      setBubblePlot(countrySelector.value);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    countrySelector.addEventListener(&amp;quot;change&amp;quot;, updateCountry, false);&lt;br /&gt;
  }&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Disclaimer ==&lt;br /&gt;
Dati forniti dal Ministero della Salute, elaborazione e gestione dati a cura del Dipartimento della Protezione Civile: https://github.com/pcm-dpc/COVID-19&lt;br /&gt;
&lt;br /&gt;
Rielaborazione a cura del Control of dynamic system Lab, Politecnico di Bari&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=Covid19&amp;diff=7094</id>
		<title>Covid19</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=Covid19&amp;diff=7094"/>
				<updated>2020-03-14T16:55:14Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* COVID19 - Monitoraggio ed Analisi della situazione italiana */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= COVID19 - Monitoraggio ed Analisi della situazione italiana=&lt;br /&gt;
== Andamenti regionali ==&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;showcase__section&amp;quot; id=&amp;quot;bubble&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;div class=&amp;quot;spacer --small&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
      &amp;lt;div id=&amp;quot;bubbleplots&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;div class=&amp;quot;bubbleplot&amp;quot; data-num=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;plot&amp;quot; id=&amp;quot;plotdiv&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;control-row&amp;quot;&amp;gt;&lt;br /&gt;
            Regione: &amp;lt;select class=&amp;quot;countrydata&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;/select&amp;gt;&lt;br /&gt;
          &amp;lt;/div&amp;gt;&lt;br /&gt;
        &amp;lt;/div&amp;gt;&lt;br /&gt;
      &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;div id=&amp;quot;myDiv&amp;quot; style=&amp;quot;width:100%;height:500px;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;script&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Plotly.d3.csv(&lt;br /&gt;
  &amp;quot;https://raw.githubusercontent.com/pcm-dpc/COVID-19/master/dati-regioni/dpc-covid19-ita-regioni.csv&amp;quot;,&lt;br /&gt;
  function(err, rows) {&lt;br /&gt;
    function unpack(rows, key) {&lt;br /&gt;
      return rows.map(function(row) {&lt;br /&gt;
        return row[key];&lt;br /&gt;
      });&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var allRegionNames = unpack(rows, &amp;quot;denominazione_regione&amp;quot;),&lt;br /&gt;
      allDay = unpack(rows, &amp;quot;data&amp;quot;),&lt;br /&gt;
      allRicoverati = unpack(rows, &amp;quot;ricoverati_con_sintomi&amp;quot;),&lt;br /&gt;
      allTi = unpack(rows, &amp;quot;terapia_intensiva&amp;quot;),&lt;br /&gt;
      allTo = unpack(rows, &amp;quot;totale_ospedalizzati&amp;quot;),&lt;br /&gt;
      allIdom = unpack(rows, &amp;quot;isolamento_domiciliare&amp;quot;),&lt;br /&gt;
      allAttPos = unpack(rows, &amp;quot;totale_attualmente_positivi&amp;quot;),&lt;br /&gt;
      allNewPos = unpack(rows, &amp;quot;nuovi_attualmente_positivi&amp;quot;),&lt;br /&gt;
      allDimGuariti = unpack(rows, &amp;quot;dimessi_guariti&amp;quot;),&lt;br /&gt;
      allMorti = unpack(rows, &amp;quot;deceduti&amp;quot;),&lt;br /&gt;
      allTotCasi = unpack(rows, &amp;quot;totale_casi&amp;quot;),&lt;br /&gt;
      allTamponi = unpack(rows, &amp;quot;tamponi&amp;quot;),&lt;br /&gt;
      listofRegions = [],&lt;br /&gt;
      currentCountry,&lt;br /&gt;
      currentGdp = [],&lt;br /&gt;
      currentYear = [];&lt;br /&gt;
    currTitle = &amp;quot;Abruzzo&amp;quot;;&lt;br /&gt;
    currallRicoverati = [];&lt;br /&gt;
    currallTi = [];&lt;br /&gt;
    currallTo = [];&lt;br /&gt;
    currallIdom = [];&lt;br /&gt;
    currallAttPos = [];&lt;br /&gt;
    currallNewPos = [];&lt;br /&gt;
    currallDimGuariti = [];&lt;br /&gt;
    currallMorti = [];&lt;br /&gt;
    currallTotCasi = [];&lt;br /&gt;
    currallTamponi = [];&lt;br /&gt;
&lt;br /&gt;
    for (var i = 0; i &amp;lt; allRegionNames.length; i++) {&lt;br /&gt;
      if (listofRegions.indexOf(allRegionNames[i]) === -1) {&lt;br /&gt;
        listofRegions.push(allRegionNames[i]);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    function getRegionData(chosenCountry) {&lt;br /&gt;
      currTitle = chosenCountry;&lt;br /&gt;
      currentYear = [];&lt;br /&gt;
      currallRicoverati = [];&lt;br /&gt;
      currallTi = [];&lt;br /&gt;
      currallTo = [];&lt;br /&gt;
      currallIdom = [];&lt;br /&gt;
      currallAttPos = [];&lt;br /&gt;
      currallNewPos = [];&lt;br /&gt;
      currallDimGuariti = [];&lt;br /&gt;
      currallMorti = [];&lt;br /&gt;
      currallTotCasi = [];&lt;br /&gt;
      currallTamponi = [];&lt;br /&gt;
&lt;br /&gt;
      for (var i = 0; i &amp;lt; allRegionNames.length; i++) {&lt;br /&gt;
        if (allRegionNames[i] === chosenCountry) {&lt;br /&gt;
          currentYear.push(allDay[i]);&lt;br /&gt;
          currallRicoverati.push(allRicoverati[i]);&lt;br /&gt;
          currallTi.push(allTi[i]);&lt;br /&gt;
          currallTo.push(allTo[i]);&lt;br /&gt;
          currallIdom.push(allIdom[i]);&lt;br /&gt;
          currallAttPos.push(allAttPos[i]);&lt;br /&gt;
          currallNewPos.push(allNewPos[i]);&lt;br /&gt;
          currallDimGuariti.push(allDimGuariti[i]);&lt;br /&gt;
          currallMorti.push(allMorti[i]);&lt;br /&gt;
          currallTotCasi.push(allTotCasi[i]);&lt;br /&gt;
          currallTamponi.push(allTamponi[i]);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Default Region Data&lt;br /&gt;
    setBubblePlot(&amp;quot;Abruzzo&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    function setBubblePlot(chosenCountry) {&lt;br /&gt;
      getRegionData(chosenCountry);&lt;br /&gt;
&lt;br /&gt;
            var trace1 = {&lt;br /&gt;
                visible: 'legendonly',&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallRicoverati,&lt;br /&gt;
                name: 'Ricoverati con sintomi',&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace2 = {&lt;br /&gt;
                visible: 'legendonly',&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallTi,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Terapia Intensiva',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace3 = {&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallTo,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Totale ospedalizzati',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace4 = {&lt;br /&gt;
                visible: 'legendonly',&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallIdom,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Isolamento domiciliare',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace5 = {&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallAttPos,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Totale attualmente positivi',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace6 = {&lt;br /&gt;
                visible: 'legendonly',&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallNewPos,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Nuovi attualmente positivi',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace7 = {&lt;br /&gt;
                visible: 'legendonly',&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallDimGuariti,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Dimessi guariti',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace8 = {&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallMorti,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Deceduti',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace9 = {&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallTotCasi,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Totale casi',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
            var trace10 = {&lt;br /&gt;
                visible: 'legendonly',&lt;br /&gt;
                x: currentYear,&lt;br /&gt;
                y: currallTamponi,&lt;br /&gt;
                mode: 'markers',&lt;br /&gt;
                name: 'Tamponi',&lt;br /&gt;
                marker: {&lt;br /&gt;
                    size: 10,&lt;br /&gt;
                    opacity: 0.5&lt;br /&gt;
                }&lt;br /&gt;
            };&lt;br /&gt;
&lt;br /&gt;
      var data = [&lt;br /&gt;
        trace1,&lt;br /&gt;
        trace2,&lt;br /&gt;
        trace3,&lt;br /&gt;
        trace4,&lt;br /&gt;
        trace5,&lt;br /&gt;
        trace6,&lt;br /&gt;
        trace7,&lt;br /&gt;
        trace8,&lt;br /&gt;
        trace9,&lt;br /&gt;
        trace10&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var updatemenus = [&lt;br /&gt;
        {&lt;br /&gt;
          buttons: [&lt;br /&gt;
            {&lt;br /&gt;
              args: [{ &amp;quot;yaxis.type&amp;quot;: &amp;quot;linear&amp;quot;, &amp;quot;yaxis.tickmode&amp;quot;: &amp;quot;auto&amp;quot; }],&lt;br /&gt;
              label: &amp;quot;Linear&amp;quot;,&lt;br /&gt;
              method: &amp;quot;relayout&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
              args: [{ &amp;quot;yaxis.type&amp;quot;: &amp;quot;log&amp;quot;, &amp;quot;yaxis.dtick&amp;quot;: 1 }],&lt;br /&gt;
              label: &amp;quot;SemiLog&amp;quot;,&lt;br /&gt;
              method: &amp;quot;relayout&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
          ],&lt;br /&gt;
          direction: &amp;quot;left&amp;quot;,&lt;br /&gt;
          pad: { r: 10, t: 10 },&lt;br /&gt;
          showactive: true,&lt;br /&gt;
          type: &amp;quot;buttons&amp;quot;,&lt;br /&gt;
          x: 0.1,&lt;br /&gt;
          xanchor: &amp;quot;left&amp;quot;,&lt;br /&gt;
          y: 1.1,&lt;br /&gt;
          yanchor: &amp;quot;top&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var annotations = [&lt;br /&gt;
        {&lt;br /&gt;
          text: &amp;quot;Plot type:&amp;quot;,&lt;br /&gt;
          x: 0,&lt;br /&gt;
          y: 1.085,&lt;br /&gt;
          yref: &amp;quot;paper&amp;quot;,&lt;br /&gt;
          align: &amp;quot;left&amp;quot;,&lt;br /&gt;
          showarrow: false&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var layout = {&lt;br /&gt;
        title: &amp;quot;Andamento regionale &amp;quot; + currTitle,&lt;br /&gt;
        //height: 400,&lt;br /&gt;
        //width: 800,&lt;br /&gt;
        margin: { l: 0, r: 0 },&lt;br /&gt;
        updatemenus: updatemenus,&lt;br /&gt;
        //annotations: annotations,&lt;br /&gt;
        showlegend: true,&lt;br /&gt;
        legend: { orientation: &amp;quot;h&amp;quot; },&lt;br /&gt;
        yaxis: {&lt;br /&gt;
          autorange: true&lt;br /&gt;
&lt;br /&gt;
          //type: 'log',&lt;br /&gt;
          //fixedrange: true,&lt;br /&gt;
          //range: [0,3.70]&lt;br /&gt;
          //range: [0,5000]&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
      var options = {&lt;br /&gt;
        scrollZoom: true,&lt;br /&gt;
        displayModeBar: false,&lt;br /&gt;
        responsive: true&lt;br /&gt;
      };&lt;br /&gt;
      Plotly.newPlot(&amp;quot;myDiv&amp;quot;, data, layout, options);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var innerContainer = document.querySelector('[data-num=&amp;quot;0&amp;quot;'),&lt;br /&gt;
      plotEl = innerContainer.querySelector(&amp;quot;.plot&amp;quot;),&lt;br /&gt;
      countrySelector = innerContainer.querySelector(&amp;quot;.countrydata&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    function assignOptions(textArray, selector) {&lt;br /&gt;
      for (var i = 0; i &amp;lt; textArray.length; i++) {&lt;br /&gt;
        var currentOption = document.createElement(&amp;quot;option&amp;quot;);&lt;br /&gt;
        currentOption.text = textArray[i];&lt;br /&gt;
        selector.appendChild(currentOption);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    assignOptions(listofRegions, countrySelector);&lt;br /&gt;
&lt;br /&gt;
    function updateCountry() {&lt;br /&gt;
      setBubblePlot(countrySelector.value);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    countrySelector.addEventListener(&amp;quot;change&amp;quot;, updateCountry, false);&lt;br /&gt;
  }&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
== Disclaimer ==&lt;br /&gt;
Dati forniti dal Ministero della Salute, elaborazione e gestione dati a cura del Dipartimento della Protezione Civile: https://github.com/pcm-dpc/COVID-19&lt;br /&gt;
&lt;br /&gt;
Rielaborazione a cura del Control of dynamic system Lab, Politecnico di Bari&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=Covid19&amp;diff=7082</id>
		<title>Covid19</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=Covid19&amp;diff=7082"/>
				<updated>2020-03-14T15:31:03Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* COVID19 - Monitoraggio ed Analisi della situazione italiana */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= COVID19 - Monitoraggio ed Analisi della situazione italiana=&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;showcase__section&amp;quot; id=&amp;quot;bubble&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;div class=&amp;quot;spacer --small&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
      &amp;lt;div id=&amp;quot;bubbleplots&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;div class=&amp;quot;bubbleplot&amp;quot; data-num=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;plot&amp;quot; id=&amp;quot;plotdiv&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;control-row&amp;quot;&amp;gt;&lt;br /&gt;
            Regione: &amp;lt;select class=&amp;quot;countrydata&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;/select&amp;gt;&lt;br /&gt;
          &amp;lt;/div&amp;gt;&lt;br /&gt;
        &amp;lt;/div&amp;gt;&lt;br /&gt;
      &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;div id=&amp;quot;myDiv&amp;quot; style=&amp;quot;width:100%;height:500px;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;script&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Plotly.d3.csv(&lt;br /&gt;
  &amp;quot;https://raw.githubusercontent.com/pcm-dpc/COVID-19/master/dati-regioni/dpc-covid19-ita-regioni.csv&amp;quot;,&lt;br /&gt;
  function(err, rows) {&lt;br /&gt;
    function unpack(rows, key) {&lt;br /&gt;
      return rows.map(function(row) {&lt;br /&gt;
        return row[key];&lt;br /&gt;
      });&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var allRegionNames = unpack(rows, &amp;quot;denominazione_regione&amp;quot;),&lt;br /&gt;
      allDay = unpack(rows, &amp;quot;data&amp;quot;),&lt;br /&gt;
      allRicoverati = unpack(rows, &amp;quot;ricoverati_con_sintomi&amp;quot;),&lt;br /&gt;
      allTi = unpack(rows, &amp;quot;terapia_intensiva&amp;quot;),&lt;br /&gt;
      allTo = unpack(rows, &amp;quot;totale_ospedalizzati&amp;quot;),&lt;br /&gt;
      allIdom = unpack(rows, &amp;quot;isolamento_domiciliare&amp;quot;),&lt;br /&gt;
      allAttPos = unpack(rows, &amp;quot;totale_attualmente_positivi&amp;quot;),&lt;br /&gt;
      allNewPos = unpack(rows, &amp;quot;nuovi_attualmente_positivi&amp;quot;),&lt;br /&gt;
      allDimGuariti = unpack(rows, &amp;quot;dimessi_guariti&amp;quot;),&lt;br /&gt;
      allMorti = unpack(rows, &amp;quot;deceduti&amp;quot;),&lt;br /&gt;
      allTotCasi = unpack(rows, &amp;quot;totale_casi&amp;quot;),&lt;br /&gt;
      allTamponi = unpack(rows, &amp;quot;tamponi&amp;quot;),&lt;br /&gt;
      listofRegions = [],&lt;br /&gt;
      currentCountry,&lt;br /&gt;
      currentGdp = [],&lt;br /&gt;
      currentYear = [];&lt;br /&gt;
    currTitle = &amp;quot;Abruzzo&amp;quot;;&lt;br /&gt;
    currallRicoverati = [];&lt;br /&gt;
    currallTi = [];&lt;br /&gt;
    currallTo = [];&lt;br /&gt;
    currallIdom = [];&lt;br /&gt;
    currallAttPos = [];&lt;br /&gt;
    currallNewPos = [];&lt;br /&gt;
    currallDimGuariti = [];&lt;br /&gt;
    currallMorti = [];&lt;br /&gt;
    currallTotCasi = [];&lt;br /&gt;
    currallTamponi = [];&lt;br /&gt;
&lt;br /&gt;
    for (var i = 0; i &amp;lt; allRegionNames.length; i++) {&lt;br /&gt;
      if (listofRegions.indexOf(allRegionNames[i]) === -1) {&lt;br /&gt;
        listofRegions.push(allRegionNames[i]);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    function getRegionData(chosenCountry) {&lt;br /&gt;
      currTitle = chosenCountry;&lt;br /&gt;
      currentYear = [];&lt;br /&gt;
      currallRicoverati = [];&lt;br /&gt;
      currallTi = [];&lt;br /&gt;
      currallTo = [];&lt;br /&gt;
      currallIdom = [];&lt;br /&gt;
      currallAttPos = [];&lt;br /&gt;
      currallNewPos = [];&lt;br /&gt;
      currallDimGuariti = [];&lt;br /&gt;
      currallMorti = [];&lt;br /&gt;
      currallTotCasi = [];&lt;br /&gt;
      currallTamponi = [];&lt;br /&gt;
&lt;br /&gt;
      for (var i = 0; i &amp;lt; allRegionNames.length; i++) {&lt;br /&gt;
        if (allRegionNames[i] === chosenCountry) {&lt;br /&gt;
          currentYear.push(allDay[i]);&lt;br /&gt;
          currallRicoverati.push(allRicoverati[i]);&lt;br /&gt;
          currallTi.push(allTi[i]);&lt;br /&gt;
          currallTo.push(allTo[i]);&lt;br /&gt;
          currallIdom.push(allIdom[i]);&lt;br /&gt;
          currallAttPos.push(allAttPos[i]);&lt;br /&gt;
          currallNewPos.push(allNewPos[i]);&lt;br /&gt;
          currallDimGuariti.push(allDimGuariti[i]);&lt;br /&gt;
          currallMorti.push(allMorti[i]);&lt;br /&gt;
          currallTotCasi.push(allTotCasi[i]);&lt;br /&gt;
          currallTamponi.push(allTamponi[i]);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Default Region Data&lt;br /&gt;
    setBubblePlot(&amp;quot;Abruzzo&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    function setBubblePlot(chosenCountry) {&lt;br /&gt;
      getRegionData(chosenCountry);&lt;br /&gt;
&lt;br /&gt;
      var trace1 = {&lt;br /&gt;
        //visible: 'legendonly',&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallRicoverati,&lt;br /&gt;
        name: &amp;quot;Ricoverati con sintomi&amp;quot;,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace2 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTi,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Terapia Intensiva&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace3 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTo,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale ospedalizzati&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace4 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallIdom,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Isolamento domiciliare&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace5 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallAttPos,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale attualmente positivi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace6 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallNewPos,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Nuovi attualmente positivi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace7 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallDimGuariti,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Dimessi guariti&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace8 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallMorti,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Deceduti&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace9 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTotCasi,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale casi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace10 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTamponi,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Tamponi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var data = [&lt;br /&gt;
        trace1,&lt;br /&gt;
        trace2,&lt;br /&gt;
        trace3,&lt;br /&gt;
        trace4,&lt;br /&gt;
        trace5,&lt;br /&gt;
        trace6,&lt;br /&gt;
        trace7,&lt;br /&gt;
        trace8,&lt;br /&gt;
        trace9,&lt;br /&gt;
        trace10&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var updatemenus = [&lt;br /&gt;
        {&lt;br /&gt;
          buttons: [&lt;br /&gt;
            {&lt;br /&gt;
              args: [{ &amp;quot;yaxis.type&amp;quot;: &amp;quot;linear&amp;quot;, &amp;quot;yaxis.tickmode&amp;quot;: &amp;quot;auto&amp;quot; }],&lt;br /&gt;
              label: &amp;quot;Linear&amp;quot;,&lt;br /&gt;
              method: &amp;quot;relayout&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
              args: [{ &amp;quot;yaxis.type&amp;quot;: &amp;quot;log&amp;quot;, &amp;quot;yaxis.dtick&amp;quot;: 1 }],&lt;br /&gt;
              label: &amp;quot;SemiLog&amp;quot;,&lt;br /&gt;
              method: &amp;quot;relayout&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
          ],&lt;br /&gt;
          direction: &amp;quot;left&amp;quot;,&lt;br /&gt;
          pad: { r: 10, t: 10 },&lt;br /&gt;
          showactive: true,&lt;br /&gt;
          type: &amp;quot;buttons&amp;quot;,&lt;br /&gt;
          x: 0.1,&lt;br /&gt;
          xanchor: &amp;quot;left&amp;quot;,&lt;br /&gt;
          y: 1.1,&lt;br /&gt;
          yanchor: &amp;quot;top&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var annotations = [&lt;br /&gt;
        {&lt;br /&gt;
          text: &amp;quot;Plot type:&amp;quot;,&lt;br /&gt;
          x: 0,&lt;br /&gt;
          y: 1.085,&lt;br /&gt;
          yref: &amp;quot;paper&amp;quot;,&lt;br /&gt;
          align: &amp;quot;left&amp;quot;,&lt;br /&gt;
          showarrow: false&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var layout = {&lt;br /&gt;
        title: &amp;quot;Andamento regionale &amp;quot; + currTitle,&lt;br /&gt;
        //height: 400,&lt;br /&gt;
        //width: 800,&lt;br /&gt;
        updatemenus: updatemenus,&lt;br /&gt;
        //annotations: annotations,&lt;br /&gt;
        showlegend: true,&lt;br /&gt;
        legend: { orientation: &amp;quot;h&amp;quot; },&lt;br /&gt;
        yaxis: {&lt;br /&gt;
          autorange: true&lt;br /&gt;
&lt;br /&gt;
          //type: 'log',&lt;br /&gt;
          //fixedrange: true,&lt;br /&gt;
          //range: [0,3.70]&lt;br /&gt;
          //range: [0,5000]&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
      var options = {&lt;br /&gt;
        scrollZoom: true,&lt;br /&gt;
        displayModeBar: false,&lt;br /&gt;
        responsive: true&lt;br /&gt;
      };&lt;br /&gt;
      Plotly.newPlot(&amp;quot;myDiv&amp;quot;, data, layout, options);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var innerContainer = document.querySelector('[data-num=&amp;quot;0&amp;quot;'),&lt;br /&gt;
      plotEl = innerContainer.querySelector(&amp;quot;.plot&amp;quot;),&lt;br /&gt;
      countrySelector = innerContainer.querySelector(&amp;quot;.countrydata&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    function assignOptions(textArray, selector) {&lt;br /&gt;
      for (var i = 0; i &amp;lt; textArray.length; i++) {&lt;br /&gt;
        var currentOption = document.createElement(&amp;quot;option&amp;quot;);&lt;br /&gt;
        currentOption.text = textArray[i];&lt;br /&gt;
        selector.appendChild(currentOption);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    assignOptions(listofRegions, countrySelector);&lt;br /&gt;
&lt;br /&gt;
    function updateCountry() {&lt;br /&gt;
      setBubblePlot(countrySelector.value);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    countrySelector.addEventListener(&amp;quot;change&amp;quot;, updateCountry, false);&lt;br /&gt;
  }&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=Covid19&amp;diff=7081</id>
		<title>Covid19</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=Covid19&amp;diff=7081"/>
				<updated>2020-03-14T15:30:17Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= COVID19 - Monitoraggio ed Analisi della situazione italiana=&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
  &amp;lt;div id=&amp;quot;myDiv&amp;quot; style=&amp;quot;width:100%;height:600px;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;showcase__section&amp;quot; id=&amp;quot;bubble&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;div class=&amp;quot;spacer --small&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
      &amp;lt;div id=&amp;quot;bubbleplots&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;div class=&amp;quot;bubbleplot&amp;quot; data-num=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;plot&amp;quot; id=&amp;quot;plotdiv&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;control-row&amp;quot;&amp;gt;&lt;br /&gt;
            Regione: &amp;lt;select class=&amp;quot;countrydata&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;/select&amp;gt;&lt;br /&gt;
          &amp;lt;/div&amp;gt;&lt;br /&gt;
        &amp;lt;/div&amp;gt;&lt;br /&gt;
      &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;script&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Plotly.d3.csv(&lt;br /&gt;
  &amp;quot;https://raw.githubusercontent.com/pcm-dpc/COVID-19/master/dati-regioni/dpc-covid19-ita-regioni.csv&amp;quot;,&lt;br /&gt;
  function(err, rows) {&lt;br /&gt;
    function unpack(rows, key) {&lt;br /&gt;
      return rows.map(function(row) {&lt;br /&gt;
        return row[key];&lt;br /&gt;
      });&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var allRegionNames = unpack(rows, &amp;quot;denominazione_regione&amp;quot;),&lt;br /&gt;
      allDay = unpack(rows, &amp;quot;data&amp;quot;),&lt;br /&gt;
      allRicoverati = unpack(rows, &amp;quot;ricoverati_con_sintomi&amp;quot;),&lt;br /&gt;
      allTi = unpack(rows, &amp;quot;terapia_intensiva&amp;quot;),&lt;br /&gt;
      allTo = unpack(rows, &amp;quot;totale_ospedalizzati&amp;quot;),&lt;br /&gt;
      allIdom = unpack(rows, &amp;quot;isolamento_domiciliare&amp;quot;),&lt;br /&gt;
      allAttPos = unpack(rows, &amp;quot;totale_attualmente_positivi&amp;quot;),&lt;br /&gt;
      allNewPos = unpack(rows, &amp;quot;nuovi_attualmente_positivi&amp;quot;),&lt;br /&gt;
      allDimGuariti = unpack(rows, &amp;quot;dimessi_guariti&amp;quot;),&lt;br /&gt;
      allMorti = unpack(rows, &amp;quot;deceduti&amp;quot;),&lt;br /&gt;
      allTotCasi = unpack(rows, &amp;quot;totale_casi&amp;quot;),&lt;br /&gt;
      allTamponi = unpack(rows, &amp;quot;tamponi&amp;quot;),&lt;br /&gt;
      listofRegions = [],&lt;br /&gt;
      currentCountry,&lt;br /&gt;
      currentGdp = [],&lt;br /&gt;
      currentYear = [];&lt;br /&gt;
    currTitle = &amp;quot;Abruzzo&amp;quot;;&lt;br /&gt;
    currallRicoverati = [];&lt;br /&gt;
    currallTi = [];&lt;br /&gt;
    currallTo = [];&lt;br /&gt;
    currallIdom = [];&lt;br /&gt;
    currallAttPos = [];&lt;br /&gt;
    currallNewPos = [];&lt;br /&gt;
    currallDimGuariti = [];&lt;br /&gt;
    currallMorti = [];&lt;br /&gt;
    currallTotCasi = [];&lt;br /&gt;
    currallTamponi = [];&lt;br /&gt;
&lt;br /&gt;
    for (var i = 0; i &amp;lt; allRegionNames.length; i++) {&lt;br /&gt;
      if (listofRegions.indexOf(allRegionNames[i]) === -1) {&lt;br /&gt;
        listofRegions.push(allRegionNames[i]);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    function getRegionData(chosenCountry) {&lt;br /&gt;
      currTitle = chosenCountry;&lt;br /&gt;
      currentYear = [];&lt;br /&gt;
      currallRicoverati = [];&lt;br /&gt;
      currallTi = [];&lt;br /&gt;
      currallTo = [];&lt;br /&gt;
      currallIdom = [];&lt;br /&gt;
      currallAttPos = [];&lt;br /&gt;
      currallNewPos = [];&lt;br /&gt;
      currallDimGuariti = [];&lt;br /&gt;
      currallMorti = [];&lt;br /&gt;
      currallTotCasi = [];&lt;br /&gt;
      currallTamponi = [];&lt;br /&gt;
&lt;br /&gt;
      for (var i = 0; i &amp;lt; allRegionNames.length; i++) {&lt;br /&gt;
        if (allRegionNames[i] === chosenCountry) {&lt;br /&gt;
          currentYear.push(allDay[i]);&lt;br /&gt;
          currallRicoverati.push(allRicoverati[i]);&lt;br /&gt;
          currallTi.push(allTi[i]);&lt;br /&gt;
          currallTo.push(allTo[i]);&lt;br /&gt;
          currallIdom.push(allIdom[i]);&lt;br /&gt;
          currallAttPos.push(allAttPos[i]);&lt;br /&gt;
          currallNewPos.push(allNewPos[i]);&lt;br /&gt;
          currallDimGuariti.push(allDimGuariti[i]);&lt;br /&gt;
          currallMorti.push(allMorti[i]);&lt;br /&gt;
          currallTotCasi.push(allTotCasi[i]);&lt;br /&gt;
          currallTamponi.push(allTamponi[i]);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Default Region Data&lt;br /&gt;
    setBubblePlot(&amp;quot;Abruzzo&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    function setBubblePlot(chosenCountry) {&lt;br /&gt;
      getRegionData(chosenCountry);&lt;br /&gt;
&lt;br /&gt;
      var trace1 = {&lt;br /&gt;
        //visible: 'legendonly',&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallRicoverati,&lt;br /&gt;
        name: &amp;quot;Ricoverati con sintomi&amp;quot;,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace2 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTi,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Terapia Intensiva&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace3 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTo,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale ospedalizzati&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace4 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallIdom,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Isolamento domiciliare&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace5 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallAttPos,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale attualmente positivi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace6 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallNewPos,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Nuovi attualmente positivi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace7 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallDimGuariti,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Dimessi guariti&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace8 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallMorti,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Deceduti&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace9 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTotCasi,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale casi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace10 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTamponi,&lt;br /&gt;
        mode: &amp;quot;line,markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Tamponi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 6,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var data = [&lt;br /&gt;
        trace1,&lt;br /&gt;
        trace2,&lt;br /&gt;
        trace3,&lt;br /&gt;
        trace4,&lt;br /&gt;
        trace5,&lt;br /&gt;
        trace6,&lt;br /&gt;
        trace7,&lt;br /&gt;
        trace8,&lt;br /&gt;
        trace9,&lt;br /&gt;
        trace10&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var updatemenus = [&lt;br /&gt;
        {&lt;br /&gt;
          buttons: [&lt;br /&gt;
            {&lt;br /&gt;
              args: [{ &amp;quot;yaxis.type&amp;quot;: &amp;quot;linear&amp;quot;, &amp;quot;yaxis.tickmode&amp;quot;: &amp;quot;auto&amp;quot; }],&lt;br /&gt;
              label: &amp;quot;Linear&amp;quot;,&lt;br /&gt;
              method: &amp;quot;relayout&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
              args: [{ &amp;quot;yaxis.type&amp;quot;: &amp;quot;log&amp;quot;, &amp;quot;yaxis.dtick&amp;quot;: 1 }],&lt;br /&gt;
              label: &amp;quot;SemiLog&amp;quot;,&lt;br /&gt;
              method: &amp;quot;relayout&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
          ],&lt;br /&gt;
          direction: &amp;quot;left&amp;quot;,&lt;br /&gt;
          pad: { r: 10, t: 10 },&lt;br /&gt;
          showactive: true,&lt;br /&gt;
          type: &amp;quot;buttons&amp;quot;,&lt;br /&gt;
          x: 0.1,&lt;br /&gt;
          xanchor: &amp;quot;left&amp;quot;,&lt;br /&gt;
          y: 1.1,&lt;br /&gt;
          yanchor: &amp;quot;top&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var annotations = [&lt;br /&gt;
        {&lt;br /&gt;
          text: &amp;quot;Plot type:&amp;quot;,&lt;br /&gt;
          x: 0,&lt;br /&gt;
          y: 1.085,&lt;br /&gt;
          yref: &amp;quot;paper&amp;quot;,&lt;br /&gt;
          align: &amp;quot;left&amp;quot;,&lt;br /&gt;
          showarrow: false&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var layout = {&lt;br /&gt;
        title: &amp;quot;Andamento regionale &amp;quot; + currTitle,&lt;br /&gt;
        //height: 400,&lt;br /&gt;
        //width: 800,&lt;br /&gt;
        updatemenus: updatemenus,&lt;br /&gt;
        //annotations: annotations,&lt;br /&gt;
        showlegend: true,&lt;br /&gt;
        legend: { orientation: &amp;quot;h&amp;quot; },&lt;br /&gt;
        yaxis: {&lt;br /&gt;
          autorange: true&lt;br /&gt;
&lt;br /&gt;
          //type: 'log',&lt;br /&gt;
          //fixedrange: true,&lt;br /&gt;
          //range: [0,3.70]&lt;br /&gt;
          //range: [0,5000]&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
      var options = {&lt;br /&gt;
        scrollZoom: true,&lt;br /&gt;
        displayModeBar: false,&lt;br /&gt;
        responsive: true&lt;br /&gt;
      };&lt;br /&gt;
      Plotly.newPlot(&amp;quot;myDiv&amp;quot;, data, layout, options);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var innerContainer = document.querySelector('[data-num=&amp;quot;0&amp;quot;'),&lt;br /&gt;
      plotEl = innerContainer.querySelector(&amp;quot;.plot&amp;quot;),&lt;br /&gt;
      countrySelector = innerContainer.querySelector(&amp;quot;.countrydata&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    function assignOptions(textArray, selector) {&lt;br /&gt;
      for (var i = 0; i &amp;lt; textArray.length; i++) {&lt;br /&gt;
        var currentOption = document.createElement(&amp;quot;option&amp;quot;);&lt;br /&gt;
        currentOption.text = textArray[i];&lt;br /&gt;
        selector.appendChild(currentOption);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    assignOptions(listofRegions, countrySelector);&lt;br /&gt;
&lt;br /&gt;
    function updateCountry() {&lt;br /&gt;
      setBubblePlot(countrySelector.value);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    countrySelector.addEventListener(&amp;quot;change&amp;quot;, updateCountry, false);&lt;br /&gt;
  }&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=Covid19&amp;diff=7079</id>
		<title>Covid19</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=Covid19&amp;diff=7079"/>
				<updated>2020-03-14T15:17:30Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* COVID19 - Monitoraggio ed Analisi della situazione italiana */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= COVID19 - Monitoraggio ed Analisi della situazione italiana=&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
  &amp;lt;div id=&amp;quot;myDiv&amp;quot; style=&amp;quot;width:100%;height:600px;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;showcase__section&amp;quot; id=&amp;quot;bubble&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;div class=&amp;quot;spacer --small&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
      &amp;lt;div id=&amp;quot;bubbleplots&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;div class=&amp;quot;bubbleplot&amp;quot; data-num=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;plot&amp;quot; id=&amp;quot;plotdiv&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;control-row&amp;quot;&amp;gt;&lt;br /&gt;
            Regione: &amp;lt;select class=&amp;quot;countrydata&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;/select&amp;gt;&lt;br /&gt;
          &amp;lt;/div&amp;gt;&lt;br /&gt;
        &amp;lt;/div&amp;gt;&lt;br /&gt;
      &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;script&amp;gt;&lt;br /&gt;
Plotly.d3.csv(&lt;br /&gt;
  &amp;quot;https://raw.githubusercontent.com/pcm-dpc/COVID-19/master/dati-regioni/dpc-covid19-ita-regioni.csv&amp;quot;,&lt;br /&gt;
  function(err, rows) {&lt;br /&gt;
    function unpack(rows, key) {&lt;br /&gt;
      return rows.map(function(row) {&lt;br /&gt;
        return row[key];&lt;br /&gt;
      });&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var allRegionNames = unpack(rows, &amp;quot;denominazione_regione&amp;quot;),&lt;br /&gt;
      allDay = unpack(rows, &amp;quot;data&amp;quot;),&lt;br /&gt;
      allRicoverati = unpack(rows, &amp;quot;ricoverati_con_sintomi&amp;quot;),&lt;br /&gt;
      allTi = unpack(rows, &amp;quot;terapia_intensiva&amp;quot;),&lt;br /&gt;
      allTo = unpack(rows, &amp;quot;totale_ospedalizzati&amp;quot;),&lt;br /&gt;
      allIdom = unpack(rows, &amp;quot;isolamento_domiciliare&amp;quot;),&lt;br /&gt;
      allAttPos = unpack(rows, &amp;quot;totale_attualmente_positivi&amp;quot;),&lt;br /&gt;
      allNewPos = unpack(rows, &amp;quot;nuovi_attualmente_positivi&amp;quot;),&lt;br /&gt;
      allDimGuariti = unpack(rows, &amp;quot;dimessi_guariti&amp;quot;),&lt;br /&gt;
      allMorti = unpack(rows, &amp;quot;deceduti&amp;quot;),&lt;br /&gt;
      allTotCasi = unpack(rows, &amp;quot;totale_casi&amp;quot;),&lt;br /&gt;
      allTamponi = unpack(rows, &amp;quot;tamponi&amp;quot;),&lt;br /&gt;
      listofRegions = [],&lt;br /&gt;
      currentCountry,&lt;br /&gt;
      currentGdp = [],&lt;br /&gt;
      currentYear = [];&lt;br /&gt;
    currTitle = &amp;quot;Abruzzo&amp;quot;;&lt;br /&gt;
    currallRicoverati = [];&lt;br /&gt;
    currallTi = [];&lt;br /&gt;
    currallTo = [];&lt;br /&gt;
    currallIdom = [];&lt;br /&gt;
    currallAttPos = [];&lt;br /&gt;
    currallNewPos = [];&lt;br /&gt;
    currallDimGuariti = [];&lt;br /&gt;
    currallMorti = [];&lt;br /&gt;
    currallTotCasi = [];&lt;br /&gt;
    currallTamponi = [];&lt;br /&gt;
&lt;br /&gt;
    for (var i = 0; i &amp;lt; allRegionNames.length; i++) {&lt;br /&gt;
      if (listofRegions.indexOf(allRegionNames[i]) === -1) {&lt;br /&gt;
        listofRegions.push(allRegionNames[i]);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    function getRegionData(chosenCountry) {&lt;br /&gt;
      currTitle = chosenCountry;&lt;br /&gt;
      currentYear = [];&lt;br /&gt;
      currallRicoverati = [];&lt;br /&gt;
      currallTi = [];&lt;br /&gt;
      currallTo = [];&lt;br /&gt;
      currallIdom = [];&lt;br /&gt;
      currallAttPos = [];&lt;br /&gt;
      currallNewPos = [];&lt;br /&gt;
      currallDimGuariti = [];&lt;br /&gt;
      currallMorti = [];&lt;br /&gt;
      currallTotCasi = [];&lt;br /&gt;
      currallTamponi = [];&lt;br /&gt;
&lt;br /&gt;
      for (var i = 0; i &amp;lt; allRegionNames.length; i++) {&lt;br /&gt;
        if (allRegionNames[i] === chosenCountry) {&lt;br /&gt;
          currentYear.push(allDay[i]);&lt;br /&gt;
          currallRicoverati.push(allRicoverati[i]);&lt;br /&gt;
          currallTi.push(allTi[i]);&lt;br /&gt;
          currallTo.push(allTo[i]);&lt;br /&gt;
          currallIdom.push(allIdom[i]);&lt;br /&gt;
          currallAttPos.push(allAttPos[i]);&lt;br /&gt;
          currallNewPos.push(allNewPos[i]);&lt;br /&gt;
          currallDimGuariti.push(allDimGuariti[i]);&lt;br /&gt;
          currallMorti.push(allMorti[i]);&lt;br /&gt;
          currallTotCasi.push(allTotCasi[i]);&lt;br /&gt;
          currallTamponi.push(allTamponi[i]);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Default Region Data&lt;br /&gt;
    setBubblePlot(&amp;quot;Abruzzo&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    function setBubblePlot(chosenCountry) {&lt;br /&gt;
      getRegionData(chosenCountry);&lt;br /&gt;
&lt;br /&gt;
      var trace1 = {&lt;br /&gt;
        //visible: 'legendonly',&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallRicoverati,&lt;br /&gt;
        name: &amp;quot;Ricoverati con sintomi&amp;quot;,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace2 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTi,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Terapia Intensiva&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace3 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTo,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale ospedalizzati&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace4 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallIdom,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Isolamento domiciliare&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace5 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallAttPos,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale attualmente positivi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace6 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallNewPos,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Nuovi attualmente positivi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace7 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallDimGuariti,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Dimessi guariti&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace8 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallMorti,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Deceduti&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace9 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTotCasi,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale casi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace10 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTamponi,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Tamponi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var data = [&lt;br /&gt;
        trace1,&lt;br /&gt;
        trace2,&lt;br /&gt;
        trace3,&lt;br /&gt;
        trace4,&lt;br /&gt;
        trace5,&lt;br /&gt;
        trace6,&lt;br /&gt;
        trace7,&lt;br /&gt;
        trace8,&lt;br /&gt;
        trace9,&lt;br /&gt;
        trace10&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var updatemenus = [&lt;br /&gt;
        {&lt;br /&gt;
          buttons: [&lt;br /&gt;
            {&lt;br /&gt;
              args: [{ &amp;quot;yaxis.type&amp;quot;: &amp;quot;linear&amp;quot;, &amp;quot;yaxis.tickmode&amp;quot;: &amp;quot;auto&amp;quot; }],&lt;br /&gt;
              label: &amp;quot;Linear&amp;quot;,&lt;br /&gt;
              method: &amp;quot;relayout&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
              args: [{ &amp;quot;yaxis.type&amp;quot;: &amp;quot;log&amp;quot;, &amp;quot;yaxis.dtick&amp;quot;: 1 }],&lt;br /&gt;
              label: &amp;quot;SemiLog&amp;quot;,&lt;br /&gt;
              method: &amp;quot;relayout&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
          ],&lt;br /&gt;
          direction: &amp;quot;left&amp;quot;,&lt;br /&gt;
          pad: { r: 10, t: 10 },&lt;br /&gt;
          showactive: true,&lt;br /&gt;
          type: &amp;quot;buttons&amp;quot;,&lt;br /&gt;
          x: 0.1,&lt;br /&gt;
          xanchor: &amp;quot;left&amp;quot;,&lt;br /&gt;
          y: 1.1,&lt;br /&gt;
          yanchor: &amp;quot;top&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var annotations = [&lt;br /&gt;
        {&lt;br /&gt;
          text: &amp;quot;Plot type:&amp;quot;,&lt;br /&gt;
          x: 0,&lt;br /&gt;
          y: 1.085,&lt;br /&gt;
          yref: &amp;quot;paper&amp;quot;,&lt;br /&gt;
          align: &amp;quot;left&amp;quot;,&lt;br /&gt;
          showarrow: false&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var layout = {&lt;br /&gt;
        title: &amp;quot;Andamento regionale &amp;quot; + currTitle,&lt;br /&gt;
        height: 400,&lt;br /&gt;
        //width: 800,&lt;br /&gt;
        updatemenus: updatemenus,&lt;br /&gt;
        //annotations: annotations,&lt;br /&gt;
        showlegend: true,&lt;br /&gt;
        //legend: {&amp;quot;orientation&amp;quot;: &amp;quot;h&amp;quot;},&lt;br /&gt;
        yaxis: {&lt;br /&gt;
          autorange: true&lt;br /&gt;
&lt;br /&gt;
          //type: 'log',&lt;br /&gt;
          //fixedrange: true,&lt;br /&gt;
          //range: [0,3.70]&lt;br /&gt;
          //range: [0,5000]&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
      var options = {&lt;br /&gt;
        scrollZoom: true,&lt;br /&gt;
        displayModeBar: false,&lt;br /&gt;
        responsive: true,&lt;br /&gt;
      };&lt;br /&gt;
      Plotly.newPlot(&amp;quot;myDiv&amp;quot;, data, layout, options);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var innerContainer = document.querySelector('[data-num=&amp;quot;0&amp;quot;'),&lt;br /&gt;
      plotEl = innerContainer.querySelector(&amp;quot;.plot&amp;quot;),&lt;br /&gt;
      countrySelector = innerContainer.querySelector(&amp;quot;.countrydata&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    function assignOptions(textArray, selector) {&lt;br /&gt;
      for (var i = 0; i &amp;lt; textArray.length; i++) {&lt;br /&gt;
        var currentOption = document.createElement(&amp;quot;option&amp;quot;);&lt;br /&gt;
        currentOption.text = textArray[i];&lt;br /&gt;
        selector.appendChild(currentOption);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    assignOptions(listofRegions, countrySelector);&lt;br /&gt;
&lt;br /&gt;
    function updateCountry() {&lt;br /&gt;
      setBubblePlot(countrySelector.value);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    countrySelector.addEventListener(&amp;quot;change&amp;quot;, updateCountry, false);&lt;br /&gt;
  }&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=Covid19&amp;diff=7078</id>
		<title>Covid19</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=Covid19&amp;diff=7078"/>
				<updated>2020-03-14T15:14:29Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= COVID19 - Monitoraggio ed Analisi della situazione italiana=&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
  &amp;lt;div id=&amp;quot;myDiv&amp;quot; style=&amp;quot;width:100%;height:250px;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;showcase__section&amp;quot; id=&amp;quot;bubble&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;div class=&amp;quot;spacer --small&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
      &amp;lt;div id=&amp;quot;bubbleplots&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;div class=&amp;quot;bubbleplot&amp;quot; data-num=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;plot&amp;quot; id=&amp;quot;plotdiv&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;control-row&amp;quot;&amp;gt;&lt;br /&gt;
            Regione: &amp;lt;select class=&amp;quot;countrydata&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;/select&amp;gt;&lt;br /&gt;
          &amp;lt;/div&amp;gt;&lt;br /&gt;
        &amp;lt;/div&amp;gt;&lt;br /&gt;
      &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;script&amp;gt;&lt;br /&gt;
Plotly.d3.csv(&lt;br /&gt;
  &amp;quot;https://raw.githubusercontent.com/pcm-dpc/COVID-19/master/dati-regioni/dpc-covid19-ita-regioni.csv&amp;quot;,&lt;br /&gt;
  function(err, rows) {&lt;br /&gt;
    function unpack(rows, key) {&lt;br /&gt;
      return rows.map(function(row) {&lt;br /&gt;
        return row[key];&lt;br /&gt;
      });&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var allRegionNames = unpack(rows, &amp;quot;denominazione_regione&amp;quot;),&lt;br /&gt;
      allDay = unpack(rows, &amp;quot;data&amp;quot;),&lt;br /&gt;
      allRicoverati = unpack(rows, &amp;quot;ricoverati_con_sintomi&amp;quot;),&lt;br /&gt;
      allTi = unpack(rows, &amp;quot;terapia_intensiva&amp;quot;),&lt;br /&gt;
      allTo = unpack(rows, &amp;quot;totale_ospedalizzati&amp;quot;),&lt;br /&gt;
      allIdom = unpack(rows, &amp;quot;isolamento_domiciliare&amp;quot;),&lt;br /&gt;
      allAttPos = unpack(rows, &amp;quot;totale_attualmente_positivi&amp;quot;),&lt;br /&gt;
      allNewPos = unpack(rows, &amp;quot;nuovi_attualmente_positivi&amp;quot;),&lt;br /&gt;
      allDimGuariti = unpack(rows, &amp;quot;dimessi_guariti&amp;quot;),&lt;br /&gt;
      allMorti = unpack(rows, &amp;quot;deceduti&amp;quot;),&lt;br /&gt;
      allTotCasi = unpack(rows, &amp;quot;totale_casi&amp;quot;),&lt;br /&gt;
      allTamponi = unpack(rows, &amp;quot;tamponi&amp;quot;),&lt;br /&gt;
      listofRegions = [],&lt;br /&gt;
      currentCountry,&lt;br /&gt;
      currentGdp = [],&lt;br /&gt;
      currentYear = [];&lt;br /&gt;
    currTitle = &amp;quot;Abruzzo&amp;quot;;&lt;br /&gt;
    currallRicoverati = [];&lt;br /&gt;
    currallTi = [];&lt;br /&gt;
    currallTo = [];&lt;br /&gt;
    currallIdom = [];&lt;br /&gt;
    currallAttPos = [];&lt;br /&gt;
    currallNewPos = [];&lt;br /&gt;
    currallDimGuariti = [];&lt;br /&gt;
    currallMorti = [];&lt;br /&gt;
    currallTotCasi = [];&lt;br /&gt;
    currallTamponi = [];&lt;br /&gt;
&lt;br /&gt;
    for (var i = 0; i &amp;lt; allRegionNames.length; i++) {&lt;br /&gt;
      if (listofRegions.indexOf(allRegionNames[i]) === -1) {&lt;br /&gt;
        listofRegions.push(allRegionNames[i]);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    function getRegionData(chosenCountry) {&lt;br /&gt;
      currTitle = chosenCountry;&lt;br /&gt;
      currentYear = [];&lt;br /&gt;
      currallRicoverati = [];&lt;br /&gt;
      currallTi = [];&lt;br /&gt;
      currallTo = [];&lt;br /&gt;
      currallIdom = [];&lt;br /&gt;
      currallAttPos = [];&lt;br /&gt;
      currallNewPos = [];&lt;br /&gt;
      currallDimGuariti = [];&lt;br /&gt;
      currallMorti = [];&lt;br /&gt;
      currallTotCasi = [];&lt;br /&gt;
      currallTamponi = [];&lt;br /&gt;
&lt;br /&gt;
      for (var i = 0; i &amp;lt; allRegionNames.length; i++) {&lt;br /&gt;
        if (allRegionNames[i] === chosenCountry) {&lt;br /&gt;
          currentYear.push(allDay[i]);&lt;br /&gt;
          currallRicoverati.push(allRicoverati[i]);&lt;br /&gt;
          currallTi.push(allTi[i]);&lt;br /&gt;
          currallTo.push(allTo[i]);&lt;br /&gt;
          currallIdom.push(allIdom[i]);&lt;br /&gt;
          currallAttPos.push(allAttPos[i]);&lt;br /&gt;
          currallNewPos.push(allNewPos[i]);&lt;br /&gt;
          currallDimGuariti.push(allDimGuariti[i]);&lt;br /&gt;
          currallMorti.push(allMorti[i]);&lt;br /&gt;
          currallTotCasi.push(allTotCasi[i]);&lt;br /&gt;
          currallTamponi.push(allTamponi[i]);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Default Region Data&lt;br /&gt;
    setBubblePlot(&amp;quot;Abruzzo&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    function setBubblePlot(chosenCountry) {&lt;br /&gt;
      getRegionData(chosenCountry);&lt;br /&gt;
&lt;br /&gt;
      var trace1 = {&lt;br /&gt;
        //visible: 'legendonly',&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallRicoverati,&lt;br /&gt;
        name: &amp;quot;Ricoverati con sintomi&amp;quot;,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace2 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTi,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Terapia Intensiva&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace3 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTo,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale ospedalizzati&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace4 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallIdom,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Isolamento domiciliare&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace5 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallAttPos,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale attualmente positivi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace6 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallNewPos,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Nuovi attualmente positivi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace7 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallDimGuariti,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Dimessi guariti&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace8 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallMorti,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Deceduti&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace9 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTotCasi,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale casi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace10 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTamponi,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Tamponi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var data = [&lt;br /&gt;
        trace1,&lt;br /&gt;
        trace2,&lt;br /&gt;
        trace3,&lt;br /&gt;
        trace4,&lt;br /&gt;
        trace5,&lt;br /&gt;
        trace6,&lt;br /&gt;
        trace7,&lt;br /&gt;
        trace8,&lt;br /&gt;
        trace9,&lt;br /&gt;
        trace10&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var updatemenus = [&lt;br /&gt;
        {&lt;br /&gt;
          buttons: [&lt;br /&gt;
            {&lt;br /&gt;
              args: [{ &amp;quot;yaxis.type&amp;quot;: &amp;quot;linear&amp;quot;, &amp;quot;yaxis.tickmode&amp;quot;: &amp;quot;auto&amp;quot; }],&lt;br /&gt;
              label: &amp;quot;Linear&amp;quot;,&lt;br /&gt;
              method: &amp;quot;relayout&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
              args: [{ &amp;quot;yaxis.type&amp;quot;: &amp;quot;log&amp;quot;, &amp;quot;yaxis.dtick&amp;quot;: 1 }],&lt;br /&gt;
              label: &amp;quot;SemiLog&amp;quot;,&lt;br /&gt;
              method: &amp;quot;relayout&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
          ],&lt;br /&gt;
          direction: &amp;quot;left&amp;quot;,&lt;br /&gt;
          pad: { r: 10, t: 10 },&lt;br /&gt;
          showactive: true,&lt;br /&gt;
          type: &amp;quot;buttons&amp;quot;,&lt;br /&gt;
          x: 0.1,&lt;br /&gt;
          xanchor: &amp;quot;left&amp;quot;,&lt;br /&gt;
          y: 1.1,&lt;br /&gt;
          yanchor: &amp;quot;top&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var annotations = [&lt;br /&gt;
        {&lt;br /&gt;
          text: &amp;quot;Plot type:&amp;quot;,&lt;br /&gt;
          x: 0,&lt;br /&gt;
          y: 1.085,&lt;br /&gt;
          yref: &amp;quot;paper&amp;quot;,&lt;br /&gt;
          align: &amp;quot;left&amp;quot;,&lt;br /&gt;
          showarrow: false&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var layout = {&lt;br /&gt;
        title: &amp;quot;Andamento regionale &amp;quot; + currTitle,&lt;br /&gt;
        height: 400,&lt;br /&gt;
        //width: 800,&lt;br /&gt;
        updatemenus: updatemenus,&lt;br /&gt;
        //annotations: annotations,&lt;br /&gt;
        showlegend: true,&lt;br /&gt;
        //legend: {&amp;quot;orientation&amp;quot;: &amp;quot;h&amp;quot;},&lt;br /&gt;
        yaxis: {&lt;br /&gt;
          autorange: true&lt;br /&gt;
&lt;br /&gt;
          //type: 'log',&lt;br /&gt;
          //fixedrange: true,&lt;br /&gt;
          //range: [0,3.70]&lt;br /&gt;
          //range: [0,5000]&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
      var options = {&lt;br /&gt;
        scrollZoom: true,&lt;br /&gt;
        displayModeBar: false,&lt;br /&gt;
        responsive: true,&lt;br /&gt;
      };&lt;br /&gt;
      Plotly.newPlot(&amp;quot;myDiv&amp;quot;, data, layout, options);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var innerContainer = document.querySelector('[data-num=&amp;quot;0&amp;quot;'),&lt;br /&gt;
      plotEl = innerContainer.querySelector(&amp;quot;.plot&amp;quot;),&lt;br /&gt;
      countrySelector = innerContainer.querySelector(&amp;quot;.countrydata&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    function assignOptions(textArray, selector) {&lt;br /&gt;
      for (var i = 0; i &amp;lt; textArray.length; i++) {&lt;br /&gt;
        var currentOption = document.createElement(&amp;quot;option&amp;quot;);&lt;br /&gt;
        currentOption.text = textArray[i];&lt;br /&gt;
        selector.appendChild(currentOption);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    assignOptions(listofRegions, countrySelector);&lt;br /&gt;
&lt;br /&gt;
    function updateCountry() {&lt;br /&gt;
      setBubblePlot(countrySelector.value);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    countrySelector.addEventListener(&amp;quot;change&amp;quot;, updateCountry, false);&lt;br /&gt;
  }&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=Covid19&amp;diff=7077</id>
		<title>Covid19</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=Covid19&amp;diff=7077"/>
				<updated>2020-03-14T15:12:02Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= COVID19 - Monitoraggio ed Analisi della situazione italiana=&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
  &amp;lt;div id=&amp;quot;myDiv&amp;quot; style=&amp;quot;width:100%;height:250px;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;showcase__section&amp;quot; id=&amp;quot;bubble&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;div class=&amp;quot;spacer --small&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
      &amp;lt;div id=&amp;quot;bubbleplots&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;div class=&amp;quot;bubbleplot&amp;quot; data-num=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;plot&amp;quot; id=&amp;quot;plotdiv&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;control-row&amp;quot;&amp;gt;&lt;br /&gt;
            Regione: &amp;lt;select class=&amp;quot;countrydata&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;/select&amp;gt;&lt;br /&gt;
          &amp;lt;/div&amp;gt;&lt;br /&gt;
        &amp;lt;/div&amp;gt;&lt;br /&gt;
      &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;script&amp;gt;&lt;br /&gt;
Plotly.d3.csv(&lt;br /&gt;
  &amp;quot;https://raw.githubusercontent.com/pcm-dpc/COVID-19/master/dati-regioni/dpc-covid19-ita-regioni.csv&amp;quot;,&lt;br /&gt;
  function(err, rows) {&lt;br /&gt;
    function unpack(rows, key) {&lt;br /&gt;
      return rows.map(function(row) {&lt;br /&gt;
        return row[key];&lt;br /&gt;
      });&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var allRegionNames = unpack(rows, &amp;quot;denominazione_regione&amp;quot;),&lt;br /&gt;
      allDay = unpack(rows, &amp;quot;data&amp;quot;),&lt;br /&gt;
      allRicoverati = unpack(rows, &amp;quot;ricoverati_con_sintomi&amp;quot;),&lt;br /&gt;
      allTi = unpack(rows, &amp;quot;terapia_intensiva&amp;quot;),&lt;br /&gt;
      allTo = unpack(rows, &amp;quot;totale_ospedalizzati&amp;quot;),&lt;br /&gt;
      allIdom = unpack(rows, &amp;quot;isolamento_domiciliare&amp;quot;),&lt;br /&gt;
      allAttPos = unpack(rows, &amp;quot;totale_attualmente_positivi&amp;quot;),&lt;br /&gt;
      allNewPos = unpack(rows, &amp;quot;nuovi_attualmente_positivi&amp;quot;),&lt;br /&gt;
      allDimGuariti = unpack(rows, &amp;quot;dimessi_guariti&amp;quot;),&lt;br /&gt;
      allMorti = unpack(rows, &amp;quot;deceduti&amp;quot;),&lt;br /&gt;
      allTotCasi = unpack(rows, &amp;quot;totale_casi&amp;quot;),&lt;br /&gt;
      allTamponi = unpack(rows, &amp;quot;tamponi&amp;quot;),&lt;br /&gt;
      listofRegions = [],&lt;br /&gt;
      currentCountry,&lt;br /&gt;
      currentGdp = [],&lt;br /&gt;
      currentYear = [];&lt;br /&gt;
    currTitle = &amp;quot;Abruzzo&amp;quot;;&lt;br /&gt;
    currallRicoverati = [];&lt;br /&gt;
    currallTi = [];&lt;br /&gt;
    currallTo = [];&lt;br /&gt;
    currallIdom = [];&lt;br /&gt;
    currallAttPos = [];&lt;br /&gt;
    currallNewPos = [];&lt;br /&gt;
    currallDimGuariti = [];&lt;br /&gt;
    currallMorti = [];&lt;br /&gt;
    currallTotCasi = [];&lt;br /&gt;
    currallTamponi = [];&lt;br /&gt;
&lt;br /&gt;
    for (var i = 0; i &amp;lt; allRegionNames.length; i++) {&lt;br /&gt;
      if (listofRegions.indexOf(allRegionNames[i]) === -1) {&lt;br /&gt;
        listofRegions.push(allRegionNames[i]);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    function getRegionData(chosenCountry) {&lt;br /&gt;
      currTitle = chosenCountry;&lt;br /&gt;
      currentYear = [];&lt;br /&gt;
      currallRicoverati = [];&lt;br /&gt;
      currallTi = [];&lt;br /&gt;
      currallTo = [];&lt;br /&gt;
      currallIdom = [];&lt;br /&gt;
      currallAttPos = [];&lt;br /&gt;
      currallNewPos = [];&lt;br /&gt;
      currallDimGuariti = [];&lt;br /&gt;
      currallMorti = [];&lt;br /&gt;
      currallTotCasi = [];&lt;br /&gt;
      currallTamponi = [];&lt;br /&gt;
&lt;br /&gt;
      for (var i = 0; i &amp;lt; allRegionNames.length; i++) {&lt;br /&gt;
        if (allRegionNames[i] === chosenCountry) {&lt;br /&gt;
          currentYear.push(allDay[i]);&lt;br /&gt;
          currallRicoverati.push(allRicoverati[i]);&lt;br /&gt;
          currallTi.push(allTi[i]);&lt;br /&gt;
          currallTo.push(allTo[i]);&lt;br /&gt;
          currallIdom.push(allIdom[i]);&lt;br /&gt;
          currallAttPos.push(allAttPos[i]);&lt;br /&gt;
          currallNewPos.push(allNewPos[i]);&lt;br /&gt;
          currallDimGuariti.push(allDimGuariti[i]);&lt;br /&gt;
          currallMorti.push(allMorti[i]);&lt;br /&gt;
          currallTotCasi.push(allTotCasi[i]);&lt;br /&gt;
          currallTamponi.push(allTamponi[i]);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Default Region Data&lt;br /&gt;
    setBubblePlot(&amp;quot;Abruzzo&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    function setBubblePlot(chosenCountry) {&lt;br /&gt;
      getRegionData(chosenCountry);&lt;br /&gt;
&lt;br /&gt;
      var trace1 = {&lt;br /&gt;
        //visible: 'legendonly',&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallRicoverati,&lt;br /&gt;
        name: &amp;quot;Ricoverati con sintomi&amp;quot;,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace2 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTi,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Terapia Intensiva&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace3 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTo,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale ospedalizzati&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace4 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallIdom,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Isolamento domiciliare&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace5 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallAttPos,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale attualmente positivi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace6 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallNewPos,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Nuovi attualmente positivi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace7 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallDimGuariti,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Dimessi guariti&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace8 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallMorti,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Deceduti&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace9 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTotCasi,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Totale casi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var trace10 = {&lt;br /&gt;
        x: currentYear,&lt;br /&gt;
        y: currallTamponi,&lt;br /&gt;
        mode: &amp;quot;markers&amp;quot;,&lt;br /&gt;
        name: &amp;quot;Tamponi&amp;quot;,&lt;br /&gt;
        marker: {&lt;br /&gt;
          size: 12,&lt;br /&gt;
          opacity: 0.5&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      var data = [&lt;br /&gt;
        trace1,&lt;br /&gt;
        trace2,&lt;br /&gt;
        trace3,&lt;br /&gt;
        trace4,&lt;br /&gt;
        trace5,&lt;br /&gt;
        trace6,&lt;br /&gt;
        trace7,&lt;br /&gt;
        trace8,&lt;br /&gt;
        trace9,&lt;br /&gt;
        trace10&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var updatemenus = [&lt;br /&gt;
        {&lt;br /&gt;
          buttons: [&lt;br /&gt;
            {&lt;br /&gt;
              args: [{ &amp;quot;yaxis.type&amp;quot;: &amp;quot;linear&amp;quot;, &amp;quot;yaxis.tickmode&amp;quot;: &amp;quot;auto&amp;quot; }],&lt;br /&gt;
              label: &amp;quot;Linear&amp;quot;,&lt;br /&gt;
              method: &amp;quot;relayout&amp;quot;&lt;br /&gt;
            },&lt;br /&gt;
            {&lt;br /&gt;
              args: [{ &amp;quot;yaxis.type&amp;quot;: &amp;quot;log&amp;quot;, &amp;quot;yaxis.dtick&amp;quot;: 1 }],&lt;br /&gt;
              label: &amp;quot;SemiLog&amp;quot;,&lt;br /&gt;
              method: &amp;quot;relayout&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
          ],&lt;br /&gt;
          direction: &amp;quot;left&amp;quot;,&lt;br /&gt;
          pad: { r: 10, t: 10 },&lt;br /&gt;
          showactive: true,&lt;br /&gt;
          type: &amp;quot;buttons&amp;quot;,&lt;br /&gt;
          x: 0.1,&lt;br /&gt;
          xanchor: &amp;quot;left&amp;quot;,&lt;br /&gt;
          y: 1.1,&lt;br /&gt;
          yanchor: &amp;quot;top&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var annotations = [&lt;br /&gt;
        {&lt;br /&gt;
          text: &amp;quot;Plot type:&amp;quot;,&lt;br /&gt;
          x: 0,&lt;br /&gt;
          y: 1.085,&lt;br /&gt;
          yref: &amp;quot;paper&amp;quot;,&lt;br /&gt;
          align: &amp;quot;left&amp;quot;,&lt;br /&gt;
          showarrow: false&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
&lt;br /&gt;
      var layout = {&lt;br /&gt;
        title: &amp;quot;Andamento regionale &amp;quot; + currTitle,&lt;br /&gt;
        height: 400,&lt;br /&gt;
        //width: 800,&lt;br /&gt;
        updatemenus: updatemenus,&lt;br /&gt;
        //annotations: annotations,&lt;br /&gt;
        showlegend: true,&lt;br /&gt;
        //legend: {&amp;quot;orientation&amp;quot;: &amp;quot;h&amp;quot;},&lt;br /&gt;
        yaxis: {&lt;br /&gt;
          autorange: true&lt;br /&gt;
&lt;br /&gt;
          //type: 'log',&lt;br /&gt;
          //fixedrange: true,&lt;br /&gt;
          //range: [0,3.70]&lt;br /&gt;
          //range: [0,5000]&lt;br /&gt;
        }&lt;br /&gt;
      };&lt;br /&gt;
      var options = {&lt;br /&gt;
        scrollZoom: true,&lt;br /&gt;
        displayModeBar: false&lt;br /&gt;
      };&lt;br /&gt;
      Plotly.newPlot(&amp;quot;myDiv&amp;quot;, data, layout, options);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var innerContainer = document.querySelector('[data-num=&amp;quot;0&amp;quot;'),&lt;br /&gt;
      plotEl = innerContainer.querySelector(&amp;quot;.plot&amp;quot;),&lt;br /&gt;
      countrySelector = innerContainer.querySelector(&amp;quot;.countrydata&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    function assignOptions(textArray, selector) {&lt;br /&gt;
      for (var i = 0; i &amp;lt; textArray.length; i++) {&lt;br /&gt;
        var currentOption = document.createElement(&amp;quot;option&amp;quot;);&lt;br /&gt;
        currentOption.text = textArray[i];&lt;br /&gt;
        selector.appendChild(currentOption);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    assignOptions(listofRegions, countrySelector);&lt;br /&gt;
&lt;br /&gt;
    function updateCountry() {&lt;br /&gt;
      setBubblePlot(countrySelector.value);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    countrySelector.addEventListener(&amp;quot;change&amp;quot;, updateCountry, false);&lt;br /&gt;
  }&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=7008</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=7008"/>
				<updated>2020-03-02T12:15:43Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* 2018 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer. Particolare enfasi è riservato a casi di studio di corrente interesse applicativo.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
L'esame comprende una prova scritta, una prova orale in cui si discutono   3 articoli scientifici a scelta tra quelli studiati durante il corso e un tema d'anno. Il voto finale è la media della prova scriita, della prova orale e del tema d'anno.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2016/17===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman.  Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2015/16===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui casi di studio ===&lt;br /&gt;
* [https://arxiv.org/ftp/arxiv/papers/1805/1805.01631.pdf  On continuos versus discrete time models]&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)] (si veda anche [http://c3lab.poliba.it/images/b/b1/Acc2015.pdf &amp;quot;Characterizing Adaptive Video Streaming Control Systems&amp;quot;] per il modello del playout buffer)&lt;br /&gt;
* [https://c3lab.poliba.it/images/c/c4/Gcc-TNET.pdf Google Congestion Control for Web Real-time communication (WebRTC)]&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/0/0c/Page_rank.pdf Page Rank],&lt;br /&gt;
* [[Media:Web_Information_Retrieval.pdf | A Survey of Eigenvector Methods of Web Information Retrieval]]&lt;br /&gt;
* [[Media:tcp_mathis.pdf | The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm]]&lt;br /&gt;
* [https://static.googleusercontent.com/media/research.google.com/it//pubs/archive/35179.pdf The unreasonable effectiveness of data]&lt;br /&gt;
* [https://www.dartmouth.edu/~matc/MathDrama/reading/Wigner.html The unreasonable effectiveness of Mathematics in the Natural Sciences]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
== 2018 == &lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;a href=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub&amp;quot;&amp;gt;Link&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;iframe src=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub?embedded=true&amp;quot; frameborder=&amp;quot;0&amp;quot; marginwidth=&amp;quot;0&amp;quot; style=&amp;quot;width: 100%; min-height: 300px;&amp;quot;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===2017===&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vROaO7j6c7UlYf64pn6s7jmscSvDefSqpojibOLhwXr5Renk4wMtjE6WybpBGAt4iJvtHhApi6tBYEM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=60000 Introduction to Docker and Kubernetes]&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vSo4MzpE_NksEWUP4bxfL_ltoLvc_zc3Cea82IN-XBA59vz3jfTyXStJb3ttsF3cQGjcShQZYPJQZtK/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Introduction to VR and AR programming]&lt;br /&gt;
&lt;br /&gt;
===2016===&lt;br /&gt;
* Comunicazione real-time con WebRTC ([[Media:webrtc-metoditlc-decicco.pdf | Slides ]])&lt;br /&gt;
&lt;br /&gt;
====2015====&lt;br /&gt;
* Realizzazione di un osservatore di stato basato su filtro di Kalman per la stima della capacità del canale di trasmissione. Contattare [http://c3lab.poliba.it/index.php?title=GaetanoCarlucci Gaetano Carlucci ] per ricevere il materiale necessario.&lt;br /&gt;
* Studio di sistemi di video streaming DASH/HLS utilizzando HTTP2 o QUIC volto alla riduzione del delay utilizzando [https://github.com/ldecicco/tapas TAPAS ]&lt;br /&gt;
* Progettazione di un controllore per l’ adattamento del bitrate in un sistema di video streaming adattativo DASH/HLS utilizzando [https://github.com/ldecicco/tapas TAPAS ] - Documentazione: [https://github.com/ldecicco/tapas/tree/master/docs/sphinx Tapas documentation]&lt;br /&gt;
* Implementazione di un testbed SDN emulato mediante [http://mininet.org/ mininet] per realizzare un piano di controllo per una piattaforma di video streaming adattativo - Documentazione: [http://mininet.org/walkthrough/ mininet walkthrough ]&lt;br /&gt;
* Stabilizzazione dei movimenti di un visore stereoscopico. Link utili: [http://threejs.org/examples/#webgl_video_panorama_equirectangular Threejs demo]&lt;br /&gt;
* Trasmissione sicura tra laptop usando oscillatori caotici. Link utili: [ ]&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=7007</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=7007"/>
				<updated>2020-03-02T12:15:30Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* 2018 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer. Particolare enfasi è riservato a casi di studio di corrente interesse applicativo.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
L'esame comprende una prova scritta, una prova orale in cui si discutono   3 articoli scientifici a scelta tra quelli studiati durante il corso e un tema d'anno. Il voto finale è la media della prova scriita, della prova orale e del tema d'anno.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2016/17===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman.  Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2015/16===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui casi di studio ===&lt;br /&gt;
* [https://arxiv.org/ftp/arxiv/papers/1805/1805.01631.pdf  On continuos versus discrete time models]&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)] (si veda anche [http://c3lab.poliba.it/images/b/b1/Acc2015.pdf &amp;quot;Characterizing Adaptive Video Streaming Control Systems&amp;quot;] per il modello del playout buffer)&lt;br /&gt;
* [https://c3lab.poliba.it/images/c/c4/Gcc-TNET.pdf Google Congestion Control for Web Real-time communication (WebRTC)]&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/0/0c/Page_rank.pdf Page Rank],&lt;br /&gt;
* [[Media:Web_Information_Retrieval.pdf | A Survey of Eigenvector Methods of Web Information Retrieval]]&lt;br /&gt;
* [[Media:tcp_mathis.pdf | The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm]]&lt;br /&gt;
* [https://static.googleusercontent.com/media/research.google.com/it//pubs/archive/35179.pdf The unreasonable effectiveness of data]&lt;br /&gt;
* [https://www.dartmouth.edu/~matc/MathDrama/reading/Wigner.html The unreasonable effectiveness of Mathematics in the Natural Sciences]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
== 2018 == &lt;br /&gt;
&amp;lt;a href=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub&amp;quot;&amp;gt;Link&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;iframe src=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub?embedded=true&amp;quot; frameborder=&amp;quot;0&amp;quot; marginwidth=&amp;quot;0&amp;quot; style=&amp;quot;width: 100%; min-height: 300px;&amp;quot;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===2017===&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vROaO7j6c7UlYf64pn6s7jmscSvDefSqpojibOLhwXr5Renk4wMtjE6WybpBGAt4iJvtHhApi6tBYEM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=60000 Introduction to Docker and Kubernetes]&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vSo4MzpE_NksEWUP4bxfL_ltoLvc_zc3Cea82IN-XBA59vz3jfTyXStJb3ttsF3cQGjcShQZYPJQZtK/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Introduction to VR and AR programming]&lt;br /&gt;
&lt;br /&gt;
===2016===&lt;br /&gt;
* Comunicazione real-time con WebRTC ([[Media:webrtc-metoditlc-decicco.pdf | Slides ]])&lt;br /&gt;
&lt;br /&gt;
====2015====&lt;br /&gt;
* Realizzazione di un osservatore di stato basato su filtro di Kalman per la stima della capacità del canale di trasmissione. Contattare [http://c3lab.poliba.it/index.php?title=GaetanoCarlucci Gaetano Carlucci ] per ricevere il materiale necessario.&lt;br /&gt;
* Studio di sistemi di video streaming DASH/HLS utilizzando HTTP2 o QUIC volto alla riduzione del delay utilizzando [https://github.com/ldecicco/tapas TAPAS ]&lt;br /&gt;
* Progettazione di un controllore per l’ adattamento del bitrate in un sistema di video streaming adattativo DASH/HLS utilizzando [https://github.com/ldecicco/tapas TAPAS ] - Documentazione: [https://github.com/ldecicco/tapas/tree/master/docs/sphinx Tapas documentation]&lt;br /&gt;
* Implementazione di un testbed SDN emulato mediante [http://mininet.org/ mininet] per realizzare un piano di controllo per una piattaforma di video streaming adattativo - Documentazione: [http://mininet.org/walkthrough/ mininet walkthrough ]&lt;br /&gt;
* Stabilizzazione dei movimenti di un visore stereoscopico. Link utili: [http://threejs.org/examples/#webgl_video_panorama_equirectangular Threejs demo]&lt;br /&gt;
* Trasmissione sicura tra laptop usando oscillatori caotici. Link utili: [ ]&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=7006</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=7006"/>
				<updated>2020-03-02T12:15:08Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* 2018 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer. Particolare enfasi è riservato a casi di studio di corrente interesse applicativo.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
L'esame comprende una prova scritta, una prova orale in cui si discutono   3 articoli scientifici a scelta tra quelli studiati durante il corso e un tema d'anno. Il voto finale è la media della prova scriita, della prova orale e del tema d'anno.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2016/17===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman.  Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2015/16===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui casi di studio ===&lt;br /&gt;
* [https://arxiv.org/ftp/arxiv/papers/1805/1805.01631.pdf  On continuos versus discrete time models]&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)] (si veda anche [http://c3lab.poliba.it/images/b/b1/Acc2015.pdf &amp;quot;Characterizing Adaptive Video Streaming Control Systems&amp;quot;] per il modello del playout buffer)&lt;br /&gt;
* [https://c3lab.poliba.it/images/c/c4/Gcc-TNET.pdf Google Congestion Control for Web Real-time communication (WebRTC)]&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/0/0c/Page_rank.pdf Page Rank],&lt;br /&gt;
* [[Media:Web_Information_Retrieval.pdf | A Survey of Eigenvector Methods of Web Information Retrieval]]&lt;br /&gt;
* [[Media:tcp_mathis.pdf | The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm]]&lt;br /&gt;
* [https://static.googleusercontent.com/media/research.google.com/it//pubs/archive/35179.pdf The unreasonable effectiveness of data]&lt;br /&gt;
* [https://www.dartmouth.edu/~matc/MathDrama/reading/Wigner.html The unreasonable effectiveness of Mathematics in the Natural Sciences]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
== 2018 == &lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;iframe src=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub?embedded=true&amp;quot; frameborder=&amp;quot;0&amp;quot; marginwidth=&amp;quot;0&amp;quot; style=&amp;quot;width: 100%; min-height: 300px;&amp;quot;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===2017===&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vROaO7j6c7UlYf64pn6s7jmscSvDefSqpojibOLhwXr5Renk4wMtjE6WybpBGAt4iJvtHhApi6tBYEM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=60000 Introduction to Docker and Kubernetes]&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vSo4MzpE_NksEWUP4bxfL_ltoLvc_zc3Cea82IN-XBA59vz3jfTyXStJb3ttsF3cQGjcShQZYPJQZtK/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Introduction to VR and AR programming]&lt;br /&gt;
&lt;br /&gt;
===2016===&lt;br /&gt;
* Comunicazione real-time con WebRTC ([[Media:webrtc-metoditlc-decicco.pdf | Slides ]])&lt;br /&gt;
&lt;br /&gt;
====2015====&lt;br /&gt;
* Realizzazione di un osservatore di stato basato su filtro di Kalman per la stima della capacità del canale di trasmissione. Contattare [http://c3lab.poliba.it/index.php?title=GaetanoCarlucci Gaetano Carlucci ] per ricevere il materiale necessario.&lt;br /&gt;
* Studio di sistemi di video streaming DASH/HLS utilizzando HTTP2 o QUIC volto alla riduzione del delay utilizzando [https://github.com/ldecicco/tapas TAPAS ]&lt;br /&gt;
* Progettazione di un controllore per l’ adattamento del bitrate in un sistema di video streaming adattativo DASH/HLS utilizzando [https://github.com/ldecicco/tapas TAPAS ] - Documentazione: [https://github.com/ldecicco/tapas/tree/master/docs/sphinx Tapas documentation]&lt;br /&gt;
* Implementazione di un testbed SDN emulato mediante [http://mininet.org/ mininet] per realizzare un piano di controllo per una piattaforma di video streaming adattativo - Documentazione: [http://mininet.org/walkthrough/ mininet walkthrough ]&lt;br /&gt;
* Stabilizzazione dei movimenti di un visore stereoscopico. Link utili: [http://threejs.org/examples/#webgl_video_panorama_equirectangular Threejs demo]&lt;br /&gt;
* Trasmissione sicura tra laptop usando oscillatori caotici. Link utili: [ ]&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=7005</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=7005"/>
				<updated>2020-03-02T12:15:03Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* 2018 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer. Particolare enfasi è riservato a casi di studio di corrente interesse applicativo.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
L'esame comprende una prova scritta, una prova orale in cui si discutono   3 articoli scientifici a scelta tra quelli studiati durante il corso e un tema d'anno. Il voto finale è la media della prova scriita, della prova orale e del tema d'anno.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2016/17===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman.  Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2015/16===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui casi di studio ===&lt;br /&gt;
* [https://arxiv.org/ftp/arxiv/papers/1805/1805.01631.pdf  On continuos versus discrete time models]&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)] (si veda anche [http://c3lab.poliba.it/images/b/b1/Acc2015.pdf &amp;quot;Characterizing Adaptive Video Streaming Control Systems&amp;quot;] per il modello del playout buffer)&lt;br /&gt;
* [https://c3lab.poliba.it/images/c/c4/Gcc-TNET.pdf Google Congestion Control for Web Real-time communication (WebRTC)]&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/0/0c/Page_rank.pdf Page Rank],&lt;br /&gt;
* [[Media:Web_Information_Retrieval.pdf | A Survey of Eigenvector Methods of Web Information Retrieval]]&lt;br /&gt;
* [[Media:tcp_mathis.pdf | The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm]]&lt;br /&gt;
* [https://static.googleusercontent.com/media/research.google.com/it//pubs/archive/35179.pdf The unreasonable effectiveness of data]&lt;br /&gt;
* [https://www.dartmouth.edu/~matc/MathDrama/reading/Wigner.html The unreasonable effectiveness of Mathematics in the Natural Sciences]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
== 2018 == &lt;br /&gt;
&amp;lt;a href=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub&amp;quot;&amp;gt;Link&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;iframe src=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub?embedded=true&amp;quot; frameborder=&amp;quot;0&amp;quot; marginwidth=&amp;quot;0&amp;quot; style=&amp;quot;width: 100%; min-height: 300px;&amp;quot;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===2017===&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vROaO7j6c7UlYf64pn6s7jmscSvDefSqpojibOLhwXr5Renk4wMtjE6WybpBGAt4iJvtHhApi6tBYEM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=60000 Introduction to Docker and Kubernetes]&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vSo4MzpE_NksEWUP4bxfL_ltoLvc_zc3Cea82IN-XBA59vz3jfTyXStJb3ttsF3cQGjcShQZYPJQZtK/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Introduction to VR and AR programming]&lt;br /&gt;
&lt;br /&gt;
===2016===&lt;br /&gt;
* Comunicazione real-time con WebRTC ([[Media:webrtc-metoditlc-decicco.pdf | Slides ]])&lt;br /&gt;
&lt;br /&gt;
====2015====&lt;br /&gt;
* Realizzazione di un osservatore di stato basato su filtro di Kalman per la stima della capacità del canale di trasmissione. Contattare [http://c3lab.poliba.it/index.php?title=GaetanoCarlucci Gaetano Carlucci ] per ricevere il materiale necessario.&lt;br /&gt;
* Studio di sistemi di video streaming DASH/HLS utilizzando HTTP2 o QUIC volto alla riduzione del delay utilizzando [https://github.com/ldecicco/tapas TAPAS ]&lt;br /&gt;
* Progettazione di un controllore per l’ adattamento del bitrate in un sistema di video streaming adattativo DASH/HLS utilizzando [https://github.com/ldecicco/tapas TAPAS ] - Documentazione: [https://github.com/ldecicco/tapas/tree/master/docs/sphinx Tapas documentation]&lt;br /&gt;
* Implementazione di un testbed SDN emulato mediante [http://mininet.org/ mininet] per realizzare un piano di controllo per una piattaforma di video streaming adattativo - Documentazione: [http://mininet.org/walkthrough/ mininet walkthrough ]&lt;br /&gt;
* Stabilizzazione dei movimenti di un visore stereoscopico. Link utili: [http://threejs.org/examples/#webgl_video_panorama_equirectangular Threejs demo]&lt;br /&gt;
* Trasmissione sicura tra laptop usando oscillatori caotici. Link utili: [ ]&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6962</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6962"/>
				<updated>2019-10-16T15:15:06Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* Temi d'anno 2018/2019 - Projects proposals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer. Particolare enfasi è riservato a casi di studio di corrente interesse applicativo.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
L'esame comprende una prova scritta, una prova orale in cui si discutono   3 articoli scientifici a scelta tra quelli studiati durante il corso e un tema d'anno. Il voto finale è la media della prova scriita, della prova orale e del tema d'anno.&lt;br /&gt;
&lt;br /&gt;
==Temi d'anno 2018/2019 - Projects proposals == &lt;br /&gt;
'''NEW! (4/12/2018)''' I temi d'anno proposti per l'A.A. 2018/2019 sono disponibili [https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub qui]:&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;iframe src=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub?embedded=true&amp;quot; frameborder=&amp;quot;0&amp;quot; marginwidth=&amp;quot;0&amp;quot; style=&amp;quot;width: 100%; min-height: 300px;&amp;quot;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2016/17===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman.  Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2015/16===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui casi di studio ===&lt;br /&gt;
* [https://arxiv.org/ftp/arxiv/papers/1805/1805.01631.pdf  On continuos versus discrete time models]&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)] (si veda anche [http://c3lab.poliba.it/images/b/b1/Acc2015.pdf &amp;quot;Characterizing Adaptive Video Streaming Control Systems&amp;quot;] per il modello del playout buffer)&lt;br /&gt;
* [https://c3lab.poliba.it/images/c/c4/Gcc-TNET.pdf Google Congestion Control for Web Real-time communication (WebRTC)]&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/0/0c/Page_rank.pdf Page Rank],&lt;br /&gt;
* [[Media:Web_Information_Retrieval.pdf | A Survey of Eigenvector Methods of Web Information Retrieval]]&lt;br /&gt;
* [[Media:tcp_mathis.pdf | The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm]]&lt;br /&gt;
* [https://static.googleusercontent.com/media/research.google.com/it//pubs/archive/35179.pdf The unreasonable effectiveness of data]&lt;br /&gt;
* [https://www.dartmouth.edu/~matc/MathDrama/reading/Wigner.html The unreasonable effectiveness of Mathematics in the Natural Sciences]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
===2017===&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vROaO7j6c7UlYf64pn6s7jmscSvDefSqpojibOLhwXr5Renk4wMtjE6WybpBGAt4iJvtHhApi6tBYEM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=60000 Introduction to Docker and Kubernetes]&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vSo4MzpE_NksEWUP4bxfL_ltoLvc_zc3Cea82IN-XBA59vz3jfTyXStJb3ttsF3cQGjcShQZYPJQZtK/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Introduction to VR and AR programming]&lt;br /&gt;
&lt;br /&gt;
===2016===&lt;br /&gt;
* Comunicazione real-time con WebRTC ([[Media:webrtc-metoditlc-decicco.pdf | Slides ]])&lt;br /&gt;
&lt;br /&gt;
====2015====&lt;br /&gt;
* Realizzazione di un osservatore di stato basato su filtro di Kalman per la stima della capacità del canale di trasmissione. Contattare [http://c3lab.poliba.it/index.php?title=GaetanoCarlucci Gaetano Carlucci ] per ricevere il materiale necessario.&lt;br /&gt;
* Studio di sistemi di video streaming DASH/HLS utilizzando HTTP2 o QUIC volto alla riduzione del delay utilizzando [https://github.com/ldecicco/tapas TAPAS ]&lt;br /&gt;
* Progettazione di un controllore per l’ adattamento del bitrate in un sistema di video streaming adattativo DASH/HLS utilizzando [https://github.com/ldecicco/tapas TAPAS ] - Documentazione: [https://github.com/ldecicco/tapas/tree/master/docs/sphinx Tapas documentation]&lt;br /&gt;
* Implementazione di un testbed SDN emulato mediante [http://mininet.org/ mininet] per realizzare un piano di controllo per una piattaforma di video streaming adattativo - Documentazione: [http://mininet.org/walkthrough/ mininet walkthrough ]&lt;br /&gt;
* Stabilizzazione dei movimenti di un visore stereoscopico. Link utili: [http://threejs.org/examples/#webgl_video_panorama_equirectangular Threejs demo]&lt;br /&gt;
* Trasmissione sicura tra laptop usando oscillatori caotici. Link utili: [ ]&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6961</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6961"/>
				<updated>2019-10-16T14:25:33Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* Temi d'anno 2018/2019 - Projects proposals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer. Particolare enfasi è riservato a casi di studio di corrente interesse applicativo.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
L'esame comprende una prova scritta, una prova orale in cui si discutono   3 articoli scientifici a scelta tra quelli studiati durante il corso e un tema d'anno. Il voto finale è la media della prova scriita, della prova orale e del tema d'anno.&lt;br /&gt;
&lt;br /&gt;
==Temi d'anno 2018/2019 - Projects proposals == &lt;br /&gt;
'''NEW! (4/12/2018)''' I temi d'anno proposti per l'A.A. 2018/2019 sono disponibili qui:&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;iframe src=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub?embedded=true&amp;quot; frameborder=&amp;quot;0&amp;quot; marginwidth=&amp;quot;0&amp;quot; style=&amp;quot;width: 100%; min-height: 300px;&amp;quot;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2016/17===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman.  Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2015/16===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui casi di studio ===&lt;br /&gt;
* [https://arxiv.org/ftp/arxiv/papers/1805/1805.01631.pdf  On continuos versus discrete time models]&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)] (si veda anche [http://c3lab.poliba.it/images/b/b1/Acc2015.pdf &amp;quot;Characterizing Adaptive Video Streaming Control Systems&amp;quot;] per il modello del playout buffer)&lt;br /&gt;
* [https://c3lab.poliba.it/images/c/c4/Gcc-TNET.pdf Google Congestion Control for Web Real-time communication (WebRTC)]&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/0/0c/Page_rank.pdf Page Rank],&lt;br /&gt;
* [[Media:Web_Information_Retrieval.pdf | A Survey of Eigenvector Methods of Web Information Retrieval]]&lt;br /&gt;
* [[Media:tcp_mathis.pdf | The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm]]&lt;br /&gt;
* [https://static.googleusercontent.com/media/research.google.com/it//pubs/archive/35179.pdf The unreasonable effectiveness of data]&lt;br /&gt;
* [https://www.dartmouth.edu/~matc/MathDrama/reading/Wigner.html The unreasonable effectiveness of Mathematics in the Natural Sciences]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
===2017===&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vROaO7j6c7UlYf64pn6s7jmscSvDefSqpojibOLhwXr5Renk4wMtjE6WybpBGAt4iJvtHhApi6tBYEM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=60000 Introduction to Docker and Kubernetes]&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vSo4MzpE_NksEWUP4bxfL_ltoLvc_zc3Cea82IN-XBA59vz3jfTyXStJb3ttsF3cQGjcShQZYPJQZtK/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Introduction to VR and AR programming]&lt;br /&gt;
&lt;br /&gt;
===2016===&lt;br /&gt;
* Comunicazione real-time con WebRTC ([[Media:webrtc-metoditlc-decicco.pdf | Slides ]])&lt;br /&gt;
&lt;br /&gt;
====2015====&lt;br /&gt;
* Realizzazione di un osservatore di stato basato su filtro di Kalman per la stima della capacità del canale di trasmissione. Contattare [http://c3lab.poliba.it/index.php?title=GaetanoCarlucci Gaetano Carlucci ] per ricevere il materiale necessario.&lt;br /&gt;
* Studio di sistemi di video streaming DASH/HLS utilizzando HTTP2 o QUIC volto alla riduzione del delay utilizzando [https://github.com/ldecicco/tapas TAPAS ]&lt;br /&gt;
* Progettazione di un controllore per l’ adattamento del bitrate in un sistema di video streaming adattativo DASH/HLS utilizzando [https://github.com/ldecicco/tapas TAPAS ] - Documentazione: [https://github.com/ldecicco/tapas/tree/master/docs/sphinx Tapas documentation]&lt;br /&gt;
* Implementazione di un testbed SDN emulato mediante [http://mininet.org/ mininet] per realizzare un piano di controllo per una piattaforma di video streaming adattativo - Documentazione: [http://mininet.org/walkthrough/ mininet walkthrough ]&lt;br /&gt;
* Stabilizzazione dei movimenti di un visore stereoscopico. Link utili: [http://threejs.org/examples/#webgl_video_panorama_equirectangular Threejs demo]&lt;br /&gt;
* Trasmissione sicura tra laptop usando oscillatori caotici. Link utili: [ ]&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6960</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6960"/>
				<updated>2019-10-16T14:23:43Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* Temi d'anno 2018/2019 - Projects proposals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer. Particolare enfasi è riservato a casi di studio di corrente interesse applicativo.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
L'esame comprende una prova scritta, una prova orale in cui si discutono   3 articoli scientifici a scelta tra quelli studiati durante il corso e un tema d'anno. Il voto finale è la media della prova scriita, della prova orale e del tema d'anno.&lt;br /&gt;
&lt;br /&gt;
==Temi d'anno 2018/2019 - Projects proposals == &lt;br /&gt;
'''NEW! (4/12/2018)''' I temi d'anno proposti per l'A.A. 2018/2019 sono disponibili qui:&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;iframe src=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub?embedded=true&amp;quot; style=&amp;quot;width: 100%; min-height: 20vh;&amp;quot;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2016/17===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman.  Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2015/16===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui casi di studio ===&lt;br /&gt;
* [https://arxiv.org/ftp/arxiv/papers/1805/1805.01631.pdf  On continuos versus discrete time models]&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)] (si veda anche [http://c3lab.poliba.it/images/b/b1/Acc2015.pdf &amp;quot;Characterizing Adaptive Video Streaming Control Systems&amp;quot;] per il modello del playout buffer)&lt;br /&gt;
* [https://c3lab.poliba.it/images/c/c4/Gcc-TNET.pdf Google Congestion Control for Web Real-time communication (WebRTC)]&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/0/0c/Page_rank.pdf Page Rank],&lt;br /&gt;
* [[Media:Web_Information_Retrieval.pdf | A Survey of Eigenvector Methods of Web Information Retrieval]]&lt;br /&gt;
* [[Media:tcp_mathis.pdf | The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm]]&lt;br /&gt;
* [https://static.googleusercontent.com/media/research.google.com/it//pubs/archive/35179.pdf The unreasonable effectiveness of data]&lt;br /&gt;
* [https://www.dartmouth.edu/~matc/MathDrama/reading/Wigner.html The unreasonable effectiveness of Mathematics in the Natural Sciences]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
===2017===&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vROaO7j6c7UlYf64pn6s7jmscSvDefSqpojibOLhwXr5Renk4wMtjE6WybpBGAt4iJvtHhApi6tBYEM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=60000 Introduction to Docker and Kubernetes]&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vSo4MzpE_NksEWUP4bxfL_ltoLvc_zc3Cea82IN-XBA59vz3jfTyXStJb3ttsF3cQGjcShQZYPJQZtK/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Introduction to VR and AR programming]&lt;br /&gt;
&lt;br /&gt;
===2016===&lt;br /&gt;
* Comunicazione real-time con WebRTC ([[Media:webrtc-metoditlc-decicco.pdf | Slides ]])&lt;br /&gt;
&lt;br /&gt;
====2015====&lt;br /&gt;
* Realizzazione di un osservatore di stato basato su filtro di Kalman per la stima della capacità del canale di trasmissione. Contattare [http://c3lab.poliba.it/index.php?title=GaetanoCarlucci Gaetano Carlucci ] per ricevere il materiale necessario.&lt;br /&gt;
* Studio di sistemi di video streaming DASH/HLS utilizzando HTTP2 o QUIC volto alla riduzione del delay utilizzando [https://github.com/ldecicco/tapas TAPAS ]&lt;br /&gt;
* Progettazione di un controllore per l’ adattamento del bitrate in un sistema di video streaming adattativo DASH/HLS utilizzando [https://github.com/ldecicco/tapas TAPAS ] - Documentazione: [https://github.com/ldecicco/tapas/tree/master/docs/sphinx Tapas documentation]&lt;br /&gt;
* Implementazione di un testbed SDN emulato mediante [http://mininet.org/ mininet] per realizzare un piano di controllo per una piattaforma di video streaming adattativo - Documentazione: [http://mininet.org/walkthrough/ mininet walkthrough ]&lt;br /&gt;
* Stabilizzazione dei movimenti di un visore stereoscopico. Link utili: [http://threejs.org/examples/#webgl_video_panorama_equirectangular Threejs demo]&lt;br /&gt;
* Trasmissione sicura tra laptop usando oscillatori caotici. Link utili: [ ]&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6959</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6959"/>
				<updated>2019-10-16T14:23:15Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* Temi d'anno 2018/2019 - Projects proposals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer. Particolare enfasi è riservato a casi di studio di corrente interesse applicativo.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
L'esame comprende una prova scritta, una prova orale in cui si discutono   3 articoli scientifici a scelta tra quelli studiati durante il corso e un tema d'anno. Il voto finale è la media della prova scriita, della prova orale e del tema d'anno.&lt;br /&gt;
&lt;br /&gt;
==Temi d'anno 2018/2019 - Projects proposals == &lt;br /&gt;
'''NEW! (4/12/2018)''' I temi d'anno proposti per l'A.A. 2018/2019 sono disponibili qui:&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;iframe src=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub?embedded=true&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2016/17===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman.  Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2015/16===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui casi di studio ===&lt;br /&gt;
* [https://arxiv.org/ftp/arxiv/papers/1805/1805.01631.pdf  On continuos versus discrete time models]&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)] (si veda anche [http://c3lab.poliba.it/images/b/b1/Acc2015.pdf &amp;quot;Characterizing Adaptive Video Streaming Control Systems&amp;quot;] per il modello del playout buffer)&lt;br /&gt;
* [https://c3lab.poliba.it/images/c/c4/Gcc-TNET.pdf Google Congestion Control for Web Real-time communication (WebRTC)]&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/0/0c/Page_rank.pdf Page Rank],&lt;br /&gt;
* [[Media:Web_Information_Retrieval.pdf | A Survey of Eigenvector Methods of Web Information Retrieval]]&lt;br /&gt;
* [[Media:tcp_mathis.pdf | The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm]]&lt;br /&gt;
* [https://static.googleusercontent.com/media/research.google.com/it//pubs/archive/35179.pdf The unreasonable effectiveness of data]&lt;br /&gt;
* [https://www.dartmouth.edu/~matc/MathDrama/reading/Wigner.html The unreasonable effectiveness of Mathematics in the Natural Sciences]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
===2017===&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vROaO7j6c7UlYf64pn6s7jmscSvDefSqpojibOLhwXr5Renk4wMtjE6WybpBGAt4iJvtHhApi6tBYEM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=60000 Introduction to Docker and Kubernetes]&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vSo4MzpE_NksEWUP4bxfL_ltoLvc_zc3Cea82IN-XBA59vz3jfTyXStJb3ttsF3cQGjcShQZYPJQZtK/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Introduction to VR and AR programming]&lt;br /&gt;
&lt;br /&gt;
===2016===&lt;br /&gt;
* Comunicazione real-time con WebRTC ([[Media:webrtc-metoditlc-decicco.pdf | Slides ]])&lt;br /&gt;
&lt;br /&gt;
====2015====&lt;br /&gt;
* Realizzazione di un osservatore di stato basato su filtro di Kalman per la stima della capacità del canale di trasmissione. Contattare [http://c3lab.poliba.it/index.php?title=GaetanoCarlucci Gaetano Carlucci ] per ricevere il materiale necessario.&lt;br /&gt;
* Studio di sistemi di video streaming DASH/HLS utilizzando HTTP2 o QUIC volto alla riduzione del delay utilizzando [https://github.com/ldecicco/tapas TAPAS ]&lt;br /&gt;
* Progettazione di un controllore per l’ adattamento del bitrate in un sistema di video streaming adattativo DASH/HLS utilizzando [https://github.com/ldecicco/tapas TAPAS ] - Documentazione: [https://github.com/ldecicco/tapas/tree/master/docs/sphinx Tapas documentation]&lt;br /&gt;
* Implementazione di un testbed SDN emulato mediante [http://mininet.org/ mininet] per realizzare un piano di controllo per una piattaforma di video streaming adattativo - Documentazione: [http://mininet.org/walkthrough/ mininet walkthrough ]&lt;br /&gt;
* Stabilizzazione dei movimenti di un visore stereoscopico. Link utili: [http://threejs.org/examples/#webgl_video_panorama_equirectangular Threejs demo]&lt;br /&gt;
* Trasmissione sicura tra laptop usando oscillatori caotici. Link utili: [ ]&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6958</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6958"/>
				<updated>2019-10-16T14:22:48Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* Temi d'anno 2018/2019 - Projects proposals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer. Particolare enfasi è riservato a casi di studio di corrente interesse applicativo.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
L'esame comprende una prova scritta, una prova orale in cui si discutono   3 articoli scientifici a scelta tra quelli studiati durante il corso e un tema d'anno. Il voto finale è la media della prova scriita, della prova orale e del tema d'anno.&lt;br /&gt;
&lt;br /&gt;
==Temi d'anno 2018/2019 - Projects proposals == &lt;br /&gt;
'''NEW! (4/12/2018)''' I temi d'anno proposti per l'A.A. 2018/2019 sono disponibili qui:&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;iframe src=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub?embedded=true&amp;quot;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2016/17===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman.  Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2015/16===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui casi di studio ===&lt;br /&gt;
* [https://arxiv.org/ftp/arxiv/papers/1805/1805.01631.pdf  On continuos versus discrete time models]&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)] (si veda anche [http://c3lab.poliba.it/images/b/b1/Acc2015.pdf &amp;quot;Characterizing Adaptive Video Streaming Control Systems&amp;quot;] per il modello del playout buffer)&lt;br /&gt;
* [https://c3lab.poliba.it/images/c/c4/Gcc-TNET.pdf Google Congestion Control for Web Real-time communication (WebRTC)]&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/0/0c/Page_rank.pdf Page Rank],&lt;br /&gt;
* [[Media:Web_Information_Retrieval.pdf | A Survey of Eigenvector Methods of Web Information Retrieval]]&lt;br /&gt;
* [[Media:tcp_mathis.pdf | The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm]]&lt;br /&gt;
* [https://static.googleusercontent.com/media/research.google.com/it//pubs/archive/35179.pdf The unreasonable effectiveness of data]&lt;br /&gt;
* [https://www.dartmouth.edu/~matc/MathDrama/reading/Wigner.html The unreasonable effectiveness of Mathematics in the Natural Sciences]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
===2017===&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vROaO7j6c7UlYf64pn6s7jmscSvDefSqpojibOLhwXr5Renk4wMtjE6WybpBGAt4iJvtHhApi6tBYEM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=60000 Introduction to Docker and Kubernetes]&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vSo4MzpE_NksEWUP4bxfL_ltoLvc_zc3Cea82IN-XBA59vz3jfTyXStJb3ttsF3cQGjcShQZYPJQZtK/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Introduction to VR and AR programming]&lt;br /&gt;
&lt;br /&gt;
===2016===&lt;br /&gt;
* Comunicazione real-time con WebRTC ([[Media:webrtc-metoditlc-decicco.pdf | Slides ]])&lt;br /&gt;
&lt;br /&gt;
====2015====&lt;br /&gt;
* Realizzazione di un osservatore di stato basato su filtro di Kalman per la stima della capacità del canale di trasmissione. Contattare [http://c3lab.poliba.it/index.php?title=GaetanoCarlucci Gaetano Carlucci ] per ricevere il materiale necessario.&lt;br /&gt;
* Studio di sistemi di video streaming DASH/HLS utilizzando HTTP2 o QUIC volto alla riduzione del delay utilizzando [https://github.com/ldecicco/tapas TAPAS ]&lt;br /&gt;
* Progettazione di un controllore per l’ adattamento del bitrate in un sistema di video streaming adattativo DASH/HLS utilizzando [https://github.com/ldecicco/tapas TAPAS ] - Documentazione: [https://github.com/ldecicco/tapas/tree/master/docs/sphinx Tapas documentation]&lt;br /&gt;
* Implementazione di un testbed SDN emulato mediante [http://mininet.org/ mininet] per realizzare un piano di controllo per una piattaforma di video streaming adattativo - Documentazione: [http://mininet.org/walkthrough/ mininet walkthrough ]&lt;br /&gt;
* Stabilizzazione dei movimenti di un visore stereoscopico. Link utili: [http://threejs.org/examples/#webgl_video_panorama_equirectangular Threejs demo]&lt;br /&gt;
* Trasmissione sicura tra laptop usando oscillatori caotici. Link utili: [ ]&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6957</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6957"/>
				<updated>2019-10-16T14:22:29Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* Temi d'anno 2018/2019 - Projects proposals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer. Particolare enfasi è riservato a casi di studio di corrente interesse applicativo.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
L'esame comprende una prova scritta, una prova orale in cui si discutono   3 articoli scientifici a scelta tra quelli studiati durante il corso e un tema d'anno. Il voto finale è la media della prova scriita, della prova orale e del tema d'anno.&lt;br /&gt;
&lt;br /&gt;
==Temi d'anno 2018/2019 - Projects proposals == &lt;br /&gt;
'''NEW! (4/12/2018)''' I temi d'anno proposti per l'A.A. 2018/2019 sono disponibili qui:&lt;br /&gt;
&amp;lt;iframe src=&amp;quot;https://docs.google.com/document/d/e/2PACX-1vTt0LiqCPdNUbanzhq6QBen9-QyxomWhy7p9s9WtZKLQfvd9JdAz6s9avIszxsFqh7RfxZTsdPdyVoz/pub?embedded=true&amp;quot;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2016/17===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman.  Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2015/16===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui casi di studio ===&lt;br /&gt;
* [https://arxiv.org/ftp/arxiv/papers/1805/1805.01631.pdf  On continuos versus discrete time models]&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)] (si veda anche [http://c3lab.poliba.it/images/b/b1/Acc2015.pdf &amp;quot;Characterizing Adaptive Video Streaming Control Systems&amp;quot;] per il modello del playout buffer)&lt;br /&gt;
* [https://c3lab.poliba.it/images/c/c4/Gcc-TNET.pdf Google Congestion Control for Web Real-time communication (WebRTC)]&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/0/0c/Page_rank.pdf Page Rank],&lt;br /&gt;
* [[Media:Web_Information_Retrieval.pdf | A Survey of Eigenvector Methods of Web Information Retrieval]]&lt;br /&gt;
* [[Media:tcp_mathis.pdf | The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm]]&lt;br /&gt;
* [https://static.googleusercontent.com/media/research.google.com/it//pubs/archive/35179.pdf The unreasonable effectiveness of data]&lt;br /&gt;
* [https://www.dartmouth.edu/~matc/MathDrama/reading/Wigner.html The unreasonable effectiveness of Mathematics in the Natural Sciences]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
===2017===&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vROaO7j6c7UlYf64pn6s7jmscSvDefSqpojibOLhwXr5Renk4wMtjE6WybpBGAt4iJvtHhApi6tBYEM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=60000 Introduction to Docker and Kubernetes]&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vSo4MzpE_NksEWUP4bxfL_ltoLvc_zc3Cea82IN-XBA59vz3jfTyXStJb3ttsF3cQGjcShQZYPJQZtK/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Introduction to VR and AR programming]&lt;br /&gt;
&lt;br /&gt;
===2016===&lt;br /&gt;
* Comunicazione real-time con WebRTC ([[Media:webrtc-metoditlc-decicco.pdf | Slides ]])&lt;br /&gt;
&lt;br /&gt;
====2015====&lt;br /&gt;
* Realizzazione di un osservatore di stato basato su filtro di Kalman per la stima della capacità del canale di trasmissione. Contattare [http://c3lab.poliba.it/index.php?title=GaetanoCarlucci Gaetano Carlucci ] per ricevere il materiale necessario.&lt;br /&gt;
* Studio di sistemi di video streaming DASH/HLS utilizzando HTTP2 o QUIC volto alla riduzione del delay utilizzando [https://github.com/ldecicco/tapas TAPAS ]&lt;br /&gt;
* Progettazione di un controllore per l’ adattamento del bitrate in un sistema di video streaming adattativo DASH/HLS utilizzando [https://github.com/ldecicco/tapas TAPAS ] - Documentazione: [https://github.com/ldecicco/tapas/tree/master/docs/sphinx Tapas documentation]&lt;br /&gt;
* Implementazione di un testbed SDN emulato mediante [http://mininet.org/ mininet] per realizzare un piano di controllo per una piattaforma di video streaming adattativo - Documentazione: [http://mininet.org/walkthrough/ mininet walkthrough ]&lt;br /&gt;
* Stabilizzazione dei movimenti di un visore stereoscopico. Link utili: [http://threejs.org/examples/#webgl_video_panorama_equirectangular Threejs demo]&lt;br /&gt;
* Trasmissione sicura tra laptop usando oscillatori caotici. Link utili: [ ]&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=6731</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=6731"/>
				<updated>2018-10-04T13:30:07Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand {&lt;br /&gt;
margin: 0;&lt;br /&gt;
padding: 2px 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand &amp;gt; img{&lt;br /&gt;
max-height: 48px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #283d78;&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
    background-color: #80a5c5;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
h3 {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=6730</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=6730"/>
				<updated>2018-10-04T13:25:30Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/*&lt;br /&gt;
.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand {&lt;br /&gt;
margin: 0;&lt;br /&gt;
padding: 2px 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand &amp;gt; img{&lt;br /&gt;
max-height: 48px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #283d78;&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
    background-color: #80a5c5;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
h3 {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
*/&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=6729</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=6729"/>
				<updated>2018-10-04T13:18:43Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand {&lt;br /&gt;
margin: 0;&lt;br /&gt;
padding: 2px 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand &amp;gt; img{&lt;br /&gt;
max-height: 48px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #283d78;&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
    background-color: #80a5c5;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
h3 {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=6728</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=6728"/>
				<updated>2018-10-04T13:07:53Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Gli stili CSS inseriti qui si applicano a tutte le skin */&lt;br /&gt;
&lt;br /&gt;
#firstHeading{&lt;br /&gt;
  display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand {&lt;br /&gt;
margin: 0;&lt;br /&gt;
padding: 2px 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand &amp;gt; img{&lt;br /&gt;
max-height: 48px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #283d78;&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
    background-color: #80a5c5;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
h3 {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
*/&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=Adaptive_Live_Video_Streaming&amp;diff=6686</id>
		<title>Adaptive Live Video Streaming</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=Adaptive_Live_Video_Streaming&amp;diff=6686"/>
				<updated>2018-01-18T21:53:19Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* Big Buck Bunny (4K) with ELASTIC Adaptive Streaming */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Adaptive Live Video Streaming=&lt;br /&gt;
&lt;br /&gt;
'''Adaptive live streaming''' represents a key advancement with respect to classic progressive download streaming such as the one employed by YouTube.&lt;br /&gt;
With adaptive streaming the video source bit-rate is automatically adapted in real-time  to match the  time-varying bandwidth available  to the user who can experience the maximum quality.&lt;br /&gt;
&lt;br /&gt;
{{Panel|type=primary|icon=wrench|title=Cisco Award|body=&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&amp;lt;img src=&amp;quot;http://www.caronprogram.com/sites/default/files/sponsor_logos/silicon-valley_new_0.gif&amp;quot; alt=&amp;quot;Smiley face&amp;quot; width=&amp;quot;150&amp;quot; &amp;gt; &amp;lt;/img&amp;gt; &lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt; Cisco  Award 2013 &amp;lt;/b&amp;gt; Funded by &amp;quot;Cisco University Research Program&amp;quot; managed by the Silicon Valley Community Foundation.&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Principal investigator: &amp;lt;b&amp;gt; S. Mascolo &amp;lt;/b&amp;gt; &amp;lt;/li&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Title: &amp;lt;b&amp;gt;Architecture for Robust and Efficient Control of Dynamic Adaptive Video Streaming over HTTP.&amp;lt;/b&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;March 2013&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The following videos are distributed by employing a prototype implementation of the control algorithm described in the paper: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;L. De Cicco, V. Caldaralo, V. Palmisano, and S. Mascolo&amp;quot; conference=&amp;quot;Proc. of Packet Video Workshop 2013&amp;quot; place=&amp;quot;San Jose, CA, USA&amp;quot; date=&amp;quot;December 2013&amp;quot; pdf=&amp;quot;elastic-pv2013.pdf&amp;quot; slides=&amp;quot;elastic-slides.pdf&amp;quot;&amp;gt;&lt;br /&gt;
ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)&lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The video source is adapted by following the stream-switching (or multiple bit-rate) approach: the video source is available at different bit-rates and resolutions and a controller switches from one video version to match the available bandwidth while avoiding playback interruptions and re-buffering events. The figure below shows the architecture of the  adaptive video streaming service that we have designed.&lt;br /&gt;
&lt;br /&gt;
[[Immagine:AdaptiveStreamingArchitecture.jpg|center|''Adaptive Streaming Architecture'']]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-warning&amp;quot; role=&amp;quot;alert&amp;quot;&amp;gt;&lt;br /&gt;
''Requirements'': &lt;br /&gt;
* In order to experience the maximum quality (720p) a dual core 2.4GHz processor or better is recommended.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Big Buck Bunny (4K) with ELASTIC Adaptive Streaming==&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;iframe width=&amp;quot;960&amp;quot; height=&amp;quot;540&amp;quot; src=&amp;quot;https://quavstreams.quavlive.com/embed/5a5c7933d3c3370019c7312f&amp;quot; frameborder=&amp;quot;0&amp;quot; scrolling=&amp;quot;no&amp;quot; marginwidth=&amp;quot;0&amp;quot; allowfullscreen mozallowfullscreen webkitallowfullscreen oallowfullscreen msallowfullscreen&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=Adaptive_Live_Video_Streaming&amp;diff=6685</id>
		<title>Adaptive Live Video Streaming</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=Adaptive_Live_Video_Streaming&amp;diff=6685"/>
				<updated>2018-01-18T21:50:53Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* Big Buck Bunny (4K) with Elastic Adaptive Streaming */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Adaptive Live Video Streaming=&lt;br /&gt;
&lt;br /&gt;
'''Adaptive live streaming''' represents a key advancement with respect to classic progressive download streaming such as the one employed by YouTube.&lt;br /&gt;
With adaptive streaming the video source bit-rate is automatically adapted in real-time  to match the  time-varying bandwidth available  to the user who can experience the maximum quality.&lt;br /&gt;
&lt;br /&gt;
{{Panel|type=primary|icon=wrench|title=Cisco Award|body=&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&amp;lt;img src=&amp;quot;http://www.caronprogram.com/sites/default/files/sponsor_logos/silicon-valley_new_0.gif&amp;quot; alt=&amp;quot;Smiley face&amp;quot; width=&amp;quot;150&amp;quot; &amp;gt; &amp;lt;/img&amp;gt; &lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt; Cisco  Award 2013 &amp;lt;/b&amp;gt; Funded by &amp;quot;Cisco University Research Program&amp;quot; managed by the Silicon Valley Community Foundation.&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Principal investigator: &amp;lt;b&amp;gt; S. Mascolo &amp;lt;/b&amp;gt; &amp;lt;/li&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Title: &amp;lt;b&amp;gt;Architecture for Robust and Efficient Control of Dynamic Adaptive Video Streaming over HTTP.&amp;lt;/b&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;March 2013&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The following videos are distributed by employing a prototype implementation of the control algorithm described in the paper: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;L. De Cicco, V. Caldaralo, V. Palmisano, and S. Mascolo&amp;quot; conference=&amp;quot;Proc. of Packet Video Workshop 2013&amp;quot; place=&amp;quot;San Jose, CA, USA&amp;quot; date=&amp;quot;December 2013&amp;quot; pdf=&amp;quot;elastic-pv2013.pdf&amp;quot; slides=&amp;quot;elastic-slides.pdf&amp;quot;&amp;gt;&lt;br /&gt;
ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)&lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The video source is adapted by following the stream-switching (or multiple bit-rate) approach: the video source is available at different bit-rates and resolutions and a controller switches from one video version to match the available bandwidth while avoiding playback interruptions and re-buffering events. The figure below shows the architecture of the  adaptive video streaming service that we have designed.&lt;br /&gt;
&lt;br /&gt;
[[Immagine:AdaptiveStreamingArchitecture.jpg|center|''Adaptive Streaming Architecture'']]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-warning&amp;quot; role=&amp;quot;alert&amp;quot;&amp;gt;&lt;br /&gt;
''Requirements'': &lt;br /&gt;
* In order to experience the maximum quality (720p) a dual core 2.4GHz processor or better is recommended.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Big Buck Bunny (4K) with ELASTIC Adaptive Streaming==&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;iframe width=&amp;quot;854&amp;quot; height=&amp;quot;480&amp;quot; src=&amp;quot;https://quavstreams.quavlive.com/embed/5a5c7933d3c3370019c7312f&amp;quot; frameborder=&amp;quot;0&amp;quot; scrolling=&amp;quot;no&amp;quot; marginwidth=&amp;quot;0&amp;quot; allowfullscreen mozallowfullscreen webkitallowfullscreen oallowfullscreen msallowfullscreen&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=Adaptive_Live_Video_Streaming&amp;diff=6684</id>
		<title>Adaptive Live Video Streaming</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=Adaptive_Live_Video_Streaming&amp;diff=6684"/>
				<updated>2018-01-18T21:50:00Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* Tears of Steel (4K) Adaptive Streaming */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Adaptive Live Video Streaming=&lt;br /&gt;
&lt;br /&gt;
'''Adaptive live streaming''' represents a key advancement with respect to classic progressive download streaming such as the one employed by YouTube.&lt;br /&gt;
With adaptive streaming the video source bit-rate is automatically adapted in real-time  to match the  time-varying bandwidth available  to the user who can experience the maximum quality.&lt;br /&gt;
&lt;br /&gt;
{{Panel|type=primary|icon=wrench|title=Cisco Award|body=&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&amp;lt;img src=&amp;quot;http://www.caronprogram.com/sites/default/files/sponsor_logos/silicon-valley_new_0.gif&amp;quot; alt=&amp;quot;Smiley face&amp;quot; width=&amp;quot;150&amp;quot; &amp;gt; &amp;lt;/img&amp;gt; &lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt; Cisco  Award 2013 &amp;lt;/b&amp;gt; Funded by &amp;quot;Cisco University Research Program&amp;quot; managed by the Silicon Valley Community Foundation.&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Principal investigator: &amp;lt;b&amp;gt; S. Mascolo &amp;lt;/b&amp;gt; &amp;lt;/li&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Title: &amp;lt;b&amp;gt;Architecture for Robust and Efficient Control of Dynamic Adaptive Video Streaming over HTTP.&amp;lt;/b&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;March 2013&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The following videos are distributed by employing a prototype implementation of the control algorithm described in the paper: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;L. De Cicco, V. Caldaralo, V. Palmisano, and S. Mascolo&amp;quot; conference=&amp;quot;Proc. of Packet Video Workshop 2013&amp;quot; place=&amp;quot;San Jose, CA, USA&amp;quot; date=&amp;quot;December 2013&amp;quot; pdf=&amp;quot;elastic-pv2013.pdf&amp;quot; slides=&amp;quot;elastic-slides.pdf&amp;quot;&amp;gt;&lt;br /&gt;
ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)&lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The video source is adapted by following the stream-switching (or multiple bit-rate) approach: the video source is available at different bit-rates and resolutions and a controller switches from one video version to match the available bandwidth while avoiding playback interruptions and re-buffering events. The figure below shows the architecture of the  adaptive video streaming service that we have designed.&lt;br /&gt;
&lt;br /&gt;
[[Immagine:AdaptiveStreamingArchitecture.jpg|center|''Adaptive Streaming Architecture'']]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-warning&amp;quot; role=&amp;quot;alert&amp;quot;&amp;gt;&lt;br /&gt;
''Requirements'': &lt;br /&gt;
* In order to experience the maximum quality (720p) a dual core 2.4GHz processor or better is recommended.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Big Buck Bunny (4K) with Elastic Adaptive Streaming==&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;iframe width=&amp;quot;854&amp;quot; height=&amp;quot;480&amp;quot; src=&amp;quot;https://quavstreams.quavlive.com/embed/5a5c7933d3c3370019c7312f&amp;quot; frameborder=&amp;quot;0&amp;quot; scrolling=&amp;quot;no&amp;quot; marginwidth=&amp;quot;0&amp;quot; allowfullscreen mozallowfullscreen webkitallowfullscreen oallowfullscreen msallowfullscreen&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=Adaptive_Live_Video_Streaming&amp;diff=6683</id>
		<title>Adaptive Live Video Streaming</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=Adaptive_Live_Video_Streaming&amp;diff=6683"/>
				<updated>2018-01-18T21:49:16Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Adaptive Live Video Streaming=&lt;br /&gt;
&lt;br /&gt;
'''Adaptive live streaming''' represents a key advancement with respect to classic progressive download streaming such as the one employed by YouTube.&lt;br /&gt;
With adaptive streaming the video source bit-rate is automatically adapted in real-time  to match the  time-varying bandwidth available  to the user who can experience the maximum quality.&lt;br /&gt;
&lt;br /&gt;
{{Panel|type=primary|icon=wrench|title=Cisco Award|body=&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&amp;lt;img src=&amp;quot;http://www.caronprogram.com/sites/default/files/sponsor_logos/silicon-valley_new_0.gif&amp;quot; alt=&amp;quot;Smiley face&amp;quot; width=&amp;quot;150&amp;quot; &amp;gt; &amp;lt;/img&amp;gt; &lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt; Cisco  Award 2013 &amp;lt;/b&amp;gt; Funded by &amp;quot;Cisco University Research Program&amp;quot; managed by the Silicon Valley Community Foundation.&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Principal investigator: &amp;lt;b&amp;gt; S. Mascolo &amp;lt;/b&amp;gt; &amp;lt;/li&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Title: &amp;lt;b&amp;gt;Architecture for Robust and Efficient Control of Dynamic Adaptive Video Streaming over HTTP.&amp;lt;/b&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;March 2013&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The following videos are distributed by employing a prototype implementation of the control algorithm described in the paper: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;L. De Cicco, V. Caldaralo, V. Palmisano, and S. Mascolo&amp;quot; conference=&amp;quot;Proc. of Packet Video Workshop 2013&amp;quot; place=&amp;quot;San Jose, CA, USA&amp;quot; date=&amp;quot;December 2013&amp;quot; pdf=&amp;quot;elastic-pv2013.pdf&amp;quot; slides=&amp;quot;elastic-slides.pdf&amp;quot;&amp;gt;&lt;br /&gt;
ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)&lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The video source is adapted by following the stream-switching (or multiple bit-rate) approach: the video source is available at different bit-rates and resolutions and a controller switches from one video version to match the available bandwidth while avoiding playback interruptions and re-buffering events. The figure below shows the architecture of the  adaptive video streaming service that we have designed.&lt;br /&gt;
&lt;br /&gt;
[[Immagine:AdaptiveStreamingArchitecture.jpg|center|''Adaptive Streaming Architecture'']]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-warning&amp;quot; role=&amp;quot;alert&amp;quot;&amp;gt;&lt;br /&gt;
''Requirements'': &lt;br /&gt;
* In order to experience the maximum quality (720p) a dual core 2.4GHz processor or better is recommended.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tears of Steel (4K) Adaptive Streaming==&lt;br /&gt;
&amp;lt;absHTML&amp;gt;&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;iframe width=&amp;quot;854&amp;quot; height=&amp;quot;480&amp;quot; src=&amp;quot;https://quavstreams.quavlive.com/embed/5a5c7933d3c3370019c7312f&amp;quot; frameborder=&amp;quot;0&amp;quot; scrolling=&amp;quot;no&amp;quot; marginwidth=&amp;quot;0&amp;quot; allowfullscreen mozallowfullscreen webkitallowfullscreen oallowfullscreen msallowfullscreen&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&amp;lt;/absHTML&amp;gt;&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6656</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6656"/>
				<updated>2017-11-24T17:17:16Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* 2017 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer. Particolare enfasi è riservato a casi di studio di corrente interesse applicativo.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
L'esame comprende una prova scritta, una prova orale in cui si discutono   3 articoli scientifici a scelta tra quelli studiati durante il corso e un tema d'anno. Il voto finale è la media della prova scriita, della prova orale e del tema d'anno.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2016/17===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman.  Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2015/16===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui casi di studio ===&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)] (si veda anche [http://c3lab.poliba.it/images/b/b1/Acc2015.pdf &amp;quot;Characterizing Adaptive Video Streaming Control Systems&amp;quot;] per il modello del playout buffer)&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/0/0c/Page_rank.pdf Page Rank],&lt;br /&gt;
* [[Media:Web_Information_Retrieval.pdf | A Survey of Eigenvector Methods of Web Information Retrieval]]&lt;br /&gt;
* [[Media:tcp_mathis.pdf | The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm]]&lt;br /&gt;
* [http://www.summarization.com/~radev/767w10/papers/Week06/TextRepresentation/Halevy.pdf The unreasonable effectiveness of data]&lt;br /&gt;
* [https://www.dartmouth.edu/~matc/MathDrama/reading/Wigner.html The unreasonable effectiveness of Mathematics in the Natural Sciences]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
===2017===&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vROaO7j6c7UlYf64pn6s7jmscSvDefSqpojibOLhwXr5Renk4wMtjE6WybpBGAt4iJvtHhApi6tBYEM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=60000 Introduction to Docker and Kubernetes]&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vSo4MzpE_NksEWUP4bxfL_ltoLvc_zc3Cea82IN-XBA59vz3jfTyXStJb3ttsF3cQGjcShQZYPJQZtK/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Introduction to VR and AR programming]&lt;br /&gt;
&lt;br /&gt;
===2016===&lt;br /&gt;
* Comunicazione real-time con WebRTC ([[Media:webrtc-metoditlc-decicco.pdf | Slides ]])&lt;br /&gt;
&lt;br /&gt;
====2015====&lt;br /&gt;
* Realizzazione di un osservatore di stato basato su filtro di Kalman per la stima della capacità del canale di trasmissione. Contattare [http://c3lab.poliba.it/index.php?title=GaetanoCarlucci Gaetano Carlucci ] per ricevere il materiale necessario.&lt;br /&gt;
* Studio di sistemi di video streaming DASH/HLS utilizzando HTTP2 o QUIC volto alla riduzione del delay utilizzando [https://github.com/ldecicco/tapas TAPAS ]&lt;br /&gt;
* Progettazione di un controllore per l’ adattamento del bitrate in un sistema di video streaming adattativo DASH/HLS utilizzando [https://github.com/ldecicco/tapas TAPAS ] - Documentazione: [https://github.com/ldecicco/tapas/tree/master/docs/sphinx Tapas documentation]&lt;br /&gt;
* Implementazione di un testbed SDN emulato mediante [http://mininet.org/ mininet] per realizzare un piano di controllo per una piattaforma di video streaming adattativo - Documentazione: [http://mininet.org/walkthrough/ mininet walkthrough ]&lt;br /&gt;
* Stabilizzazione dei movimenti di un visore stereoscopico. Link utili: [http://threejs.org/examples/#webgl_video_panorama_equirectangular Threejs demo]&lt;br /&gt;
* Trasmissione sicura tra laptop usando oscillatori caotici. Link utili: [ ]&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6655</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=6655"/>
				<updated>2017-11-23T12:23:07Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* 2017 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer. Particolare enfasi è riservato a casi di studio di corrente interesse applicativo.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
L'esame comprende una prova scritta, una prova orale in cui si discutono   3 articoli scientifici a scelta tra quelli studiati durante il corso e un tema d'anno. Il voto finale è la media della prova scriita, della prova orale e del tema d'anno.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2016/17===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman.  Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2015/16===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. PageRank. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari. &lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
 &lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui casi di studio ===&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)] (si veda anche [http://c3lab.poliba.it/images/b/b1/Acc2015.pdf &amp;quot;Characterizing Adaptive Video Streaming Control Systems&amp;quot;] per il modello del playout buffer)&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/0/0c/Page_rank.pdf Page Rank],&lt;br /&gt;
* [[Media:Web_Information_Retrieval.pdf | A Survey of Eigenvector Methods of Web Information Retrieval]]&lt;br /&gt;
* [[Media:tcp_mathis.pdf | The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm]]&lt;br /&gt;
* [http://www.summarization.com/~radev/767w10/papers/Week06/TextRepresentation/Halevy.pdf The unreasonable effectiveness of data]&lt;br /&gt;
* [https://www.dartmouth.edu/~matc/MathDrama/reading/Wigner.html The unreasonable effectiveness of Mathematics in the Natural Sciences]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
===2017===&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vROaO7j6c7UlYf64pn6s7jmscSvDefSqpojibOLhwXr5Renk4wMtjE6WybpBGAt4iJvtHhApi6tBYEM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=60000 Introduction to Docker]&lt;br /&gt;
* [https://docs.google.com/presentation/d/e/2PACX-1vSo4MzpE_NksEWUP4bxfL_ltoLvc_zc3Cea82IN-XBA59vz3jfTyXStJb3ttsF3cQGjcShQZYPJQZtK/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Introduction to VR and AR programming]&lt;br /&gt;
&lt;br /&gt;
===2016===&lt;br /&gt;
* Comunicazione real-time con WebRTC ([[Media:webrtc-metoditlc-decicco.pdf | Slides ]])&lt;br /&gt;
&lt;br /&gt;
====2015====&lt;br /&gt;
* Realizzazione di un osservatore di stato basato su filtro di Kalman per la stima della capacità del canale di trasmissione. Contattare [http://c3lab.poliba.it/index.php?title=GaetanoCarlucci Gaetano Carlucci ] per ricevere il materiale necessario.&lt;br /&gt;
* Studio di sistemi di video streaming DASH/HLS utilizzando HTTP2 o QUIC volto alla riduzione del delay utilizzando [https://github.com/ldecicco/tapas TAPAS ]&lt;br /&gt;
* Progettazione di un controllore per l’ adattamento del bitrate in un sistema di video streaming adattativo DASH/HLS utilizzando [https://github.com/ldecicco/tapas TAPAS ] - Documentazione: [https://github.com/ldecicco/tapas/tree/master/docs/sphinx Tapas documentation]&lt;br /&gt;
* Implementazione di un testbed SDN emulato mediante [http://mininet.org/ mininet] per realizzare un piano di controllo per una piattaforma di video streaming adattativo - Documentazione: [http://mininet.org/walkthrough/ mininet walkthrough ]&lt;br /&gt;
* Stabilizzazione dei movimenti di un visore stereoscopico. Link utili: [http://threejs.org/examples/#webgl_video_panorama_equirectangular Threejs demo]&lt;br /&gt;
* Trasmissione sicura tra laptop usando oscillatori caotici. Link utili: [ ]&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=Bootstrap:Subnav&amp;diff=5932</id>
		<title>Bootstrap:Subnav</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=Bootstrap:Subnav&amp;diff=5932"/>
				<updated>2016-01-12T17:26:16Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[C3Lab|Home]]&lt;br /&gt;
&lt;br /&gt;
* [[Mascolo|Prof. Saverio Mascolo]]&lt;br /&gt;
&lt;br /&gt;
* [[People]]&lt;br /&gt;
** [[LDC:Home|Luca De Cicco]]&lt;br /&gt;
** [[VittorioPalmisano|Vittorio Palmisano]]&lt;br /&gt;
** [[GaetanoCarlucci|Gaetano Carlucci]]&lt;br /&gt;
** [[GiuseppeCofano|Giuseppe Cofano]]&lt;br /&gt;
** [[SergioZaza|Sergio Zaza]]&lt;br /&gt;
&lt;br /&gt;
* Research&lt;br /&gt;
** [[MultimediaCC|Multimedia Congestion Control]]&lt;br /&gt;
** [[Adaptive_Live_Video_Streaming|Adaptive Live Video Streaming]]&lt;br /&gt;
** [[TCP_over_Hsdpa|TCP over HSDPA]]&lt;br /&gt;
** [[Westwood|TCP Westwood+]]&lt;br /&gt;
&lt;br /&gt;
* News&lt;br /&gt;
** [[News]]&lt;br /&gt;
** [[Awards]]&lt;br /&gt;
&lt;br /&gt;
* [[Publications]]&lt;br /&gt;
&lt;br /&gt;
* [[Teaching]]&lt;br /&gt;
** [[Students]]&lt;br /&gt;
** [[Esami]]&lt;br /&gt;
** [[Courses]]&lt;br /&gt;
** [[ArgomentiTesi|Argomenti di Tesi]]&lt;br /&gt;
&lt;br /&gt;
* [[Openings]]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MultimediaCC&amp;diff=5925</id>
		<title>MultimediaCC</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MultimediaCC&amp;diff=5925"/>
				<updated>2016-01-12T15:46:09Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* Quality Adaptation for Video Conference Applications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Research]]&lt;br /&gt;
=Congestion Control for Multimedia Applications=&lt;br /&gt;
The congestion control for multimedia applications (Voice over IP, video on demand) is an open issue. We have investigated the congestion control strategies employed by leading multimedia applications such as the WebRTC framework, currently used by Google Hangouts and Skype for VoIP We have found that both applications do not employ an efficient congestion control scheme.  We are designing, implementing and experimenting a congestion control algorithm for real-time traffic over the Web.&lt;br /&gt;
[[Immagine:WebRTCArc.jpg|center|''System Architecture'']]&lt;br /&gt;
&lt;br /&gt;
== WebRTC Congestion Control ==&lt;br /&gt;
Nowadays, the Internet is rapidly evolving to become an equally efficient platform for multimedia content delivery. Key examples  are  YouTube, Skype Audio/Video, IPTV, P2P video distribution platforms such as Coolstreaming or Joost, to name few. While YouTube streams videos using the Transmission Control Protocol (TCP), applications that are time-sensitive such as Video Conferencing employ the UDP because they can tolerate small loss percentages but not delays due to TCP recovery of losses via retransmissions. Since the UDP does not implement congestion control, these applications must implement those functionalities at the application layer. &lt;br /&gt;
In these papers we experimentally evaluate the Google Congestion Control (GCC) which has been  proposed in the RMCAT IETF WG. By setting up a controlled testbed, we have evaluated to what extent GCC flows are able to track the available bandwidth, while minimizing queuing delays, and fairly share the bottleneck with other GCC or TCP flows. We have found that the algorithm works as expected when a GCC flow accesses the bottleneck in isolation, whereas it is not able to provide a fair bandwidth utilization when a GCC flow shares the bottleneck with either a GCC or a TCP flow.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;L. De Cicco, G. Carlucci, and S. Mascolo&amp;quot; conference=&amp;quot;Packet Video Workshop&amp;quot; date=&amp;quot;2013&amp;quot; place=&amp;quot;San Jose, CA, USA&amp;quot; pdf=&amp;quot;Gcc-pv-2013.pdf&amp;quot; slides=&amp;quot;gcc-slides-pv2013.pdf&amp;quot;&amp;gt;&lt;br /&gt;
Understanding the Dynamic Behaviour of the Google Congestion Control for RTCWeb&lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;L. De Cicco, G. Carlucci, and S. Mascolo&amp;quot; conference=&amp;quot;ACM SIGCOMM 2013 Workshop on Future Human-Centric Multimedia Networking&amp;quot; place=&amp;quot;Hong Kong, China&amp;quot; date=&amp;quot;August 2013&amp;quot; pdf=&amp;quot;webrtc_cc-Fhcmn2013.pdf&amp;quot;&amp;gt;&lt;br /&gt;
Experimental Investigation of the Google Congestion Control for Real-Time Flows&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Immagine:GCCArc.png|center|1000px|''Google Congestion Control Architecture'']]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Our experimental investigation has shown that the first version of GCC gets starved when a TCP flow joins the bottleneck (see Fig. below (a)). Moreover, we have found that starvation also occurs when two coexisting GCC flows share a bottleneck (see Fig. below (b) (c)).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Immagine:GCCIssue.png|center|850px|''Google Congestion Control Fairness Issues'']]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To overcome these issues, we have proposed the adaptive threshold mechanism in the last version of the IETF draft  which sets the threshold g(i) used by the over-use detector.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;S. Holmer, H. Lundin, G. Carlucci, L. De Cicco, and S. Mascolo&amp;quot; conference=&amp;quot;IETF draft RMCAT wg&amp;quot; place=&amp;quot;draft-ietf-rmcat-gcc-01&amp;quot; date=&amp;quot;Oct 2015&amp;quot; url=&amp;quot;https://tools.ietf.org/html/draft-ietf-rmcat-gcc-01&amp;quot;&amp;gt;&lt;br /&gt;
A Google Congestion Control Algorithm for Real-Time Communication                  &lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot; Gaetano Carlucci, Luca De Cicco,Saverio Mascolo&amp;quot; conference=&amp;quot;Proc. of 53rd IEEE Conference on Decision and Control&amp;quot; place=&amp;quot;Los Angeles, California, USA&amp;quot; date=&amp;quot;December 2014&amp;quot; pdf=&amp;quot;gcc-cdc-2014.pdf&amp;quot;&amp;gt;&lt;br /&gt;
Modelling and Control for Web Real-Time Communication&lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Fig. below (b) shows that the introduction of the adaptive threshold eliminates the starvation of a GCC flow in the presence of a TCP flow.  Fig. below (d) show similar results &lt;br /&gt;
in the case of two coexisting GCC flows. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Skype Video Congestion Control Responsiveness to Bandwidth Variations  ==&lt;br /&gt;
This paper investigates Skype Video in order to discover at what extent this application is able to throttle its sending rate to match the unpredictable Internet bandwidth while preserving resource for co-existing best-effort TCP traffic.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;L. De Cicco, S. Mascolo, V. Palmisano&amp;quot; date=&amp;quot;May, 2008&amp;quot; pdf=&amp;quot;skype-video_nossdav08.pdf&amp;quot; conference=&amp;quot;ACM NOSSDAV '08&amp;quot; place=&amp;quot;Braunschweig, Germany&amp;quot;&amp;gt;&lt;br /&gt;
Skype Video Responsiveness to Bandwidth Variations&lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Skype VoIP Congestion Control ==&lt;br /&gt;
Skype is the most popular VoIP application with over 250 million userbase spread all over the world. It is important to study how skype reacts to packet losses in order to infer if a huge amount of skype calls can result in a congestion collapse.&lt;br /&gt;
&lt;br /&gt;
Next figures summarize main findings (more can be found in the paper: &amp;quot;'''An Experimental Investigation of the Congestion Control Used by Skype VoIP'''&amp;quot; [http://c3lab.poliba.it/images/d/d2/Skype_wwic07.pdf pdf] and [http://c3lab.poliba.it/images/0/0b/Skype_wwic07_slides.pdf slides]).&lt;br /&gt;
&lt;br /&gt;
=== Skype implements some mechanism to adapt the input rate to the available bandwidth ===&lt;br /&gt;
&lt;br /&gt;
[[Immagine:skype_on_off.png|right|thumb|550px|''One Skype flow over a square waveform available bandwidth'']]&lt;br /&gt;
&lt;br /&gt;
The figure shows the sending rate, the loss rate and the available bandwidth. It can be noticed that Skype adapts its sending rate when the available bandwidth decreases but this adaptation  takes 40s, thus leading to high packet loss rates.&lt;br /&gt;
&lt;br /&gt;
=== Skype adapts to the available bandwidth very slowly ===&lt;br /&gt;
&lt;br /&gt;
For the before mentioned  reason Skype is not able to cope with sudden bandwidth variations as it can be seen in the next figure.&lt;br /&gt;
&lt;br /&gt;
[[Immagine:skype_on_off_highfreq.png|right|thumb|550px|''One Skype flow over a square waveform available bandwidth (higher frequency than before)'']]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Skype is not TCP friendly ===&lt;br /&gt;
Skype's response to bandwidth variation is sluggish and leads to unfriendliness with respect to TCP flows.&lt;br /&gt;
&lt;br /&gt;
[[Immagine:skype_on_TCP.png|right|thumb|550px|''One Skype flow versus one TCP flow'']]&lt;br /&gt;
&lt;br /&gt;
The Figure above shows that  TCP connection suffers a large number of timeouts.&lt;br /&gt;
&lt;br /&gt;
=== Skype is not able to guarantee fairness either ===&lt;br /&gt;
&lt;br /&gt;
Two Skype calls have been placed flowing in the same bottleneck in order to investigate if Skype's congestion control is able to guarantee fairness.&lt;br /&gt;
&lt;br /&gt;
[[Immagine:skype_vs_skype.png|right|thumb|550px|''Two Skype flows sharing the same bottleneck'']]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Apple Darwin Streaming Server Congestion Control ==&lt;br /&gt;
&lt;br /&gt;
We investigated the end-to-end quality of service (QoS)&lt;br /&gt;
that is provided by the Apple Darwin Streaming Server and&lt;br /&gt;
the Quick-Time client player in the presence of time-varying&lt;br /&gt;
available bandwidth and multiple concurrent streaming sessions.&lt;br /&gt;
&lt;br /&gt;
More can be found in the paper: '''An Experimental Investigation of the End-to-End'''&lt;br /&gt;
'''QoS of the Apple Darwin Streaming Server''' ([http://c3lab.poliba.it/images/c/c3/Darwin-cc.pdf pdf]).&lt;br /&gt;
&lt;br /&gt;
== Helix Player Congestion Control (RealPlayer by RealNetworks)==&lt;br /&gt;
We have evaluated how Helix Player behaves when available bandwidth reductions take place in order to find out how it reacts to congestion episodes. The figure below shows how the throughput of an helix connection experiences up to 30% of packet losses when another helix flow enters the link at 30s and exits at 90s. &lt;br /&gt;
[[Immagine:helix-cc.png|right|thumb|400px|''Two Helix flows sharing a bottleneck'']]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
==Relevant bibliography==&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;L. De Cicco, S. Mascolo, V. Palmisano&amp;quot; conference=&amp;quot;Computer Newtorks, Elsevier&amp;quot; place=&amp;quot;in press, doi 10.1016/j.comnet.2010.09.010&amp;quot; date=&amp;quot;2010&amp;quot;&amp;gt;&lt;br /&gt;
Skype Video Congestion Control: an Experimental Investigation&lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;L. De Cicco, S. Mascolo&amp;quot; date=&amp;quot;2010&amp;quot;  conference=&amp;quot;IEEE Transactions on Automatic Control, to appear&amp;quot;&amp;gt;&lt;br /&gt;
A Mathematical Model of the Skype VoIP Congestion Control Algorithm&lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;L. De Cicco, S. Mascolo, V. Palmisano&amp;quot; date=&amp;quot;Dec, 2008&amp;quot; pdf=&amp;quot;skype_voip_model.pdf&amp;quot; conference=&amp;quot;in Proc. of IEEE Conference on Decision and Control 2008&amp;quot; place=&amp;quot;Cancun, Mexico&amp;quot;&amp;gt;&lt;br /&gt;
A Mathematical Model of the Skype VoIP Congestion Control Algorithm&lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;L. De Cicco, S. Mascolo, V. Palmisano&amp;quot; date=&amp;quot;May, 2008&amp;quot; pdf=&amp;quot;skype-video_nossdav08.pdf&amp;quot; slides=&amp;quot;skype-video_nossdav08_slides.pdf&amp;quot;  conference=&amp;quot;NOSSDAV '08&amp;quot; place=&amp;quot;Braunschweig, Germany&amp;quot;&amp;gt;&lt;br /&gt;
Skype Video Responsiveness to Bandwidth Variations&lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;L. De Cicco, S. Mascolo, V. Palmisano&amp;quot; date=&amp;quot;May, 2008&amp;quot; pdf=&amp;quot;darwin-cc.pdf&amp;quot; conference=&amp;quot;Wired/Wireless Internet Communications (WWIC) 2008&amp;quot;&amp;gt;&lt;br /&gt;
An Experimental Investigation of the End-to-End QoS of the Apple Darwin Streaming Server&lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;L. De Cicco, S. Mascolo and V. Palmisano&amp;quot; date=&amp;quot;May, 2007&amp;quot; pdf=&amp;quot;skype_wwic07.pdf&amp;quot; slides=&amp;quot;skype_wwic07_slides.pdf&amp;quot; conference=&amp;quot;Wired/Wireless Internet Communications (WWIC) 2007&amp;quot; place=&amp;quot;Coimbra, Portugal&amp;quot; &amp;gt;&lt;br /&gt;
An Experimental Investigation of the Congestion Control Used by Skype VoIP&lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;paper authors=&amp;quot;L.A. Grieco, S. Mascolo,&amp;quot; conference=&amp;quot;ACM Multimedia Systems Journal, Regular paper&amp;quot; date=&amp;quot;Jun. 2004&amp;quot; place=&amp;quot;Volume 9, Issue 6, pp. 517 - 532&amp;quot; &amp;gt;&lt;br /&gt;
Adaptive Rate Control for Streaming Flows over the Internet&lt;br /&gt;
&amp;lt;/paper&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{MantainedLDC}}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5853</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5853"/>
				<updated>2015-11-24T16:24:17Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Gli stili CSS inseriti qui si applicano a tutte le skin */&lt;br /&gt;
&lt;br /&gt;
.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand {&lt;br /&gt;
margin: 0;&lt;br /&gt;
padding: 2px 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand &amp;gt; img{&lt;br /&gt;
max-height: 48px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #283d78;&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
    background-color: #80a5c5;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
h3 {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5852</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5852"/>
				<updated>2015-11-24T16:23:50Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Gli stili CSS inseriti qui si applicano a tutte le skin */&lt;br /&gt;
&lt;br /&gt;
.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand {&lt;br /&gt;
margin: 0;&lt;br /&gt;
padding: 2px 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand &amp;gt; img{&lt;br /&gt;
max-height: 48px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #283d78;&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
    background-color: #80a5c5;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
h3 {&lt;br /&gt;
    font-weight: 400;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=5851</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=5851"/>
				<updated>2015-11-24T13:35:24Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* 2015 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
Prova scritta e  orale con la discussione di 3 articoli scientifici a scelta tra quelli studiati durante il corso.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
Mailing list:&lt;br /&gt;
metodi_di_controllo@googlegroups.com&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui CASI di Studio ===&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3d/Elastic-slides.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)]&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
====2015====&lt;br /&gt;
* Realizzazione di un osservatore di stato basato su filtro di Kalman per la stima della capacità del canale di trasmissione. Contattare [http://c3lab.poliba.it/index.php?title=GaetanoCarlucci Gaetano Carlucci ] per ricevere il materiale necessario.&lt;br /&gt;
* Studio di sistemi di video streaming DASH/HLS utilizzando HTTP2 o QUIC volto alla riduzione del delay utilizzando [https://github.com/ldecicco/tapas TAPAS ]&lt;br /&gt;
* Progettazione di un controllore per l’ adattamento del bitrate in un sistema di video streaming adattativo DASH/HLS utilizzando [https://github.com/ldecicco/tapas TAPAS ] - Documentazione: [https://github.com/ldecicco/tapas/tree/master/docs/sphinx Tapas documentation]&lt;br /&gt;
* Implementazione di un testbed SDN emulato mediante [http://mininet.org/ mininet] per realizzare un piano di controllo per una piattaforma di video streaming adattativo - Documentazione: [http://mininet.org/walkthrough/ mininet walkthrough ]&lt;br /&gt;
* Stabilizzazione dei movimenti di un visore stereoscopico. Link utili: [http://threejs.org/examples/#webgl_video_panorama_equirectangular Threejs demo]&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Programma ==&lt;br /&gt;
Il programma del corso e' consultabile [[MetodiDiControllo:Programma | qui ]]&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=5823</id>
		<title>MetodiDiControllo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MetodiDiControllo&amp;diff=5823"/>
				<updated>2015-10-26T08:46:06Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: /* 2013 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mascolo}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Programma di Metodi di Controlli nei Sistemi di Elaborazione e di Telecomunicazione (6 crediti) ==&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
==Modalità di esame ==&lt;br /&gt;
Prova scritta e  orale con la discussione di 3 articoli scientifici a scelta tra quelli studiati durante il corso.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2014/15===&lt;br /&gt;
Mailing list:&lt;br /&gt;
metodi_di_controllo@googlegroups.com&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Il filtro di Kalman. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+.   Il  video streaming adattivo.  Il controllo di congestion per WebRTC di Google. Controllo attivo delle code (AQM).  Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Laurea Magistrale in Ingegneria  Informatica  A.A. 2013/14===&lt;br /&gt;
&lt;br /&gt;
Il corso ha l’obiettivo di integrare le conoscenze fornite nei corsi di Fondamenti di Automatica I e Fondamenti di Automatica II con tecniche di controllo di particolare interesse nel campo delle reti di computer.&lt;br /&gt;
&lt;br /&gt;
===Programma===&lt;br /&gt;
Descrizione nello spazio degli Stati. Realizzazione. Osservabilità e Controllabilità. Retroazione di stato. Osservatore di stato. Retroazione e osservatore: sintesi del regolatore ed esempi. Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori. Tecniche di controllo non lineare. Definizione di stabilita' dello stato di equilibrio alla Lyapunov. Forme quadratiche. Equazione di Lyapunov. Criteri di stabilita' diretto e indiretto (mediante linearizzazione) dello stato di equilibrio. Il controllo di congestione nella rete Internet. Smith predictor e controllo di congestione.Controllo rate-base e window based. Il TCP friendly rate control (2 ore). TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps. Il  video streaming adattivo.  Il controllo in retroazione per la qualità del servizio su reti IEEE 802.11. Controllo attivo delle code. I sistemi peer-to-peer . Il controllo di congestione in Skype. PageRank. Il controllo di congestione nel kernel di Linux. WebRTC. Esperimenti di laboratorio con con software di simulazione. Caso di studio: la WebTV del Politecnico di Bari.&lt;br /&gt;
&lt;br /&gt;
===Testi di rferimento ===&lt;br /&gt;
*Appunti dalle lezioni&lt;br /&gt;
*Articoli&lt;br /&gt;
*J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004&lt;br /&gt;
*Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 &lt;br /&gt;
*Slotine, Nonlinear applied control, Prenhall&lt;br /&gt;
&lt;br /&gt;
=== Materiale di approfondimento sui CASI di Studio ===&lt;br /&gt;
* [[Media:AQM-HOLLOT.pdf | Linearizzazione AQM]],&lt;br /&gt;
* [[Media:automatica.pdf | smith predictor TCP]],&lt;br /&gt;
* [[Media:CasOct97.pdf | sincronizzazione con osservatore]],&lt;br /&gt;
* [[Media:CasSep99.pdf | sincronizzazione +  osservatore + crittografia]],&lt;br /&gt;
* [[Media:Mobi2001.pdf | TCP Westwood]],&lt;br /&gt;
* [[Media:ccr_v31.pdf | TCP Westwood+]],&lt;br /&gt;
* [[Media:MMSYS2011.pdf | Adaptive streaming]],&lt;br /&gt;
* [[Media:vanjacobson.pdf |TCP Van Jacobson]],&lt;br /&gt;
* [[Media:automatica.pdf | Congestion control in high-speed communication networks using the Smith principle]],&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3d/Elastic-slides.pdf ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)]&lt;br /&gt;
* [http://c3lab.poliba.it/images/b/b7/Skype_comnet.pdf Skype Video Congestion Control: an Experimental Investigation]&lt;br /&gt;
* [http://c3lab.poliba.it/images/9/9b/Skype-tac10.pdf A Mathematical Model of the Skype VoIP Congestion Control Algorithm]&lt;br /&gt;
&lt;br /&gt;
* [http://c3lab.poliba.it/images/3/3f/Avs_tnet_decicco_mascolo.pdf An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation]&lt;br /&gt;
* [[Media:contrecc.pdf | Using control theory for reccomender system]],&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Articoli, Esercitazioni, Temi d'Anno===&lt;br /&gt;
&lt;br /&gt;
====2014====&lt;br /&gt;
&lt;br /&gt;
* [http://pv2013.itec.aau.at/wp-content/uploads/2013/12/Gaedtke.pdf QoE in Large-Scale Video Networks]&lt;br /&gt;
&lt;br /&gt;
====2013====&lt;br /&gt;
* [http://tech.ebu.ch/docs/events/webinar043-mpeg-dash/presentations/ebu_mpeg-dash_webinar043.pdf MPEG's Dynamic Adaptive Streaming over HTTP (DASH) - Enabling Formats for Video Streaming over the Open Internet]&lt;br /&gt;
* [http://issuu.com/andruby/docs/http_live_streaming_presentatino HTTP Live Streaming presentation]&lt;br /&gt;
* [http://brettviren.github.io/pygst-tutorial-org/pygst-tutorial.pdf Python GStreamer tutorial]&lt;br /&gt;
* [[Media:python_web.pdf | Programmazione di rete con Python: le librerie Django e Twisted]],&lt;br /&gt;
* [https://docs.google.com/presentation/d/14w2U1Pp5GLLgGbtSHfzisHhenjDPqccxwfgCLu41KKM/pub?start=false&amp;amp;loop=false&amp;amp;delayms=3000 Esercitazione su GStreamer]&lt;br /&gt;
&lt;br /&gt;
====2007====&lt;br /&gt;
* [[Media:net_testing.pdf | Linux Network Testing: Introduzione agli strumenti per il testing di rete su Linux (6,13 Novembre 2007)]], [http://c3lab.poliba.it/downloads/mdc/net_testing_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
* Pacchetti Debian per [http://www.web100.org/ Web100]: &lt;br /&gt;
** Immagine del kernel 2.6.22: [http://c3lab.poliba.it/downloads/mdc/linux-image-2.6.22-web100_1_i386.deb linux-image-2.6.22-web100_1_i386.deb]&lt;br /&gt;
** Userspace utility: [http://c3lab.poliba.it/downloads/mdc/web100-userland_1.6-1_i386.deb web100-userland_1.6-1_i386.deb]&lt;br /&gt;
* [[Media:linux_kernel_intro.pdf | Linux Kernel: introduzione, kernel modules e infrastruttura del Congestion Control  (23,30 Ottobre 2007)]], [http://c3lab.poliba.it/downloads/mdc/linux_kernel_examples.tar.bz2 sorgenti degli esempi ]&lt;br /&gt;
&lt;br /&gt;
====2006====&lt;br /&gt;
* [[LorenzLab | Laboratorio del 3/02/06]]: Script in matlab sull'attrattore di Lorenz&lt;br /&gt;
&lt;br /&gt;
== Programma ==&lt;br /&gt;
Il programma del corso e' consultabile [[MetodiDiControllo:Programma | qui ]]&lt;br /&gt;
== Temi di esame == &lt;br /&gt;
* [[Media:metodi_01.pdf | Esame del 27-02-2008]]&lt;br /&gt;
* [[Media:metodi_02.pdf | Esame del 14-02-2011]]&lt;br /&gt;
* [[Media:metodi_03.pdf | Esame del 05-05-2011]]&lt;br /&gt;
&lt;br /&gt;
== Temi d'anno ==&lt;br /&gt;
&lt;br /&gt;
=== Testing comparativo di TCP Stacks ===&lt;br /&gt;
L'obiettivo è lo studio delle performance dei diversi TCP Stacks disponibili sui seguenti sistemi operativi:&lt;br /&gt;
&lt;br /&gt;
*Linux 2.6.x&lt;br /&gt;
*Linux 2.4.x&lt;br /&gt;
*FreeBSD&lt;br /&gt;
*NetBSD&lt;br /&gt;
*Windows XP&lt;br /&gt;
&lt;br /&gt;
Lo studente dovrà utilizzare applicazioni per l'auditing di reti e deve avere un background minimo sull'utilizzo di sistemi operativi GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
'''Riferimenti'''&amp;lt;br /&amp;gt; &lt;br /&gt;
*[http://www.web100.org/ Web100 website]&lt;br /&gt;
*[http://www.netkit.org/ NetKit]&lt;br /&gt;
*[http://www.faqs.org/rfcs/rfc793.html Transmission Control Protocol RFC]&lt;br /&gt;
*[[Westwood | TCP Westwood+]]&lt;br /&gt;
*[http://netlab.caltech.edu/FAST/ FAST TCP]&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=C3Lab&amp;diff=5818</id>
		<title>C3Lab</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=C3Lab&amp;diff=5818"/>
				<updated>2015-10-13T15:44:05Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
=Control of Computing and Communication Systems Lab=&lt;br /&gt;
&amp;lt;div class=&amp;quot;well well-sm&amp;quot;&amp;gt;{{Media|src=://c3lab.poliba.it/skins/common/images/c3lab.png|width=100|halign=right|valign=middle|body=The '''Control of Computing and Communication Systems''' lab focuses on the analysis and control of network systems. Example of applications are:  adaptive  video streaming, Web real time communication WebRTC, control and orchestration of CDN,  Server overload control,  SIP overload control, TCP congestion control. Control of such systems involves: non linear control, switching control, time-delay system control, optimal control, robust control.}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;well well-sm&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;i class=&amp;quot;fa fa-bullhorn&amp;quot;&amp;gt;&amp;lt;/i&amp;gt; Openings&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
We are looking for graduates, PhDs, and PostDocs to conduct research in the context of the project '''PLATform for INnOvative services in future internet'''.&lt;br /&gt;
Click [[Openings|here]] for more details on the positions.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;row&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;col-md-6&amp;quot;&amp;gt;&lt;br /&gt;
{{Panel|type=primary|icon=tags|title=Research Topics|body={{Interests}}}}&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;col-md-6&amp;quot;&amp;gt;&lt;br /&gt;
{{Panel|type=primary|icon=wrench|title=Research Projects|body={{Projects}}}}&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==News==&lt;br /&gt;
{{News}}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=C3Lab&amp;diff=5817</id>
		<title>C3Lab</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=C3Lab&amp;diff=5817"/>
				<updated>2015-10-13T15:43:42Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
=Control of Computing and Communication Systems Lab=&lt;br /&gt;
&amp;lt;div class=&amp;quot;well well-sm&amp;quot;&amp;gt;{{Media|src=://c3lab.poliba.it/skins/common/images/c3lab.png|width=100|halign=right|valign=middle|body=The '''Control of Computing and Communication Systems''' lab focuses on the analysis and control of network systems. Example of applications are:  adaptive  video streaming, Web real time communication WebRTC, control and orchestration of CDN,  Server overload control,  SIP overload control, TCP congestion control. Control of such systems involves: non linear control, switching control, time-delay system control, optimal control, robust control.}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-warning&amp;quot; role=&amp;quot;alert&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;i class=&amp;quot;fa fa-bullhorn&amp;quot;&amp;gt;&amp;lt;/i&amp;gt; Openings&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
We are looking for graduates, PhDs, and PostDocs to conduct research in the context of the project '''PLATform for INnOvative services in future internet'''.&lt;br /&gt;
Click [[Openings|here]] for more details on the positions.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;row&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;col-md-6&amp;quot;&amp;gt;&lt;br /&gt;
{{Panel|type=primary|icon=tags|title=Research Topics|body={{Interests}}}}&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;col-md-6&amp;quot;&amp;gt;&lt;br /&gt;
{{Panel|type=primary|icon=wrench|title=Research Projects|body={{Projects}}}}&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==News==&lt;br /&gt;
{{News}}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5816</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5816"/>
				<updated>2015-10-13T15:40:28Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Gli stili CSS inseriti qui si applicano a tutte le skin */&lt;br /&gt;
&lt;br /&gt;
.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand {&lt;br /&gt;
margin: 0;&lt;br /&gt;
padding: 2px 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand &amp;gt; img{&lt;br /&gt;
max-height: 48px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #283d78;&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
    background-color: #80a5c5;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=C3Lab&amp;diff=5813</id>
		<title>C3Lab</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=C3Lab&amp;diff=5813"/>
				<updated>2015-10-13T15:33:59Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
=Control of Computing and Communication Systems Lab=&lt;br /&gt;
&amp;lt;div class=&amp;quot;well well-sm&amp;quot;&amp;gt;{{Media|src=://c3lab.poliba.it/skins/common/images/c3lab.png|width=100|halign=right|valign=middle|body=The '''Control of Computing and Communication Systems''' lab focuses on the analysis and control of network systems. Example of applications are:  adaptive  video streaming, Web real time communication WebRTC, control and orchestration of CDN,  Server overload control,  SIP overload control, TCP congestion control. Control of such systems involves: non linear control, switching control, time-delay system control, optimal control, robust control.}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-info&amp;quot; role=&amp;quot;alert&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;i class=&amp;quot;fa fa-bullhorn&amp;quot;&amp;gt;&amp;lt;/i&amp;gt; Openings&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
We are looking for graduates, PhDs, and PostDocs to conduct research in the context of the project '''PLATform for INnOvative services in future internet'''.&lt;br /&gt;
Click [[Openings|here]] for more details on the positions.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;row&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;col-md-6&amp;quot;&amp;gt;&lt;br /&gt;
{{Panel|type=primary|icon=tags|title=Research Topics|body={{Interests}}}}&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;col-md-6&amp;quot;&amp;gt;&lt;br /&gt;
{{Panel|type=primary|icon=wrench|title=Research Projects|body={{Projects}}}}&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==News==&lt;br /&gt;
{{News}}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=C3Lab&amp;diff=5812</id>
		<title>C3Lab</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=C3Lab&amp;diff=5812"/>
				<updated>2015-10-13T15:33:05Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
=Control of Computing and Communication Systems Lab=&lt;br /&gt;
&amp;lt;div class=&amp;quot;well well-sm&amp;quot;&amp;gt;{{Media|src=://c3lab.poliba.it/skins/common/images/c3lab.png|width=100|halign=right|valign=middle|body=The '''Control of Computing and Communication Systems''' lab focuses on the analysis and control of network systems. Example of applications are:  adaptive  video streaming, Web real time communication WebRTC, control and orchestration of CDN,  Server overload control,  SIP overload control, TCP congestion control. Control of such systems involves: non linear control, switching control, time-delay system control, optimal control, robust control.}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-default&amp;quot; role=&amp;quot;alert&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;i class=&amp;quot;fa fa-bullhorn&amp;quot;&amp;gt;&amp;lt;/i&amp;gt; Openings&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
We are looking for graduates, PhDs, and PostDocs to conduct research in the context of the project '''PLATform for INnOvative services in future internet'''.&lt;br /&gt;
Click [[Openings|here]] for more details on the positions.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;row&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;col-md-6&amp;quot;&amp;gt;&lt;br /&gt;
{{Panel|type=primary|icon=tags|title=Research Topics|body={{Interests}}}}&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;col-md-6&amp;quot;&amp;gt;&lt;br /&gt;
{{Panel|type=primary|icon=wrench|title=Research Projects|body={{Projects}}}}&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==News==&lt;br /&gt;
{{News}}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=Template:Mascolo&amp;diff=5810</id>
		<title>Template:Mascolo</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=Template:Mascolo&amp;diff=5810"/>
				<updated>2015-10-13T15:31:47Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[Immagine:Mascolo.jpg|120px|]]&lt;br /&gt;
|cellpadding=&amp;quot;10&amp;quot; width=&amp;quot;100%&amp;quot; align=&amp;quot;right&amp;quot; style=&amp;quot;color:#337ab7; font-size:18.0pt; font-weight:bold&amp;quot;|[[Mascolo|Saverio Mascolo]]&lt;br /&gt;
|-&lt;br /&gt;
|width=&amp;quot;85%&amp;quot; align=&amp;quot;right&amp;quot; style=&amp;quot;color:yellow; background:#283D78; font-weight:bold&amp;quot;|Professore Ordinario (Full Professor)&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5809</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5809"/>
				<updated>2015-10-13T15:31:05Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Gli stili CSS inseriti qui si applicano a tutte le skin */&lt;br /&gt;
&lt;br /&gt;
.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand {&lt;br /&gt;
margin: 0;&lt;br /&gt;
padding: 2px 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand &amp;gt; img{&lt;br /&gt;
max-height: 48px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #283D78;&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
    background-color: #80a5c5;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=C3Lab&amp;diff=5806</id>
		<title>C3Lab</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=C3Lab&amp;diff=5806"/>
				<updated>2015-10-07T16:15:02Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
=Control of Computing and Communication Systems Lab=&lt;br /&gt;
&amp;lt;div class=&amp;quot;well well-sm&amp;quot;&amp;gt;{{Media|src=://c3lab.poliba.it/skins/common/images/c3lab.png|width=100|halign=right|valign=middle|body=The '''Control of Computing and Communication Systems''' lab focuses on the analysis and control of network systems. Example of applications are:  adaptive  video streaming, Web real time communication WebRTC, control and orchestration of CDN,  Server overload control,  SIP overload control, TCP congestion control. Control of such systems involves: non linear control, switching control, time-delay system control, optimal control, robust control.}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-success&amp;quot; role=&amp;quot;alert&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;i class=&amp;quot;fa fa-bullhorn&amp;quot;&amp;gt;&amp;lt;/i&amp;gt; Openings&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
We are looking for graduates, PhDs, and PostDocs to conduct research in the context of the project '''PLATform for INnOvative services in future internet'''.&lt;br /&gt;
Click [[Openings|here]] for more details on the positions.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;row&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;col-md-6&amp;quot;&amp;gt;&lt;br /&gt;
{{Panel|type=primary|icon=tags|title=Research Topics|body={{Interests}}}}&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;col-md-6&amp;quot;&amp;gt;&lt;br /&gt;
{{Panel|type=primary|icon=wrench|title=Research Projects|body={{Projects}}}}&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==News==&lt;br /&gt;
{{News}}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5796</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5796"/>
				<updated>2015-09-29T12:46:03Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Gli stili CSS inseriti qui si applicano a tutte le skin */&lt;br /&gt;
&lt;br /&gt;
.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand {&lt;br /&gt;
margin: 0;&lt;br /&gt;
padding: 2px 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand &amp;gt; img{&lt;br /&gt;
max-height: 48px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #337ab7;&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
    background-color: #80a5c5;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5795</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5795"/>
				<updated>2015-09-29T12:45:20Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Gli stili CSS inseriti qui si applicano a tutte le skin */&lt;br /&gt;
&lt;br /&gt;
.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand {&lt;br /&gt;
margin: 0;&lt;br /&gt;
padding: 1px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand &amp;gt; img{&lt;br /&gt;
max-height: 48px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #337ab7;&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
    background-color: #80a5c5;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5794</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5794"/>
				<updated>2015-09-29T12:45:08Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Gli stili CSS inseriti qui si applicano a tutte le skin */&lt;br /&gt;
&lt;br /&gt;
.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand {&lt;br /&gt;
margin: 0 0 0 -15px;&lt;br /&gt;
padding: 1px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand &amp;gt; img{&lt;br /&gt;
max-height: 48px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #337ab7;&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
    background-color: #80a5c5;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5793</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5793"/>
				<updated>2015-09-29T12:44:42Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Gli stili CSS inseriti qui si applicano a tutte le skin */&lt;br /&gt;
&lt;br /&gt;
.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand {&lt;br /&gt;
margin: 0;&lt;br /&gt;
padding: 1px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand &amp;gt; img{&lt;br /&gt;
max-height: 48px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #337ab7;&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
    background-color: #80a5c5;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5792</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5792"/>
				<updated>2015-09-29T12:43:51Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Gli stili CSS inseriti qui si applicano a tutte le skin */&lt;br /&gt;
&lt;br /&gt;
.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand {&lt;br /&gt;
margin: 3px 0 3px 0;&lt;br /&gt;
padding: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
a.navbar-brand &amp;gt; img{&lt;br /&gt;
max-height: 44px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #337ab7;&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
    background-color: #80a5c5;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5791</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5791"/>
				<updated>2015-09-29T12:31:54Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Gli stili CSS inseriti qui si applicano a tutte le skin */&lt;br /&gt;
&lt;br /&gt;
.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #337ab7;&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #80a5c5;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #e8e6d3;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #e8e6d3;&lt;br /&gt;
    background-color: #80a5c5;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	<entry>
		<id>https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5790</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://c3lab.poliba.it/index.php?title=MediaWiki:Common.css&amp;diff=5790"/>
				<updated>2015-09-29T12:29:17Z</updated>
		
		<summary type="html">&lt;p&gt;VittorioPalmisano: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Gli stili CSS inseriti qui si applicano a tutte le skin */&lt;br /&gt;
&lt;br /&gt;
.pagetitle { margin: 0; }&lt;br /&gt;
.pagetitle &amp;gt; h1 { display: none; margin: 0; }&lt;br /&gt;
&lt;br /&gt;
.navbar-default {&lt;br /&gt;
  background-color: #337ab7;&lt;br /&gt;
  border-color: #dedfa7;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {&lt;br /&gt;
  color: #766a0e;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-text {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
  color: #766a0e;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-nav &amp;gt; .open &amp;gt; a, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:hover, .navbar-default .navbar-nav &amp;gt; .open &amp;gt; a:focus {&lt;br /&gt;
  color: #766a0e;&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle {&lt;br /&gt;
  border-color: #dedfa7;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-toggle .icon-bar {&lt;br /&gt;
  background-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-collapse,&lt;br /&gt;
.navbar-default .navbar-form {&lt;br /&gt;
  border-color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link {&lt;br /&gt;
  color: #ecf0f1;&lt;br /&gt;
}&lt;br /&gt;
.navbar-default .navbar-link:hover {&lt;br /&gt;
  color: #766a0e;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 767px) {&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a {&lt;br /&gt;
    color: #ecf0f1;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; li &amp;gt; a:focus {&lt;br /&gt;
    color: #766a0e;&lt;br /&gt;
  }&lt;br /&gt;
  .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:hover, .navbar-default .navbar-nav .open .dropdown-menu &amp;gt; .active &amp;gt; a:focus {&lt;br /&gt;
    color: #766a0e;&lt;br /&gt;
    background-color: #dedfa7;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>VittorioPalmisano</name></author>	</entry>

	</feed>