computationallogicandhumanthinking: howtobe...

34
Computational Logic and Human Thinking: How to be artificially intelligent Robert A. Kowalski Department of Computing Imperial College Traduce: Jacinto Dávila Robert A. Kowalski (IC) Lógica Computacional 01 (1) Traduce: Jacinto Dávila 1 / 34

Upload: dangtruc

Post on 03-Oct-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Computational Logic and Human Thinking: How to beartificially intelligent

Robert A. Kowalski

Department of ComputingImperial College

Traduce: Jacinto Dávila

Robert A. Kowalski (IC) Lógica Computacional 01 (1) Traduce: Jacinto Dávila 1 / 34

Page 2: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Contenido

1 Introducción

Robert A. Kowalski (IC) Lógica Computacional 01 (2) Traduce: Jacinto Dávila 2 / 34

Page 3: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción

La Lógica Computacional ha sido desarrollada en el campo de laInteligencia Artificial en los últimos 50 años, en un intento por programarcomputadores que muestren niveles humanos de inteligencia. Está basadaen la Lógica Simbólica, lenguaje cuyas oraciones están representadas porsímbolos y cuyo razonamiento se realiza a través de la manipulación desímbolos, tal como en la resolución de ecuaciones en el álgebra. Sinembargo, los intentos de usar la Lógica Simbólica para resolver problemasprácticos por medio de computadores la han conducido a muchassimplificaciones y extensiones. La Lógica Computacional resultante nosolamente es más poderosa en cuanto a su aplicacion computacional, sinoque también y más útil para los el propósito original de la lógica: mejorarel pensar humano.

Robert A. Kowalski (IC) Lógica Computacional 01 (3) Traduce: Jacinto Dávila 3 / 34

Page 4: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción

La Lógica Tradicional, la Lógica Simbólica y la Lógica Computacionaltienen todas que ver con la forma abstracta de las oraciones y con el cómoesa forma afecta la correctitud de los argumentos. Aún cuando la lógicatradicional se remonta a la época de Aristóteles, en el siglo IV A.C., laLógica Simbólica se desarrolla por vez primera en el siglo XIX, con lasformas matemáticas de la lógica desarrolladas por George Boole y GottlobFrege. Se le extiende considerablemente en el siglo XX con el trabajo deBertrand Russell, Alfred North Whitehead, Kurt Gödel y muchos otros,con su aplicación a los fundamentos de las Matemáticas.

Robert A. Kowalski (IC) Lógica Computacional 01 (4) Traduce: Jacinto Dávila 4 / 34

Page 5: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción

La Lógica Computacional emerge en la segunda mitad del siglo XX, apartir de intentos por mecanizar la generación de pruebas en matemáticas,y fué luego extendida tanto para representar formas más generales deconocimiento, como para realizar estrategias más generales para resolverproblemas. La variedad de Lógica Computacional que se presenta en estelibro debe mucho a las contribuciones de John McCarthy y John AlanRobinson.

Los logros de la Lógica Simbólica en el siglo pasado han sidoconsiderables. Pero han conducido a que la Lógica originaria se conviertaen una rama la Matemática y haya perdido contacto con sus raíces en elrazonamiento humano. La Lógica Computacional también emplea notaciónmatemática, lo cual facilita su implementación computacional perooscurece su relevancia para el pensar humano.

Robert A. Kowalski (IC) Lógica Computacional 01 (5) Traduce: Jacinto Dávila 5 / 34

Page 6: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción

En este libro, intentaré mostrar que los beneficios prácticos de la LógicaComputacional no están limitados a la Matemática y a la InteligenciaArtificial, sino que pueden ser también disfrutados por gente ordinaria ensu vida diaria, sin tener que usar la notación matemática. No obstante,estoy incluyendo varios capítulos adicionales, más técnicos, al final dellibro, que bien pueden ser omitidos por el lector causal (pero ayudarán alos interesados en las técnicas).

