{"id":2110,"date":"2016-02-10T16:10:29","date_gmt":"2016-02-10T15:10:29","guid":{"rendered":"http:\/\/smart--grid.net\/?page_id=2110"},"modified":"2022-12-03T22:58:55","modified_gmt":"2022-12-03T21:58:55","slug":"resolution-graphique","status":"publish","type":"page","link":"https:\/\/complex-systems-ai.com\/en\/linear-programming-2\/resolution-graphics\/","title":{"rendered":"LP: Graphic resolution"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"2110\" class=\"elementor elementor-2110\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-d0e44e7 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"d0e44e7\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-33 elementor-top-column elementor-element elementor-element-b2027a8\" data-id=\"b2027a8\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-ae249dd elementor-align-justify elementor-widget elementor-widget-button\" data-id=\"ae249dd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/complex-systems-ai.com\/en\/linear-programming-2\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Linear programming<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-33 elementor-top-column elementor-element elementor-element-b246b1f\" data-id=\"b246b1f\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-ffd3150 elementor-align-justify elementor-widget elementor-widget-button\" data-id=\"ffd3150\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/complex-systems-ai.com\/en\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Home page<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-33 elementor-top-column elementor-element elementor-element-a501d2c\" data-id=\"a501d2c\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-65184d2 elementor-align-justify elementor-widget elementor-widget-button\" data-id=\"65184d2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/fr.wikipedia.org\/wiki\/Optimisation_lin%C3%A9aire\" target=\"_blank\" rel=\"noopener\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Wiki<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-5e3c6c02 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"5e3c6c02\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2e4d69e1\" data-id=\"2e4d69e1\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-458d2283 elementor-widget elementor-widget-text-editor\" data-id=\"458d2283\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewbox=\"0 0 24 24\" version=\"1.2\" baseprofile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/complex-systems-ai.com\/en\/linear-programming-2\/resolution-graphics\/#Resolution-graphique\" >Graphics resolution<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/complex-systems-ai.com\/en\/linear-programming-2\/resolution-graphics\/#Domaine-realisable\" >Achievable domain<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/complex-systems-ai.com\/en\/linear-programming-2\/resolution-graphics\/#Tracer-la-fonction-objectif\" >Plot the objective function<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/complex-systems-ai.com\/en\/linear-programming-2\/resolution-graphics\/#Solutions-optimales\" >Optimal solutions<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/complex-systems-ai.com\/en\/linear-programming-2\/resolution-graphics\/#Les-quatre-possibilites-de-solution-optimale\" >The four optimal solution possibilities<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"Resolution-graphique\"><\/span>Graphics resolution<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>It is possible to solve the problems having two variables (or two constraints for a dual problem) directly by a graphic resolution. The resolution process takes place in three stages:<\/p>\n\n<ol class=\"wp-block-list\">\n<li>Achievable domain<\/li>\n<li>Plot the objective function<\/li>\n<li>Determine the optimal solution<\/li>\n<\/ol>\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Domaine-realisable\"><\/span>Achievable domain<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n<div style=\"padding: 3px; border: 2px dotted #a5a5a5; background-color: #f6f9fa;\">For this, we represent each constraint in the <a href=\"https:\/\/complex-systems-ai.com\/en\/graph-theory-2\/\">graph<\/a>, hatching or coloring the side that does not satisfy the constraint.<\/div>\n\n<div style=\"padding: 5px; background-color: #ffdcd3; border: 2px solid #ff7964; -moz-border-radius: 9px; -khtml-border-radius: 9px; -webkit-border-radius: 9px; border-radius: 9px;\">Thus, we highlight a <a href=\"https:\/\/complex-systems-ai.com\/en\/linear-programming-2\/lp-solutions-and-realizable-domain\/\">definition field<\/a> or feasible domain, any point in the domain of definition satisfies all the constraints of the <a href=\"https:\/\/complex-systems-ai.com\/en\/help-with-the-decision\/mathematical-modeling\/\">mathematical model<\/a>.<\/div>\n\n<p>Let&#039;s take it <a href=\"https:\/\/complex-systems-ai.com\/en\/linear-programming-2\/\">linear program<\/a> next :<\/p>\n\n<figure class=\"wp-block-image\"><img fetchpriority=\"high\" decoding=\"async\" class=\"alignnone wp-image-7253 size-medium\" src=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire8-1-300x264.png\" alt=\"Graphical resolution realizable domain linear programming\" width=\"300\" height=\"264\" title=\"\" srcset=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire8-1-300x264.png 300w, https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire8-1.png 524w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/figure>\n\n<p>Let us draw the domain of definition:<\/p>\n\n<p>Adding the first constraint and the type of variables<\/p>\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" class=\"alignnone wp-image-7254 size-full\" src=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire9.png\" alt=\"Graphical resolution realizable domain linear programming\" width=\"797\" height=\"644\" title=\"\" srcset=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire9.png 797w, https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire9-300x242.png 300w, https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire9-768x621.png 768w\" sizes=\"(max-width: 797px) 100vw, 797px\" \/><\/figure>\n\n<p>Addition of the second constraint<\/p>\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" class=\"alignnone wp-image-7255 size-full\" src=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire10.png\" alt=\"Graphical resolution realizable domain linear programming\" width=\"808\" height=\"654\" title=\"\" srcset=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire10.png 808w, https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire10-300x243.png 300w, https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire10-768x622.png 768w\" sizes=\"(max-width: 808px) 100vw, 808px\" \/><\/figure>\n\n<p>Addition of the third constraint<\/p>\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-7256 size-full\" src=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire11.png\" alt=\"Graphical resolution realizable domain linear programming\" width=\"806\" height=\"645\" title=\"\" srcset=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire11.png 806w, https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire11-300x240.png 300w, https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire11-768x615.png 768w\" sizes=\"(max-width: 806px) 100vw, 806px\" \/><\/figure>\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Tracer-la-fonction-objectif\"><\/span>Plot the objective function<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n<p>In order to solve the problem, we represent the objective function at point (100,0) then at various points (following the gradient of the objective function) until the objective function has only one point or one facet of the definition field.<\/p>\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-7257 size-full\" src=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire12.png\" alt=\"Graphical resolution realizable domain linear programming\" width=\"812\" height=\"651\" title=\"\" srcset=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire12.png 812w, https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire12-300x241.png 300w, https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire12-768x616.png 768w\" sizes=\"(max-width: 812px) 100vw, 812px\" \/><\/figure>\n\n<p>The gradient of the objective function is (350,300). The z value therefore increases when the objective function is moved in the same direction as the vector (350,300), therefore by moving towards the northeast corner. We can clearly see in the following figure that the value of z has increased by taking another line of the objective function.<\/p>\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-7258 size-full\" src=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire13.png\" alt=\"Graphical resolution realizable domain linear programming\" width=\"863\" height=\"639\" title=\"\" srcset=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire13.png 863w, https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire13-300x222.png 300w, https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire13-768x569.png 768w\" sizes=\"(max-width: 863px) 100vw, 863px\" \/><\/figure>\n\n<p>We then obtain the optimal overall solution (s). If we trace the objective function again by following the gradient, the line will be outside the domain of definition.<\/p>\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Solutions-optimales\"><\/span>Optimal solutions<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n<p>The optimal solution (s) are the last point (s) before the line of the objective function leaves the domain of definition.<\/p>\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-7259 size-full\" src=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire14.png\" alt=\"Graphical resolution realizable domain linear programming\" width=\"891\" height=\"649\" title=\"\" srcset=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire14.png 891w, https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire14-300x219.png 300w, https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire14-768x559.png 768w\" sizes=\"(max-width: 891px) 100vw, 891px\" \/><\/figure>\n\n<p>The optimal solution is found at the intersection of the first and second constraint, therefore satisfies both constraints. The solution vector is the solution of the system:<\/p>\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-7260 size-medium\" src=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire15-300x69.png\" alt=\"Graphical resolution realizable domain linear programming\" width=\"300\" height=\"69\" title=\"\" srcset=\"https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire15-300x69.png 300w, https:\/\/complex-systems-ai.com\/wp-content\/uploads\/2019\/10\/lineaire15.png 466w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/figure>\n\n<p>The solution of this system is (122,78) which gives z = 66100.<\/p>\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Les-quatre-possibilites-de-solution-optimale\"><\/span>The four optimal solution possibilities<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n<p>There are four possibilities:<\/p>\n\n<ul class=\"wp-block-list\">\n<li style=\"text-align: justify;\">either a unique solution exists (a point);<\/li>\n<li style=\"text-align: justify;\">either an infinity of solutions (one facet);<\/li>\n<li style=\"text-align: justify;\">either the solution is not bounded, the line of the objective function will always be in the domain of definition by following the gradient;<\/li>\n<li style=\"text-align: justify;\">or there is no solution, for example if the domain is empty.<\/li>\n<\/ul>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>Linear Programming Wiki Homepage Graphical Solving It is possible to solve problems with two variables (or two constraints for a dual problem) directly \u2026 <\/p>","protected":false},"author":1,"featured_media":0,"parent":486,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2110","page","type-page","status-publish","hentry"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/complex-systems-ai.com\/en\/wp-json\/wp\/v2\/pages\/2110","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/complex-systems-ai.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/complex-systems-ai.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/complex-systems-ai.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/complex-systems-ai.com\/en\/wp-json\/wp\/v2\/comments?post=2110"}],"version-history":[{"count":4,"href":"https:\/\/complex-systems-ai.com\/en\/wp-json\/wp\/v2\/pages\/2110\/revisions"}],"predecessor-version":[{"id":17906,"href":"https:\/\/complex-systems-ai.com\/en\/wp-json\/wp\/v2\/pages\/2110\/revisions\/17906"}],"up":[{"embeddable":true,"href":"https:\/\/complex-systems-ai.com\/en\/wp-json\/wp\/v2\/pages\/486"}],"wp:attachment":[{"href":"https:\/\/complex-systems-ai.com\/en\/wp-json\/wp\/v2\/media?parent=2110"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}