(window.webpackJsonp=window.webpackJsonp||[]).push([[9],{"/fDt":function(n,l,t){"use strict";t.r(l),function(n){function i(){var n=w(["\n \begin{cases}\n 2000A + 1000B = z\\\n 1A leq 3\\\n 1B leq 3\\\n 2A + 2B leq 7\n end{cases}\n "],["\n \\begin{cases}\n 2000A + 1000B = z\\\\\n 1A \\leq 3\\\\\n 1B \\leq 3\\\\\n 2A + 2B \\leq 7\n \\end{cases}\n "]);return i=function(){return n},n}function e(){var n=w(["z"]);return e=function(){return n},n}function a(){var n=w(["-a^- in mathbb{N}"],["-a^- \\in \\mathbb{N}"]);return a=function(){return n},n}function u(){var n=w(["a^+ in mathbb{N}"],["a^+ \\in \\mathbb{N}"]);return u=function(){return n},n}function r(){var n=w(["a in mathbb{Z}"],["a \\in \\mathbb{Z}"]);return r=function(){return n},n}function o(){var n=w(["x_j^-"]);return o=function(){return n},n}function c(){var n=w(["x_j^+"]);return c=function(){return n},n}function s(){var n=w(["x_j"]);return s=function(){return n},n}function d(){var n=w(["a + s_1 = 3"]);return d=function(){return n},n}function f(){var n=w(["a leq 3"],["a \\leq 3"]);return f=function(){return n},n}function p(){var n=w(["geq"],["\\geq"]);return p=function(){return n},n}function b(){var n=w(["leq"],["\\leq"]);return b=function(){return n},n}function m(){var n=w(["="]);return m=function(){return n},n}function v(){var n=w(["\nabla z = (2, 3, 4)"],["\\nabla z = (2, 3, 4)"]);return v=function(){return n},n}function h(){var n=w(["e_3 = (0, 0, 1)"]);return h=function(){return n},n}function z(){var n=w(["e_2 = (0, 1, 0)"]);return z=function(){return n},n}function _(){var n=w(["e_1 = (1, 0, 0)"]);return _=function(){return n},n}function g(){var n=w(["n = 3"]);return g=function(){return n},n}function q(){var n=w(["e_i"]);return q=function(){return n},n}function x(){var n=w(["\nabla f = \frac{delta f}{delta x_1} e_1 + \frac{delta f}{delta x_2} e_2 + \frac{delta f}{delta x_n} e_n"],["\\nabla f = \\frac{\\delta f}{\\delta x_1} e_1 + \\frac{\\delta f}{\\delta x_2} e_2 + \\frac{\\delta f}{\\delta x_n} e_n"]);return x=function(){return n},n}function y(){var n=w(["z = C_1 cdot x_1 + C_2 cdot x_2 + C_n cdot x_n"],["z = C_1 \\cdot x_1 + C_2 \\cdot x_2 + C_n \\cdot x_n"]);return y=function(){return n},n}function w(n,l){return l||(l=n.slice(0)),n.raw=l,n}t.d(l,"default",(function(){return Q}));var C=t("hosL"),L=t("ddBW"),T=t("ZsnK"),B=t("9yVG"),F=t("PEwj"),S=t("7bXG"),j=t("GC6P"),A=t("bQQT"),O=t("hwaz"),G=String.raw,Q=function(l){function t(){return l.apply(this,arguments)||this}var w,C;return C=l,(w=t).prototype=Object.create(C.prototype),w.prototype.constructor=w,w.__proto__=C,t.prototype.render=function(){return n("div",null,n("h1",null,"Ottimizzazione lineare intera"),n(L.a,{title:"Materiale"},n(B.a,{title:"Videolezioni su YouTube"},n("p",null,"Ho rimosso il rumore in sottofondo da tutti i video di Ricerca Operativa!"),n("p",null,n("b",null,n("a",{href:"https://www.youtube.com/playlist?list=PLh93e8qjTszffkHNn-19CqUOhHFbhBlBh"},"Guardate i video qui!"))))),n(L.a,{title:"Le basi"},n(B.a,{title:"Funzione obiettivo"},n("p",null,"La funzione obiettivo è la funzione con valore noto sconosciuto:"),n("p",null,n(T.a,null,G(y())))),n(B.a,{title:"Gradiente"},n("p",null,"Funzione della funzione obiettivo che indica la direzione del suo aumento più veloce."),n("p",null,n(T.a,null,G(x()))),n("p",null,n(T.a,null,G(q()))," è la direzione della coordinata i-esima."),n(F.a,null,"Se ",n(T.a,null,G(g())),", allora:",n("ul",null,n("li",null,n(T.a,null,G(_()))),n("li",null,n(T.a,null,G(z()))),n("li",null,n(T.a,null,G(h()))))),n(F.a,null,"Se la funzione obiettivo è ",n(T.a,null,"z = 2w + 3x + 4y"),", il suo gradiente è ",n(T.a,null,G(v())),"."))),n(L.a,{title:"Forme di un sistema"},n(B.a,{title:"Forma standard"},n("ul",null,n("li",null,n(j.a,null,"Solo equazioni")),n("li",null,n(j.a,null,"Tutte le variabili maggiori di zero")))),n(B.a,{title:"Forma canonica"},n("ul",null,n("li",null,n(A.a,null,"Equazioni e disequazioni")),n("li",null,n(j.a,null,"Tutte le variabili maggiori di zero")))),n(B.a,{title:"Forma generale"},n("ul",null,n("li",null,n(A.a,null,"Equazioni e disequazioni")),n("li",null,n(A.a,null,"Variabili con qualsiasi valore"))))),n(L.a,{title:"Equivalenza di forma"},n(B.a,{title:"Da standard a generale"},n("p",null,"Convertiamo ogni equazione ",n(T.a,null,G(m()))," in due disequazioni ",n(T.a,null,G(b()))," e ",n(T.a,null,G(p())),","),n(F.a,null,"Why would you ever do that?!")),n(B.a,{title:"Da canonica a standard"},n("p",null,"Convertiamo le disequazioni in equazioni aggiungendo una variabile slack."),n(F.a,null,n(T.a,null,G(f()))," diventa ",n(T.a,null,G(d())),".")),n(B.a,{title:"Da generale a canonica"},n("p",null,"Sostituiamo le variabili potenzialmente negative (unconstrained) ",n(T.a,null,G(s()))," con due variabili ",n(T.a,null,G(c()))," e ",n(T.a,null,G(o())),"."),n(F.a,null,n(T.a,null,G(r()))," diventa ",n(T.a,null,G(u()))," e ",n(T.a,null,G(a())),"."))),n(L.a,{title:"La forma standard"},n(B.a,{title:"Funzione obiettivo"},n("p",null,"La funzione da minimizzare/massimizzare, tipicamente indicata con una ",n(T.a,null,G(e()))," al termine noto.")),n(B.a,{title:"Tableu"},n("p",null,"Un modo per rappresentare sistemi in forma standard, anche noto come ",n("b",null,"matrice equivalente completa")," del sistema."),n(F.a,null,"Il sistema:",n("br",null),n("br",null),n(T.a,null,G(i())),n("br",null),n("br",null),"Diventa in forma di tableau:",n("br",null),n("br",null),n("table",{class:"right"},n("thead",null,n("tr",null,n("th",null,n("abbr",{title:"Termine noto"},"TN")),n("th",null,n(T.a,null,"A")),n("th",null,n(T.a,null,"B")),n("th",null,n(T.a,null,"s_1")),n("th",null,n(T.a,null,"s_2")))),n("tbody",null,n("tr",null,n("td",null,n(T.a,null,"z")),n("td",null,n(T.a,null,"2000")),n("td",null,n(T.a,null,"1000")),n("td",null,n(T.a,null,"0")),n("td",null,n(T.a,null,"0"))),n("tr",null,n("td",null,n(T.a,null,"3")),n("td",null,n(T.a,null,"1")),n("td",null,n(T.a,null,"0")),n("td",null,n(T.a,null,"1")),n("td",null,n(T.a,null,"0"))),n("tr",null,n("td",null,n(T.a,null,"3")),n("td",null,n(T.a,null,"0")),n("td",null,n(T.a,null,"1")),n("td",null,n(T.a,null,"0")),n("td",null,n(T.a,null,"1"))),n("tr",null,n("td",null,n(T.a,null,"7")),n("td",null,n(T.a,null,"2")),n("td",null,n(T.a,null,"2")),n("td",null,n(T.a,null,"0")),n("td",null,n(T.a,null,"0"))))))),n(B.a,{title:"Variabili di base"},n("p",null,n(S.a,null,"TODO: come spiegarla?")))),n(L.a,{title:"Simplex"},n(B.a,{title:"Simplex"},n("p",null,"Un algoritmo per massimizzare efficientemente variabili di sistemi lineari, derivato da Gauss-Jordan."),n(F.a,null,"E' spiegato semplicemente ",n("a",{href:"https://web.archive.org/web/20200523052252/https://www.cs.cmu.edu/~15451-f17/handouts/simplex.pdf"},"qui"),".")),n(B.a,{title:"I passi"},n("ol",null,n("li",null,"Trasforma il sistema in ",n("b",null,"forma standard"),"."),n("li",null,"Finchè ci sono variabili con coefficienti positivi nella funzione obiettivo:",n("ol",null,n("li",null,n("b",null,"Scegli")," una variabile della funzione obiettivo, chiamandola ",n("i",null,"variabile entrante"),". ",n(F.a,null,"Come? Vedi nel prossimo pannello.")),n("li",null,"Trova la variabile di base (detta ",n("i",null,"variabile uscente"),") con il ",n("b",null,"valore minore")," per questo rapporto: ",n(O.a,null,"termine noto / coeff. variabile entrante")),n("li",null,n("b",null,"Riscrivi")," tutte le funzioni del sistema in termini della variabile entrante."))),n("li",null,"Il ",n("b",null,"termine noto")," della funzione obiettivo è il tuo risultato."))),n(B.a,{title:"Criteri per la variabile entrante"},n("ul",null,n("li",null,"Coefficiente maggiore nella funzione obiettivo."),n("li",null,"Incremento maggiore della funzione obiettivo."),n("li",null,"A caso."),n("li",null,n("i",null,"Regola di Bland"),": scegli variabili entranti e uscenti con indice minore. ",n(F.a,null,"Impedisce cicli infiniti!"))))),n(L.a,{title:"Metodo delle due fasi"},n(B.a,{title:"Metodo delle due fasi"},n("p",null,"Un estensione del Simplex per permettere la risoluzione di problemi con termini noti negativi."),n("p",null,"Prevede l'introduzione di un ",n("b",null,"problema ausiliario"),"."))))},t}(C.Component)}.call(this,t("hosL").h)},GC6P:function(n,l,t){"use strict";(function(n){t.d(l,"a",(function(){return a}));var i=t("giqd"),e=t.n(i),a=function(l){function t(){return l.apply(this,arguments)||this}var i,a;return a=l,(i=t).prototype=Object.create(a.prototype),i.prototype.constructor=i,i.__proto__=a,t.prototype.render=function(){return n("span",{class:e.a.minus},this.props.children)},t}(t("hosL").Component)}).call(this,t("hosL").h)},Qnof:function(n){n.exports={plus:"plus__29_QM"}},bQQT:function(n,l,t){"use strict";(function(n){t.d(l,"a",(function(){return a}));var i=t("Qnof"),e=t.n(i),a=function(l){function t(){return l.apply(this,arguments)||this}var i,a;return a=l,(i=t).prototype=Object.create(a.prototype),i.prototype.constructor=i,i.__proto__=a,t.prototype.render=function(){return n("span",{class:e.a.plus},this.props.children)},t}(t("hosL").Component)}).call(this,t("hosL").h)},giqd:function(n){n.exports={minus:"minus__2Ld4F"}}}]); //# sourceMappingURL=route-ottimizzazioneLineare.chunk.8fb86.js.map