Robert A. Kowalski (IC) Lógica Computacional 01 (6) Traduce: Jacinto Dávila 6 / 34

Page 7: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: La relación entre la lógica y el pensamiento

La Lógica, en todas su variedades, tiene que ver con formalizar las leyesdel pensamiento. Junto a disciplinas asociadas, como los estudios de Leyesy Derecho y las Ciencias Gerenciales, la Lógica se concentra en laformulación de teorías normativas, que prescriben como debería razonar lagente. La Psicología Cognitiva también está interesada en el pensamiento,pero se concentra casi exclusivamente en teorías descriptivas, que estudiancómo, de hecho, piensa la gente la práctica, sea correcto o no. En general,esos dos tipos de teorías se han desarrollado por separado y mantienenmuy poca relación entre ellos.

.

Robert A. Kowalski (IC) Lógica Computacional 01 (7) Traduce: Jacinto Dávila 7 / 34

Page 8: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: La relación entre la lógica y el pensamiento

No obstante ese divorcio, en los últimos años, los psicólogos cognitivistashan desarrollado teorías del Proceso Dual (Dual Process Theories), quepueden ser entendidas como la combinación de teorías normativas ydescriptivas. Vistas desde la perspectiva de las teorías de Proceso Dual, lasteorías descriptivas tradicionales se enfocan en el pensamiento intuitivo,que es asociativo, automático, paralelo y subconciente. Las teoríasnormativas tradicionales, por otro lado, se enfocan en el pensamientodeliberativo (N.T. se debería decir racional, deliberativo en Español notiene esa acepción), que está basado en reglas, requiere un esfuerzo, esserial y conciente. En este libro, argumentaré que la Lógica Computacionales una teoría de proceso dual, en la cual se combinan el pensamientodeliberativo y el intuitivo.

Robert A. Kowalski (IC) Lógica Computacional 01 (8) Traduce: Jacinto Dávila 8 / 34

Page 9: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: La relación entre la lógica y el pensamiento

Pero la Lógica está interesada, no solamente con el pensar en abstracto,sino también con pensamientos representados en forma de oraciones y conpensar visto como la manipulación de oraciones para generar nuevospensamientos. En la Lógica Computacional, estas manipulaciones lógicasde las oraciones tienen también una interpretación computacional. Vista deesta manera, la Lógica Computacional puede ser vista como unaformalización del lenguaje del pensamiento humano.

Robert A. Kowalski (IC) Lógica Computacional 01 (9) Traduce: Jacinto Dávila 9 / 34

Page 10: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: La Lógica Computacional y el Lenguaje delPensamiento

Tal y como se le usa en la Inteligencia Artificial, la Lógica Computacionalfunciona primero y principalmente como el lenguaje de pensamiento de unagente inteligente. Se incluye en ella una sintaxis (o gramática) quedetermina la forma de los pensamientos del agente, una semántica, quedetermina el contenido (o significado) de esos pensamientos, y un motorde inferencia (o procedimiento de prueba), que genera (o deriva, o infiere)nuevos pensamientos como consecuencia de los existentes. En este caso, laLógica Computacional puede ser considerada como un lenguaje privado,que representa las metas y creencias de un agente y le ayuda a regular suconducta. Este lenguaje privado es independiente de, y más fundamentalque, los lenguajes ordinarios como el Inglés (y el Español).

Robert A. Kowalski (IC) Lógica Computacional 01 (10) Traduce: Jacinto Dávila 10 / 34

Page 11: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: La Lógica Computacional y el Lenguaje delPensamientoSin embargo, en los sistemas multi-agente de la Inteligencia Artificial, ellenguaje privado de un agente individual sirve también la funciónsecundaria de representar el significado de sus comunicaciones con otrosagentes. Esas comunicaciones se expresan en un lenguaje compartido y portanto público, que puede ser diferente de los lenguajes privados de losagentes individuales. La tarea de un agente que quiere comunicarse es lade traducir los pensamientos desde su lenguaje privado hacia el lenguajepúblico, de forma tal que el agente receptor pueda traducir fácilmente esascomunicaciones públicas en los pensamientos apropiados representados ensu propio lenguaje privado.

