mirror of
https://github.com/Steffo99/unisteffo.git
synced 2024-11-26 18:04:20 +00:00
2 lines
No EOL
36 KiB
JavaScript
Generated
2 lines
No EOL
36 KiB
JavaScript
Generated
(window.webpackJsonp=window.webpackJsonp||[]).push([[11],{"2e/m":function(n,l,i){"use strict";(function(n){var t=i("UrZR"),e=i.n(t);l.a=function(l){return n("table",{class:e.a.tablepanel},l.children)}}).call(this,i("hosL").h)},"3duz":function(n){n.exports={example:"example__9acWs"}},"8uYk":function(n){n.exports={box:"box__3cKyY",default:"default__v-emJ",red:"red__339Cz",orange:"orange__24_8v",yellow:"yellow__1Jo9W",lime:"lime__34yV5",cyan:"cyan__3RqLr",blue:"blue__13Wnj",magenta:"magenta__2tkzq"}},FP0W:function(n,l,i){"use strict";(function(n){var t=i("VQ5Y"),e=i.n(t);l.a=function(l){return n("abbr",{class:e.a.min,title:"In problemi in cui il primale è di minimizzazione."},l.children?l.children:"min")}}).call(this,i("hosL").h)},JESo:function(n){n.exports={inline:"inline__1yl8V",block:"block__fPiiB"}},JyGO:function(n,l,i){"use strict";(function(n){var t=i("VQ5Y"),e=i.n(t);l.a=function(l){return n("abbr",{class:e.a.finite,title:"I punti del poliedro sono finiti."},l.children?l.children:"finito")}}).call(this,i("hosL").h)},KN5E:function(n){n.exports={todo:"todo__2IWIS"}},OPqz:function(n,l,i){"use strict";(function(n){var t=i("TWV3"),e=i("hosL");l.a=function(l){return n(e.Fragment,null,n("h2",null,l.title),n(t.a,null,l.children))}}).call(this,i("hosL").h)},OmdA:function(n){n.exports={title:"title__3ZVpg",contents:"contents__20_NI"}},PGF6:function(n,l,i){"use strict";var t=i("hosL");l.a=Object(t.createContext)(null)},Q7TX:function(n,l,i){"use strict";(function(n){i.d(l,"a",(function(){return c}));var t=i("JESo"),e=i.n(t),a=i("QRet"),u=i("8CDw"),o=i("wQ73"),r=i("PGF6"),c=Object.freeze({INLINE:e.a.inline,BLOCK:e.a.block});l.b=function(l){var i,t=Object(a.b)(u.a),s=Object(a.b)(o.a),f=Object(a.b)(r.a);return i=void 0===l.display?null===f?c.INLINE:f:l.display,n("img",(void 0===l.inline?s:l.inline)?{src:"https://latex.codecogs.com/svg.latex?"+("\\inline {\\color{"+t+"} "+l.children+" }"),alt:l.children,title:l.children,class:e.a.latex+" "+i}:{src:"https://latex.codecogs.com/svg.latex?"+("{\\color{"+t+"} "+l.children+" }"),alt:l.children,title:l.children,class:e.a.latex+" "+i})}}).call(this,i("hosL").h)},QNda:function(n,l,i){"use strict";(function(n){i.d(l,"a",(function(){return u}));var t=i("hosL"),e=i("e8JA"),a=i.n(e),u=function(l){function i(){var n;return(n=l.call(this)||this).state={now:Date.now()},n.timer=null,n}var t,e;e=l,(t=i).prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e;var u=i.prototype;return u.componentDidMount=function(){var n=this;this.timer=setInterval((function(){n.setState({now:Date.now()})}),1e3)},u.componentWillUnmount=function(){null!==this.timer&&clearInterval(this.timer)},u.render=function(){var l="Unknown date",i=a.a.timer,t={milliseconds:"?",seconds:"?",minutes:"?",hours:"?",days:"?"};if(this.props.to){var e=(l=new Date(this.props.to))-this.state.now;e>0?t={milliseconds:e%1e3,seconds:Math.floor(e/1e3)%60,minutes:Math.floor(e/6e4)%60,hours:Math.floor(e/36e5)%24,days:Math.floor(e/864e5)}:(t={milliseconds:0,seconds:0,minutes:0,hours:0,days:0},i+=" "+a.a.expired)}else i+=" "+a.a.unknown;return n("div",{class:i,title:l},n("div",{class:a.a.days+" "+a.a.count},t.days),n("div",{className:a.a.days+" "+a.a.text},"giorni"),n("div",{class:a.a.hours+" "+a.a.count},t.hours),n("div",{className:a.a.hours+" "+a.a.text},"ore"),n("div",{class:a.a.minutes+" "+a.a.count},t.minutes),n("div",{className:a.a.minutes+" "+a.a.text},"minuti"),n("div",{class:a.a.seconds+" "+a.a.count},t.seconds),n("div",{class:a.a.seconds+" "+a.a.text},"secondi"))},i}(t.Component)}).call(this,i("hosL").h)},QRet:function(n,l,i){"use strict";function t(n,l){q.options.__h&&q.options.__h(x,n,T||l),T=0;var i=x.__H||(x.__H={__:[],__h:[]});return n>=i.__.length&&i.__.push({}),i.__[n]}function e(n){return T=1,a(v,n)}function a(n,l,i){var e=t(g++,2);return e.t=n,e.__c||(e.__c=x,e.__=[i?i(l):v(void 0,l),function(n){var l=e.t(e.__[0],n);e.__[0]!==l&&(e.__[0]=l,e.__c.setState({}))}]),e.__}function u(n,l){var i=t(g++,3);!q.options.__s&&p(i.__H,l)&&(i.__=n,i.__H=l,x.__H.__h.push(i))}function o(n,l){var i=t(g++,4);!q.options.__s&&p(i.__H,l)&&(i.__=n,i.__H=l,x.__h.push(i))}function r(n){return T=5,s((function(){return{current:n}}),[])}function c(n,l,i){T=6,o((function(){"function"==typeof n?n(l()):n&&(n.current=l())}),null==i?i:i.concat(n))}function s(n,l){var i=t(g++,7);return p(i.__H,l)?(i.__H=l,i.__h=n,i.__=n()):i.__}function f(n,l){return T=8,s((function(){return n}),l)}function b(n){var l=x.context[n.__c],i=t(g++,9);return i.__c=n,l?(null==i.__&&(i.__=!0,l.sub(x)),l.props.value):n.__}function d(n,l){q.options.useDebugValue&&q.options.useDebugValue(l?l(n):n)}function m(){A.some((function(n){if(n.__P)try{n.__H.__h.forEach(h),n.__H.__h.forEach(_),n.__H.__h=[]}catch(l){return n.__H.__h=[],q.options.__e(l,n.__v),!0}})),A=[]}function h(n){"function"==typeof n.u&&n.u()}function _(n){n.u=n.__()}function p(n,l){return!n||l.some((function(l,i){return l!==n[i]}))}function v(n,l){return"function"==typeof l?l(n):l}i.d(l,"j",(function(){return e})),i.d(l,"h",(function(){return a})),i.d(l,"d",(function(){return u})),i.d(l,"f",(function(){return o})),i.d(l,"i",(function(){return r})),i.d(l,"e",(function(){return c})),i.d(l,"g",(function(){return s})),i.d(l,"a",(function(){return f})),i.d(l,"b",(function(){return b})),i.d(l,"c",(function(){return d}));var g,x,z,q=i("hosL"),T=0,A=[],L=q.options.__r,w=q.options.diffed,y=q.options.__c,I=q.options.unmount;q.options.__r=function(n){L&&L(n),g=0;var l=(x=n.__c).__H;l&&(l.__h.forEach(h),l.__h.forEach(_),l.__h=[])},q.options.diffed=function(n){w&&w(n);var l=n.__c;l&&l.__H&&l.__H.__h.length&&(1!==A.push(l)&&z===q.options.requestAnimationFrame||((z=q.options.requestAnimationFrame)||function(n){var l,i=function(){clearTimeout(t),cancelAnimationFrame(l),setTimeout(n)},t=setTimeout(i,100);"undefined"!=typeof window&&(l=requestAnimationFrame(i))})(m))},q.options.__c=function(n,l){l.some((function(n){try{n.__h.forEach(h),n.__h=n.__h.filter((function(n){return!n.__||_(n)}))}catch(i){l.some((function(n){n.__h&&(n.__h=[])})),l=[],q.options.__e(i,n.__v)}})),y&&y(n,l)},q.options.unmount=function(n){I&&I(n);var l=n.__c;if(l&&l.__H)try{l.__H.__.forEach(h)}catch(n){q.options.__e(n,l.__v)}}},RMzO:function(n,l,i){"use strict";i("KN5E");l.a=function(){return null}},SgMg:function(n,l,i){"use strict";(function(n){var t=i("VQ5Y"),e=i.n(t);l.a=function(l){return n("abbr",{class:e.a.max,title:"In problemi in cui il primale è di massimizzazione."},l.children?l.children:"max")}}).call(this,i("hosL").h)},TWV3:function(n,l,i){"use strict";(function(n){var t=i("htlC"),e=i.n(t);l.a=function(l){var i;return i=Array.isArray(l.children)?l.children.map((function(l){return n("div",{class:e.a.splitchild},l)})):n("div",{class:e.a.splitchild},l.children),n("div",{class:e.a.split},n("div",{class:e.a.splitparent},i))}}).call(this,i("hosL").h)},UEzA:function(n,l,i){"use strict";(function(n){var t=i("zDbI");l.a=function(l){return n("p",null,n(t.a,null,l.children))}}).call(this,i("hosL").h)},UrZR:function(n){n.exports={tablepanel:"tablepanel__1Wil3"}},VQ5Y:function(n){n.exports={unbounded:"unbounded__KZ9A2",unfeasible:"unfeasible__9LnzW",finite:"finite__3_e9S",min:"min__3VEkp",max:"max__BtCuw"}},Wxxq:function(n,l,i){"use strict";(function(n){var t=i("3duz"),e=i.n(t);i("hosL");l.a=function(l){return n("div",{class:e.a.example},l.children)}}).call(this,i("hosL").h)},Y9Ml:function(n,l,i){"use strict";(function(n){var t=i("8uYk"),e=i.n(t),a=Object.freeze({RED:e.a.red,ORANGE:e.a.orange,YELLOW:e.a.yellow,LIME:e.a.lime,CYAN:e.a.cyan,BLUE:e.a.blue,MAGENTA:e.a.magenta,DEFAULT:e.a.default});l.a=function(l){var i=a.DEFAULT;return l.color&&(i=l.color),n("div",{class:e.a.box+" "+i},l.children)}}).call(this,i("hosL").h)},Z395:function(n,l,i){"use strict";(function(n){var t=i("VQ5Y"),e=i.n(t);l.a=function(l){return n("abbr",{class:e.a.unfeasible,title:"Il poliedro non contiene punti."},l.children?l.children:"vuoto")}}).call(this,i("hosL").h)},"e3h+":function(n,l,i){"use strict";(function(n){var t=i("VQ5Y"),e=i.n(t);l.a=function(l){return n("abbr",{class:e.a.unbounded,title:"I punti del poliedro sono infiniti."},l.children?l.children:"illimitato")}}).call(this,i("hosL").h)},e8JA:function(n){n.exports={timer:"timer__3Z2pL",days:"days__myhe2",hours:"hours__3JUDn",minutes:"minutes__24lD7",seconds:"seconds__2vZ4f",count:"count__chi9X",text:"text__34ldC",unknown:"unknown__3sT2P",expired:"expired__zNiuP"}},hasd:function(n,l,i){"use strict";i.r(l),function(n){function t(){var n=mn(["c_i"]);return t=function(){return n},n}function e(){var n=mn(["b_i"]);return e=function(){return n},n}function a(){var n=mn(["mathbf{u}^T left( mathbf{A} mathbf{x} - mathbf{b} \right) = 0"],["\\mathbf{u}^T \\left( \\mathbf{A} \\mathbf{x} - \\mathbf{b} \\right) = 0"]);return a=function(){return n},n}function u(){var n=mn(["left( mathbf{c}^T - mathbf{u}^T mathbf{A} \right) mathbf{x} = 0"],["\\left( \\mathbf{c}^T - \\mathbf{u}^T \\mathbf{A} \\right) \\mathbf{x} = 0"]);return u=function(){return n},n}function o(){var n=mn(["mathbf{c}^T mathbf{x} = mathbf{u}^T mathbf{b}"],["\\mathbf{c}^T \\mathbf{x} = \\mathbf{u}^T \\mathbf{b}"]);return o=function(){return n},n}function r(){var n=mn(["mathbf{u}^T mathbf{A} leq mathbf{c}^T, quad mathbf{u} geq 0"],["\\mathbf{u}^T \\mathbf{A} \\leq \\mathbf{c}^T, \\quad \\mathbf{u} \\geq 0"]);return r=function(){return n},n}function c(){var n=mn(["mathbf{A} mathbf{X} geq mathbf{b}, quad mathbf{x} geq 0"],["\\mathbf{A} \\mathbf{X} \\geq \\mathbf{b}, \\quad \\mathbf{x} \\geq 0"]);return c=function(){return n},n}function s(){var n=mn(["mathbf{c}^T mathbf{x} = mathbf{u}^T mathbf{b}"],["\\mathbf{c}^T \\mathbf{x} = \\mathbf{u}^T \\mathbf{b}"]);return s=function(){return n},n}function f(){var n=mn(["c_0 leq mathbf{u}^T mathbf{b}"],["c_0 \\leq \\mathbf{u}^T \\mathbf{b}"]);return f=function(){return n},n}function b(){var n=mn(["mathbf{c}^T geq mathbf{u}^T mathbf{A}"],["\\mathbf{c}^T \\geq \\mathbf{u}^T \\mathbf{A}"]);return b=function(){return n},n}function d(){var n=mn(["u in mathfrak{R}^m"],["u \\in \\mathfrak{R}^m"]);return d=function(){return n},n}function m(){var n=mn(["c_0 leq mathbf{c}^T mathbf{x}"],["c_0 \\leq \\mathbf{c}^T \\mathbf{x}"]);return m=function(){return n},n}function h(){var n=mn(["u_n"]);return h=function(){return n},n}function _(){var n=mn(["x_n"]);return _=function(){return n},n}function p(){var n=mn(["\n \begin{cases}\n z = 3 x_1 + 5 x_2 + u_1 ( 12 - 2 x_1 - 3 x_2 ) + u_2 ( 3 + x_1 - 3 x_2 )\\\n x_1 geq 0\\\n x_2 geq 0\n end{cases}\n "],["\n \\begin{cases}\n z = 3 x_1 + 5 x_2 + u_1 ( 12 - 2 x_1 - 3 x_2 ) + u_2 ( 3 + x_1 - 3 x_2 )\\\\\n x_1 \\geq 0\\\\\n x_2 \\geq 0\n \\end{cases}\n "]);return p=function(){return n},n}function v(){var n=mn(["\n \begin{cases}\n z = 3 x_1 + 5 x_2\\\n 2 x_1 + 3 x_2 geq 12\\\n - x_1 + 3 x_2 geq 3\\\n x_1 geq 0\\\n x_2 geq 0\n end{cases}\n "],["\n \\begin{cases}\n z = 3 x_1 + 5 x_2\\\\\n 2 x_1 + 3 x_2 \\geq 12\\\\\n - x_1 + 3 x_2 \\geq 3\\\\\n x_1 \\geq 0\\\\\n x_2 \\geq 0\n \\end{cases}\n "]);return v=function(){return n},n}function g(){var n=mn(["mathbf{u}"],["\\mathbf{u}"]);return g=function(){return n},n}function x(){var n=mn(["mathbf{y}"],["\\mathbf{y}"]);return x=function(){return n},n}function z(){var n=mn(["\frac{termine noto}{coeff. variabile entrante}"],["\\frac{termine\\ noto}{coeff.\\ variabile\\ entrante}"]);return z=function(){return n},n}function q(){var n=mn(["\n \begin{cases}\n 2000x_1 + 1000x_2 = z\\\n 1x_1 leq 3\\\n 1x_2 leq 3\\\n 2x_1 + 2x_2 leq 7\n end{cases}\n "],["\n \\begin{cases}\n 2000x_1 + 1000x_2 = z\\\\\n 1x_1 \\leq 3\\\\\n 1x_2 \\leq 3\\\\\n 2x_1 + 2x_2 \\leq 7\n \\end{cases}\n "]);return q=function(){return n},n}function T(){var n=mn(["\begin{cases}\n a = a^+ - a^-\\\n a^+ geq 0\\\n a^- geq 0\n end{cases}"],["\\begin{cases}\n a = a^+ - a^-\\\\\n a^+ \\geq 0\\\\\n a^- \\geq 0\n \\end{cases}"]);return T=function(){return n},n}function A(){var n=mn(["\n a geq b Leftrightarrow a - s = b\n "],["\n a \\geq b \\Leftrightarrow a - s = b\n "]);return A=function(){return n},n}function L(){var n=mn(["\n a leq b Leftrightarrow a + s = b\n "],["\n a \\leq b \\Leftrightarrow a + s = b\n "]);return L=function(){return n},n}function w(){var n=mn(["s"]);return w=function(){return n},n}function y(){var n=mn(["a = b Leftrightarrow\n \begin{cases}\n a leq b\\\n a geq b\n end{cases}\n "],["a = b \\Leftrightarrow\n \\begin{cases}\n a \\leq b\\\\\n a \\geq b\n \\end{cases}\n "]);return y=function(){return n},n}function I(){var n=mn(["min left{ mathbf{c}^T mathbf{x} : mathbf{A} mathbf{x} = b,quad x_j geq 0,quad j = 1 dots n \right}"],["min \\left\\{ \\mathbf{c}^T \\mathbf{x} : \\mathbf{A} \\mathbf{x} = b,\\quad x_j \\geq 0,\\quad j = 1 \\dots n \\right\\}"]);return I=function(){return n},n}function S(){var n=mn(["min left{ mathbf{c}^T mathbf{x} : mathbf{A} mathbf{x} geq b,quad x_j geq 0,quad j = 1 dots n \right}"],["min \\left\\{ \\mathbf{c}^T \\mathbf{x} : \\mathbf{A} \\mathbf{x} \\geq b,\\quad x_j \\geq 0,\\quad j = 1 \\dots n \\right\\}"]);return S=function(){return n},n}function C(){var n=mn(["min left{ mathbf{c}^T mathbf{x} : mathbf{A} mathbf{x} = b,quad mathbf{A'} mathbf{x} geq mathbf{b'} quad x_j geq 0,quad j = 1 dots n \right}"],["min \\left\\{ \\mathbf{c}^T \\mathbf{x} : \\mathbf{A} \\mathbf{x} = b,\\quad \\mathbf{A'} \\mathbf{x} \\geq \\mathbf{b'} \\quad x_j \\geq 0,\\quad j = 1 \\dots n \\right\\}"]);return C=function(){return n},n}function E(){var n=mn(["\nabla z = (2, 3, 4)"],["\\nabla z = (2, 3, 4)"]);return E=function(){return n},n}function F(){var n=mn(["mathbf{I}"],["\\mathbf{I}"]);return F=function(){return n},n}function O(){var n=mn(["\nabla f = \frac{delta f}{delta x_1} mathbf{I}_1 + \frac{delta f}{delta x_2} mathbf{I}_2 + \frac{delta f}{delta x_n} mathbf{I}_n"],["\\nabla f = \\frac{\\delta f}{\\delta x_1} \\mathbf{I}_1 + \\frac{\\delta f}{\\delta x_2} \\mathbf{I}_2 + \\frac{\\delta f}{\\delta x_n} \\mathbf{I}_n"]);return O=function(){return n},n}function V(){var n=mn(["z(dots)"],["z(\\dots)"]);return V=function(){return n},n}function D(){var n=mn(["mathbf{c}^T mathbf{x}"],["\\mathbf{c}^T \\mathbf{x}"]);return D=function(){return n},n}function U(){var n=mn(["mathbf{b}"],["\\mathbf{b}"]);return U=function(){return n},n}function j(){var n=mn(["mathbf{A}"],["\\mathbf{A}"]);return j=function(){return n},n}function P(){var n=mn(["mathbf{x}"],["\\mathbf{x}"]);return P=function(){return n},n}function k(){var n=mn(["mathbf{c}"],["\\mathbf{c}"]);return k=function(){return n},n}function N(){var n=mn(["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 N=function(){return n},n}function H(){var n=mn(["mathbf{u}^T mathbf{A} = mathbf{c}^T"],["\\mathbf{u}^T \\mathbf{A} = \\mathbf{c}^T"]);return H=function(){return n},n}function M(){var n=mn(["mathbf{u}^T mathbf{b}"],["\\mathbf{u}^T \\mathbf{b}"]);return M=function(){return n},n}function R(){var n=mn(["z(dots)"],["z(\\dots)"]);return R=function(){return n},n}function Q(){var n=mn(["mathbf{A} mathbf{x} = mathbf{b}"],["\\mathbf{A} \\mathbf{x} = \\mathbf{b}"]);return Q=function(){return n},n}function B(){var n=mn(["mathbf{c}^T mathbf{x}"],["\\mathbf{c}^T \\mathbf{x}"]);return B=function(){return n},n}function J(){var n=mn(["mathbf{F}"],["\\mathbf{F}"]);return J=function(){return n},n}function W(){var n=mn(["mathbf{c}_F"],["\\mathbf{c}_F"]);return W=function(){return n},n}function Y(){var n=mn(["mathbf{x}_F"],["\\mathbf{x}_F"]);return Y=function(){return n},n}function G(){var n=mn(["mathbf{B}"],["\\mathbf{B}"]);return G=function(){return n},n}function Z(){var n=mn(["mathbf{c}_B"],["\\mathbf{c}_B"]);return Z=function(){return n},n}function X(){var n=mn(["mathbf{x}_B"],["\\mathbf{x}_B"]);return X=function(){return n},n}function K(){var n=mn(["c_0"]);return K=function(){return n},n}function $(){var n=mn(["u_i"]);return $=function(){return n},n}function nn(){var n=mn(["mathbf{u}"],["\\mathbf{u}"]);return nn=function(){return n},n}function ln(){var n=mn(["y_i"]);return ln=function(){return n},n}function tn(){var n=mn(["mathbf{y}"],["\\mathbf{y}"]);return tn=function(){return n},n}function en(){var n=mn(["b_i"]);return en=function(){return n},n}function an(){var n=mn(["mathbf{b}"],["\\mathbf{b}"]);return an=function(){return n},n}function un(){var n=mn(["a_{ij}"]);return un=function(){return n},n}function on(){var n=mn(["mathbf{A}"],["\\mathbf{A}"]);return on=function(){return n},n}function rn(){var n=mn(["c_i"]);return rn=function(){return n},n}function cn(){var n=mn(["mathbf{c}"],["\\mathbf{c}"]);return cn=function(){return n},n}function sn(){var n=mn(["s_i"]);return sn=function(){return n},n}function fn(){var n=mn(["mathbf{s}"],["\\mathbf{s}"]);return fn=function(){return n},n}function bn(){var n=mn(["x_i"]);return bn=function(){return n},n}function dn(){var n=mn(["mathbf{x}"],["\\mathbf{x}"]);return dn=function(){return n},n}function mn(n,l){return l||(l=n.slice(0)),n.raw=l,n}var hn=i("OPqz"),_n=i("Q7TX"),pn=i("imVn"),vn=i("Wxxq"),gn=i("RMzO"),xn=i("QNda"),zn=i("Z395"),qn=i("e3h+"),Tn=i("FP0W"),An=i("SgMg"),Ln=i("UEzA"),wn=i("wQ73"),yn=i("2e/m"),In=i("JyGO"),Sn=String.raw;l.default=function(){return n("div",null,n("h1",null,"Ottimizzazione lineare intera"),n(hn.a,{title:"Informazioni"},n(pn.a,{title:"Contatti"},n("ul",null,n("li",null,n("a",{href:"mailto:stefano.novellani@unimore.it"},"Prof. Stefano Novellani")))),n(pn.a,{title:"Archivio"},n("p",null,"Se sei uno ",n("b",null,"studente dell'Unimore"),", puoi accedere all'",n("b",null,n("a",{href:"https://drive.google.com/drive/folders/13q-E6LvXca9uo3sATMZxrhJClqMB0wJu"},"archivio del corso su Google Drive")),"."))),n(hn.a,{title:"Esame"},n(pn.a,{title:"Scritto"},n("p",null,"Uno scritto con tre domande:"),n("ul",null,n("li",null,"Progettazione concettuale e logica"),n("li",null,"Formulazione interrogazione"),n("li",null,"Una domanda tra:",n("ul",null,n("li",null,"Studio dato derivato"),n("li",null,"Progettazione fisica"),n("li",null,"Tecnologia database"))))),n(pn.a,{title:"Appelli"},n("ol",null,n("li",null,n(xn.a,{to:"2020-06-08"})),n("li",null,n(xn.a,{to:"2020-06-25"})),n("li",null,n(xn.a,{to:"2020-07-16"}))))),n(wn.a.Provider,{value:!1},n(hn.a,{title:"Glossario"},n(yn.a,null,n("thead",null,n("tr",null,n("th",null,n("abbr",{title:"Vettore / matrice"},"v")),n("th",null,n("abbr",{title:"Elemento singolo"},"s")),n("th",null,"Significato"))),n("tbody",null,n("tr",null,n("td",null,n(_n.b,null,Sn(dn()))),n("td",null,n(_n.b,null,Sn(bn()))),n("td",null,"Incognite")),n("tr",null,n("td",null,n(_n.b,null,Sn(fn()))),n("td",null,n(_n.b,null,Sn(sn()))),n("td",null,"Variabili slack")),n("tr",null,n("td",null,n(_n.b,null,Sn(cn()))),n("td",null,n(_n.b,null,Sn(rn()))),n("td",null,"Coefficienti della funzione obiettivo")),n("tr",null,n("td",null,n(_n.b,null,Sn(on()))),n("td",null,n(_n.b,null,Sn(un()))),n("td",null,"Coefficienti dei vincoli")),n("tr",null,n("td",null,n(_n.b,null,Sn(an()))),n("td",null,n(_n.b,null,Sn(en()))),n("td",null,"Termini noti dei vincoli")),n("tr",null,n("td",null,n(_n.b,null,Sn(tn()))),n("td",null,n(_n.b,null,Sn(ln()))),n("td",null,"Incognite artificiali")),n("tr",null,n("td",null,n(_n.b,null,Sn(nn()))),n("td",null,n(_n.b,null,Sn($()))),n("td",null,"Coefficienti di rilassamento")),n("tr",null,n("td",null),n("td",null,n(_n.b,null,Sn(K()))),n("td",null,"Valore ottimo di un problema")),n("tr",null,n("td",null,n(_n.b,null,Sn(X()))),n("td",null),n("td",null,"Incognite in base")),n("tr",null,n("td",null,n(_n.b,null,Sn(Z()))),n("td",null),n("td",null,"Coefficienti della funzione obiettivo delle variabili in base")),n("tr",null,n("td",null,n(_n.b,null,Sn(G()))),n("td",null),n("td",null,"Coefficienti dei vincoli delle variabili in base")),n("tr",null,n("td",null,n(_n.b,null,Sn(Y()))),n("td",null),n("td",null,"Incognite fuori base")),n("tr",null,n("td",null,n(_n.b,null,Sn(W()))),n("td",null),n("td",null,"Coefficienti della funzione obiettivo delle variabili fuori base")),n("tr",null,n("td",null,n(_n.b,null,Sn(J()))),n("td",null),n("td",null,"Coefficienti dei vincoli delle variabili fuori base")))),n(yn.a,null,n("thead",null,n("tr",null,n("th",null,"Simboli"),n("th",null,"Significato"))),n("tbody",null,n("tr",null,n("td",null,n(_n.b,null,Sn(B()))),n("td",null,"Soluzione del problema")),n("tr",null,n("td",null,n(_n.b,null,Sn(Q()))),n("td",null,"Vincoli in forma standard")),n("tr",null,n("td",null,n(_n.b,null,Sn(R()))),n("td",null,"Funzione obiettivo")),n("tr",null,n("td",null,n(_n.b,null,Sn(M()))),n("td",null,"Soluzione del problema duale")),n("tr",null,n("td",null,n(_n.b,null,Sn(H()))),n("td",null,"Vincoli del problema duale in forma standard")))))),n(hn.a,{title:"Le basi"},n(pn.a,{title:"Funzione obiettivo"},n("p",null,"La funzione obiettivo è la funzione con valore noto sconosciuto:"),n("p",null,n(_n.b,null,Sn(N()))))),n(hn.a,{title:"Problemi di ottimizzazione lineare"},n(pn.a,{title:"Cosa sono?"},n("p",null,"I problemi di ottimizzazione lineare sono problemi che cercano di ",n(Tn.a,null,"minimizzare"),"/",n(An.a,null,"massimizzare")," il valore di una ",n("i",null,"funzione obiettivo")," le cui incognite sono sottoposte a un ",n("b",null,"sistema di ",n("i",null,"vincoli")),".")),n(pn.a,{title:"Funzione obiettivo"},n("p",null,"La funzione da ",n(Tn.a,null,"minimizzare"),"/",n(An.a,null,"massimizzare"),"."),n("p",null,"Il vettore dei suoi coefficienti è detto ",n(_n.b,null,Sn(k())),", mentre quello delle sue incognite ",n(_n.b,null,Sn(P())),".")),n(pn.a,{title:"Vincoli"},n("p",null,"Equazioni e disequazioni a cui devono sottostare le incognite perchè esse formino una soluzione valida."),n("p",null,"I loro coefficienti sono contenuti nella matrice ",n(_n.b,null,Sn(j())),", mentre i loro termini noti nel vettore ",n(_n.b,null,Sn(U())),".")),n(pn.a,{title:"Valore ottimo"},n("p",null,"La ",n("b",null,"soluzione")," di un problema, ricavabile dal prodotto ",n(_n.b,null,Sn(D())),"."),n("p",null,"Spesso, la funzione obiettivo è indicata con il nome ",n(_n.b,null,Sn(V())),".")),n(pn.a,{title:"Poliedro"},n("p",null,"L'",n("b",null,"insieme")," che racchiunde tutte le ",n("b",null,"soluzioni ammissibili")," di un problema."),n("p",null,"In particolare, il valore ottimo è un ",n("b",null,"vertice")," del poliedro, detto ",n("i",null,"vertice ottimo"),"."),n("p",null,"Può essere ",n("i",null,n(In.a,null)),", ",n("i",null,n(zn.a,null))," oppure ",n("i",null,n(qn.a,null)),".")),n(pn.a,{title:"Gradiente"},n("p",null,n("b",null,"Funzione")," della funzione obiettivo che restituisce la direzione del suo aumento più veloce."),n("p",null,n(_n.b,null,Sn(O()))),n(vn.a,null,"La matrice ",n(_n.b,null,Sn(F()))," è la matrice identità."),n(vn.a,null,"Se la funzione obiettivo è ",n(_n.b,null,"z = 2w + 3x + 4y"),", il suo gradiente è ",n(_n.b,null,Sn(E())),"."))),n(hn.a,{title:"Forme di un problema di ottimizzazione"},n(pn.a,{title:"Forma generale"},n("p",null,"Un problema con:"),n("ul",null,n("li",null,n("b",null,"Equazioni e disequazioni")),n("li",null,n("b",null,"Variabili non vincolate"))),n(Ln.a,null,Sn(C()))),n(pn.a,{title:"Forma canonica"},n("p",null,"Un problema con:"),n("ul",null,n("li",null,n("b",null,"Solo disequazioni")),n("li",null,n("b",null,"Vincoli di non-negatività sulle incognite"))),n(Ln.a,null,Sn(S()))),n(pn.a,{title:"Forma standard"},n("p",null,"Un problema con:"),n("ul",null,n("li",null,n("b",null,"Solo equazioni")),n("li",null,n("b",null,"Vincoli di non-negatività sulle incognite"))),n(Ln.a,null,Sn(I())))),n(hn.a,{title:"Conversioni tra le forme"},n(pn.a,{title:"Standard e generale"},n("p",null,"Applica questa conversione a ogni equazione nel sistema:"),n("p",null,n(_n.b,{inline:!1},Sn(y()))),n(vn.a,null,"Serve solo nella teoria per dimostrare che le forme sono equivalenti.")),n(pn.a,{title:"Canonica e standard"},n("p",null,"Aggiungi una ",n("i",null,"variabile slack")," ",n(_n.b,null,Sn(w()))," ",n("b",null,"non-vincolata")," a ogni disequazione nel sistema:"),n("p",null,n(_n.b,{inline:!1},Sn(L()))),n("p",null,n(_n.b,{inline:!1},Sn(A())))),n(pn.a,{title:"Generale e canonica"},n("p",null,"Sdoppia ogni variabile non-vincolata in due variabili con vincolo di non-negatività:"),n("p",null,n(_n.b,{inline:!1},Sn(T()))))),n(hn.a,{title:"La forma standard"},n(pn.a,{title:"Tableau"},n("p",null,"Un modo per rappresentare sistemi in forma standard, anche noto come ",n("b",null,"matrice equivalente completa")," del sistema."),n(vn.a,null,"Il sistema:",n("br",null),n("br",null),n(_n.b,{inline:!1},Sn(q())),n("br",null),n("br",null),"Diventa il 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(_n.b,null,"x_1")),n("th",null,n(_n.b,null,"x_2")),n("th",null,n(_n.b,null,"s_1")),n("th",null,n(_n.b,null,"s_2")))),n("tbody",null,n("tr",null,n("td",null,n(_n.b,null,"z")),n("td",null,n(_n.b,null,"2000")),n("td",null,n(_n.b,null,"1000")),n("td",null,n(_n.b,null,"0")),n("td",null,n(_n.b,null,"0"))),n("tr",null,n("td",null,n(_n.b,null,"3")),n("td",null,n(_n.b,null,"1")),n("td",null,n(_n.b,null,"0")),n("td",null,n(_n.b,null,"1")),n("td",null,n(_n.b,null,"0"))),n("tr",null,n("td",null,n(_n.b,null,"3")),n("td",null,n(_n.b,null,"0")),n("td",null,n(_n.b,null,"1")),n("td",null,n(_n.b,null,"0")),n("td",null,n(_n.b,null,"1"))),n("tr",null,n("td",null,n(_n.b,null,"7")),n("td",null,n(_n.b,null,"2")),n("td",null,n(_n.b,null,"2")),n("td",null,n(_n.b,null,"0")),n("td",null,n(_n.b,null,"0"))))))),n(pn.a,{title:"Variabili nella base"},n("p",null,"Variabili che hanno ",n("b",null,"tutti 0 e un solo 1")," nella loro colonna del tableau."),n("p",null,"La loro controparte sono le ",n("i",null,"variabili fuori base"),", che hanno qualsiasi altro valore."))),n(hn.a,{title:"Simplex primale"},n(pn.a,{title:"Cos'è?"},n("p",null,"Un algoritmo per ",n(Tn.a,null,"minimizzare"),"/",n(An.a,null,"massimizzare")," trovare efficientemente ",n("b",null,"valore ottimo")," di problemi di ottimizzazione lineare, derivato da Gauss-Jordan."),n("p",null,"Da esso si può anche ricavare un ",n("b",null,"vertice ottimo ammissibile"),".",n("br",null),"C'è la possibilità che ne esistano anche altri: quello ottenuto dipende da come è stata effettuata la scelta delle variabili entranti."),n(vn.a,null,"E' spiegato in modo semplice ",n("a",{href:"https://web.archive.org/web/20200523052252/https://www.cs.cmu.edu/~15451-f17/handouts/simplex.pdf"},"qui"),", e ci sono dei codici sorgenti di esempio ",n("a",{href:"https://www.cs.cmu.edu/~15451-f17/handouts/simplexcodes/"},"qui"),"."),n(vn.a,{title:"Esempio"},n("p",null,n("a",{href:"https://i.imgur.com/1r405Mb.jpg"},"Questa")," è la soluzione passo per passo del problema 3 del file ",n("a",{href:"https://dolly.fim.unimore.it/2019/mod/resource/view.php?id=2716"},n("code",null,"Ex_LP_testo")),"."))),n(pn.a,{title:"I passi"},n("ol",null,n("li",null,"Trasforma il sistema in ",n("b",null,"forma standard"),"."),n("li",null,"Trova tante variabili ",n("b",null,"linearmente indipendenti")," quante siano le righe: esse saranno la ",n("i",null,"base iniziale"),"."),n("li",null,"Finchè ci sono variabili con coefficienti ",n(Tn.a,null,"positivi"),"/",n(An.a,null,"negativi")," nella funzione obiettivo:",n("ol",null,n("li",null,n("b",null,"Scegli")," la prima variabile fuori base con coefficiente ",n(Tn.a,null,"positivo"),"/",n(An.a,null,"negativo")," nella funzione obiettivo: essa è la ",n("i",null,"variabile entrante"),".",n("br",null),n("aside",null,n("i",null,"Regola di Bland"),": Si potrebbe scegliere qualsiasi variabile come entrante, ma scegliendo sempre la prima ammissibile ci si assicura che l'algoritmo termini.")),n("li",null,n("b",null,"Scegli")," la variabile in base con il minor rapporto positivo ",n(_n.b,null,Sn(z())),".",n("aside",null,"Se non sei riuscito a trovare nessuna variabile con un rapporto positivo, significa che il poliedro è ",n(qn.a,null),".")),n("li",null,n("u",null,"Pivot"),": ",n("b",null,"riscrivi")," tutte le funzioni del sistema in termini della variabile entrante."))),n("li",null,"Il poliedro è ",n(In.a,null),": i ",n("b",null,"termini noti dei vincoli")," sono le coordinate del suo vertice ottimo, mentre il ",n("b",null,"termine noto della funzione obiettivo")," è il valore ottimo.")),n(vn.a,null,"È praticamente l'algoritmo di Gauss-Jordan applicato al tableau, con delle regole aggiuntive per la decisione delle variabili di pivot.")),n(pn.a,{title:"Soluzioni di base degenerata"},n("p",null,"Una soluzione con almeno una variabile di valore ",n(_n.b,null,"0"),", dovuta a uno o più ",n("b",null,"vincoli ridondanti"),"."),n("p",null,"Senza ",n("b",null,"Regola di Bland")," e in presenza di vincoli ridondanti si rischia di trovarsi a fare pivot infiniti."))),n(hn.a,{title:"Metodo delle due fasi"},n(pn.a,{title:"Metodo delle due fasi"},n("p",null,"Un estensione del Simplex per permettere la risoluzione di problemi la cui origine non è una soluzione ammissibile."),n("p",null,"Prevede l'introduzione di un ",n("i",null,"problema ausiliario"),", le cui incognite sono dette ",n("i",null,"artificiali"),"."),n("p",null,"Il vettore delle incognite artificiali è solitamente chiamato ",n(_n.b,null,Sn(x())),"."),n(vn.a,null,"E' spiegato in modo semplice ",n("a",{href:"https://web.archive.org/web/20200523052252/https://www.cs.cmu.edu/~15451-f17/handouts/simplex.pdf"},"qui"),".")),n(pn.a,{title:"Procedimento"},n("ol",null,n("li",null,"Crea un nuovo tableau, ",n("b",null,"aggiungendo variabili artificiali")," in modo da avere una base ammissibile."),n("li",null,"Sostituisci la vecchia funzione obiettivo con una nuova che ",n("b",null,"minimizzi la somma")," di tutte le variabili artificiali."),n("li",null,n("u",null,"Fase 1"),": ",n("b",null,"Risolvi")," il nuovo problema con il simplex primale."),n("li",null,"Se il Simplex termina quando ci sono ancora ",n("b",null,"variabili artificiali nella base"),", allora il poliedro è ",n("b",null,n(zn.a,null)),"."),n("li",null,"Una volta che le variabili artificiali sono fuori base, ",n("b",null,"elimina")," le loro colonne e la nuova funzione obiettivo.",n("br",null)),n("li",null,"Riporta il tableau in forma base compiendo operazioni per ",n("b",null,"azzerare i coefficienti")," delle variabili di base nella funzione obiettivo."),n("li",null,n("u",null,"Fase 2"),": ",n("b",null,"Risolvi")," il tableau con il simplex primale.")))),n(hn.a,{title:"Rilassamento"},n(pn.a,{title:"Cos'è?"},n("p",null,"Una versione semplificata di un problema nella quale si ",n("b",null,"ignora la violazione")," di uno o più vincoli.")),n(pn.a,{title:"Rilassamento di Lagrange"},n("p",null,"Un rilassamento che permette di misurare ",n("b",null,"di quanto i vincoli vengono violati"),"."),n("p",null,"I vincoli, moltiplicati per ",n("b",null,"coefficienti di rilassamento"),", vengono inseriti nella funzione obiettivo."),n("p",null,"Il vettore dei coefficienti di rilassamento solitamente è indicato con ",n(_n.b,null,Sn(g())),"."),n(vn.a,null,n("p",null,"Il sistema:"),n(_n.b,{inline:!1},Sn(v())),n("p",null,"diventa:"),n(_n.b,{inline:!1},Sn(p()))))),n(hn.a,{title:"Dualità"},n(pn.a,{title:"Duale"},n("p",null,"Il sistema che ",n("b",null,n(Tn.a,null,"massimizza"),"/",n(An.a,null,"minimizza")," i moltiplicatori di rilassamento")," di un problema detto ",n("i",null,"primale"),".")),n(pn.a,{title:"In termini matriciali"},n("p",null,"Possiamo ",n("b",null,"trasporre")," il tableau e sostituire le variabili ",n(_n.b,null,Sn(_()))," con variabili ",n(_n.b,null,Sn(h()))," per ottenere il sistema duale!"),n("p",null,"I maggiori e minori dei vincoli diventeranno maggiori e minori delle variabili e viceversa.")),n(pn.a,{title:"Feasibility del duale"},n("ul",null,n("li",null,"Se un problema ha una ",n("b",null,"soluzione finita"),", allora anche il suo duale la avrà."),n("li",null,"Se un problema è ",n("b",null,n(zn.a,null)),", allora il suo duale potrà essere ",n(zn.a,null)," oppure ",n(qn.a,null),"."),n("li",null,"Se un problema è ",n("b",null,n(qn.a,null)),", allora il suo duale sarà certamente ",n(zn.a,null),".")))),n(hn.a,{title:"Un po' di teoria"},n(pn.a,{title:"Lemma di Farkas"},n("p",null,"Una disuguaglianza lineare ",n(_n.b,null,Sn(m()))," è verificata da tutti i punti di un poliedro non-",n(zn.a,null)," se e solo se esiste un vettore ",n(_n.b,null,Sn(d()))," tale che:"),n(Ln.a,null,Sn(b())),n(Ln.a,null,Sn(f())),n("p",null,n(gn.a,null,"TODO: Cioè?"))),n(pn.a,{title:"Dualità forte"},n("p",null,"Il teorema che dimostra l'equivalenza tra primale e duale."),n("p",null,"Se uno dei due problemi è finito, la soluzione di uno coincide con la soluzione dell'altro."),n("p",null,n(_n.b,null,Sn(s()))),n("p",null,n(gn.a,null,"TODO: Anche qui c'è una lunga dimostrazione..."))),n(pn.a,{title:"Dualità debole"},n("p",null,"Il teorema che dimostra che il valore della funzione obiettivo del duale (di un qualsiasi tableau) è sempre ",n(Tn.a,null,"minore o uguale"),"/",n(An.a,null,"maggiore o uguale")," alla soluzione del corrispettivo primale."),n("p",null,n(gn.a,null,"TODO: Dimostrazione cortina, ma sembra complicata."))),n(pn.a,{title:"Condizioni di ottimalità"},n("p",null,"Il teorema che ci permette di passare dalla soluzione del duale alla soluzione del primale. ",n(gn.a,null,"TODO: credo?")),n("p",null,"Si deriva combinando le seguenti condizioni:"),n("ul",null,n("li",null,"Ammissibilità del primale: ",n(_n.b,null,Sn(c()))),n("li",null,"Ammissibilità del duale: ",n(_n.b,null,Sn(r()))),n("li",null,"Teorema della dualità forte: ",n(_n.b,null,Sn(o()))," (alla soluzione ottima)")),n("p",null,"Ne risulta che una soluzione è ottima se e solo se:"),n(Ln.a,null,Sn(u())),n(Ln.a,null,Sn(a())))),n(hn.a,{title:"Simplex duale"},n(pn.a,{title:"Cos'è?"},n("p",null,"Un'estensione al Simplex primale che opera sul problema duale.")),n(pn.a,{title:"Come funziona?"},n("p",null,"Funziona esattamente come il Simplex primale, ma opera sulle righe invece che sulle colonne, cercando di rendere ",n(Tn.a,null,"positivi"),"/",n(An.a,null,"negativi")," tutti i termini noti."),n(vn.a,null,"Significa che si possono moltiplicare tutti i valori di una riga per lo stesso numero e il risultato non cambia...?"))),n(hn.a,{title:"Analisi di sensibilità"},n(pn.a,{title:"Cos'è?"},n("p",null,"Un procedimento che misura di ",n("b",null,"quanto può variare")," il termine noto di un vincolo ",n(_n.b,null,Sn(e()))," o il coefficiente della funzione obiettivo ",n(_n.b,null,Sn(t()))," prima che la base degeneri. ",n(gn.a,null,"TODO: verificare")))))}}.call(this,i("hosL").h)},htlC:function(n){n.exports={splitparent:"splitparent__3-wBs",splitchild:"splitchild__begkX"}},imVn:function(n,l,i){"use strict";(function(n){var t=i("OmdA"),e=i.n(t),a=i("Y9Ml");l.a=function(l){return n(a.a,{color:l.color},n("h3",{class:e.a.title},l.title),n("div",{class:e.a.contents},l.children))}}).call(this,i("hosL").h)},wQ73:function(n,l,i){"use strict";var t=i("hosL");l.a=Object(t.createContext)(!0)},zDbI:function(n,l,i){"use strict";(function(n){var t=i("Q7TX");l.a=function(l){return n(t.b,{inline:!1,display:t.a.BLOCK},l.children)}}).call(this,i("hosL").h)}}]);
|
|
//# sourceMappingURL=route-OttimizzazioneLineare.chunk.60b21.js.map
|