Ya hablé aquí de la aceptación de mi artículo para el Congreso Mexicano de Inteligencia Artificial, que se llevó a cabo de manera virtual a fines de mayo. El tema que traté fue un sistema experto para hacer corrección ortográfica a partir de reglas gramaticales, en lugar de usar un enorme diccionario de términos.
Brevemente, la historia de este artículo viene desde 1988, cuando hice el posgrado en el Reino Unido, en Inteligencia Artificial, en la Universidad de Essex. Ahí aprendí a usar algunas herramientas y metodologías para trabajar con los problemas que bien podían ser parte de lo que hoy llamamos la Inteligencia Artificial. Así, aprendí Prolog y este nuevo paradigma de programación resultó la herramienta fundamental para el desarrollo de mi corrector ortográfico.
Cuando regresé a México, un par de años depués (1991), comencé a escribir el mencionado corrector, que bauticé como Lapsus. Usé Turbo Prolog 2.0, el cual era una de las versiones más sencillas y poderosas del momento, aún en MsDOS. Esta versión del lenguaje me permitió un desarrollo rápido y en un par de semanas tenía una primera versión, la cual tomaba como entrada un archivo de texto y hacía la corrección en modo batch, es decir, no en tiempo real sino una vez que el documento ya estaba todo escrito. Eran los tiempos en donde había limitaciones de hardware y software mucho más serias que ahora. De hecho, la versión en Prolog incluía un editor tipo WordStar, el estándar de facto de la época, en donde el usuario podía escribir su documento.
Pero pasaron los años y las interfaces gráficas hicieron su aparición. Entonces las suites de Office, como MsOffice, tendrían un desarrollo acelerado y se convertirían en parte de las herramientas de software que prácticamente todos los usuarios deben tener en una computadora moderna. Entonces pensé que Lapsus debía ser portado de manera que se comunicara con Word, que era el software que mucha gente usaba, y así hacer la corrección ortográfica vía reglas.
Primero usé Data Dynamic Exchange (DDE), de Microsoft, que resultó muy difícil de usar, con un sinfín de problemas. La solución llegó cuando la empresa de las ventanas sacó el protocolo OLE (Object Linking and Embedded), el cual permitía una comunicación entre programas de terceros y Office. Usando entonces Delphi, escribí la versión de Lapsus para Windows, la cual permite al usuario de MsOffice usar el corrector por reglas, pues éste se comunica con Word automáticamente y pasa cada palabra a Lapsus, la revisa y si halla problemas, regresa el resultado con los mensajes de error apropiados.
Una simpática anécdota fue cuando hablé con algunos amigos de Microsoft y les pedí que revisarán mi idea, a ver si la incorporaban eventualmente en Word. Se tomaron la molestia de hacerlo y concluyeron que la idea era simpática, pero que no veían en ella un gran futuro.
Aún así, el trabajo estaba hecho y ahora con el Congreso de IA, decidí probar suerte para publicar formalmente el trabajo realizado. Fue aceptado y ya tengo la versión final. He aquí el borrador final para quién le interese. Se puede descargar de este enlace.

2 comments:
Hola Manuel, en mi opinion pienso que esto es similar a lo de la película Her, dónde el protagonista se comunica con la computadora para poder tener la mejor carta redactada.
Saludos
Vaya ... mucho trabajo atrás. Gracias por compartir la historia con tus lectores asiduos.
Saludos !!
Post a Comment