Sería más fácil si todos los agentes compartieran el mismo lenguajeprivado, y si tal lenguaje fuese idéntico al lenguaje público de lacomunidad de agentes. Esto se puede lograr al diseñar un sistemamulti-agente artificial, pero sólo puede ser aproximado en una sociedad deagentes humanos.

Robert A. Kowalski (IC) Lógica Computacional 01 (11) Traduce: Jacinto Dávila 11 / 34

Page 12: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: La Lógica Computacional y el Lenguaje delPensamiento

La distinción entre lenguajes públicos y privados, tan clara en laInteligencia Artificial, ha sido propuesta en el campo de la Filosofía delLenguaje para explicar la relación entre el pensar humano y lacomunicación. Muchas de esas propuestas, que por simplicidad pueden sertodas denominadas como propuestas de un Lenguaje del Pensamiento,LOT (de Language of Thought), sostienen que, en buena medida, elpensar humano se puede decir que ocurre en un lenguaje del pensamiento.La más famosa de esas propuestas es la hipótesis de Fodor de que el LOTes un lenguaje privado, independiente de la Babel de lenguajes públicos(Fodor, 1975). Otras propuestas, en particular (Carruthers, 2004)argumentan que el LOT de una persona es específico al lenguaje públicode la comunidad social de esa persona.

Robert A. Kowalski (IC) Lógica Computacional 01 (12) Traduce: Jacinto Dávila 12 / 34

Page 13: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: La Lógica Computacional y el Lenguaje delPensamiento

Sin importar su posición acerca de la relación entre lenguajes privados ypúblicos, la mayoría de las propuestas parecen estar de acuerdo en que elLOT tiene cierto tipo de forma lógica. Sin embargo, la mayor parte de esaspropuestas son particularmente tímidas al dar detalles de esa forma lógica.En comparación con aquellas, la propuesta que presento en este libro - quela Lógica Computacional puede ser considerada como una formalización deel LOT - es desvergonzadamente reveladora. Para mi argumento, invoco elapoyo de los usos que se da a la Lógica Computacional en la InteligenciaArtificial. Pero también invoco apoyo desde la relación entre la LógicaComputacional y las teorías normativas de la comunicación humana.

Robert A. Kowalski (IC) Lógica Computacional 01 (13) Traduce: Jacinto Dávila 13 / 34

Page 14: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: Lógica Computacional y la ComunicaciónHumana

Normalmente, cuando hablamos o escribimos, simplemente nosexpresamos en público sin hacer un esfuerzo conciente para comunicarnosefectivamente. Pero cuando realmente nos importa ser entendidos - comome ocurre al escribir este libro - tratamos de ser tan claros, coherentes yconvincentes como sea posible. La diferencia es como la diferencia entrelas teorías descriptivas y las normativas del pensamiento; y, como ocurreen los dos casos de pensamiento, las dos clases de comunicación seestudian mayormente en disciplinas académicas diferentes.

Robert A. Kowalski (IC) Lógica Computacional 01 (14) Traduce: Jacinto Dávila 14 / 34

Page 15: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: Lógica Computacional y la ComunicaciónHumana

Mientras la Lingüística se ocupa de desarrollar teorías descriptivas acercadel cómo usa la gente el lenguaje en la práctica, la Retórica y susdisciplinas aliadas, tales como la Composición (Redacción) y elPensamiento Crítico, se ocupan de teorías normativas acerca del cómodebería la gente usar el lenguaje para comunicarse más efectivamente.

