My articles and publications --(full text, click here. You may be asked to sign up --it is free) --Mis publicaciones (texto completo: http://ipn.academia.edu/AdolfoGuzman Quizá le pida suscribirse --es gratis) Mi página Web -- (click here) -- My Web page (http://alum.mit.edu/www/aguzman). ALGUNOS VIDEOS SOBRE LO QUE HAGO. Conferencia 'Ciudad inteligente, con conectividad y tecnología' (oct. 2010), parte 1 (15min), parte 2 (8min), parte 3 (9min), parte 4 (2min). Entrevista por redCudiMéxico, 2012: aquí (11 min). Avances en Inteligencia Artificial, entrevista en la Univ. IBERO, Puebla, 2013. Pulse aquí (53min). Video in the series "Personalities in the history of ESIME" (for the 100 years anniversary of ESIME-IPN, in Spanish) about Adolfo Guzman": 2014, click here. (1h)
Entrevista "La visión de los egresados del IPN, a 80 años de la creación del IPN y 100 años de la creación de la ESIME, 2014: ver en youtube (1h). Seminario sobre "Big Data" (la Ciencia de Datos). 2014. Pulse aquí (56min). Seminar on "Big Data", in English, 2014. Click here (56min). Algunos trabajos sobre Minería de Datos y sus Aplicaciones (CIC-IPN, 2016): pulse aquí (5min). El auge y el ocaso de las máquinas de Lisp (Plática en la Reunión Anual 2016 de la Academia Mexicana de Computación): pulse aquí (56min). Entrevista sobre la funcionalidad y competitividad de Hotware 10: 2016, aquí (6 min). Adolfo Guzmán Arenas, Ingeniero Electrónico e investigador del Centro de Investigación en Computación del IPN, conversó sobre su trayectoria y la importancia de las ciencias aplicadas para el desarrollo del país. 2017, Canal 11, Noticias TV (30min). Cómo se construyó la primera computadora en el mundo de procesamiento paralelo con Lisp. Marzo 2018. https://www.youtube.com/watch?v=dzyZGDhxwrU (12 min). Charla "Historias de éxito en la computación mexicana", ciclo Códice IA. Entrevista a A. Guzmán, "Entre la vida y la academia": https://bit.ly/3sIOQBc (45 min). El CIC cumple 25 años. Pulse aquí (51min. Habla Adolfo: "Pasado y futuro del CIC": minutos 13.57 a 22.70 ).
Perfil en ResearchGate -- Adolfo Guzman-Arenas My URL in Google Scholar: http://scholar.google.com/citations?user=Nw5lSdEAAAAJ My ORCID number 0000-0002-8236-0469. Scopus Author ID 6602302516.

Follow me on Academia.edu

Paralelización de un subconjunto de consultas SQL con unión natural utilizando una GPU

En su tesis de Maestría (CIC-IPN, junio 2012), Ángel Omar Cervantes Ramírez paraleliza una consulta formada por la unión natural de dos tablas (de base de datos relacionales), usando el procesador gráfico de una computadora convencional (PC), de escritorio. Pulse aquí para descargar su tesis.

Resumen.
El cómputo paralelo siempre ha tenido una gran variedad de aplicaciones, lograr paralelizar tareas que en un principio son de ejecución secuencial representa un nuevo reto. Si se analiza el problema a resolver y se desarrollan estrategias correctas, la recompensa resulta ser satisfactoria, se obtienen tiempos de respuesta más cortos para el mismo trabajo, solo que ahora dicho trabajo es atendido por un conjunto de unidades de procesamiento trabajando al mismo tiempo. Hoy en día, existe una novedosa plataforma para desarrollar cómputo paralelo, aunque es una tecnología relativamente de reciente desarrollo ha tenido muchas aplicaciones con buenos resultados en áreas tan diversas que llama la atención y motiva a buscar nuevas nichos de aplicación. La tecnología en cuestión, es el GPU-Computing, o computo paralelo sobre una tarjeta de video.
En este trabajo aplicamos el GPU-Computing sobre el área de las bases de datos. Basándonos en el plan de ejecución real del manejador de bases de datos SQLite, las operaciones de resolución de dicho manejador fueron reprogramadas en la plataforma de desarrollo CUDA para poder procesar las mismas instrucciones dentro de una GPU. De esta forma, obtuvimos un motor de búsqueda capaz de resolver un subconjunto de operaciones del lenguaje SQL mediante cómputo paralelo (concretamente consultas unitabla, multitabla y operaciones de agregación). Este motor de búsqueda en paralelo se apoya en el manejador SQLite, pero obtiene tiempos de respuesta más rápidos para las consultas que es capaz de resolver. Además de reprogramar el plan de ejecución, se atendieron los problemas propios que el paralelismo implica, tales como, administración eficiente de la memoria, distribución equitativa de la carga de trabajo entre todas las unidades de procesamiento, y una coordinación controlada para la recuperación de los resultados.

Abstract.
Parallel computing has always had a wide range of applications, achieve parallelize tasks that originally are sequential execution represents a new challenge. If we analyze the problem to solve and develop the right strategies, the reward is satisfactory, you get shorter response times for the same job, only now that work is served by a set of processing units. Today, there is a new platform for developing parallel computing, although it is a relatively newly developed technology has had many successful applications in such diverse areas that attracts attention and motivates to seek new niche applications. The technology in question is the GPU-computing, or parallel computing on a video card.
In this paper we apply the GPU-Computing on the databases area. Based on the actual execution plan engine SQLite databases, its resolution operations were reprogrammed in the CUDA development platform to process the same instructions but in a GPU. Thus, we obtained a search engine capable of solving a subset of SQL operations through parallel computing (specifically unitable queries, multitable queries and aggregation operations). This parallel search engine is based on the SQLite, but you get faster response times for queries that is able to solve. In addition to reprogramming the execution plan, were attended to the problems inherent parallelism implies, such as efficient memory management, equitable distribution of workload among processing units and controlled coordination for recovery results.

Sistema de extracción y representación del conocimiento a partir de documentos descriptivos

En su tesis de Maestría (CIC-IPN, Junio 2012), Gabriela López Yebra nos dice cómo hacer ontologías (estructuras semánticas) a partir de documentos en español que describen cosas concretas. Pulse aquí para descargar un artículo sobre este trabajo.

Resumen:
Se presenta un método basado en búsqueda de patrones en textos y un sistema de reglas para encontrar relaciones ontológicas en documentos descriptivos de objetos concretos del mundo real escritos en lenguaje natural.
Se desarrolla una adaptación del método de búsqueda de patrones para agregarle un sistema de reglas que permite que las relaciones encontradas se extiendan a relaciones específicas buscadas dentro de un documento.
Se utilizan técnicas de análisis de lenguaje natural para procesar el texto, posteriormente se encuentran las relaciones buscadas en base a un archivo de reglas y se genera una salida en lenguaje OM.
Las pruebas se realizan en el idioma español, sin embargo es posible extender el método a cualquier idioma.

Abstract:
The document presents a method based on finding patterns in text and a set of rules to find ontological relations in descriptive documents for specific real-world objects, such documents are written in natural language.
It develops an adaptation of the pattern search method to add a rule system that allows the method to find extra relationships.
The use of natural language processing tools enables the system to find relationships based on a defined rules file, the relations found are then represented in OM language for ontologies.
The tests are performed in Spanish, but it is possible to extend the method to any language.

Ya apareció nuestro libro "Arañas Distribuidas"

Arañas distribuidas. Asignación efectiva de trabajo.  Búsqueda automática de información y documentos en Internet evitando duplicidad de esfuerzos.  Editorial Académica Española. Para adquirirlo, pulse aquí.

Distributed crawlers. Effective assignment of work. Automatic search of information and documents in Internet, avoiding duplication of efforts. To buy it, click here.

La computación desde sus inicios, como en la actualidad, es utilizada como una herramienta que le ayuda al hombre a resolver problemas de su vida diaria. En este trabajo nos enfocamos a hallar y recuperar documentos que yacen en la Web, por medio de programas que los localizan y los recuperan, a texto completo. Estos programas (llamados arañas, o crawlers en inglés) pueden ser instalados en una o varias máquinas. En este último caso se coordinan entre sí para evitar duplicar (o sextuplicar, si se instalaran en seis máquinas) esfuerzos. Un documento se recupera una sola vez, aunque varias arañas se “topen” con él. Un Web crawler es un programa que inspecciona de manera metódica y automatizada las páginas de la Internet. Para un Web crawler es sumamente importante no duplicar trabajo, pues una dirección URL duplicada puede originarle perder varias horas o incluso días de trabajo ya que otra de sus tareas es extraer direcciones URL incluidas dentro de ella y procesarlas de igual manera. El presente trabajo muestra la definición de una arquitectura que resuelve el problema de duplicidad y optimiza el espacio asociando a cada página web 4 de los principales temas de los que trata.