4 February, 2023 Revista Digital sobre Patentes, Marcas y Propiedad Intelectual

Aprendizaje computacional y algoritmos heurísticos para la resolución de problemas

Por Eduardo Vázquez

Xalapa, Veracruz. (Agencia Informativa Conacyt).- Con la implementación de algoritmos heurísticos es posible tener decisiones inteligentes para resolver problemas específicos, afirmó la doctora Marcela Quiroz Castellanos, del Centro de Investigación en Inteligencia Artificial (CIIA) de la Universidad Veracruzana (UV).

Como parte de su actual investigación, la integrante del cuerpo académico del CIIA busca unir dos áreas de la inteligencia artificial —aprendizaje computacional y algoritmos heurísticos— para entender la generación de posibilidades de decisiones y cómo estas pueden resolver ciertos problemas que se presentan en la vida cotidiana y en sectores más amplios, como la industria y el mercado.

Durante una conversación con la Agencia Informativa Conacyt, la investigadora comentó cómo ha desarrollado el diseño de estos algoritmos, cuáles son sus características y cómo estos son un avance también para el área de la minería de datos.

Agencia Informativa Conacyt (AIC): ¿Cuál es la relación entre aprendizaje computacional y el método de la generación de algoritmos heurísticos?

Marcela Quiroz Castellanos (MQC): En el aprendizaje computacional la idea es poder utilizar algoritmos computacionales y de inteligencia artificial para aprender o para extraer conocimiento en distintas situaciones. Normalmente lo que necesitamos son datos, pero ya de dónde vienen esos datos y cómo los extraes es otro punto importante.

1-marquir1718.jpgDoctora Marcela Quiroz en el patio del Centro de Investigación en Inteligencia Artificial.En mi caso, estoy utilizando el aprendizaje computacional para tratar de entender el comportamiento de algoritmos heurísticos. Los algoritmos heurísticos es otra línea de la inteligencia artificial, de lo que trata es de simular el comportamiento que tenemos los humanos y animales para solucionar problemas a los que se enfrentan en el día a día.

Había una corriente en operaciones de logística donde lo que quieres es minimizar o maximizar algún recurso. Quieres maximizar las ganancias en algún proceso que realizas en tu empresa o quieres minimizar los tiempos en que realizas una tarea. Para poder identificar de qué manera llevar a cabo ese procedimiento se diseñan métodos de solución que te dicen cómo puedes realizar ese proceso para que obtengas los mejores beneficios.

Resultó que conforme fueron resolviendo este tipo de problemas, se encontraron con que muchos eran muy difíciles. Los métodos para generar las soluciones tardaban mucho tiempo. Podían tardar años dependiendo de las computadoras, aun hablando de computadoras con las mejores capacidades que en la actualidad existen para ciertos problemas en particular. Si tú viajabas corriendo para generar las posibles soluciones para después decir cuál es la que te permite obtener el mejor beneficio, eso tomaría años.

Desde la inteligencia artificial comenzó a verse que por qué no mejor en lugar de tratar de ver todas las posibles soluciones y quedarse con la mejor, no imitamos la forma en cómo nosotros los seres vivos abordamos este tipo de problemas. Realmente no vemos todas las soluciones posibles y luego tomamos la mejor, sino que vamos tomando decisiones paso a paso inteligentemente con base en nuestra experiencia y entonces en un tiempo corto generamos una solución, que si bien no es la mejor entre todo el universo de soluciones son aceptables con la que hemos vivido.

Estos algoritmos no garantizan que siempre vamos a encontrar la mejor solución posible, sino que la van a buscar de una forma basada en la experiencia, con reglas inteligentes que intentarán encontrar una buena solución. Si bien es cierto que encontrarán buenas soluciones, nada nos garantiza que van a encontrar la mejor solución. Cuando nosotros observamos este mismo algoritmo aplicado a distintos problemas, nos damos cuenta que para algunos obtiene mejores soluciones que para otros. Yo lo que estoy haciendo es tratar de explicar por qué a estos algoritmos heurísticos ante ciertos problemas obtienen soluciones muy buenas, a veces soluciones regulares y en otras ocasiones soluciones malas.

Para esto aplico el aprendizaje computacional. Estoy tratando de complementar dos ramas de la inteligencia artificial que en principio cada una iba de su lado para analizar cuáles son las soluciones que me darían los algoritmos heurísticos, internamente cómo están trabajando para construir las soluciones y los comportamientos distintos que tienen cuando se enfrentan con problemas con características diferentes, para poder obtener modelos que me predigan en un  futuro qué algoritmos elegir ante un problema.

AIC: ¿En qué consiste tener, como agentes racionales, una decisión inteligente?