En este libro, presento una teoría normativa sobre el pensar, lacomunicación y la conducta inteligente. Pero le presto atención a lasteorías descriptivas, porque ayudan a entender de donde venimos, mientrasque la normativas nos muestran a donde debemos ir.

Robert A. Kowalski (IC) Lógica Computacional 01 (15) Traduce: Jacinto Dávila 15 / 34

Page 16: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: Lógica Computacional y la ComunicaciónHumana

La teoría descriptiva de la comunicación que se acerca más a una teoríanormativa es la Teoría de la Relevancia (Sperber y Wilson, 1986). Estábasada en una teoría más general de la cognición, la cual, parafraseandosuperficialmente, propone la hipótesis de que, dadas estímulos o entradasalternativas desde su ambiente, la gente presta atención a aquellasentradas que proporcionan la información más útil por el menor costo deprocesamiento. Aplicadas a la comunicación, la teoría propone que, dadauna comunicación potencialmente ambigüa como entrada, los lectores oescuchas traducirán esa entrada en una forma lógica que maximiza lacantidad de información que contiene, mientras que minimiza el esfuerzocomputacional necesario para generar la forma lógica.

Robert A. Kowalski (IC) Lógica Computacional 01 (16) Traduce: Jacinto Dávila 16 / 34

Page 17: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: Lógica Computacional y la ComunicaciónHumana

La Teoría de la Relevancia es compatible con la hipótesis de que la LógicaComputacional, o algo parecido, es la lógica del lenguaje del pensamiento.Como la Lógica Computacional, la Teoría de la Relevancia tiene tantocomponentes lógicos como computacionales. Más aún, proporciona unaconexión con teorías normativas de la comunicación como las guías deJoseph Williams acerca de estilos de escritura en Inglés (Williams,1990/1995).

Robert A. Kowalski (IC) Lógica Computacional 01 (17) Traduce: Jacinto Dávila 17 / 34

Page 18: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: Lógica Computacional y la ComunicaciónHumana

Una forma de interpretar las recomendaciones de Williams ytraduciéndolas a términos lógicos, lo cual implica el consejo de que losescritores deben expresarse en una forma que sea tan cercana como seaposible a la forma lógica de los pensamientos que ellos desean comunicar.En otras palabras, deben decir claramente lo que quieren decir y debenhacerlo en forma tal que sean tan fácil como sea posible de que loslectores extraigan ese significado. O, para decirlo todavía de otra manera,la expresión pública de nuestros pensamientos privados debe ser tancercana como sea posible a la forma lógica de esos pensamientos.

Robert A. Kowalski (IC) Lógica Computacional 01 (18) Traduce: Jacinto Dávila 18 / 34

Page 19: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: Lógica Computacional y la ComunicaciónHumana

Si nuestros lenguaje privado y lenguaje público fuesen el mismo,podríamos simplemente decir lo que pensamos. Pero incluso eso podría noser suficiente. Todavía tendríamos que organizar nuestros pensamientoscoherentemente, de forma que cada pensamiento estuviera lógicamenteconectado con otro, y de forma tal que nuestros lectores o escuchaspudieran conectar nuestros pensamientos a los suyos.

La recomendación de Williams acerca del cómo obtener esa coherenciaincluye el consejo de colocar ideas viejas o familiares al comienzo de unaoración y colocar las nuevas ideas al final. En una serie de oraciones, unanueva idea al final de una oración se convierte en una vieja idea que puedecolocarse al comienzo de la siguiente oración.

Robert A. Kowalski (IC) Lógica Computacional 01 (19) Traduce: Jacinto Dávila 19 / 34

Page 20: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: Lógica Computacional y la ComunicaciónHumana

Considere este ejemplo de ese consejo, que una versión informal de lasintaxis de la Lógica Computacional y que, por cierto, muestra como laLógica Computacional puede ser usada para representar las metas ycreencias de un agente para guiar su conducta:

Tu quieres ser más inteligente.

Tu serás más inteligente si eres más lógico o lógica.

