{"id":130,"date":"2009-07-15T14:49:16","date_gmt":"2009-07-15T12:49:16","guid":{"rendered":"http:\/\/wp1.fredptitgars.net\/index.php\/2009\/07\/15\/les-flots\/"},"modified":"2009-07-15T14:49:16","modified_gmt":"2009-07-15T12:49:16","slug":"les-flots","status":"publish","type":"post","link":"https:\/\/fredptitgars.ovh\/?p=130","title":{"rendered":"Les flots"},"content":{"rendered":"<p>Calcul  du flot maximum dans un graph reliant le puits (t) \u00e0 la source(s).<br \/>\n<br \/>Il faut respecter la loi de kirshoff: l&rsquo;ensemble flux entrant sur un n\u0153ud=l&rsquo;ensemble des flux sortant du m\u00eame n\u0153ud<\/p>\n<h2>Algorithme de Ford -Fulkerson<\/h2>\n<p>Recherche du flot complet<\/p>\n<ol>\n<ol>\n<li> On fait passer un flot au juger<\/li>\n<li> Am\u00e9liorer le flot jusqu&rsquo;\u00e0 ce qu\u2019on ait un flot complet- Flot qui sature suffisamment de relations pour que tout chemin entre source, s et la sortie t comporte au moins un arc satur\u00e9.<\/li>\n<\/ol>\n<li> Proc\u00e9dure de marquage\n<ol>\n<li> Marquer l \u2019entr\u00e9e du r\u00e9seau (+)<\/li>\n<li> Marquer toute extr\u00e9mit\u00e9, j, d \u2019un arc (i,j) non satur\u00e9 si origine,i , est marqu\u00e9e (+)<\/li>\n<li> Marquer l \u2019origine, k, (-) d \u2019un arc (k, l) transportant un flot non nul si extr\u00e9mit\u00e9,l , est marqu\u00e9e<\/li>\n<li> Si on ne peut marquer l \u2019extr\u00e9mit\u00e9, t, sortie du graphe, le flot est maximum<\/li>\n<li> Sinon le flot n \u2019est pas maximum. Am\u00e9liorer le flot en respectant les lois de Kirchoff. Retour en 3-1<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p>Dans cette exemple les valeur entre parenth\u00e8se repr\u00e9sente la valeur maximal, \u00e0 cot\u00e9 la valeur que l&rsquo;on fait pass\u00e9.<\/p>\n<p><strong>Etape 1:<\/strong><br \/>\nOn fait pass\u00e9 un flot au jug\u00e9 de pour obtenir sur tous chemin au moins un arc satur\u00e9.:<br \/>\n<br \/>SA: 15, SB: 35, SC: 30, AD: 5 , AF: 15, etc&#8230;<br \/>\n<br \/>toujours en respectant la loi de kirshoff<\/p>\n<figure id=\"attachment_126\" aria-describedby=\"caption-attachment-126\" style=\"width: 462px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\" aligncenter size-full wp-image-126\" src=\"https:\/\/fredptitgars.ovh\/wp-content\/uploads\/2009\/07\/graph1-5-d15.png\" alt=\"r\u00e9seau de transport R=(X,U,C)\" title=\"r\u00e9seau de transport R=(X,U,C)\" class=\"caption\" align=\"center\" width=\"462\" height=\"238\" srcset=\"https:\/\/fredptitgars.ovh\/wp-content\/uploads\/2009\/07\/graph1-5-d15.png 462w, https:\/\/fredptitgars.ovh\/wp-content\/uploads\/2009\/07\/graph1-5-d15-300x155.png 300w\" sizes=\"auto, (max-width: 462px) 100vw, 462px\" \/><figcaption id=\"caption-attachment-126\" class=\"wp-caption-text\"><strong>r\u00e9seau de transport R=(X,U,C)<\/strong><\/figcaption><\/figure>\n<p>V\u00e9rification:<br \/>\nen partant de S, je peux aller vers A en prenant un arc non satur\u00e9 puis la seule solution est d&rsquo;aller vers D car AF est satur\u00e9 et de D je suis coinc\u00e9 car plus de solution non satur\u00e9e SB est d\u00e9j\u00e0 satur\u00e9, donc fini. Enfin je peux prendre l&rsquo;arc SC  de C, je ne peux aller que vers E et la, je suis coinc\u00e9, donc c&rsquo;est Ok.<\/p>\n<p><strong>\u00c9tape 2 Marquage:<\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" aligncenter size-full wp-image-127\" src=\"https:\/\/fredptitgars.ovh\/wp-content\/uploads\/2009\/07\/graph2-5-e0b.png\" alt=\"graph2-5.png\" align=\"center\" width=\"404\" height=\"302\" srcset=\"https:\/\/fredptitgars.ovh\/wp-content\/uploads\/2009\/07\/graph2-5-e0b.png 404w, https:\/\/fredptitgars.ovh\/wp-content\/uploads\/2009\/07\/graph2-5-e0b-300x224.png 300w\" sizes=\"auto, (max-width: 404px) 100vw, 404px\" \/><\/p>\n<p>On part de la source S que l&rsquo;on marque d&rsquo;un +, puis on va regarder chaque arc partant d&rsquo;un &lsquo;+&rsquo; ,<br \/>\n<br \/>si l&rsquo;arc n&rsquo;est pas satur\u00e9, alors l&rsquo;extr\u00e9mit\u00e9 est aussi marqu\u00e9e d&rsquo;un &lsquo;+&rsquo; SC n&rsquo;est pas satur\u00e9, donc je marque le point C d&rsquo;un signe &lsquo;+&rsquo;. je pouvais \u00e9galement marquer A d&rsquo;un +  si l&rsquo;arc est satur\u00e9, je le marque d&rsquo;un signe &lsquo;-&lsquo; , donc, je marque B d&rsquo;un &lsquo;-&lsquo; car SB est satur\u00e9.<br \/>\n<br \/>Je part de C, ou je peut all\u00e9 \u00e0 E ou F. F est satur\u00e9, on peut le marqu\u00e9 de &lsquo;-&lsquo;, mais pas int\u00e9ressant, E n&rsquo;est pas satur\u00e9, on le marque de &lsquo;+&rsquo;. Depuis E, je ne peux pas aller direct a l&rsquo;arriv\u00e9e car c&rsquo;est satur\u00e9, mon objectif est d&rsquo;arriver a la fin T.<br \/>\n<br \/>Par contre, je peux reculer vers B car il est marqu\u00e9 de &lsquo;-&lsquo; et de B, je peux aller vers F car l&rsquo;arc n&rsquo;est pas satur\u00e9, donc je peux marque F d&rsquo;un &lsquo;+&rsquo;. Enfin, de F, je peux rejoindre le puits T car FT n&rsquo;est pas satur\u00e9. J&rsquo;ai donc identifi\u00e9 un chemin que je peux optimiser le chemin est le suivant : <em>SCEBFT<\/em> <\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" aligncenter size-full wp-image-128\" src=\"https:\/\/fredptitgars.ovh\/wp-content\/uploads\/2009\/07\/graph3-4-7ba.png\" alt=\"graph3-4.png\" align=\"center\" width=\"725\" height=\"404\" srcset=\"https:\/\/fredptitgars.ovh\/wp-content\/uploads\/2009\/07\/graph3-4-7ba.png 725w, https:\/\/fredptitgars.ovh\/wp-content\/uploads\/2009\/07\/graph3-4-7ba-300x167.png 300w\" sizes=\"auto, (max-width: 725px) 100vw, 725px\" \/><\/p>\n<p>On regarde la capacit\u00e9 d&rsquo;optimisation sur chaque arc, quand on avance : les noeuds marqu\u00e9s d&rsquo;un +<br \/>\n<br \/>La marge est la diff\u00e9rence entre ce qui passe r\u00e9ellement et la capacit\u00e9. Vous avez sur SC, vous avez une capacit\u00e9 de 40 mais seulement 30 passent, donc vous avez une marge de 10.<br \/>\n<br \/>Quand vous allez vers un n\u0153ud marqu\u00e9 &lsquo;-&lsquo;, vous avez une capacit\u00e9 de revenir \u00e0 zero, donc la marge est entre 0 et ce qui passe r\u00e9ellement. Sur la chaine \u00e0 am\u00e9liorer, le minimum est de 5 entre B et F, donc on va ajouter 5 \u00e0 chaque chemin + et retirer 5 \u00e0 chaque chemin marqu\u00e9 &#8211; les nouvelles valeurs sont sur le second graphe ci dessus<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" aligncenter size-full wp-image-129\" src=\"https:\/\/fredptitgars.ovh\/wp-content\/uploads\/2009\/07\/graph4-3-0c2.png\" alt=\"graph4-3.png\" align=\"center\" width=\"457\" height=\"314\" srcset=\"https:\/\/fredptitgars.ovh\/wp-content\/uploads\/2009\/07\/graph4-3-0c2.png 457w, https:\/\/fredptitgars.ovh\/wp-content\/uploads\/2009\/07\/graph4-3-0c2-300x206.png 300w\" sizes=\"auto, (max-width: 457px) 100vw, 457px\" \/><\/p>\n<ol>\n<li> Flot am\u00e9lior\u00e9<\/li>\n<li> Marquage sorite: impossible<br \/>\n=> flot maximal=85<\/li>\n<\/ol>\n<p>Sommet marqu\u00e9s 1= <em>S,A,B,C,D,E<\/em><br \/>\n<br \/>Sommet non marqu\u00e9s: A*=<em>T,F<\/em><\/p>\n<p><math>\nCapacit\u00e9 de la coupe C s\u00e9parant les sommets marqu\u00e9s des sommets non marqu\u00e9s $\\omega^+$=20+30+10+5+20=85\n<\/math><br \/>\nLe flot est optimal quelle est sa valeur ?<br \/>\n<br \/>La somme de tous les flux qui arrivent en T<br \/>\n<br \/>soit : 20 + 30 + 35 =85 qui correspond au flot maximal<br \/>\nAu lieu d&rsquo;optimiser en partant de C, nous aurions pu le faire en passant par A<br \/>\nSADBFT est aussi un chemin qui permet d&rsquo;optimiser on aurait pu l&rsquo;am\u00e9liorer seulement de 5 aussi.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Calcul du flot maximum dans un graph reliant le puits (t) \u00e0 la source(s). Il faut respecter la loi de kirshoff: l&rsquo;ensemble flux entrant sur un n\u0153ud=l&rsquo;ensemble des flux sortant du m\u00eame n\u0153ud Algorithme de Ford -Fulkerson Recherche du flot complet On fait passer un flot au juger Am\u00e9liorer le flot jusqu&rsquo;\u00e0 ce qu\u2019on ait [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":126,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[],"class_list":["post-130","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-rcp101-recherche-operationnelle-et-aide-a-la-decision"],"blocksy_meta":[],"_links":{"self":[{"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=\/wp\/v2\/posts\/130","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=130"}],"version-history":[{"count":0,"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=\/wp\/v2\/posts\/130\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=\/wp\/v2\/media\/126"}],"wp:attachment":[{"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=130"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=130"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=130"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}