<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Algoritmia básica (AB) &#187; curiosidades</title>
	<atom:link href="http://webdiis.unizar.es/asignaturas/AB/?cat=26&#038;feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://webdiis.unizar.es/asignaturas/AB</link>
	<description>El reto de diseñar algoritmos eficientes para resolver problemas puede resultar apasionante</description>
	<lastBuildDate>Thu, 10 Feb 2022 08:44:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>Prog. dinámica en entrevistas de trabajo</title>
		<link>http://webdiis.unizar.es/asignaturas/AB/?p=2420</link>
		<comments>http://webdiis.unizar.es/asignaturas/AB/?p=2420#comments</comments>
		<pubDate>Wed, 27 Mar 2019 12:10:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[Empleo]]></category>
		<category><![CDATA[Problemas]]></category>
		<category><![CDATA[programación dinámica]]></category>

		<guid isPermaLink="false">http://webdiis.unizar.es/asignaturas/AB/?p=2420</guid>
		<description><![CDATA[. No es extraño que en entrevistas de trabajo relacionadas con la Computación aparezcan problemas resolubles mediante programación dinámica. Aquí hay algunos de ellos: What are the top 10 most popular dynamic programming problems among interviewers? &#160;]]></description>
			<content:encoded><![CDATA[<p style="text-align: right;"><span style="color: #ffffff;">.</span></p>
<p>No es extraño que en entrevistas de trabajo relacionadas con la Computación aparezcan problemas resolubles mediante programación dinámica.</p>
<p>Aquí hay algunos de ellos:</p>
<blockquote><p><em><a href="https://www.quora.com/What-are-the-top-10-most-popular-dynamic-programming-problems-among-interviewers">What are the top 10 most popular dynamic programming problems among interviewers?</a></em></p></blockquote>
<p>&nbsp;</p>
<p><a rel="attachment wp-att-1924" href="http://webdiis.unizar.es/asignaturas/AB/?attachment_id=1924"><img class="aligncenter size-medium wp-image-1924" title="interview" src="http://webdiis.unizar.es/asignaturas/AB/wp/wp-content/uploads/interview-300x168.jpg" alt="" width="300" height="168" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://webdiis.unizar.es/asignaturas/AB/?feed=rss2&#038;p=2420</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Multiplicación de enteros en O(n log n)</title>
		<link>http://webdiis.unizar.es/asignaturas/AB/?p=2404</link>
		<comments>http://webdiis.unizar.es/asignaturas/AB/?p=2404#comments</comments>
		<pubDate>Wed, 27 Mar 2019 06:56:46 +0000</pubDate>
		<dc:creator>Javier Campos</dc:creator>
				<category><![CDATA[Anuncios]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[multiplicación]]></category>

		<guid isPermaLink="false">http://webdiis.unizar.es/asignaturas/AB/?p=2404</guid>
		<description><![CDATA[A falta de ser revisado y confirmado por otros expertos, se ha publicado en la Web hace pocos días: “Integer multiplication in time O(n log n)”, por David Harvey y Joris Van Der Hoeven. Esto supondría un avance importante en relación con una conjetura realizada en 1971 por Schonhage y Strassen. Por supuesto, el interés [...]]]></description>
			<content:encoded><![CDATA[<p>A falta de ser revisado y confirmado por otros expertos, se ha publicado en la Web hace pocos días:</p>
<p><a href="https://hal.archives-ouvertes.fr/hal-02070778/document">“Integer multiplication in time O(n log n)”</a>,<br />
por David Harvey y Joris Van Der Hoeven.</p>
<p>Esto supondría un avance importante en relación con una conjetura realizada en 1971 por Schonhage y Strassen.</p>
<p>Por supuesto, el interés es teórico (de momento). Es válido para enteros de más de 2<sup>4096</sup> bits.</p>
<p><a href="http://webdiis.unizar.es/asignaturas/AB/?attachment_id=2408"><a rel="attachment wp-att-2412" href="http://webdiis.unizar.es/asignaturas/AB/?attachment_id=2412"><img class="alignnone size-full wp-image-2412" title="Captura" src="http://webdiis.unizar.es/asignaturas/AB/wp/wp-content/uploads/Captura1.jpg" alt="" width="506" height="179" /></a></a></p>
]]></content:encoded>
			<wfw:commentRss>http://webdiis.unizar.es/asignaturas/AB/?feed=rss2&#038;p=2404</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Algoritmo de Karatsuba (y no de Ofman)</title>
		<link>http://webdiis.unizar.es/asignaturas/AB/?p=1479</link>
		<comments>http://webdiis.unizar.es/asignaturas/AB/?p=1479#comments</comments>
		<pubDate>Tue, 14 Mar 2017 09:42:42 +0000</pubDate>
		<dc:creator>Javier Campos</dc:creator>
				<category><![CDATA[cosas de clase]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[divide y vencerás]]></category>
		<category><![CDATA[Historia]]></category>
		<category><![CDATA[multiplicación]]></category>

		<guid isPermaLink="false">http://webdiis.unizar.es/asignaturas/AB/?p=1479</guid>
		<description><![CDATA[. El algoritmo conocido como &#8220;de Karatsuba y Ofman&#8221; para multiplicar enteros de n cifras con un coste asintótico en O(nlog 3)  ( ≈ O(n1,59) )  aparece publicado en el artículo &#8221;Multiplication of multidigit numbers on automata&#8221;, A. Karatsuba, Y. Ofman, en el nº 145, pp. 293-294, de las actas de la Academia de Ciencias de [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: right;"><span style="color: #ffffff;">.</span></p>
<p>El algoritmo conocido como &#8220;de Karatsuba y Ofman&#8221; para multiplicar enteros de <em>n</em> cifras con un coste asintótico en <em>O</em>(<em>n</em><sup>log 3</sup>)  ( ≈ <em>O</em>(<em>n</em><sup>1,59</sup>) )  aparece publicado en el artículo &#8221;Multiplication of multidigit numbers on automata&#8221;, A. Karatsuba, Y. Ofman, en el nº 145, pp. 293-294, de las actas de la Academia de Ciencias de la extinta Unión Soviética (<em>Doklady Akademii Nauk SSSR</em>) en 1962.</p>
<p>Curiosamente, el mencionado artículo no fue escrito por Anatoli Alekséyevich Karatsuba (Grozny, URSS, 31 de enero de 1937 — Moscú, Rusia, 28 de septiembre de 2008) sino que, tal y como relata él mismo en su artículo &#8220;<a href="http://www.ccas.ru/personal/karatsuba/divcen.pdf">The complexity of computations</a>&#8221; (publicado en <em>Proceedings of the Steklov Mathematical Institute</em>, vol. 211, pp. 169-183, 1995, copia local con clave <a href="http://webdiis.unizar.es/asignaturas/AB/restringido/karatsuba1995.pdf">aquí</a>), fue escrito por Kolmogorov, probablemente ayudado por Ofman, y sin el conocimiento de Karatsuba, quien era realmente el autor del algoritmo:</p>
<blockquote><p><em> [...] Later in 1962 Kolmogorov wrote a short article (probably in collaboration with Ofman) and published it in Doklady Akad. Nauk SSSR. The article was entitled: A. Karatsuba and Y. Ofman, &#8220;Multiplication of Multiplace Numbers on Automata&#8221; (Doklady Akad. Nauk SSSR, vol. 145, No. 2, pp. 293-294). I learned about the article only when I was given its reprints.</em></p></blockquote>
<p>En el mismo artículo de 1995, Karatsuba reivindica su autoría:</p>
<blockquote><p><em>In this section I present my algorithm for multiplying numbers. Now it is called the KML algorithm or, briefly, KML (Karatsuba Multiplication).</em></p></blockquote>
<p>&nbsp;</p>
<div id="attachment_1480" class="wp-caption aligncenter" style="width: 230px"><a rel="attachment wp-att-1480" href="http://webdiis.unizar.es/asignaturas/AB/?attachment_id=1480"><img class="size-full wp-image-1480 " title="Anatoli Alekséyevich Karatsuba" src="http://webdiis.unizar.es/asignaturas/AB/wp/wp-content/uploads/A.A.Karatsuba.jpg" alt="" width="220" height="229" /></a><p class="wp-caption-text">Anatoli Alekséyevich Karatsuba</p></div>
<p>&nbsp;</p>
<p>Con posterioridad, se han desarrollado algoritmos asintóticamente más rápidos que el de Karatsuba, como el de Schönhage–Strassen (1971), de coste Θ(<em>n</em> log(<em>n</em>) log(log(<em>n</em>))), o el de Martin Fürer (2007), de coste <em>n</em> log(<em>n</em>) 2<sup>Θ(log<sup>*</sup>(<em>n</em>))</sup>.</p>
]]></content:encoded>
			<wfw:commentRss>http://webdiis.unizar.es/asignaturas/AB/?feed=rss2&#038;p=1479</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Curiosidades sobre el problema del árbol de recubrimiento de coste mínimo</title>
		<link>http://webdiis.unizar.es/asignaturas/AB/?p=2070</link>
		<comments>http://webdiis.unizar.es/asignaturas/AB/?p=2070#comments</comments>
		<pubDate>Tue, 21 Feb 2017 15:28:28 +0000</pubDate>
		<dc:creator>Javier Campos</dc:creator>
				<category><![CDATA[cosas de clase]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[Historia]]></category>
		<category><![CDATA[voraces]]></category>

		<guid isPermaLink="false">http://webdiis.unizar.es/asignaturas/AB/?p=2070</guid>
		<description><![CDATA[. Leer esta anotación: http://webdiis.unizar.es/asignaturas/AB/?p=1009]]></description>
			<content:encoded><![CDATA[<p><span style="color: #ffffff;">.</span></p>
<p>Leer esta anotación: <a href="http://webdiis.unizar.es/asignaturas/AB/?p=1009">http://webdiis.unizar.es/asignaturas/AB/?p=1009</a></p>
]]></content:encoded>
			<wfw:commentRss>http://webdiis.unizar.es/asignaturas/AB/?feed=rss2&#038;p=2070</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Un par de anotaciones sobre el problema del cambio en monedas</title>
		<link>http://webdiis.unizar.es/asignaturas/AB/?p=2057</link>
		<comments>http://webdiis.unizar.es/asignaturas/AB/?p=2057#comments</comments>
		<pubDate>Tue, 14 Feb 2017 14:57:28 +0000</pubDate>
		<dc:creator>Javier Campos</dc:creator>
				<category><![CDATA[cosas de clase]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[monedas]]></category>
		<category><![CDATA[voraces]]></category>

		<guid isPermaLink="false">http://webdiis.unizar.es/asignaturas/AB/?p=2057</guid>
		<description><![CDATA[. Aquí y aquí.]]></description>
			<content:encoded><![CDATA[<p><span style="color: #ffffff;">.</span></p>
<p><a href="http://webdiis.unizar.es/asignaturas/AB/?p=1856">Aquí</a> y <a href="http://webdiis.unizar.es/asignaturas/AB/?p=927">aquí</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://webdiis.unizar.es/asignaturas/AB/?feed=rss2&#038;p=2057</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Progreso de la algoritmia: el caso de la programación lineal</title>
		<link>http://webdiis.unizar.es/asignaturas/AB/?p=1983</link>
		<comments>http://webdiis.unizar.es/asignaturas/AB/?p=1983#comments</comments>
		<pubDate>Wed, 25 May 2016 08:35:03 +0000</pubDate>
		<dc:creator>Javier Campos</dc:creator>
				<category><![CDATA[cosas de clase]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[programación lineal]]></category>
		<category><![CDATA[simplex]]></category>

		<guid isPermaLink="false">http://webdiis.unizar.es/asignaturas/AB/?p=1983</guid>
		<description><![CDATA[. . Los siguientes párrafos están extraídos de este informe de la Oficina Ejecutiva del Presidente de los Estados Unidos: Report to the President and Congress. Designing a digital future: Federally funded research and development in networking and information technology (página 71, diciembre, 2010). Progress in Algorithms Beats Moore’s Law Everyone knows Moore’s Law –a [...]]]></description>
			<content:encoded><![CDATA[<p><span style="color: #ffffff;">.</span></p>
<p><span style="color: #ffffff;">.</span></p>
<p>Los siguientes párrafos están extraídos de este informe de la Oficina Ejecutiva del Presidente de los Estados Unidos: <em><a href="https://www.whitehouse.gov/sites/default/files/microsites/ostp/pcast-nitrd-report-2010.pdf">Report to the President and Congress. Designing a digital future: Federally funded research and development in networking and information technology</a></em> (página 71, diciembre, 2010).</p>
<blockquote><p><em><strong>Progress in Algorithms Beats Moore’s Law</strong></em></p>
<p><em>Everyone knows Moore’s Law –a prediction made in 1965 by Intel co-founder Gordon Moore that the density of transistors in integrated circuits would continue to double every 1 to 2 years.</em></p>
<p><em>Fewer people appreciate the extraordinary innovation that is needed to translate increased transistor density into improved system performance. This effort requires new approaches to integrated circuit design, and new supporting design tools, that allow the design of integrated circuits with hundreds of millions or even billions of transistors, compared to the tens of thousands that were the norm 30 years ago. It requires new processor architectures that take advantage of these transistors, and new system architectures that take advantage of these processors. It requires new approaches for the system software, programming languages, and applications that run on top of this hardware. All of this is the work of computer scientists and computer engineers.</em></p>
<p><em>Even more remarkable –and even less widely understood– is that <strong>in many areas, performance gains due to improvements in algorithms have vastly exceeded even the dramatic performance gains due to increased processor speed</strong>.</em></p>
<p><em>The algorithms that we use today for speech recognition, for natural language translation, for chess playing, for logistics planning, have evolved remarkably in the past decade. It’s difficult to quantify the improvement, though, because it is as much in the realm of quality as of execution time.</em></p>
<p><em>In the field of numerical algorithms, however, the improvement can be quantified. Here is just one example, provided by Professor Martin Grötschel of Konrad-Zuse-Zentrum für Informationstechnik Berlin. Grötschel, an expert in optimization, observes that <strong>a benchmark production planning model solved using linear programming would have taken 82 years to solve in 1988, using the computers and the linear programming algorithms of the day. Fifteen years later –in 2003– this same model could be solved in roughly 1 minute, an improvement by a factor of roughly 43 million. Of this, a factor of roughly 1,000 was due to increased processor speed, whereas a factor of roughly 43,000 was due to improvements in algorithms!</strong> Grötschel also cites an algorithmic improvement of roughly 30,000 for mixed integer programming between 1991 and 2008.</em></p>
<p><em>The design and analysis of algorithms, and the study of the inherent computational complexity of problems, are fundamental subfields of computer science.</em></p></blockquote>
<p style="text-align: center;"><em><a rel="attachment wp-att-1985" href="http://webdiis.unizar.es/asignaturas/AB/?attachment_id=1985"><img class="aligncenter size-full wp-image-1985" title="algorithms_beat_Moore" src="http://webdiis.unizar.es/asignaturas/AB/wp/wp-content/uploads/algorithms_beat_Moore.jpg" alt="" width="400" height="319" /></a><br />
</em></p>
]]></content:encoded>
			<wfw:commentRss>http://webdiis.unizar.es/asignaturas/AB/?feed=rss2&#038;p=1983</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sistema de bicicletas de uso compartido</title>
		<link>http://webdiis.unizar.es/asignaturas/AB/?p=1940</link>
		<comments>http://webdiis.unizar.es/asignaturas/AB/?p=1940#comments</comments>
		<pubDate>Fri, 06 May 2016 11:08:02 +0000</pubDate>
		<dc:creator>Javier Campos</dc:creator>
				<category><![CDATA[cosas de clase]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[ramificación y poda]]></category>

		<guid isPermaLink="false">http://webdiis.unizar.es/asignaturas/AB/?p=1940</guid>
		<description><![CDATA[La semana próxima empezamos con la técnica de ramificación y poda, una estrategia de búsqueda informada especialmente adecuada para problemas de optimización para los que las técnicas anteriores (dividir para vencer, voraz, programación dinámica, u otras) no dan una solución satisfactoria. Un ejemplo reciente de aplicación es el planteado en este artículo, en el que [...]]]></description>
			<content:encoded><![CDATA[<p>La semana próxima empezamos con la técnica de ramificación y poda, una estrategia de búsqueda informada especialmente adecuada para problemas de optimización para los que las técnicas anteriores (dividir para vencer, voraz, programación dinámica, u otras) no dan una solución satisfactoria.</p>
<p>Un ejemplo reciente de aplicación es el planteado en este artículo, en el que se presenta un algoritmo de ramificación y poda para la solución del problema de balance de flota en un sistema de bicicletas de uso compartido:</p>
<blockquote><p><a href="http://www.sciencedirect.com/science/article/pii/S0360835216300183">&#8220;A branch-and-bound algorithm for solving the static rebalancing problem in bicycle-sharing systems&#8221;</a>, por A.A. Kadri, I. Kacem y K. Labadi; en <em>Computers &amp; Industrial Engineering</em>, Vol. 95, May 2016, Pág. 41–52 (el artículo puede verse completo o descargar el PDF de forma gratuita desde la red de Unizar).</p></blockquote>
<p style="text-align: center;">&nbsp;</p>
<div id="attachment_1942" class="wp-caption aligncenter" style="width: 420px"><a rel="attachment wp-att-1942" href="http://webdiis.unizar.es/asignaturas/AB/?attachment_id=1942"><img class="size-full wp-image-1942    " title="Sistema de bicicletas de uso compartido" src="http://webdiis.unizar.es/asignaturas/AB/wp/wp-content/uploads/bicis.jpg" alt="Sistema de bicicletas de uso compartido" width="410" height="274" /></a><p class="wp-caption-text">Sistema de bicicletas de uso compartido (© artículo enlazado arriba)</p></div>
]]></content:encoded>
			<wfw:commentRss>http://webdiis.unizar.es/asignaturas/AB/?feed=rss2&#038;p=1940</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Prog. dinámica en entrevistas de trabajo</title>
		<link>http://webdiis.unizar.es/asignaturas/AB/?p=1922</link>
		<comments>http://webdiis.unizar.es/asignaturas/AB/?p=1922#comments</comments>
		<pubDate>Fri, 29 Apr 2016 10:44:45 +0000</pubDate>
		<dc:creator>Javier Campos</dc:creator>
				<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[Problemas]]></category>
		<category><![CDATA[programación dinámica]]></category>

		<guid isPermaLink="false">http://webdiis.unizar.es/asignaturas/AB/?p=1922</guid>
		<description><![CDATA[. No es extraño que en entrevistas de trabajo relacionadas con la Computación aparezcan problemas resolubles mediante programación dinámica. Aquí hay algunos de ellos: What are the top 10 most popular dynamic programming problems among interviewers?]]></description>
			<content:encoded><![CDATA[<p style="text-align: right;"><span style="color: #ffffff;">.</span></p>
<p>No es extraño que en entrevistas de trabajo relacionadas con la Computación aparezcan problemas resolubles mediante programación dinámica.</p>
<p>Aquí hay algunos de ellos:</p>
<blockquote><p><em><a href="https://www.quora.com/What-are-the-top-10-most-popular-dynamic-programming-problems-among-interviewers">What are the top 10 most popular dynamic programming problems among interviewers?</a></em></p></blockquote>
<p><center><a rel="attachment wp-att-1924" href="http://webdiis.unizar.es/asignaturas/AB/?attachment_id=1924"><img class="aligncenter size-medium wp-image-1924" title="interview" src="http://webdiis.unizar.es/asignaturas/AB/wp/wp-content/uploads/interview-300x168.jpg" alt="" width="300" height="168" /></a></center></p>
]]></content:encoded>
			<wfw:commentRss>http://webdiis.unizar.es/asignaturas/AB/?feed=rss2&#038;p=1922</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cosas de la clase de hoy</title>
		<link>http://webdiis.unizar.es/asignaturas/AB/?p=1874</link>
		<comments>http://webdiis.unizar.es/asignaturas/AB/?p=1874#comments</comments>
		<pubDate>Tue, 08 Mar 2016 15:15:46 +0000</pubDate>
		<dc:creator>Javier Campos</dc:creator>
				<category><![CDATA[cosas de clase]]></category>
		<category><![CDATA[Criptografía]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[divide y vencerás]]></category>
		<category><![CDATA[Historia]]></category>
		<category><![CDATA[multiplicación]]></category>

		<guid isPermaLink="false">http://webdiis.unizar.es/asignaturas/AB/?p=1874</guid>
		<description><![CDATA[. Punteros a cosas (curiosidades) mencionadas hoy en clase: algoritmo de coste lineal para el cálculo del k-ésimo elemento de un vector (y por tanto para el cálculo de la mediana) orígenes del algoritmo de Karatsuba premio Turing de este año su algoritmo (ojo, hay una errata en esa página; cuando en un párrafo de [...]]]></description>
			<content:encoded><![CDATA[<p><span style="color: #ffffff;">.</span></p>
<p>Punteros a cosas (curiosidades) mencionadas hoy en clase:</p>
<ul>
<li><a href="http://webdiis.unizar.es/asignaturas/EDA/?p=1792">algoritmo de coste lineal para el cálculo del <em>k</em>-ésimo elemento de un vector (y por tanto para el cálculo de la mediana)</a></li>
<li><a href="http://webdiis.unizar.es/asignaturas/AB/?p=1479">orígenes del algoritmo de Karatsuba</a></li>
<li><a href="http://www.nytimes.com/2016/03/02/technology/cryptography-pioneers-to-win-turing-award.html">premio Turing de este año</a>
<ul>
<li><a href="http://www.javiercampos.es/blog/2011/07/22/el-algoritmo-de-diffie-hellman/">su algoritmo</a> (ojo, hay una errata en esa página; cuando en un párrafo de la parte final habla del &#8220;problema del algoritmo discreto&#8221;, debería decir el &#8220;problema del logaritmo discreto&#8221;)</li>
</ul>
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://webdiis.unizar.es/asignaturas/AB/?feed=rss2&#038;p=1874</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linear programming in polynomial time</title>
		<link>http://webdiis.unizar.es/asignaturas/AB/?p=1793</link>
		<comments>http://webdiis.unizar.es/asignaturas/AB/?p=1793#comments</comments>
		<pubDate>Tue, 26 May 2015 14:32:08 +0000</pubDate>
		<dc:creator>Javier Campos</dc:creator>
				<category><![CDATA[cosas de clase]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[Historia]]></category>
		<category><![CDATA[programación lineal]]></category>

		<guid isPermaLink="false">http://webdiis.unizar.es/asignaturas/AB/?p=1793</guid>
		<description><![CDATA[&#160; &#8220;Simplex is not a polynomial time algorithm. Certain rare kinds of linear programs cause it to go from one corner of the feasible region to a better corner and then to a still better one, and so on for an exponential number of steps. For a long time, linear programming was considered a paradox, [...]]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<p><em>&#8220;Simplex</em> is not a polynomial time algorithm. Certain rare kinds of linear programs cause it to go from one corner of the feasible region to a better corner and then to a still better one, and so on for an exponential number of steps. For a long time, linear programming was considered a paradox, a problem that can be solved in practice, but not in theory!</p>
<p>Then, in 1979, a young Soviet mathematician called Leonid Khachiyan came up with the <em>ellipsoid algorithm</em>, one that is very different from simplex, extremely simple in its conception (but sophisticated in its proof) and yet one that solves any linear program in polynomial time. Instead of chasing the solution from one corner of the polyhedron to the next, Khachiyan&#8217;s algorithm confines it to smaller and smaller ellipsoids (skewed highdimensional balls). When this algorithm was announced, it became a kind of &quot;mathematical Sputnik&quot;, a splashy achievement that had the U.S. establishment worried, in the height of the Cold War, about the possible scientific superiority of the Soviet Union. The ellipsoid algorithm turned out to be an important theoretical advance, but did not compete well with simplex in practice. The paradox of linear programming deepened: A problem with two algorithms, one that is efficient in theory, and one that is efficient in practice!</p>
<p>A few years later Narendra Karmarkar, a graduate student at University of California, Berkeley, came up with a completely different idea, which led to another provably polynomial algorithm for linear programming. Karmarkar&#8217;s algorithm is known as <em>the interior point method</em>, because it does just that: it dashes to the optimum corner not by hopping from corner to corner on the surface of the polyhedron like simplex does, but by cutting a clever path in the interior of the polyhedron. And it does perform well in practice.</p>
<p>But perhaps the greatest advance in linear programming algorithms was not Khachiyan&#8217;s theoretical break through or Karmarkar&#8217;s novel approach, but an unexpected consequence of the latter: the fierce competition between the two approaches, simplex and interior point, resulted in the development of very fast code for linear programming.&#8221;</p>
<p>(<strong>Credit:</strong> S. Dasgupta, C. H. Papadimitriou, and U. V. Vazirani, <em>Algorithms</em>, McGraw-Hill, 2008.)</p>
]]></content:encoded>
			<wfw:commentRss>http://webdiis.unizar.es/asignaturas/AB/?feed=rss2&#038;p=1793</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