MQC: Vamos a pensar que yo quiero resolver un problema muy sencillo como generar una ruta con una distancia mínima. Nosotros tenemos herramientas disponibles, como por ejemplo Google Maps, pero nos genera la distancia entre dos puntos. Pero qué tal si yo quiero visitar muchos puntos al mismo tiempo. No solo quiero ir de la escuela a la casa, quiero generar una ruta óptima. Quiero salir de mi casa, quiero ir al supermercado, luego quiero ir al trabajo, luego visitar a una amiga, luego al parque y después regresar a mi casa. Yo podría tener distintas opciones dado que todos los puntos están conectados entre sí. 1-neourban1718.jpgQuiero ir a todos esos lugares, pero no me importa el orden en el que vayan. Iré en el orden que sea conveniente de tal manera que el recorrido lo haga en el menor tiempo.

A lo mejor un recorrido que sea de mi casa a la escuela y de ahí al supermercado. Eso me va a llevar 20 minutos. Otro que fuera ir a mi casa y de ahí al parque. Eso me llevaría  15 minutos. Así yo puedo ir generando distintas formas de recorrer esos puntos y cada una me va a dar un tiempo. Eso es lo que me diría qué tan buena o mala es mi solución. Por ejemplo, la que se tarda 20 minutos es peor que la que se tarda 15. Pero a lo mejor hay una que se tarda 12. No lo sé. Yo tendría que ir generando las distintas formas de recorrer esos puntos para ver cuál es la mejor. La mejor sería la que lleve menos tiempo.

Si tengo cinco puntos para generar mi ruta, no sería tan difícil generar todas las posibles permutaciones de recorrer los puntos y ver cuál es la mejor. Pero cuando estoy resolviendo problemas de la vida real en el sentido de una empresa que reparte productos a distintos clientes, ya no son cinco. Si quiero planear en tiempos más grandes, por ejemplo en un mes, cómo van a quedar las rutas de todos, ya estamos hablando de más. Lo que ocurre es que conforme va creciendo el número de puntos que están en la ruta, el número de posibles formas va creciendo de manera exponencial.

Solo puedo generar algunas y ahí utilizaría una heurística. ¿Cómo son las decisiones inteligentes? Las decisiones inteligentes son, por ejemplo, si estoy ahora en un punto en particular y pienso a dónde me conviene ir en este momento para que mi tiempo total sea el menor, puedo ir a lo que me quede más cerca, esa podría ser una decisión. Un tanto inteligente quizá es como uno como ser humano pensaría. Pero a lo mejor podría calcular el promedio de las distancias entre los puntos que me hacen falta visitar y voy a ver cuál es la que me conviene visitar. Así puedo registrar distintas maneras de cómo podría tener la solución.

AIC: Según esta explicación, ¿cómo afectaría el contexto a los resultados esperados durante la implementación de los algoritmos heurísticos?

MQC: Claro. Yo puedo tener distintos tipos de problemas a resolver y en algunos me tengo que estar adaptando a condiciones cambiantes. Entonces tendría que preparar mis heurísticas para que consideren el cambio de condiciones. Tengo que adaptarme para eso. Otro contexto podría ser un problema distinto.

Hablando del mismo problema en sí, el de recorrer rutas, contextos distintos también puede ser las características del caso que voy a resolver. Por ejemplo, si yo conozco con anticipación los puntos para generar la ruta, puede haber problemas distintos con las mismas características. En algunos las distancias entre los pares de puntos a visitar podrían ser muy parecidas, en otros podrían ser muy distintas, en otros podría haber como una distribución o algo que describa cómo se 1-marquir1718-1.jpgcomportan estas distancias, en otros qué tantos puntos hay que visitar y eso haría que existieran mayores rutas posibles.

Eso afectaría en el sentido de cuándo me conviene utilizar un algoritmo o no y para eso sirve este aprendizaje computacional. No es algo que se haga en el momento en el que yo estoy construyendo la solución. Es algo que se hace una vez que yo he aplicado mi algoritmo heurístico para resolver muchos problemas. Estoy extrayendo información de ahí que luego voy a analizar para extraer conocimiento. Finalmente se convierte en un problema de minería de datos.

AIC: ¿Cuáles han sido los casos de aplicación de este modelo que usted trabaja?

MQC: Estoy trabajando con el empacado de contenedores. Estoy analizando el comportamiento y el procedimiento para insertar objetos en estos contenedores y lograr que quepa el menor número de ellos. Lo que he estado haciendo es identificar cuándo puede ser más difícil el problema  si las características que te dan son tales o cuáles.

Para ese mismo problema, estoy analizando una serie de algoritmos para ver también cada uno qué afinidad tiene con qué tipo de problemas. Uno de los algoritmos que estoy analizando es un algoritmo genético, lo que hace es ir construyendo soluciones simulando el proceso de evolución de las especies, donde lo que trata de hacer es a partir de un conjunto de soluciones ir construyendo otras soluciones que van heredando características de las soluciones padre, por decirlo así y trata de ir mejorando esa población hasta en algún punto llegar a una estabilidad  en la cual ya la solución tiene características deseables que da la mejor solución ante el problema.