Serás más lógico o lógica si estudias este libro.

Así que (si no hay otras alternativas) tu deberías estudiar este libro.

Quizás no sea poético y puede que Ud no esté de acuerdo, pero cuandomenos es claro, coherente y al grano.

Robert A. Kowalski (IC) Lógica Computacional 01 (20) Traduce: Jacinto Dávila 20 / 34

Page 21: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción ¿Qué es la Lógica Computacional?

La versión de la Lógica Computacional que se presenta en este librocombina una forma simplicada de lenguaje para representar informacióncon formas mecánicas (o automáticas) de usar esa información para inferirsus consecuencias. Las oraciones en ese lenguaje tiene la forma simple delas condicionales: si condiciones entonces conclusión (o, en formaequivalente, conclusión si condiciones). Las reglas básicas de inferencia sonel razonamiento hacia adelante y hacia atrás.

Robert A. Kowalski (IC) Lógica Computacional 01 (21) Traduce: Jacinto Dávila 21 / 34

Page 22: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción ¿Qué es la Lógica Computacional?

El razonamiento hacia adelante es la regla clásica de inferencia (tambiénllamada modus ponens) para derivar conclusiones de condiciones. Porejemplo, dada la creencia que, en general, una persona será más lógica siesa persona estudia este libro, el razonamiento hacia adelante deriva laconclusión de que María será más lógica a partir de la condición Maríaestudia este libro. El razonamiento hacia adelante incluye el caso especialen cual una agente deriva las consecuencias de sus observaciones, paradeterminar cómo esas consecuencias podrían afectar sus metas.

Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto Dávila 22 / 34

Page 23: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción ¿Qué es la Lógica Computacional?

El razonamiento hacia atrás funciona en la dirección opuesta, para derivarcondiciones a partir de conclusiones. Por ejemplo, dada la creencia de queen general una persona será más inteligente si esa persona es más lógicacomo la única manera de concluir que una persona será más inteligente, elrazonamiento hacia atrás deriva la condición de que Juan debe ser máslógico de la conclusión Juan será más inteligente. El razonamiento haciaatrás puede ser considerado una forma de reducción de metas, en la cual laconclusión es una meta y las condiciones son submetas. El razonamientohacia atrás incluye el caso especial en el cual un agente deriva submetasque son acciones, que el agente puede realizar en el mundo.

Robert A. Kowalski (IC) Lógica Computacional 01 (23) Traduce: Jacinto Dávila 23 / 34

Page 24: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción ¿Qué es la Lógica Computacional?

El razonamiento hacia atrás le da a la Lógica Computacional el poder deun lenguaje de programación de alto nivel, en el cual todos los programasconsisten de procedimientos de reducción de metas. De hecho, el lenguajede programación Prolog, que proviene de Programando en Lógica, explotaesa forma de computación fundamentalmente para aplicaciones enInteligencia Artificial.

La Lógica Computacional, en la forma más general que investigamos eneste libro, también incluye el uso de inferencia para ayudar a un agente aescoger entre cursos de acción alternativos

Robert A. Kowalski (IC) Lógica Computacional 01 (24) Traduce: Jacinto Dávila 24 / 34

Page 25: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción ¿Qué es la Lógica Computacional?

Por ejemplo, habiendo usado el razonamiento hacia atrás para derivar dossubmetas alternativas, digamos que Juan es más lógico o Juan tomadrogas que aumentar su inteligencia, para alcanzar la meta Juan es másinteligente, Juan puede usar razonamiento hacia adelante para inferir lasposibles consecuencias de las alternativas antes de decidir qué hacer. Enparticular, si Juan infiere la consecuencia de que Juan puede sufrir dañocerebral irreversible si Juan elige la segunda alternativa, Juan toma drogaspara aumentar su inteligencia, entonces esto debería animar a Juan aelegir la primera alternativa, Juan es más lógico.

