Via Automation - un breve tour del controllo automatico: Controllo ottimale

In questa seconda fase lasciamo la valle e saliamo un po' più in alto. Naturalmente potremmo camminare o arrampicarci, ma godiamoci una straordinaria opera ingegneristica e prendiamo una funivia.
Woman taking a photo of the mountains from a gondola cable car
Partecipanti

In precedenza abbiamo discusso le basi della regolazione, ovvero il pilotaggio di un sistema verso un punto di riferimento e il suo mantenimento in tale posizione (nel nostro esempio, come una mucca mantiene stabili i propri livelli di calcio dopo il parto). Questa è l’essenza del controllo automatico. Infatti, spostarsi da A a B può essere inteso come il pilotaggio di un sistema verso un nuovo punto di riferimento. Ma non è questo il punto centrale di questo post.

Per chiarire il nostro punto di vista, dovremmo iniziare con un piccolo esperimento. Prendete un cordino portachiavi e attaccatevi qualcosa di sufficientemente pesante, oppure mettete qualcosa di pesante in una borsa di tela. Ora, tenendo solo la parte superiore del cordino o la tracolla della borsa, cercate di muovere l'oggetto pesante verso una parete qualsiasi intorno a voi. Cosa osservate? L’oggetto ha colpito la parete? O forse siete stati molto prudenti e ci è voluto un po' di tempo prima di raggiungere la parete? Ora, se avete mai preso una funivia, avrete notato che oltre a una corsa fluida, è possibile sperimentare oscillazioni significative o movimenti apparentemente estremamente lenti.

Andare da A a B (nel nostro caso, dalla valle alla montagna) raramente è l'unica cosa che ci interessa. Potremmo anche preoccuparci della sicurezza, del comfort, dell'efficienza e così via. Inoltre, in genere dobbiamo trovare un compromesso, poiché raramente esiste un unico modo "migliore". Ancora una volta, se pensiamo alla funivia, è meglio andare lentamente se vogliamo evitare che i passeggeri possano avere nausea, ma vorremmo anche arrivare a destinazione abbastanza rapidamente e in modo efficiente dal punto di vista energetico. Allora, come scegliere una strategia adeguata?

L'integrazione di questo tipo di compromessi nel controllo automatico ci porta nel regno del controllo ottimale. Il controllo ottimale deriva dalla fisica, poiché i sistemi fisici possono essere intesi come percorsi ottimali in senso astratto. Non entreremo nei dettagli, ma l'installazione con la corsa delle biglie al Swiss Science Center Technorama una visualizzazione del "problema del la brachistocronao", proposto dal matematico svizzero Johann Bernoulli alla fine del 1600. Abbiamo una palla nel punto A e vogliamo trovare la curva che le permetta di rotolare fino al punto B nel minor tempo possibile. Si potrebbe supporre che la linea retta mostrata in verde (trattini brevi) qui sotto sia la più veloce, tuttavia si tratta di un problema di controllo geometrico ottimale (1). La soluzione al problema di Bernoulli è diversa e non sembra logica, come illustrato di seguito in verde scuro (tratti lunghi).

Graph showing a straight line going from point A to point B (light green, short dashes), with a second line showing a curved route with the line going below the X axis (dark green, long dashes)

Si tratta di un quesito a matematicoa affascinante, ma consideriamo una domanda differente che mostria non solo il percorso ottimale, ma anche alcuni compromessi, ad esempio una domanda che potrebbe sorgere durante una cena di Natale: "Perché non guidiamo a 200 km/h ovunque?" Chiaramente perché consideriamo sicurezza molto importante, ma c'è di più. Ad esempio, la resistenza dell'aria cresce in modo quadratico con la velocità, poiché la potenza è proporzionale alla forza moltiplicata per la velocità, abbiamo bisogno di 8 volte più potenza per superare la resistenza dell'aria quando raddoppiamo la velocità! Questo da solo costa molta energia in più, prima ancora di considerare altri aspetti legati al degrado alle alte velocità. Quindi, se vogliamo arrivare il più lontano possibile con un solo pieno, il consiglio è di non guidare il più velocemente possibile. Infatti, di solito esiste un intervallo ottimale di velocità di crociera  (2). Come trovare questo intervallo è una questione di ottimizzazione, come già trattato in diversi post NCCR Automation (3). 