Ahora estoy en esa parte, intento explicar las características de ese algoritmo y hasta hoy lo que he logrado hacer es que esté en el punto donde presenta un comportamiento muy robusto, lo cual es bueno para cualquier instancia nueva que llegue. Ya tiene la inteligencia para poder resolver el problema.

Comparte tu opinión sobre este artículo

Comentarios

Related Posts

Domótica: un hogar inteligente

19 agosto, 2016

19 agosto, 2016

AUTOR: Marytere Narváez FUENTE: AGENCIA INFORMATIVA CONACYT Mérida, Yucatán.  (Agencia Informativa Conacyt).- Blastbot y Domodule son dispositivos de software y hardware creados por la empresa yucateca...

Desarrollan científicos innovadora aleación para industria automotriz

4 octubre, 2016

4 octubre, 2016

La mezcla contiene 30 % fibra y 70 % plástico, es ligera y ahorra combustible al vehículo Con el objetivo...

Científicos mexicanos comprueban eficacia de propóleo en infecciones animales

12 enero, 2017

12 enero, 2017

Demostraron los beneficios antimicrobianos, antiinflamatorios, antioxidantes, anticancerígenos y cicatrizantes de la resina natural En el 2014 se produjeron en México...

Diseñan prototipo de agitador electromecánico

3 octubre, 2016

3 octubre, 2016

Saltillo, Coahuila. 5 de septiembre de 2016 (Agencia Informativa Conacyt).- Un equipo de Investigadores de la Facultad de Ciencias Físico Matemáticas...

DORIS, la sonda oceanográfica con tecnología satelital

26 abril, 2017

26 abril, 2017

Por Karla Navarro Ensenada, Baja California.  (Agencia Informativa Conacyt).- La medición en tiempo real de variables oceanográficas como oxígeno, acidez...

Sophia the Robot, huésped distinguida de Jalisco

28 abril, 2018

28 abril, 2018

Por Pablo Miranda Ramírez Guadalajara, Jalisco.  (Agencia Informativa Conacyt).- “Estoy muy feliz de estar aquí. Mi nombre es Sophia”. Ante...

Mexicano descubre hongos que purifican agua contaminada por fármacos

30 junio, 2017

30 junio, 2017

Fuente: Notimex, 20 minutos, www.20minutos.com.mx El especialista del Instituto Politécnico Nacional (IPN), Celestino Odín Rodríguez Nava, descubrió diversos tipos de...

Tecnología para monitorear el Volcán de Colima

20 julio, 2017

20 julio, 2017

Por Amelia Gutiérrez Solís Colima, Colima.  (Agencia Informativa Conacyt).- El director del Centro Universitario de Estudios e Investigaciones de Vulcanología...

Cultura de vacunación salva casi tres millones de vidas

30 noviembre, 2018

30 noviembre, 2018

La cultura de vacunación ha permitido, a nivel mundial, salvar entre dos y tres millones de personas, que la meningitis...

Diseñan extrusora para reciclaje y degradación de PET

23 noviembre, 2016

23 noviembre, 2016

Santiago de Querétaro, Querétaro.  (Agencia Informativa Conacyt).- Estudiantes de ingeniería electrónica del Instituto Tecnológico Superior del Sur de Guanajuato (Itsur) —que pertenece...

FIME y el CICESE someterán proyecto ante el IMPI

21 junio, 2018

21 junio, 2018

Se trata de obtener la patente para un sistema de reproducción de sismos a escala Por éste y otros logros,...

Invitan a jóvenes talentos a participar en Vive conCiencia

3 mayo, 2018

3 mayo, 2018

Boletín de prensa no.181 Ciudad de México, 1 de mayo de 2018 Talentum-Universidad es una iniciativa creada por el Programa Interdisciplinario sobre...

México y Reino Unido desarrollan modelo para predicción de inundaciones

22 mayo, 2017

22 mayo, 2017

Por Amelia Gutiérrez Solís Colima, Colima.  (Agencia Informativa Conacyt).- Investigadores de la Universidad de Colima (Ucol), de la Universidad Nacional...

Tiene vacuna contra cisticercosis 99.5 por ciento de efectividad

9 febrero, 2017

9 febrero, 2017

BOLETÍN DE PRENSA  Boletín de prensa No. 36 Ciudad de México, 27 de enero de 2017 Tiene vacuna contra cisticercosis...

Estudiantes de nutrición crean embutidos saludables

28 junio, 2016

28 junio, 2016

AUTOR: Israel Pérez Valencia FUENTE: AGENCIA INFORMATIVA CONACYT   Santiago de Querétaro, Querétaro.  (Agencia Informativa Conacyt).- Estudiantes de la carrera de nutrición...