<?xml version="1.0" encoding="ISO-8859-1"?><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<front>
<journal-meta>
<journal-id>0121-1129</journal-id>
<journal-title><![CDATA[Revista Facultad de Ingeniería]]></journal-title>
<abbrev-journal-title><![CDATA[Rev. Fac. ing.]]></abbrev-journal-title>
<issn>0121-1129</issn>
<publisher>
<publisher-name><![CDATA[Universidad Pedagógica y Tecnológica de Colombia]]></publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id>S0121-11292014000100009</article-id>
<title-group>
<article-title xml:lang="es"><![CDATA[Eficiencia algorítmica en aplicaciones de grafos orientadas a redes GMPLS]]></article-title>
<article-title xml:lang="en"><![CDATA[Efficiency Graphs fllgorithmic's applications oriented to GMPLS networks]]></article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Herrera-Jiménez]]></surname>
<given-names><![CDATA[Simar Enrique]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Salcedo-Parra]]></surname>
<given-names><![CDATA[Octavio José]]></given-names>
</name>
<xref ref-type="aff" rid="A02"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Gallego-Torres]]></surname>
<given-names><![CDATA[Adriana Patricia]]></given-names>
</name>
<xref ref-type="aff" rid="A03"/>
</contrib>
</contrib-group>
<aff id="A01">
<institution><![CDATA[,Universidad Distrital Francisco José de Caldas  ]]></institution>
<addr-line><![CDATA[Bogotá Cundinamarca]]></addr-line>
<country>Colombia</country>
</aff>
<aff id="A02">
<institution><![CDATA[,Universidad Distrital Francisco José de Caldas  ]]></institution>
<addr-line><![CDATA[Bogotá Cundinamarca]]></addr-line>
<country>Colombia</country>
</aff>
<aff id="A03">
<institution><![CDATA[,Universidad Distrital Francisco José de Caldas  ]]></institution>
<addr-line><![CDATA[Bogotá Cundinamarca]]></addr-line>
<country>Colombia</country>
</aff>
<pub-date pub-type="pub">
<day>00</day>
<month>01</month>
<year>2014</year>
</pub-date>
<pub-date pub-type="epub">
<day>00</day>
<month>01</month>
<year>2014</year>
</pub-date>
<volume>23</volume>
<numero>36</numero>
<fpage>91</fpage>
<lpage>104</lpage>
<copyright-statement/>
<copyright-year/>
<self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_arttext&amp;pid=S0121-11292014000100009&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_abstract&amp;pid=S0121-11292014000100009&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_pdf&amp;pid=S0121-11292014000100009&amp;lng=en&amp;nrm=iso"></self-uri><abstract abstract-type="short" xml:lang="es"><p><![CDATA[Los algoritmos utilizados en el desarrollo y aplicación de grafos hacen uso de recursos medibles en tiempo y espacio; al estudio de estos costos se le conoce como complejidad algorítmica; frecuentemente se hace uso de cualquier algoritmo al azar sin realizar un análisis de ellos en el ambiente en que se ejecutarán; el objetivo del presente artículo es hacer un análisis algorítmico en ambientes comunes, con el fin de generar estadísticas que evidencien la conveniencia del uso de algoritmos específicos.]]></p></abstract>
<abstract abstract-type="short" xml:lang="en"><p><![CDATA[The algorithms applied in the graphs' development and application, use measurable sources in time and space. This subject costs' study is called algorithmic complexity. Frequently algorithms are used at random, without any environmental analysis, in which they will be executed. The present paper's objective is to make an algorithmic analysis on different common environments, with the purpose to generate information sources, which can show the convenience to use any specific algorithm.]]></p></abstract>
<kwd-group>
<kwd lng="es"><![CDATA[Algoritmo]]></kwd>
<kwd lng="es"><![CDATA[Complejidad algorítmica]]></kwd>
<kwd lng="es"><![CDATA[Grafo]]></kwd>
<kwd lng="en"><![CDATA[Algorithm Complexity]]></kwd>
<kwd lng="en"><![CDATA[Graph]]></kwd>
<kwd lng="en"><![CDATA[Efficiency Optimization]]></kwd>
</kwd-group>
</article-meta>
</front><body><![CDATA[  <font size="2" face="Verdana">      <p align="center"><font size="4"><b>Eficiencia algor&iacute;tmica en aplicaciones de grafos orientadas a redes GMPLS</b></font></p>     <p align="center"><font size="3"><b>Efficiency Graphs fllgorithmic's applications oriented to GMPLS networks</b></font></p>     <p align="center">Simar Enrique Herrera-Jim&eacute;nez<sup>*</sup>    <br> Octavio Jos&eacute; Salcedo-Parra<sup>**</sup>    <br> Adriana Patricia Gallego-Torres<sup>***</sup></p>      <p><sup>*</sup> Universidad Distrital Francisco Jos&eacute; de Caldas (Bogot&aacute;, Cundinamarca - Colombia). <a href="mailto:seherreraj@udistrital.edu.co">seherreraj@udistrital.edu.co</a>    <br> <sup>**</sup> Ph.D. Universidad Distrital Francisco Jos&eacute; de Caldas (Bogot&aacute;, Cundinamarca - Colombia). <a href="mailto:osalcedo@udistrital.edu.co">osalcedo@udistrital.edu.co</a>    <br> <sup>***</sup> Ph.D. Universidad Distrital Francisco Jos&eacute; de Caldas (Bogot&aacute;, Cundinamarca - Colombia). <a href="mailto:adpgallegot@udistrital.edu.co">adpgallegot@udistrital.edu.co</a></p>      <p>Fecha de Recepci&oacute;n: 06 de Enero de 2014 Fecha de Aprobaci&oacute;n: 31 de Enero de 2014</p> <hr>     ]]></body>
<body><![CDATA[<p><font size="3"><b>Resumen</b></font></p>     <p>Los algoritmos utilizados en el desarrollo y aplicaci&oacute;n de grafos hacen uso de recursos medibles en tiempo y espacio; al estudio de estos costos se le conoce como complejidad algor&iacute;tmica; frecuentemente se hace uso de cualquier algoritmo al azar sin realizar un an&aacute;lisis de ellos en el ambiente en que se ejecutar&aacute;n; el objetivo del presente art&iacute;culo es hacer un an&aacute;lisis algor&iacute;tmico en ambientes comunes, con el fin de generar estad&iacute;sticas que evidencien la conveniencia del uso de algoritmos espec&iacute;ficos.</p>     <p><b>Palabras clave: </b>Algoritmo, Complejidad algor&iacute;tmica, Grafo.</p> <hr>     <p><font size="3"><b>Abstract</b></font></p>     <p>The algorithms applied in the graphs' development and application, use measurable sources in time and space. This subject costs' study is called algorithmic complexity. Frequently algorithms are used at random, without any environmental analysis, in which they will be executed. The present paper's objective is to make an algorithmic analysis on different common environments, with the purpose to generate information sources, which can show the convenience to use any specific algorithm.</p>     <p><b>Keywords: </b>Algorithm Complexity, Graph, Efficiency Optimization.</p> <hr>     <p><font size="3"><b>I. Introducci&oacute;n</b></font></p>     <p>Para trabajar con algoritmos relacionados con grafos y sus aplicaciones es necesario tomar en cuenta las ramas de las ciencias de la computaci&oacute;n que prestan herramientas para realizar an&aacute;lisis detallado, describiendo medidas en tiempo y espacio, para evaluar la eficiencia de &eacute;stos.</p>     <p><font size="3"><b>II. An&aacute;lisis algor&iacute;tmico</b></font></p>     <p>El an&aacute;lisis algor&iacute;tmico se puede definir como el estudio que se realiza sobre un algoritmo para determinar si su rendimiento y comportamiento cumple con los requerimientos &#91;15&#93;; adicionalmente, permite tomar en cuenta esta informaci&oacute;n para determinar la eficiencia del algoritmo. El objetivo del an&aacute;lisis de algoritmos es cuantificar las medidas f&iacute;sicas: &quot;tiempo de ejecuci&oacute;n y espacio de memoria&quot; y comparar distintos algoritmos que resuelven un mismo problema &#91;2&#93;. En el an&aacute;lisis de algoritmos es necesario tener en cuenta, inicialmente, que los algoritmos construidos deben ser correctos, es decir, deben producir un resultado deseado en tiempo finito. Los criterios para realizar esta evaluaci&oacute;n pueden ser eficiencia, portabilidad, eficacia, robustez, etc. &#91;3&#93;. El concepto de eficiencia de un algoritmo es relativo, dado que ante dos algoritmos que resuelven el mismo problema, uno es m&aacute;s eficiente que otro si consume menos recursos, present&aacute;ndose que algunos dan una eficiencia en tiempo, pero con un consumo alto de recursos, o, por el contrario, un uso &oacute;ptimo de recursos, pero con un tiempo un poco m&aacute;s largo. De acuerdo con esto, en muchas ocasiones es bastante &uacute;til predecir c&oacute;mo se comportar&aacute; un algoritmo sin llegar a su implementaci&oacute;n, es decir, analizar el algoritmo matem&aacute;ticamente.</p>     ]]></body>
<body><![CDATA[<p><font size="3"><b>III. Complejidad algor&iacute;tmica</b></font></p>     <p>La teoria de la complejidad computacional es la parte de la teor&iacute;a de la computaci&oacute;n que estudia los recursos requeridos durante el c&aacute;lculo para resolver un problema &#91;16&#93;. Dado que en las ciencias de la computaci&oacute;n los algoritmos son la herramienta m&aacute;s importante que se presenta, deben dar soluci&oacute;n a diferentes problemas, con pasos concretos, claros y finitos. Cada algoritmo arroja un c&aacute;lculo correcto a trav&eacute;s de la recepci&oacute;n de datos de entrada y de la generaci&oacute;n de informaci&oacute;n de salida &#91;5&#93;. El an&aacute;lisis de complejidad de un algoritmo produce como resultado una &quot;funci&oacute;n de complejidad&quot; &#91;21&#93;, que da una aproximaci&oacute;n del n&uacute;mero de operaciones que realiza &#91;17&#93;. Cada algoritmo se puede medir en tiempo y espacio, un algoritmo ser&aacute; m&aacute;s eficiente comparado con otro, siempre que consuma menos recurso, como el tiempo y el espacio necesarios para ejecutar; para esto se realizan ciertas operaciones matem&aacute;ticas que identifican la eficiencia te&oacute;rica del programa; a estos estudios se les denomina complejidad algoritmica &#91;2&#93;.</p>     <p><b><i>A. Notaci&oacute;n asint&oacute;tica</i></b></p>     <p>Dentro del an&aacute;lisis de complejidad existen factores constantes que son poco relevantes y pueden ser omitidos en la comparaci&oacute;n de tasas; para tal fin se utiliza la notaci&oacute;n asint&oacute;tica &#91;6&#93;. La eficiencia de un algoritmo se puede definir como una funci&oacute;n t(n) &#91;20&#93;. Al analizar un algoritmo, lo relevante es el comportamiento cuando se aumenta el tama&ntilde;o de los datos; esto se conoce como eficiencia asint&oacute;tica de un algoritmo. Para describir la notaci&oacute;n asint&oacute;tica se hace uso de las matem&aacute;ticas, defini&eacute;ndola como funci&oacute;n para cual los n&uacute;meros naturales N son su dominio &#91;1&#93;.</p>     <p align="center"><img src="img/revistas/rfing/v23n36/v23n36a09for1.jpg"></p>     <p>Algunas reglas sobre esta notaci&oacute;n son las siguientes &#91;8&#93;:</p>     <p align="center"><img src="img/revistas/rfing/v23n36/v23n36a09for2.jpg"></p>     <p><b><i>B.&nbsp;Divide y vencer&aacute;s</i></b></p>     <p><i>Divide y vencer&aacute;s </i>es una t&eacute;cnica de dise&ntilde;o de algoritmos que consiste en resolver un problema a partir de la soluci&oacute;n de subproblemas del mismo tipo, pero de menor tama&ntilde;o. Si los subproblemas son todavia relativamente grandes se aplicar&aacute; de nuevo esta t&eacute;cnica hasta alcanzar subproblemas lo suficientemente peque&ntilde;os para ser solucionados directamente; ello, naturalmente, sugiere el uso de la recursi&oacute;n en las implementaciones de estos algoritmos &#91;7&#93;. La resoluci&oacute;n de un problema por medio de esta t&eacute;cnica se da a trav&eacute;s de, m&iacute;nimo, los siguientes pasos:</p> <ol>    <li>    ]]></body>
<body><![CDATA[<p>Divisi&oacute;n: Identificar los subproblemas del mismo tipo del problema original y organi-zarlos en los diferentes grupos, k.</p></li>     <li>       <p>Soluci&oacute;n subproblemas: Deben solucionarse de manera independiente todos los subproblemas que estrictamente son de me</p> </li>     <li>    <p>Soluci&oacute;n problema: Dada una soluci&oacute;n de los subproblemas, articular estas soluciones para construir la soluci&oacute;n del problema en general.</p></li>    </ol>     <p><b><i>C.&nbsp;Ordenes de complejidad</i></b></p>     <p>Utilizando la notaci&oacute;n asint&oacute;tica, podemos definir un &quot;orden de complejidad&quot; b&aacute;sico &#91;8&#93;; de esta forma enumeramos lo siguiente:</p>     <p align="center"><img src="img/revistas/rfing/v23n36/v23n36a09for3.jpg"></p>     <p><b><i>D. Recurrencias</i></b></p>     ]]></body>
<body><![CDATA[<p>En argumentos l&oacute;gicos o en algoritmos se presenta la necesidad de resolver una sucesi&oacute;n de casos, para lo cual, a nivel matem&aacute;tico, normalmente se busca estructurar la conexi&oacute;n de cada caso con el anterior. La recurrencia es un m&eacute;todo astuto que busca enlazar cada caso con el anterior, es decir, generalizar el procedimiento y que al resolver solo el &uacute;ltimo caso nos permita encontrar la respuesta de los dem&aacute;s, es decir, al final solo nos quedar&aacute; un primer caso por resolver, del que se deducir&aacute;n todos &#91;9&#93;. En algunos ejemplos se encuentra el c&aacute;lculo de series, sucesiones o recorridos, que inicialmente son problemas iterativos, pero a trav&eacute;s del estudio o an&aacute;lisis de complejidad, es posible plantear una ecuaci&oacute;n de recurrencia; uno de los ejemplos nombrados y conocidos es el c&aacute;lculo de la serie de Fibonacci: <i>1-1-2-3-5-813-21-...</i></p>     <p>Dentro del manejo dado a las ecuaciones de recurrencia, al llevarlas a un proceso algoritmico aparece una restricci&oacute;n, consistente en que mientras se resuelve el &uacute;ltimo caso, todo el proceso est&aacute; haciendo uso de un gran espacio de memoria y genera conflictos en ejecuci&oacute;n; por tal motivo, antes de hacer uso de esta t&eacute;cnica siempre es necesario tener presente esto y tomar la decisi&oacute;n de combinarla con otros m&eacute;todos de soluci&oacute;n o presentar otra posible soluci&oacute;n desde el principio.</p>     <p><font size="3"><b>IV. Programaci&oacute;n din&aacute;mica</b></font></p>     <p>Cuando se trabaja con algoritmos que buscan optimizar procesos, y m&aacute;s a&uacute;n cuando se trabaja con algoritmos de representaci&oacute;n en grafos, generalmente despu&eacute;s de realizar el an&aacute;lisis correspondiente se encuentra que hay necesidad de utilizar un m&eacute;todo m&aacute;s avanzado, por tal motivo se hace uso de la programaci&oacute;n din&aacute;mica &#91;22&#93;, que es un m&eacute;todo general de optimizaci&oacute;n de procesos de decisi&oacute;n por etapas, adecuado para resolver problemas cuya soluci&oacute;n puede caracterizarse recursivamente y en la que los subproblemas que aparecen en la recursi&oacute;n se solapan de alg&uacute;n modo, lo que significaria una repetici&oacute;n de c&aacute;lculos inaceptable si se programa la soluci&oacute;n recursiva de manera directa &#91;10&#93;.</p>     <p>En ocasiones, las soluciones presentadas por otros m&eacute;todos divisan un inconveniente, esto es, cuando cada uno de los subproblemas se solapan entre si, impidiendo la soluci&oacute;n de forma independiente de cada uno de ellos, mostrando que la recursividad no resulta eficiente por la repetici&oacute;n de c&aacute;lculos que conlleva; en estos casos, la <i>programaci&oacute;n din&aacute;mica </i>ofrece una soluci&oacute;n aceptable; la eficiencia de esta t&eacute;cnica consiste en resolver los subproblemas una sola vez, guardando las soluciones para su futura utilizaci&oacute;n &#91;10&#93;.</p>     <p>Aplicar la <i>programaci&oacute;n din&aacute;mica </i>no solo tiene sentido por razones de eficiencia, sino porque adem&aacute;s presenta un m&eacute;todo capaz de resolver de manera eficiente problemas cuya soluci&oacute;n ha sido abordada por otras t&eacute;cnicas y ha fracasado &#91;19&#93;. La programaci&oacute;n din&aacute;mica tiene mayor aplicaci&oacute;n en la resoluci&oacute;n de problemas de optimizaci&oacute;n, que, generalmente, presentan distintas soluciones, y lo que busca esta t&eacute;cnica es encontrar la soluci&oacute;n de valor &oacute;ptimo. La soluci&oacute;n de problemas mediante esta t&eacute;cnica se basa en el llamado principio &oacute;ptimo enunciado por Bellman en 1957: &quot;En una secuencia de decisiones &oacute;ptimas, toda sub-secuencia ha de ser tambi&eacute;n &oacute;ptima&quot; &#91;7&#93;.</p>     <p>En grandes l&iacute;neas, el dise&ntilde;o de un algoritmo de programaci&oacute;n din&aacute;mica consta de los siguientes pasos:</p> <ol>    <li>    <p>Planteamiento de la soluci&oacute;n como una sucesi&oacute;n de decisiones y verificaci&oacute;n de que cumple el principio de &oacute;ptimo.</p></li>     <li>    ]]></body>
<body><![CDATA[<p>Definici&oacute;n recursiva de la soluci&oacute;n.</p></li>     <li>    <p>C&aacute;lculo del valor de la soluci&oacute;n &oacute;ptima mediante una tabla en donde se almacenan soluciones a problemas parciales para reutilizar los c&aacute;lculos.</p></li>     <li>    <p>Construcci&oacute;n de la soluci&oacute;n &oacute;ptima haciendo uso de la informaci&oacute;n contenida en la tabla anterior.</p></li>    </ol>     <p><b><i>A. Funciones con memoria</i></b></p>     <p>En la programaci&oacute;n din&aacute;mica, la soluci&oacute;n se basa en tener la soluci&oacute;n de peque&ntilde;os subproblemas m&aacute;s grandes, construyendo un &aacute;rbol que nos lleve a la soluci&oacute;n general del problema &#91;10&#93;.</p>     <p align="center"><img src="img/revistas/rfing/v23n36/v23n36a09for4.jpg"></p>     <p><font size="3"><b>V. Algoritmos de grafos</b></font></p>     ]]></body>
<body><![CDATA[<p>Generalmente, el dise&ntilde;ador del algoritmo, o programador, busca que cada funci&oacute;n sea resuelta de forma eficiente, y a trav&eacute;s del an&aacute;lisis, que se puede realizar de la forma descrita en el presente documento, definir cu&aacute;l es el m&eacute;todo por utilizar. Al afrontar problemas que tienen una necesidad de optimizaci&oacute;n y cuya estructura se puede definir como un grafo cualquiera, la combinaci&oacute;n del desarrollo de estructuras de datos, algoritmos de recorridos, algoritmos de b&uacute;squedas y la programaci&oacute;n din&aacute;mica indican una cantidad de algoritmos ya estudiados y utilizados por su optimalidad. Dentro de esos algoritmos se encuentran los siguientes &#91;11&#93;:</p> <ol>    <li>       <p>Algoritmo de Dijkstra: Orden de complejidad; orden que genera una respuesta que en problemas complejos de este tipo tiene un tiempo de ejecuci&oacute;n de no m&aacute;s de 1 segundo.</p> </li>     <li>    <p>Algoritmo de Kruskal: Orden de complejidad.</p></li>     <li>    <p>Algoritmo de Floyd-Warshall: Orden de complejidad.</p></li>     <li>    <p>Algoritmo de Prim: Orden de complejidad .</p></li>     <li>    ]]></body>
<body><![CDATA[<p>Algoritmo de Bellman-Ford: Orden de complejidad.</p></li>     <li>    <p>Algoritmo de Ford-Fulkerson: Orden de complejidad.</p></li>    </ol>     <p>Cada algoritmo de estos presenta un excelente rendimiento en determinado &aacute;mbito, por lo que lo ideal es conocer cu&aacute;l es el &aacute;mbito en el que funciona mejor cada uno de ellos.</p>     <p><b><i>A. El algoritmo de Dijkstra</i></b></p>     <p>En la complejidad, uno de los cl&aacute;sicos problemas es encontrar la ruta m&aacute;s corta entre un v&eacute;rtice inicial y cualquiera de los v&eacute;rtices de un grafo dado. El algoritmo de Dijkstra presenta una soluci&oacute;n por etapas, al estilo de la programaci&oacute;n din&aacute;mica; cada etapa a&ntilde;ade un nuevo v&eacute;rtice al conjunto de v&eacute;rtices, a los que se les conoce su distancia al origen. Cada ruta obtenida se basa en tomar el camino &oacute;ptimo; si para ir de v<sub>i</sub> a v<sub>j</sub> es necesario pasar por v<sub>k</sub>, los caminos v<sub>i</sub> a v<sub>k</sub> y v<sub>k</sub> a v<sub>j </sub>han de ser m&iacute;nimos.</p>     <p><b>Algoritmo de Dijkstra en JAVA</b></p>     <p align="center"><img src="img/revistas/rfing/v23n36/v23n36a09for5.jpg"></p>     <p>Este algoritmo presenta un orden de complejidad de <i>0</i>(|<i>V</i>|<sup>2</sup> + |<i>E</i>|), sin utilizar cola de prioridad, o <i>0</i>(|E| + |<i>V</i>|log|<i>V</i>|), si se utiliza cola de prioridad, y presenta una soluci&oacute;n eficiente en cuanto a un camino entre dos nodos.</p>     ]]></body>
<body><![CDATA[<p><b><i>B. El algoritmo de Floyd</i></b></p>     <p>Continuando el trabajo con grafos, otra propuesta algoritmica es presentada cuando se necesita indicar cu&aacute;l es el camino m&aacute;s corto entre cualquier par de nodos. El algoritmo Floyd, dada la matriz L de adyacencia del grafo g, calcula una matriz D con la longitud del camino m&iacute;nimo que une cada par de v&eacute;rtices.</p>     <p><b>Algoritmo de FLOYD en JAVA</b></p>     <p align="center"><img src="img/revistas/rfing/v23n36/v23n36a09for6.jpg"></p>     <p>La complejidad de este algoritmo es <i>0</i>(n<sup>3</sup>). El algoritmo resuelve eficientemente la b&uacute;squeda de todos los caminos m&aacute;s cortos entre cualesquiera nodos.</p>     <p><font size="3"><b>VI. MPLS</b></font></p>     <p>LabelSwitching se basa en asociar una peque&ntilde;a etiqueta de formato fijo con cada paquete de datos para que pueda ser enviado a trav&eacute;s de la red. Esto significa que cada paquete, ventana o celda debe tener adicionalmente alg&uacute;n identificador que indica los nodos de la red por los cuales debe pasar.</p>     <p>En cada salto a trav&eacute;s de la red, el paquete est&aacute; envi&aacute;ndose, basado en el valor de la etiqueta de entrada, y reenviado con un nuevo valor de etiqueta. La etiqueta es intercambiada, y los datos son conmutados basados en el valor de la etiqueta, dando lugar a dos t&eacute;rminos: &quot;labelswapping&quot; y &quot;labelswitching&quot;.</p>     <p>En una red MPLS, los paquetes son etiquetados por la inserci&oacute;n de una pieza adicional de informaci&oacute;n, llamada <i>shimheader; </i>esto funciona entre la cabecera de red y la cabecera de IP &#91;26&#93;.</p>     <p><font size="3"><b>VII. Dijkstra y GMPLS</b></font></p>     ]]></body>
<body><![CDATA[<p>El algoritmo de Dijkstra presenta algunas modificaciones, y se han generado sobre &eacute;l gran cantidad de aplicaciones, dentro de las cuales podemos nombrar las siguientes:</p> <ul>    <li>    <p>Encaminamiento de paquetes por los routers.</p></li>     <li>    <p>Aplicaciones para Sistemas de Informaci&oacute;n Geogr&aacute;ficos.</p></li>     <li>    <p>Reconocimiento del lenguaje hablado.</p></li>     <li>    <p>Enrutamiento de aviones, tr&aacute;fico a&eacute;reo.</p></li>     <li>    ]]></body>
<body><![CDATA[<p>Tratamiento de im&aacute;genes m&eacute;dicas.</p></li>    </ul>     <p>Cada una de estas aplicaciones tiene su raz&oacute;n de ser, por ejemplo, en el encaminamiento de paquetes se da que un mensaje puede tardar cierta cantidad de tiempo en atravesar cada l&iacute;nea; en este caso, tenemos una red con dos nodos especiales, el de inicio y el de llegada. Los pesos de las aristas ser&iacute;an los costes. El objetivo del algoritmo es encontrar un camino entre estos dos nodos cuyo coste total sea el m&iacute;nimo. Una de las aplicaciones m&aacute;s claras en este tema se da a trav&eacute;s de la definici&oacute;n de protocolos como GMPLS&#91;23&#93;.</p>     <p>Dentro de las mejores aplicaciones est&aacute;n las que se dan con el uso de soluciones dadas a trav&eacute;s de redes neuronales, como la del lenguaje, que tiene dentro de s&iacute; mismo m&uacute;ltiples aplicaciones de grafos que en conjunto ayudan a generar un resultado m&aacute;s efectivo &#91;25&#93;.</p>     <p>Dentro de los procesos de desarrollo para el ruteo de paquetes tambi&eacute;n podemos encontrar que otra aplicaci&oacute;n se da en la idea de garantizar Calidad del Servicio QoS &#91;24&#93;, a trav&eacute;s de minimizar el uso de la red y flexibilizar el modelo de reservas.</p>     <p>El MPLS Generalizado, o GMPLS, es una especificaci&oacute;n del MPLS que busca eliminar algunos inconvenientes presentados dentro del transporte de informaci&oacute;n en las redes. Los inconvenientes se presentan en hardware, software o configuraci&oacute;n, y se tratan de eliminar por medio de este protocolo &#91;26&#93;. Dentro de la definici&oacute;n de GMPLS encontramos el uso de algunos de los algoritmos ya nombrados, como lo son:</p> <ul>    <li>    <p>Bellman-Ford</p></li>     <li>    <p>Dijkstra</p></li>     ]]></body>
<body><![CDATA[<li>    <p>Dijkstra Modificado</p></li>     <li>    <p>Bread First Search</p></li>     <li>    <p>Johnson</p></li>     <li>    <p>K ShortestPaths</p></li>    </ul>     <p>Estos algoritmos son nombrados en otros documentos que muestran su uso, dado que no cumplen exactamente la misma funci&oacute;n y no se realizan comparaciones entre ellos; son algoritmos que, en t&eacute;rminos generales, realizan la misma tarea, pero cada uno tiene su especialidad &#91;28&#93;.</p>     ]]></body>
<body><![CDATA[<p><b><i>A. Bellman-Ford</i></b></p>     <p>Este es un algoritmo que resuelve el problema de, dado un v&eacute;rtice cualquiera, encontrar todos los caminos m&aacute;s cortos a cualquiera de los v&eacute;rtices del grafo. En t&eacute;rminos generales, este algoritmo es usado off-line, es decir, es utilizado para realizar un mapa de todas las posibles rutas que se pueden tomar desde un punto a los dem&aacute;s; esto es aplicable a todos los dispositivos de ruteo locales que se utilizan en la red.</p>     <p align="center"><img src="img/revistas/rfing/v23n36/v23n36a09for7.jpg"></p>     <p><b><i>B.&nbsp;Dijkstra</i></b></p>     <p>Aunque este algoritmo tambi&eacute;n resuelve el problema de encontrar todos los caminos desde un v&eacute;rtice dado a todos los dem&aacute;s, es muy eficiente encontrando el camino m&aacute;s corto entre una par dado de v&eacute;rtices. Cuando se tiene un paquete de informaci&oacute;n y se desea construir el camino m&aacute;s corto entre el emisor y el receptor en la red es m&aacute;s econ&oacute;mico y rentable utilizar este algoritmo para plantear la ruta.</p>     <p><b><i>C.&nbsp;Dijkstra modificado</i></b></p>     <p>El algoritmo de Dijkstra presenta algunos fallos para grafos donde algunos arcos tienen pesos negativos. La raz&oacute;n para esto es que dado un v&eacute;rtice removido de la cola de prioridad U no vuelve a ser reetiquetado ni reinsertado dentro de U. En grafos con arcos no negativos esto funciona, sin embargo, cuando se presentan arcos con peso negativo el algoritmo de Dijkstra en su estado original presenta fallas para encontrar los estados o las rutas m&aacute;s cortas, por tal motivo, se hace necesario presentar una alternativa: podr&iacute;a ser cambiar de algoritmo o modificar el algoritmo de Dijkstra reetiquetando los v&eacute;rtices removidos o reinsert&aacute;ndolos en la cola de prioridad. Este algoritmo ha sido planteado de la siguiente manera:</p>     <p align="center"><img src="img/revistas/rfing/v23n36/v23n36a09for8.jpg"></p>     <p><b>Orden de complejidad: </b>teniendo unas modificaciones sobre el algoritmo de Dijkstra, las cuales se pueden clasificar como insignificantes, dado que solo le agregan procedimientos constantes.</p>     <p><b><i>D. BreadthFirstSearch</i></b></p>     ]]></body>
<body><![CDATA[<p>Dentro de los algoritmos que construyen todos los caminos m&aacute;s cortos desde un punto dado hasta los dem&aacute;s, este algoritmo baja en eficiencia; sin embargo, previene que dentro del proceso no se encuentren ciclos negativos; ya depende del uso de la red y de c&oacute;mo se necesite el revisar la rentabilidad de su uso.</p>     <p align="center"><img src="img/revistas/rfing/v23n36/v23n36a09for9.jpg"></p>     <p><b><i>E.&nbsp;Johnson</i></b></p>     <p>Este es un algoritmo muy completo, que permite encontrar todos los caminos m&aacute;s cortos entre cada par de v&eacute;rtices presente en el grafo; es utilizado con el fin de realizar un mapa completo de la red, haciendo evidente el posible uso de segundas rutas m&aacute;s cortas. Es un algoritmo m&aacute;s para uso off-line, es decir, dada su implementaci&oacute;n, es m&aacute;s para redes con un cambio m&iacute;nimo en sus dispositivos conectados.</p>     <p><b><i>F.&nbsp;K ShortestPath</i></b></p>     <p>No siempre los caminos m&aacute;s cortos son los m&aacute;s efectivos, el K ShortestPath busca los primeros k caminos m&aacute;s cortos entre un par dado de v&eacute;rtices, orient&aacute;ndonos hacia otras posibles rutas, con el fin de obtener rutas m&aacute;s cortas diferentes a la primera, porque sobre esta puede presentarse congesti&oacute;n.</p>     <p><font size="3"><b>XXI. Modelos y discusiones acerca de la aplicaci&oacute;n en GMPLS</b></font></p>     <p>Cada uno de los algoritmos tratados en el presente documento presenta una aplicabilidad en diferentes &aacute;mbitos; las redes GMPLS tienen heuristicas que se asocian con los algoritmos de grafos y se han planteado a lo largo del documento.</p>     <p align="center"><a name="fig1"><img src="img/revistas/rfing/v23n36/v23n36a09f1.jpg"></a></p>     <p>Inicialmente, cada uno de los algoritmos tiene su aplicaci&oacute;n dentro del modelo GMPLS; sus aplicabilidades se pueden resumir asi:</p> <ul>    ]]></body>
<body><![CDATA[<li>    <p><b>Bellman-Ford: </b>Algoritmo que presenta propiedades interesantes dado que considera las restricciones de enrutamiento, es decir, identifica el camino &oacute;ptimo entre el origen y el destino a trav&eacute;s de m&aacute;ximo h saltos. Es utilizado en RIP, que es la implementaci&oacute;n m&aacute;s popular de este tipo de algoritmos &#91;29&#93;. Como es posible notar en la secci&oacute;n VII (A), este algoritmo presenta, en el mejor de los casos, un orden de su n&uacute;mero de aristas; sin embargo, tambi&eacute;n es posible que el orden cambie a un m&aacute;ximo de su n&uacute;mero de aristas por su n&uacute;mero de v&eacute;rtices, es decir,.</p> <ul>    <li>    <p>for (int k = 1; k &lt; n; k++): Identifica un ciclo con el fin de recorrer y analizar cada uno de los v&eacute;rtices.</p></li>     <li>    <p>if (list1 isempty): Identifica una condici&oacute;n que permite bajar el tiempo de ejecuci&oacute;n.</p></li>     <li>    <p>foreach (edge (v,u): Ciclo que revisa cada uno de los arcos y est&aacute; anidado en el anterior ciclo nombrado.</p></li>    </ul></li>    </ul>     ]]></body>
<body><![CDATA[<p>De esta manera se identifica el orden de V*E.</p>   <ul>    <li>    <p><b>Dijkstra'sAlgorithms: </b>Cada Router GMPLS sirve como la base para el descubrimiento de caminos (c&aacute;lculos realizados por medio de estos algoritmos), cada nodo de la red realiza esta tarea cada vez que recibe un mensaje a enrutar. La complejidad de estos algoritmos es muy baja cuando se trata de solo calcular el camino m&aacute;s corto entre un par dado de v&eacute;rtices; revisando los algoritmos secciones V(A) y VII(C), el orden para un solo par de v&eacute;rtices es de m&aacute;ximo O(E); el orden se extiende por los ciclos for anidados en el conteo de v&eacute;rtices hasta un m&aacute;ximo de , siendo este el orden para calcular todas las rutas m&iacute;nimas dadas desde un punto dado a todas las dem&aacute;s ubicaciones.</p>  <ul>    <li>    <p>for (int i = 0; i &lt; (distanciasCortas. length - 1); i++): Ciclo que recorre todos los v&eacute;rtices identificando las rutas m&aacute;s cortas de cada uno.</p></li>     <li>    <p>for (int j = 0; j &lt;grafo&#91;0&#93;.length; j++): Este ciclo est&aacute; anidado al anterior, recorriendo las posibles rutas m&aacute;s cortas y dando el orden m&aacute;ximo de V*V.</p></li>    </ul></li>       <li>    <p><b>BreadthFirstSearch: </b>Algoritmo utilizado en el plano de control del GMPLS; tiene como caracter&iacute;stica especial en este control que dados dos caminos cortos en peso &eacute;l toma como &oacute;ptimo el que tiene menor n&uacute;mero de arcos &#91;26&#93;; el algoritmo presentado en la secci&oacute;n VII-D muestra un Orden en el cual los ciclos se basan en la cantidad de v&eacute;rtices y una cola de prioridad, presentando un Orden O(n Log |n|).</p> <ul>    ]]></body>
<body><![CDATA[<li>    <p>while (Q isnotempty): Ciclo que recorre <i>n </i>v&eacute;rtices en la cola de prioridad.</p></li>     <li>       <p>while (u&ne;null): Este ciclo est&aacute; anidado al anterior, y con una condici&oacute;n hace que el rango se disminuya en cada acceso que se tiene a &eacute;l.</p> </li>     <li>    <p>if (u has notbeenlabeled and edge (w, u): Condici&oacute;n que permite reducir el tiempo de ejecuci&oacute;n de forma proporcional a los nodos recorridos.</p></li>    </ul></li>       <li>    <p><b>K-shortestpath: </b>En los enrutadores de las redes GMPLS se tiene control de la p&eacute;rdida de informaci&oacute;n, lo que necesita como opci&oacute;n la selecci&oacute;n de caminos que no necesariamente son los m&aacute;s cortos, pero son m&aacute;s seguros y eficientes; el k-shortestpath calcula los primeros k caminos entre dos nodos, con el fin de definir cu&aacute;l le genera mejor seguridad.</p> <ul>    <li>    ]]></body>
<body><![CDATA[<p>Este es un algoritmo al cual no se le define un orden, dado que maneja el uso de otros algoritmos para obtener cada camino m&aacute;s corto.</p></li>     <li>    <p>Generalmente es usado el algoritmo de Dijkstra para obtener el camino m&aacute;s corto, y se elimina esta ruta como opci&oacute;n.</p></li>     <li>    <p>El algoritmo genera un orden aproximado de k veces O(V*E).</p></li>    </ul></p></li>    </ul>     <p>El an&aacute;lisis de cada uno de estos algoritmos se ha realizado con el fin de mostrar los &oacute;rdenes de complejidad que tiene cada uno y de plantear la discusi&oacute;n de que no se debe elegir entre ellos, dado que cada uno cumple funciones espec&iacute;ficas en muchos de los campos de acci&oacute;n, y que es bastante importante la labor que cumple cada uno de ellos dentro del modelo de la red.</p>     <p>A pesar de que en las redes GMPLS se utilizan todos estos algoritmos en su forma original &#91;26&#93;, algunos autores prefieren construir nuevos algoritmos que, a nivel de investigaci&oacute;n, muestran un mejor resultado; esta construcci&oacute;n la hacen con el fin de mejorar algunas caracter&iacute;sticas de las redes &#91;27&#93;. Sin desconocer que los algoritmos aqu&iacute; nombrados dan soluci&oacute;n al problema, lo que hacen es dar soluci&oacute;n a casos espec&iacute;ficos, a&ntilde;adiendo a ellos fragmentos de c&oacute;digo espec&iacute;fico.</p>     <p><font size="3"><b>IX. Conclusiones</b></font></p>     ]]></body>
<body><![CDATA[<p>La soluci&oacute;n de problemas de grafos eficientes para determinadas situaciones genera discusiones, por parte de diferentes autores.</p>     <p>El tema de grafos presenta gran cantidad de algoritmos, y nos permite hacer un mejor an&aacute;lisis de ellos para obtener un estudio de complejidad y determinar de acuerdo con diferentes arquitecturas qu&eacute; algoritmo se debe usar en las situaciones presentadas.</p>     <p>De acuerdo con cada una de las caracter&iacute;sticas de los problemas y con las necesidades, se puede hacer uso de los diferentes algoritmos. Los algoritmos presentes en el actual documento son eficientes en sus respectivos &aacute;mbitos.</p>     <p>Si el problema requiere de una soluci&oacute;n &oacute;ptima de camino m&aacute;s corto entre 2 nodos definidos, es posible aplicar Dijkstra o Floyd, sin embargo, es m&aacute;s eficiente Dijkstra, dado que Floyd encuentra todos los caminos m&aacute;s cortos entre cualquier par de nodos.</p>     <p>Otras soluciones de caminos m&aacute;s cortos implican la generaci&oacute;n de &aacute;rboles recubridores que permiten reconstruir cualquier ruta desde un nodo espec&iacute;fico. Si este es el requerimiento, es posible utilizar algoritmos de gran eficiencia, como el de Kruskal o el de Prim.</p>     <p>Cuando se habla de algoritmos que ayudan a optimizar la soluci&oacute;n de problemas que se pueden representar en forma de grafos, no implica que se tenga que utilizar un solo algoritmo. Los algoritmos presentados en este documento presentan, en su an&aacute;lisis, una eficiencia general muy buena; son los algoritmos mejor clasificados en la soluci&oacute;n de problemas de optimizaci&oacute;n.</p>     <p>La eficiencia de los algoritmos es medible de acuerdo con la utilizaci&oacute;n de espacio y tiempo que requieren; a trav&eacute;s del an&aacute;lisis es posible generar una funci&oacute;n matem&aacute;tica que representa su eficiencia; a esto lo debemos llamar an&aacute;lisis de complejidad algoritmica.</p>     <p>As&iacute; mismo, es necesario recordar que existe una amplia gama de aplicaciones de estos estudios; algunas de ellas est&aacute;n en el &aacute;mbito de las redes de informaci&oacute;n &#91;18&#93;, en las redes de tr&aacute;fico o en estados de planeaci&oacute;n que sirven para cualquier estructura organizacional.</p>     <p>En GMPLS se presenta el uso de algunos algoritmos, incluida la modificaci&oacute;n del algoritmo de Dijkstra manteniendo su nivel de complejidad en un orden definido en este algoritmo &#91;29&#93;.</p>     <p>Los algoritmos aqu&iacute; consignados no solo presentan excelente eficiencia, a su vez, en otras comparaciones se hace uso de la mayor&iacute;a de ellos en forma combinada para mejorar su ejecuci&oacute;n y las aplicaciones que pueden tener &#91;28&#93;.</p>     ]]></body>
<body><![CDATA[<p>El orden de complejidad presentado en este documento para cada uno de los algoritmos obedece a pruebas realizadas sobre JAVA, en las cuales se evidencia que el algoritmo corre de acuerdo con esto, y que tambi&eacute;n es necesario tener en cuenta los mecanismos de lectura y escritura de la informaci&oacute;n para evitar aumentar los tiempos de ejecuci&oacute;n.</p> <hr>     <p><font size="3"><b>Referencias</b></font></p>     <!-- ref --><p>&#91;1&#93; A. Duch,&quot;An&aacute;lisis de Algoritmos&quot;, <a href="http://www.Isi.upc.edu/duch/home/an&aacute;lisis.pdf" target="_blank">http://www.Isi.upc.edu/duch/home/an&aacute;lisis.pdf</a>, Barcelona, marzo de 2007.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000195&pid=S0121-1129201400010000900001&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;2&#93; E. Scalise, R. Carmona, &quot;An&aacute;lisis de Algoritmos y Complejidad&quot;, <a href="http://ccg.ciens.ucv.ve/~esmitt/ayed/II-2011/ND200105.pdf" target="_blank">http://ccg.ciens.ucv.ve/~esmitt/ayed/II-2011/ND200105.pdf</a>, Venezuela, ND 2001 05.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000197&pid=S0121-1129201400010000900002&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;3&#93; T.H.Cormen, C. Stein, R. L.Rivest and C. E. Leiserson, &quot;Introduction to Algorithms&quot;, 3<sup>rd</sup>. McGraw-Hill Higher Education, 2009.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000199&pid=S0121-1129201400010000900003&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;4&#93; S. S. Skiena and M. A.Revilla, &quot;Programming challengers&quot;, The programming contest training manual, Springer-Verlag, 2003.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000201&pid=S0121-1129201400010000900004&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     ]]></body>
<body><![CDATA[<!-- ref --><p>&#91;5&#93; H. Zenil, J.-P. Delahaye, &quot;Un m&eacute;todo estable para la evaluaci&oacute;n de la complejidad algor&iacute;tmica de cadenas cortas&quot;, Computational Complexity (cs. CC); Information Theory (cs,IT), 26 Aug 2011.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000203&pid=S0121-1129201400010000900005&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;6&#93; J. F. Villalpando B., &quot;An&aacute;lisis asint&oacute;tico con aplicaci&oacute;n de funciones de Landau como m&eacute;todo de comprobaci&oacute;n de eficiencia en algoritmos computacionales&quot; e-Gnosis, a&ntilde;o/vol 1, 2003, <a href="http://www.redalyc.org/articulo.oa?id=73000115">http://www.redalyc.org/articulo.oa?id=73000115</a>.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000205&pid=S0121-1129201400010000900006&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;7&#93; R.Guerequeta, A. Vallecillo, &quot;T&eacute;cnicas de dise&ntilde;o de Algoritmos&quot;, Universidad de M&aacute;laga, Segunda edici&oacute;n, mayo de 2000.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000207&pid=S0121-1129201400010000900007&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;8&#93; J. A. Manas, &quot;An&aacute;lisis de algoritmos: Complejidad&quot;, <a href="http://www.lab.dit.upm.es/~lprg/material/apuntes/o/index.html" target="_blank">http://www.lab.dit.upm.es/~lprg/material/apuntes/o/index.html</a>, noviembre de 1997.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000209&pid=S0121-1129201400010000900008&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;9&#93; P. F. Gallardo, &quot;Ecuaciones de recurrencia&quot;, Cap&iacute;tulo 6, Notas de Matem&aacute;tica Discreta, <a href="http://www.uam.es/personal_pdi/ciencias/gallardo/md.htm/" target="_blank">http://www.uam.es/personal_pdi/ciencias/gallardo/md.htm/</a>.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000211&pid=S0121-1129201400010000900009&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     ]]></body>
<body><![CDATA[<!-- ref --><p>&#91;10&#93; J. Berm&uacute;dez de Andr&eacute;s, &quot;Dise&ntilde;o de algoritmos&quot;, Programaci&oacute;n Din&aacute;mica, Universidad del Pa&iacute;s Vasco, 2008.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000213&pid=S0121-1129201400010000900010&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;11&#93; E. Coto, &quot;Algoritmos B&aacute;sicos de Grafos&quot;, <a href="http://www.ciens.unv.ve/~ernesto/nds/CotoND200302.pdf" target="_blank">http://www.ciens.unv.ve/~ernesto/nds/CotoND200302.pdf</a>, Venezuela, ND 2003 02.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000215&pid=S0121-1129201400010000900011&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;12&#93; P. R. Fillottrani, &quot;Algoritmos y Complejidad&quot;, Algoritmos sobre grafos, <a href="http://www.cs.uns.edu.ar/prf/teaching/AyC09/clase15.pdf" target="_blank">http://www.cs.uns.edu.ar/prf/teaching/AyC09/clase15.pdf</a>, 2009.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000217&pid=S0121-1129201400010000900012&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;13&#93; H. Araya Carrasco, &quot;Grafos&quot;, <a href="http://www.ganimides.ucm.lc" target="_blank">http://www.ganimides.ucm.lc</a>.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000219&pid=S0121-1129201400010000900013&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;14&#93; J. Hopcroft, R. Tarjan, &quot;Efficient Algorithms for Graph Manipulation&quot;, Cornell University, Ithaca NY, 14850.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000221&pid=S0121-1129201400010000900014&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     ]]></body>
<body><![CDATA[<!-- ref --><p>&#91;15&#93; J. S&aacute;nchez Vel&aacute;squez, &quot;Introducci&oacute;n al an&aacute;lisis de algoritmos&quot;, <a href="http://148.201.94.3:8991/F/?func=direct/&amp;local_base=ite01&amp;doc_number=0001116302" target="_blank">http://148.201.94.3:8991/F/?func=direct/&local_base=ite01&doc_number=0001116302</a>,  M&eacute;xico: Trillas, 1998, ct998.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000223&pid=S0121-1129201400010000900015&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;16&#93; A. Cort&eacute;s, &quot;Teor&iacute;a de la complejidad computacional y teoria de la computabilidad&quot;, <a href="http://sisbib.unmsm.edu.pe/BibVirtualData/publicaciones/risi/N1_2004/a14.pdf" target="_blank">http://sisbib.unmsm.edu.pe/BibVirtualData/publicaciones/risi/N1_2004/a14.pdf</a>, Per&uacute;: Lima, 2004.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000225&pid=S0121-1129201400010000900016&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;17&#93; I. Dora, C. Le&oacute;n, C. Rodr&iacute;guez, G. Rodr&iacute;guez, A. Rojas, &quot;Complejidad Algor&iacute;tmica: de la Teoria a la Pr&aacute;ctica&quot;, <a href="http://bioinfo.uib.es/joemiro/aenui/procJenui/Jen2003/docomp.pdf" target="_blank">http://bioinfo.uib.es/joemiro/aenui/procJenui/Jen2003/docomp.pdf</a>, La Laguna, Tenerife.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000227&pid=S0121-1129201400010000900017&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;18&#93; M. Amoretti, F. Zanichelli and G. Conte, &quot;Performance evaluation of advanced rouning algorithms for unstructured peer-to-peer networks&quot;, Procceding of the 1rt International Conference on Performance Evaluation Methodologies and Tools (valuetools '06), ACM, New York, NY, USA, Article 50.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000229&pid=S0121-1129201400010000900018&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;19&#93; Y. Yuan, C. Zhiqiang, Z. Hou, M. Tan, &quot;Dynamic programming field based environment learning and path planning for mobile robots&quot;, Intelligent Control And Automation (WCICA), IEEE, 2010 8<sup>th</sup> World Congress, pp. 883-887, 7-9 July 2010.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000231&pid=S0121-1129201400010000900019&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     ]]></body>
<body><![CDATA[<!-- ref --><p>&#91;20&#93; P. Marbach, J. N. Tsitsiklis, &quot;A neuro-dynamic programming approach to admission control in ATM networks: the single link case&quot;, Acoustics, Speech, and Signal Processing, 1997. ICASSP-97., 1997 IEEE International Conference on, vol.1, no., pp.159-162, 21-24 Apr 1997.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000233&pid=S0121-1129201400010000900020&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;21&#93; P. K. Singhal, R. N. Sharma, &quot;Dynamic programming approach for solving power generating unit commitment problem&quot;, Computer and Communication Technology /IC-CCT), 2011, 2<sup>nd </sup>International  Conference, pp.298-303, 15-17 Sept. 2011.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000235&pid=S0121-1129201400010000900021&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;22&#93; T. Hu, T. Wu, J. Song, Q. Liu, B. Zhang,&quot;A New Tree Structure for Weighted Dynamic Programming Based Stereo Algorithm&quot;, Image and Graphics (ICIG), 2011 Sixth International Conference, pp.100-105. 12-15 Aug. 2011.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000237&pid=S0121-1129201400010000900022&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;23&#93; O.J.S. Parra, C. Manta, G. L&oacute;pez Rubio, &quot;Dijkstra's Algorithm Model Over MPLS/ GMPLS&quot;, Wireless Communications, Networking and Mobile Computing (WiCOM),    2011    7<sup>th</sup> International Conference, pp. 1-4, 23-25 Sept., 2011.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000239&pid=S0121-1129201400010000900023&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;24&#93; S. Tanwir, L. Battestilli, H. Perros and G. Karmous-Edwards, &quot;Dynamic scheduling of network resources whit advance reservations in optical grids&quot;, Int. J. Netw. Manag. 18, 2 (March 2008), 79-105, DOI=10.1002/nem.680 <a href="http://dx.doi.org/10.1002/new.680" target="_blank">http://dx.doi.org/10.1002/new.680</a>.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000241&pid=S0121-1129201400010000900024&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     ]]></body>
<body><![CDATA[<!-- ref --><p>&#91;25&#93; P. Hegyi, M. Maliosz, A. Ladanyi, T. Cinkler, &quot;Shared protection of virtual private networks, 2003. (DRCN 2003), Proceedings. Fourth International Workshop, pp. 448-454, 19-22 Oct. 2003.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000243&pid=S0121-1129201400010000900025&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;26&#93; A.  Farrel,  I.  Bryskin, &quot;GMPLS: architecture and applications&quot;, San Francisco:   Elsevier/Morgan Kaufman, 2006.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000245&pid=S0121-1129201400010000900026&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;27&#93; A.N.Al-Khwildi, H.S. Al-Raweshidy, &quot;A Proficient Path Selection for Wireless Ad Hoc Routing Protocol&quot;, Advanced Communication  Technology, 2006, ICACT 2006. The 8<sup>th</sup> International Conference, vol.1, pp. 599-604, 20-22 Feb. 2006.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000247&pid=S0121-1129201400010000900027&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;28&#93; W. Xiao, B.H. Soong, C.L. Law, Y. L. Guan, &quot;Evaluation of heuristic path selection algorithms for multi-constrained QoS routing&quot;, Networking, Sensing and control, 2004 IEEE International Conference on, vol.1, pp. 112-116, 21-23 March 2004.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000249&pid=S0121-1129201400010000900028&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>&#91;29&#93; L. N. Binh, &quot;Routing and Wavelength Assignment in GMPLS-based 10 Gb/s Ethernet Long Haul Optical Networks with and without Linear Dispersion Constraints&quot;, I.J. Communications, Networks and System Sciences Published (online), <a href="http://www.SRPublishing.org/journal/ijcns/" target="_blank">http://www.SRPublishing.org/journal/ijcns/</a>, 2008, 2, 105-206.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000251&pid=S0121-1129201400010000900029&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p> </font>     ]]></body>
<body><![CDATA[ ]]></body><back>
<ref-list>
<ref id="B1">
<label>1</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Duch]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
</person-group>
<source><![CDATA[Análisis de Algoritmos]]></source>
<year>marz</year>
<month>o </month>
<day>de</day>
<publisher-loc><![CDATA[Barcelona ]]></publisher-loc>
</nlm-citation>
</ref>
<ref id="B2">
<label>2</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Scalise]]></surname>
<given-names><![CDATA[E.]]></given-names>
</name>
<name>
<surname><![CDATA[Carmona]]></surname>
<given-names><![CDATA[R.]]></given-names>
</name>
</person-group>
<source><![CDATA[Análisis de Algoritmos y Complejidad]]></source>
<year>2001</year>
<month> 0</month>
<day>5</day>
</nlm-citation>
</ref>
<ref id="B3">
<label>3</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Cormen]]></surname>
<given-names><![CDATA[T.H]]></given-names>
</name>
<name>
<surname><![CDATA[Stein]]></surname>
<given-names><![CDATA[C.]]></given-names>
</name>
<name>
<surname><![CDATA[L.Rivest]]></surname>
<given-names><![CDATA[R.]]></given-names>
</name>
<name>
<surname><![CDATA[Leiserson]]></surname>
<given-names><![CDATA[C. E.]]></given-names>
</name>
</person-group>
<source><![CDATA[Introduction to Algorithms]]></source>
<year>2009</year>
<edition>3</edition>
<publisher-name><![CDATA[McGraw-Hill Higher Education]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B4">
<label>4</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Skiena]]></surname>
<given-names><![CDATA[S. S.]]></given-names>
</name>
<name>
<surname><![CDATA[A.Revilla]]></surname>
<given-names><![CDATA[M.]]></given-names>
</name>
</person-group>
<source><![CDATA[Programming challengers", The programming contest training manual, Springer-Verlag]]></source>
<year>2003</year>
</nlm-citation>
</ref>
<ref id="B5">
<label>5</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Zenil]]></surname>
<given-names><![CDATA[H.]]></given-names>
</name>
<name>
<surname><![CDATA[Delahaye]]></surname>
<given-names><![CDATA[J.-P.]]></given-names>
</name>
</person-group>
<source><![CDATA[Un método estable para la evaluación de la complejidad algorítmica de cadenas cortas]]></source>
<year>26 A</year>
<month>ug</month>
<day> 2</day>
<publisher-name><![CDATA[Computational Complexity (cs. CC)Information Theory (cs,IT)]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B6">
<label>6</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[J. F. Villalpando]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
</person-group>
<source><![CDATA[Análisis asintótico con aplicación de funciones de Landau como método de comprobación de eficiencia en algoritmos computacionales]]></source>
<year>2003</year>
<volume>1</volume>
<publisher-name><![CDATA[e-Gnosis]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B7">
<label>7</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Guerequeta]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Vallecillo]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
</person-group>
<source><![CDATA[Técnicas de diseño de Algoritmos]]></source>
<year>mayo</year>
<month> d</month>
<day>e </day>
<edition>Segunda</edition>
<publisher-name><![CDATA[Universidad de Málaga]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B8">
<label>8</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Manas]]></surname>
<given-names><![CDATA[J. A.]]></given-names>
</name>
</person-group>
<source><![CDATA[Análisis de algoritmos: Complejidad]]></source>
<year>novi</year>
<month>em</month>
<day>br</day>
</nlm-citation>
</ref>
<ref id="B9">
<label>9</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Gallardo]]></surname>
<given-names><![CDATA[P. F.]]></given-names>
</name>
</person-group>
<source><![CDATA[Ecuaciones de recurrencia]]></source>
<year></year>
<volume>6</volume>
<publisher-name><![CDATA[Notas de Matemática Discreta]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B10">
<label>10</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Andrés]]></surname>
<given-names><![CDATA[J. Bermúdez de]]></given-names>
</name>
</person-group>
<source><![CDATA[Diseño de algoritmos]]></source>
<year>2008</year>
<publisher-name><![CDATA[Programación Dinámica, Universidad del País Vasco]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B11">
<label>11</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Coto]]></surname>
<given-names><![CDATA[E.]]></given-names>
</name>
</person-group>
<source><![CDATA[Algoritmos Básicos de Grafos]]></source>
<year>2003</year>
<month> 0</month>
<day>2</day>
</nlm-citation>
</ref>
<ref id="B12">
<label>12</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Fillottrani]]></surname>
<given-names><![CDATA[P. R.]]></given-names>
</name>
</person-group>
<source><![CDATA[Algoritmos y Complejidad]]></source>
<year>2009</year>
<publisher-name><![CDATA[Algoritmos sobre grafos]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B13">
<label>13</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Carrasco]]></surname>
<given-names><![CDATA[H. Araya]]></given-names>
</name>
</person-group>
<source><![CDATA[Grafos]]></source>
<year></year>
</nlm-citation>
</ref>
<ref id="B14">
<label>14</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Hopcroft]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
<name>
<surname><![CDATA[Tarjan]]></surname>
<given-names><![CDATA[R.]]></given-names>
</name>
</person-group>
<source><![CDATA[Efficient Algorithms for Graph Manipulation]]></source>
<year></year>
<page-range>14850</page-range><publisher-loc><![CDATA[Ithaca^eNY NY]]></publisher-loc>
<publisher-name><![CDATA[Cornell University]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B15">
<label>15</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Velásquez]]></surname>
<given-names><![CDATA[J. Sánchez]]></given-names>
</name>
</person-group>
<source><![CDATA[Introducción al análisis de algoritmos]]></source>
<year>1998</year>
<page-range>ct998</page-range><publisher-name><![CDATA[Trillas]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B16">
<label>16</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Cortés]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
</person-group>
<source><![CDATA[Teoría de la complejidad computacional y teoria de la computabilidad]]></source>
<year>2004</year>
<publisher-loc><![CDATA[Lima ]]></publisher-loc>
</nlm-citation>
</ref>
<ref id="B17">
<label>17</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Dora]]></surname>
<given-names><![CDATA[I.]]></given-names>
</name>
<name>
<surname><![CDATA[León]]></surname>
<given-names><![CDATA[C.]]></given-names>
</name>
<name>
<surname><![CDATA[Rodríguez]]></surname>
<given-names><![CDATA[C.]]></given-names>
</name>
<name>
<surname><![CDATA[Rodríguez]]></surname>
<given-names><![CDATA[G.]]></given-names>
</name>
<name>
<surname><![CDATA[Rojas]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
</person-group>
<source><![CDATA[Complejidad Algorítmica: de la Teoria a la Práctica]]></source>
<year></year>
<publisher-loc><![CDATA[Tenerife^eLa Laguna La Laguna]]></publisher-loc>
</nlm-citation>
</ref>
<ref id="B18">
<label>18</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Amoretti]]></surname>
<given-names><![CDATA[M.]]></given-names>
</name>
<name>
<surname><![CDATA[Zanichelli]]></surname>
<given-names><![CDATA[F.]]></given-names>
</name>
<name>
<surname><![CDATA[Conte]]></surname>
<given-names><![CDATA[G.]]></given-names>
</name>
</person-group>
<source><![CDATA[Performance evaluation of advanced rouning algorithms for unstructured peer-to-peer networks]]></source>
<year></year>
<conf-name><![CDATA[ rocceding of the 1rt International Conference on Performance Evaluation Methodologies and Tools (valuetools '06)]]></conf-name>
<conf-loc>New York NY</conf-loc>
</nlm-citation>
</ref>
<ref id="B19">
<label>19</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Yuan]]></surname>
<given-names><![CDATA[Y.]]></given-names>
</name>
<name>
<surname><![CDATA[Zhiqiang]]></surname>
<given-names><![CDATA[C.]]></given-names>
</name>
<name>
<surname><![CDATA[Hou]]></surname>
<given-names><![CDATA[Z.]]></given-names>
</name>
<name>
<surname><![CDATA[Tan]]></surname>
<given-names><![CDATA[M.]]></given-names>
</name>
</person-group>
<source><![CDATA[Dynamic programming field based environment learning and path planning for mobile robots]]></source>
<year>7-9 </year>
<month>Ju</month>
<day>ly</day>
<conf-name><![CDATA[ Intelligent Control And Automation (WCICA)]]></conf-name>
<conf-date>2010</conf-date>
<conf-loc> </conf-loc>
<page-range>883-887</page-range></nlm-citation>
</ref>
<ref id="B20">
<label>20</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Marbach]]></surname>
<given-names><![CDATA[P.]]></given-names>
</name>
<name>
<surname><![CDATA[Tsitsiklis]]></surname>
<given-names><![CDATA[J. N.]]></given-names>
</name>
</person-group>
<source><![CDATA[A neuro-dynamic programming approach to admission control in ATM networks: the single link case]]></source>
<year>21-2</year>
<month>4 </month>
<day>Ap</day>
<volume>1</volume>
<conf-name><![CDATA[ 1997 IEEE International Conference on]]></conf-name>
<conf-date>1997</conf-date>
<conf-loc> </conf-loc>
<page-range>159-162</page-range></nlm-citation>
</ref>
<ref id="B21">
<label>21</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Singhal]]></surname>
<given-names><![CDATA[P. K.]]></given-names>
</name>
<name>
<surname><![CDATA[Sharma]]></surname>
<given-names><![CDATA[R. N.]]></given-names>
</name>
</person-group>
<source><![CDATA[Dynamic programming approach for solving power generating unit commitment problem]]></source>
<year>15-1</year>
<month>7 </month>
<day>Se</day>
<conf-name><![CDATA[ Computer and Communication Technology /IC-CCT)]]></conf-name>
<conf-date>2011</conf-date>
<conf-loc> </conf-loc>
<page-range>298-303</page-range></nlm-citation>
</ref>
<ref id="B22">
<label>22</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Hu]]></surname>
<given-names><![CDATA[T.]]></given-names>
</name>
<name>
<surname><![CDATA[Wu]]></surname>
<given-names><![CDATA[T.]]></given-names>
</name>
<name>
<surname><![CDATA[Song]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
<name>
<surname><![CDATA[Liu]]></surname>
<given-names><![CDATA[Q.]]></given-names>
</name>
<name>
<surname><![CDATA[Zhang]]></surname>
<given-names><![CDATA[B.]]></given-names>
</name>
</person-group>
<source><![CDATA[A New Tree Structure for Weighted Dynamic Programming Based Stereo Algorithm]]></source>
<year>12-1</year>
<month>5 </month>
<day>Au</day>
<conf-name><![CDATA[ Image and Graphics (ICIG)]]></conf-name>
<conf-date>2011</conf-date>
<conf-loc> </conf-loc>
<page-range>100-105</page-range></nlm-citation>
</ref>
<ref id="B23">
<label>23</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Parra]]></surname>
<given-names><![CDATA[O.J.S.]]></given-names>
</name>
<name>
<surname><![CDATA[Manta]]></surname>
<given-names><![CDATA[C.]]></given-names>
</name>
<name>
<surname><![CDATA[Rubio]]></surname>
<given-names><![CDATA[G. López]]></given-names>
</name>
</person-group>
<source><![CDATA[Dijkstra's Algorithm Model Over MPLS/ GMPLS]]></source>
<year>23-2</year>
<month>5 </month>
<day>Se</day>
<conf-name><![CDATA[ Wireless Communications, Networking and Mobile Computing (WiCOM)]]></conf-name>
<conf-date>2011</conf-date>
<conf-loc> </conf-loc>
<page-range>1-4</page-range></nlm-citation>
</ref>
<ref id="B24">
<label>24</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Tanwir]]></surname>
<given-names><![CDATA[S.]]></given-names>
</name>
<name>
<surname><![CDATA[Battestilli]]></surname>
<given-names><![CDATA[L.]]></given-names>
</name>
<name>
<surname><![CDATA[Perros]]></surname>
<given-names><![CDATA[H.]]></given-names>
</name>
<name>
<surname><![CDATA[Karmous-Edwards]]></surname>
<given-names><![CDATA[G.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Dynamic scheduling of network resources whit advance reservations in optical grids]]></article-title>
<source><![CDATA[Int. J. Netw. Manag]]></source>
<year>Marc</year>
<month>h </month>
<day>20</day>
<volume>18</volume>
<page-range>79-105</page-range></nlm-citation>
</ref>
<ref id="B25">
<label>25</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Hegyi]]></surname>
<given-names><![CDATA[P.]]></given-names>
</name>
<name>
<surname><![CDATA[Maliosz]]></surname>
<given-names><![CDATA[M.]]></given-names>
</name>
<name>
<surname><![CDATA[Ladanyi]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
<name>
<surname><![CDATA[Cinkler]]></surname>
<given-names><![CDATA[T.]]></given-names>
</name>
</person-group>
<source><![CDATA[Shared protection of virtual private networks, 2003. (DRCN 2003), Proceedings]]></source>
<year>19-2</year>
<month>2 </month>
<day>Oc</day>
<page-range>448-454</page-range><publisher-name><![CDATA[Fourth International Workshop]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B26">
<label>26</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Farrel]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
<name>
<surname><![CDATA[Bryskin]]></surname>
<given-names><![CDATA[I.]]></given-names>
</name>
</person-group>
<source><![CDATA[GMPLS: architecture and applications]]></source>
<year>2006</year>
<publisher-loc><![CDATA[San Francisco ]]></publisher-loc>
<publisher-name><![CDATA[Elsevier/Morgan Kaufman]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B27">
<label>27</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Al-Khwildi]]></surname>
<given-names><![CDATA[A.N]]></given-names>
</name>
<name>
<surname><![CDATA[Al-Raweshidy]]></surname>
<given-names><![CDATA[.S.]]></given-names>
</name>
</person-group>
<source><![CDATA[A Proficient Path Selection for Wireless Ad Hoc Routing Protocol]]></source>
<year>20-2</year>
<month>2 </month>
<day>Fe</day>
<volume>1</volume>
<conf-name><![CDATA[ Advanced Communication Technology]]></conf-name>
<conf-date>2006</conf-date>
<conf-loc> </conf-loc>
<page-range>599-604</page-range></nlm-citation>
</ref>
<ref id="B28">
<label>28</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Xiao]]></surname>
<given-names><![CDATA[W.]]></given-names>
</name>
<name>
<surname><![CDATA[Soong]]></surname>
<given-names><![CDATA[B.H.]]></given-names>
</name>
<name>
<surname><![CDATA[Law]]></surname>
<given-names><![CDATA[C.L.]]></given-names>
</name>
<name>
<surname><![CDATA[Guan]]></surname>
<given-names><![CDATA[L.]]></given-names>
</name>
</person-group>
<source><![CDATA[Evaluation of heuristic path selection algorithms for multi-constrained QoS routing]]></source>
<year>21-2</year>
<month>3 </month>
<day>Ma</day>
<volume>1</volume>
<conf-name><![CDATA[ Networking, Sensing and control]]></conf-name>
<conf-date>2004</conf-date>
<conf-loc> </conf-loc>
<page-range>112-116</page-range></nlm-citation>
</ref>
<ref id="B29">
<label>29</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Binh]]></surname>
<given-names><![CDATA[L. N.]]></given-names>
</name>
</person-group>
<source><![CDATA[outing and Wavelength Assignment in GMPLS-based 10 Gb/s Ethernet Long Haul Optical Networks with and without Linear Dispersion Constraints]]></source>
<year>2008</year>
<volume>2</volume>
<page-range>105-206</page-range><publisher-name><![CDATA[I.J. Communications, Networks and System Sciences Published]]></publisher-name>
</nlm-citation>
</ref>
</ref-list>
</back>
</article>