Robert A. Kowalski (IC) Lógica Computacional 01 (25) Traduce: Jacinto Dávila 25 / 34

Page 26: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción ¿Qué es la Inteligencia Artificial?

La Inteligencia Artificial, IA, es el intento de programar computadores quese comporten inteligemente, según los estándares humanos. Lasaplicaciones de la IA incluyen áreas de problemas tales como elreconocimiento de la voz, sistemas expertos para diagnósticos de fallas enmedicina e ingeniería, y la formalización del razonamiento legal.

Las herramientas de la IA incluyen técnicas tales como búsqueda, LógicaSimbólica, redes neuronales artificiales y razonamiento con incertidumbre.Muchas de esas herramientas han contribuido al desarrollo de la LógicaComputacional que se investiga en este libro. Sin embargo, en lugar depreocuparnos con las aplicaciones de la IA, nos concentraremos en el usode la Lógica Computacional para ayudar a la gente común a pensar ycomportarse más inteligentemente.

Robert A. Kowalski (IC) Lógica Computacional 01 (26) Traduce: Jacinto Dávila 26 / 34

Page 27: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción ¿Qué es la Lógica Computacional?

Pensar en la gente meramente en términos computacionales podría sugerirque la gente puede ser tratada como si fuesen máquinas solamente. Por elcontrario, creo que pensar en las personas como agentes computacionalespuede ayudarnos a apreciar mejor nuestra naturaleza común y nuestrasdiferencias individuales. Eso destaca nuestra necesidad común de lidiar conel ciclo de la vida en un mundo siempre cambiante; y también llama laatención sobre el hecho de que otras personas pueden tener otrasexperiencias, metas y creencias, que son diferentes de las nuestras, peroque son igualmente dignas de compresión, tolerancia y respeto.

Robert A. Kowalski (IC) Lógica Computacional 01 (27) Traduce: Jacinto Dávila 27 / 34

Page 28: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: La Lógica Computacional y el Ciclo de laVida

El papel de la Lógica Computacional en la mente de un agente inteligentepuede ser dibujado aproximadamente así:

Robert A. Kowalski (IC) Lógica Computacional 01 (28) Traduce: Jacinto Dávila 28 / 34

Page 29: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: La Lógica Computacional y el Ciclo de laVida

Al ver la relación entre el agente y el mundo de esta manera, la mente delagente es una estructura sintáctica, que representa las creencias del agenteacerca del mundo tal como lo ve y sus metas acerca del cómo le gustaríaque ese mundo fuese. Estas creencias y metas son representadas en ellenguaje de pensamiento privado o propio de ese agente, cuyas oracionestienen la forma sintáctica de las condicionales.

El mundo, por su lado, es una estructura semántica, que incluye el cuerpodel agente y le otorga significados a los pensamientos del agente. Es unaestructura dinámica, que está constantemente cambiando y que existe sóloen el aquí y ahora. Sin embargo, el agente puede memorizar susexperiencias de ese cambio en su lenguaje de pensamiento, y puedeformular creencias generales acerca de las relaciones causales entre susexperiencias. Puede entonces usar esas creencias, que explican susexperiencias pasadas, para ayudarse a alcanzar sus metas en el futuro.

Robert A. Kowalski (IC) Lógica Computacional 01 (29) Traduce: Jacinto Dávila 29 / 34

Page 30: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: La Lógica Computacional y el Ciclo de laVida

El agente observa eventos que tienen lugar en el mundo, así como laspropiedades que esos eventos comienzan y terminan. Luego usarazonamiento hacia adelante para derivar conclusiones de susobservaciones. En muchos casos, esas conclusiones son acciones,disparadas por asociaciones estímulo-respuesta instintivas o intuitivas, quepueden también expresarse en la forma lógica de las condicionales. Elagente puede ejecutar esas acciones por reflejo, automática einmediatamente. Or, puede que les haga seguimiento, con una forma derazonamiento de alto nivel, como se postula en los modelos de procesodual del pensamiento humano.