Torniamo ora alla nostra funivia. Quando ci spostiamo verso uno dei pilastri intermedi o verso la stazione finale, non possiamo affidarci solo al controllo della posizione. Altrimenti, probabilmente ci avvicineremmo al pilastro a tutta velocità, ci fermeremmo bruscamente e inizieremmo a oscillare pesantemente. Addio al vostro rilassante inizio di giornata. Dobbiamo invece trovare un compromesso tra il controllo della posizione e quello dell'angolo, tenendo anche conto del tempo. Non possiamo muoverci troppo lentamente. Un controllo ottimale ci permette di gestire la situazione in modo sistematico.

In altre parole, miriamo a trovare un controller tale da non solo spostarci da A a B, ma da spostarci da A a B in modo ottimale.

Immagine
Cartoon showing a gondola travelling up a mountain
.

Ora, potremmo pensare alla funivia come ad un carrello su binari. Tuttavia, questo modello ignorerebbe completamente l'oscillazione della funivia. Per includere l'effetto dominante dell'oscillazione, è meglio studiare il problema della funivia attraverso un classico sistema di riferimento nel controllo automatico, il cosiddetto "pendolo su un carrello" (4). Questo sistema è relativamente semplice, ma consente di studiare molti principi fondamentali di controllo. Per noi, la caratteristica importante è che l'oscillazione della funivia è naturalmente abbinata all'oscillazione del pendolo.

Quindi, utilizzando questo modello, è possibile trovare un controller tale che la funivia (il pendolo appeso a un carrello) arrivi al pilastro con velocità angolare pari a zero e non ruoti, nel minor tempo possibile (5). Tale controller smorza le oscillazioni eccessive, ma consente comunque di arrivare a destinazione in un tempo ragionevole. È interessante notare che questa questione è di grande importanza in tutti i tipi di industrie, poiché le gru nei cantieri edili si comportano in modo simile.

Finora abbiamo seguito l'ipotesi che la fune sia rigida  (2), il che semplifica il calcolo. Tuttavia, ripensando al nostro precedente post sul feedback, gli input risultanti sono validi quando implementati sul sistema reale? Domanda legittima, soprattutto perché gli input risultanti sono tipicamente discontinui. In precedenza abbiamo solo accennato al controllo ottimale "a ciclo aperto", un nome dato ai sistemi in cui si considera solo il tempo, ma torneremo sul feedback quando discuteremo del controllo predittivo del modello (MPC) in un post successivo. Prima, prendiamo un caffè?

Man and woman drinking coffee at a mountain guest house

Riferimenti

(1) Per ulteriori osservazioni storiche relative alla situazione odierna, si veda il seguente articolo classico di Sussmann e Willems https://ieeexplore.ieee.org/document/588098

(2) Per non fare riferimento a nessun produttore in particolare, rimandiamo a Wikipedia per ulteriori dettagli:  https://en.wikipedia.org/wiki/Fuel_economy _in_automobiles

(3) Si veda ad esempio, What is gradient descent and why should I care?  , Getting optimal, why convexity matters and Unprecedented overflow, why progress in his fiels alarms Yurii Nesterov

(4) Si veda ad esempio https://ctms.engin.umich.edu/CTMS/index.php?example=InvertedPendulum&section=SystemModeling

(5) Si veda ad esempio il seguente articolo di Ermidoro e colleghi https://ieeexplore.ieee.org/document/6858939

(6) In generale, la modellizzazione di questi sistemi è tutt'altro che ovvia; solitamente si ricorre a complessi sistemi massa-molla-smorzatore, in cui la gondola stessa si comporta come un pendolo. Si veda ad esempio il seguente articolo di Brownjohn https://www.sciencedirect.com/science/article/pii/S0141029697001132