<?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>Actualidad &#187; Ingenieria Industrial Online</title>
	<atom:link href="https://ingenieriaindustrialonline.com/actualidad/feed/" rel="self" type="application/rss+xml" />
	<link>https://ingenieriaindustrialonline.com/actualidad/</link>
	<description>ingenieriaindustriaonline.com</description>
	<lastBuildDate>Tue, 10 Jan 2023 23:27:11 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.3</generator>

<image>
	<url>https://ingenieriaindustrialonline.com/wp-content/uploads/2019/06/cropped-faVicon-32x32.png</url>
	<title>Actualidad &#187; Ingenieria Industrial Online</title>
	<link>https://ingenieriaindustrialonline.com/actualidad/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>¿Qué procesos pueden ser digitalizados en tu empresa en 2022?</title>
		<link>https://ingenieriaindustrialonline.com/actualidad/que-procesos-pueden-ser-digitalizados-en-tu-empresa-en-2022/</link>
					<comments>https://ingenieriaindustrialonline.com/actualidad/que-procesos-pueden-ser-digitalizados-en-tu-empresa-en-2022/#respond</comments>
		
		<dc:creator><![CDATA[Beatriz Ariza Rossy]]></dc:creator>
		<pubDate>Tue, 06 Sep 2022 00:17:24 +0000</pubDate>
				<category><![CDATA[Actualidad]]></category>
		<category><![CDATA[Digitalización]]></category>
		<category><![CDATA[Facturación]]></category>
		<category><![CDATA[Inventarios]]></category>
		<category><![CDATA[Tendencias]]></category>
		<category><![CDATA[Transformación digital]]></category>
		<guid isPermaLink="false">https://ingenieriaindustrialonline.com/?p=31788</guid>

					<description><![CDATA[<p>La transformación digital se acelera y es más que una moda: se vuelve imprescindible en un mundo cada vez más global. Apoyarse en la tecnología es esencial para poder ser competitivos en entornos VUCA como los que tenemos hoy en día. El problema es que puede ser abrumador escoger entre tantas herramientas disponibles. ¿Qué procesos &#8230;</p>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/actualidad/que-procesos-pueden-ser-digitalizados-en-tu-empresa-en-2022/">¿Qué procesos pueden ser digitalizados en tu empresa en 2022?</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><span>La transformación digital se acelera y es más que una moda: se vuelve imprescindible en un mundo cada vez más global. Apoyarse en la tecnología es esencial para poder ser competitivos en <a href="https://ingenieriaindustrialonline.com/columnas/mundo-vuca-empresa-vuca/"><strong>entornos VUCA</strong></a> como los que tenemos hoy en día. El problema es que puede ser abrumador escoger entre tantas herramientas disponibles. ¿Qué procesos se pueden digitalizar y cuáles vale la pena priorizar? Veamos aspectos clave que se pueden automatizar en el día a día profesional.</span></p>
<h2><span>¿Qué procesos de la empresa se pueden digitalizar?</span></h2>
<p><span>Imagina todo lo que puede mejorar en tu negocio si consigues delegar en la tecnología. Esto es lo que te permite la digitalización: más tiempo, menos costes y en general más satisfacción para la empresa y los clientes. </span></p>
<p><span> </span><span>Digitalizar significa:</span></p>
<p><span> 
		<div class="thumbup tie-list-shortcode"></span></p>
<ul>
<li><span>Trabajar con más agilidad</span></li>
<li><span> </span><span>Reducir procesos</span></li>
<li><span> </span><span>Abaratar costes</span></li>
<li><span> </span><span>Aprovechar más los recursos</span></li>
<li><span> </span><span>Aumentar el potencial de alcance del mercado</span></li>
<li><span> </span><span>Necesitar menos espacio para la empresa</span></li>
<li><span> </span><span>Reducir la huella ambiental</span></li>
<li><span> </span><span>Mejorar la atención al cliente</span></li>
<li><span> </span><span>Ahorrarse muchas reuniones innecesarias</span></li>
</ul>
<p><span>
		</div>
	</span></p>
<p><span>Estas son algunas de las muchas ventajas que se pueden conseguir con la transformación digital de la empresa. Hay que tener en cuenta que esto no se produce de un día para otro, sino que se trata de un proceso.</span></p>
<p><span>Veamos a continuación algunos de los cambios que se pueden realizar para avanzar hacia un negocio más digitalizado. En última instancia, se trata de conseguir una mayor eficiencia global de la empresa.</span></p>
<h3>1. Facturación</h3>
<p><span><a href="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/09/INVOICING_1.svg"><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/09/INVOICING_1.svg" alt="" width="360" height="330" class="wp-image-31789 alignright" /></a>Acaba con tanto papeleo y di adiós a las prisas de última hora recopilando facturas en papel para presentar el IVA trimestral. Hoy en día incluso los <strong><a href="https://www.holded.com/es/blog/los-mejores-programas-de-facturacion">mejores programas para hacer facturas</a></strong> son asequibles para pequeñas y medianas empresas. Permiten automatizar una gran cantidad de tareas, haciendo el trabajo más fácil, eficiente y cómodo.</span></p>
<p><span>Con un programa tipo ERP puedes realizar muchas acciones de manera más productiva:</span><span> </span></p>

		<div class="checklist tie-list-shortcode">
<ul>
<li><span> </span><span>Conciliación bancaria</span></li>
<li><span> </span><span>Generación de presupuestos y facturas</span></li>
<li><span> </span><span>Asientos automáticos en el Libro Diario</span></li>
<li><span> </span><span>Gestión de trazabilidad</span></li>
<li><span> </span><span>Cálculo de impuestos</span></li>
<li><span> </span><span>Cobro más ágil</span></li>
<li><span> </span><span>Creación de remesas</span></li>
<li><span> </span><span>Emails personalizados</span></li>
</ul>

		</div>
	
<p><span>Además, la ventaja de un buen programa de este tipo es que puedes acceder desde cualquier lugar. Este punto es importante a la hora de elegir el software adecuado. Ten en cuenta que ganarás en eficiencia, accesibilidad, coordinación y comodidad si puedes entrar desde casa o la oficina, incluso con tu smartphone.</span></p>
<h3>2. Gestión de clientes</h3>
<p><span>Otro de los procesos que pueden ser digitalizados en tu empresa es el manejo de clientes. Piensa en todo el tiempo que se va hoy en día en cualquier clase de asistencia, seguimiento, comunicación y gestión de este tipo. Un CRM es la solución ideal para mejorar este tipo de procesos.</span></p>
<p><span>Estas son algunas de las actividades habituales que te permite un programa así:</span><span> </span></p>

		<div class="checklist tie-list-shortcode">
<ul>
<li><span> </span><span>Revisión de información de contactos</span></li>
<li><span> </span><span>Acceso rápido a documentación de clientes</span></li>
<li><span> </span><span>Calendario de visitas o reuniones</span></li>
<li><span> </span><span>Gestión de reservas</span></li>
<li><span> </span><span>Portal para acceso de clientes</span></li>
<li><span> </span><span>Análisis y detección de oportunidades de venta</span></li>
</ul>

		</div>
	
<h3>3. Control de inventario</h3>
<p><span>Si tu empresa cuenta con productos físicos a la venta, por ejemplo, sin importar si se trata de un e-commerce o de un retail, puedes llevar el control del stock con un programa. Estas son algunas de las tareas que se pueden delegar en la tecnología:</span></p>
<p><span> 
		<div class="checklist tie-list-shortcode"></span></p>
<ul>
<li><span> </span><span>Control de entradas y salidas de mercancía</span></li>
<li><span> </span><span>Visión global del estado de los pedidos</span></li>
<li><span> </span><span>Asignación de alarmas ante poco stock</span></li>
<li><span> </span><span>Integración con soluciones de ecommerce</span></li>
<li><span> </span><span>Vinculación con la contabilidad digital de costes</span></li>
<li><span> </span><span>Acceso y seguimiento de almacén y envíos</span></li>
</ul>
<p><span> 
		</div>
	</span></p>
<p>Una de las decisiones más importantes de la gestión de las operaciones consiste en la reposición de cada item en cada punto de la cadena. En la actualidad existen herramientas digitales simples y a su vez robustas que permiten automatizar las decisiones de reposición de inventario, tal es el caso de <a href="https://goldfish.cl/fillrate100-details/"><strong>FillRate 100</strong></a>.</p>
<p>Este tipo de herramientas se centra en la reudcción de inventarios y agotados. Con esto, se consigue mejor reputación de marca y más fidelización de clientes. Por lo tanto, a la hora de escoger procesos para digitalizar, una gestión automatizada del inventario debería ser prioridad. A fin de cuentas, si hay más clientes fieles, la empresa podrá resistir más, en un contexto económico tan desafiante como el actual.</p>
<h3>4. Coordinación de equipos</h3>
<p><span>Las reuniones son ladrones del tiempo muy habituales dentro de las empresas. A veces se producen más de las necesarias o duran demasiado. Un programa de gestión de proyectos y equipos es perfecto para reducir esto.</span></p>
<p><span>Trello o Slack son dos ejemplos distintos, pero igualmente útiles para poder coordinarse con más facilidad. Por ejemplo, si creas varios tableros con distintos proyectos y tareas en Trello, puedes asignar roles, enviar recordatorios y mucho más. Esto supone un importante ahorro de emails, llamadas y encuentros.</span><span> </span></p>
<p><span>Una vez dicho esto, cierto número de reuniones es necesario en las empresas. No solo sirven para avanzar en el trabajo, sino también como elemento cohesionador. Digitalizar las reuniones con Zoom, Microsoft Teams o alguna otra herramienta puede ser muy positivo para mejorar la productividad.</span></p>
<p>La coordinación de equipos trasciende de las herramientas digitales colaborativas; integrar diversas áreas de la empresa es fundamental, tal es el caso de ventas y producción, y los distintos eslabones de las operaciones. Con herramientas como <a href="https://goldfish.cl/otif100-details/"><strong>OTIF100</strong></a>, esto es posible.</p>
<h3>5. Marketing y ventas</h3>
<p><span>Hoy en día los clientes de cualquier negocio se mueven por el mundo digital. Esto significa que, si la empresa se mueve en los canales correctos, puede llegar a su audiencia con eficacia.</span></p>
<p><span>Digitalizar a nivel de marketing y ventas no significa solamente estar presente en LinkedIn publicando alguna foto en un Congreso. Se requiere una estrategia específica para conseguir visibilidad y aumentar las ventas. Por ello deben entrar estos departamentos y ocuparse de ello.</span></p>
<p><span>Además, se puede aprovechar también la digitalización para los propios procesos de gestión. Hay muchas tareas del día a día de las empresas vinculadas a marketing o a ventas que se pueden automatizar.</span></p>
<p><span> 
		<div class="checklist tie-list-shortcode"></span></p>
<ul>
<li><span> </span><span>Programar posts en redes</span></li>
<li><span> </span><span>Generar informes de resultados</span></li>
<li><span> </span><span>Revisar y optimizar el embudo</span></li>
<li><span> </span><span>Hacer seguimiento de prospectos</span></li>
<li><span> </span><span>Fidelizar clientes</span></li>
<li><span> </span><span>Atender incidencias o dudas</span></li>
<li><span> </span><span>Concertar citas</span></li>
<li><span> </span><span>Enviar presupuestos</span></li>
</ul>
<p><span> 
		</div>
	</span></p>
<p><span>Estas son algunas de las muchas acciones digitalizables para vender más y con mayor eficiencia.</span></p>
<h2><span>¿Por dónde empezar a digitalizar?</span></h2>
<p>Digitalización no es transformación digital, la transformación requiere de enfoque, de remosión de restricciones de los procesos, de un cambio enla forma de hacer las cosas. <span>No todas las empresas están en la misma fase: algunas necesitan empezar a digitalizar lo más básico. En cambio, hay otras que llevan tiempo usando programas de software, y sin embargo, tienen nuevos retos. Sea cual sea tu caso, estos son algunos puntos clave para que decidas tus próximos pasos:</span></p>
<p><span>
		<div class="lightbulb tie-list-shortcode"></span></p>
<ul>
<li><span> </span><span>Analiza dónde se te va más tiempo</span></li>
<li><span> </span><span>Pregunta al personal qué dificultades tienen</span></li>
<li><span> </span><span>Evalúa las opciones del mercado</span></li>
</ul>
<p><span> 
		</div>
	</span></p>
<p><span>Vale la pena dar el salto para aprovechar los beneficios que supone la digitalización. Con todo, se debe mantener siempre un tiempo prudencial de adaptación, contando que todo cambio pasa por una curva de aprendizaje. Pasada dicha fase inicial, cualquier inversión en digitalización del negocio tiene un gran retorno.</span><span> </span></p>
<p><span>Además, ten en cuenta que algunos programas de este tipo se pueden integrar con otras soluciones. Si te apoyas en un software integral que te permita una visión global interdepartamental, ganarás en eficiencia. Por lo tanto, puedes elegir una herramienta tipo ERP (Enterprise Resource Planning), que suelen incluir diversos módulos que cubren estas y otras necesidades del negocio.</span></p>
<p><span>Los ERP tienen la gran ventaja de permitir una integración total de la información, que queda unificada y no se duplica. Además, ayudan a más coordinación entre distintos procesos del negocio, evitando comunicaciones internas innecesarias. Se ahorra en trabajos duplicados y se consigue más coordinación interna. Por lo tanto, en resumidas cuentas, se aumenta el desempeño, y así la rentabilidad del negocio en su conjunto.</span></p>
<h2><span>Conclusión</span><span> </span></h2>
<p><span>Como ves, la gran mayoría de procesos de las empresas se pueden digitalizar a día de hoy, al menos una parte de ellos. Todavía sigue siendo crucial cierto grado de presencialidad y de factor humano, pero la ingeniería informática avanza a toda velocidad.</span></p>
<p><span>Vale la pena aprovechar todo lo que nos ofrece, y además, esto pasa a ser crítico en un escenario tan retador como el actual.</span><span> </span></p>
<p><span>Estos son los principales procesos que se pueden digitalizar a día de hoy:</span><span> </span></p>

		<div class="checklist tie-list-shortcode">
<ul>
<li><span> </span><span>Facturación, contabilidad y todo lo relativo a finanzas e impuestos</span></li>
<li><span> </span><span>Gestión de clientes, proveedores y contactos en general</span></li>
<li><span> </span><span>Control de stock si la empresa comercializa productos físicos</span></li>
<li><span> </span><span>Coordinación de equipos a nivel presencial y con modelos híbridos</span></li>
<li><span> </span><span>Marketing y ventas</span></li>
</ul>

		</div>
	
<p><span>Ahora ya sabes por dónde empezar o continuar tu transformación digital de la empresa. Dar el salto vale la pena, y podrás ir notando sus beneficios muy pronto.</span></p>
<p><span>Vale la pena superar las resistencias al cambio, y recordar lo que ya dijo Arquímedes: <em>‘Dadme un punto de apoyo y moveré el mundo’</em>. Los avances digitales de hoy nos abren paso a muchas posibilidades que antes eran impensables. Si les sabes sacar partido, podrás hacer más con menos.</span><span> </span></p>
<p><span>¡Mucho éxito y que consigas impulsar tus resultados gracias a la transformación digital de tu empresa!</span></p>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/actualidad/que-procesos-pueden-ser-digitalizados-en-tu-empresa-en-2022/">¿Qué procesos pueden ser digitalizados en tu empresa en 2022?</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ingenieriaindustrialonline.com/actualidad/que-procesos-pueden-ser-digitalizados-en-tu-empresa-en-2022/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Teoría de Restricciones (TOC) en Repuestos Automotores</title>
		<link>https://ingenieriaindustrialonline.com/teoria-de-restricciones-toc/teoria-de-restricciones-toc-en-repuestos-automotores/</link>
					<comments>https://ingenieriaindustrialonline.com/teoria-de-restricciones-toc/teoria-de-restricciones-toc-en-repuestos-automotores/#respond</comments>
		
		<dc:creator><![CDATA[Goldratt Consulting]]></dc:creator>
		<pubDate>Mon, 09 May 2022 16:33:21 +0000</pubDate>
				<category><![CDATA[Actualidad]]></category>
		<category><![CDATA[Casos de éxito]]></category>
		<category><![CDATA[Columnas]]></category>
		<category><![CDATA[Teoría de restricciones (TOC)]]></category>
		<category><![CDATA[Ahorro de costos]]></category>
		<category><![CDATA[Industria Automotriz]]></category>
		<category><![CDATA[Industria de repuestos]]></category>
		<category><![CDATA[Inventario de repuestos]]></category>
		<category><![CDATA[OEM]]></category>
		<category><![CDATA[Teoría de Restricciones]]></category>
		<guid isPermaLink="false">https://ingenieriaindustrialonline.com/?p=30459</guid>

					<description><![CDATA[<p>Por: Visweswaran Sundararaman y Akshat Agrawal Traducción Libre de Javier Arévalo &#8211; Goldratt Consulting Partner Latin America 1. Descripción general de la industria de componentes automotrices Si bien actualmente India es el sexto productor de automóviles más grande del mundo, después de China, EE. UU., Japón, Alemania y Corea del Sur; gracias a la sólida &#8230;</p>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/teoria-de-restricciones-toc/teoria-de-restricciones-toc-en-repuestos-automotores/">Teoría de Restricciones (TOC) en Repuestos Automotores</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Por: <em>Visweswaran Sundararaman y Akshat Agrawal</em></p>
<p>Traducción Libre de <em>Javier Arévalo</em> &#8211; Goldratt Consulting Partner Latin America</p>
<h3>1. Descripción general de la industria de componentes automotrices</h3>

		<div id="1-descripcion-general-de-la-industria-de-componentes-automotrices" data-title="1. Descripción general de la industria de componentes automotrices" class="index-title"></div>
	
<p>Si bien actualmente India es el sexto productor de automóviles más grande del mundo, después de China, EE. UU., Japón, Alemania y Corea del Sur; gracias a la sólida demanda y el apoyo de la política gubernamental al movimiento &#8216;<em>Make in India</em>&#8216;, se espera que se convierta en el tercero más grande hacia el 2026 👍. La industria de componentes de automóviles representa el 2,3 % del PIB de la India y el 25 % de su PIB manufacturero, lo que proporciona empleo a 5 millones de personas. <em>(Fundación India de Equidad de Marca).</em></p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/OEM1.png" alt="OEM India" width="511" height="361" class="size-full wp-image-30460 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/OEM1.png 511w, https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/OEM1-300x212.png 300w" sizes="(max-width: 511px) 100vw, 511px" /></p>
<p>Hasta el momento, la industria de componentes automotrices registró una tasa compuesta anual del 6 %, alcanzando los 49300 millones de dólares estadounidenses en el año fiscal 2020, y las exportaciones crecieron a una tasa compuesta anual del 7,6% para alcanzar los 14500 millones de dólares estadounidenses en el año fiscal 2020. Impulsada por la fabricación amigable con el medio ambiente, la industria tiene como objetivo lograr US $ 200 mil millones en ingresos para 2026 con exportaciones que alcanzan los US $ 80 mil millones.</p>
<p>El suministro de componentes para automóviles a OEM contribuye con el 56% de la facturación total y las ventas de posventa y exportaciones contribuyen con el 25% y el 20%, respectivamente. La facturación del mercado de repuestos aumentó a una tasa compuesta anual del 9,57%, de 6800 millones de USD en el ejercicio de 2016 a 9800 millones de USD en el ejercicio de 2020, y se espera que alcance los 32000 millones de USD en 2026. <em>(Asociación de fabricación de componentes automotrices)</em>.</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/OEM2.png" alt="OEM India" width="495" height="390" class="size-full wp-image-30461 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/OEM2.png 495w, https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/OEM2-300x236.png 300w" sizes="(max-width: 495px) 100vw, 495px" /></p>
<p>Además, una mirada rápida a la participación del producto en la facturación del mercado de repuestos arroja luz sobre los 4 grupos de productos (1. DTS-Transmisión, Dirección 2. Motor 3. E&amp;E – Eléctrico &amp; Electrónicos 4. Sistemas de refrigeración) que ocupan la mayor parte (&gt; 70%), lo que significa que las industrias de componentes operan en el segmento de productos anterior, tiene una &#8216;<em>olla de oro</em>&#8216; esperando que la agarren👍. <em>(Fuente: Asociación de Fabricación de Componentes Automotrices).</em></p>
<p>Pero la pregunta es, ¿están los jugadores de esta industria listos para aprovechar este potencial del mercado de repuestos (u &#8216;olla de oro&#8217;) que se les presenta 🤔? <em><strong>¡¡¡Ven, vamos a sumergirnos más profundo!!!</strong></em></p>
<p>&nbsp;</p>
<blockquote class=" quote-simple "></blockquote>
<h3>2. Características únicas de esta industria</h3>

		<div id="2-caracteristicas-unicas-de-esta-industria" data-title="2. Características únicas de esta industria" class="index-title"></div>
	
<p>Mientras se bucea profundamente, uno debe ser consciente de las características/percepciones únicas con referencia a este sector.</p>

		<div class="checklist tie-list-shortcode">
<ul>
<li>Larga cadena de suministro que incluye:
<ul>
<li>Proveedor de nivel 2 -&gt; Proveedor de nivel 1 -&gt; OEM -&gt; Distribuidor/concesionario/mayorista -&gt; Minorista -&gt; Mecánico -&gt; Consumidor.</li>
</ul>
</li>
<li>Excepto el consumidor, todos persiguen sus respectivos objetivos mensuales 😔.</li>
<li>El movimiento de existencias de una entidad a la siguiente entidad se registra como «ventas», mientras que la ironía es que la venta real ocurre SOLO cuando el consumidor compra en el punto de venta 🤫 (descrito por Goldratt desde finales de los 80’s).</li>
<li>A diferencia de los bienes de consumo masivo, es difícil influir en la venta de componentes de automóviles, ya que una parte significativa de la venta se debe a piezas defectuosas que necesitan reemplazo.</li>
<li>La falla de las piezas puede causar daños mayores, lo que afecta la utilización del vehículo.</li>
<li>Por lo tanto, la disponibilidad de piezas en los puntos de venta minorista no solo es muy crítica (ya que los consumidores muestran un tiempo de tolerancia cercano a cero), sino que también afecta el potencial de ventas futuras de OE (el servicio posventa es un factor importante).</li>
<li>No es posible predecir todas las fallas posibles, por lo que es difícil predecir la demanda de componentes para automóviles (qué/dónde/cuándo).</li>
<li>La única forma posible de que las empresas reaccionen ante una demanda tan impredecible es a través de la “previsión”.</li>
<li>Existe una fuerte creencia de que el pronóstico les permite «<em>empujar las existencias</em>» más cerca del punto de venta.</li>
<li>La coexistencia de disponibilidad y falta de disponibilidad en la red no es un fenómeno extraño en absoluto.
<ul>
<li>Las mismas piezas están disponibles en una ubicación, mientras que pueden no estar disponibles en otras ubicaciones.</li>
<li>En la misma ubicación, las piezas están disponibles en algún momento y no están disponibles en otro momento.</li>
</ul>
</li>
<li>Factores que incluyen el envejecimiento de las existencias, la intrusión (¿o invasión?) del territorio, la disponibilidad limitada de capital de trabajo, el espacio, etc. induce una inconsistencia en el comportamiento de precios en los puntos de venta.</li>
<li>Este mercado es el mejor ejemplo de un Océano Rojo, donde la competencia es feroz (precio) y el consumidor está confundido (sobre la calidad del producto).</li>
<li>Puede ser impactante para los OEM que el universo de la competencia esté más allá de su conocimiento 😜:
<ol>
<li>De piezas OEM con marca y precio &#8216;OEM&#8217;</li>
<li>De los proveedores que suministran a los OEM también compiten con los OEM en los mercados de posventa
<ul>
<li>Aunque los productos son iguales dentro de la caja, la marca (¿o el empaque?) es diferente (secreto conocido).</li>
</ul>
</li>
<li>De los fabricantes que fabrican productos similares pero no suministran a OEM (marca conocida con calidad comparable).</li>
<li>De los fabricantes que fabrican productos más baratos (marca desconocida con calidad comprometida)</li>
<li>De los fabricantes que producen componentes y suministros con embalaje OEM (falso)</li>
<li>De las partes de piezas desmanteladas de modelos más antiguos (en condiciones de trabajo).</li>
</ol>
</li>
<li>Si bien la demanda de piezas de repuesto es directamente proporcional a la antigüedad del modelo original &#8211; OE (mayor tasa de fallas), mientras que la edad del modelo original &#8211; OE es inversamente proporcional a la reproducción de piezas de repuesto (debido a la disponibilidad de herramientas/plantillas/accesorios/cantidad de lotes, etc.).</li>
</ul>

		</div>
	
<p>&nbsp;</p>
<h3>4. Desafíos de la industria</h3>

		<div id="4-desafios-de-la-industria" data-title="4. Desafíos de la industria" class="index-title"></div>
	
<p>Cuando se considera que el <strong>pronóstico </strong>es la única forma posible de hacer frente a la demanda y la oferta impredecibles del mercado de accesorios, el mecanismo de transmisión de la señal de previsión, aguas arriba se traduce en programas mensuales de producción para los proveedores de nivel 1 y nivel 2.</p>
<p>Sin embargo, la producción real varía significativamente de los cronogramas planificados, gracias a varias consideraciones de procesamiento por lotes/disponibilidad de recursos (hombres | máquinas | materiales) / cambio de cronogramas (el consumo real podría ser diferente del plan pronosticado) / cambio de prioridades (OE vs. repuestos vs. .VOR) …etc.</p>
<p>Esta distorsión conduce a la <strong>producción de algunos artículos por encima de la demanda real </strong>, mientras que <strong>algunos artículos se producen por debajo de la demanda real </strong>. Y esta distorsión crece más y más a medida que avanza río abajo (gracias al <strong>efecto multiplicador </strong>generado por la coexistencia de dos hechos de la vida: -1. variación y 2. entidades dependientes).</p>
<p>Si bien los artículos que se produjeron más que la demanda real, plantea desafíos que incluyen entre otros, <strong>más espacio / más capital / pérdida </strong>de capacidad (capacidad utilizada en la producción de artículos que no se necesitan en el horizonte inmediato) / <strong>pérdida de materiales </strong>(componentes utilizados en la producción de artículos que no se necesitan en el horizonte inmediato). Por otro lado, cuando la producción es menor que la demanda real, se presentan conjuntos de desafíos completamente diferentes, que incluyen <strong>la falta de disponibilidad de piezas, tasas de cumplimiento deficientes, retrasos en los pedidos, </strong>etc.</p>
<p>Si bien estos desafíos pueden continuar, la realidad es que los gerentes deben cumplir con los objetivos mensuales de los parámetros operativos (eficiencia, inventario, tasa de servicio y entregas, etc.) y los parámetros comerciales (ventas primarias, capital de trabajo, cobranza, etc.). No es de extrañar que se observe el &#8216;<strong>patrón de comportamiento sinusoidal </strong>&#8216; de este sistema&#8230;, lo que significa que la mayoría de estas métricas se &#8216;gestionan para cumplirse 😜&#8217; en la segunda mitad del mes (¿o la última semana/día?) en forma de un sesgo de producción/ sesgo de despacho / a lo largo del tiempo / pagos de incentivos, mientras que la primera mitad del mes suele ser un asunto de bajo perfil 🥲.</p>
<p>Esta &#8216;<em><strong>distorsión entre la demanda pronosticada frente a la demanda real del mercado</strong></em>&#8216; se amplifica aún más 😱debido al &#8216;comportamiento sinusoidal del sistema&#8217; anteriormente descrito (¿&#8217;comportamiento forzado&#8217;, gracias a los objetivos mensuales?). Los socios de canal, incluidos los distribuidores / minoristas, reciben la mayor parte de este efecto, en forma de escasez de algunos artículos y excedentes de otros, de forma perpetua.</p>
<p>Con la limitación de la capacidad de los socios de canal para influir en el sistema productivo aguas arriba y la limitación de su capital de trabajo, los obliga a tomar medidas autorrestrictivas que incluyen la cantidad de minoristas para atender, la gama de piezas para tener disponibles, los descuentos forzosos (volumen o antigüedad de las existencias), promoción / influir en las ventas, frecuencia de servicio a los minoristas…. etc., lo que lleva a una reducción significativa en el alcance del mercado del propietario de la marca y en el rango de sus clientes.</p>
<p>La reducción en alcance y rango tiene un impacto negativo directo en las ventas de repuestos y, por lo tanto, presiona a los propietarios de marcas para que improvisen la planificación, lo que significa un mejor pronóstico para el próximo período, es decir, ¡volver al punto de <em>partida</em> 😔!</p>
<p>Esto pone a las empresas que operan en el mercado de repuestos, en la siguiente espiral mortal:</p>
<figure id="attachment_30463" aria-describedby="caption-attachment-30463" style="width: 792px" class="wp-caption aligncenter"><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/mercado-de-reposicion-automotor-1.png" alt="mercado de reposición automotor (1)" width="792" height="538" class="wp-image-30463 size-full" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/mercado-de-reposicion-automotor-1.png 792w, https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/mercado-de-reposicion-automotor-1-300x204.png 300w, https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/mercado-de-reposicion-automotor-1-768x522.png 768w, https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/mercado-de-reposicion-automotor-1-220x150.png 220w" sizes="(max-width: 792px) 100vw, 792px" /><figcaption id="caption-attachment-30463" class="wp-caption-text">Mercado de reposición automotor (Relaciones causales)</figcaption></figure>
<p>Cuando profundizamos🧐en el marco de pensamiento de la <a href="https://ingenieriaindustrialonline.com/teoria-de-restricciones-toc/que-es-teoria-de-restricciones-toc/"><strong>Teoría de Restricciones (TOC)</strong></a>, comprendimos <strong>qué es lo que mantiene </strong>(conflicto no resuelto) a estas empresas de repuestos de automóviles en una espiral superior para siempre.</p>
<p>&nbsp;</p>
<h3>5. Un conflicto sin resolver</h3>

		<div id="5-un-conflicto-sin-resolver" data-title="5. Un conflicto sin resolver" class="index-title"></div>
	
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/conflicto-repuestos.png" alt="conflicto repuestos" width="611" height="501" class="size-full wp-image-30464 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/conflicto-repuestos.png 611w, https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/conflicto-repuestos-300x246.png 300w" sizes="(max-width: 611px) 100vw, 611px" /></p>
<p>Las dos <strong>condiciones necesarias </strong>✌🏻para cumplir el objetivo común de la mayoría de estas empresas de autopartes son.</p>

		<div class="checklist tie-list-shortcode">
<ul>
<li><strong>Control de los costos</strong>.</li>
<li><strong>Proteger la disponibilidad de sus productos</strong>.</li>
</ul>

		</div>
	
<p>Pero, sorprendentemente, las acciones para cumplir con estas condiciones necesarias respectivas están en <strong>conflicto directo</strong> 👊 entre sí (como se describe en el diagrama lógico anterior, referido como nube de conflicto, una de las herramientas lógicas de la aplicación de los procesos de pensamiento de Teoría de Restricciones).</p>
<p>Convencionalmente, el conflicto se da por sentado y, por lo tanto, la única forma de cumplir con ambas condiciones necesarias es asumir que la demanda se puede predecir utilizando el pronóstico.</p>
<p><em>(Y por lo tanto, la espiral viciosa mortal, que discutimos anteriormente).</em></p>
<p>Pero, cuando desafiamos la suposición de larga data de que la demanda se puede predecir, se abren océanos de oportunidades frente a nosotros.</p>
<p>&nbsp;</p>
<h3>6. Resolviendo el conflicto</h3>

		<div id="6-resolviendo-el-conflicto" data-title="6. Resolviendo el conflicto" class="index-title"></div>
	
<p>¿Podemos reflexionar sobre algunos de los puntos clave que desafían lo(s) supuestos… 🤔?</p>

		<div class="plus tie-list-shortcode">
<ul>
<li>¿Se puede predecir la demanda? (¿Especialmente demandas impulsadas por quiebres, agotados?)</li>
<li>¿Deberíamos reaccionar ante la demanda desconocida (empujando las acciones aguas abajo)?</li>
<li>¿Deberíamos responder a la demanda desconocida (mejorando disponibilidad aguas abajo)</li>
<li>¿Deberíamos usar el pronóstico tanto para la planificación como para la ejecución?</li>
<li>¿Se reduce el error de pronóstico con la reducción del horizonte de pronóstico?</li>
<li>¿Se reduce el error de pronóstico con la agregación de nodos de almacenamiento?</li>
<li>¿Debería el nodo de almacenamiento aguas arriba operar como punto de tránsito/punto de espera?</li>
<li>¿Deberíamos impulsar las ventas primarias/deberíamos habilitar las ventas secundarias?</li>
<li>…etc.</li>
</ul>

		</div>
	
<h3>7. Potencial inherente</h3>

		<div id="7-potencial-inherente" data-title="7. Potencial inherente" class="index-title"></div>
	
<p>Las empresas que han resuelto con éxito el conflicto anterior están en una posición ventajosa 💪para capturar los potenciales inherentes y futuros, tanto en parámetros operativos como comerciales, incluidos los siguientes&#8230;</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/beneficios-esperados-2.png" alt="beneficios esperados" width="732" height="187" class="size-full wp-image-30465 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/beneficios-esperados-2.png 732w, https://ingenieriaindustrialonline.com/wp-content/uploads/2022/05/beneficios-esperados-2-300x77.png 300w" sizes="(max-width: 732px) 100vw, 732px" /></p>
<p>&nbsp;</p>
<h3>Caso de implementación de TOC en la Industria Automotriz en Latinoamérica</h3>
<p>Grupo Berlin, un grupo de empresas de la Industria Automotriz del Ecuador completó su proyecto de Visión Viable con el equipo de Goldratt Consulting en el 2016. Mejoras y capacidad revelada sin mayores inversiones en las plantas de un 50%. Sincronización de la Cadena de Suministros con Disponibilidad elevada por encima del 95%. Rotación de inventarios duplicada con una reducción de inventarios a la mitad en la cadena completa. Clientes con incrementos de venta entre 15% y 50%. Liberando efectivo para más y mejores inversiones. Una Visión Viable con la que generaron una ventaja competitiva decisiva que les permite sostener y continuar hoy disfrutando de altos niveles de desempeño que se materializan en ventas y rentabilidad.</p>
<p><iframe loading="lazy" width="560" height="315" src="https://www.youtube.com/embed/lINZ-XlGyM8" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen="allowfullscreen"><span data-mce-type="bookmark" style="display: inline-block; width: 0px; overflow: hidden; line-height: 0;" class="mce_SELRES_start">﻿</span></iframe></p>
<hr />
<p>Para obtener más información / preguntas / conocer /ayuda, comuníquese con nosotros en Goldratt, y nuestros autores👇</p>
<hr />

		<div class="clearfix"></div>
		<div class="about-author about-author-box container-wrapper">
			<div class="author-avatar">
				<img decoding="async" src="https://media-exp1.licdn.com/dms/image/C5603AQHncAVY6QqQUw/profile-displayphoto-shrink_200_200/0/1625492355949?e=1652313600&amp;v=beta&amp;t=h7kY_O0LpWcDLrXaGJtCJyrQGBBVy0Ktuycy-6OY8p4" alt="">
			</div>
			<div class="author-info">
				<h4>Visweswaran Sundararaman - Goldratt Group</h4>
<p>Tener una sólida formación académica [BE, MBA y MS (EE. UU.)] y una experiencia laboral rica y versátil de más de 24 años en varios sectores, incluida la fabricación de módulos y células solares, fibra a tela: fabricación textil, fabricación integrada de acero, automóviles y componentes para automóviles. , bienes de consumo y comercio minorista, fabricación y fabricación de equipos fortalece mis habilidades profesionales.</p>
<p>Con un sabor natural de buenas habilidades de gestión de personas y excelentes habilidades de comunicación, mi singularidad es la combinación excepcional de habilidades intelectuales e interpersonales, para entrenar y facilitar a la clientela (en todos los niveles de gestión) en sus exitosos viajes de transformación empresarial.</p>
<p>Mi trabajo es&#8230;</p>
<p>1. ayudar a las empresas a desbloquear su potencial oculto<br />
2. permitirles realizar el crecimiento sostenible</p>
<p><strong>visweswaran.sundararaman@goldrattgroup.com</strong> 
			</div>
		</div>
	

		<div class="clearfix"></div>
		<hr style="margin-top:20px; margin-bottom:20px;" class="divider divider-solid">
	

		<div class="clearfix"></div>
		<div class="about-author about-author-box container-wrapper">
			<div class="author-avatar">
				<img decoding="async" src="https://media-exp1.licdn.com/dms/image/C5603AQF3uNRAJV1t6w/profile-displayphoto-shrink_200_200/0/1649916269909?e=1657756800&amp;v=beta&amp;t=aKqqmT6NqZ3He-TbIgxVx1JfkUIPgEyrLeWEyrntu20" alt="">
			</div>
			<div class="author-info">
				<h4>Akshat Agrawal - Goldratt Group</h4>
<p>La estrategia, la innovación, la excelencia en las operaciones y la gestión del cambio son mi fuerte, lo que me ha ayudado a transformar empresas estancadas y en declive en una trayectoria de crecimiento exponencial. He logrado un aumento múltiple en los ingresos, las ganancias y la rentabilidad con una mejora significativa en el flujo de efectivo para organizaciones en varios dominios, incluidos: acero, automóviles, fabricación de metales, iluminación, maquinaria pesada, joyerías, colchones y motores eléctricos.</p>
<p>Competente en la comprensión de diversas perspectivas, asegurando la aceptación de las partes interesadas en varios niveles y trabajando con equipos de puntos de vista opuestos para implementar cambios sostenibles en una organización.</p>
<p><strong>akshat.agrawal@goldrattgroup.com</strong> 
			</div>
		</div>
	
<p style="text-align: center;"><a href="https://blog.goldrattconsulting.net/" target="_blank" class="shortc-button small black">Goldratt Consulting América Latina</a>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/teoria-de-restricciones-toc/teoria-de-restricciones-toc-en-repuestos-automotores/">Teoría de Restricciones (TOC) en Repuestos Automotores</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ingenieriaindustrialonline.com/teoria-de-restricciones-toc/teoria-de-restricciones-toc-en-repuestos-automotores/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Cuando los cauchos se topan con la restricción</title>
		<link>https://ingenieriaindustrialonline.com/teoria-de-restricciones-toc/cuando-los-cauchos-se-topan-con-la-restriccion/</link>
					<comments>https://ingenieriaindustrialonline.com/teoria-de-restricciones-toc/cuando-los-cauchos-se-topan-con-la-restriccion/#respond</comments>
		
		<dc:creator><![CDATA[Goldratt Consulting]]></dc:creator>
		<pubDate>Mon, 11 Apr 2022 17:30:31 +0000</pubDate>
				<category><![CDATA[Actualidad]]></category>
		<category><![CDATA[Casos de éxito]]></category>
		<category><![CDATA[Columnas]]></category>
		<category><![CDATA[Teoría de restricciones (TOC)]]></category>
		<category><![CDATA[Ahorro de costos]]></category>
		<category><![CDATA[Desperdicios]]></category>
		<category><![CDATA[Industria del Caucho]]></category>
		<category><![CDATA[Teoría de Restricciones]]></category>
		<guid isPermaLink="false">https://ingenieriaindustrialonline.com/?p=30240</guid>

					<description><![CDATA[<p>Por: Visweswaran Sundararaman y Akshat Agrawal Traducción Libre de Javier Arévalo &#8211; Goldratt Consulting Partner Latin America 1. Acerca de la industria del caucho “La Civilización, tal y como la conocemos hoy, es totalmente dependiente del caucho.” Estas palabras del renombrado químico y autor, el difunto Ralph Wolf, son verdaderas y precisas hasta la fecha. &#8230;</p>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/teoria-de-restricciones-toc/cuando-los-cauchos-se-topan-con-la-restriccion/">Cuando los cauchos se topan con la restricción</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Por: <em>Visweswaran Sundararaman y Akshat Agrawal</em></p>
<p>Traducción Libre de <em>Javier Arévalo</em> &#8211; Goldratt Consulting Partner Latin America</p>
<h3>1. Acerca de la industria del caucho</h3>

		<div id="1-acerca-de-la-industria-del-caucho" data-title="1. Acerca de la industria del caucho" class="index-title"></div>
	
<p><em>“La Civilización, tal y como la conocemos hoy, es totalmente dependiente del caucho.”</em></p>
<p>Estas palabras del renombrado químico y autor, el difunto Ralph Wolf, son verdaderas y precisas hasta la fecha. Así como el acero, la madera y el mortero, el caucho es un producto indispensable para la sociedad. Desde el transporte hasta los electrodomésticos y equipos para el cuidado de la salud, el caucho ha sido un ingrediente central.</p>
<p>La industria del caucho es una industria diversa. Ha ido creciendo constantemente a lo largo de los años. Dado que sus aplicaciones son amplias en varios sectores industriales, el futuro de la industria del caucho está ligado a la economía global. India ocupa un lugar destacado en la producción de caucho natural. Dado que India se encuentra entre los principales productores y consumidores de la industria del caucho, también afecta directamente el papel de India en la economía global.</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/global-rubber-market.png" alt="global rubber market" width="613" height="377" class="size-full wp-image-30241 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/global-rubber-market.png 613w, https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/global-rubber-market-300x185.png 300w" sizes="(max-width: 613px) 100vw, 613px" /></p>
<blockquote class=" quote-simple "><p>¿Sabías que India es el quinto mayor productor de caucho natural del mundo y el segundo mayor consumidor de caucho natural?</p></blockquote>
<p>En India, el caucho se produce principalmente en Kerala. En los últimos años, la producción de caucho también ha estado creciendo en el noreste de la India. La participación del caucho sintético en el consumo total de caucho en la India es de alrededor del 30 %, mientras que el promedio mundial es del 65 %. Esto ha empujado al mercado indio a desarrollar plantas de caucho sintético en India.</p>
<p>Según los informes, de los últimos 5 años, el crecimiento del consumo de caucho natural en la India también está aumentando: crece a un ritmo del 3-4 % año tras año. Para el caucho sintético, la tasa de crecimiento es del 15-20%. En un panorama más amplio, esto refleja el potencial que existe para el crecimiento de la industria del caucho en la India. Este crecimiento puede satisfacerse mediante importaciones junto con la fabricación local.</p>
<p>&nbsp;</p>
<h3>2. Características de la industria</h3>

		<div id="2-caracteristicas-de-la-industria" data-title="2. Características de la industria" class="index-title"></div>
	
<p>De las muchas características de la industria del caucho, aquí hay 3 características únicas que vale la pena mencionar:</p>

		<div class="checklist tie-list-shortcode">
<ul>
<li><strong>MIPYME</strong>: En India, casi el 90% de las unidades de fabricación de caucho son MIPYME. Cerca del 40% de las exportaciones de productos de caucho están a cargo de estas MIPYMES.</li>
<li><strong>Equipos Intensivos en Capital</strong>: La industria del caucho utiliza maquinaria pesada y es muy necesaria para la producción y fabricación de productos de caucho a gran escala.</li>
<li><strong>Vida útil</strong>: La vida útil del caucho varía según las especificaciones del producto y el diseño y tipo del compuesto. Por ejemplo, el caucho natural puede tener una vida útil de 3 a 5 años, mientras que la silicona puede tener una vida útil de 20 años. Pero, la mayor parte de la «ventana de vida útil» se otorgará a los clientes (en lugar de a los fabricantes).</li>
</ul>

		</div>
	
<p>&nbsp;</p>
<h3>3. Gran potencial de la industria</h3>

		<div id="3-gran-potencial-de-la-industria" data-title="3. Gran potencial de la industria" class="index-title"></div>
	
<p>Según las cifras de consumo y producción en India, aquí hay una perspectiva interesante:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/Market-size.png" alt="Market size" width="563" height="283" class="size-full wp-image-30242 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/Market-size.png 563w, https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/Market-size-300x151.png 300w" sizes="(max-width: 563px) 100vw, 563px" /></p>
<p>El tamaño del mercado en Asia Pacífico se situó en USD 22,09 mil millones en 2019. Asia-Pacífico es el mayor productor y consumidor. El pronóstico sugiere que se espera que el mercado del caucho industrial alcance los USD 38,31 mil millones para 2026.</p>
<p>A lo largo de los años, India ha visto un aumento considerable en la demanda de caucho, tanto a nivel nacional como internacional. Esto se debe principalmente al desarrollo del sector industrial. La mayor parte del consumo de caucho proviene de la industria automotriz, seguida por las industrias del látex y del calzado. Además, otros sectores como el Ferroviario, la Agricultura, el Procesamiento de Alimentos, el Cuidado de la Salud, también son, en general, grandes consumidores de caucho.</p>
<p>&nbsp;</p>
<h3>4. Desafíos de la industria</h3>

		<div id="4-desafios-de-la-industria" data-title="4. Desafíos de la industria" class="index-title"></div>
	
<p>Sin embargo, las empresas del Caucho en la India se administran de manera desventajosa para aprovechar el gran potencial que se avecina.</p>

		<div class="thumbdown tie-list-shortcode">
<ul>
<li><strong>Márgenes muy delgados</strong>: El mercado tan competitivo asegura que los fabricantes no puedan pasar todos los aumentos de costos de RM. La única opción que queda para proteger el margen es controlar el costo.</li>
<li><strong>No utilización</strong>: ¿Cuál es el mayor costo cuando el equipo de producción requiere mucho capital? No usar!! Cuanto mayor sea la utilización, menor será el costo por unidad. La planificación de la producción tiene que ver con el equilibrio entre tratar de aumentar la utilización de recursos y cumplir con el compromiso del cliente.</li>
<li><strong>Falta de mano de obra calificada</strong>: Los recolectores de caucho capacitados y los operadores de maquinaria de caucho no solo son costosos sino también escasos. Debido a la mano de obra calificada insuficiente, los dueños de la industria enfrentan enormes dificultades operativas y pérdidas cada año. Por otro lado, la mano de obra directa es costosa: son trabajadores que están físicamente involucrados en convertir los materiales de caucho en productos terminados.</li>
<li><strong>Plazos de entrega</strong>: Si bien el tiempo máximo de proceso para la fabricación es de menos de 48 horas, el tiempo de entrega de producción es de entre 10 y 15 días. Este plazo de entrega de producción se traduce en un plazo de entrega cotizado de casi un mes para los clientes. Ahora, cuando todos en la industria están operando con un tiempo de entrega cotizado de ~30 días y se suma el hecho de que la mayoría de los clientes también hacen un pedido una vez al mes, los clientes se ven obligados a pronosticar con 60 días de anticipación. <em>¡Cuanto mayor sea la duración del pronóstico, menor será la precisión!</em></li>
<li><strong>Cambios frecuentes de planes</strong>: La mayoría de los clientes de componentes de caucho son fabricantes de equipos originales (OEM) que tienen operaciones de ensamblaje dominantes. Eso significa que la falta de disponibilidad de una sola pieza puede conducir a un cambio en el plan de producción. Y esta falta de disponibilidad de vez en cuando, siendo una norma, provoca cambios frecuentes en los planes.</li>
</ul>

		</div>
	
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/simplicidad-TOC-Caucho.png" alt="simplicidad TOC - Caucho" width="822" height="402" class="alignnone size-full wp-image-30248" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/simplicidad-TOC-Caucho.png 822w, https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/simplicidad-TOC-Caucho-300x147.png 300w, https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/simplicidad-TOC-Caucho-768x376.png 768w" sizes="(max-width: 822px) 100vw, 822px" /></p>
<p><em>“Muchos pueden pensar que los desafíos anteriores son de naturaleza independiente, ¡lo cual no es cierto!”</em></p>
<p><em>“Aplicando el marco de pensamiento de la Teoría de las Restricciones basada en el análisis sistémico (simplicidad inherente), se comprenderá que estos desafíos están relacionados entre sí.”</em></p>
<p>&nbsp;</p>
<h3>5. Un conflicto sin resolver</h3>

		<div id="5-un-conflicto-sin-resolver" data-title="5. Un conflicto sin resolver" class="index-title"></div>
	
<p>El conflicto central que ha empujado a esta industria del caucho al círculo vicioso anterior durante décadas es el conflicto entre el control de costos y el cumplimiento de los compromisos con los clientes.</p>
<p>El control de costos es la forma principal de sostener y mantener un crecimiento rentable. Para trabajar en un mecanismo de control de costos, debe haber un plan que tome medidas para mejorar la eficiencia de los recursos. <em>¡Porque cualquier recurso inactivo es un gran desperdicio!</em> Al mismo tiempo, cumplir con los compromisos de los clientes es importante para el negocio: <strong>si no se cumplen los compromisos, se perderán negocios</strong>.</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/conflictos.png" alt="conflictos" width="672" height="331" class="size-full wp-image-30244 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/conflictos.png 672w, https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/conflictos-300x148.png 300w" sizes="(max-width: 672px) 100vw, 672px" /></p>
<p>Si bien ambas necesidades (1. controlar el costo (o <a href="https://ingenieriaindustrialonline.com/gestion-y-control-de-calidad/los-siete-desperdicios/"><strong>desperdicio</strong></a>) y 2. cumplir con los compromisos del cliente (o mejorar el FLUJO)) son necesarias, las acciones respectivas están en conflicto entre sí. <strong>¡Nadie ha resuelto todavía el conflicto anterior en las industrias del caucho hasta ahora!</strong> <strong>¡Pero las empresas que resuelven lo mismo (sin ningún compromiso), están obligadas a disfrutar de océanos de oportunidades frente a ellas, mientras se posicionan ventajosamente para aprovechar el GRAN potencial!</strong></p>
<p>&nbsp;</p>
<h3>6. Evaporando el conflicto</h3>

		<div id="6-evaporando-el-conflicto" data-title="6. Evaporando el conflicto" class="index-title"></div>
	
<p>Usando las herramientas de pensamiento de <a href="https://ingenieriaindustrialonline.com/teoria-de-restricciones-toc/que-es-teoria-de-restricciones-toc/"><strong>TOC</strong></a> (Armonía Inherente), el conflicto anterior se puede resolver fácilmente sin ninguna transigencia.</p>
<p>Algunos de los indicadores para resolver el conflicto son:</p>

		<div class="checklist tie-list-shortcode">
<ul>
<li>1. ¿Todos los recursos son iguales?</li>
<li>2. ¿Hay un recurso cuya capacidad es &lt; demanda colocada (recurso restringido)?</li>
<li>3. ¿Existen recursos cuya demanda &lt; capacidad (recursos sin restricciones)?</li>
<li>4. ¿Dónde se debe aplicar la medida de eficiencia?</li>
<li>5. ¿Dónde se debe aplicar la medida de efectividad?</li>
<li>6. ¿Cómo gestionar la restricción de recursos?</li>
<li>7. ¿Cómo NO administrar los recursos sin restricciones?</li>
<li>8. …etc.</li>
</ul>

		</div>
	
<h3>7. Beneficios esperados</h3>

		<div id="7-beneficios-esperados" data-title="7. Beneficios esperados" class="index-title"></div>
	
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/beneficios-esperados.png" alt="beneficios esperados" width="709" height="232" class="alignnone size-full wp-image-30245" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/beneficios-esperados.png 709w, https://ingenieriaindustrialonline.com/wp-content/uploads/2022/04/beneficios-esperados-300x98.png 300w" sizes="(max-width: 709px) 100vw, 709px" /></p>
<p>El uso de estas soluciones no solo hará crecer el mercado interno existente, sino que también ayudará a obtener una mayor exposición global y ganancias en términos de exportación y participación en el mercado internacional.</p>
<p>Durante décadas, hemos estado asesorando a varias industrias en la India y en todo el mundo, ayudándolas a comprender sus desafíos sistémicos y a diseñar soluciones rentables que funcionen.</p>
<hr />

		<div class="clearfix"></div>
		<div class="about-author about-author-box container-wrapper">
			<div class="author-avatar">
				<img decoding="async" src="https://media-exp1.licdn.com/dms/image/C5603AQHncAVY6QqQUw/profile-displayphoto-shrink_200_200/0/1625492355949?e=1652313600&amp;v=beta&amp;t=h7kY_O0LpWcDLrXaGJtCJyrQGBBVy0Ktuycy-6OY8p4" alt="">
			</div>
			<div class="author-info">
				<h4>Visweswaran Sundararaman - Goldratt Group</h4>
<p>Tener una sólida formación académica [BE, MBA y MS (EE. UU.)] y una experiencia laboral rica y versátil de más de 24 años en varios sectores, incluida la fabricación de módulos y células solares, fibra a tela: fabricación textil, fabricación integrada de acero, automóviles y componentes para automóviles. , bienes de consumo y comercio minorista, fabricación y fabricación de equipos fortalece mis habilidades profesionales.</p>
<p>Con un sabor natural de buenas habilidades de gestión de personas y excelentes habilidades de comunicación, mi singularidad es la combinación excepcional de habilidades intelectuales e interpersonales, para entrenar y facilitar a la clientela (en todos los niveles de gestión) en sus exitosos viajes de transformación empresarial.</p>
<p>Mi trabajo es&#8230;</p>
<p>1. ayudar a las empresas a desbloquear su potencial oculto<br />
2. permitirles realizar el crecimiento sostenible</p>
<p>visweswaran.sundararaman@goldrattgroup.com 
			</div>
		</div>
	

		<div class="clearfix"></div>
		<hr style="margin-top:20px; margin-bottom:20px;" class="divider divider-solid">
	

		<div class="clearfix"></div>
		<div class="about-author about-author-box container-wrapper">
			<div class="author-avatar">
				<img decoding="async" src="https://media-exp1.licdn.com/dms/image/C5603AQF3uNRAJV1t6w/profile-displayphoto-shrink_200_200/0/1649916269909?e=1657756800&amp;v=beta&amp;t=aKqqmT6NqZ3He-TbIgxVx1JfkUIPgEyrLeWEyrntu20" alt="">
			</div>
			<div class="author-info">
				<h4>Akshat Agrawal - Goldratt Group</h4>
<p>La estrategia, la innovación, la excelencia en las operaciones y la gestión del cambio son mi fuerte, lo que me ha ayudado a transformar empresas estancadas y en declive en una trayectoria de crecimiento exponencial. He logrado un aumento múltiple en los ingresos, las ganancias y la rentabilidad con una mejora significativa en el flujo de efectivo para organizaciones en varios dominios, incluidos: acero, automóviles, fabricación de metales, iluminación, maquinaria pesada, joyerías, colchones y motores eléctricos.</p>
<p>Competente en la comprensión de diversas perspectivas, asegurando la aceptación de las partes interesadas en varios niveles y trabajando con equipos de puntos de vista opuestos para implementar cambios sostenibles en una organización.</p>
<p>akshat.agrawal@goldrattgroup.com 
			</div>
		</div>
	
<p style="text-align: center;"><a href="https://blog.goldrattconsulting.net/" target="_blank" class="shortc-button small black">Goldratt Consulting América Latina</a>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/teoria-de-restricciones-toc/cuando-los-cauchos-se-topan-con-la-restriccion/">Cuando los cauchos se topan con la restricción</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ingenieriaindustrialonline.com/teoria-de-restricciones-toc/cuando-los-cauchos-se-topan-con-la-restriccion/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>¿Qué tipo de tecnología tengo que adoptar para crear una verdadera diferencia comercial? &#124; Retail</title>
		<link>https://ingenieriaindustrialonline.com/actualidad/que-tipo-de-tecnologia-tengo-que-adoptar-para-crear-una-verdadera-diferencia-comercial-retail/</link>
					<comments>https://ingenieriaindustrialonline.com/actualidad/que-tipo-de-tecnologia-tengo-que-adoptar-para-crear-una-verdadera-diferencia-comercial-retail/#respond</comments>
		
		<dc:creator><![CDATA[Goldratt Consulting]]></dc:creator>
		<pubDate>Fri, 04 Mar 2022 23:26:16 +0000</pubDate>
				<category><![CDATA[Actualidad]]></category>
		<category><![CDATA[Columnas]]></category>
		<category><![CDATA[Logística]]></category>
		<category><![CDATA[Transformación digital]]></category>
		<category><![CDATA[Cadena de abastecimiento]]></category>
		<category><![CDATA[Datos]]></category>
		<category><![CDATA[Retail]]></category>
		<category><![CDATA[Tecnologías]]></category>
		<guid isPermaLink="false">https://ingenieriaindustrialonline.com/?p=29881</guid>

					<description><![CDATA[<p>Por: Roei Raz – Vicepresidente de ventas de Onebeat Traducción Libre de Javier Arévalo &#8211; Goldratt Consulting Partner Latin America El comercio del retail moderno, como muchos otros ámbitos y campos, ya no es solo un simple juego de oferta y demanda como antes, si es que alguna vez lo fue. En nuestra realidad actual, &#8230;</p>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/actualidad/que-tipo-de-tecnologia-tengo-que-adoptar-para-crear-una-verdadera-diferencia-comercial-retail/">¿Qué tipo de tecnología tengo que adoptar para crear una verdadera diferencia comercial? | Retail</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Por: <em>Roei Raz</em> – Vicepresidente de ventas de Onebeat</p>
<p>Traducción Libre de <em>Javier Arévalo</em> &#8211; Goldratt Consulting Partner Latin America</p>
<p>El comercio del retail moderno, como muchos otros ámbitos y campos, ya no es solo un simple juego de oferta y demanda como antes, si es que alguna vez lo fue. En nuestra realidad actual, los consumidores lo quieren todo, aquí y ahora. Cada vez más servicios pasan por la digitalización y la personalización, y los retailers están conscientes de que el uso de la tecnología ya no es una opción, sino una necesidad. Con interminables posibilidades de mejoras tecnológicas en diferentes ámbitos en esta industria y un limitado presupuesto de IT; la pregunta del millón es: <strong><em>¿Qué tipo de tecnología tengo que adoptar para crear una verdadera diferencia comercial? </em></strong></p>
<p>Según mi experiencia durante los últimos 15 años, todos los retailers están de acuerdo en que la principal limitación en este tipo de comercio, es <strong>el tráfico</strong>. No obstante, éste se encuentra entre las variables más difíciles de predecir en un mundo en constante cambio que se enfrenta a la pandemia de Covid-19 en los últimos años. Sin embargo, los retailers exitosos son aquellos que tienen capacidades integradas para convertir altos porcentajes de su tráfico en compradores, con un ticket promedio más alto y un mejor margen de utilidad.</p>
<h2><strong>La necesidad de un nuevo modelo de gestión de la moda y el comercio retail en la era post-Covid-19 </strong></h2>
<p>Con el brote de Covid-19, el mundo ha cambiado drásticamente y a la par el retail y la industria de la moda. La pandemia aceleró algunas tendencias que comenzaron antes de su aparición y uno de los cambios más impactantes, fue la rápida transición de los clientes a plataformas online. Para las marcas tradicionales de establecimientos físicos y las cadenas de retail, esta transición significa una competencia feroz en términos de precio y servicio con las plataformas de comercio electrónico ya establecidas, y al mismo tiempo hace que el tráfico en sus tiendas físicas sea errático, lo que impacta directamente la rentabilidad de las tiendas.</p>
<p>Además, este cambio puso de manifiesto otros desafíos, desde <strong>la necesidad de los retailers para reaccionar rápidamente</strong>, hasta las preferencias de los consumidores que cambian de una tendencia a otra, e incluso se enfrentan a la escasez de mano de obra, lo que en algunos casos ha dificultado el funcionamiento de las tiendas físicas.</p>
<p>También, toda la gestión del flujo y la cadena de suministro enfrentan desafíos sin precedentes, ya que las operaciones del retail a nivel global tienen retrasos y costos cada vez mayores. Por ello, cualquier predicción a largo plazo es cada vez más desafiante y la precisión de los pronósticos se deteriora constantemente. Por ejemplo, <strong><em>¿cómo pueden los retailers de moda planificar su inventario, cuando ni siquiera están seguros de que llegarán a sus tiendas a tiempo para el inicio de la temporada? </em></strong>En esta realidad caótica, se vuelven esenciales las predicciones a corto plazo y la capacidad de controlar el inventario, las ventas y la rotación del producto durante la temporada de compras.</p>
<p>Asimismo, en un mundo que se vuelve cada vez más ecológico, crece la conciencia de los costos ambientales causados por el exceso de producción. Con las malas predicciones de hoy, la sostenibilidad no se podrá asegurar.</p>
<h2><strong>La trampa de la venta a precio completo </strong></h2>
<p>En general, las temporadas en la moda se planifican con mucha anticipación. A lo largo de mi extensa carrera con profesionales de este campo en todo el mundo, he notado algunos factores clave que influyen en este flujo de trabajo. Los retailers determinan los estilos, las cantidades y otros parámetros claves, como la moda predominante y la forma en que se distribuirá la ropa entre las tiendas, lo cual generalmente toma de 6 a 12 meses previos al inicio de una temporada. Sin embargo, los retailers saben que es imposible vender el 100 por ciento de la mercancía a precio completo por diversas razones. Los expertos retailers de moda pueden terminar la temporada con un 85 por ciento o incluso un 90 por ciento de ventas de productos a precio completo; sin embargo, sólo entre el 50 y el 75 por ciento de las ventas están en el precio completo y el resto se vende con grandes descuentos durante las rebajas de fin de temporada.</p>
<p>No hace falta ser un experto para entender por qué las ventas a precio completo en la moda son tan bajas. Cuando un amplio surtido se actualiza constantemente en la tienda en función de las predicciones, que se hicieron mucho antes de que comenzara la temporada, es inevitable terminar con una alta cantidad de productos que se mueven lentamente en los estantes. De hecho, es común ver que a medida que comienzan las ventas de fin de temporada, hasta el 50 por ciento del surtido de una tienda contribuye a menos del 5 por ciento de las ventas.</p>
<p>Los productos de baja rotación se acumulan con el tiempo, reducen el atractivo de las estanterías y bloquean el espacio disponible para nuevas colecciones. Dichos artículos también son el principal motor de los grandes descuentos a los que estamos acostumbrados a ver en los anuncios de «fin de temporada».</p>
<p>Pero la moda también genera «best-sellers», que son productos de rápido movimiento, es decir, se venden más rápido de lo previsto originalmente y por lo tanto se quedan sin existencias con mayor prontitud. Esos son los productos que nos gustan en exhibición, pero aprendimos que ya se han agotado. En tanto, el inventario de los productos de bajo movimiento se acumula en la temporada de “best-sellers”,lo  que reduce la capacidad de la tienda para convertir el tráfico en compradores.</p>
<p>Las ventas de fin de temporada son la oportunidad de los retailers para liquidar los productos de bajo movimiento y comenzar la próxima temporada de nuevo. No podemos salir de la espiral de liquidación, si nos limitamos a pensar que esos productos son los villanos; esto sólo nos llevará a criticar nuestra planificación y tratar de optimizar nuestras acciones dentro del enorme ruido. Hay que mirar la realidad con mayor resolución para entender la causa y efecto.</p>
<h2><strong>La basura de una tienda es el tesoro de otra </strong></h2>
<p>Los productos de lento y rápido movimiento, son en su mayoría, definiciones específicas de su ubicación. De hecho, hay malos productos con diseños y precios incorrectos que no se pueden vender sin un gran descuento; sin embargo, la mayoría de los que se mueven lentamente en una tienda, en realidad son los “best- sellers” en otras. Es decir, mientras veíamos que estos productos bloqueaban las estanterías de algunas tiendas, en realidad eran necesarios para las ventas en otras, donde los productos se agotaron demasiado pronto en la temporada.</p>
<p><strong>Si tuviéramos el algoritmo adecuado para identificar estos productos de movimientos lentos y rápidos en tiempo real</strong> tan pronto como comenzara la temporada, podríamos tomar medidas inmediatas para garantizar que el producto correcto llega al lugar y momento indicados para maximizar su venta a precio completo.</p>
<h2><strong>Predicción a corto plazo, automatización y optimización </strong></h2>
<p>Las cifras y las tendencias actuales demuestran la importancia de que los retailers presten atención y se centren en la predicción a corto plazo y la toma de decisiones de manera inmediata. Según mi experiencia, una de las mejores maneras de lograrlo es cambiar nuestro enfoque de tener un mejor plan hacia la adopción de tecnologías que se adapten a la temporada.</p>
<p><strong>Dichas tecnologías se basan en herramientas de predicción que ayudan a los retailers a predecir a corto plazo y automatizar los procesos de mercadeo en las tiendas</strong>. La precisión de las estimaciones a corto plazo impacta en las ventas y las ganancias de la temporada, y optimiza los traslados de reabastecimiento entre tiendas así como la gestión de los productos de rápido movimiento, la liquidación de los de lento movimiento y el surtido general de la tienda durante la temporada.</p>
<p>Después de más de una década de trabajar en el comercio retail, y tras cientos de conversaciones con líderes internacionales del retail, sé con certeza que el uso y la implementación de esas herramientas logran un aumento de entre 5 y 10 por ciento en las ventas por tienda durante todo el año, y una mejoría del 20 por ciento en las ventas de temporada a precio completo. Además, como las acciones se traducen en resultados inmediatos, el rendimiento se puede medir con precisión y en tiempo real.</p>
<p>Más allá de las mejoras financieras, con esta tecnología los retailers pueden transitar más rápido hacia una política de cero residuos, ya que estos algoritmos les ayudarán a no dejar productos en los estantes y estar un paso adelante de la industria del retail convencional.</p>
<p><iframe loading="lazy" width="560" height="315" src="https://www.youtube.com/embed/iRvaWHk3A8k" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen="allowfullscreen"></iframe></p>
<hr />

		<div class="clearfix"></div>
		<div class="about-author about-author-box container-wrapper">
			<div class="author-avatar">
				<img decoding="async" src="" alt="">
			</div>
			<div class="author-info">
				<h4>Roei Raz </h4>Vicepresidente de ventas de Onebeat y exconsultor de los principales grupos del retail alrededor del mundo. Raz tiene una Licenciatura en Ingeniería Industrial y un MBA, ambos de la Universidad de Tel Aviv.</p>
<p style="text-align: center;"><a href="https://blog.goldrattconsulting.net/" target="_blank" class="shortc-button small black">Goldratt Consulting América Latina</a>

			</div>
		</div>
	
<p>La entrada <a href="https://ingenieriaindustrialonline.com/actualidad/que-tipo-de-tecnologia-tengo-que-adoptar-para-crear-una-verdadera-diferencia-comercial-retail/">¿Qué tipo de tecnología tengo que adoptar para crear una verdadera diferencia comercial? | Retail</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ingenieriaindustrialonline.com/actualidad/que-tipo-de-tecnologia-tengo-que-adoptar-para-crear-una-verdadera-diferencia-comercial-retail/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Método de la Ruta Crítica mediante Python (CPM)</title>
		<link>https://ingenieriaindustrialonline.com/investigacion-de-operaciones/metodo-de-la-ruta-critica-mediante-python-cpm/</link>
					<comments>https://ingenieriaindustrialonline.com/investigacion-de-operaciones/metodo-de-la-ruta-critica-mediante-python-cpm/#respond</comments>
		
		<dc:creator><![CDATA[Bryan Salazar López]]></dc:creator>
		<pubDate>Fri, 22 Oct 2021 19:02:49 +0000</pubDate>
				<category><![CDATA[Actualidad]]></category>
		<category><![CDATA[Diseño y distribución en planta]]></category>
		<category><![CDATA[Gestión de proyectos]]></category>
		<category><![CDATA[Investigación de operaciones]]></category>
		<category><![CDATA[CPM]]></category>
		<category><![CDATA[Pert]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Ruta crítica]]></category>
		<category><![CDATA[Teoría de redes]]></category>
		<guid isPermaLink="false">https://ingenieriaindustrialonline.com/?p=28576</guid>

					<description><![CDATA[<p>Para entender de qué se trata el método de Ruta Crítica, y cómo funciona como un algoritmo de redes, podemos dirigirnos a: Método de la Ruta Crítica (CPM). De acuerdo al objetivo de este artículo, basta con mencionar que la Ruta Crítica es una herramienta que soporta el análisis, la planificación, y la programación de &#8230;</p>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/investigacion-de-operaciones/metodo-de-la-ruta-critica-mediante-python-cpm/">Método de la Ruta Crítica mediante Python (CPM)</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></description>
										<content:encoded><![CDATA[
		<div id="introduccion" data-title="Introducción" class="index-title"></div>
	
<p>Para entender de qué se trata el método de Ruta Crítica, y cómo funciona como un algoritmo de redes, podemos dirigirnos a: <a href="https://ingenieriaindustrialonline.com/investigacion-de-operaciones/metodo-de-la-ruta-critica-cpm/"><em><strong>Método de la Ruta Crítica (CPM)</strong></em></a>. De acuerdo al objetivo de este artículo, basta con mencionar que la Ruta Crítica es una herramienta que soporta el análisis, la planificación, y la programación de proyectos. Que básicamente, nos ayuda a determinar cuáles de las actividades que componen un proyecto, son críticos con relación en su efecto sobre el tiempo total del proyecto.</p>
<p><span>El objetivo de este artículo es el de, mediante herramientas tecnológicas, abordar un caso básico de CPM, para desarrollar el método utilizando un lenguaje de programación, en este caso</span> <em>Python</em>, que nos permita, automatizar los cálculos y así obtener las actividades críticas del proyecto, la duración del mismo y un diagrama de Gantt.</p>
<p>En el desarrollo de este ejercicio emplearemos:</p>

		<div class="plus tie-list-shortcode">
<div class="plus tie-list-shortcode">
<ul>
<li><em><strong>Colaboratory</strong>:<span> </span></em>Este es un entorno de programación y ejecución virtual de Python desarrollado por Google. Nos permitirá no tener la necesidad de realizar ninguna instalación en nuestros equipos. Todo lo que desarrollemos lo ejecutaremos en un cuaderno virtual.</li>
<li><strong><em>Python</em></strong>: Este será el lenguaje de programación que vamos a utilizar, y advertimos: No es necesario tener conocimientos previos, y el objetivo del artículo no es convertirnos en programadores expertos. Utilizaremos fragmentos de códigos, librerías disponibles, y explicaremos lo necesario para configurar nuestro desarrollo de acuerdo a los objetivos específicos de nuestros modelos.</li>
<li><strong><em>CriticalPath</em></strong>: Las librerías son a <em>Python</em>, lo que las <em>apps<span> </span></em>son a un teléfono celular. Esta es quizá una de las características más a tractivas de este lenguaje: Casi que existe una librería para cada necesidad. En este caso, <em>CriticalPath</em>, es una librería que calcula la ruta crítica a través de una red de tareas.</li>
<li><em><strong>Matplotlib</strong>:<span> </span></em>Es una biblioteca completa para crear visualizaciones estáticas, animadas e interactivas en Python. Nos permitirá visualizar nuestros nodos y nuestras localizaciones solución.</li>
<li><strong><em>Pandas</em></strong>:<span> </span><span>Es un paquete de Python que proporciona estructuras de datos rápidas, y flexibles, diseñadas para que el trabajo con datos estructurados (tabulares, multidimensionales, potencialmente heterogéneos) y de series de tiempo sea fácil e intuitivo.</span></li>
<li><em><strong>Numpy</strong>: </em>Es una librería que nos permitirá efectuar operaciones matriciales en Python.</li>
<li><em><strong>Datetime</strong></em>: Es un módulo que proporciona herramientas para manipular fechas y horas.</li>
</ul>

		</div>
	
</div>
<hr />
<p>&nbsp;</p>
<p><span>Para evaluar los resultados obtenidos a través del tratamiento de un problema técnicamente formulado y abordado, utilizaremos un caso descrito en el libro Investigación de Operaciones (9na edición), de Hamdy A. Taha (University of Arkansas, Fayetteville), (Ejemplo 6.5-1):</span></p>
<h2>Caso de aplicación</h2>

		<div id="caso-de-aplicacion" data-title="Caso de aplicación" class="index-title"></div>
	
<blockquote class=" quote-simple "><p>Un editor firmó un contrato con un autor para publicar un libro de texto. El autor somete a consideración una copia impresa de un archivo de computadora del manuscrito. Las actividades (simplificadas) asociadas con la producción del libro de texto se resumen en la siguiente tabla.</p></blockquote>
<table width="741">
<tbody>
<tr>
<td colspan="2" width="571" style="text-align: center;">Actividades</td>
<td width="90" style="text-align: center;">Predecesoras</td>
<td width="80" style="text-align: center;">Duración (semanas)</td>
</tr>
<tr>
<td style="text-align: center;">A</td>
<td style="text-align: center;">Corrección del manuscrito, por parte del editor</td>
<td style="text-align: center;">&#8211;</td>
<td style="text-align: center;">3</td>
</tr>
<tr>
<td style="text-align: center;">B</td>
<td style="text-align: center;">Preparación de páginas muestra</td>
<td style="text-align: center;">&#8211;</td>
<td style="text-align: center;">2</td>
</tr>
<tr>
<td style="text-align: center;">C</td>
<td style="text-align: center;">Diseño de la portada del libro</td>
<td style="text-align: center;">&#8211;</td>
<td style="text-align: center;">4</td>
</tr>
<tr>
<td style="text-align: center;">D</td>
<td style="text-align: center;">Preparación de las ilustraciones</td>
<td style="text-align: center;">&#8211;</td>
<td style="text-align: center;">3</td>
</tr>
<tr>
<td style="text-align: center;">E</td>
<td style="text-align: center;">Aprobación del manuscrito editado y de páginas muestra, por parte del autor</td>
<td style="text-align: center;">A, B</td>
<td style="text-align: center;">2</td>
</tr>
<tr>
<td style="text-align: center;">F</td>
<td style="text-align: center;">Formación del libro</td>
<td style="text-align: center;">E</td>
<td style="text-align: center;">4</td>
</tr>
<tr>
<td style="text-align: center;">G</td>
<td style="text-align: center;">Revisión de las páginas formadas, por parte del autor</td>
<td style="text-align: center;">F</td>
<td style="text-align: center;">2</td>
</tr>
<tr>
<td style="text-align: center;">H</td>
<td style="text-align: center;">Revisión de las ilustraciones por el autor</td>
<td style="text-align: center;">D</td>
<td style="text-align: center;">1</td>
</tr>
<tr>
<td style="text-align: center;">I</td>
<td style="text-align: center;">Producción de las placas de impresión</td>
<td style="text-align: center;">G, H</td>
<td style="text-align: center;">2</td>
</tr>
<tr>
<td style="text-align: center;">J</td>
<td style="text-align: center;">Producción y encuadernación del libro</td>
<td style="text-align: center;">C, I</td>
<td style="text-align: center;">4</td>
</tr>
</tbody>
</table>
<p>La tarea será determinar la Ruta Crítica (Actividades críticas) y la duración estimada del proyecto.</p>
<hr />
<h3>Paso 1: Crear el entorno de trabajo en Colaboratory</h3>

		<div id="paso-1-crear-el-entorno-de-trabajo-en-colaboratory" data-title="Paso 1: Crear el entorno de trabajo en Colaboratory" class="index-title"></div>
	
<p><span>Lo primero que vamos a hacer consiste en crear un entorno de trabajo en <em>Google</em> </span><em>Colaboratory</em><span>, así que vayamos allá: </span><a href="https://colab.research.google.com/#create=true" target="_blank" rel="noopener"><em><strong>Abrir cuaderno nuevo</strong></em></a><span>.</span></p>
<p>Verán que tienen un lienzo para programar el modelo, así que en este cuaderno podemos ir generando las líneas de código que explicaremos en los pasos siguientes.</p>
<h3>Paso 2: Importar las librerías necesarias</h3>

		<div id="paso-2-importar-las-librerias-necesarias" data-title="Paso 2: Importar las librerías necesarias" class="index-title"></div>
	
<p>Respecto a las librerías, en la introducción del artículo hicimos una descripción de la funcionalidad de cada una, veamos como importarlas en nuestro entorno:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Importar las librerías necesarias
!pip install criticalpath
from criticalpath import Node
import datetime
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.patches import Patch
import numpy as np</code></pre>
</div>
<p>De esta manera, tenemos todo lo necesario para empezar a desarrollar nuestro código.</p>
<h3>Paso 3: Ingresar los datos del modelo</h3>

		<div id="paso-3-ingresar-los-datos-del-modelo" data-title="Paso 3: Ingresar los datos del modelo" class="index-title"></div>
	
<p>Básicamente los datos del modelo corresponden a las tareas, su duración y las relaciones de dependencia que rigen la secuencia del proyecto.</p>
<p>El siguiente fragmento permite ingresar estos datos al modelo:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Ingresar los datos del modelo (Tareas y dependencias)

#Crear el proyecto "p"
p = Node('proyecto')

tareas = [("A", {"duracion": 3}), 
          ("B", {"duracion": 2}), 
          ("C", {"duracion": 4}), 
          ("D", {"duracion": 3}), 
          ("E", {"duracion": 2}), 
          ("F", {"duracion": 4}), 
          ("G", {"duracion": 2}), 
          ("H", {"duracion": 1}), 
          ("I", {"duracion": 2}), 
          ("J", {"duracion": 4})]

dependencias = [("A", "E"), 
                ("B", "E"), 
                ("E", "F"),
                ("F", "G"), 
                ("G", "I"), 
                ("I", "J"),
                ("C", "J"), 
                ("H", "I"), 
                ("D", "H")]

# Cargar al proyecto las tareas y sus duraciones
for i in tareas:
    p.add(Node(i[0], duration=i[1]["duracion"]))

# Cargar al proyecto sus dependencias (secuencias)
for j in dependencias:
    p.link(j[0],j[1])

# Actualizar el proyecto:
p.update_all()</code></pre>
</div>
<p>El anterior fragmento nos permite cargar todos los datos necesarios para conocer la Ruta Crítica del modelo. Veamos cómo obtenerla:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Obtener la Ruta Crítica del modelo
p.get_critical_path()</code></pre>
</div>
<p>Al ejecutar esta instrucción tenemos la siguiente salida:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Ruta-critica.png" alt="Ruta critica" width="492" height="104" class="size-full wp-image-28577 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Ruta-critica.png 492w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Ruta-critica-300x63.png 300w" sizes="(max-width: 492px) 100vw, 492px" /></p>
<p>De la misma manera, podemos obtener la duración estimada del proyecto:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Obtener la duración del proyecto
p.duration</code></pre>
</div>
<p>Al ejecutar esta instrucción tenemos la siguiente salida:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Ruta-critica_duracion.png" alt="Ruta critica_duracion" width="492" height="84" class="size-full wp-image-28578 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Ruta-critica_duracion.png 492w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Ruta-critica_duracion-300x51.png 300w" sizes="(max-width: 492px) 100vw, 492px" /></p>
<p>Así entonces, de esta manera muy sencilla tenemos las actividades que componen la Ruta Crítica y la duración del proyecto de acuerdo a CPM (17 semanas). Podríamos finalizar el modelo hasta acá, sin embargo, queremos obtener el diagrama de Gantt del proyecto, y para eso es necesario obtener algunas variables adicionales.</p>
<h3>Paso 4: Obtener las variables de inicio y finalización</h3>

		<div id="paso-4-obtener-las-variables-de-inicio-y-finalizacion" data-title="Paso 4: Obtener las variables de inicio y finalización" class="index-title"></div>
	
<p>Ya que el problema planteado no establece fechas de inicio y finalización, podemos, mediante <em>Python</em>, utilizar una fecha de inicio artificial, por ejemplo: Hoy. <em>¿Con qué objetivo hacemos esto?</em> Los diagramas de Gantt requieren de una línea de tiempo y es preciso establecer estas variables. Estableceremos fechas de inicio, de finalización y un status para cada actividad del proyecto.</p>
<p>En este caso puntual, ya que la duración de cada actividad se nos da en semanas, multiplicaremos el valor de la duración por 7:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Obtener las variables de inicio y finalización
ruta_critica = [str(n) for n in p.get_critical_path()]

proj_fecha_inicio = datetime.date.today()

proj_calendario = pd.DataFrame([dict(Tarea = key, 
                                   Inicio = datetime.date.today(), 
                                   Fin = datetime.date.today() + datetime.timedelta(val['duracion']*7), 
                                   Status = 'Actividad Normal')
                              for key, val in dict(tareas).items()])

for key, val in dict(tareas).items():
    dep = [d for d in dependencias if d[1] == key]
    prev_tareas = [t[0] for t in dep]
    if prev_tareas:
        prev_fin = proj_calendario[proj_calendario.Tarea.isin(prev_tareas)]['Fin'].max()
        proj_calendario.loc[proj_calendario.Tarea == key, 'Inicio'] = prev_fin
        proj_calendario.loc[proj_calendario.Tarea == key, 'Fin'] = prev_fin + datetime.timedelta(val['duracion']*7)
        
proj_calendario.loc[proj_calendario.Tarea.isin(ruta_critica), 'Status'] = 'Ruta Crítica'
        
display(proj_calendario)</code></pre>
</div>
<p>Al ejecutar este fragmento de código, tendremos:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Ruta-critica_fechas.png" alt="Ruta critica_fechas" width="381" height="342" class="size-full wp-image-28580 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Ruta-critica_fechas.png 381w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Ruta-critica_fechas-300x269.png 300w" sizes="(max-width: 381px) 100vw, 381px" /></p>
<p>Podemos apreciar cómo tenemos las fechas estimadas de inicio de cada actividad y su correspondiente fecha de finalización (teniendo en cuenta que la duración de las actividades está dada en semanas). También tenemos un <em>status</em> relacionado con la naturaleza de cada actividad: <em>Crítica o Normal</em>.</p>
<p>Y tenemos fechas de inicio y finalización, lo siguiente será calcular cuántos días pasan entre el inicio del proyecto y el inicio y finalización de cada actividad:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code># Número de días desde que el proyecto inicia hasta que la tarea inicia
proj_calendario['dias_inicio'] = (proj_calendario.Inicio-proj_fecha_inicio).dt.days
# Número de días desde que el proyecto inicia hasta que la tarea finaliza
proj_calendario['dias_fin'] = (proj_calendario.Fin-proj_fecha_inicio).dt.days
# Días entre el inicio y el fin de cada tarea
proj_calendario['dias_inicio_fin'] = proj_calendario.dias_fin - proj_calendario.dias_inicio

display(proj_calendario)</code></pre>
</div>
<p>Al ejecutar este fragmento de código, tendremos:<span style="background-color: inherit; color: inherit; font-family: inherit; font-size: 15px; font-weight: lighter; white-space: pre;"></span></p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Ruta-critica_inicio_fin.png" alt="Ruta Crítica mediante Python" width="690" height="342" class="aligncenter wp-image-28581 size-full" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Ruta-critica_inicio_fin.png 690w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Ruta-critica_inicio_fin-300x149.png 300w" sizes="(max-width: 690px) 100vw, 690px" /></p>
<h3>Paso 5: Obtener el diagrama de Gantt (Graficar)</h3>

		<div id="paso-5-obtener-el-diagrama-de-gantt-graficar" data-title="Paso 5: Obtener el diagrama de Gantt (Graficar)" class="index-title"></div>
	
<p>El siguiente paso consiste en graficar de acuerdo al diagrama de Gantt, ls actividades del proyecto. El eje <em>x</em> estará dado en días.</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Graficar las actividades en un diagrama de Gantt
fig, ax = plt.subplots(1, figsize=(16,6))
ax.barh(proj_calendario.Tarea, proj_calendario.dias_inicio_fin, left=proj_calendario.dias_inicio)
plt.show()</code></pre>
</div>
<p>Al ejecutar el fragmento tendremos:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/diagrama_gantt.png" alt="diagrama_gantt" width="921" height="357" class="alignnone size-full wp-image-28583" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/diagrama_gantt.png 921w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/diagrama_gantt-300x116.png 300w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/diagrama_gantt-768x298.png 768w" sizes="(max-width: 921px) 100vw, 921px" /></p>
<h3>Paso 6: Mejorar el diagrama de Gantt</h3>

		<div id="paso-6-mejorar-el-diagrama-de-gantt" data-title="Paso 6: Mejorar el diagrama de Gantt" class="index-title"></div>
	
<p>Una vez obtenido el diagrama podemos realizar modificaciones sobre el mismo, por ejemplo: dar un color específico a las actividades de la ruta crítica, anexar leyendas, entre otros. Vamos a resaltar con rojo las actividades críticas, y a anexar alguna leyenda de actividades:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code># Dar color rojo a las columnas de actividades críticas
def color(row):
    c_dict = {'Ruta Crítica':'#E64646', 'Actividad Normal':'#4F81BE'}
    return c_dict[row['Status']]
proj_calendario['color'] = proj_calendario.apply(color, axis=1)
fig, ax = plt.subplots(1, figsize=(16,6))
ax.barh(proj_calendario.Tarea, proj_calendario.dias_inicio_fin, left=proj_calendario.dias_inicio, color=proj_calendario.color)

#Anexar leyendas
c_dict = {'Ruta crítica':'#E64646', 'Actividad normal':'#4F81BE'}
leyenda = [Patch(facecolor=c_dict[i], label=i)  for i in c_dict]
plt.legend(handles=leyenda)

plt.show()</code></pre>
</div>
<p>Al ejecutar el fragmento tendremos:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/diagrama_gantt_cpm.png" alt="Ruta Crítica mediante Python" width="921" height="357" class="alignnone wp-image-28584 size-full" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/diagrama_gantt_cpm.png 921w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/diagrama_gantt_cpm-300x116.png 300w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/diagrama_gantt_cpm-768x298.png 768w" sizes="(max-width: 921px) 100vw, 921px" /></p>
<p>Ahora tenemos un modelo capaz de obtener las actividades críticas de un proyecto, determinar su duración de acuerdo al algoritmo CPM y graficar las actividades mediante un diagrama de Gantt.</p>
<p>También es posible incorporar una variable de «estado de terminación» de cada actividad, para así observar el avance del proyecto.</p>
<p>El código completo de este desarrollo lo puedes encontrar en nuestro cuaderno: <a href="https://colab.research.google.com/drive/1AaFQDIQ_n1nR1BsrxQqZg4pEu_dyP_6K?usp=sharing" target="_blank" rel="noopener"><em><strong>Método de la Ruta Crítica (CPM) mediante Python</strong></em></a>.</p>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/investigacion-de-operaciones/metodo-de-la-ruta-critica-mediante-python-cpm/">Método de la Ruta Crítica mediante Python (CPM)</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ingenieriaindustrialonline.com/investigacion-de-operaciones/metodo-de-la-ruta-critica-mediante-python-cpm/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Localización de varios almacenes mediante agrupación geoespacial</title>
		<link>https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/localizacion-de-varios-almacenes-mediante-agrupacion-geoespacial/</link>
					<comments>https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/localizacion-de-varios-almacenes-mediante-agrupacion-geoespacial/#respond</comments>
		
		<dc:creator><![CDATA[Bryan Salazar López]]></dc:creator>
		<pubDate>Thu, 14 Oct 2021 19:54:29 +0000</pubDate>
				<category><![CDATA[Actualidad]]></category>
		<category><![CDATA[Análisis de datos]]></category>
		<category><![CDATA[Diseño y distribución en planta]]></category>
		<category><![CDATA[Gestión de almacenes]]></category>
		<category><![CDATA[Inteligencia artificial]]></category>
		<category><![CDATA[Localización de instalaciones]]></category>
		<category><![CDATA[Logística]]></category>
		<category><![CDATA[Agrupación geoespacial]]></category>
		<category><![CDATA[Centro de masa]]></category>
		<category><![CDATA[Clustering]]></category>
		<category><![CDATA[Localización]]></category>
		<category><![CDATA[Machine learning]]></category>
		<category><![CDATA[Mapa de calor]]></category>
		<category><![CDATA[Mapas de calor]]></category>
		<category><![CDATA[Método del Centro de gravedad]]></category>
		<category><![CDATA[Métodos de localización]]></category>
		<category><![CDATA[Python]]></category>
		<guid isPermaLink="false">https://ingenieriaindustrialonline.com/?p=28444</guid>

					<description><![CDATA[<p>En un artículo anterior, desarrollamos un modelo capaz de determinar la localización de una instalación (almacén), de acuerdo a un conjunto de ubicaciones existentes (clientes); estas ubicaciones tenían una ponderación determinada (peso, por ejemplo demanda), y basamos nuestro desarrollo en el algoritmo de Centro de Gravedad. El valor agregado del modelo consistía en la integración &#8230;</p>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/localizacion-de-varios-almacenes-mediante-agrupacion-geoespacial/">Localización de varios almacenes mediante agrupación geoespacial</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></description>
										<content:encoded><![CDATA[
		<div id="introduccion" data-title="Introducción" class="index-title"></div>
	
<p>En un artículo anterior, desarrollamos un modelo capaz de determinar la localización de una instalación (almacén), de acuerdo a un conjunto de ubicaciones existentes (clientes); estas ubicaciones tenían una ponderación determinada (peso, por ejemplo demanda), y basamos nuestro desarrollo en el algoritmo de Centro de Gravedad.</p>
<p>El valor agregado del modelo consistía en la integración de una capa de mapa de calor (para graficar la densidad), un proceso de geocodificación y el uso de un entorno geográfico real. El alcance de este modelo se encuentra determinado por la localización de una sola instalación (depósito, almacén, etc.), y en los casos en los que se requiera determinar múltiples localizaciones, el modelo no aplica.</p>

		<div class="box info  ">
			<div class="box-inner-block">
				<span class="fa tie-shortcode-boxicon"></span>Para ver el artículo: <a href="https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/mapas-de-calor-y-algoritmo-de-centro-de-gravedad-utilizando-python/" target="_blank" rel="noopener"><strong>Mapas de calor y Algoritmo de Centro de Gravedad utilizando Python</strong></a>
			</div>
		</div>
	
<p>La pregunta siguiente que nos hacemos es <em>¿Cómo determinar la localización de múltiples instalaciones?</em> En realidad, hay muchas respuestas para este interrogante, y gran parte de ellas conducen a la <strong>agrupación geoespacial</strong> (Clustering).</p>
<h2>¿Qué es la agrupación geoespacial (Clustering)?</h2>

		<div id="que-es-la-agrupacion-geoespacial-clustering" data-title="¿Qué es la agrupación geoespacial (Clustering)?" class="index-title"></div>
	
<p>La agrupación geoespacial es un método que se utiliza para asociar un conjunto de objetos espaciales en grupos denominados «<em>clusters</em>«. Los objetos que conforman cada grupo presentan un grado de similitud asociado a un atributo o varios atributos en particular.</p>
<p>El objetivo de la agrupación geoespacial, consiste en determinar una relación entre atributos espaciales (coordenadas, ubicación) y no espaciales (demanda, por ejemplo).</p>
<p>En la literatura encontraremos varios tipos de agrupación geoespacial, cada uno con un enfoque particular, y un campo de aplicación específico; entre los cuales podemos encontrar:</p>

		<div class="lightbulb tie-list-shortcode">
<ul>
<li>Agrupación de particiones</li>
<li>Agrupación jerárquica</li>
<li>Agrupación <em>Fuzzy</em></li>
<li>Agrupación basada en densidad</li>
</ul>

		</div>
	
<p>En nuestro caso, que pretendemos determinar la localización de varias instalaciones, considerando la ponderación y ubicación de los puntos existentes, requerimos de un modelo capaz de relacionar atributos espaciales (coordenadas) y no espaciales (peso de cada nodo). Que nos permita, primero agrupar los puntos dados (ubicaciones), y eventualmente, aplicar un algoritmo de <a href="https://ingenieriaindustrialonline.com/diseno-y-distribucion-en-planta/metodo-del-centro-de-gravedad/" target="_blank" rel="noopener"><strong>Centro de Gravedad</strong></a>, para determinar localizaciones potenciales.</p>
<p>Para tales efectos, vamos a utilizar la <strong>agrupación de particiones</strong>, que se caracteriza, entre otras, por:</p>

		<div class="checklist tie-list-shortcode">
<ul>
<li>Agrupar los puntos espaciales en subconjuntos</li>
<li>Cada punto agrupado pertenece solo a un subconjunto (clúster)</li>
<li>Cada subconjunto tiene al menos un punto</li>
</ul>

		</div>
	
<p>Vale la pena destacar que en cuanto a la agrupación de participaciones, en esta categoría encontraremos varios métodos de partición, y nosotros utilizaremos el método <em><strong>K-Means</strong></em>, un algoritmo de aprendizaje automático (Machine Learning) no supervisado. Para ello utilizaremos <em>Python</em>.</p>
<figure id="attachment_28445" aria-describedby="caption-attachment-28445" style="width: 299px" class="wp-caption aligncenter"><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/clustering.png" alt="clustering" width="299" height="290" class=" wp-image-28445" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/clustering.png 471w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/clustering-300x291.png 300w" sizes="(max-width: 299px) 100vw, 299px" /><figcaption id="caption-attachment-28445" class="wp-caption-text">Agrupación por particiones</figcaption></figure>
<p>Para sintetizar, el objetivo de este artículo será el de emplear un algoritmo de aprendizaje automático capaz de agrupar nuestros nodos en <em>clusters</em>, de acuerdo a atributos espaciales (coordenadas) y no espaciales (ponderación); para luego, utilizar un algoritmo de Centro de Gravedad en cada <em>clúster</em> para determinar la localización de múltiples instalaciones (almacenes, depósitos, etc.).</p>
<p>En el desarrollo de este ejercicio emplearemos:</p>

		<div class="plus tie-list-shortcode">
<ul>
<li><em><strong>Colaboratory</strong>: </em>Este es un entorno de programación y ejecución virtual de Python desarrollado por Google. Nos permitirá no tener la necesidad de realizar ninguna instalación en nuestros equipos. Todo lo que desarrollemos lo ejecutaremos en un cuaderno virtual.</li>
<li><strong><em>Python</em></strong>: Este será el lenguaje de programación que vamos a utilizar, y advertimos: No es necesario tener conocimientos previos, y el objetivo del artículo no es convertirnos en programadores expertos. Utilizaremos fragmentos de códigos, librerías disponibles, y explicaremos lo necesario para configurar nuestro desarrollo de acuerdo a los objetivos específicos de nuestros modelos.</li>
<li><strong><em>SkLearn</em></strong>: Las librerías son a <em>Python</em>, lo que las <em>apps </em>son a un teléfono celular. Esta es quizá una de las características más a tractivas de este lenguaje: Casi que existe una librería para cada necesidad. En este caso, <em>SKLearn</em>, es una librería que integra un conjunto de métodos de aprendizaje automático y minería de datos.</li>
<li><em><strong>K-Means</strong>: </em>Este es un módulo de <em>SKLearn</em> que contiene el algoritmo de agrupación <em>KMeans,</em> el cual separa muestras en <em>n</em> grupos de varianza igual, minimizando un criterio conocido como inercia o suma de cuadrados dentro del grupo.</li>
<li><em><strong>Matplotlib</strong>: </em>Es una biblioteca completa para crear visualizaciones estáticas, animadas e interactivas en Python. Nos permitirá visualizar nuestros nodos y nuestras localizaciones solución.</li>
<li><strong><em>Pandas</em></strong>: <span>Es un paquete de Python que proporciona estructuras de datos rápidas, y flexibles, diseñadas para que el trabajo con datos estructurados (tabulares, multidimensionales, potencialmente heterogéneos) y de series de tiempo sea fácil e intuitivo.</span></li>
<li><em><strong>Numpy</strong>: </em>Es una librería que nos permitirá efectuar operaciones matriciales en Python.</li>
</ul>

		</div>
	
<hr />
<p>Para desarrollar estas herramientas, vamos a plantear un caso típico de localización de múltiples instalaciones a partir de la consideración de otros nodos (nodos de demanda, por ejemplo).</p>
<h2>Caso de aplicación</h2>

		<div id="caso-de-aplicacion" data-title="Caso de aplicación" class="index-title"></div>
	
<blockquote class=" quote-simple "><p>El Departamento de Desarrollo Sostenible de la ciudad de Cali se encuentra implementando una estrategia piloto de recolección de aceite de cocina usado. Ha articulado este proyecto con una Universidad, la cual desarrolló 4 contenedores inteligentes (BIN’s) para la disposición del bioresiduo.</p></blockquote>
<blockquote class=" quote-simple "><p>En investigaciones asociadas, la Universidad ha determinado que el reciclaje del aceite es un problema de densidad; esto quiere decir que es vital la ubicación de los contenedores (cobertura), para así mismo optimizar el proceso de disposición y recolección. El proyecto piloto piensa articular a las instituciones de educación como puntos potenciales de recolección. Por medio de las instituciones piensan socializar el programa con la comunidad. El primer reto del proyecto consiste en determinar la ubicación de los contenedores inteligentes (4 unidades). La información relacionada con las instituciones de educación que hacen parte del programa (ubicación geográfica / población estudiantil), se detalla a continuación:</p></blockquote>
<table width="611">
<tbody>
<tr>
<td width="80">Nodo</td>
<td width="224">Lugar (Colegios)</td>
<td width="127">Latitud</td>
<td width="100">Longitud</td>
<td width="80">Peso</td>
</tr>
<tr>
<td>0</td>
<td> Comfandi San Nicolás</td>
<td>3,453591118</td>
<td>-76,52254886</td>
<td>1494</td>
</tr>
<tr>
<td>1</td>
<td> Mayor de Santiago de Cali</td>
<td>3,451577758</td>
<td>-76,51023216</td>
<td>908</td>
</tr>
<tr>
<td>2</td>
<td> Municipal Comfandi</td>
<td>3,448107915</td>
<td>-76,51074714</td>
<td>697</td>
</tr>
<tr>
<td>3</td>
<td> Internado San Carlos</td>
<td>3,446994135</td>
<td>-76,51525325</td>
<td>1714</td>
</tr>
<tr>
<td>4</td>
<td> León de Greiff</td>
<td>3,447979402</td>
<td>-76,49993247</td>
<td>1731</td>
</tr>
<tr>
<td>5</td>
<td> Nuestra Señora de la Anunciación</td>
<td>3,445152112</td>
<td>-76,49641342</td>
<td>2297</td>
</tr>
<tr>
<td>6</td>
<td> Fernando de Aragón</td>
<td>3,437355603</td>
<td>-76,51383704</td>
<td>1265</td>
</tr>
<tr>
<td>7</td>
<td> Casa Evangélica</td>
<td>3,437955337</td>
<td>-76,52299947</td>
<td>1658</td>
</tr>
<tr>
<td>8</td>
<td> San Alberto Magno</td>
<td>3,433028941</td>
<td>-76,52707643</td>
<td>604</td>
</tr>
<tr>
<td>9</td>
<td> Santa María Goretty</td>
<td>3,433414486</td>
<td>-76,50720662</td>
<td>416</td>
</tr>
<tr>
<td>10</td>
<td> San Alberto Magno</td>
<td>3,433157456</td>
<td>-76,5267331</td>
<td>1584</td>
</tr>
<tr>
<td>11</td>
<td> San Ignacio de Loyola</td>
<td>3,431786629</td>
<td>-76,51733464</td>
<td>2350</td>
</tr>
<tr>
<td>12</td>
<td> Nuestro Futuro</td>
<td>3,430629992</td>
<td>-76,50360174</td>
<td>964</td>
</tr>
<tr>
<td>13</td>
<td> Sabio Caldas</td>
<td>3,429087807</td>
<td>-76,51660508</td>
<td>329</td>
</tr>
<tr>
<td>14</td>
<td> CREAD</td>
<td>3,425060978</td>
<td>-76,51488847</td>
<td>774</td>
</tr>
<tr>
<td>15</td>
<td> Licomtec</td>
<td>3,416664559</td>
<td>-76,51673383</td>
<td>1818</td>
</tr>
<tr>
<td>16</td>
<td>  Nuestra Señora De La Providencia</td>
<td>3,419534772</td>
<td>-76,49591989</td>
<td>1530</td>
</tr>
<tr>
<td>17</td>
<td> Real Suizo</td>
<td>3,415208029</td>
<td>-76,49323768</td>
<td>2106</td>
</tr>
<tr>
<td>18</td>
<td> Nuevo Edén</td>
<td>3,415722099</td>
<td>-76,53383559</td>
<td>330</td>
</tr>
<tr>
<td>19</td>
<td> Católico</td>
<td>3,413066071</td>
<td>-76,53984374</td>
<td>976</td>
</tr>
<tr>
<td>20</td>
<td> Santa María Stella</td>
<td>3,427031556</td>
<td>-76,55134505</td>
<td>1975</td>
</tr>
<tr>
<td>21</td>
<td> Santa Isabel</td>
<td>3,40805355</td>
<td>-76,50817223</td>
<td>936</td>
</tr>
<tr>
<td>22</td>
<td> Compartir</td>
<td>3,431957663</td>
<td>-76,47495575</td>
<td>1563</td>
</tr>
<tr>
<td>23</td>
<td> Lancaster</td>
<td>3,400770816</td>
<td>-76,55177421</td>
<td>1219</td>
</tr>
<tr>
<td>24</td>
<td> Parroquial Divino Salvador</td>
<td>3,397086588</td>
<td>-76,54259033</td>
<td>1954</td>
</tr>
<tr>
<td>25</td>
<td> Reyes Católicos</td>
<td>3,393316667</td>
<td>-76,53735466</td>
<td>399</td>
</tr>
<tr>
<td>26</td>
<td> Liceo Anglo del Valle</td>
<td>3,387318719</td>
<td>-76,51975937</td>
<td>1741</td>
</tr>
<tr>
<td>27</td>
<td> Laurence</td>
<td>3,383420238</td>
<td>-76,52078934</td>
<td>1111</td>
</tr>
<tr>
<td>28</td>
<td> Los Almendros</td>
<td>3,381278208</td>
<td>-76,52023144</td>
<td>1826</td>
</tr>
<tr>
<td>29</td>
<td> Bautista</td>
<td>3,37720834</td>
<td>-76,52327843</td>
<td>1772</td>
</tr>
<tr>
<td>30</td>
<td> Lacordaire</td>
<td>3,378150837</td>
<td>-76,54460736</td>
<td>1965</td>
</tr>
<tr>
<td>31</td>
<td> General José María Córdoba</td>
<td>3,393573314</td>
<td>-76,54932805</td>
<td>841</td>
</tr>
<tr>
<td>32</td>
<td> El Hogar</td>
<td>3,390745864</td>
<td>-76,5503151</td>
<td>770</td>
</tr>
<tr>
<td>33</td>
<td> Americano</td>
<td>3,379093255</td>
<td>-76,54688187</td>
<td>650</td>
</tr>
<tr>
<td>34</td>
<td> Santa Filomena</td>
<td>3,401969935</td>
<td>-76,51345082</td>
<td>1401</td>
</tr>
<tr>
<td>35</td>
<td> Tomás Vasconi</td>
<td>3,403040928</td>
<td>-76,5173132</td>
<td>1474</td>
</tr>
<tr>
<td>36</td>
<td> República del Salvador</td>
<td>3,404454636</td>
<td>-76,52143308</td>
<td>1926</td>
</tr>
<tr>
<td>37</td>
<td> Los Andes</td>
<td>3,429601077</td>
<td>-76,53761216</td>
<td>1566</td>
</tr>
<tr>
<td>38</td>
<td>Villacolombia</td>
<td>3,445493943</td>
<td>-76,50169202</td>
<td>2354</td>
</tr>
<tr>
<td>39</td>
<td>Las Américas</td>
<td>3,449220822</td>
<td>-76,50594064</td>
<td>2043</td>
</tr>
<tr>
<td>40</td>
<td>SantaFe</td>
<td>3,442238267</td>
<td>-76,50988885</td>
<td>2333</td>
</tr>
<tr>
<td>41</td>
<td>Evaristo García</td>
<td>3,440781776</td>
<td>-76,51752778</td>
<td>696</td>
</tr>
<tr>
<td>42</td>
<td>Alfredo Vasquez Cobo</td>
<td>3,435598366</td>
<td>-76,5164549</td>
<td>1073</td>
</tr>
<tr>
<td>43</td>
<td>Ciudad de Cali</td>
<td>3,431143181</td>
<td>-76,51272126</td>
<td>1275</td>
</tr>
<tr>
<td>44</td>
<td>INEM</td>
<td>3,482761991</td>
<td>-76,49976083</td>
<td>1485</td>
</tr>
<tr>
<td>45</td>
<td>Olaya Herrera</td>
<td>3,478178519</td>
<td>-76,51280709</td>
<td>1470</td>
</tr>
<tr>
<td>46</td>
<td>Guillermo Valencia</td>
<td>3,47449459</td>
<td>-76,5136654</td>
<td>1248</td>
</tr>
<tr>
<td>47</td>
<td>José Ignacio Rengifo</td>
<td>3,471624543</td>
<td>-76,5136654</td>
<td>2160</td>
</tr>
<tr>
<td>48</td>
<td>Santo Tomás</td>
<td>3,45830227</td>
<td>-76,5164549</td>
<td>1776</td>
</tr>
<tr>
<td>49</td>
<td>La Merced</td>
<td>3,46271449</td>
<td>-76,5024645</td>
<td>706</td>
</tr>
<tr>
<td>50</td>
<td>Pedro Antonio Molina</td>
<td>3,482804827</td>
<td>-76,48761579</td>
<td>2369</td>
</tr>
<tr>
<td>51</td>
<td>Santa Librada</td>
<td>3,46228612</td>
<td>-76,52302095</td>
<td>2498</td>
</tr>
<tr>
<td>52</td>
<td>República de Israel</td>
<td>3,463656904</td>
<td>-76,51053258</td>
<td>1510</td>
</tr>
<tr>
<td>53</td>
<td>San Vicente Paul</td>
<td>3,466227117</td>
<td>-76,50950261</td>
<td>2330</td>
</tr>
<tr>
<td>54</td>
<td>Manuel María Mallarino</td>
<td>3,456760129</td>
<td>-76,48851701</td>
<td>1464</td>
</tr>
<tr>
<td>55</td>
<td>Sebastían de Belalcazar</td>
<td>3,460229941</td>
<td>-76,48521253</td>
<td>628</td>
</tr>
<tr>
<td>56</td>
<td>Liceo Departamental</td>
<td>3,423860462</td>
<td>-76,5385563</td>
<td>364</td>
</tr>
<tr>
<td>57</td>
<td>Libardo Madrid</td>
<td>3,422061154</td>
<td>-76,54383489</td>
<td>2439</td>
</tr>
<tr>
<td>58</td>
<td>Metropolitano Santa Anita</td>
<td>3,401691038</td>
<td>-76,54218265</td>
<td>1815</td>
</tr>
<tr>
<td>59</td>
<td>San José</td>
<td>3,396935816</td>
<td>-76,55031511</td>
<td>2230</td>
</tr>
</tbody>
</table>
<hr />
<p>Para tales efectos, desarrollaremos un modelo que apoye el análisis preliminar y la localización de los múltiples contenedores. También, que tenga la capacidad de predecir el grupo (clúster) al que pertenecería un nodo nuevo.</p>
<hr />
<h3>Paso 1: Crear el entorno de trabajo en Colaboratory</h3>

		<div id="paso-1-crear-el-entorno-de-trabajo-en-colaboratory" data-title="Paso 1: Crear el entorno de trabajo en Colaboratory" class="index-title"></div>
	
<p><span>Lo primero que vamos a hacer consiste en crear un entorno de trabajo en <em>Google</em> </span><em>Colaboratory</em><span>, así que vayamos allá: </span><a href="https://colab.research.google.com/#create=true" target="_blank" rel="noopener"><em><strong>Abrir cuaderno nuevo</strong></em></a><span>.</span></p>
<p>Verán que tienen un lienzo para programar el modelo, así que en este cuaderno podemos ir generando las líneas de código que explicaremos en los pasos siguientes.</p>
<h3>Paso 2: Importar las librerías necesarias</h3>

		<div id="paso-2-importar-las-librerias-necesarias" data-title="Paso 2: Importar las librerías necesarias" class="index-title"></div>
	
<p>Respecto a las librerías, en la introducción del artículo hicimos una descripción de la funcionalidad de cada una, veamos como importarlas en nuestro entorno:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Importar las librerías necesarias
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans</code></pre>
</div>
<p>De esta manera, tenemos todo lo necesario para empezar a desarrollar nuestro código.</p>
<h3>Paso 3: Importar los datos desde Excel</h3>

		<div id="paso-3-importar-los-datos-desde-excel" data-title="Paso 3: Importar los datos desde Excel" class="index-title"></div>
	
<p>De acuerdo a las necesidades del modelo, podemos desarrollar un código que permita la entrada manual de la información, la captura de los datos desde entornos digitales (Internet, por ejemplo), o podemos, desde luego, alimentar nuestro modelo con información contenida en documentos externos, como es el caso de un archivo de Microsoft Excel.</p>
<p>Esta puede considerarse como una de las ventajas de utilizar <em>Python, </em>su capacidad de integrarse con cualquier fuente de datos. En nuestro caso, toda la información se encuentra contenida en un documento de Excel, el cual presenta el siguiente formato:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/datos_excel.png" alt="datos_excel" width="612" height="241" class="size-full wp-image-28446 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/datos_excel.png 612w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/datos_excel-300x118.png 300w" sizes="(max-width: 612px) 100vw, 612px" /></p>
<p>Ya veremos cómo, parte de estos datos son prescindibles y otros indispensables.</p>

		<div class="box download  ">
			<div class="box-inner-block">
				<span class="fa tie-shortcode-boxicon"></span>Puedes descargar el documento de Excel que utilizamos en este ejemplo: <a href="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/cluster.xlsx" target="_blank" rel="noopener"><strong>Base de datos</strong></a>
			</div>
		</div>
	
<p>En <em>Colaboratory</em>, el siguiente fragmento permitirá cargar un archivo al entorno de ejecución:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>from google.colab import files

uploaded = files.upload()

for fn in uploaded.keys():
  print('User uploaded file "{name}" with length {length} bytes'.format(
      name=fn, length=len(uploaded[fn])))</code></pre>
</div>
<p>Al ejecutar este fragmento de código, se abrirá una ventana emergente del explorador que permitirá cargar nuestra base de datos, en nuestro caso el archivo tienen el nombre de <em>cluster.xlsx.</em></p>
<p>La siguiente línea de código permitirá almacenar los datos contenidos en el documento en un <em>Dataframe</em> de nuestro entorno, dentro de la variable <em>data</em>.</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Leer el documento de Excel y almacenar los datos en la variable data
data = pd.read_excel('cluster.xlsx')</code></pre>
</div>
<p>Podemos en cualquier momento confirmar si la carga de los datos se ha realizado correctamente, para eso imprimiremos las primeras cinco filas del  <em>DataFrame:</em></p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>data.head()</code></pre>
</div>
<p>Al ejecutar esta instrucción tenemos la siguiente salida:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/head_cluster.png" alt="head_cluster" width="539" height="237" class="size-full wp-image-28448 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/head_cluster.png 539w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/head_cluster-300x132.png 300w" sizes="(max-width: 539px) 100vw, 539px" /></p>
<h3>Paso 4: Graficar los puntos dados iniciales (Nodos)</h3>

		<div id="paso-4-graficar-los-puntos-dados-iniciales-nodos" data-title="Paso 4: Graficar los puntos dados iniciales (Nodos)" class="index-title"></div>
	
<p>Nuestros puntos iniciales, o las ubicaciones de partida son las instituciones de educación que nos otorga el planteamiento del problema.</p>
<p>Para graficar estos puntos utilizamos el sistema de coordenadas disponible: Latitud y Longitud. Así entonces, debemos extraer estos datos de la hoja de cálculo (<em>DataFrame</em>) que hemos importado al modelo; convertir estas coordenadas en una matriz bidimensional (Latitud y Longitud) y graficar los puntos:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Graficar los nodos dados (ubicaciones)
Lat= data['Latitud']
Lon = data['Longitud']
Peso = data['Peso']
X = []
for i in range(len(data['Latitud'])):
    X.append(Lat[i])
    X.append(Lon[i])

X = np.array(X)

X = X.reshape(-1, 2,)


plt.scatter(Lat, Lon)
plt.show()</code></pre>
</div>
<p>Al ejecutar este fragmento de código, tendremos:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/ubicaciones-iniciales.png" alt="ubicaciones iniciales" width="393" height="248" class="size-full wp-image-28449 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/ubicaciones-iniciales.png 393w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/ubicaciones-iniciales-300x189.png 300w" sizes="(max-width: 393px) 100vw, 393px" /></p>
<p>Podemos apreciar cómo se encuentran dispersos los nodos iniciales, formando parte un mismo conjunto que es la población. Las coordenadas son latitud y longitud. Los nodos son, una vez más recordamos, las instituciones educativas, de acuerdo al caso de estudio.</p>
<h3>Paso 5: Agrupar los nodos geoespacialmente mediante Machine Learning</h3>

		<div id="paso-5-agrupar-los-nodos-geoespacialmente-mediante-machine-learning" data-title="Paso 5: Agrupar los nodos geoespacialmente mediante Machine Learning" class="index-title"></div>
	
<p>Cuando mencionamos Machine Learning, a menudo la primera consideración que tenemos es de complejidad. Pues bien, muchos de los algoritmos que hemos utilizado durante décadas son en realidad de aprendizaje automático, como por ejemplo la <a href="https://ingenieriaindustrialonline.com/pronostico-de-la-demanda/regresion-lineal-en-python/"><em><strong>regresión lineal</strong></em></a>. El algoritmo de <em>K-Means </em>que emplearemos de forma automatizada mediante <em>Python</em>, utiliza centroides que minimizan la inercia, o el criterio de suma de cuadrados de cada clúster:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/formula_cluster.png" alt="formula_cluster" width="203" height="65" class="size-full wp-image-28451 aligncenter" /></p>
<p>Me pareció conveniente explicar un poco la teoría, pero vayamos a la práctica. Toda vez que tenemos los nodos del modelo, lo siguiente que debemos indicar es la cantidad de agrupaciones que queremos (clúster). Ya que el problema plantea la disposición de 4 contenedores, vamos a dividir la población de nodos en 4 conjuntos.</p>
<p>Luego, correremos el algoritmo <em>K-Means, </em>veamos cómo:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Ejecutar el algoritmo KMeans
clusters = 4
KMean = KMeans(n_clusters=clusters)
KMean_g = KMean.fit_predict(X)
KMean.fit(X)</code></pre>
</div>
<p>Lo siguiente que haremos será establecer los centroides de cada clúster, es decir, la ubicación de nuestros contendores. En primer lugar, el modelo nos dará las coordenadas. Utilizaremos la siguiente línea de código:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Determinar los centroides de cada clúster
KMean.cluster_centers_</code></pre>
</div>
<p>Al ejecutarla tendremos:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centroides.png" alt="centroides" width="436" height="129" class="size-full wp-image-28452 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centroides.png 436w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centroides-300x89.png 300w" sizes="(max-width: 436px) 100vw, 436px" /></p>
<p>Estas son las coordenadas que indican el centro de cada uno de nuestros grupos de nodos. Y teóricamente ahí deberíamos disponer nuestros contenedores.</p>
<h3>Paso 6: Graficar los clusters y los centroides (Localizaciones múltiples)</h3>

		<div id="paso-6-graficar-los-clusters-y-los-centroides-localizaciones-multiples" data-title="Paso 6: Graficar los clusters y los centroides (Localizaciones múltiples)" class="index-title"></div>
	
<p>El siguiente paso consiste en graficar todas las coordenadas que ya tenemos: tantos los nodos iniciales, como los los centroides, o las localizaciones solución. Veamos cómo:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Graficar todas las coordenadas (Puntos y centroides)
plt.scatter(X[:,0], X[:,1], c=KMean_g) #Puntos iniciales

#Centroides
plt.scatter(KMean.cluster_centers_[0][0], KMean.cluster_centers_[0][1], s=50, c='r')
plt.scatter(KMean.cluster_centers_[1][0], KMean.cluster_centers_[1][1], s=50, c='r')
plt.scatter(KMean.cluster_centers_[2][0], KMean.cluster_centers_[2][1], s=50, c='r')
plt.scatter(KMean.cluster_centers_[3][0], KMean.cluster_centers_[3][1], s=50, c='r')</code></pre>
</div>
<p>Al ejecutar el fragmento tendremos:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centroides_II.png" alt="centroides_II" width="393" height="248" class="size-full wp-image-28453 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centroides_II.png 393w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centroides_II-300x189.png 300w" sizes="(max-width: 393px) 100vw, 393px" /></p>
<p>Vemos cómo se han efectuado las agrupaciones de los nodos (colores), y los marcadores rojos indican los centroides. Este debería ser el final de nuestro desarrollo, sin embargo, no sé si lo han notado, siempre hemos hablado de centroides, nunca de centros de gravedad o centros de masa. Bien, no sé si también han identificado que en ningún momento hemos considerado el peso de cada nodo, en este caso la <em>población estudiantil </em>de cada institución.</p>
<p><em>¿Esto qué implica?</em> Implica que hemos desarrollado un modelo que tiene exclusivamente consideraciones espaciales. De hecho, visualmente puede observarse cómo, básicamente los centroides se ubican en lo que podría considerarse el medio de cada clúster, sin ninguna consideración adicional aparente, por lo menos a la vista.</p>
<p>Pues bien, vamos a solucionarlo, para ello debemos retocar algunos de los pasos anteriores:</p>
<h3>Paso 5 (Recargado): Agrupar los nodos geoespacialmente mediante Machine Learning (Considerando atributos espaciales y no espaciales)</h3>

		<div id="paso-5-recargado-agrupar-los-nodos-geoespacialmente-mediante-machine-learning-considerando-atributos-espaciales-y-no-espaciales" data-title="Paso 5 (Recargado): Agrupar los nodos geoespacialmente mediante Machine Learning (Considerando atributos espaciales y no espaciales)" class="index-title"></div>
	
<p>Dentro de nuestro marco de datos (<em>DataFrame</em>) tenemos la información relacionada al peso de cada nodo (<em>Población estudiantil</em>). Pues bien, vamos a considerarla al ejecutar el algoritmo <em>K-Means</em>.</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Ejecutar el algoritmo KMeans (Considerando el peso de los nodos)
clusters = 4
KMean = KMeans(n_clusters=clusters)
KMean_g = KMean.fit_predict(X)
KMean.fit(X, sample_weight=Peso)</code></pre>
</div>
<p>Lo siguiente que haremos será establecer los centroides de cada clúster, que ahora sí serán Centros de Gravedad; es decir, la ubicación de nuestros contendores. En primer lugar, el modelo nos dará las coordenadas. Utilizaremos la siguiente línea de código:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Determinar los centroides de cada clúster
KMean.cluster_centers_</code></pre>
</div>
<p>Al ejecutarla tendremos:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centroides_recargado.png" alt="centroides_recargado" width="436" height="129" class="size-full wp-image-28454 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centroides_recargado.png 436w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centroides_recargado-300x89.png 300w" sizes="(max-width: 436px) 100vw, 436px" /></p>
<p>Los centroides han cambiado, ahora son centros de gravedad afectados por el peso de cada nodo. Es posible que incluso haya cambiado la agrupación de los nodos (composición de los clusters).</p>
<h3>Paso 6 (Recargado): Graficar los clusters y los Centros de Gravedad (Localizaciones múltiples)</h3>

		<div id="paso-6-recargado-graficar-los-clusters-y-los-centros-de-gravedad-localizaciones-multiples" data-title="Paso 6 (Recargado): Graficar los clusters y los Centros de Gravedad (Localizaciones múltiples)" class="index-title"></div>
	
<p>El siguiente paso consiste en graficar todas las coordenadas que ya tenemos: tantos los nodos iniciales, como los los Centros de Gravedad, o las localizaciones solución. Veamos cómo:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Graficar todas las coordenadas (Puntos y centroides)
plt.scatter(X[:,0], X[:,1], c=KMean_g) #Puntos iniciales

#Centroides
plt.scatter(KMean.cluster_centers_[0][0], KMean.cluster_centers_[0][1], s=50, c='r')
plt.scatter(KMean.cluster_centers_[1][0], KMean.cluster_centers_[1][1], s=50, c='r')
plt.scatter(KMean.cluster_centers_[2][0], KMean.cluster_centers_[2][1], s=50, c='r')
plt.scatter(KMean.cluster_centers_[3][0], KMean.cluster_centers_[3][1], s=50, c='r')</code></pre>
</div>
<p>Al ejecutar el fragmento tendremos:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Centros-de-gravedad.png" alt="Centros de gravedad" width="393" height="248" class="size-full wp-image-28455 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Centros-de-gravedad.png 393w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Centros-de-gravedad-300x189.png 300w" sizes="(max-width: 393px) 100vw, 393px" /></p>
<p>El resultado respecto a los centroides es diferente. La consideración de un atributo no espacial, en este caso el peso de cada nodo (<em>población estudiantil de cada institución educativa</em>), ha incidido en la ubicación propuesta de las localizaciones solución. Y este debería ser el final de nuestro modelo.</p>
<p>Hemos logrado agrupar nuestros puntos iniciales en clusters, y luego hemos determinado los Centros de Gravedad de cada uno de los clusters.</p>
<p>Por último, veamos una característica de la librería <em>K-Means </em>Análisis predictivo de nodos en clusters, es decir, de acuerdo a unas coordenadas dadas, podemos estimar el grupo al que pertenecerá un nuevo nodo.</p>
<h3>Paso 7: Predicción de clusters</h3>

		<div id="paso-7-prediccion-de-clusters" data-title="Paso 7: Predicción de clusters" class="index-title"></div>
	
<p>En primer lugar ejecutaremos una línea que nos permite identificar a cada nodo dentro de un grupo. Ya que tenemos 4 grupos, estos se identificarán de la siguiente manera: 0, 1, 2, 3.</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>KMean.labels_</code></pre>
</div>
<p>Al ejecutar esta línea tendremos:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/grupos_nodos.png" alt="grupos_nodos" width="622" height="111" class="size-full wp-image-28456 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/grupos_nodos.png 622w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/grupos_nodos-300x54.png 300w" sizes="(max-width: 622px) 100vw, 622px" /></p>
<p>Vemos como cada una de las 60 instituciones educativas (nodos), tienen un identificador de grupo dentro del modelo.</p>
<p>Ahor, dadas las coordenadas de un nuevo nodo, podemos predecir el grupo al cual pertenecerá:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>sample_test=np.array([-3.433,-76.22])
second_test=sample_test.reshape(1, -1)
KMean.predict(second_test)</code></pre>
</div>
<p>Al ejecutar este fragmento tendremos:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/nodos_prediccion.png" alt="nodos_prediccion" width="483" height="118" class="size-full wp-image-28457 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/nodos_prediccion.png 483w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/nodos_prediccion-300x73.png 300w" sizes="(max-width: 483px) 100vw, 483px" /></p>
<p>Es decir, el algoritmo predice que de acuerdo a las coordenada dadas, el nuevo nodo formaría parte del clúster 0.</p>
<hr />
<p>Pudimos observar cómo varía el resultado dependiendo de la consideración de atributos netamente geoespaciales, y de atributos no espaciales, como la ponderación de cada nodo.</p>

		<div class="post-content-slideshow-outer">
			<div class="post-content-slideshow">

			<div class="loader-overlay"><div class="spinner-circle"></div></div>

				<div class="tie-slick-slider">

			<div class="slide post-content-slide">
				 Atributos geoespaciales |</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centroides_II.png" alt="centroides_II" width="393" height="248" class="size-full wp-image-28453 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centroides_II.png 393w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centroides_II-300x189.png 300w" sizes="(max-width: 393px) 100vw, 393px" /></p>

			</div><!-- post-content-slide -->
		

			<div class="slide post-content-slide">
				 Atributos geoespaciales y de ponderación |</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Centros-de-gravedad.png" alt="Centros de gravedad" width="393" height="248" class="size-full wp-image-28455 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Centros-de-gravedad.png 393w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Centros-de-gravedad-300x189.png 300w" sizes="(max-width: 393px) 100vw, 393px" /></p>

			</div><!-- post-content-slide -->
		


					<div class="slider-nav-wrapper">
						<ul class="tie-slider-nav"></ul>
					</div>
				</div><!-- tie-slick-slider -->
			</div><!-- post-content-slideshow -->
		</div><!-- post-content-slideshow-outer -->
	
<h2>Integración con mapas de calor y entornos geográficos reales</h2>
<p>Uno de los puntos negativos del modelo que acabamos de desarrollar es quizá que no nos permite visualizar gráficamente la densidad de los puntos. Si observamos las gráficas, todos los puntos parecen tener el mismo tamaño, y si bien esta no es una consideración para el funcionamiento del algoritmo; en el análisis preliminar quisiéramos tener esta herramienta. Otra consideración adicional sería la posibilidad de graficar todos nuestros puntos, y los centros de gravedad de cada (clúster) en un entorno geográfico real.</p>
<p>Pues bien, una de las ventajas fundamentales de <em>Python </em>consiste en que podemos integrar distintos desarrollos en nuestros modelos, tal es el caso del desarrollo que efectúanos en un artículo anterior (<a href="https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/mapas-de-calor-y-algoritmo-de-centro-de-gravedad-utilizando-python/"><strong>Mapas de calor y Entornos geográficos reales</strong></a>); de tal manera que podamos complementar nuestro modelo.</p>
<p>No vamos a profundizar en la librerías, ni en la definición de las variables, para eso recomendamos leer el artículo. Veamos entonces, como complementamos este modelo:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>import folium
import statistics
from folium.plugins import HeatMap
mediaLong = statistics.mean(Lon)
mediaLat = statistics.mean(Lat)

# Crear un objeto de mapa base Map()
mapa = folium.Map(location=[mediaLat, mediaLong], zoom_start = 13)

# Crear una capa de mapa de calor
mapa_calor = HeatMap( list(zip(Lat, Lon, data["Peso"])),
                   min_opacity=0.2,
                   max_val=data["Peso"].max(),
                   radius=50, 
                   blur=50, 
                   max_zoom=1)

#Creamos el marcador de Centro de Gravedad
tooltip = 'Centro de gravedad'
folium.Marker([KMean.cluster_centers_[0][0], KMean.cluster_centers_[0][1]], popup="Centro", tooltip = tooltip).add_to(mapa)
folium.Marker([KMean.cluster_centers_[1][0], KMean.cluster_centers_[1][1]], popup="Centro", tooltip = tooltip).add_to(mapa)
folium.Marker([KMean.cluster_centers_[2][0], KMean.cluster_centers_[2][1]], popup="Centro", tooltip = tooltip).add_to(mapa)
folium.Marker([KMean.cluster_centers_[3][0], KMean.cluster_centers_[3][1]], popup="Centro", tooltip = tooltip).add_to(mapa)

# Adherimos la capa de mapa de calor al mapa principal
mapa_calor.add_to(mapa)
mapa</code></pre>
</div>
<p>Al ejecutar este fragmento tendremos el siguiente resultado:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Mapa-de-calorII.png" alt="Mapa de calorII" width="700" height="394" class="size-full wp-image-28492 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Mapa-de-calorII.png 700w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Mapa-de-calorII-300x169.png 300w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/Mapa-de-calorII-390x220.png 390w" sizes="(max-width: 700px) 100vw, 700px" /></p>
<p>Ahora tenemos un modelo capaz de <strong>agrupar nuestros nodos en clusters</strong> de acuerdo a atributos geoespaciales; capaz de <strong>determinar los centros de gravedad</strong> de cada cluster de acuerdo a atributos no espaciales (en nuestro caso la población de los nodos); capaz de complementarse con una capa de visualización de <strong>mapa de calor</strong> que nos permite apreciar la densidad y todo esto <strong>puede visualizarse en un entorno geográfico real</strong>.</p>
<h2>Consideraciones finales</h2>

		<div id="consideraciones-finales" data-title="Consideraciones finales" class="index-title"></div>
	
<p>Ya lo expresamos anteriormente, la base del algoritmo <em>K-Means </em>es la consideración y minimización de la inercia, y en espacios de muy altas dimensiones, las distancias suelen inflarse, ya que esta no es una medida normalizada.</p>
<p>Sin embargo, para los efectos que hemos empleado, el algoritmo suele arrojar resultados satisfactorios.</p>
<p>El código completo de este desarrollo lo puedes encontrar en nuestro cuaderno: <a href="https://colab.research.google.com/drive/1qboyfxT1kdjn9XiqXudZBf74dUtxwCkn?usp=sharing" target="_blank" rel="noopener"><em><strong>Localización de varias instalaciones mediante agrupación geoespacial y Centro de Gravedad (Python)</strong></em></a>.</p>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/localizacion-de-varios-almacenes-mediante-agrupacion-geoespacial/">Localización de varios almacenes mediante agrupación geoespacial</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/localizacion-de-varios-almacenes-mediante-agrupacion-geoespacial/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Mapas de calor y Algoritmo de Centro de Gravedad utilizando Python</title>
		<link>https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/mapas-de-calor-y-algoritmo-de-centro-de-gravedad-utilizando-python/</link>
					<comments>https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/mapas-de-calor-y-algoritmo-de-centro-de-gravedad-utilizando-python/#comments</comments>
		
		<dc:creator><![CDATA[Bryan Salazar López]]></dc:creator>
		<pubDate>Wed, 13 Oct 2021 04:14:19 +0000</pubDate>
				<category><![CDATA[Actualidad]]></category>
		<category><![CDATA[Análisis de datos]]></category>
		<category><![CDATA[Diseño y distribución en planta]]></category>
		<category><![CDATA[Gestión de almacenes]]></category>
		<category><![CDATA[Localización de instalaciones]]></category>
		<category><![CDATA[Logística]]></category>
		<category><![CDATA[Centro de masa]]></category>
		<category><![CDATA[Localización]]></category>
		<category><![CDATA[Localización de plantas]]></category>
		<category><![CDATA[Mapa de calor]]></category>
		<category><![CDATA[Mapas de calor]]></category>
		<category><![CDATA[Método del Centro de gravedad]]></category>
		<category><![CDATA[Métodos de localización]]></category>
		<category><![CDATA[Python]]></category>
		<guid isPermaLink="false">https://ingenieriaindustrialonline.com/?p=28400</guid>

					<description><![CDATA[<p>Ya en artículos anteriores hemos abordado el uso de tecnología como herramienta que permita desarrollar problemas de análisis preliminar y localización de instalaciones, con el objetivo de incrementar el nivel de aplicabilidad de estas herramientas, utilizando algunos entornos de programación, algunos sistemas de información geográfica, librerías de geocodificación; etc., que nos facilitan la adopción de &#8230;</p>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/mapas-de-calor-y-algoritmo-de-centro-de-gravedad-utilizando-python/">Mapas de calor y Algoritmo de Centro de Gravedad utilizando Python</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></description>
										<content:encoded><![CDATA[
		<div id="introduccion" data-title="Introducción" class="index-title"></div>
	
<p>Ya en artículos anteriores hemos abordado el uso de tecnología como herramienta que permita desarrollar problemas de análisis preliminar y localización de instalaciones, con el objetivo de incrementar el nivel de aplicabilidad de estas herramientas, utilizando algunos entornos de programación, algunos sistemas de información geográfica, librerías de geocodificación; etc., que nos facilitan la adopción de soluciones basadas en entornos reales.</p>
<p>Algunos de los artículos que hemos desarrollado al respecto son:</p>

		<div class="checklist tie-list-shortcode">
<ul>
<li><a href="https://ingenieriaindustrialonline.com/diseno-y-distribucion-en-planta/metodo-de-localizacion-de-instalaciones-utilizando-mapas-de-calor/" target="_blank" rel="noopener"><strong>Mapas de calor utilizando Google Maps (Javascript)</strong></a></li>
<li><a href="https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/metodo-del-centro-de-gravedad-utilizando-r/" target="_blank" rel="noopener"><strong>Método de Centro de Gravedad utilizando R</strong></a></li>
</ul>

		</div>
	
<p>En estos artículos mencionamos que los mapas de calor aplicados a la localización de instalaciones, <strong>son capas de visualización</strong> que no nos proporcionan como resultado una localización específica; <strong>sí nos proporcionan una visión de densidad basada en un factor de ponderación</strong> establecido (Peso). Sin embargo, al utilizar mapas de calor en entornos como por ejemplo <em>Python, </em>podemos integrar a esta herramienta, un método heurístico que nos proporcione una localización específica, como por ejemplo el <a href="https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/metodo-del-centro-de-gravedad-utilizando-r/" target="_blank" rel="noopener"><strong>Centro de Gravedad</strong></a>.</p>
<p>El objetivo de este artículo será el de utilizar mapas de calor y el algoritmo de Centro de gravedad de manera simultánea a través de <em>Python</em>; como herramienta de análisis preliminar y de localización de una instalación.</p>
<p>En el desarrollo de este ejercicio emplearemos:</p>

		<div class="plus tie-list-shortcode">
<ul>
<li><em><strong>Colaboratory</strong>: </em>Este es un entorno de programación y ejecución virtual de Python desarrollado por Google. Nos permitirá no tener la necesidad de realizar ninguna instalación en nuestros equipos. Todo lo que desarrollemos lo ejecutaremos en un cuaderno virtual.</li>
<li><strong><em>Python</em></strong>: Este será el lenguaje de programación que vamos a utilizar, y advertimos: No es necesario tener conocimientos previos, y el objetivo del artículo no es convertirnos en programadores expertos. Utilizaremos fragmentos de códigos, librerías disponibles, y explicaremos lo necesario para configurar nuestro desarrollo de acuerdo a los objetivos específicos de nuestros modelos.</li>
<li><strong><em>Geopy</em></strong>: Las librerías son a <em>Python</em>, lo que las <em>apps </em>son a un teléfono celular. Esta es quizá una de las características más a tractivas de este lenguaje: Casi que existe una librería para cada necesidad. En este caso, <em>Geopy</em>, es una librería que nos permitirá geocodificar un conjunto de ubicaciones. Es decir, a partir de un listado de ciudades o direcciones, poder obtener sus coordenadas de latitud y longitud que nos permitan georeferenciar dichas ubicaciones.</li>
<li><em><strong>Statistics</strong>: </em>Esta es una librería con un conjunto de herramientas estadísticas que nos permitirán hallar algunas medidas centrales como soporte de los modelos.</li>
<li><em><strong>Folium</strong>: </em>Esta librería nos permitirá graficar sobre un sistema de geolocalización, emplear la capa de mapas de calor y georeferenciar el centro de gravedad del modelo.</li>
<li><strong><em>Pandas</em></strong>: <span>Es un paquete de Python que proporciona estructuras de datos rápidas, y flexibles, diseñadas para que el trabajo con datos estructurados (tabulares, multidimensionales, potencialmente heterogéneos) y de series de tiempo sea fácil e intuitivo.</span></li>
<li><em><strong>Numpy</strong>: </em>Es una librería que nos permitirá efectuar operaciones matriciales en Python.</li>
</ul>

		</div>
	
<hr />
<p>Para desarrollar estas herramientas, vamos a plantear un caso típico de localización de una instalación (por ejemplo un depósito) a partir de la consideración de otras instalaciones (nodos de demanda, por ejemplo).</p>
<h2>Caso de aplicación</h2>

		<div id="caso-de-aplicacion" data-title="Caso de aplicación" class="index-title"></div>
	
<blockquote class=" quote-simple "><p>La empresa Bio-Food está desarrollando un nuevo modelo de negocio en la ciudad de Cali, Colombia. Este consiste en abastecer de comida saludable a la comunidad por medio de Vending Machines (Máquinas expendedoras). En las etapas de formulación de negocio, algo quedó muy claro: El éxito de su modelo consiste en maximizar la disponibilidad de todos los SKUs en cantidades suficientes. Algunas de las referencias son productos perecederos, de manera que consideran que algunos de sus equipos requerirán visitas diarias de reposición, y otros quizá sean surtidos en más de dos ocasiones por día.</p></blockquote>
<blockquote class=" quote-simple "><p>La fase inicial de su proyecto consideró la instalación de 13 equipos expendedores en 13 instituciones de educación superior de la ciudad. La logística inicial de su proyecto fue caótica (en fase piloto), algunos equipos funcionaron como sub-bodegas; algunos equipos fueron abastecidos directamente por los proveedores; y consideran la instalación de una bodega principal desde la cual serán abastecidas todas las máquinas que tienen disponibles.</p></blockquote>
<blockquote class=" quote-simple "><p>La fase inicial del proyecto arrojó información alrededor del volumen de ventas de cada equipo. Por esta razón, el departamento de logística considera utilizar esta información para efectuar un análisis preliminar y establecer la localización de la bodega principal. A continuación, se relacionan los movimientos de los equipos (media de unidades vendidas por día):</p></blockquote>
<table width="664">
<tbody>
<tr>
<td width="80" style="text-align: center;"><strong>Máquina</strong></td>
<td width="459" style="text-align: center;"><strong>Institución / Lugar</strong></td>
<td width="125" style="text-align: center;"><strong>Unidades vendidas</strong></td>
</tr>
<tr>
<td style="text-align: center;">1</td>
<td style="text-align: center;">PONTIFICIA UNIVERSIDAD JAVERIANA</td>
<td style="text-align: center;">1800</td>
</tr>
<tr>
<td style="text-align: center;">2</td>
<td style="text-align: center;">UNIVERSIDAD DEL VALLE</td>
<td style="text-align: center;">1650</td>
</tr>
<tr>
<td style="text-align: center;">3</td>
<td style="text-align: center;">UNIVERSIDAD SAN BUENAVENTURA</td>
<td style="text-align: center;">1110</td>
</tr>
<tr>
<td style="text-align: center;">4</td>
<td style="text-align: center;">UNIVERSIDAD ICESI</td>
<td style="text-align: center;">1540</td>
</tr>
<tr>
<td style="text-align: center;">5</td>
<td style="text-align: center;">UNIVERSIDAD SANTIAGO DE CALI</td>
<td style="text-align: center;">820</td>
</tr>
<tr>
<td style="text-align: center;">6</td>
<td style="text-align: center;">UNIVERSIDAD AUTÓNOMA DE OCCIDENTE</td>
<td style="text-align: center;">1020</td>
</tr>
<tr>
<td style="text-align: center;">7</td>
<td style="text-align: center;">UNIVERSIDAD COOPERATIVA DE COLOMBIA</td>
<td style="text-align: center;">635</td>
</tr>
<tr>
<td style="text-align: center;">8</td>
<td style="text-align: center;">FUNDACIÓN UNIVERSITARIA SAN MARTÍN</td>
<td style="text-align: center;">420</td>
</tr>
<tr>
<td style="text-align: center;">9</td>
<td style="text-align: center;">UNIVERSIDAD LIBRE</td>
<td style="text-align: center;">569</td>
</tr>
<tr>
<td style="text-align: center;">10</td>
<td style="text-align: center;">UNIVERSIDAD ANTONIO NARIÑO</td>
<td style="text-align: center;">350</td>
</tr>
<tr>
<td style="text-align: center;">11</td>
<td style="text-align: center;">UNICATOLICA &#8211; FUNDACION UNIVERSITARIA CATÓLICA LUMEN GENTIUM</td>
<td style="text-align: center;">620</td>
</tr>
<tr>
<td style="text-align: center;">12</td>
<td style="text-align: center;">CECEP</td>
<td style="text-align: center;">800</td>
</tr>
<tr>
<td style="text-align: center;">13</td>
<td style="text-align: center;">UNIVERSIDAD OBRERA</td>
<td style="text-align: center;">250</td>
</tr>
</tbody>
</table>
<hr />
<p>Utilizar el algoritmo de Centro de Gravedad puede servir como referencia para establecer una ubicación tentativa. Sin embargo, las posibilidades de que las coordenadas solución correspondan con un espacio disponible para la ubicación de la instalación son, de verdad, muy pocas.</p>
<p>Por esta razón, es interesante complementar este modelo mediante una capa de visualización de mapas de calor, que consideren la densidad del volumen de ventas de los equipos. De esta manera, puede complementarse el análisis preliminar para la localización de la bodega principal.</p>
<hr />
<h3>Paso 1: Crear el entorno de trabajo en Colaboratory</h3>

		<div id="paso-1-crear-el-entorno-de-trabajo-en-colaboratory" data-title="Paso 1: Crear el entorno de trabajo en Colaboratory" class="index-title"></div>
	
<p><span>Lo primero que vamos a hacer consiste en crear un entorno de trabajo en <em>Google</em> </span><em>Colaboratory</em><span>, así que vayamos allá: </span><a href="https://colab.research.google.com/#create=true" target="_blank" rel="noopener"><em><strong>Abrir cuaderno nuevo</strong></em></a><span>.</span></p>
<p>Verán que tienen un lienzo para programar el modelo, así que en este cuaderno podemos ir generando las líneas de código que explicaremos en los pasos siguientes.</p>
<h3>Paso 2: Importar las librerías necesarias</h3>

		<div id="paso-2-importar-las-librerias-necesarias" data-title="Paso 2: Importar las librerías necesarias" class="index-title"></div>
	
<p>Respecto a las librerías, en la introducción del artículo hicimos una descripción de la funcionalidad de cada una, veamos como importarlas en nuestro entorno:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code># importar las librerías necesarias
import pandas as pd
import numpy as np
import folium
import statistics
from folium.plugins import HeatMap
import geopy
from geopy.extra.rate_limiter import RateLimiter</code></pre>
</div>
<p>De esta manera, tenemos todo lo necesario para empezar a desarrollar nuestro código.</p>
<h3>Paso 3: Importar los datos desde Excel</h3>

		<div id="paso-3-importar-los-datos-desde-excel" data-title="Paso 3: Importar los datos desde Excel" class="index-title"></div>
	
<p>De acuerdo a las necesidades del modelo, podemos desarrollar un código que permita la entrada manual de la información, la captura de los datos desde entornos digitales (Internet, por ejemplo), o podemos, desde luego, alimentar nuestro modelo con información contenida en documentos externos, como es el caso de un archivo de Microsoft Excel.</p>
<p>Esta puede considerarse como una de las ventajas de utilizar <em>Python, </em>su capacidad de integrarse con cualquier fuente de datos. En nuestro caso, toda la información se encuentra contenida en un documento de Excel, el cual presenta el siguiente formato:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/datos.png" alt="datos" width="730" height="241" class="wp-image-28403 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/datos.png 853w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/datos-300x99.png 300w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/datos-768x253.png 768w" sizes="(max-width: 730px) 100vw, 730px" /></p>

		<div class="box download  ">
			<div class="box-inner-block">
				<span class="fa tie-shortcode-boxicon"></span>Puedes descargar el documento de Excel que utilizamos en este ejemplo: <a href="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/vending_machines-1.xlsx" target="_blank" rel="noopener"><strong>Base de datos</strong></a>
			</div>
		</div>
	
<p>En <em>Colaboratory</em>, el siguiente fragmento permitirá cargar un archivo al entorno de ejecución:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>from google.colab import files

uploaded = files.upload()

for fn in uploaded.keys():
  print('User uploaded file "{name}" with length {length} bytes'.format(
      name=fn, length=len(uploaded[fn])))</code></pre>
</div>
<p>Al ejecutar este fragmento de código, se abrirá una ventana emergente del explorador que permitirá cargar nuestra base de datos, en nuestro caso el archivo tienen el nombre de <em>vending_machines.xlsx.</em></p>
<p>La siguiente línea de código permitirá almacenar los datos contenidos en el documento en un <em>Dataframe</em> de nuestro entorno, dentro de la variable <em>data</em>.</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>#Leer el documento de Excel y almacenar los datos en la variable data
data = pd.read_excel('vending_machines.xlsx')</code></pre>
</div>
<h3>Paso 4: Geocodificar las ubicaciones</h3>

		<div id="paso-4-geocodificar-las-ubicaciones" data-title="Paso 4: Geocodificar las ubicaciones" class="index-title"></div>
	
<p>Nosotros podemos partir desde la disponibilidad de las coordenadas geográficas de los puntos disponibles (Equipos expendedores). En cuyo caso, geocodificar las ubicaciones no sería necesario. Sin embargo, en nuestro ejemplo, disponemos del nombre de cada institución donde se encuentran ubicados los equipos, así como la ciudad y el país (todos los equipos se encuentran en la misma ciudad); y es necesario geocodificar estos puntos para obtener las coordenadas de latitud y longitud de cada ubicación.</p>
<p>Para lograrlo, utilizaremos el servicio de la librería <em>Geopy (Llamado Nominatim)</em>, el cual puede geocodificar nuestras ubicaciones. El servicio funciona de una manera sencilla, recibe una cadena con la información de nuestra ubicación, por ejemplo: ciudad, país, nombre del lugar; y devuelve las coordenadas de latitud y longitud asociadas a cada cadena.</p>
<p>Las siguientes líneas en primer lugar construyen cada cadena por punto (dirección), es decir, concatenan los datos (país, ciudad y nombre del lugar), y luego son geocodificados por <em>Geopy</em>. Veamos:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code># fusionamos los datos país, ciudad y lugar en una misma cadena de dirección
geopy.geocoders.options.default_user_agent = "my-application"
data["direccion"] = data["pais"] + ", " + data["ciudad"] + ", " + data["Institución / Lugar"]
#Envíamos los datos a geocodificación
servicio = geopy.Nominatim()
data["coordenadas"] = data["direccion"].apply(RateLimiter(servicio.geocode,min_delay_seconds=1))</code></pre>
</div>
<p>Pueden apreciar que el código establece que tanto las cadenas con las direcciones concatenadas, como las respuestas en manera de coordenadas, queden dentro del mismo <em>DataFrame </em>donde se encuentran los datos de entrada del modelo. Podemos en cualquier momento confirmar si la geocodificación se ha realizado correctamente, para eso imprimiremos las primeras cinco filas del  <em>DataFrame:</em></p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>data.head()</code></pre>
</div>
<p>Al ejecutar esta instrucción tenemos la siguiente salida:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/head.png" alt="head" width="1300" height="185" class="alignnone size-full wp-image-28405" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/head.png 1300w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/head-300x43.png 300w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/head-1024x146.png 1024w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/head-768x109.png 768w" sizes="(max-width: 1300px) 100vw, 1300px" /></p>
<p>Podemos observar cómo bajo la columna &#8216;<em>direccion&#8217; </em>se han concatenado las columnas <em>&#8216;pais&#8217;, &#8216;ciudad&#8217; e &#8216;Institución / Lugar&#8217;</em>, tal como lo establecimos previamente. Así mismo, podemos observar la respuesta de <em>Geopy </em> bajo la columna <em>&#8216;coordenadas&#8217;</em>.</p>
<h3>Paso 5: Calcular el Centro de Gravedad</h3>

		<div id="paso-5-calcular-el-centro-de-gravedad" data-title="Paso 5: Calcular el Centro de Gravedad" class="index-title"></div>
	
<p>El algoritmo de <a href="https://ingenieriaindustrialonline.com/diseno-y-distribucion-en-planta/metodo-del-centro-de-gravedad/" target="_blank" rel="noopener"><strong>Centro de Gravedad</strong></a> es relativamente sencillo, mucho más cuando se cuenta con los datos debidamente organizados. Las operaciones son sencillas, y en <em>Python</em>, se pueden desarrollar fácilmente mediante productos de matrices.</p>
<p>Ahora bien, la base del algoritmo son las coordenadas. En la respuesta obtenida desde <em>Geopy</em>, que se encuentra contenida en la columna <em>&#8216;coordenadas&#8217;</em> del <em>DataFrame &#8216;data&#8217;, </em>hay información adicional a las coordenadas necesarias. De hecho el servicio nos devuelve un nombre del lugar, una subregión, puede mostrarnos alguna nomenclatura y claro está, las coordenadas de latitud y longitud. Por tal razón, lo primero que debemos hacer es extraer las coordenadas de latitud y longitud, para eso utilizaremos las siguientes líneas:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code># Extraer las coordenadas de latitud y longitud en dos variables separadas (listas)
longs = [coord.longitude for coord in data["coordenadas"]]
lats = [coord.latitude for coord in data["coordenadas"]]</code></pre>
</div>
<p>Una vez que tengamos las coordenadas de todos los puntos en un par de variables separadas, procedemos a crear nuestro algoritmo de centro de gravedad:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>centro_gravedad = {}
centro_gravedad['longs'] = np.dot(longs, data['Unidades vendidas']) / np.sum(data['Unidades vendidas'])
centro_gravedad['lats'] = np.dot(lats, data['Unidades vendidas']) / np.sum(data['Unidades vendidas'])</code></pre>
</div>
<p>De esta manera, dentro del arreglo <em>&#8216;centro_gravedad&#8217; </em>deberán quedar las coordenadas solución. Recordemos que este algoritmo utiliza puntos ponderados, en este caso el peso que determina la ponderación está dado por el volumen de ventas de cada equipo (<em>&#8216;Unidades vendidas&#8217;</em>).</p>
<p>Podemos ver el resultado, imprimiendo la variable <em>&#8216;centro_gravedad&#8217;:</em></p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>print(centro_gravedad)</code></pre>
</div>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro_gravedad.png" alt="centro_gravedad" width="618" height="85" class="size-full wp-image-28406 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro_gravedad.png 618w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro_gravedad-300x41.png 300w" sizes="(max-width: 618px) 100vw, 618px" /></p>
<p>Estas son las coordenadas solución del método de Centro de Gravedad. Sin embargo, recordemos que debemos complementar el desarrollo del modelo mediante un mapa de calor.</p>
<h3>Paso 6: Graficar la capa del mapa de calor y el marcador de Centro de Gravedad</h3>

		<div id="paso-6-graficar-la-capa-del-mapa-de-calor-y-el-marcador-de-centro-de-gravedad" data-title="Paso 6: Graficar la capa del mapa de calor y el marcador de Centro de Gravedad" class="index-title"></div>
	
<p>En este caso utilizaremos la librería <em>Folium </em>para ambos fines: la capa del mapa de calor, y el marcador de Centro de Gravedad.</p>
<p>Lo primero que haremos será calcular la media de las latitudes y las longitudes para centrar el mapa que obtendremos.</p>
<p>Lo segundo que haremos será crear nuestro mapa, el cual configuraremos con las medidas centrales y un zoom inicial que podemos modificar de acuerdo a nuestras necesidades.</p>
<p>Lo tercero que haremos será crear nuestra capa de mapa de calor, utilizaremos como peso las <em>&#8216;Unidades vendidas&#8217;</em> para ponderar cada punto del mapa (Vending Machines). Configuramos algunos parámetros a nuestro criterio como la <em>opacidad, la intensidad, el radio de cada punto</em>.</p>
<p>Por último crearemos el marcador de Centro de Gravedad, para ello utilizaremos las coordenadas solución que hallamos en el paso anterior.</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code># Calcular la media de las latitudes y las longitudes para centrar el mapa
mediaLong = statistics.mean(longs)
mediaLat = statistics.mean(lats)

# Crear un objeto de mapa base Map()
mapa = folium.Map(location=[mediaLat, mediaLong], zoom_start = 12)

# Crear una capa de mapa de calor
mapa_calor = HeatMap( list(zip(lats, longs, data["Unidades vendidas"])),
                   min_opacity=0.2,
                   max_val=data["Unidades vendidas"].max(),
                   radius=50, 
                   blur=50, 
                   max_zoom=1)

#Creamos el marcador de Centro de Gravedad
tooltip = 'Centro de gravedad'
folium.Marker([centro_gravedad['lats'], centro_gravedad['longs']], popup="Centro", tooltip = tooltip).add_to(mapa)

# Adherimos la capa de mapa de calor al mapa principal
mapa_calor.add_to(mapa)
mapa</code></pre>
</div>
<p>Al ejecutar estas líneas tendremos el siguiente resultado:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro_gravedad_mapa_calor.png" alt="centro_gravedad_mapa_calor" width="1404" height="760" class="alignnone size-full wp-image-28407" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro_gravedad_mapa_calor.png 1404w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro_gravedad_mapa_calor-300x162.png 300w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro_gravedad_mapa_calor-1024x554.png 1024w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro_gravedad_mapa_calor-768x416.png 768w" sizes="(max-width: 1404px) 100vw, 1404px" /></p>
<p>Podemos utilizar el zoom para explorar diversas visualizaciones de densidad:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro_gravedad_mapa_calor_II.png" alt="centro_gravedad_mapa_calor_II" width="1351" height="747" class="alignnone size-full wp-image-28408" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro_gravedad_mapa_calor_II.png 1351w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro_gravedad_mapa_calor_II-300x166.png 300w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro_gravedad_mapa_calor_II-1024x566.png 1024w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro_gravedad_mapa_calor_II-768x425.png 768w" sizes="(max-width: 1351px) 100vw, 1351px" /></p>
<p>El código completo de este desarrollo lo puedes encontrar en nuestro cuaderno: <a href="https://colab.research.google.com/drive/1CWCVFeh6NibQGTg62zF0lg1A9Qow0rld?usp=sharing" target="_blank" rel="noopener"><em><strong>Mapas de Calor y Centro de Gravedad</strong></em></a>.</p>
<hr />
<p>En este caso, y a diferencia del artículo <em><strong><a href="https://ingenieriaindustrialonline.com/diseno-y-distribucion-en-planta/metodo-de-localizacion-de-instalaciones-utilizando-mapas-de-calor/" target="_blank" rel="noopener">mapas de calor utilizando Google Maps</a>, </strong></em>empleamos una capa de visualización de densidad de cada punto, y simultáneamente identificamos unas coordenadas solución de una localización de acuerdo al modelo de Centro de Gravedad (Centro de masa). De esta forma, construimos una herramienta un poco más robusta que permite soportar los procesos de análisis preliminar de localización de instalaciones, ambientada en un entorno geográfico real.</p>
<p>Así mismo, en el desarrollo de la herramienta empleamos algunas instrucciones que nos permiten automatizar procesos de georeferenciación, y de uso de datos a partir de fuentes diversas.</p>
<hr />
<p><span>El alcance de este modelo se encuentra determinado por la localización de una sola instalación (depósito, almacén, etc.), y en los casos en los que se requiera determinar múltiples localizaciones, el modelo no aplica.</span></p>

		<div class="box info  ">
			<div class="box-inner-block">
				<span class="fa tie-shortcode-boxicon"></span>Para ver un modelo para varias localizaciones: <a href="https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/localizacion-de-varios-almacenes-mediante-agrupacion-geoespacial/"><em><strong>Localización de varios almacenes mediante agrupación espacial</strong></em></a>
			</div>
		</div>
	
<p>La entrada <a href="https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/mapas-de-calor-y-algoritmo-de-centro-de-gravedad-utilizando-python/">Mapas de calor y Algoritmo de Centro de Gravedad utilizando Python</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/mapas-de-calor-y-algoritmo-de-centro-de-gravedad-utilizando-python/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
		<item>
		<title>¿Qué son los gemelos digitales? Aplicaciones en la Industria</title>
		<link>https://ingenieriaindustrialonline.com/transformacion-digital/que-son-los-gemelos-digitales-aplicaciones-en-la-industria/</link>
					<comments>https://ingenieriaindustrialonline.com/transformacion-digital/que-son-los-gemelos-digitales-aplicaciones-en-la-industria/#respond</comments>
		
		<dc:creator><![CDATA[Bryan Salazar López]]></dc:creator>
		<pubDate>Wed, 06 Oct 2021 23:26:47 +0000</pubDate>
				<category><![CDATA[Actualidad]]></category>
		<category><![CDATA[Análisis de datos]]></category>
		<category><![CDATA[Automatización]]></category>
		<category><![CDATA[Industria 4.0]]></category>
		<category><![CDATA[Inteligencia artificial]]></category>
		<category><![CDATA[Logística]]></category>
		<category><![CDATA[Transformación digital]]></category>
		<category><![CDATA[Big data]]></category>
		<category><![CDATA[Gemelos digitales]]></category>
		<category><![CDATA[IIoT]]></category>
		<category><![CDATA[IoT]]></category>
		<guid isPermaLink="false">https://ingenieriaindustrialonline.com/?p=28281</guid>

					<description><![CDATA[<p>Los principales impulsores de lo que denominamos Industria 4.0 son sin duda la conectividad y el desarrollo vertiginoso de las tecnologías de la información. Uno de los principales factores que nos traen hasta aquí es la incorporación – cada vez mayor – de sensores. La capacidad de integrar sensores a casi cualquier dispositivo hace que &#8230;</p>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/transformacion-digital/que-son-los-gemelos-digitales-aplicaciones-en-la-industria/">¿Qué son los gemelos digitales? Aplicaciones en la Industria</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></description>
										<content:encoded><![CDATA[
		<div id="introduccion" data-title="Introducción" class="index-title"></div>
	
<p>Los principales impulsores de lo que denominamos <a href="https://ingenieriaindustrialonline.com/industria-4-0/de-que-se-trata-todo-esto-de-industria-40/"><strong>Industria 4.0</strong></a> son sin duda la <strong>conectividad</strong> y el desarrollo vertiginoso de las <strong>tecnologías de la información</strong>. Uno de los principales factores que nos traen hasta aquí es la incorporación – cada vez mayor – de sensores. La capacidad de integrar sensores a casi cualquier dispositivo hace que también aumente la capacidad de recopilar y transmitir datos en tiempo real, para su posterior análisis. El avance de la tecnología de sensores, su diseño cada vez más compacto, sus precios cada vez más bajos, y su capacidad de integración cada vez mayor, hace que su aplicación trascienda del uso en sistemas de producción, e incluso podemos interactuar con ellos día a día en un entorno doméstico; a este fenómeno se le conoce como la <strong>Internet de las Cosas (IoT)</strong> y la <strong>Internet Industrial de las Cosas (IIoT)</strong>.</p>

		<div class="box info  ">
			<div class="box-inner-block">
				<span class="fa tie-shortcode-boxicon"></span>IoT no es el único conjunto de tecnologías de conectividad y seguimiento. Más adelante mencionaremos algunas de las tecnologías disponibles.
			</div>
		</div>
	
<p><em>¿Qué logramos a través de la Internet de las Cosas? ¿Cómo puede representar un factor de transformación digital?</em> Básicamente, las proyecciones al año 2021 estiman que cerca de 4.000 millones de personas estén conectadas a Internet; y el siguiente paso implica que no solo las personas, sino las cosas, los procesos, las instalaciones o los negocios en general, puedan conectarse entre sí, formando una red de redes; en este caso, las proyecciones estiman que más de 50 billones de objetos estén conectados a lo que hoy conocemos como Internet (2021).</p>
<p><em>¿Qué evolución estamos viendo en este contexto?</em> En este sentido, considero que estamos siendo testigos de la materialización de muchas de las ideas más disruptivas de los 90s y de los años 2000; tal es el caso de los <strong>gemelos digitales</strong> (<em>digital twins</em>).</p>
<p>&nbsp;</p>
<h2>¿Qué es un gemelo digital (digital twin)?</h2>

		<div id="que-es-un-gemelo-digital-digital-twin" data-title="¿Qué es un gemelo digital (digital twin)?" class="index-title"></div>
	
<p>Un gemelo digital <strong>es una representación virtual computarizada de un objeto</strong> (entidad), una persona, un activo, sistema o un servicio físico. En esencia, un objeto físico transmite la información deseada la cual es procesada y proyectada en un entorno digital, esta información se actualiza periódicamente a través de los datos de sensores, a través de tecnologías de seguimiento, y en teoría, una mayor frecuencia de actualización y una mayor calidad de los datos, mejorará la precisión del modelo digital.</p>
<p>Los gemelos digitales pueden contener y rastrear el contexto histórico de los objetos digitalizados, y esto puede resultar útil para para probar, registrar, reparar determinados comportamientos de la entidad que se duplica digitalmente, e incluso predecir el comportamiento futuro de la misma. Uno de los principales atractivos de los gemelos digitales consiste en la posibilidad de conectar a un objeto físico para recopilar datos en tiempo real de este. El concepto ha existido desde los primeros días de la computación, pero se está volviendo cada vez más importante en el siglo XXI a medida que se desarrollan las tecnologías habilitadoras, como las tecnologías de seguimiento, Big Data y Cloud Computing.</p>
<p>En teoría, los gemelos digitales deberían funcionar exactamente como el objeto o el sistema del mundo real; para lograrlo, debe articular tres conceptos claves: el objeto (la entidad física), la conectividad entre el mundo físico y el mundo digital (mediante sensores, actuadores y controladores) y la simulación (el entorno 3D que sirve como interfaz entre los usuarios y el gemelo digital).</p>

		<div class="box info  ">
			<div class="box-inner-block">
				<span class="fa tie-shortcode-boxicon"></span>La primera introducción formal del concepto de crear una representación virtual de un sistema físico ocurrió en 2002: Los investigadores de la Universidad de Michigan propusieron crear una imagen reflejada computarizada del ciclo de vida real de un producto manufacturado. Su propuesta tenía como objetivo ayudar a los fabricantes a crear productos de una manera más eficiente y rentable. Fuente: Research Starters
			</div>
		</div>
	
<h2>¿Cuáles son las aplicaciones de los gemelos digitales?</h2>

		<div id="cuales-son-las-aplicaciones-de-los-gemelos-digitales" data-title="¿Cuáles son las aplicaciones de los gemelos digitales?" class="index-title"></div>
	
<p>Una organización puede emplear un gemelo digital en múltiples contextos, por ejemplo, es posible obtener una representación virtual de un automóvil, de los ascensores de una unidad residencial, de las bahías de parqueo de un centro comercial, de una planta completa de producción, etc. En este sentido, los gemelos digitales tienen la capacidad potencial de proporcionar formas eficientes de probar cómo funciona cada unidad digitalizada, como un homólogo de la entidad en el mundo real.</p>
<p>Puede considerarse como una evolución de la simulación convencional, toda vez que los parámetros de cada entidad estarían recibiendo información posiblemente en tiempo real de acuerdo a la conectividad establecida: sensores, tecnologías de seguimiento y parámetros de medición.</p>
<p>Una de las principales aplicaciones de los gemelos digitales es la monitorización de productos en busca de fallas, antes de su salida al mercado; en este orden, sería posible predecir problemas, soportar la identificación de soluciones y probar escenarios a través de los entornos digitales.</p>
<p>El alcance de los gemelos digitales guarda directa relación con la naturaleza de los sensores y la capacidad de procesamiento de los datos, y su ámbito de aplicación dependerá del tipo de información que cada dispositivo pueda obtener y procesar de la entidad física. De acuerdo al desarrollo de la industria de sensores, de los procesadores y de la Big Data, los gemelos digitales tienen ámbitos ilimitados de aplicación: Producción, locaciones administrativas, logística, salud, energía, industria aeroespacial, etc.</p>
<h2>¿Qué tecnología de seguimiento utilizan los gemelos digitales?</h2>

		<div id="que-tecnologia-de-seguimiento-utilizan-los-gemelos-digitales" data-title="¿Qué tecnología de seguimiento utilizan los gemelos digitales?" class="index-title"></div>
	
<p>De acuerdo Michal Ukropec (Experto en gemelos digitales), elegir la mejor tecnología de seguimiento es complicado. Existen en el mercado tecnologías como: GPS, BLE, UWB, RFID, WiFi, IoT o cámaras, las cuales no son excluyentes, pero la elección del conjunto de tecnologías dependerá del contexto de aplicación.</p>
<p>Algunas consideraciones que comparte Michal:</p>

		<div class="checklist tie-list-shortcode">
<ul>
<li>Para un posicionamiento general de alta precisión en interiores, UWB puede ser la opción correcta: hay muchas etiquetas disponibles, montables, portátiles. La infraestructura es más costosa, pero básicamente es posible rastrear casi cualquier cosa.</li>
<li>Para auditoría logística interna / externa parece ser la combinación correcta de BLE y GPS. No es tan preciso, pero la instalación es rápida y fácil (no se necesita entrenamiento especial) y el dispositivo inteligente rastreado le permite además de posicionar también la comunicación bidireccional. Muy efectivo, pero, solo puede rastrear dispositivos inteligentes.</li>
<li>Para el seguimiento de materiales de bajo costo puede ser RFID una buena opción. Solo tiene que considerar sus especificaciones exactas, porque en la mayoría de los casos está limitado solo a georreferenciación y, en ocasiones la legibilidad limitada a etiquetas.</li>
<li>Las tecnologías Wi-Fi/IoT son bastante inexactas (precisión de 15 metros aproximadamente), pero si solo necesita saber si la etiqueta está «en la zona <em>X</em>«, puede ser suficiente.</li>
<li>Los rastreadores de IoT pueden ser muy útiles, porque si eliges <em>LoRaWAN</em>, puedes construir tu propia red, y configurarla de acuerdo a tus necesidades. Puedes enviar mensajes cada minuto, no genera costes de funcionamiento, etc. Genial, pero no hay roaming entre proveedores, por lo que, si necesita rastrear algo a nivel de campo puede ser un problema.</li>
<li>Si elige Sigfox, tiene roaming real, pero la cobertura en interiores puede ser más débil, puede enviar mensaje máximo cada 10 minutos y el sensor no tiene retroalimentación si el mensaje ha llegado.</li>
<li>Con NB -IoT tienes muy buena cobertura, confirmación de mensajes, pero no roaming en la mayoría de los casos y precios más altos.</li>
<li>Las cámaras son un tema especial: La Inteligencia Artificial le permite aportar nuevas características a la logística: seguimiento y conteo de materiales.</li>
</ul>

		</div>
	
<h2>Consideraciones al momento de implementar un gemelo digital</h2>

		<div id="consideraciones-al-momento-de-implementar-un-gemelo-digital" data-title=" Consideraciones al momento de implementar un gemelo digital" class="index-title"></div>
	
<p>Consideremos, por ejemplo, la aplicación de un gemelo digital que represente toda la operación de una planta de producción. Los datos alrededor de la operación llegarán quizá en tiempo real, las líneas reportarán rendimientos, movimientos; las máquinas registrarán su grado de utilización, etc. Los datos que anteriormente estaban disponibles en lotes cada 8, 12, 24 horas, ahora estarán disponibles cada minuto. La pregunta que me surge es <em>¿Qué va a hacer con esa información? ¿La restricción de su proceso de toma de decisiones se ve limitada por la disponibilidad de información en tiempo real? </em>No lo sé, pero es un interrogante que vale la pena formularse, y evocaré a Javier Arévalo (Goldratt Partner) quien hace poco me mencionaba: “Lo que usted no haga bien en papel y lápiz, difícilmente lo hará bien con tecnología”.</p>
<blockquote class=" quote-simple "><p>“Lo que usted no haga bien en papel y lápiz, difícilmente lo hará bien con tecnología”.</p></blockquote>
<p>Es por eso que vale la pena plantearse si la disponibilidad de información en tiempo real de mi sistema (entidad, proceso, producto, etc.) es una necesidad que justifica un proyecto de implementación de gemelos digitales.</p>
<p>El conjunto de datos requerido para la construcción del gemelo digital de un sistema de producción varía de un sistema a otro, sin embargo, puede considerar la información del siguiente cuadro como un caso típico:</p>
<table width="524">
<tbody>
<tr>
<td rowspan="6" width="184">Datos estructurales de la planta</td>
<td width="340">Layout</td>
</tr>
<tr>
<td>Número de máquinas</td>
</tr>
<tr>
<td>Número de Sistemas de Manejo de Materiales (MHS)</td>
</tr>
<tr>
<td>Rutas de los MHS</td>
</tr>
<tr>
<td>Áreas</td>
</tr>
<tr>
<td>Restricciones</td>
</tr>
<tr>
<td rowspan="3" width="184">Datos de manufactura</td>
<td>Tiempos de ciclo</td>
</tr>
<tr>
<td>Tiempos de carga (Setup)</td>
</tr>
<tr>
<td>Calendario de mantenimiento preventivo</td>
</tr>
<tr>
<td rowspan="3" width="184">Datos del flujo de materiales</td>
<td>Rutas y secuencias de productos</td>
</tr>
<tr>
<td>Rutas producto &#8211; MHS</td>
</tr>
<tr>
<td>Redes de transporte detalladas (transportadoras)</td>
</tr>
<tr>
<td rowspan="4">Datos de la producción</td>
<td>Planes de producción</td>
</tr>
<tr>
<td>Calendarios de producción</td>
</tr>
<tr>
<td>Volúmenes de producción</td>
</tr>
<tr>
<td>Tipo de producción (Masiva/Lotes)</td>
</tr>
</tbody>
</table>
<p>Así podemos ver entonces, que el desarrollo de un gemelo digital requiere del conocimiento profundo del objeto físico (entidad, activo, sistema, etc.). Además, de la consideración de las tecnologías de seguimiento, pero sobre todo, del enfoque sistémico que le permita determinar sobre la pertinencia de esta aplicación tecnológica.</p>
<p>&nbsp;</p>
<h2>Caso de aplicación: Whirlpool Corporation (Polonia)</h2>
<p>Whirlpool Corporation en Polonia con 80.000 m², docenas de montacargas y remolcadores. Más de 250 sensores <a data-toggle="tooltip" data-placement="top" class="post-tooltip tooltip-top" title="Real Time Location System">RTLS</a> para el análisis de logística y 60 estaciones de trabajo equipadas con un sistema de pedidos automatizado para la gestión logística. Diagramas de espagueti, análisis de mapas de calor y saturación para identificar cuellos de botella, ineficiencias y otros potenciales de mejora continua.</p>
<p><iframe loading="lazy" width="560" height="315" src="https://www.youtube.com/embed/Y8Mo2mFsiFU" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen="allowfullscreen"></iframe></p>
<hr />
<h2></h2>
<h2>¿Quieres probar demos de gemelos digitales?</h2>
<p>&nbsp;</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/twinzo.png" alt="gemelos digitales" width="634" height="313" class="size-full wp-image-28283 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/twinzo.png 634w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/twinzo-300x148.png 300w" sizes="(max-width: 634px) 100vw, 634px" /></p>
<p>Si quieres probar un demo de gemelo digital desde tu celular, puedes hacerlo a través de:</p>

		<div class="one_half tie-columns">
<p><a href="https://play.google.com/store/apps/details?id=eu.twinzo.digitaltwin" target="_blank" rel="noopener"><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/google-play.png" alt="" width="190" height="59" class="wp-image-28285 size-full aligncenter" /></a></p>

		</div>
	

		<div class="one_half tie-columns last">
<p><a href="https://apps.apple.com/us/app/twinzo-digital-twin/id1561970281" target="_blank" rel="noopener"><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/app-store.png" alt="" width="188" height="59" class="wp-image-28284 size-full aligncenter" /></a></p>

		</div>
		<div class="clearfix"></div>
	
<p>La entrada <a href="https://ingenieriaindustrialonline.com/transformacion-digital/que-son-los-gemelos-digitales-aplicaciones-en-la-industria/">¿Qué son los gemelos digitales? Aplicaciones en la Industria</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ingenieriaindustrialonline.com/transformacion-digital/que-son-los-gemelos-digitales-aplicaciones-en-la-industria/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Método del Centro de gravedad utilizando R</title>
		<link>https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/metodo-del-centro-de-gravedad-utilizando-r/</link>
					<comments>https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/metodo-del-centro-de-gravedad-utilizando-r/#comments</comments>
		
		<dc:creator><![CDATA[Bryan Salazar López]]></dc:creator>
		<pubDate>Tue, 05 Oct 2021 00:17:12 +0000</pubDate>
				<category><![CDATA[Actualidad]]></category>
		<category><![CDATA[Análisis de datos]]></category>
		<category><![CDATA[Diseño y distribución en planta]]></category>
		<category><![CDATA[Localización de instalaciones]]></category>
		<category><![CDATA[Logística]]></category>
		<category><![CDATA[Centro de masa]]></category>
		<category><![CDATA[Localización de Instalaciones]]></category>
		<category><![CDATA[Método del Centro de gravedad]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[R]]></category>
		<guid isPermaLink="false">https://ingenieriaindustrialonline.com/?p=28249</guid>

					<description><![CDATA[<p>Cuando escribí el artículo método del centro de gravedad hice esta anotación: «Recuerdo que cuando utilicé este algoritmo en la Universidad, utilizamos la copia de un mapa de la región, sobre ella trazamos un plano cartesiano, definimos las ubicaciones del caso, registramos las coordenadas y como resultado obtuvimos las coordenadas de la localización ideal. La dificultad subyace &#8230;</p>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/metodo-del-centro-de-gravedad-utilizando-r/">Método del Centro de gravedad utilizando R</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Cuando escribí el artículo <strong><a href="https://ingenieriaindustrialonline.com/diseno-y-distribucion-en-planta/metodo-del-centro-de-gravedad/">método del centro de gravedad</a> </strong>hice esta anotación: «<em>Recuerdo que cuando utilicé este algoritmo en la Universidad, utilizamos la copia de un mapa de la región, sobre ella trazamos un plano cartesiano, definimos las ubicaciones del caso, registramos las coordenadas y como resultado obtuvimos las coordenadas de la localización ideal. La dificultad subyace en la falta de practicidad».</em></p>
<p><span>El objetivo de este artículo es precisamente ese, apoyarnos en las nuevas herramientas que nos proporciona la tecnología, para abordar un problema de localización de una instalación aplicando el algoritmo de centro de gravedad de una manera práctica. Para ello utilizaremos R, de hecho, utilizaremos las librerías de R en un cuaderno virtual de <em>Python</em>.</span></p>

		<div class="box info  ">
			<div class="box-inner-block">
				<span class="fa tie-shortcode-boxicon"></span>R es un entorno y lenguaje de programación con un enfoque al análisis estadístico. 
			</div>
		</div>
	
<p>El resultado de nuestro código nos arrojará la localización, de acuerdo al sistema de coordenadas que empleemos, además de que graficará la misma, y los puntos ponderados del modelo (peso de acuerdo a su demanda, producción, capacidad, etc.).</p>
<div id="cc-m-5713476913" class="j-module n j-text ">
<h3><em>Ejemplo de aplicación del Centro de gravedad</em></h3>
<div class="cc-m-hgrid-column last">
<div id="cc-matrix-1350164513">
<div id="cc-m-5713479913" class="j-module n j-text ">
<p><img decoding="async" class="size-full wp-image-2067 alignleft" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2019/09/Sin-título-58.png" alt="" width="171" height="144" /></p>
<p>La empresa GASOL S.A desea ubicar una instalación intermedia que requiere de disponibilidad de gasolina, desea ubicar esta instalación entre la ciudad de Barrancabermeja y sus principales distribuidores. En el siguiente cuadro se relaciona la información acerca de las coordenadas y el aporte de galones de gasolina de cada distribuidor.</p>
</div>
</div>
</div>
<p><img decoding="async" class="aligncenter size-full wp-image-2068" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2019/09/Sin-título-59.png" alt="" width="419" height="148" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2019/09/Sin-título-59.png 419w, https://ingenieriaindustrialonline.com/wp-content/uploads/2019/09/Sin-título-59-300x106.png 300w" sizes="(max-width: 419px) 100vw, 419px" /></p>
<p><em>Ubicación de las puntos en el plano cartesiano:</em></p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2019/09/Plano-Cartesiano.png" alt="Método de gravedad" width="615" height="279" class="aligncenter wp-image-27319" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2019/09/Plano-Cartesiano.png 2560w, https://ingenieriaindustrialonline.com/wp-content/uploads/2019/09/Plano-Cartesiano-300x136.png 300w, https://ingenieriaindustrialonline.com/wp-content/uploads/2019/09/Plano-Cartesiano-1024x464.png 1024w, https://ingenieriaindustrialonline.com/wp-content/uploads/2019/09/Plano-Cartesiano-768x348.png 768w, https://ingenieriaindustrialonline.com/wp-content/uploads/2019/09/Plano-Cartesiano-1536x696.png 1536w, https://ingenieriaindustrialonline.com/wp-content/uploads/2019/09/Plano-Cartesiano-2048x928.png 2048w" sizes="(max-width: 615px) 100vw, 615px" /></p>
<p>Los cálculos empleados en el algoritmo manual pueden ser consultados en: <a href="https://ingenieriaindustrialonline.com/diseno-y-distribucion-en-planta/metodo-del-centro-de-gravedad/"><strong>Modelo de Centro de Gravedad</strong></a>.</p>
</div>
<h2>Requerimientos para ejecutar el modelo</h2>
<p>En este caso sugerimos utilizar un entorno virtual de programación. Recomendamos el uso de <em><strong>Colaboratory de Google</strong></em>, un entorno que cuenta con todas las herramientas necesarias para nuestros desarrollos en <em>Python</em>. No tendremos que instalar nada en nuestro equipo, y aprovecharemos la potencia de las máquinas de Google, y su capacidad para ejecutar R.</p>
<h2>Programación del modelo de Centro de Gravedad en R</h2>
<p>Vamos a asumir que utilizarán el entorno virtual de <em>Colaboratory</em>, así que vayamos allá: <a href="https://colab.research.google.com/#create=true"><em><strong>Abrir cuaderno nuevo</strong></em></a>.</p>
<p>Ya que este entorno está desarrollado para escribir y ejecutar códigos en <em>Python</em>, lo primero que debemos hacer es ejecutar el siguiente comando en nuestro cuaderno, para así poder utilizar R en nuestro entorno:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>import rpy2
rpy2.__version__
import rpy2.robjects.conversion
%load_ext rpy2.ipython</code></pre>
</div>
<p>Después de eso, cada vez que desee usar R, agregue %%R al comienzo de cada celda. Veamos.</p>
<p>Lo primero que crearemos será a función del cálculo del Centro de Gravedad, la matemática detrás de esto no es nada especial, se trata de un <em>producto cruzado de matrices</em> para cada coordenada, para lo que utilizaremos <em>crossprod</em> de R.</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>%%R 
centro_gravedad &lt;- function(x,y,w){
  c(crossprod(x,w)/sum(w),crossprod(y,w)/sum(w))
}</code></pre>
</div>
<p><em>x </em>= Coordenada en <em>x</em> (Que puede ser una coordenada cartesiana, latitud, etc.)</p>
<p><em>y </em>= Coordenada en <em>y</em> (Que puede ser una coordenada cartesiana, longitud, etc.)</p>
<p><em>w = </em>Representa el peso de cada punto dado (Que puede ser la demanda, la capacidad, la producción)</p>
<p>En nuestro caso, <strong><em>x</em></strong> y <strong><em>y</em></strong> serán coordenadas cartesianas, y <em><strong>w</strong></em> será la capacidad de suministro de gasolina de cada distribuidor. La función anterior calculará el centro de gravedad de acuerdo a los datos de entrada del modelo.</p>
<p>Ahora crearemos el marco de datos (<em>dataframe </em>al cual llamaremos <em>estaciones_df</em>) en el que se consignarán nuestros datos de entrada:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>%%R
estaciones_df &lt;- as.data.frame(matrix(nrow=5,ncol=3))
encabezados(estaciones_df) &lt;- c("x","y","galones")

estaciones_df$x &lt;- c(58.7, 26.2, 32.9, 42.5, 36.4)
estaciones_df$y &lt;- c(4.4, 5.2, 3.8, 4.1, 6.2)
estaciones_df$galones &lt;- c(3800, 2700, 310, 420, 250)</code></pre>
</div>
<p>El código anterior crea un marco de datos (<em>matrix</em>) de 5 filas y 3 columnas. Las filas representan el número de estaciones de gasolina que nos da el ejemplo, y las columnas servirán para consignar 3 valores: <em>coordenada en x, coordenada en y y el suministro de gasolina en galones de cada estación</em>.</p>
<p>Consignaremos los datos de entrada del ejemplo cuidando el orden estricto en el que registramos la información. Al finalizar tendremos toda la información consignada en nuestro marco de datos; para comprobarlo ejecutaremos el siguiente código:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>%%R
(estaciones_df)</code></pre>
</div>
<p>Al ejecutarlo, tendremos la siguiente salida:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/gravedad_1.png" alt="gravedad_1" width="343" height="125" class="size-full wp-image-28250 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/gravedad_1.png 343w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/gravedad_1-300x109.png 300w" sizes="(max-width: 343px) 100vw, 343px" /></p>
<p>Podemos corroborar que la información se ha consignado adecuadamente.</p>
<p>El siguiente paso consiste en calcular el centro de gravedad del modelo, para eso asignaremos los datos de entrada a la función inicial de centro de gravedad:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>%%R
centro_gravedad(estaciones_df$x,estaciones_df$y,estaciones_df$galones)</code></pre>
</div>
<p>Recordemos que de acuerdo a la función inicial, esta necesita 3 argumentos: <em><strong>x</strong></em>, <em><strong>y</strong></em>, <em><strong>w</strong></em> (coordenada en <em>x</em>, coordenada en <em>y</em>, peso). Esta información se encuentra en el marco de datos de entrada (<em>estaciones_df</em>).</p>
<p>Al ejecutarlo, tendremos la siguiente salida:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/gravedad_2.png" alt="gravedad_2" width="464" height="43" class="size-full wp-image-28251 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/gravedad_2.png 464w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/gravedad_2-300x28.png 300w" sizes="(max-width: 464px) 100vw, 464px" /></p>
<p><span>Esto quiere decir que en el sistema de coordenadas utilizado para establecer las ubicaciones propuestas en el ejercicio, la instalación óptima se ubicaría en las coordenadas </span><em><strong>X = 44,2</strong></em><span> – </span><em><strong>Y = 4,7. </strong></em>podemos confirmar que son las mismas coordenadas obtenidas mediante el <a href="https://ingenieriaindustrialonline.com/diseno-y-distribucion-en-planta/metodo-del-centro-de-gravedad/"><strong>modelo matemático original de Centro de Gravedad</strong></a>.</p>
<p>Tanto el resultado obtenido, como las ubicaciones de entrada (estaciones) pueden graficarse para una mayor comprensión del modelo. Utilizaremos un gráfico utilizando la librería <em>ggplot2</em> que nos muestre las instalaciones con un marcador de acuerdo a su ponderación. Veamos:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>%%R
library(ggplot2)
grafico_df &lt;- rbind(estaciones_df,c(centro_gravedad(estaciones_df$x,estaciones_df$y,estaciones_df$galones),2500))
grafico_df$tipo &lt;- c(rep(x="distribuidores",times=5),"instalacion")
ggplot(data=grafico_df) + geom_point(mapping=aes(x=x,y=y,size=galones,color=tipo))</code></pre>
</div>
<p>Al ejecutar tendremos el siguiente resultado:</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro-de-gravedad.png" alt="centro de gravedad" width="480" height="480" class="size-full wp-image-28252 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro-de-gravedad.png 480w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro-de-gravedad-300x300.png 300w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/10/centro-de-gravedad-150x150.png 150w" sizes="(max-width: 480px) 100vw, 480px" /></p>
<p>El marcador azul representa la ubicación sugerida por el modelo, de acuerdo a la ubicación del suministro de acuerdo a las estaciones. Podemos ver como el tamaño de las estaciones varía de acuerdo a su capacidad de suministro. Esta forma de desarrollar el modelo de Centro de Gravedad puede complementarse con diversas fuentes de datos, <a href="https://ingenieriaindustrialonline.com/diseno-y-distribucion-en-planta/metodo-de-localizacion-de-instalaciones-utilizando-mapas-de-calor/"><strong>mapas de calor</strong></a>, tipos de coordenadas, etc.</p>
<hr />
<p>Puedes ver el cuaderno de este módulo en nuestro <em>Colaboratory: <a href="https://colab.research.google.com/drive/1wSSla3U6NuJJHX6t-eetFiUSTvDpENUF?usp=sharing"><strong>Problema de localización de instalaciones mediante Centro de Gravedad</strong></a>.</em></p>
<h2>Consideraciones finales</h2>
<p><span>El alcance de este modelo se encuentra determinado por la localización de una sola instalación (depósito, almacén, etc.), y en los casos en los que se requiera determinar múltiples localizaciones, el modelo no aplica.</span></p>

		<div class="box info  ">
			<div class="box-inner-block">
				<span class="fa tie-shortcode-boxicon"></span>Para ver un modelo para varias localizaciones: <a href="https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/localizacion-de-varios-almacenes-mediante-agrupacion-geoespacial/"><em><strong>Localización de varios almacenes mediante agrupación espacial</strong></em></a>
			</div>
		</div>
	
<hr />

		<div class="box info  ">
			<div class="box-inner-block">
				<span class="fa tie-shortcode-boxicon"></span>Lo invitamos a leer: <a href="https://ingenieriaindustrialonline.com/diseno-y-distribucion-en-planta/metodo-de-localizacion-de-instalaciones-utilizando-mapas-de-calor/"><em><strong>Método de localización de instalaciones utilizando mapas de calor</strong></em></a> y <em><a href="https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/mapas-de-calor-y-algoritmo-de-centro-de-gravedad-utilizando-python/" target="_blank" rel="noopener"><strong>Mapas de calor y Algoritmo de Centro de Gravedad utilizando Python</strong></a></em>
			</div>
		</div>
	
<p>La entrada <a href="https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/metodo-del-centro-de-gravedad-utilizando-r/">Método del Centro de gravedad utilizando R</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ingenieriaindustrialonline.com/localizacion-de-instalaciones/metodo-del-centro-de-gravedad-utilizando-r/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>¿Qué son los costos de transacción en la era digital?</title>
		<link>https://ingenieriaindustrialonline.com/transformacion-digital/que-son-los-costos-de-transaccion-en-la-era-digital/</link>
					<comments>https://ingenieriaindustrialonline.com/transformacion-digital/que-son-los-costos-de-transaccion-en-la-era-digital/#respond</comments>
		
		<dc:creator><![CDATA[Bryan Salazar López]]></dc:creator>
		<pubDate>Mon, 27 Sep 2021 21:54:16 +0000</pubDate>
				<category><![CDATA[Actualidad]]></category>
		<category><![CDATA[Columnas]]></category>
		<category><![CDATA[Logística]]></category>
		<category><![CDATA[Transformación digital]]></category>
		<category><![CDATA[Costos de transacción]]></category>
		<category><![CDATA[Limitaciones de transacción]]></category>
		<category><![CDATA[Oliver Williamson]]></category>
		<guid isPermaLink="false">https://ingenieriaindustrialonline.com/?p=28109</guid>

					<description><![CDATA[<p>A lo largo de toda la Cadena de Suministro es común que los esfuerzos se orienten, además de asegurar la disponibilidad (objetivo de la logística), hacia la reducción de costos, los costos convencionales: Materias primas, producción, almacenamiento, transporte, etc. Oliver Williamson, desde 1991 desarrolló un concepto: Los costos de transacción (Nobel de Economía en 2009). Algunos &#8230;</p>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/transformacion-digital/que-son-los-costos-de-transaccion-en-la-era-digital/">¿Qué son los costos de transacción en la era digital?</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><span>A lo largo de toda la <a href="https://ingenieriaindustrialonline.com/logistica/logistica-y-cadena-de-abastecimiento/">Cadena de Suministro</a> es común que los esfuerzos se orienten, además de asegurar la disponibilidad (objetivo de la logística), hacia la reducción de costos, los costos convencionales: Materias primas, producción, almacenamiento, transporte, etc. Oliver Williamson, desde 1991 desarrolló un concepto: <em><strong>Los costos de transacción</strong></em> (Nobel de Economía en 2009). Algunos de estos &#8216;costos de transacción&#8217; en la era digital son, por ejemplo: <em>búsqueda, decisión, entrega, desplazamiento, compromiso asumido</em>, entre otros. Piense en ellos como costos, tiempos o simplemente limitaciones; tienen la capacidad potencial de destruir el tráfico del comercio; y si quieren conocer la importancia del tráfico en el retail, los invito a leer: </span><a href="https://ingenieriaindustrialonline.com/teoria-de-restricciones-toc/como-mejorar-el-desempeno-del-retail-preguntas-clave/" target="_blank" rel="nofollow noopener">¿Cómo mejorar el desempeño del retail? Preguntas clave</a></p>
<h2>Costos de transacción y transformación digital</h2>
<p>La principal diferencia entre digitalización y transformación digital consiste en que en la primera, los procesos no suelen remover limitaciones críticas del sistema; en cambio, a través de un proceso de transformación digital las organizaciones se apoyan en la tecnología para cambiar sus negocios, cambiar la forma tradicional de hacer las cosas, explorar nuevas formas de agregar valor, y sobre todo, buscan un mayor rendimiento, un mayor alcance, buscan más oportunidades. De acuerdo a lo anterior podemos inferir que mucho de lo que vemos como «transformación digital» en las organizaciones no es más que digitalización.</p>
<p>Si la esencia de una transformación digital real consiste en atacar las limitaciones críticas del sistema con el apoyo de la tecnología, en un entorno digital (adaptándose a las necesidades de la era digital), es necesario cuestionarnos, <em>¿cuáles son esas limitaciones que tienen nuestras organizaciones en la era digital? </em>Es apenas lógico.</p>
<p>Nuestra forma tradicional de pensar entiende que nuestros procesos de mejora &#8211; podemos decir también, nuestros procesos de remoción de limitaciones &#8211; se encuentran dentro del marco tradicional de las operaciones: <em>«Disminuir costos y gastos»; </em>y que estos costos y gastos se agrupan de acuerdo al enfoque clásico, en:</p>

		<div class="plus tie-list-shortcode">
<ul>
<li>Costos de materias primas e insumos</li>
<li>Costos de producción</li>
<li>Costos logísticos, etc.</li>
</ul>

		</div>
	
<p>Sin embargo, de acuerdo al comportamiento de los consumidores de la era digital (un consumidor hiperconectado y con tendencia de consumo orientada hacia la personalización), hoy por hoy, entran a jugar nuevos factores de costo, también podemos decir, nuevas limitaciones del sistema, propias de la era digital.</p>
<p>En ese orden, lo que la teoría de Costos de Transacción nos dice es que:</p>
<blockquote class=" quote-simple "><p>«Las empresas deben tener en cuenta que, para una persona, más allá del precio que paga por un producto, existen una serie de costos estrechamente ligados a la materialización de esa venta».</p></blockquote>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/09/costos-de-transaccion_2.png" alt="costos de transaccion" width="655" height="409" class="size-full wp-image-28113 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/09/costos-de-transaccion_2.png 655w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/09/costos-de-transaccion_2-300x187.png 300w" sizes="(max-width: 655px) 100vw, 655px" /></p>
<p><em>Ahora, ¿cuáles son los costos de transacción en la era digital?</em></p>
<h3>Costos de búsqueda del producto</h3>
<p>Los costos o limitaciones en la búsqueda de un producto han disminuido de forma considerable gracias a Internet. En todos los niveles de la cadena de valor, la facilidad de búsqueda ha sido clave para el desarrollo de los procesos de compra. Esto implica necesariamente que cualquier limitación de búsqueda que impida una conexión veloz entre nuestro producto / servicios y su potencial consumidor, representa un costo o un tiempo que el consumidor digital &#8211; cada vez menos &#8211; está dispuesto a asumir.</p>
<p>Pareciera que este es un dilema exclusivo del comercio electrónico, sin embargo, lo que nos han enseñado estos tiempos <em>pos-</em>pandemia, indica que el retail de tienda física y el e-commerce no son tan excluyentes como muchos pensábamos. Las personas planifican sus visitas a las tiendas con el apoyo de la tecnología; desean saber, por ejemplo, qué producto está en stock, horarios de atención, entre otros.</p>
<blockquote class=" quote-simple "><p>«Los minoristas de todos los tamaños están descubriendo que maximizar su presencia digital, puede ayudarlos a llegar a clientes potenciales que desean realizar sus compras en tiendas físicas» <cite>Jason Spero &#8211; Vicepresidente global de Soluciones de Performance de Google</cite></p></blockquote>
<h3>Costo de desplazamiento para la compra</h3>
<p>La realidad es que cada vez menos se hace estrictamente necesario desplazarse hacia un lugar físico para comprar un producto, o tener un primer acercamiento antes de tomar una decisión de compra. Consideremos que gran parte de las barreras existentes alrededor de la compra virtual han ido desapareciendo de la mano de la digitalización masiva en épocas de <em>pandemia</em>. Esta, que podía considerarse como una limitación más, ha sido en épocas de distanciamiento social, una condición, una exigencia para la supervivencia de muchos comercios.</p>
<h3>Costo de decisión</h3>
<p>Una de las características más llamativas del consumidor digital radica en su capacidad de confiar en las valoraciones y plataformas externas. Ahora, gracias a la conectividad, tenemos acceso a la opinión de expertos, a valoraciones de usuarios, y tenemos todo el fenómeno del marketing digital. Ahora como nunca, tenemos acceso a mucha información que puede sustentar una decisión de compra. Lo llamativo, es que el consumidor digital no requiere relacionarse necesariamente con la fuente de la valoración, de hecho, puede llegar a inferirla a través de parámetros digitales como la <em>cantidad de visitas de un producto, unidades vendidas, estrellas</em>, etc.</p>
<h3>Costo de entrega del producto</h3>
<p>Entender al consumidor digital implica reconocer que esta limitación trasciende de un valor económico, podemos entenderlo mejor si lo asumimos como una transacción a la que muchas veces el usuario (cliente) no está dispuesto a invertirle tiempo.</p>
<p>Suponga que usted quiere comprar un producto en un e-commerce, y considere <em>¿cuál es la diferencia transaccional entre un producto que anuncia envío gratis y uno que no lo hace?</em> Pues bien, la transacción puede variar de un comercio a otro, de un proveedor a otro; sin embargo, la experiencia nos indica que como mínimo tendremos que iniciar un proceso para establecer la tarifa de envío, que como mínimo requerirá información adicional y sobre todo, que requerirá tiempo. De esta manera quizá entenderemos mejor que las condiciones de entrega del producto pueden convertirse en verdaderas limitaciones del proceso de compra, limitaciones que van más allá del valor del envío.</p>
<p><img decoding="async" src="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/09/costos-de-transaccion_3.png" alt="costos de transaccion_3" width="655" height="409" class="size-full wp-image-28114 aligncenter" srcset="https://ingenieriaindustrialonline.com/wp-content/uploads/2021/09/costos-de-transaccion_3.png 655w, https://ingenieriaindustrialonline.com/wp-content/uploads/2021/09/costos-de-transaccion_3-300x187.png 300w" sizes="(max-width: 655px) 100vw, 655px" /></p>
<h3>Costo de compromiso asumido</h3>
<p>Detrás de cada compra hay una serie de implicaciones que el consumidor asume. Estas implicaciones son variables, pueden ir desde la posibilidad de hacer efectiva una garantía, condiciones de devolución, impacto ambiental, entre otras. El consumidor digital considera cada vez más estas limitaciones, al punto que un sello de compra protegida compite abiertamente con una diferencia considerable de precios entre dos productos.</p>
<hr />
<blockquote class=" quote-simple "><p>“En la cadena de suministros nadie, ninguna de las empresas y eslabones, ha vendido nada hasta que el consumidor final no haya comprado”. <cite>Goldratt</cite></p></blockquote>
<p>Así entonces, como podemos ver, los costos de transacción se encuentran en la base de la transformación digital, y están siendo clave en el desarrollo de muchos negocios, en el ajuste de muchos procesos de la Cadena de Suministro; y desde luego, en la perspectiva que tenemos alrededor de remover las limitaciones de nuestros sistemas; entendiendo que la teoría nos habla de costos de transacción, pero bien puede ser interpretada como tiempos o limitaciones de transacción, que tienen la capacidad potencial de destruir el tráfico de nuestra cadena.</p>
<p>La entrada <a href="https://ingenieriaindustrialonline.com/transformacion-digital/que-son-los-costos-de-transaccion-en-la-era-digital/">¿Qué son los costos de transacción en la era digital?</a> se publicó primero en <a href="https://ingenieriaindustrialonline.com">Ingenieria Industrial Online</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ingenieriaindustrialonline.com/transformacion-digital/que-son-los-costos-de-transaccion-en-la-era-digital/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