Robert A. Kowalski (IC) Lógica Computacional 01 (30) Traduce: Jacinto Dávila 30 / 34

Page 31: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: La Lógica Computacional y el Ciclo de laVida

Sin embargo, sea el agente tentado a reaccionar inmediatamente conasociaciones estímulo-respuesta o no, el agente puede también razonarhacia adelante para determinar su las observaciones afectan algunas metasde nivel superior que deben mantenerse para preservar una relaciónarmoniosa con su ambiente. Razonar hacia adelante con metas demantenimiento de alto nivel de este tipo genera metas por lograr en elfuturo. El agente puede razonar hacia atrás, para reducir esas metas porlograr a submetas y buscar en su mente los planes de acción para alcanzaraquella metas.

Robert A. Kowalski (IC) Lógica Computacional 01 (31) Traduce: Jacinto Dávila 31 / 34

Page 32: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: La Lógica Computacional y el Ciclo de laVida

El agente puede entonces encontrar que hay varios planes alternativos paraalcanzar la misma meta. Tendrá que decidir entre ellos. En la Teoría deDecisión clásica, el agente usa las consecuencias esperadas de su planescandidatos para ayudarse en tomar la decisión. Con sus creenciasrepresentadas en la forma lógica de los condicionales, esas consecuenciaspueden ser derivadas al razonar hacia adelante a partir de las condicionesque representan el rendimiento hipotético las acciones candidatasalternativas. El agente puede evaluar las consecuencias, rechazar lasacciones que tengan consecuencias no deseadas y escoger las acciones quetengan los resultados esperados (o la utilidad) más deseables.

Robert A. Kowalski (IC) Lógica Computacional 01 (32) Traduce: Jacinto Dávila 32 / 34

Page 33: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: La Lógica Computacional y el Ciclo de laVida

Sin embargo, las consecuencias de las acciones de un agente puedendepender, no sólo de sus propias acciones, sino también de acciones deotros agentes o de otras condiciones que están fuera del control delagente. El agente podría no ser capaz de determinar con exactitud si esascondiciones se cumplen por adelantado, pero podría juzgar su verosimilitud(o probabilidad). En tales casos, el agente puede usar técnicas de la Teoríade Decisiones, para combinar sus juicios de probabilidad y utilidad, y elegirel curso de acciones que tenga la mayor utilidad esperada.Alternativamente, el agente puede usar planes de acción precompilados,más pragmáticos, que aproximen ese ideal de la Teoría de Decisión.

Robert A. Kowalski (IC) Lógica Computacional 01 (33) Traduce: Jacinto Dávila 33 / 34

Page 34: ComputationalLogicandHumanThinking: Howtobe ...webdelprofesor.ula.ve/ingenieria/jacinto/kowalski/lcph-cap01.pdf · Robert A. Kowalski (IC) Lógica Computacional 01 (22) Traduce: Jacinto

Introducción: La Lógica Computacional y el Ciclo de laVida

Entre los criterios que un agente puede usar para decidir entre manerasalternativas de alcanzar sus metas, se cuenta el impacto probable en lasmetas de otros agentes. Los alternativas que ayuden a otros agentes aalcanzar sus metas, que no les limiten en el logro de sus metas, podríanrecibir preferencia sobre otras alternativas. De este forma, al ayudar alagente a entender y apreciar que otros agentes tienen sus propiasexperiencias, metas y creencias, la Lógica Computacional puede ayudar alagente a evitar conflictos y cooperar con otros agentes.

Este libro se orienta a mostrar que esos beneficios de la LógicaComputacional, que han tenido algún éxito en el campo de la InteligenciaArtificial, tienen también un gran potencial para mejorar en pensamiento yla conducta humanos.

Robert A. Kowalski (IC) Lógica Computacional 01 (34) Traduce: Jacinto Dávila 34 / 34