JairoDanielMT's picture
2D y 3D más una descripción
6469a13
import streamlit as st
import matplotlib.pyplot as plt
import random
from mpl_toolkits.mplot3d import Axes3D
import plotly.graph_objects as go
import pandas as pd
# Se debe tener instalado plotly, streamlit y matplotlib
# configurar con wide mode
st.set_page_config(layout="wide", page_title="AG for TSP", page_icon="🧬")
st.sidebar.title("Algoritmo Genético para el Problema del Viajante")
st.sidebar.write("Integrantes: ")
st.sidebar.write("🦁 Edson Emanuel Alvarado Prieto ")
st.sidebar.write("🐺 Jairo Daniel Mendoza Torres ")
st.write(
"""
## **Descripción:**
Este fascinante código despliega un Algoritmo Genético (AG) diseñado para abordar el intrigante Problema del Viajante, también conocido como el Problema del Viajante de Comercio (TSP en inglés), llevando la experiencia a un entorno bidimensional y tridimensional. El TSP desafía a encontrar el camino más corto que visite cada ciudad exactamente una vez y regrese al punto de origen, persiguiendo la meta de minimizar la distancia total recorrida.
## **Uso:**
1. Ofrece la opción de ingresar manualmente las coordenadas de las ciudades o generarlas de manera aleatoria.
2. La interfaz de Streamlit permite ajustar parámetros como el número de ciudades, el tamaño de la población, el número de generaciones y la probabilidad de mutación.
3. Al ejecutar el código, se despliega una visualización de la evolución del mejor camino encontrado a lo largo de las generaciones, así como la representación gráfica del mejor camino y su distancia final.
## **Aplicaciones:**
- 🚚 **Logística y Distribución:** Optimización de rutas para vehículos de entrega, agilizando la logística empresarial.
- 🗺️ **Planificación de Circuitos Electrónicos:** Conexión eficiente de componentes en placas de circuito, impulsando la ingeniería electrónica.
- 🧬 **Biología Molecular:** Determinación de la secuencia genética más eficiente en el mapeo genético, contribuyendo a avances en biotecnología.
- 🛠️ **Planificación de Proyectos:** Optimización de la secuencia de tareas para minimizar el tiempo total del proyecto, mejorando la gestión de proyectos.
## 🌐 **Puntos a tocar:**
- 🧬 Explora el Problema del Viajante.
- 🚚 Optimiza Rutas en 2D y 3D.
- 🗺️ Considerar ingreso de coordenadas manual o aleatorio
- 🧠 Utiliza un Algoritmo Genético para soluciones inteligentes y eficaces.
"""
)