diff options
| -rw-r--r-- | aoc/n3.lyx | 2 | ||||
| -rw-r--r-- | graf/n.lyx | 42 | ||||
| -rw-r--r-- | graf/n4.lyx | 6 | ||||
| -rw-r--r-- | graf/n5.lyx | 2106 | ||||
| -rw-r--r-- | graf/n6.lyx | 2099 | ||||
| -rw-r--r-- | graf/n7.lyx | 1822 |
6 files changed, 6075 insertions, 2 deletions
@@ -2220,7 +2220,7 @@ edge-cube routing . \end_layout -\begin_layout Section +\begin_layout Subsection Estrategia de conmutación \end_layout @@ -257,5 +257,47 @@ filename "n4.lyx" \end_layout +\begin_layout Chapter +Coloración de grafos +\end_layout + +\begin_layout Standard +\begin_inset CommandInset include +LatexCommand input +filename "n5.lyx" + +\end_inset + + +\end_layout + +\begin_layout Chapter +Programación lineal entera +\end_layout + +\begin_layout Standard +\begin_inset CommandInset include +LatexCommand input +filename "n6.lyx" + +\end_inset + + +\end_layout + +\begin_layout Chapter +Resolución de problemas de programación lineal entera +\end_layout + +\begin_layout Standard +\begin_inset CommandInset include +LatexCommand input +filename "n7.lyx" + +\end_inset + + +\end_layout + \end_body \end_document diff --git a/graf/n4.lyx b/graf/n4.lyx index ec6340b..6674531 100644 --- a/graf/n4.lyx +++ b/graf/n4.lyx @@ -1927,7 +1927,11 @@ problema del viajero \series bold del viajante \series default - en una red + ( +\series bold +de comercio +\series default +) en una red \begin_inset Formula $(V,E,\ell)$ \end_inset diff --git a/graf/n5.lyx b/graf/n5.lyx new file mode 100644 index 0000000..4ae5cf7 --- /dev/null +++ b/graf/n5.lyx @@ -0,0 +1,2106 @@ +#LyX 2.3 created this file. For more info see http://www.lyx.org/ +\lyxformat 544 +\begin_document +\begin_header +\save_transient_properties true +\origin unavailable +\textclass book +\begin_preamble +\usepackage{amssymb} +\end_preamble +\use_default_options true +\begin_modules +algorithm2e +\end_modules +\maintain_unincluded_children false +\language spanish +\language_package default +\inputencoding auto +\fontencoding global +\font_roman "default" "default" +\font_sans "default" "default" +\font_typewriter "default" "default" +\font_math "auto" "auto" +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 100 +\font_tt_scale 100 100 +\use_microtype false +\use_dash_ligatures true +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize default +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_package amsmath 1 +\use_package amssymb 1 +\use_package cancel 1 +\use_package esint 1 +\use_package mathdots 1 +\use_package mathtools 1 +\use_package mhchem 1 +\use_package stackrel 1 +\use_package stmaryrd 1 +\use_package undertilde 1 +\cite_engine basic +\cite_engine_type default +\biblio_style plain +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\justification true +\use_refstyle 1 +\use_minted 0 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\is_math_indent 0 +\math_numbering_side default +\quotes_style french +\dynamic_quotes 0 +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Standard +Dado un grafo +\begin_inset Formula $G=(V,E)$ +\end_inset + + y un conjunto +\begin_inset Formula $S$ +\end_inset + + de +\series bold +colores +\series default +, llamamos +\series bold +coloración +\series default + ( +\series bold +propia por vértices +\series default +) de +\begin_inset Formula $G$ +\end_inset + + a una función +\begin_inset Formula $f:V\to S$ +\end_inset + + con +\begin_inset Formula $f(u)\neq f(v)$ +\end_inset + + para +\begin_inset Formula $(u,v)\in E$ +\end_inset + +. + Si +\begin_inset Formula $|S|=k$ +\end_inset + +, +\begin_inset Formula $f$ +\end_inset + + es una +\series bold + +\begin_inset Formula $k$ +\end_inset + +-coloración +\series default +, y +\begin_inset Formula $G$ +\end_inset + + es +\series bold + +\begin_inset Formula $k$ +\end_inset + +-coloreable +\series default + si admite una +\begin_inset Formula $k$ +\end_inset + +-coloración. + Una +\begin_inset Formula $k$ +\end_inset + +-coloración +\begin_inset Formula $f$ +\end_inset + + induce una partición de +\begin_inset Formula $V$ +\end_inset + + en subconjuntos independientes, dados por +\begin_inset Formula $f^{-1}(c)$ +\end_inset + + para +\begin_inset Formula $c\in S$ +\end_inset + +. +\end_layout + +\begin_layout Standard +El +\series bold +número cromático +\series default + de un grafo +\begin_inset Formula $G=(V,E)$ +\end_inset + +, +\begin_inset Formula $\chi(G)$ +\end_inset + +, es el menor +\begin_inset Formula $k$ +\end_inset + + tal que +\begin_inset Formula $G$ +\end_inset + + es +\begin_inset Formula $k$ +\end_inset + +-coloreable, el mínimo número de conjuntos independientes en que se puede + particionar +\begin_inset Formula $V$ +\end_inset + +. + Ejemplos: Dado un grafo +\begin_inset Formula $G=(V,E)$ +\end_inset + +: +\end_layout + +\begin_layout Enumerate +\begin_inset Formula $\chi(K_{n})=n$ +\end_inset + +. +\end_layout + +\begin_deeper +\begin_layout Standard +En adelante +\begin_inset Formula $f$ +\end_inset + + será una coloración. + Entonces, en este caso, +\begin_inset Formula $f(i)\neq f(j)$ +\end_inset + + para +\begin_inset Formula $i\neq j$ +\end_inset + +, luego +\begin_inset Formula $f$ +\end_inset + + es inyectiva y su imagen tiene cardinal +\begin_inset Formula $|V|=n$ +\end_inset + +. +\end_layout + +\end_deeper +\begin_layout Enumerate +\begin_inset Formula $\chi(G)=0$ +\end_inset + + si y sólo si +\begin_inset Formula $G$ +\end_inset + + es vacío. +\end_layout + +\begin_deeper +\begin_layout Enumerate +\begin_inset Argument item:1 +status open + +\begin_layout Plain Layout +\begin_inset Formula $\implies$ +\end_inset + + +\end_layout + +\end_inset + +Si +\begin_inset Formula $\chi(G)=0$ +\end_inset + +, en particular existe +\begin_inset Formula $f:V\to\emptyset$ +\end_inset + + y +\begin_inset Formula $V=\emptyset$ +\end_inset + +. +\end_layout + +\begin_layout Enumerate +\begin_inset Argument item:1 +status open + +\begin_layout Plain Layout +\begin_inset Formula $\impliedby]$ +\end_inset + + +\end_layout + +\end_inset + +Si +\begin_inset Formula $V=\emptyset$ +\end_inset + +, +\begin_inset Formula $E=\emptyset$ +\end_inset + + y +\begin_inset Formula $f:V\to\emptyset$ +\end_inset + + es una 0-coloración. +\end_layout + +\end_deeper +\begin_layout Enumerate +\begin_inset Formula $\chi(G)=1$ +\end_inset + + si y sólo si +\begin_inset Formula $G$ +\end_inset + + es no vacío y sin ejes. +\end_layout + +\begin_deeper +\begin_layout Enumerate +\begin_inset Argument item:1 +status open + +\begin_layout Plain Layout +\begin_inset Formula $\implies]$ +\end_inset + + +\end_layout + +\end_inset + +Si existiera +\begin_inset Formula $(u,v)\in E$ +\end_inset + + sería +\begin_inset Formula $f(u)\neq f(v)$ +\end_inset + + y por tanto +\begin_inset Formula $|f(V)|\geq2\#$ +\end_inset + +, y si fuera +\begin_inset Formula $V=\emptyset$ +\end_inset + + sería +\begin_inset Formula $|f(V)|=0\#$ +\end_inset + +. +\end_layout + +\begin_layout Enumerate +\begin_inset Argument item:1 +status open + +\begin_layout Plain Layout +\begin_inset Formula $\impliedby]$ +\end_inset + + +\end_layout + +\end_inset + +Claramente +\begin_inset Formula $|f(V)|\geq1$ +\end_inset + +, pero podemos tomar todos los nodos del mismo color. +\end_layout + +\end_deeper +\begin_layout Enumerate +\begin_inset Formula $\chi(G)=2$ +\end_inset + + si y sólo si +\begin_inset Formula $G$ +\end_inset + + es bipartito con algún eje. +\end_layout + +\begin_deeper +\begin_layout Enumerate +\begin_inset Argument item:1 +status open + +\begin_layout Plain Layout +\begin_inset Formula $\implies]$ +\end_inset + + +\end_layout + +\end_inset + +La partición +\begin_inset Formula $\{f^{-1}(0),f^{-1}(1)\}$ +\end_inset + + de +\begin_inset Formula $V$ +\end_inset + + cumple que eje une dos vértices en el mismo conjunto y por tanto todos + unen un vértice de uno con uno del otro. + Hay algún eje porque si no lo hubiera sería +\begin_inset Formula $\chi(G)=1$ +\end_inset + +. +\end_layout + +\begin_layout Enumerate +\begin_inset Argument item:1 +status open + +\begin_layout Plain Layout +\begin_inset Formula $\impliedby]$ +\end_inset + + +\end_layout + +\end_inset + +Sea +\begin_inset Formula $(A,B)$ +\end_inset + + la partición, definimos +\begin_inset Formula $f(v):=0$ +\end_inset + + para +\begin_inset Formula $v\in A$ +\end_inset + + y +\begin_inset Formula $f(v):=1$ +\end_inset + + para +\begin_inset Formula $v\in B$ +\end_inset + +. + Entonces +\begin_inset Formula $f$ +\end_inset + + es una 2-coloración de +\begin_inset Formula $G$ +\end_inset + +, y como hay algún eje, +\begin_inset Formula $\chi(G)>1$ +\end_inset + +. +\end_layout + +\end_deeper +\begin_layout Enumerate +Todo árbol no trivial es bipartito. +\end_layout + +\begin_deeper +\begin_layout Standard +Se tiene +\begin_inset Formula $|V|\geq2$ +\end_inset + + y, sea +\begin_inset Formula $n(v)$ +\end_inset + + el nivel de un +\begin_inset Formula $v\in V$ +\end_inset + +, +\begin_inset Formula $f:V\to\{0,1\}$ +\end_inset + + dada por +\begin_inset Formula $f(v):=[n(v)]_{2}$ +\end_inset + + es una coloración de +\begin_inset Formula $G$ +\end_inset + +. + Como +\begin_inset Formula $G$ +\end_inset + + tiene ejes, +\begin_inset Formula $\chi(G)>1$ +\end_inset + + y +\begin_inset Formula $\chi(G)=2$ +\end_inset + +. +\end_layout + +\end_deeper +\begin_layout Enumerate +Sea +\begin_inset Formula $C_{n}$ +\end_inset + + el anillo o +\series bold +ciclo +\series default + de tamaño +\begin_inset Formula $n$ +\end_inset + +, +\begin_inset Formula +\[ +\chi(C_{n})=\begin{cases} +2, & n\text{ par};\\ +3, & n\text{ impar}. +\end{cases} +\] + +\end_inset + + +\end_layout + +\begin_deeper +\begin_layout Standard +Como +\begin_inset Formula $C_{n}:=(V:=\{0,\dots,n-1\},\{\{i,[i+1]_{n}\}\}_{i\in V})$ +\end_inset + + tiene ejes, +\begin_inset Formula $\chi(C_{n})\geq2$ +\end_inset + +. + Para +\begin_inset Formula $n$ +\end_inset + + par, tomamos +\begin_inset Formula $f(i)=[i]_{2}$ +\end_inset + +. + Para +\begin_inset Formula $n$ +\end_inset + + impar, si +\begin_inset Formula $C_{n}$ +\end_inset + + fuera bipartito, sea +\begin_inset Formula $V_{0}$ +\end_inset + + el elemento que contiene al 0 y +\begin_inset Formula $V_{1}$ +\end_inset + + el que contiene al 1, necesariamente +\begin_inset Formula $V_{0}\neq V_{1}$ +\end_inset + + y, por inducción, el que contiene a +\begin_inset Formula $i$ +\end_inset + + es +\begin_inset Formula $V_{[i]_{2}}$ +\end_inset + +, pero entonces +\begin_inset Formula $0,n-1\in V_{0}\#$ +\end_inset + +, con lo que +\begin_inset Formula $C_{n}$ +\end_inset + + no es bipartito y +\begin_inset Formula $\chi(C_{n})>2$ +\end_inset + +, y tomamos +\begin_inset Formula $f(i):=[i]_{2}$ +\end_inset + + para +\begin_inset Formula $i\in\{1,\dots,n-1\}$ +\end_inset + + y +\begin_inset Formula $f(0):=2$ +\end_inset + +. +\end_layout + +\end_deeper +\begin_layout Enumerate +Si +\begin_inset Formula $H$ +\end_inset + + es un subgrafo de +\begin_inset Formula $G$ +\end_inset + +, +\begin_inset Formula $\chi(H)\leq\chi(G)$ +\end_inset + +. +\end_layout + +\begin_deeper +\begin_layout Standard +Si +\begin_inset Formula $f$ +\end_inset + + es una +\begin_inset Formula $\chi(G)$ +\end_inset + +-coloración de +\begin_inset Formula $G$ +\end_inset + +, también es una +\begin_inset Formula $\chi(G)$ +\end_inset + +-coloración de +\begin_inset Formula $H$ +\end_inset + +. +\end_layout + +\end_deeper +\begin_layout Enumerate +Si +\begin_inset Formula $K_{q}$ +\end_inset + + es subgrafo de +\begin_inset Formula $G$ +\end_inset + +, +\begin_inset Formula $\chi(G)\geq q$ +\end_inset + +. +\end_layout + +\begin_deeper +\begin_layout Standard +\begin_inset Formula $q=\chi(K_{q})\leq\chi(G)$ +\end_inset + +. +\end_layout + +\end_deeper +\begin_layout Enumerate +Si +\begin_inset Formula $v\in V$ +\end_inset + +, +\begin_inset Formula $\chi(G-v)\in\{\chi(G),\chi(G)-1\}$ +\end_inset + +. +\end_layout + +\begin_deeper +\begin_layout Standard +Sean +\begin_inset Formula $k:=\chi(G-v)$ +\end_inset + + y +\begin_inset Formula $f:V\to\{1,\dots,k\}$ +\end_inset + + una +\begin_inset Formula $k$ +\end_inset + +-coloración de +\begin_inset Formula $G-v$ +\end_inset + +, +\begin_inset Formula $k\leq\chi(G)$ +\end_inset + +, y como +\begin_inset Formula $g:V\to\{1,\dots,k+1\}$ +\end_inset + + dada por +\begin_inset Formula $g(i):=f(i)$ +\end_inset + + para +\begin_inset Formula $i\neq v$ +\end_inset + + y +\begin_inset Formula $g(v):=k+1$ +\end_inset + + es una +\begin_inset Formula $(k+1)$ +\end_inset + +-coloración de +\begin_inset Formula $G$ +\end_inset + +, +\begin_inset Formula $\chi(G)\leq k+1$ +\end_inset + +. +\end_layout + +\end_deeper +\begin_layout Enumerate +Si +\begin_inset Formula $e\in E$ +\end_inset + +, +\begin_inset Formula $\chi(G-e)\in\{\chi(G),\chi(G)-1\}$ +\end_inset + +. +\end_layout + +\begin_deeper +\begin_layout Standard +Sea +\begin_inset Formula $e=:(u,v)$ +\end_inset + +, como +\begin_inset Formula $G-v$ +\end_inset + + es un subgrafo de +\begin_inset Formula $G-e$ +\end_inset + +, +\begin_inset Formula $\chi(G)-1\leq\chi(G-v)\leq\chi(G-e)\leq\chi(G)$ +\end_inset + +. +\end_layout + +\end_deeper +\begin_layout Standard +El coloreado de grafos se puede aplicar a problemas que traten de distribuir + productos con ciertas relaciones de incompatibilidad, como en el coloreado + de mapas, los sudokus. + la asignación de frecuencias en torres de telecomunicaciones, la organización + de horarios o la distribución de productos peligrosos en un almacén. +\end_layout + +\begin_layout Standard +\begin_inset Float algorithm +wide false +sideways false +status open + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +Entrada{Grafo $G=(V= +\backslash +{1, +\backslash +dots,n +\backslash +},E)$.} +\end_layout + +\begin_layout Plain Layout + + +\backslash +Salida{Coloración $f$ de $G$ que intenta usar pocos colores.} +\end_layout + +\begin_layout Plain Layout + + +\backslash +lPara{$i +\backslash +gets1$ +\backslash +KwA $n$}{$f_i +\backslash +gets +\backslash +min( +\backslash +mathbb N +\backslash +setminus +\backslash +{f_j +\backslash +}_{j +\backslash +in N(i),j<i})$} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption Standard + +\begin_layout Plain Layout +\begin_inset CommandInset label +LatexCommand label +name "alg:color" + +\end_inset + +Algoritmo heurístico para coloreado de grafos. +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Podemos colorear un grafo con el algoritmo +\begin_inset CommandInset ref +LatexCommand ref +reference "alg:color" +plural "false" +caps "false" +noprefix "false" + +\end_inset + +, aunque este no garantiza una coloración óptima. + Todo grafo +\begin_inset Formula $G$ +\end_inset + + cumple +\begin_inset Formula $\chi(G)\leq\Delta_{G}+1$ +\end_inset + +, pues el algoritmo siempre elige el menor color de todos salvo un conjunto + de tamaño máximo +\begin_inset Formula $\Delta_{G}$ +\end_inset + +. + Así, parece preferible al aplicar el algoritmo ordenar los nodos en orden + decreciente de sus grados. +\end_layout + +\begin_layout Standard + +\series bold +Teorema de Brooks: +\series default + Si un grafo conexo +\begin_inset Formula $G$ +\end_inset + + no es completo ni un ciclo de longitud impar, entonces +\begin_inset Formula $\chi(G)\leq\Delta_{G}$ +\end_inset + +. +\end_layout + +\begin_layout Section +Grafos críticos +\end_layout + +\begin_layout Standard +Un grafo +\begin_inset Formula $G=(V,E)$ +\end_inset + + es +\series bold +crítico +\series default + o +\series bold + +\begin_inset Formula $\chi(G)$ +\end_inset + +-crítico +\series default + si todo subgrafo estricto +\begin_inset Formula $H$ +\end_inset + + de +\begin_inset Formula $G$ +\end_inset + + cumple +\begin_inset Formula $\chi(H)<\chi(G)$ +\end_inset + +, +\series bold +crítico por ejes +\series default + si para todo +\begin_inset Formula $e\in E$ +\end_inset + + es +\begin_inset Formula $\chi(G-e)<\chi(G)$ +\end_inset + + y +\series bold +crítico por vértices +\series default + si para todo +\begin_inset Formula $v\in V$ +\end_inset + + es +\begin_inset Formula $\chi(G-v)<\chi(G)$ +\end_inset + +. + +\end_layout + +\begin_layout Standard +Entonces: +\end_layout + +\begin_layout Enumerate +\begin_inset Formula $G$ +\end_inset + + es crítico si y sólo si es crítico por ejes y por vértices. +\end_layout + +\begin_layout Enumerate +Si +\begin_inset Formula $G$ +\end_inset + + es crítico por ejes y no tiene nodos aislados, es crítico por vértices. +\end_layout + +\begin_deeper +\begin_layout Standard +Para +\begin_inset Formula $v\in V$ +\end_inset + +, +\begin_inset Formula $v$ +\end_inset + + es adyacente a algún +\begin_inset Formula $e\in E$ +\end_inset + + y +\begin_inset Formula $G-v$ +\end_inset + + es un subgrafo de +\begin_inset Formula $G-e$ +\end_inset + +. +\end_layout + +\end_deeper +\begin_layout Enumerate +\begin_inset Formula $G$ +\end_inset + + es crítico por ejes si y sólo si +\begin_inset Formula $\chi(G-e)=\chi(G)-1$ +\end_inset + + para todo +\begin_inset Formula $e\in E$ +\end_inset + +. +\end_layout + +\begin_deeper +\begin_layout Standard +\begin_inset Formula $\chi(G-e)\in\{\chi(G),\chi(G)-1\}$ +\end_inset + +. +\end_layout + +\end_deeper +\begin_layout Enumerate +Si +\begin_inset Formula $|V|\geq2$ +\end_inset + +, +\begin_inset Formula $G$ +\end_inset + + tiene un subgrafo crítico +\begin_inset Formula $H$ +\end_inset + + tal que +\begin_inset Formula $\chi(G)=\chi(H)$ +\end_inset + +. +\end_layout + +\begin_deeper +\begin_layout Standard +Si todos los vértices de +\begin_inset Formula $G$ +\end_inset + + son aislados, +\begin_inset Formula $\chi(G)=1$ +\end_inset + + y tomamos un subgrafo unipuntual, que es crítico. + En otro caso, sea +\begin_inset Formula $G_{0}$ +\end_inset + + el subgrafo de +\begin_inset Formula $G$ +\end_inset + + generado por sus vértices no aislados, claramente +\begin_inset Formula $G_{0}$ +\end_inset + + tiene orden al menos 2 y +\begin_inset Formula $\chi(G_{0})=\chi(G)$ +\end_inset + +. + Si +\begin_inset Formula $G_{0}$ +\end_inset + + es crítico, tomamos +\begin_inset Formula $G_{0}$ +\end_inset + +, y de lo contrario existe +\begin_inset Formula $e_{1}\in E$ +\end_inset + + con +\begin_inset Formula $\chi(H_{0}:=G_{0}-e_{1})=\chi(G_{0})$ +\end_inset + +. + Si todos los vértices de +\begin_inset Formula $H_{0}$ +\end_inset + + son aislados, +\begin_inset Formula $\chi(H_{0})=\chi(G)=1$ +\end_inset + + y tomamos un subgrafo unipuntual, y de lo contrario llamamos +\begin_inset Formula $G_{1}$ +\end_inset + + al subgrafo de +\begin_inset Formula $H_{0}$ +\end_inset + + generado por sus vértices no aislados y repetimos. + Como +\begin_inset Formula $E$ +\end_inset + + es finito, en algún momento se llega a un subgrafo crítico. +\end_layout + +\end_deeper +\begin_layout Standard +Como +\series bold +teorema +\series default +, si +\begin_inset Formula $G$ +\end_inset + + es crítico, +\begin_inset Formula $\chi(G)\leq\delta_{G}+1$ +\end_inset + +. + +\series bold +Demostración: +\series default + Sea +\begin_inset Formula $k:=\chi(G)$ +\end_inset + + y supongamos +\begin_inset Formula $k>\delta_{G}+1$ +\end_inset + +, con lo que +\begin_inset Formula $\delta_{G}\leq k-2$ +\end_inset + +. + Sea +\begin_inset Formula $v\in V$ +\end_inset + + con +\begin_inset Formula $o(v)=\delta_{G}$ +\end_inset + +, debe ser +\begin_inset Formula $\chi(G-v)=\chi(G)-1$ +\end_inset + +, pero en una coloración de +\begin_inset Formula $G-v$ +\end_inset + +, como +\begin_inset Formula $v$ +\end_inset + + es de menor grado, se usan a lo sumo +\begin_inset Formula $\delta_{G}\leq k-2$ +\end_inset + + colores para los vértices adyacentes a +\begin_inset Formula $v$ +\end_inset + + en +\begin_inset Formula $G$ +\end_inset + +, luego hay un color que no se ha utilizado y, pintando +\begin_inset Formula $v$ +\end_inset + + de ese color, tenemos una +\begin_inset Formula $(k-1)$ +\end_inset + +-coloración de +\begin_inset Formula $G\#$ +\end_inset + +. +\end_layout + +\begin_layout Section +Polinomio cromático +\end_layout + +\begin_layout Standard +Dados un grafo +\begin_inset Formula $G$ +\end_inset + + y +\begin_inset Formula $k\in\mathbb{N}$ +\end_inset + +, llamamos +\begin_inset Formula $p(G;k)$ +\end_inset + + al número de +\begin_inset Formula $k$ +\end_inset + +-coloraciones de +\begin_inset Formula $G$ +\end_inset + +. + Así: +\end_layout + +\begin_layout Enumerate +\begin_inset Formula $p(G,k)=0$ +\end_inset + + para todo +\begin_inset Formula $k<\chi(G)$ +\end_inset + +. +\end_layout + +\begin_layout Enumerate +\begin_inset Formula $p(K_{n},k)=k(k-1)\cdots(k-n+1)$ +\end_inset + +. +\end_layout + +\begin_layout Enumerate +Sea +\begin_inset Formula $P_{n}$ +\end_inset + + la malla unidimensional o +\series bold +cadena +\series default + de +\begin_inset Formula $n$ +\end_inset + + nodos, +\begin_inset Formula $p(P_{n},k)=k(k-1)^{n-1}$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Si +\begin_inset Formula $G=(V,E)$ +\end_inset + +, +\begin_inset Formula $u,v\in E$ +\end_inset + + y +\begin_inset Formula $e:=(u,v)$ +\end_inset + +, llamamos +\begin_inset Formula $G+e:=(V,E\cup\{e\})$ +\end_inset + +, y si +\begin_inset Formula $e\in E$ +\end_inset + + llamamos +\series bold +grafo contraído +\series default + a +\begin_inset Formula +\[ +G\circ e:=((V\setminus\{u,v\})\amalg\{*\},E_{V\setminus\{u,v\}}\cup(\{(*,i)\}_{(u,i)\in E}\cup\{(*,i)\}_{(v,i)\in E})\setminus\{u,v\}). +\] + +\end_inset + + +\end_layout + +\begin_layout Standard + +\series bold +Teorema de reducción: +\series default + Sean +\begin_inset Formula $G=(V,E)$ +\end_inset + + un grafo y +\begin_inset Formula $e\notin E^{\complement}$ +\end_inset + +, entonces +\begin_inset Formula $p(G;k)=p(G+e;k)+p(G\circ e;k)$ +\end_inset + +. + +\series bold +Demostración: +\series default + Sea +\begin_inset Formula $(u,v):=e$ +\end_inset + +, las coloraciones +\begin_inset Formula $f$ +\end_inset + + de +\begin_inset Formula $G$ +\end_inset + + con +\begin_inset Formula $f(u)=f(v)$ +\end_inset + + son precisamente las de +\begin_inset Formula $G\circ e$ +\end_inset + + haciendo +\begin_inset Formula $f(*):=f(u)=f(v)$ +\end_inset + +, y las coloraciones +\begin_inset Formula $f$ +\end_inset + + de +\begin_inset Formula $G$ +\end_inset + + con +\begin_inset Formula $f(u)\neq f(v)$ +\end_inset + + son precisamente las de +\begin_inset Formula $G+e$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Así, dados un grafo +\begin_inset Formula $G=(V,E)$ +\end_inset + + y un +\begin_inset Formula $e\in E$ +\end_inset + +, +\begin_inset Formula $p(G;k)=p(G-e;k)-p(G\circ e;k)$ +\end_inset + +, pues +\begin_inset Formula $G=(G-e)+e$ +\end_inset + + y +\begin_inset Formula $G\circ e=(G-e)\circ e$ +\end_inset + +. +\end_layout + +\begin_layout Standard +\begin_inset Newpage pagebreak +\end_inset + + +\end_layout + +\begin_layout Standard +El +\series bold +polinomio cromático +\series default + de +\begin_inset Formula $G$ +\end_inset + + es +\begin_inset Formula $p(G;k)$ +\end_inset + + respecto a +\begin_inset Formula $k$ +\end_inset + +, y si +\begin_inset Formula $G$ +\end_inset + + tiene grado +\begin_inset Formula $n\geq1$ +\end_inset + +, +\begin_inset Formula $p(G;k)$ +\end_inset + + es un polinomio de grado +\begin_inset Formula $n$ +\end_inset + + en que el coeficiente de grado +\begin_inset Formula $n$ +\end_inset + + es 1, el término independiente es 0 y los coeficientes de los términos + intermedios son enteros y se alternan en signo. + +\series bold +Demostración: +\series default + Sean +\begin_inset Formula $G=(V,E)$ +\end_inset + +, +\begin_inset Formula $n=|V|$ +\end_inset + + y +\begin_inset Formula $m=|E|$ +\end_inset + +, y hacemos inducción sobre +\begin_inset Formula $(n,m)$ +\end_inset + + (el orden lexicográfico es un buen orden en +\begin_inset Formula $\mathbb{N}^{*}\times\mathbb{N}$ +\end_inset + +). + Para +\begin_inset Formula $m=0$ +\end_inset + +, todos los puntos son aislados y +\begin_inset Formula $p(G;k)=k^{n}$ +\end_inset + +, y para +\begin_inset Formula $n=1$ +\end_inset + + es +\begin_inset Formula $m=0$ +\end_inset + +. + Sean ahora +\begin_inset Formula $n>1$ +\end_inset + + y +\begin_inset Formula $m>0$ +\end_inset + +, +\begin_inset Formula $p(G;k)=p(G-e;k)-p(G\circ e;k)$ +\end_inset + +, pero +\begin_inset Formula $G-e$ +\end_inset + + tiene un eje menos y +\begin_inset Formula $G\circ e$ +\end_inset + + tiene un nodo menos, luego ambos cumplen la hipótesis y como +\begin_inset Formula $p(G-e;k)$ +\end_inset + + tiene orden +\begin_inset Formula $n$ +\end_inset + + y +\begin_inset Formula $p(G\circ e;k)$ +\end_inset + + tiene orden +\begin_inset Formula $n-1$ +\end_inset + +, +\begin_inset Formula $p(G;k)$ +\end_inset + + cumple la hipótesis. +\end_layout + +\begin_layout Section +Planaridad +\end_layout + +\begin_layout Standard +Un grafo +\begin_inset Formula $G=(V,E)$ +\end_inset + + es +\series bold +planar +\series default + si existen +\begin_inset Formula $f:V\to\mathbb{R}^{2}$ +\end_inset + + inyectiva y +\begin_inset Formula $g:E\to[0,1]\to\mathbb{R}^{2}$ +\end_inset + + tales que, para +\begin_inset Formula $e:=(u,v)\in E$ +\end_inset + +, +\begin_inset Formula $g(e)$ +\end_inset + + es una curva regular simple que une +\begin_inset Formula $f(u)$ +\end_inset + + y +\begin_inset Formula $f(v)$ +\end_inset + +, no pasa por ningún vértice en +\begin_inset Formula $(0,1)$ +\end_inset + + y no corta a +\begin_inset Formula $g(e')$ +\end_inset + + para ningún otro +\begin_inset Formula $e'\in E$ +\end_inset + + en +\begin_inset Formula $(0,1)$ +\end_inset + +. + En tal caso +\begin_inset Formula $(V,E,f,g)$ +\end_inset + + es un +\series bold +grafo plano +\series default + o +\series bold +grafo embutido +\series default +, con imagen +\begin_inset Formula $f(V)\cup\bigcup_{e\in E}g(e)([0,1])$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Una +\series bold +estrella +\series default + es un grafo +\begin_inset Formula $G=(V,E)$ +\end_inset + + donde existe un +\begin_inset Formula $v\in V$ +\end_inset + + con +\begin_inset Formula $v\in e$ +\end_inset + + para todo +\begin_inset Formula $e\in E$ +\end_inset + +. + Toda estrella es planar. + En efecto, sea +\begin_inset Formula $G=(\{v_{0},\dots,v_{n}\},E)$ +\end_inset + + la estrella y +\begin_inset Formula $v_{0}\in e$ +\end_inset + + para todo +\begin_inset Formula $e\in E$ +\end_inset + +, llamamos +\begin_inset Formula $f(v_{0}):=0$ +\end_inset + +, +\begin_inset Formula $f(v_{i}):=(\cos i/n,\sin i/n)$ +\end_inset + + para +\begin_inset Formula $i\in\{1,\dots,n\}$ +\end_inset + + y +\begin_inset Formula $g(v_{0},v_{i})(t):=tv_{i}$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Sea +\begin_inset Formula $(V,E,f,g)$ +\end_inset + + un grafo plano con imagen +\begin_inset Formula $I$ +\end_inset + +, llamamos +\series bold +caras +\series default + a las componentes conexas de +\begin_inset Formula $\mathbb{R}^{2}\setminus I$ +\end_inset + + y +\series bold +cara externa +\series default + a la no acotada, que es única por ser +\begin_inset Formula $I$ +\end_inset + + compacto y por tanto acotado. + +\end_layout + +\begin_layout Standard +El +\series bold +contorno +\series default + de una cara es la imagen de un subgrafo de +\begin_inset Formula $G$ +\end_inset + +, que existe, cuya imagen con las mismas +\begin_inset Formula $f$ +\end_inset + + y +\begin_inset Formula $g$ +\end_inset + + es la frontera de la cara. + Los ejes y vértices de dicho subgrafo son +\series bold +incidentes +\series default + a la cara. + Un puente es incidente a una sola cara, y un eje no de corte es incidente + a 2 caras. +\end_layout + +\begin_layout Standard +El +\series bold +grado +\series default + de una cara +\begin_inset Formula $F$ +\end_inset + +, +\begin_inset Formula $d(F)$ +\end_inset + +, es el número de ejes incidentes a ella, contando los puentes dos veces. + Así, si +\begin_inset Formula $F$ +\end_inset + + es el conjunto de caras del grafo, +\begin_inset Formula $\sum_{f\in F}d(f)=2|E|$ +\end_inset + +. + Si +\begin_inset Formula $|V|\geq3$ +\end_inset + +, +\begin_inset Formula $d(f)\geq3$ +\end_inset + + para todo +\begin_inset Formula $f\in F$ +\end_inset + +. +\end_layout + +\begin_layout Standard + +\series bold +Identidad de Euler: +\series default + Si +\begin_inset Formula $G$ +\end_inset + + es un grafo plano conexo con +\begin_inset Formula $n$ +\end_inset + + vértices, +\begin_inset Formula $m$ +\end_inset + + ejes y +\begin_inset Formula $c$ +\end_inset + + caras, +\begin_inset Formula $n-m+c=2$ +\end_inset + +, y en particular todos los grafos planos de un mismo grafo planar conexo + tienen el mismo número de caras. + +\series bold +Demostración: +\series default + Si +\begin_inset Formula $c=1$ +\end_inset + +, +\begin_inset Formula $G$ +\end_inset + + no tiene ciclos y, al ser conexo, es un árbol, luego +\begin_inset Formula $m=n-1$ +\end_inset + + y +\begin_inset Formula $n-m+c=2$ +\end_inset + +. + Si +\begin_inset Formula $c\geq2$ +\end_inset + +, supuesto esto probado para +\begin_inset Formula $c-1$ +\end_inset + + caras, sean +\begin_inset Formula $C$ +\end_inset + + un ciclo de +\begin_inset Formula $G$ +\end_inset + + y +\begin_inset Formula $e$ +\end_inset + + un eje de +\begin_inset Formula $C$ +\end_inset + +, +\begin_inset Formula $e$ +\end_inset + + no es un puente, luego es incidente a 2 caras y se puede ver que +\begin_inset Formula $G-e$ +\end_inset + + tiene +\begin_inset Formula $c-1$ +\end_inset + + caras y es conexo, de modo que por hipótesis +\begin_inset Formula $n-(m-1)+(c-1)=2$ +\end_inset + + y +\begin_inset Formula $n-m+c=2$ +\end_inset + +. +\end_layout + +\begin_layout Standard +En un grafo plano con al menos 3 nodos, toda cara tiene al menos 3 ejes + incidentes. + Entonces, si +\begin_inset Formula $G$ +\end_inset + + es un grafo planar conexo con +\begin_inset Formula $n\geq3$ +\end_inset + + vértices y +\begin_inset Formula $m$ +\end_inset + + nodos, +\begin_inset Formula $m\leq3n-6$ +\end_inset + +, y si además +\begin_inset Formula $G$ +\end_inset + + no contiene a +\begin_inset Formula $K_{3}$ +\end_inset + +, +\begin_inset Formula $m\leq2n-4$ +\end_inset + +. + +\series bold +Demostración: +\series default + Sean +\begin_inset Formula $F$ +\end_inset + + el conjunto de las caras de un grafo plano arbitrario de +\begin_inset Formula $G$ +\end_inset + + y +\begin_inset Formula $c:=|F|$ +\end_inset + +, como toda +\begin_inset Formula $f\in F$ +\end_inset + + cumple +\begin_inset Formula $d(f)\geq3$ +\end_inset + +, +\begin_inset Formula $3c\leq\sum_{f\in F}d(f)=2m$ +\end_inset + +, y como +\begin_inset Formula $c=2-n+m$ +\end_inset + +, tenemos +\begin_inset Formula $6-3n+3m\leq2m$ +\end_inset + + y +\begin_inset Formula $m\leq3n-6$ +\end_inset + +. + Si una cara +\begin_inset Formula $f$ +\end_inset + + cumple +\begin_inset Formula $d(f)=3$ +\end_inset + +, se puede ver que el único grafo con 3 ejes contando doblemente los puentes + es +\begin_inset Formula $K_{3}$ +\end_inset + +, por lo que si +\begin_inset Formula $G$ +\end_inset + + no contiene a +\begin_inset Formula $K_{3}$ +\end_inset + +, +\begin_inset Formula $d(f)\geq4$ +\end_inset + +, +\begin_inset Formula $4c=8-4n+4m\leq2m$ +\end_inset + + y +\begin_inset Formula $2m\leq4n-8$ +\end_inset + +, por lo que +\begin_inset Formula $m\leq2n-4$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Por ejemplo, el +\series bold +grafo de Petersen +\series default +, +\begin_inset Formula $(\{a_{i},b_{i}\}_{i=0}^{4},\{(a_{i},b_{i}),(a_{i},a_{[i+1]_{5}}),(b_{i},b_{[i+2]_{5}})\}_{i=0}^{4})$ +\end_inset + +, no es un grafo planar, pues tiene 5 nodos y 15 ejes, y +\begin_inset Formula $15>9=3\cdot5-6$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Sea +\begin_inset Formula $F$ +\end_inset + + una cara de un grafo plano con +\begin_inset Formula $d(F)\geq4$ +\end_inset + +, el grafo tiene dos vértices no adyacentes en +\begin_inset Formula $F$ +\end_inset + +. + Entonces, si +\begin_inset Formula $G$ +\end_inset + + es un grafo planar maximal con al menos 3 nodos, toda cara +\begin_inset Formula $F$ +\end_inset + + de todo grafo plano de +\begin_inset Formula $G$ +\end_inset + + cumple +\begin_inset Formula $d(F)=3$ +\end_inset + +. + Como +\series bold +teorema +\series default +, todo grafo planar maximal con +\begin_inset Formula $n$ +\end_inset + + nodos tiene exactamente +\begin_inset Formula $3n-6$ +\end_inset + + ejes. +\end_layout + +\begin_layout Standard +Dado un grafo +\begin_inset Formula $G=(V,E)$ +\end_inset + +, una +\series bold +subdivisión de un eje +\series default + +\begin_inset Formula $e=(u,v)\in E$ +\end_inset + + es el grafo +\begin_inset Formula $(V\amalg\{*\},E\setminus e\cup(u,*)\cup(*,v))$ +\end_inset + +, y una +\series bold +subdivisión +\series default + de +\begin_inset Formula $G$ +\end_inset + + es el resultado de realizar subdivisiones sucesivas sobre +\begin_inset Formula $G$ +\end_inset + +. +\end_layout + +\begin_layout Standard + +\series bold +Teorema de Kuratowski: +\series default + Un grafo es planar si y sólo si no contiene como subgrafo ninguna subdivisión + de +\begin_inset Formula $K_{5}$ +\end_inset + + ni de +\begin_inset Formula $K_{3,3}$ +\end_inset + +. +\end_layout + +\begin_layout Standard + +\series bold +Teorema de los 4 colores: +\series default + Todo grafo planar es 4-coloreable. +\end_layout + +\end_body +\end_document diff --git a/graf/n6.lyx b/graf/n6.lyx new file mode 100644 index 0000000..e296d0b --- /dev/null +++ b/graf/n6.lyx @@ -0,0 +1,2099 @@ +#LyX 2.3 created this file. For more info see http://www.lyx.org/ +\lyxformat 544 +\begin_document +\begin_header +\save_transient_properties true +\origin unavailable +\textclass book +\begin_preamble +\usepackage{amssymb} +\end_preamble +\use_default_options true +\begin_modules +algorithm2e +\end_modules +\maintain_unincluded_children false +\language spanish +\language_package default +\inputencoding auto +\fontencoding global +\font_roman "default" "default" +\font_sans "default" "default" +\font_typewriter "default" "default" +\font_math "auto" "auto" +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 100 +\font_tt_scale 100 100 +\use_microtype false +\use_dash_ligatures true +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize default +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_package amsmath 1 +\use_package amssymb 1 +\use_package cancel 1 +\use_package esint 1 +\use_package mathdots 1 +\use_package mathtools 1 +\use_package mhchem 1 +\use_package stackrel 1 +\use_package stmaryrd 1 +\use_package undertilde 1 +\cite_engine basic +\cite_engine_type default +\biblio_style plain +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\justification true +\use_refstyle 1 +\use_minted 0 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\is_math_indent 0 +\math_numbering_side default +\quotes_style french +\dynamic_quotes 0 +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Standard +Un +\series bold +modelo +\series default + o +\series bold +problema de programación lineal entera +\series default + es un modelo de programación u optimización lineal al que se le añade la + restricción de que algunas o todas las variables deben ser enteras. + El modelo general es +\begin_inset Formula +\begin{align*} + & \max & \sum_{i=1}^{n}c_{i}x_{i}\\ + & & \sum_{i=1}^{n}a_{ij}x_{i} & \leq b_{j}, & & \forall j\in\{1,\dots,m\},\\ + & & x_{i} & \geq0, & & \forall i\in\{1,\dots,n\},\\ + & & x_{i} & \in\mathbb{Z}, & & \forall i\in I\subseteq\{1,\dots,n\}. +\end{align*} + +\end_inset + + +\end_layout + +\begin_layout Standard +El problema es +\series bold +entero puro +\series default + si +\begin_inset Formula $I=\{1,\dots,n\}$ +\end_inset + + y +\series bold +entero mixto +\series default + en otro caso. + Como en la programación lineal, se pueden hacer transformaciones como cambiar + el sentido de optimización del problema, el sentido de una restricción + o el signo de una variable; convertir una restricción de igualdad en dos + de desigualdad, o transformar una variable no restringida en dos variables + positivas. +\end_layout + +\begin_layout Standard +Llamamos +\series bold +relajación lineal +\series default + de un problema de programación lineal entera al resultado de eliminar de + este las +\series bold +restricciones de integridad +\series default +, las de la forma +\begin_inset Formula $x_{i}\in\mathbb{Z}$ +\end_inset + +. + El valor óptimo de la relajación lineal es mejor o igual al del problema + entero. +\end_layout + +\begin_layout Standard +Si +\begin_inset Formula $x\in\mathbb{R}^{m}$ +\end_inset + + e +\begin_inset Formula $y\in\mathbb{R}^{n}$ +\end_inset + +, llamamos +\begin_inset Formula $[x,y]:=(x_{1},\dots,x_{m},y_{1},\dots,y_{n})\in\mathbb{R}^{n+m}$ +\end_inset + +; si +\begin_inset Formula $A\in{\cal M}_{n\times p}(\mathbb{R})$ +\end_inset + + y +\begin_inset Formula $B\in{\cal M}_{n\times q}(\mathbb{R})$ +\end_inset + +, llamamos +\begin_inset Formula $[A,B]:=(c_{ij})\in{\cal M}_{n\times(p+q)}(\mathbb{R})$ +\end_inset + + dada por +\begin_inset Formula $c_{ij}:=a_{ij}$ +\end_inset + + para +\begin_inset Formula $j\leq p$ +\end_inset + + y +\begin_inset Formula $c_{ij}:=b_{i(j-p)}$ +\end_inset + + para +\begin_inset Formula $j>p$ +\end_inset + +, y escribimos +\begin_inset Formula $[x_{1},\dots,x_{n}]:=[x_{1},[x_{2},\dots,x_{n}]]$ +\end_inset + + para +\begin_inset Formula $n>2$ +\end_inset + + y +\begin_inset Formula $[x_{1}]:=x_{1}$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Como +\series bold +teorema +\series default +, sean +\begin_inset Formula $A\in{\cal M}_{n\times p}(\mathbb{Q})$ +\end_inset + +, +\begin_inset Formula $G\in{\cal M}_{n\times q}(\mathbb{Q})$ +\end_inset + +, +\begin_inset Formula $b\in\mathbb{Q}^{n}$ +\end_inset + +, +\begin_inset Formula $P:=\{[x,y]\in\mathbb{R}^{p+q}:Ax+Gy\leq b\}$ +\end_inset + + y +\begin_inset Formula $S:=\{[x,y]\in P:x\in\mathbb{Z}^{p}\}$ +\end_inset + +, existen +\begin_inset Formula $A'\in{\cal M}_{n\times p}(\mathbb{Q})$ +\end_inset + +, +\begin_inset Formula $G'\in{\cal M}_{n\times q}(\mathbb{Q})$ +\end_inset + + y +\begin_inset Formula $b'\in\mathbb{Q}^{n}$ +\end_inset + + tales que +\begin_inset Formula $\text{ec}S=\{[x,y]:A'x+G'y\leq b'\}$ +\end_inset + +. + Si algunos coeficientes son irracionales, la envoltura convexa del conjunto + factible puede no ser un poliedro. + +\series bold +Demostración: +\series default + Sean +\begin_inset Formula $S:=\{(x,y)\in\mathbb{Z}^{2}:y\leq\sqrt{2}x,x\geq0,y\geq0\}$ +\end_inset + + y +\begin_inset Formula $C:=\{(x,y):y<\sqrt{2}x,x\geq0,y\geq0\}\cup\{0\}$ +\end_inset + +. + Como para +\begin_inset Formula $x\in\mathbb{Z}$ +\end_inset + + es +\begin_inset Formula $\sqrt{2}x\notin\mathbb{Z}$ +\end_inset + +, +\begin_inset Formula $S\subseteq C$ +\end_inset + +. + Sean +\begin_inset Formula $a,b\in C$ +\end_inset + +, +\begin_inset Formula $t\in[0,1]$ +\end_inset + + y +\begin_inset Formula $p:=(1-t)a+tb$ +\end_inset + +, si uno de +\begin_inset Formula $a$ +\end_inset + + o +\begin_inset Formula $b$ +\end_inset + + es 0, por ejemplo +\begin_inset Formula $a$ +\end_inset + +, entonces +\begin_inset Formula $p=(tb_{1},tb_{2})$ +\end_inset + +, que es 0 si +\begin_inset Formula $t=0$ +\end_inset + + y en otro caso cumple las otras condiciones, y en otro caso +\begin_inset Formula $p$ +\end_inset + + +\begin_inset Quotes cld +\end_inset + +hereda +\begin_inset Quotes crd +\end_inset + + las otras condiciones de +\begin_inset Formula $a$ +\end_inset + + y +\begin_inset Formula $b$ +\end_inset + +. + Por tanto +\begin_inset Formula $C$ +\end_inset + + es conexo y +\begin_inset Formula $\text{ec}S\subseteq C$ +\end_inset + +. + Además, +\begin_inset Formula $0\in S$ +\end_inset + + y para +\begin_inset Formula $(x,y)\in C\setminus\{0\}$ +\end_inset + +, como +\begin_inset Formula $x>0$ +\end_inset + +, +\begin_inset Formula $\frac{y}{x}<\sqrt{2}$ +\end_inset + + y existen +\begin_inset Formula $p,q\in\mathbb{Z}$ +\end_inset + + con +\begin_inset Formula $\frac{p}{q}\in[\frac{y}{x},\sqrt{2})$ +\end_inset + +, luego +\begin_inset Formula $(q,p)\in S$ +\end_inset + + y, como +\begin_inset Formula $(q,0)\in S$ +\end_inset + + y +\begin_inset Formula $p>q\frac{y}{x}$ +\end_inset + +, +\begin_inset Formula $(q,q\frac{y}{x})\in\text{ec}S$ +\end_inset + + y +\begin_inset Formula $(q\frac{x}{q},q\frac{y}{x}\frac{x}{q})=(x,y)\in\text{ec}S$ +\end_inset + +, luego +\begin_inset Formula $C\subseteq\text{ec}S$ +\end_inset + +. + Así, +\begin_inset Formula $C=\text{ec}S$ +\end_inset + +, pero +\begin_inset Formula $C$ +\end_inset + + no es un poliedro. +\end_layout + +\begin_layout Standard +Sean +\begin_inset Formula $A\in{\cal M}_{m\times n}(\mathbb{Q})$ +\end_inset + +, +\begin_inset Formula $b\in\mathbb{Q}^{m}$ +\end_inset + + y +\begin_inset Formula $P:=\{x\in\mathbb{R}^{n}:Ax\leq b\}$ +\end_inset + +, si +\begin_inset Formula $P_{I}:=\text{ec}(P\cap\mathbb{Z}^{n})\neq\emptyset$ +\end_inset + +, para +\begin_inset Formula $c\in\mathbb{R}^{n}$ +\end_inset + +, +\begin_inset Formula $\{c\cdot x\}_{x\in P_{I}}$ +\end_inset + + está acotado superiormente si y sólo si lo está +\begin_inset Formula $\{c\cdot x\}_{x\in P}$ +\end_inset + +. +\end_layout + +\begin_layout Section +Matrices totalmente unimodulares +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +sremember{OL} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Sean +\begin_inset Formula $A\in{\cal M}_{m\times n}(\mathbb{R})$ +\end_inset + + de rango +\begin_inset Formula $m$ +\end_inset + + (por tanto +\begin_inset Formula $m\leq n$ +\end_inset + +), +\begin_inset Formula $b\in\mathbb{R}^{m}$ +\end_inset + + y +\begin_inset Formula $c\in\mathbb{R}^{n}$ +\end_inset + +. + [...] Llamamos +\begin_inset Formula $A_{1},\dots,A_{n}$ +\end_inset + + a las columnas de +\begin_inset Formula $A$ +\end_inset + + [...]. +\end_layout + +\begin_layout Standard +Dado +\begin_inset Formula $S\subseteq\{1,\dots,n\}$ +\end_inset + +, la submatriz +\begin_inset Formula $B\in{\cal M}_{m}(\mathbb{R})$ +\end_inset + + formada por las columnas de +\begin_inset Formula $A$ +\end_inset + + con índice en +\begin_inset Formula $S$ +\end_inset + + es +\series bold +básica +\series default + si es de rango máximo. + Entonces, de las variables +\begin_inset Formula $x_{1},\dots,x_{n}$ +\end_inset + +, [...] +\begin_inset Formula $x_{k}$ +\end_inset + + es una +\series bold +variable básica +\series default + [...] si +\begin_inset Formula $k\in S$ +\end_inset + + [...] ([...] +\begin_inset Formula $N$ +\end_inset + + es la submatriz formada por las columnas de +\begin_inset Formula $A$ +\end_inset + + con índice no en +\begin_inset Formula $S$ +\end_inset + +). +\end_layout + +\begin_layout Standard +[...] Si +\begin_inset Formula $S=\{s_{1},\dots,s_{m}\}$ +\end_inset + + y +\begin_inset Formula $\{1,\dots,n\}\setminus S=\{t_{1},\dots,t_{n-m}\}$ +\end_inset + + con +\begin_inset Formula $s_{1}<\dots<s_{m}$ +\end_inset + + y +\begin_inset Formula $t_{1}<\dots<t_{n-m}$ +\end_inset + +, llamamos +\begin_inset Formula $x_{B}:=(x_{s_{1}},\dots,x_{s_{m}})$ +\end_inset + +, +\begin_inset Formula $x_{N}:=(x_{t_{1}},\dots,x_{t_{n-m}})$ +\end_inset + +, +\begin_inset Formula $\mathbf{b}(x_{1},\dots,x_{m})=\sum_{k}e_{s_{k}}x_{k}$ +\end_inset + + y +\begin_inset Formula $\mathbf{n}(x_{1},\dots,x_{n-m}):=\sum_{k}e_{t_{k}}x_{k}$ +\end_inset + +, +\begin_inset Formula $\mathbf{b}\in{\cal M}_{n\times m}(\mathbb{R})$ +\end_inset + +, +\begin_inset Formula $\mathbf{n}\in{\cal M}_{n\times(n-m)}(\mathbb{R})$ +\end_inset + +. + [...] +\end_layout + +\begin_layout Standard +Llamamos +\series bold +solución básica +\series default + a [...] +\begin_inset Formula $x\in\{Ax=b\}$ +\end_inset + + con +\begin_inset Formula $x_{N}=0$ +\end_inset + + y, por tanto, [...] +\begin_inset Formula $x_{B}=B^{-1}b$ +\end_inset + +, y [...] es +\series bold +factible +\series default + si +\begin_inset Formula $x\geq0$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Dado +\begin_inset Formula $F:=\{Ax=b,x\geq0\}$ +\end_inset + +, +\begin_inset Formula $x\in F$ +\end_inset + + es un punto extremo si y sólo si es una solución básica factible. + Además, si +\begin_inset Formula $F\neq\emptyset$ +\end_inset + +, existe al menos un punto extremo. +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +eremember +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Formula $A\in{\cal M}_{m\times n}(\mathbb{R})$ +\end_inset + + es +\series bold +unimodular +\series default + si tiene rango máximo, todos sus coeficientes son enteros y el determinante + de cualquier submatriz cuadrada de tamaño máximo es 1, 0 o +\begin_inset Formula $-1$ +\end_inset + +, y es +\series bold +totalmente unimodular +\series default + si el determinante de cualquier submatriz cuadrada es 1, 0 o +\begin_inset Formula $-1$ +\end_inset + +, de modo que todas sus entradas son 1, 0 +\begin_inset Formula $-1$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Un poliedro +\begin_inset Formula $P\subseteq\mathbb{R}$ +\end_inset + + es +\series bold +entero +\series default + si todos sus puntos extremos están en +\begin_inset Formula $\mathbb{Z}^{n}$ +\end_inset + +. +\end_layout + +\begin_layout Standard + +\series bold +Lema de Veinott-Dantzig: +\series default + Si +\begin_inset Formula $m<n$ +\end_inset + +, +\begin_inset Formula $A\in{\cal M}_{m\times n}(\mathbb{Z})$ +\end_inset + + de rango +\begin_inset Formula $m$ +\end_inset + + es unimodular si y sólo si para cada +\begin_inset Formula $b\in\mathbb{Z}^{m}$ +\end_inset + +, +\begin_inset Formula $Q:=\{x\in\mathbb{R}^{n}:Ax=b,x\geq0\}$ +\end_inset + + es entero. +\end_layout + +\begin_layout Itemize +\begin_inset Argument item:1 +status open + +\begin_layout Plain Layout +\begin_inset Formula $\implies]$ +\end_inset + + +\end_layout + +\end_inset + +Sea +\begin_inset Formula $x$ +\end_inset + + un punto extremo de +\begin_inset Formula $Q$ +\end_inset + +, +\begin_inset Formula $x$ +\end_inset + + es una solución básica factible y tiene forma +\begin_inset Formula $x=:\mathbf{b}B^{-1}b$ +\end_inset + + para cierta submatriz +\begin_inset Formula $B\in{\cal M}_{m}(\mathbb{Z})$ +\end_inset + + no singular de +\begin_inset Formula $A$ +\end_inset + +. + La adjunta de +\begin_inset Formula $B$ +\end_inset + + también tiene coeficientes enteros, y como +\begin_inset Formula $|B|\in\{\pm1\}$ +\end_inset + +, +\begin_inset Formula $B^{-1}=\frac{1}{|B|}\text{adj}B\in{\cal M}_{m}(\mathbb{Z})$ +\end_inset + + y +\begin_inset Formula $x\in\mathbb{Z}^{n}$ +\end_inset + +. +\end_layout + +\begin_layout Itemize +\begin_inset Argument item:1 +status open + +\begin_layout Plain Layout +\begin_inset Formula $\impliedby]$ +\end_inset + + +\end_layout + +\end_inset + +Sea +\begin_inset Formula $B\in{\cal M}_{m}(\mathbb{Z})$ +\end_inset + + una submatriz no singular de +\begin_inset Formula $A$ +\end_inset + + y queremos ver que +\begin_inset Formula $|B|\in\{\pm1\}$ +\end_inset + +. + Para +\begin_inset Formula $i\in\{1,\dots,n\}$ +\end_inset + +, sean +\begin_inset Formula $y\in\mathbb{Z}^{m}$ +\end_inset + + tal que +\begin_inset Formula $z:=y+(B^{-1})_{i}\geq0$ +\end_inset + + y +\begin_inset Formula $b:=Bz=By+e_{i}$ +\end_inset + +, +\begin_inset Formula $b\in\mathbb{Z}^{m}$ +\end_inset + + al tener +\begin_inset Formula $B$ +\end_inset + +, +\begin_inset Formula $y$ +\end_inset + + y +\begin_inset Formula $e_{i}$ +\end_inset + + todos los coeficientes enteros, luego +\begin_inset Formula $Q:=\{Ax=b,x\geq0\}$ +\end_inset + + es entero y +\begin_inset Formula $x:=\mathbf{b}z=\mathbf{b}B^{-1}b$ +\end_inset + + es una solución básica factible de +\begin_inset Formula $\{Ax=b,x\geq0\}$ +\end_inset + + y por tanto un punto extremo de +\begin_inset Formula $Q$ +\end_inset + +, de modo que +\begin_inset Formula $x=\mathbf{b}(y+(B^{-1})_{i})\in\mathbb{Z}^{m}$ +\end_inset + +, +\begin_inset Formula $(B^{-1})_{i}\in\mathbb{Z}^{m}$ +\end_inset + + y, como +\begin_inset Formula $i$ +\end_inset + + es arbitrario, +\begin_inset Formula $B^{-1}\in\mathbb{Z}^{m}$ +\end_inset + +. + Ahora bien, como +\begin_inset Formula $B$ +\end_inset + + y +\begin_inset Formula $B^{-1}$ +\end_inset + + son enteras y +\begin_inset Formula $|B||B^{-1}|=1$ +\end_inset + +, +\begin_inset Formula $|B|\in\{1,-1\}$ +\end_inset + +. +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +begin{samepage} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard + +\series bold +Teorema de Hoffman-Kruskal: +\series default + +\begin_inset Formula $A\in{\cal M}_{m\times n}(\mathbb{Z})$ +\end_inset + + con +\begin_inset Formula $m\leq n$ +\end_inset + + es totalmente unimodular si y sólo si para +\begin_inset Formula $b\in\mathbb{Z}^{m}$ +\end_inset + +, el poliedro +\begin_inset Formula $\{x\in\mathbb{R}^{n}:Ax\leq b,x\geq0\}$ +\end_inset + + es entero. +\end_layout + +\begin_layout Itemize +\begin_inset Argument item:1 +status open + +\begin_layout Plain Layout +\begin_inset Formula $\implies]$ +\end_inset + + +\end_layout + +\end_inset + +Dada una submatriz +\begin_inset Formula $B\in{\cal M}_{m}$ +\end_inset + + de +\begin_inset Formula $[A,I]$ +\end_inset + + no singular, si +\begin_inset Formula $B$ +\end_inset + + es submatriz de +\begin_inset Formula $A$ +\end_inset + +, claramente +\begin_inset Formula $|B|\in\{\pm1\}$ +\end_inset + +, y en otro caso, desarrollando por columnas, +\begin_inset Formula $|B|=|B'|$ +\end_inset + + para alguna submatriz +\begin_inset Formula $B'$ +\end_inset + + de +\begin_inset Formula $B$ +\end_inset + + y de +\begin_inset Formula $A$ +\end_inset + +, por lo que +\begin_inset Formula $|B|\in\{\pm1\}$ +\end_inset + +. + Entonces +\begin_inset Formula $[I,A]$ +\end_inset + + es unimodular, con lo que +\begin_inset Formula $Q:=\{[x,y]\in\mathbb{R}^{n+m}:Ax+Iy=b,[x,y]\geq0\}$ +\end_inset + + es entero. + Sea ahora +\begin_inset Formula $[x,y]\in Q$ +\end_inset + + ( +\begin_inset Formula $x\in\mathbb{R}^{n}$ +\end_inset + +), claramente +\begin_inset Formula $y=b-Ax$ +\end_inset + +, por lo que la proyección de +\begin_inset Formula $Q$ +\end_inset + + en +\begin_inset Formula $\mathbb{R}^{n}\times0_{\mathbb{R}^{m}}$ +\end_inset + + es +\begin_inset Formula $P:=\{x\in\mathbb{R}^{n}:b=b,x\geq0,b-Ax\geq0\}=\{Ax\leq b,x\geq0\}$ +\end_inset + +. + Así, dado un punto extremo +\begin_inset Formula $x\in P$ +\end_inset + +, +\begin_inset Formula $[x,b-Ax]\in Q$ +\end_inset + + es un punto extremo, pues si no lo fuera existirían +\begin_inset Formula $U:=[u,b-Au],V:=[v,b-Av]\in Q$ +\end_inset + + distintos y +\begin_inset Formula $t\in(0,1)$ +\end_inset + + con +\begin_inset Formula $(1-t)U+tV=[x,b-Ax]$ +\end_inset + + y +\begin_inset Formula $(1-t)u+tv=x$ +\end_inset + +, y como +\begin_inset Formula $u,v\in P$ +\end_inset + +, +\begin_inset Formula $x$ +\end_inset + + no sería punto extremo. + Entonces +\begin_inset Formula $[x,b-Ax]\in\mathbb{Z}^{n+m}$ +\end_inset + + y +\begin_inset Formula $x\in\mathbb{Z}^{n}$ +\end_inset + +. +\end_layout + +\begin_layout Itemize +\begin_inset Argument item:1 +status open + +\begin_layout Plain Layout +\begin_inset Formula $\impliedby]$ +\end_inset + + +\end_layout + +\end_inset + +Sean +\begin_inset Formula $b\in\mathbb{Z}^{m}$ +\end_inset + +, +\begin_inset Formula $P:=\{x:Ax\leq b,x\geq0\}$ +\end_inset + +, +\begin_inset Formula $Q:=\{[x,y]:Ax+y=b,[x,y]\geq0\}$ +\end_inset + + y +\begin_inset Formula $[x,y]\in Q$ +\end_inset + +, claramente +\begin_inset Formula $y=b-Ax$ +\end_inset + +, y si +\begin_inset Formula $[x,y]$ +\end_inset + + es punto extremo de +\begin_inset Formula $Q$ +\end_inset + +, +\begin_inset Formula $x$ +\end_inset + + lo es de +\begin_inset Formula $P$ +\end_inset + +, pues si no lo fuera habrían +\begin_inset Formula $u,v\in P$ +\end_inset + + distintos y +\begin_inset Formula $t\in(0,1)$ +\end_inset + + con +\begin_inset Formula $(1-t)u+tv=x$ +\end_inset + +, pero +\begin_inset Formula $[u,b-Au],[v,b-Av]\in Q$ +\end_inset + + y por tanto +\begin_inset Formula $[x,y]$ +\end_inset + + no sería punto extremo de +\begin_inset Formula $Q$ +\end_inset + +. + Así, como +\begin_inset Formula $P$ +\end_inset + + es entero, +\begin_inset Formula $Q$ +\end_inset + + también, luego +\begin_inset Formula $[A,I]$ +\end_inset + + es unimodular. + Sea entonces +\begin_inset Formula $B$ +\end_inset + + una submatriz cuadrada de +\begin_inset Formula $A$ +\end_inset + +, añadiendo a +\begin_inset Formula $B$ +\end_inset + + las filas de +\begin_inset Formula $A$ +\end_inset + + que no se han tomado para +\begin_inset Formula $B$ +\end_inset + + y las columnas de +\begin_inset Formula $I$ +\end_inset + + que valen 1 en esas filas, obtenemos una submatriz +\begin_inset Formula $B'$ +\end_inset + + de +\begin_inset Formula $[I,A]$ +\end_inset + + de tamaño +\begin_inset Formula $m$ +\end_inset + + y, desarrollando por columnas de +\begin_inset Formula $I$ +\end_inset + +, tenemos que +\begin_inset Formula $|B'|=|B|$ +\end_inset + +, pero por ser +\begin_inset Formula $[I,A]$ +\end_inset + + unimodular, +\begin_inset Formula $|B|=|B'|\in\{1,0,-1\}$ +\end_inset + +. +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +end{samepage} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Section +Caracterizaciones de matrices unimodulares +\end_layout + +\begin_layout Standard +Como +\series bold +teorema +\series default +, una matriz +\begin_inset Formula $A$ +\end_inset + + es totalmente unimodular si y sólo si lo es +\begin_inset Formula $A^{t}$ +\end_inset + +, si y sólo si lo es +\begin_inset Formula $[A,I]$ +\end_inset + +, si y solo si lo es el resultado de añadir o quitar de +\begin_inset Formula $A$ +\end_inset + + una fila o columna igual a +\begin_inset Formula $e_{i}$ +\end_inset + + para algún +\begin_inset Formula $i$ +\end_inset + +, si y sólo si lo es el resultado de multiplicar una fila o columna de +\begin_inset Formula $A$ +\end_inset + + por +\begin_inset Formula $-1$ +\end_inset + +, si y sólo si lo es el resultado de intercambiar dos filas o columnas de + +\begin_inset Formula $A$ +\end_inset + +, si y sólo si lo es el resultado de duplicar una columna o fila de +\begin_inset Formula $A$ +\end_inset + +. +\end_layout + +\begin_layout Standard +\begin_inset Formula $A\in{\cal M}_{m\times n}(\mathbb{R})$ +\end_inset + + es +\series bold +euleriana +\series default + si en cada fila o columna la suma de los elementos es par. + Como +\series bold +teorema +\series default +, +\begin_inset Formula $A\in{\cal M}_{m\times n}(\{1,0,-1\})$ +\end_inset + + es totalmente unimodular si y sólo si la suma de los elementos de cada + submatriz cuadrada euleriana de +\begin_inset Formula $A$ +\end_inset + + es múltiplo de 4, si y sólo si para cada +\begin_inset Formula $F\subseteq\{1,\dots,m\}$ +\end_inset + + existe +\begin_inset Formula $F_{1}\subseteq F$ +\end_inset + + tal que, si +\begin_inset Formula $F_{2}:=F\setminus F_{1}$ +\end_inset + +, para +\begin_inset Formula $j\in\{1,\dots,n\}$ +\end_inset + + es +\begin_inset Formula +\[ +\left|\sum_{i\in F_{1}}a_{ij}-\sum_{i\in F_{2}}a_{ij}\right|\leq1. +\] + +\end_inset + + +\end_layout + +\begin_layout Standard +Como +\series bold +teorema +\series default +, si +\begin_inset Formula $A\in{\cal M}_{m\times n}(\{1,0,-1\})$ +\end_inset + +, ninguna columna de +\begin_inset Formula $A$ +\end_inset + + tiene más de dos elementos no nulos y existe una partición +\begin_inset Formula $\{F_{1},F_{2}\}$ +\end_inset + + de +\begin_inset Formula $\{1,\dots,m\}$ +\end_inset + + con elementos no necesariamente vacíos tal que, para +\begin_inset Formula $i\in\{1,\dots,n\}$ +\end_inset + + y +\begin_inset Formula $j,k\in\{1,\dots,m\}$ +\end_inset + +, +\begin_inset Formula $j$ +\end_inset + + y +\begin_inset Formula $k$ +\end_inset + + están en el mismo conjunto de la partición si y sólo si +\begin_inset Formula $a_{ji}$ +\end_inset + + y +\begin_inset Formula $a_{ki}$ +\end_inset + + tienen el mismo signo, entonces +\begin_inset Formula $A$ +\end_inset + + es totalmente unimodular. + En particular +\begin_inset Formula $A$ +\end_inset + + es totalmente unimodular si en cada columna tiene a lo sumo un coeficiente + +\begin_inset Formula $+1$ +\end_inset + + y otro +\begin_inset Formula $-1$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Una +\series bold +matriz de intervalo +\series default + es una matriz +\begin_inset Formula $A\in{\cal M}_{m\times n}(\{0,1\})$ +\end_inset + + tal que para +\begin_inset Formula $j\in\{1,\dots,n\}$ +\end_inset + + e +\begin_inset Formula $i,k\in\{1,\dots,m\}$ +\end_inset + + con +\begin_inset Formula $i<k$ +\end_inset + +, si +\begin_inset Formula $a_{ij}=a_{kj}=1$ +\end_inset + +, entonces +\begin_inset Formula $a_{hj}=1$ +\end_inset + + para todo +\begin_inset Formula $i\leq h\leq k$ +\end_inset + +. + Toda matriz de intervalo es totalmente unimodular. +\end_layout + +\begin_layout Section +Modelos clásicos +\end_layout + +\begin_layout Standard +Un +\series bold +problema de asignación +\series default + consiste en asignar +\begin_inset Formula $n$ +\end_inset + + tareas a +\begin_inset Formula $n$ +\end_inset + + operarios, una tarea por operario, minimizando el tiempo total dada una + matriz +\begin_inset Formula $T\in{\cal M}_{n}(\mathbb{R}^{\geq0})$ +\end_inset + + en la que +\begin_inset Formula $t_{ij}$ +\end_inset + + es el tiempo que tarda el operario +\begin_inset Formula $i$ +\end_inset + + en realizar la tarea +\begin_inset Formula $j$ +\end_inset + +. + Si llamamos +\begin_inset Formula +\[ +x_{ij}:=\begin{cases} +1, & \text{el operario }i\text{ es asignado a la tarea }j;\\ +0, & \text{en otro caso} +\end{cases} +\] + +\end_inset + +para +\begin_inset Formula $i,j\in\{1,\dots,n\}$ +\end_inset + +, podemos formular el problema como +\begin_inset Formula +\begin{alignat*}{3} + & \min & {\textstyle \sum_{ij}}t_{ij}x_{ij}\\ + & & {\textstyle \sum_{j}}x_{ij} & \leq1, & & \forall i\\ + & & {\textstyle \sum_{i}}x_{ij} & \geq1, & & \forall j\\ + & & x_{ij} & \in\{0,1\}, & & \forall i,j +\end{alignat*} + +\end_inset + +Si las tareas se pueden hacer a la vez, lo que queremos minimizar es +\begin_inset Formula $\max_{i}\sum_{j}t_{ij}x_{ij}$ +\end_inset + +, para lo que cambiamos la formulación a +\begin_inset Formula +\begin{alignat*}{3} + & \min & z\\ + & & {\textstyle \sum_{j}}x_{ij} & \leq1, & & \forall i\\ + & & {\textstyle \sum_{i}}x_{ij} & \geq1, & & \forall j\\ + & & z-{\textstyle \sum_{j}}t_{ij}x_{ij} & \geq0, & & \forall i\\ + & & x_{ij} & \in\{0,1\}, & & \forall i,j +\end{alignat*} + +\end_inset + + +\end_layout + +\begin_layout Standard +Sean ahora +\begin_inset Formula $R:=(V:=\{1,\dots,n\},E,\omega)$ +\end_inset + + una red y +\begin_inset Formula $s,t\in V$ +\end_inset + + distintos, y queremos encontrar un paseo de coste mínimo de +\begin_inset Formula $s$ +\end_inset + + a +\begin_inset Formula $t$ +\end_inset + +, lo que definiendo las variables +\begin_inset Formula +\[ +x_{ij}:=\begin{cases} +1, & j\text{ aparece a continuación de }i\text{ en el camino};\\ +0, & \text{en otro caso}, +\end{cases} +\] + +\end_inset + +para +\begin_inset Formula $(i,j)\in V\times V$ +\end_inset + + con +\begin_inset Formula $\{i,j\}\in E$ +\end_inset + +, podemos formular como +\end_layout + +\begin_layout Standard +\begin_inset Formula +\begin{alignat*}{3} + & \min & {\textstyle \sum_{ij}}d_{ij}x_{ij}\\ + & & {\textstyle \sum_{(s,j)\in E}}x_{sj} & =1,\\ + & & {\textstyle \sum_{(j,t)\in E}}x_{jt} & =1, & & \forall j\\ + & & {\textstyle \sum_{(i,v)\in E}}x_{iv}-{\textstyle \sum_{(v,j)\in E}x_{vj}} & =0, & & \forall v\neq s,t\\ + & & x_{ij} & \in\{0,1\}, & & \forall i,j +\end{alignat*} + +\end_inset + +Entonces el camino empieza en +\begin_inset Formula $s$ +\end_inset + +, sigue en el único +\begin_inset Formula $i$ +\end_inset + + con +\begin_inset Formula $x_{si}=1$ +\end_inset + +, luego en el único +\begin_inset Formula $j$ +\end_inset + + con +\begin_inset Formula $x_{ij}=1$ +\end_inset + +, y así hasta llegar a +\begin_inset Formula $t$ +\end_inset + +. + La unicidad sabemos que se da si +\begin_inset Formula $\omega(e)\geq0$ +\end_inset + + para todo +\begin_inset Formula $e$ +\end_inset + +; de lo contrario tenemos que añadir +\begin_inset Formula $\sum_{(i,v)\in E}x_{iv}\leq1,\forall v\neq s,t$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Para obtener el árbol generador minimal de +\begin_inset Formula $R$ +\end_inset + +, +\begin_inset Formula $T=(V,E_{T})$ +\end_inset + +, llamamos +\begin_inset Formula $x_{ij}:=\chi_{E_{T}}(i,j)$ +\end_inset + + para +\begin_inset Formula $(i,j)\in E$ +\end_inset + +, y formulamos el problema como +\begin_inset Formula +\begin{alignat*}{3} + & \min & {\textstyle \sum_{ij}}c_{ij}x_{ij}\\ + & & {\textstyle \sum_{(i,j)\in E}x_{ij}} & =|V|-1\\ + & & {\textstyle \sum_{(i,j)\in E_{S}}x_{ij}} & \leq|S|-1, & & \forall S\subsetneq V:|S|\geq3\\ + & & x_{ij} & \in\{0,1\}, & & \forall i,j +\end{alignat*} + +\end_inset + +En efecto, la primera condición nos asegura que +\begin_inset Formula $T$ +\end_inset + + tenga +\begin_inset Formula $|V|-1$ +\end_inset + + ejes y la segunda que no tenga ciclos salvo, quizá, uno con todos los vértices + de +\begin_inset Formula $V$ +\end_inset + +, lo que la primera condición ya descarta, y esto caracteriza un árbol. + La relajación lineal de este problema da una solución entera. +\end_layout + +\begin_layout Standard +Otra posible formulación, con las mismas variables resulta de cambiar la + segunda condición por +\begin_inset Formula $\sum_{(i,j)\in[S,V\setminus S]}x_{ij}\geq1,\forall S\subsetneq V:S\neq\emptyset$ +\end_inset + +, pues esto nos da la conexión y, junto con la primera condición, caracteriza + al árbol. + La relajación lineal no tiene por qué dar una solución entera. +\end_layout + +\begin_layout Standard +Para el problema del viajante de comercio sobre una red completa +\begin_inset Formula $R:=(V:=\{0,\dots,n-1\},E:=\{\{i,j\}\}_{i,j\in V,i\neq j},d)$ +\end_inset + +, existen varias formulaciones: +\end_layout + +\begin_layout Enumerate + +\series bold +Formulación de Dantzig-Fulkerson-Johnson: +\series default + Sea +\begin_inset Formula +\[ +x_{ij}:=\left\{ \begin{aligned}1, & \text{el ciclo tiene }i\text{ y a continuación }j;\\ +0, & \text{en otro caso} +\end{aligned} +\right. +\] + +\end_inset + +para +\begin_inset Formula $(i,j)\in V\times V$ +\end_inset + + con +\begin_inset Formula $\{i,j\}\in E$ +\end_inset + +, el problema es +\begin_inset Formula +\begin{alignat*}{3} + & \min & {\textstyle \sum}_{ij}d_{ij}x_{ij}\\ + & & {\textstyle \sum_{(i,j)\in E}}x_{ij} & =1, & & \forall i\\ + & & {\textstyle \sum}_{(k,i)\in E}x_{ki} & =1, & & \forall i\\ + & & x_{ij} & \in\{0,1\}, & & \forall i,j +\end{alignat*} + +\end_inset + +Para obtener el camino, tomamos un nodo inicial +\begin_inset Formula $i_{0}$ +\end_inset + +, luego el único +\begin_inset Formula $i_{1}$ +\end_inset + + con +\begin_inset Formula $x_{i_{0}i_{1}}=1$ +\end_inset + +, y luego repetimos hasta volver a +\begin_inset Formula $i_{0}$ +\end_inset + +. + El ciclo resultante puede no ser hamiltoniano porque esta formulación permite + subciclos estrictos, ciclos que no contienen a todos los nodos. + Para evitar esto, podemos añadir la restricción +\begin_inset Formula $\sum_{e\in E_{s}}x_{e}\leq|S|-1,\forall S\subsetneq V:|S|\geq2$ +\end_inset + +. +\end_layout + +\begin_layout Enumerate +Si ahora las variables son +\begin_inset Formula +\[ +x_{ij}:=\begin{cases} +1, & (i,j)\text{ está en el ciclo};\\ +0, & \text{en otro caso} +\end{cases} +\] + +\end_inset + +para +\begin_inset Formula $(i,j)\in E$ +\end_inset + +, otra formulación es +\begin_inset Formula +\begin{alignat*}{3} + & \min & {\textstyle \sum}_{e}d_{e}x_{e}\\ + & & {\textstyle \sum_{e\in N(v)}}x_{e} & =2, & & \forall v\\ + & & {\textstyle \sum}_{e\in E_{S}}x_{e} & \leq|S|-1, & & \forall S\subsetneq V:|S|\geq3\\ + & & x_{ij} & \in\{0,1\}, & & \forall i,j +\end{alignat*} + +\end_inset + +El ciclo se obtendría tomando un nodo inicial +\begin_inset Formula $i_{0}$ +\end_inset + +, luego un +\begin_inset Formula $i_{1}$ +\end_inset + + con +\begin_inset Formula $x_{i_{0}i_{1}}=1$ +\end_inset + +, luego un +\begin_inset Formula $i_{2}\neq i_{0}$ +\end_inset + + con +\begin_inset Formula $x_{i_{1}i_{2}}=1$ +\end_inset + +, etc. + En estas formulaciones el número de restricciones crece exponencialmente + con el número de vértices. +\end_layout + +\begin_layout Enumerate + +\series bold +Formulación de Miller-Tucker-Zemlin: +\series default + Las variables se definen como en la primera formulación con variables adicional +es +\begin_inset Formula $u_{1},\dots,u_{n}$ +\end_inset + +. + Llamando +\begin_inset Formula $n:=|V|$ +\end_inset + +: +\begin_inset Formula +\begin{alignat*}{3} + & \min & {\textstyle \sum}_{ij}d_{ij}x_{ij}\\ + & & {\textstyle \sum_{(i,j)\in E}}x_{ij} & =1 & & \forall i\\ + & & {\textstyle \sum_{(k,i)\in E}}x_{ki} & =1 & & \forall i\\ + & & u_{i}-u_{j}+nx_{ij} & \leq n-1 & & \forall i,j\in\{1,\dots,n-1\}:(i,j)\in E\\ + & & x_{ij} & \in\{0,1\} & & \forall i,j\\ + & & u_{i} & \in\mathbb{R}^{>0} & & \forall i +\end{alignat*} + +\end_inset + +Esto evita los ciclos que no contengan a 0, por lo que todos los nodos están + en el mismo ciclo. +\end_layout + +\begin_deeper +\begin_layout Standard +Sea +\begin_inset Formula $x$ +\end_inset + + una solución factible, si +\begin_inset Formula $x$ +\end_inset + + tuviera un ciclo que no contuviera al 0, como +\begin_inset Formula $1\,2\cdots k1$ +\end_inset + +, entonces +\begin_inset Formula $u_{i}-u_{i+1}+n\leq n-1$ +\end_inset + + para +\begin_inset Formula $i\in\{1,\dots,k-1\}$ +\end_inset + + y +\begin_inset Formula $u_{k}-u_{1}+n\leq n-1$ +\end_inset + +, y sumando todo queda +\begin_inset Formula $kn\leq kn-1\#$ +\end_inset + +. + Recíprocamente, sea +\begin_inset Formula $x$ +\end_inset + + la representación por variables de un ciclo hamiltoniano, llamamos +\begin_inset Formula $u_{i}:=t$ +\end_inset + + si +\begin_inset Formula $i$ +\end_inset + + es el +\begin_inset Formula $t$ +\end_inset + +-ésimo vértice visitado en el ciclo después del 0. + Entonces, para +\begin_inset Formula $(i,j)\in E$ +\end_inset + + con +\begin_inset Formula $i,j\neq0$ +\end_inset + +, si +\begin_inset Formula $x_{ij}=0$ +\end_inset + +, +\begin_inset Formula $u_{i}-u_{j}<u_{i}\leq n-1$ +\end_inset + +, y si +\begin_inset Formula $x_{ij}=1$ +\end_inset + +, +\begin_inset Formula $u_{j}=u_{i}+1$ +\end_inset + +, +\begin_inset Formula $u_{i}-u_{j}=-1$ +\end_inset + + y +\begin_inset Formula $u_{i}-u_{j}+n=n-1$ +\end_inset + +, y en ambos casos la tercera condición se cumple. +\end_layout + +\end_deeper +\begin_layout Section +Situaciones generales +\end_layout + +\begin_layout Standard +Si tenemos +\begin_inset Formula $m$ +\end_inset + + restricciones +\begin_inset Formula $g_{i}(x_{1},\dots,x_{n})\leq0$ +\end_inset + + para +\begin_inset Formula $i\in\{1,\dots,m\}$ +\end_inset + + de las que queremos que se verifiquen al menos +\begin_inset Formula $k<m$ +\end_inset + +, tomamos +\begin_inset Formula $M$ +\end_inset + + lo suficientemente grande, añadimos las variables +\begin_inset Formula $y_{1},\dots,y_{m}\in\{0,1\}$ +\end_inset + + y añadimos las restricciones +\begin_inset Formula $g_{i}(x_{1},\dots,x_{n})\leq M(1-y_{i})$ +\end_inset + + para +\begin_inset Formula $i\in\{1,\dots,m\}$ +\end_inset + + y +\begin_inset Formula $\sum_{i=1}^{m}y_{i}\geq k$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Dadas dos variables +\begin_inset Formula $x_{1},x_{2}\in\mathbb{Z}$ +\end_inset + +, para definir una variable +\begin_inset Formula $y:=[x_{1}>x_{2}]$ +\end_inset + + ( +\begin_inset Formula $y=1$ +\end_inset + + si +\begin_inset Formula $x_{1}>x_{2}$ +\end_inset + + e +\begin_inset Formula $y=0$ +\end_inset + + en otro caso), tomamos +\begin_inset Formula $M$ +\end_inset + + lo suficientemente grande y añadimos +\begin_inset Formula $x_{1}-x_{2}-My\leq0$ +\end_inset + +, +\begin_inset Formula $x_{2}-x_{1}+(1+M)y\leq M$ +\end_inset + + e +\begin_inset Formula $y\in\{0,1\}$ +\end_inset + +. + De esta forma, si +\begin_inset Formula $x_{1}>x_{2}$ +\end_inset + +, con +\begin_inset Formula $y=1$ +\end_inset + + tenemos +\begin_inset Formula $x_{1}-x_{2}-M\leq0$ +\end_inset + + y +\begin_inset Formula $x_{2}-x_{1}+(1+M)\leq-1+1+M=M$ +\end_inset + + pero con +\begin_inset Formula $y=0$ +\end_inset + + tenemos +\begin_inset Formula $x_{1}-x_{2}>0\#$ +\end_inset + +, y si +\begin_inset Formula $x_{1}\le x_{2}$ +\end_inset + +, con +\begin_inset Formula $y=0$ +\end_inset + + tenemos +\begin_inset Formula $x_{1}-x_{2}\leq0$ +\end_inset + + y +\begin_inset Formula $x_{2}-x_{1}\leq M$ +\end_inset + + pero con +\begin_inset Formula $y=1$ +\end_inset + + tenemos +\begin_inset Formula $x_{2}-x_{1}+1+M\geq1+M>M\#$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Dadas dos variables reales +\begin_inset Formula $x_{1}$ +\end_inset + + y +\begin_inset Formula $x_{2}$ +\end_inset + +, para definir +\begin_inset Formula $z\geq\min\{x_{1},x_{2}\}$ +\end_inset + +, hacemos que se cumpla una de +\begin_inset Formula $z\geq x_{1}$ +\end_inset + + y +\begin_inset Formula $z\geq x_{2}$ +\end_inset + +, y para definir +\begin_inset Formula $z\leq\max\{x_{1},x_{2}\}$ +\end_inset + +, hacemos que se cumpla una de +\begin_inset Formula $z\leq x_{1}$ +\end_inset + + y +\begin_inset Formula $z\leq x_{2}$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Si +\begin_inset Formula $x_{1},x_{2}\in\{0,1\}$ +\end_inset + +, para definir +\begin_inset Formula $y:=\min\{x_{1},x_{2}\}$ +\end_inset + + añadimos +\begin_inset Formula $y\leq x_{1}$ +\end_inset + +, +\begin_inset Formula $y\leq x_{2}$ +\end_inset + +, +\begin_inset Formula $y\geq x_{1}+x_{2}-1$ +\end_inset + + e +\begin_inset Formula $y\in\{0,1\}$ +\end_inset + +, y para definir +\begin_inset Formula $y:=\max\{x_{1},x_{2}\}$ +\end_inset + + añadimos +\begin_inset Formula $y\geq x_{1}$ +\end_inset + +, +\begin_inset Formula $y\geq x_{2}$ +\end_inset + +, +\begin_inset Formula $y\leq x_{1}+x_{2}$ +\end_inset + + e +\begin_inset Formula $y\in\{0,1\}$ +\end_inset + +. +\end_layout + +\end_body +\end_document diff --git a/graf/n7.lyx b/graf/n7.lyx new file mode 100644 index 0000000..af1f41a --- /dev/null +++ b/graf/n7.lyx @@ -0,0 +1,1822 @@ +#LyX 2.3 created this file. For more info see http://www.lyx.org/ +\lyxformat 544 +\begin_document +\begin_header +\save_transient_properties true +\origin unavailable +\textclass book +\begin_preamble +\usepackage{amssymb} +\usepackage{amstext} +\input{../defs} +\end_preamble +\use_default_options true +\begin_modules +algorithm2e +\end_modules +\maintain_unincluded_children false +\language spanish +\language_package default +\inputencoding auto +\fontencoding global +\font_roman "default" "default" +\font_sans "default" "default" +\font_typewriter "default" "default" +\font_math "auto" "auto" +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 100 +\font_tt_scale 100 100 +\use_microtype false +\use_dash_ligatures true +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize default +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_package amsmath 1 +\use_package amssymb 1 +\use_package cancel 1 +\use_package esint 1 +\use_package mathdots 1 +\use_package mathtools 1 +\use_package mhchem 1 +\use_package stackrel 1 +\use_package stmaryrd 1 +\use_package undertilde 1 +\cite_engine basic +\cite_engine_type default +\biblio_style plain +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\justification true +\use_refstyle 1 +\use_minted 0 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\is_math_indent 0 +\math_numbering_side default +\quotes_style french +\dynamic_quotes 0 +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Standard +\begin_inset Float algorithm +wide false +sideways false +status open + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +Entrada{Problema $ +\backslash +min +\backslash +{c +\backslash +cdot x +\backslash +}_{Ax=b,x +\backslash +geq0}$ dado por $m,n +\backslash +in{ +\backslash +mathbb N}^*$ con $m<n$, $A +\backslash +in{ +\backslash +cal M}_{m +\backslash +times n}( +\backslash +mathbb R)$, $b +\backslash +in{ +\backslash +mathbb R}^m$ con $b +\backslash +geq0$ y $c +\backslash +in{ +\backslash +mathbb R}^n$.} +\end_layout + +\begin_layout Plain Layout + + +\backslash +Salida{Dirección de ilimitación $d +\backslash +in{ +\backslash +mathbb R}^n$, conjunto $C +\backslash +subseteq{ +\backslash +mathbb R}^n$ de puntos óptimos o $ +\backslash +emptyset$ si el problema es infactible. + Puede no terminar.} +\end_layout + +\begin_layout Plain Layout + + +\backslash +SetKw{Salir}{salir} +\end_layout + +\begin_layout Plain Layout + + +\backslash +SetKwBlock{Repetir}{repetir}{siempre} +\end_layout + +\begin_layout Plain Layout + + +\backslash +SetKwProg{Funcion}{función}{}{fin} +\end_layout + +\begin_layout Plain Layout + + +\backslash +SetKwFunction{params}{params} +\end_layout + +\begin_layout Plain Layout + + +\backslash +SetKwFunction{interpretar}{interpretar} +\end_layout + +\begin_layout Plain Layout + + +\backslash +Funcion{ +\backslash +params{$ +\backslash +sigma$}}{ +\end_layout + +\begin_layout Plain Layout + + $T +\backslash +gets[A_{ +\backslash +sigma(1)}, +\backslash +dots,A_{ +\backslash +sigma(m)}]^{-1}$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + + +\backslash +Devolver $(T, +\backslash +mathbf{b}Tb)$% +\end_layout + +\begin_layout Plain Layout + + +\backslash +tcp*{{ +\backslash +rm Para la notación, +\end_layout + +\begin_layout Plain Layout + + $B=[A_{ +\backslash +sigma(1)}, +\backslash +dots,A_{ +\backslash +sigma(m)}]$.}} +\end_layout + +\begin_layout Plain Layout + +} +\end_layout + +\begin_layout Plain Layout + + +\backslash +Funcion{ +\backslash +interpretar{$ +\backslash +sigma,Y,x,q$}}{ +\end_layout + +\begin_layout Plain Layout + + $S +\backslash +gets +\backslash +{x +\backslash +}$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + + $D +\backslash +gets +\backslash +{0 +\backslash +}$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + + +\backslash +Para{$k:N$ con $q_k=0$}{ +\end_layout + +\begin_layout Plain Layout + + +\backslash +lSSi{$Y_k +\backslash +leq0$}{$D +\backslash +gets D +\backslash +cup +\backslash +{e_k- +\backslash +mathbf{b}Y_k +\backslash +}$} +\end_layout + +\begin_layout Plain Layout + + +\backslash +lEnOtroCaso{$S +\backslash +gets S +\backslash +cup +\backslash +{ +\end_layout + +\begin_layout Plain Layout + + x + +\backslash +min_{r +\backslash +in +\backslash +{1, +\backslash +dots,m +\backslash +},y_{rk}>0} +\end_layout + +\begin_layout Plain Layout + + +\backslash +frac{x_{ +\backslash +sigma(r)}}{y_{kr}} +\end_layout + +\begin_layout Plain Layout + + (e_k- +\backslash +mathbf{b}Y_k) +\backslash +}$} +\end_layout + +\begin_layout Plain Layout + + } +\end_layout + +\begin_layout Plain Layout + + +\backslash +Devolver $ +\backslash +{x + +\backslash +lambda u +\backslash +}_{x +\backslash +in +\backslash +text{cc}S, u +\backslash +in D, +\backslash +lambda +\backslash +geq0} +\end_layout + +\begin_layout Plain Layout + + +\backslash +subseteq { +\backslash +mathbb R}^n$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + +} +\end_layout + +\begin_layout Plain Layout + + +\backslash +ParaCada{subsecuencia $ +\backslash +sigma: +\backslash +{1, +\backslash +dots,m +\backslash +} +\backslash +to +\backslash +{1, +\backslash +dots,n +\backslash +}$}{ +\end_layout + +\begin_layout Plain Layout + + +\backslash +SSi{$A_{ +\backslash +sigma(1)}, +\backslash +dots,A_{ +\backslash +sigma(m)}$ son linealmente independientes}{ +\end_layout + +\begin_layout Plain Layout + + $(T,x) +\backslash +gets +\backslash +text{ +\backslash +params{ +\backslash +ensuremath{ +\backslash +sigma}}}$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + + +\backslash +lSSi{$x +\backslash +geq0$}{ +\backslash +Salir} +\end_layout + +\begin_layout Plain Layout + + } +\end_layout + +\begin_layout Plain Layout + +} +\end_layout + +\begin_layout Plain Layout + + +\backslash +lSSi{no se ha obtenido $x +\backslash +geq0$}{ +\backslash +Devolver $ +\backslash +emptyset$} +\end_layout + +\begin_layout Plain Layout + + +\backslash +Repetir{ +\end_layout + +\begin_layout Plain Layout + + $Y +\backslash +gets TA$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + + $q +\backslash +gets c_B^tY-c$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + + Tomar $k:N$ con $q_k$ máximo +\backslash +; +\end_layout + +\begin_layout Plain Layout + + +\backslash +uSSi{$q_k +\backslash +leq0$}{ +\end_layout + +\begin_layout Plain Layout + + +\backslash +Devolver +\backslash +interpretar{$ +\backslash +sigma,Y,x,q$} +\backslash +; +\end_layout + +\begin_layout Plain Layout + + } +\backslash +uEnOtroCasoSi{$Y_k +\backslash +leq0$}{ +\end_layout + +\begin_layout Plain Layout + + +\backslash +Devolver $e_k- +\backslash +mathbf{b}Y_k +\backslash +in { +\backslash +mathbb R}^n$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + + } +\backslash +EnOtroCaso{ +\end_layout + +\begin_layout Plain Layout + + Tomar $r +\backslash +in +\backslash +{1, +\backslash +dots,m +\backslash +}$ con $y_{rk}>0$ y +\end_layout + +\begin_layout Plain Layout + + $ +\backslash +frac{x_{ +\backslash +sigma(r)}}{y_{rk}}$ mínimo +\backslash +; +\end_layout + +\begin_layout Plain Layout + + { +\backslash +bf Pivotar:} $ +\backslash +sigma(r) +\backslash +gets k$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + + $(T,x) +\backslash +gets +\backslash +text{ +\backslash +params{ +\backslash +ensuremath{ +\backslash +sigma}}}$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + + } +\end_layout + +\begin_layout Plain Layout + +} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption Standard + +\begin_layout Plain Layout +\begin_inset CommandInset label +LatexCommand label +name "alg:simplex" + +\end_inset + +Algoritmo del símplex para minimizar. +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +sremember{OL} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard + +\series bold +Algoritmo del símplex +\series default + [...] para minimizar es el Algoritmo +\begin_inset CommandInset ref +LatexCommand ref +reference "alg:simplex" +plural "false" +caps "false" +noprefix "false" + +\end_inset + +. + Si quisiéramos maximizar, [...] minimizaríamos +\begin_inset Formula $q_{k}$ +\end_inset + + [...] y [...] haríamos las comparaciones opuestas [con los +\begin_inset Formula $q_{k}$ +\end_inset + +]. + [...] Se suele hacer con una +\series bold +tabla del símplex +\series default + como la siguiente: +\begin_inset Formula +\[ +\begin{array}{c|c|ccc|c} +| & | & & & & |\\ +c_{B} & \sigma & & Y & & x_{B}\\ +| & | & & & & |\\ +\hline & & - & q & - & z +\end{array} +\] + +\end_inset + +En esta, +\begin_inset Formula $z$ +\end_inset + + es el coste total. + [...] Para pasar de la tabla del símplex de una iteración a la de la [...] siguiente, + basta conseguir una matriz identidad en las columnas correspondientes a + la base haciendo operaciones por filas en la submatriz +\begin_inset Formula $\left(\begin{array}{c|c} +Y & x_{B}\end{array}\right)$ +\end_inset + +, asegurándose de que +\begin_inset Formula $x\geq0$ +\end_inset + +, y calcular +\begin_inset Formula $q$ +\end_inset + + y +\begin_inset Formula $z$ +\end_inset + +. + [...] Si +\begin_inset Formula $\sigma(i)=k$ +\end_inset + +, en vez de +\begin_inset Formula $k$ +\end_inset + + escribimos +\begin_inset Formula $x_{k}$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Un punto extremo +\begin_inset Formula $x$ +\end_inset + + asociado a una base +\begin_inset Formula $B$ +\end_inset + + es +\series bold +degenerado +\series default + si existe +\begin_inset Formula $i:B$ +\end_inset + + con +\begin_inset Formula $x_{i}=0$ +\end_inset + +; entonces [...] se pivotará este elemento, se tendrá +\begin_inset Formula $\frac{x_{i}}{y_{\sigma^{-1}(i)k}}=0$ +\end_inset + + y +\begin_inset Formula $x$ +\end_inset + + valdrá lo mismo en la siguiente iteración. + También se puede dar +\series bold +ciclaje +\series default +, consistente en ir cambiando de base de forma cíclica. + [...] Se puede evitar usando la +\series bold +regla de Bland: +\series default + [...] [Si +\begin_inset Formula $k$ +\end_inset + + obtenido cumple +\begin_inset Formula $q_{k}>0$ +\end_inset + +,] se establece +\begin_inset Formula $k$ +\end_inset + + al menor índice con +\begin_inset Formula $q_{k}>0$ +\end_inset + +, y si hay varios +\begin_inset Formula $r$ +\end_inset + + que minimizan +\begin_inset Formula $\frac{x_{\sigma(r)}}{y_{rk}}$ +\end_inset + +, se elige el de menor +\begin_inset Formula $\sigma(r)$ +\end_inset + +. +\end_layout + +\begin_layout Standard +[...] Sean +\begin_inset Formula $A\in{\cal M}_{m\times n}(\mathbb{R})$ +\end_inset + + de rango +\begin_inset Formula $m$ +\end_inset + +, +\begin_inset Formula $b\in\mathbb{R}^{m}$ +\end_inset + +, +\begin_inset Formula $c\in\mathbb{R}^{n}$ +\end_inset + +, +\begin_inset Formula $F:=\{x:Ax=b,x\geq0\}$ +\end_inset + + y +\begin_inset Formula $P:=\{c\cdot x\}_{x\in F}$ +\end_inset + +. + Para encontrar una base inicial para el símplex, por cada +\begin_inset Formula $k\in\{1,\dots,m\}$ +\end_inset + + tal que +\begin_inset Formula $e_{k}$ +\end_inset + + no es una columna de +\begin_inset Formula $A$ +\end_inset + +, añadimos una columna al final de +\begin_inset Formula $A$ +\end_inset + + con valor +\begin_inset Formula $e_{k}$ +\end_inset + +. + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +eremember +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +sremember{OL} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Si [...] +\begin_inset Formula $T\in{\cal M}_{m\times p}(\mathbb{R})$ +\end_inset + + es la matriz formada por las columnas añadidas, escribimos +\begin_inset Formula $F^{*}:=\{[x,x^{*}]\in\mathbb{R}^{n+p}:Ax+Tx^{*}=b,[x,x^{*}]\geq0\}$ +\end_inset + + y vemos que +\begin_inset Formula $x\in F\iff[x,0_{\mathbb{R}^{p}}]\in F^{*}$ +\end_inset + +. + Los elementos de +\begin_inset Formula $x^{*}$ +\end_inset + + son las +\series bold +variables artificiales +\series default +, y +\begin_inset Formula $x^{*}$ +\end_inset + + es el +\series bold +vector de variables artificiales +\series default +. +\end_layout + +\begin_layout Standard +[...] [ +\series bold +Método de las dos fases: +\series default +] La primera fase consiste en hallar +\begin_inset Formula $\min\{\sum_{i}x_{i}^{*}:Ax+Tx^{*}=b,[x,x^{*}]\geq0\}$ +\end_inset + +. + Si el resultado es distinto de 0, [...] el problema no es factible. + Para la segunda fase: +\end_layout + +\begin_layout Enumerate +Si la tabla del símplex al final de la primera fase no incluye variables + artificiales básicas, tenemos una base de +\begin_inset Formula $A$ +\end_inset + +, [...] eliminar las variables artificiales y maximizar o minimizar +\begin_inset Formula $P$ +\end_inset + + [...]. +\end_layout + +\begin_layout Enumerate +Si hay variables artificiales básicas, [...] eliminar las filas con variables + artificiales y estaríamos en el primer caso. +\end_layout + +\begin_layout Standard +[ +\series bold +Método de penalización: +\series default +] Sea +\begin_inset Formula $M>0$ +\end_inset + + lo suficientemente grande, definimos +\begin_inset Formula $P_{M}:=\{c\cdot x+M\sum_{i}x_{i}^{*}\}_{[x,x^{*}]\in F^{*}}$ +\end_inset + + si estamos minimizando o +\begin_inset Formula $P_{-M}:=\{c\cdot x-M\sum_{i}x_{i}^{*}\}_{[x,x^{*}]\in F^{*}}$ +\end_inset + + [si maximizamos]. + [...] Así: +\end_layout + +\begin_layout Itemize +Si hay soluciones óptimas +\begin_inset Formula $[x,x^{*}]$ +\end_inset + +, las soluciones con +\begin_inset Formula $x^{*}=0$ +\end_inset + + son soluciones del problema original. + Si no hay [...] de este tipo, el problema no es factible. +\end_layout + +\begin_layout Itemize +Si hay dirección de ilimitación +\begin_inset Formula $[d,d^{*}]$ +\end_inset + +, sea +\begin_inset Formula $[x,x^{*}]$ +\end_inset + + la solución básica asociada a la tabla del símplex: +\end_layout + +\begin_deeper +\begin_layout Itemize +Si +\begin_inset Formula $x^{*}=0$ +\end_inset + +, d es dirección de ilimitación del problema [...]. + [...] +\end_layout + +\begin_layout Itemize +Si +\begin_inset Formula $x^{*}\neq0$ +\end_inset + +, en general no podemos decir nada. +\end_layout + +\end_deeper +\begin_layout Standard +\begin_inset Note Note +status open + +\begin_layout Plain Layout +¿Debería incluir el método revisado y el método para variables acotadas? + ¿Y el problema dual? +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +eremember +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Float algorithm +wide false +sideways false +status open + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +Entrada{Problema $ +\backslash +min +\backslash +{c +\backslash +cdot x +\backslash +}_{Ax=b,x +\backslash +geq0}$.} +\end_layout + +\begin_layout Plain Layout + + +\backslash +Salida{Como en el algoritmo +\backslash +ref{alg:simplex}} +\end_layout + +\begin_layout Plain Layout + + +\backslash +SetKwFunction{interpretar}{interpretar} +\end_layout + +\begin_layout Plain Layout + +Encontrar una subsecuencia $ +\backslash +sigma: +\backslash +{1, +\backslash +dots,m +\backslash +} +\backslash +to +\backslash +{1, +\backslash +dots,m +\backslash +}$ tal que $B:=[A_{ +\backslash +sigma(1)}, +\backslash +dots,A_{ +\backslash +sigma(m)}]$ es dual factible (si no la hay, este algoritmo no es aplicable) +\backslash +; +\end_layout + +\begin_layout Plain Layout + +$(T,x) +\backslash +gets +\backslash +text{ +\backslash +params{ +\backslash +ensuremath{ +\backslash +sigma}}}$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + + +\backslash +Mientras{$x<0$}{ +\end_layout + +\begin_layout Plain Layout + + $Y +\backslash +gets TA$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + + Tomar $r$ con $x_{ +\backslash +sigma(r)}<0$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + + +\backslash +lSSi{$ +\backslash +forall j:N,y_{rj} +\backslash +geq0$}{ +\backslash +Devolver $ +\backslash +emptyset$} +\end_layout + +\begin_layout Plain Layout + + $q +\backslash +gets c_B^tY-c$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + + Tomar $k$ con $y_{rk}<0$ y $ +\backslash +frac{q_k}{y_{rk}}$ mínimo +\backslash +; +\end_layout + +\begin_layout Plain Layout + + +\backslash +lSSi{$q_k +\backslash +leq0$}{ +\backslash +Devolver +\backslash +interpretar{$ +\backslash +sigma,Y,x,q,k$}} +\end_layout + +\begin_layout Plain Layout + + $ +\backslash +sigma( +\backslash +sigma^{-1}(r)) +\backslash +gets k$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + + $(T,x) +\backslash +gets +\backslash +text{ +\backslash +params{ +\backslash +ensuremath{ +\backslash +sigma}}}$ +\backslash +; +\end_layout + +\begin_layout Plain Layout + +} +\end_layout + +\begin_layout Plain Layout + + +\backslash +Devolver +\backslash +interpretar{$ +\backslash +sigma,Y,x,q$} +\backslash +; +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption Standard + +\begin_layout Plain Layout +\begin_inset CommandInset label +LatexCommand label +name "alg:simplex-dual" + +\end_inset + +Algoritmo dual del símplex para minimizar. +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Dado un problema de programación lineal +\begin_inset Formula $\min_{Ax=b,x\geq0}\{c\cdot x\}$ +\end_inset + +, una matriz básica +\begin_inset Formula $B$ +\end_inset + + es +\series bold +dual factible +\series default + si +\begin_inset Formula $(c_{B}B^{-1}A-c)_{N}\leq0$ +\end_inset + +. + El +\series bold +algoritmo dual del símplex +\series default + es el algoritmo +\begin_inset CommandInset ref +LatexCommand ref +reference "alg:simplex-dual" +plural "false" +caps "false" +noprefix "false" + +\end_inset + +. +\end_layout + +\begin_layout Standard +Supongamos que tenemos una tabla de símplex óptima con parámetros +\begin_inset Formula $Y,x,q,\sigma$ +\end_inset + + y queremos añadir al problema una restricción +\begin_inset Formula $\sum_{j=1}^{n}\alpha_{j}x_{j}\leq\beta$ +\end_inset + +. + Si +\begin_inset Formula $\alpha_{j}=0$ +\end_inset + + para todo +\begin_inset Formula $j:B$ +\end_inset + +, podemos añadir la restricción directamente a la tabla añadiendo lo siguiente, + donde +\begin_inset Formula $t:=\beta-\sum_{j=1}^{n}\alpha_{j}x_{j}$ +\end_inset + + y +\begin_inset Formula $x^{*}$ +\end_inset + + es el valor óptimo de +\begin_inset Formula $x$ +\end_inset + + calculado antes: +\begin_inset Formula +\[ +\begin{array}{c|c|ccc|c|c} +| & | & & & & | & |\\ +c_{B} & \sigma & & Y & & 0 & x^{*}\\ +| & | & & & & | & |\\ +\hline 0 & x_{n+1} & - & \alpha & - & 1 & t\\ +\hline & & - & q & - & 0 & z +\end{array} +\] + +\end_inset + +Queda una base dual factible de la que sacar la solución con el algoritmo + dual. + Si la restricción tiene variables básicas, tenemos que cambiarlas por sus + expresión respecto a las no básicas con la fórmula +\begin_inset Formula $x_{\sigma(i)}=x_{\sigma(i)}^{*}-\sum_{j:N}y_{ij}x_{j}$ +\end_inset + +. +\end_layout + +\begin_layout Section +Ramificación y acotación +\end_layout + +\begin_layout Standard +La +\series bold +ramificación y acotación +\series default + ( +\emph on +\lang english +branch and bound +\emph default +\lang spanish +) es un algoritmo para resolver problemas de programación lineal entera. + Primero resolvemos el problema relajado para obtener una solución +\begin_inset Formula $(x_{1}^{*},\dots,x_{n}^{*})$ +\end_inset + +. + Si en ella todas las variables que debían ser enteras lo son, la solución + es óptima, y si existe +\begin_inset Formula $k$ +\end_inset + + tal que +\begin_inset Formula $x_{k}^{*}$ +\end_inset + + debería ser entera pero es fraccionaria, creamos dos subproblemas introduciendo + las restricciones +\begin_inset Formula $x_{k}\leq\lfloor x_{k}^{*}\rfloor$ +\end_inset + + en uno y +\begin_inset Formula $x_{k}\geq\lceil x_{k}^{*}\rceil$ +\end_inset + + en el otro. + Como +\begin_inset Formula $x_{k}$ +\end_inset + + es básica, se puede introducir la nueva restricción fácilmente en la tabla + del símplex óptima obteniendo una tabla con base dual factible. +\end_layout + +\begin_layout Standard +Esto nos da un árbol de subproblemas cuyas hojas son problemas infactibles + o cuya solución es solución del problema entero, y que hemos de explorar. + La +\series bold +solución incumbente +\series default + es la mejor solución del problema entero encontrada hasta ahora, y su valor + es el +\series bold +valor incumbente +\series default +. + Podemos podar los nodos con valor óptimo del problema relajado menor o + igual que el valor incumbente, pues los valores de sus hijos no van a ser + mejores. + Como optimización, en vez de añadir una restricción +\begin_inset Formula $x_{k}\leq0$ +\end_inset + +, podemos eliminar +\begin_inset Formula $x_{k}$ +\end_inset + + del subproblema. +\end_layout + +\begin_layout Standard +Aunque esto no es +\begin_inset Quotes cld +\end_inset + +estándar +\begin_inset Quotes crd +\end_inset + +, si todos los coeficientes de la función objetivo son enteros y todos los + no nulos van con una variable entera, todas las soluciones tendrán valor + entero y, si un nodo tiene un valor mejor que el incumbente pero con una + diferencia menor que 1, podemos podarlo, pues no va a producir una solución + mejor del problema entero. +\end_layout + +\begin_layout Standard +La mayoría de los programas de optimización recorren el árbol de subproblemas + con +\emph on +\lang english +backtracking +\emph default +\lang spanish +, lo que suele dar soluciones factibles antes que la búsqueda en anchura. + También se puede usar búsqueda primero el mejor, por ejemplo. +\end_layout + +\begin_layout Standard +Cuando hay varias variables por las que se puede ramificar, una elección + adecuada puede acelerar la resolución del problema. + Algunas heurísticas son elegir la variable con mayor valor fraccionario, + la de valor fraccionario más cercano a +\begin_inset Formula $\frac{1}{2}$ +\end_inset + + o la que más influye en la función objetivo. +\end_layout + +\begin_layout Section +Hiperplanos de corte +\end_layout + +\begin_layout Standard +Un +\series bold +hiperplano de corte +\series default + o +\series bold +desigualdad válida +\series default + de un problema lineal entero es una desigualdad que cumplen todos sus puntos + factibles. + Se puede usar para mejorar las cotas en los nodos del árbol de ramificación. + Llamamos +\begin_inset Formula $[[x]]:=x-\lfloor x\rfloor\in[0,1)$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Dados un problema entero puro +\begin_inset Formula $\min_{Ax=b,x\in\mathbb{N}^{n}}\{c\cdot x\}$ +\end_inset + + con tabla del símplex óptima para la relajación lineal con coeficientes + +\begin_inset Formula $(\sigma,Y,x^{*},q)$ +\end_inset + + y +\begin_inset Formula $k$ +\end_inset + + tal que +\begin_inset Formula $x_{k':=\sigma(k)}^{*}\notin\mathbb{Z}$ +\end_inset + +, entonces +\begin_inset Formula +\[ +-\sum_{j:N}[[y_{kj}]]x_{j}\leq-[[x_{k'}^{*}]] +\] + +\end_inset + +es una desigualdad válida del problema entero que +\begin_inset Formula $x^{*}$ +\end_inset + + no satisface. + +\series bold +Demostración: +\series default + Por la fórmula usada antes para añadir una restricción con variables básicas, + para +\begin_inset Formula $x\in P$ +\end_inset + +, +\begin_inset Formula $x_{k'}+\sum_{j:N}y_{kj}x_{j}=x_{k'}^{*}$ +\end_inset + +, luego +\begin_inset Formula $x_{k'}+\sum_{j:N}([y_{kj}]+[[y_{kj}]])x_{j}=[x_{k'}^{*}]+[[x_{k'}^{*}]]$ +\end_inset + + y +\begin_inset Formula $x_{k'}+\sum_{j:N}[y_{kj}]x_{j}-[x_{k'}^{*}]=-\sum_{j:N}[[y_{kj}]]x_{j}+[[x_{k'}^{*}]]\overset{[[y_{kj}]]\in[0,1),x_{j}\geq0}{\leq}[[x_{k'}^{*}]]<1$ +\end_inset + +, y como la parte izquierda de la igualdad es entera, la derecha también + y por tanto +\begin_inset Formula $-\sum_{j:N}[[y_{kj}]]x_{j}+[[x_{k'}^{*}]]\leq0$ +\end_inset + +. + Despejando para +\begin_inset Formula $x^{*}$ +\end_inset + + quedaría +\begin_inset Formula $0\leq-[[x_{k'}^{*}]]$ +\end_inset + +, pero +\begin_inset Formula $[[x_{k'}^{*}]]\in(0,1)$ +\end_inset + + porque +\begin_inset Formula $x_{k'}^{*}\notin\mathbb{Z}\#$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Dados un problema entero puro +\begin_inset Formula $\min_{Ax=b,x\geq0,\forall i\in I,x_{i}\in\mathbb{Z}}\{c\cdot x\}$ +\end_inset + + con tabla del símplex óptima para la relajación lineal con coeficientes + +\begin_inset Formula $(\sigma,Y,x^{*},q)$ +\end_inset + + y +\begin_inset Formula $k\in I$ +\end_inset + + tal que +\begin_inset Formula $k':=\sigma(k)\in I$ +\end_inset + + y +\begin_inset Formula $x_{k':=\sigma(k)}^{*}\notin\mathbb{Z}$ +\end_inset + +, entonces +\begin_inset Formula +\[ +\sum_{j\in N^{-}}\frac{[[x_{k'}^{*}]]}{1-[[x_{k'}^{*}]]}y_{kj}x_{j}-\sum_{j\in N^{+}}y_{kj}x_{j}\leq-[[x_{k'}^{*}]] +\] + +\end_inset + +es una desigualdad válida del problema entero no satisfecha por +\begin_inset Formula $x^{*}$ +\end_inset + +. + +\series bold +Demostración: +\series default + Para +\begin_inset Formula $x$ +\end_inset + + factible, como +\begin_inset Formula $x_{k'}+\sum_{j:N}y_{kj}x_{j}=x_{k'}^{*}=[x_{k'}^{*}]+[[x_{k'}^{*}]]$ +\end_inset + +, entonces +\begin_inset Formula $x_{k'}-[x_{k'}^{*}]=-\sum_{j:N}y_{kj}x_{j}+[[x_{k'}^{*}]]$ +\end_inset + +. + Así, si +\begin_inset Formula $x_{k'}\leq[x_{k'}^{*}]$ +\end_inset + +, +\begin_inset Formula $-\sum_{j:N}y_{kj}x_{j}+[[x_{k'}^{*}]]\leq0$ +\end_inset + + y +\begin_inset Formula $-\sum_{j\in N^{+}}y_{kj}x_{j}-\sum_{j\in N^{-}}y_{kj}x_{j}\leq-[[x_{k'}^{*}]]$ +\end_inset + +, pero +\begin_inset Formula $\sum_{j\in N^{-}}y_{kj}x_{j}\geq0$ +\end_inset + +, luego +\begin_inset Formula $-\sum_{j\in N^{+}}y_{kj}x_{j}\leq-[[x_{k'}^{*}]]$ +\end_inset + + y además +\begin_inset Formula $\sum_{j\in N^{-}}\frac{[[x_{k'}^{*}]]}{1-[[x_{k'}^{*}]]}y_{kj}x_{j}\leq0$ +\end_inset + +, de donde se obtiene la desigualdad. + Por otro lado, si +\begin_inset Formula $x_{k'}>[x_{k'}^{*}]$ +\end_inset + +, entonces +\begin_inset Formula $x_{k'}\geq[x_{k'}^{*}]+1$ +\end_inset + +, de modo que +\begin_inset Formula $-\sum_{j:N}y_{kj}x_{j}+[[x_{k'}^{*}]]\geq1$ +\end_inset + + y +\begin_inset Formula $-\sum_{j\in N^{+}}y_{kj}x_{j}-\sum_{j\in N^{-}}y_{kj}x_{j}\geq1-[[x_{k'}^{*}]]$ +\end_inset + +. + Con esto, como +\begin_inset Formula $-\sum_{j\in N^{+}}y_{kj}x_{j}\leq0$ +\end_inset + +, se tiene +\begin_inset Formula $-\sum_{j\in N^{-}}y_{kj}x_{j}\geq1-[[x_{k'}^{*}]]$ +\end_inset + + y, multiplicando por +\begin_inset Formula $-\frac{[[x_{k'}^{*}]]}{1-[[x_{k'}^{*}]]}$ +\end_inset + +, +\begin_inset Formula $\sum_{j\in N^{-}}\frac{[[x_{k'}^{*}]]}{1-[[x_{k'}^{*}]]}y_{kj}x_{j}\leq-[[x_{k'}^{*}]]$ +\end_inset + +, de donde se obtiene la desigualdad usando +\begin_inset Formula $-\sum_{j\in N^{+}}y_{kj}x_{j}\leq0$ +\end_inset + +. +\end_layout + +\begin_layout Standard +El +\series bold +método de los hiperplanos de corte de Gomory +\series default + consiste en hallar sucesivamente un hiperplano de corte de una de las dos + formas anteriores, según si el problema es entero puro o mixto, añadirlo + al problema y re-optimizar (con el método dual del símplex) hasta llegar + a una solución entera. + Si hay varios índices +\begin_inset Formula $k$ +\end_inset + + candidatos, se elige el que tiene +\begin_inset Formula $[[(x_{B}^{*})_{k}]]$ +\end_inset + + más cercano a +\begin_inset Formula $\frac{1}{2}$ +\end_inset + +. +\end_layout + +\begin_layout Standard +Si los coeficientes de +\begin_inset Formula $A$ +\end_inset + + y +\begin_inset Formula $b$ +\end_inset + + no son enteros sino racionales, se pueden multiplicar restricciones o variables + apropiadamente para convertirlos en enteros antes de empezar. + Lo de que +\begin_inset Formula $A$ +\end_inset + + y +\begin_inset Formula $b$ +\end_inset + + sean enteros se usa para que, al añadir las variables de holgura de las + desigualdades, estas sean enteras. +\end_layout + +\begin_layout Section +Desigualdades de Chvátal-Gomory +\end_layout + +\begin_layout Standard +Dado un problema entero puro con conjunto factible +\begin_inset Formula $P:=\{Ax\leq b,x\in\mathbb{N}^{n}\}$ +\end_inset + +, donde +\begin_inset Formula $A\in{\cal M}_{m\times n}(\mathbb{R})$ +\end_inset + +, para +\begin_inset Formula $u\in\mathbb{R}^{m}$ +\end_inset + + con +\begin_inset Formula $u\geq0$ +\end_inset + +, +\begin_inset Formula $\lfloor u^{\intercal}A\rfloor x\leq\lfloor u\cdot b\rfloor$ +\end_inset + + es una desigualdad válida del problema. + Las desigualdades de esta forma se llaman +\series bold +desigualdades de Chvátal-Gomory +\series default +, y toda desigualdad válida de +\begin_inset Formula $P$ +\end_inset + + se puede obtener utilizando el procedimiento de obtener y añadir una desigualda +d de este tipo al problema un número finito de veces. +\end_layout + +\end_body +\end_document |
