Por IGNACIO SORET DE LOS SANTOS

SOFTWARE Y LENGUAJESDE PROGRAMACIÓN Por IGNACIO SORET DE LOS SANTOS Programación en InteligenciaArtificial(lA) A los lenguajesdiseñadosparala progr
Author:  Mariano Rubio Rojo

3 downloads 195 Views 305KB Size

Recommend Stories


Ignacio de los Santos Gil Hospital Universitario de la Princesa Madrid
Ignacio de los Santos Gil Hospital Universitario de la Princesa Madrid 2 OMS Guidelines for the screening and treatment of persons with hepatitis C

LOS SANTOS ANGELES CUSTODIOS
LOS SANTOS ANGELES CUSTODIOS Autor: JESUS MARTI BALLESTER 2 DE OCTUBRE LOS SANTOS ANGELES PREDICADOS POR LOS PADRES DE LA IGLESIA Decía Orígenes: "Lo

LOS SANTOS ÁNGELES CUSTODIOS
LOS SANTOS ÁNGELES CUSTODIOS Periódico semanal de la Comunidad Parroquial y Capilla Ntra. Sra. de las Lágrimas Año 2 N° 12 - Domingo 1 de Junio de 201

EL CAMINO DE LOS SANTOS
EL CAMINO DE LOS SANTOS VIDA DE SAN FRANCISCO DE SALES www.caminando-con-jesus.org Pedro Sergio Antonio Donoso brant San Francisco de Sales Obispo de

LA MESA DE LOS SANTOS
SOCIEDAD GEOGRÁFICA DE COLOMBIA ACADEMIA DE CIENCIAS GEOGRÁFICAS www.sogeocol.edu.co LA MESA DE LOS SANTOS Por: WENCESLAO CABRERA ORTIZ. De la Socied

Story Transcript

SOFTWARE Y LENGUAJESDE PROGRAMACIÓN

Por

IGNACIO SORET DE LOS SANTOS

Programación en InteligenciaArtificial(lA) A los lenguajesdiseñadosparala programaciónen InteligenciaArtificial(lA)

se les suele denominarlenguajes de programaciónde procesamiento simbólico,concebidoparamanipularsímbolosy no algoritmosmatemáticos. El primerodesarrolladocon este propósitoen los años cincuenta fue el Lenguaje de Procesamiento de Información(IPL).Sin embargoéste es un lenguaje de bajo nivel y por tanto difícil de usar, por lo que pronto fue sustituido por otro de alto nivelmás adecuadoLISP. Un programa inteligente es capaz de establecer asociaciones entre símbolos en lugarde almacenarlosúnicamentecomo datos sin relacionar. La técnicausadapararepresentarasociacioneses unaestructurallamada lista, figuras 1, 2 y 3, por ello tambiéna los lenguajesde procesamiento simbólico en generalse les llamalenguajesde procesamientode listas.

Campo 1

Figura 1.—Una ce/da.

—91—

Campo 2

Una lista se representaen la memoriade un ordenadorcomo una seriede celdas y cada una de ellas contienedos parteso campos.En la lista más simple un campo contiene un símboloy el otro contiene un punteroque apunta a un símboloo a la siguientecelda.Unalista puedeser dinámicay apuntar a otras celdas,y su tamañoy forma puede variar continuamente durante la ejecucióndel programa.

Procesadorde listas:LIST(LISTprocesador) Un programaLIST es en realidaduna lista LIST,y por tanto puede ser tratado como datos por otro programaLISTo por sí mismo.De este modo, puede modificarsus propias instruccionesde programao añadirsea sí mismo instruccionesnuevas.Y lo que es más curioso,un programa[ISP dado puedeescribirun programaLISPcompletamente nuevo.Losprogramas LISP se interpretansegúnvan siendoejecutados.Esoayudaal desarrollo del software de inteligenciaartificial, ya que la programación A es un proceso de ensayoy error. Una ventaja de LISPfrente a otros lenguajessimbólicoses que ha sido utilizadodurantemuchotiempoy en muchoslaboratoriosde investigación. Esto ha dado como resultadoel desarrollode entornosde programación (grupo de programasque facilitan el desarrolloy ejecucióndel programa) que no encuentranparalelismoen ningúnotro lenguajede lA.

— —

El primer campo contiene un símbolo. El segundo campo (excepto en la última) contiene un punteroa la siguientecelda.

Figura2.—Listasimple. —

92





Cada celdacontiene un punteroa unsímboloy cada celda (excepto la última)tambiéncontiene un puntero a a siguiente celda.

Figura3.—Unalista máscomp/eta. Las característicade unentornoson herramientas software,con un editorde textos (para introducir instruccionesde programa),un depurador(para ayudar a encontrary corregir errores) y un sistema de ventanas(para visualizardistintosaspectosdel programaen el mismoinstante). El lenguajeLISP está siendo revisadoy mejoradocontinuamente,dando lugar a diferentesversionesLISPque en la actualidadtienen amplio uso (dialectos).

Otros lengualesde programación en lA Se han desarrolladovarioslenguajesparaimplementartécnicasespecíficas de resoluciónde problemas: POP-2.Universidadde Edimburgo. PROLOG.UniversidaddeMarsella. SAIL. Universidadde Stanford. SMALLTAL.K, de la XaroxPARC. — — — —

De todos éstos,el único que,junto con el LISPtiene uso extendido,es el PROLOG. 93 —



PROLOG (programación lógica)

Desarrolladoen Franciaen el año 1973,su uso estáextendidoen Europay en Japón,dondeha sido adoptadocomo lenguajeoficialde programación de lA para el proyectode quintageneración. Se basa en la utilizaciónde la lógica para resolverproblemasy usa la técnica de la lóginaformalllamadacálculode predicadosparademostrarla verdad de las proposicionesa partirde un conjuntode axiomas:PROLOGes más sencilloque LISPperoquizáno ofrezcasu enormeflexibilidad. Representación del conocimiento y lógica Los dos tiposde conocimientoque se necesitarepresentaren un ordenador son: Conocimientodeclarativo.Conocemoslos hechosde los objetosy como se relacionanentre sí. Conocimientoprocedimental.Sabemoscómo hacer las cosas y cómo usar nuestroconocimientodeclarativo. —



Los sistemaslógicos formales usados para representarel conocimiento declarativo en lA con el cálculo proposicionaly el cálculo de predicados. Esencialmenteun programade lA que usa la lógica para representarel conocimiento ve su dominio como un conjunto de fórmulas lógicas. Aplicando un grupode reglasde inferencia(motorde inferencia)a su base de conocimientos,el programa es capaz de sacar las conclusiones deseadas. También se utilizansistemaslógicosmenosformales,como es el caso de la lógica difusa que está diseñada para mejorar conceptos relativos y aproximadoscomoalto,caroo normal.La lógicadifusapermiteconstrucciones como «altoalto» o «moderadamente caro»,descripcionesque resultarían intolerablesparala lógicaformal,peroqueresultananálogasal pensamiento humano. Redes semánticas y heurística Cuandosetratadedefinirrelacionescomplejasen unabasede conocimiento, la maneramásclara de representarlases dibujaruna red semántica,figura 4, en la que los hechosque tienen relaciónentre sí están conectadospor enlaces de la red.Un dominioque poseaunagrancantidadde conocimiento —

94



o o o o o o.

Por cálculo de predicados: Proposición 1: Chuchi es un perro. Proposición 2: Todos los perros son más grandeó que los gatos. Si estas proposi ciones son verdaderas; Conclusión; Chuchi es más grande que todos los gatos.

Figura 4.—Redsemánticasencilla. —

95



con interrelacionescomplejastendrála posibilidadde establecerla basede un sistemade inferenciasofisticadomendianteuna red semántica.Estasse han usado para la representacióndel conocimientoen sistemasexpertos como el prospectordel SRI,que ha demostradosu utilidaden la predicción de depósitosminerales. En un programade lA no existealgosemejanteal procesode planificación informal.La simuaciónde cualquieracto inteligente,aúnel que parecemás sencillo para un ser humano,necesitala definiciónde un procedimiento formal para determinarel curso de acción. El procesode examende las posibles solucionesalternativaspara llegar desdeun estadoinicial al final (objetivo) se designacomo búsqueda,y el conjuntode los posiblescaminos de exploraciónes el espaciode búsqueda.La mayorparte de la historiade la investigaciónen lA está dedicadaal descubrimientode técnicas de búsqueda más eficientes. La busquedaheurísticaes uno de los fundamentosde lA. Entendemospor heurística la estrategia,truco simplificacióno cualquier otra clase de estratagemaque imitay simplificadrásticamentela búsquedade soluciones en grandes espacios problemas.La heurísticano garantiza soluciones óptimas; de hecho,no garantizael que haya una solución.Todo lo que se puede decir paraque una huerísticasea útil es que ofrece solucionesque son suficientementebuenasla mayoríade las veces.

Máquinas LISP

Se entiendepor máquinaLISPun ordenadorde un únicousuariodiseñados fundamentalmentepara el desarrollode programasde lA. Además,hay ciertos tiposde hard y softwareque se han convertidoen estándarpara las máquinas [ISP. Característicashardware Procesadorde alta velocidad.Puedendar tiemposde ejecuciónde diez a veinte veces superioresa otrosordenadores. Gran memoria.Los programasde lA necesitanmás Memoriade Acceso Aleatoria (RAM)y más espacio de almacenamientode disco que otros programas.Además,la memoriaestá disponibleen cualquierinstantepara el únicousuariode la máquina,en contraposicióna lo que sucedeen otros ordenadores(tiempocompartido). 96



En el cuadro 1 se presentantamaños típcos de memoriade distintos ordenadores.Si comparamosla capacidadesde disco y de RAMde una máquina LISP,corno Symbolicscon las de un ordenadortípicode tiempo compartido,comoel VAX-11/785, puedeparecerque aquéllaes la mitadde potente queésta.Sin embargo,deberecordarsequetoda la memoriade una LISP se encuentradisponiblepara cada programadorindividual,mientras que uno que esté utilizandoun ordenadorde tiempo compartidodebe compartir los recursosde memoriacon los otrosusuariosdel ordenador. Cuadro1.—Tamañotípicode memoriade’distintosordenadores. Ordenador

RAM

Memoria de disco

Ordenadores personales PC,s 640Kbytes 18 Mbytes Ordenadores personales «tecnología avanzada» 1 a 2Mbytes 20 a 30 Mbytes 30Mbytes 474 Mbytes MáquinaLISP(Symbolics 3670) Miniordenadores detiempoimpartido (DECVAX- 64Mbytes 1 Gbytes 11/787) -

1 Kb = 1.000 caracteres(tresceros). 1 Mb = 1 .000.000de caracteres(seisceros). 1 Gb = 1.000.000.000de caracteres(nueveceros).

Visualizaciónde mapasde bits.La visualizaciónen unamáquinaLISPes de alta resolución,pudiendorepresentaren pantallamuchosmáscaracteresal mismo tiempo,pudiendoademásencendero apagarcada pixel individual mente. Estacapacidades lo quese conocecomovisualizaciónde mapasde bits. Teclado especializado.Poseenteclasde funciónespecialesparaprograma

ción en lA. Ratón. Un ratón permite usar un ordenadorsimplementeapuntandoa elementos que están en la pantallaen lugarde estar escribiendosobreel teclado. Comunicación.LasmáquinasLISPsuelencomunicarse con otrosordenadores usando redes localeso con un sistemade telecomunicaciones.

Característicassoftware

.

Las máquinas LISP disponen de muchas herramientassoftware para simplificar y agilizarla escriturade programasde lA. Citaremos,entreellas: Lenguajesespecializados,LISPy/o PROLOG. —



97



— —



Editores,para introduciry/o modificarun programa. Depuradores,paraayudara identificary corregirerroresen el programa. Herramientasde desarrollode sistemasexpertos. Herramientasde desarrollode softwareinteligente,para ayudaren las distintas fases de proceso de programación,como por ejemplo las ventanas de la pantalla.

Algunas máquinasLISP — —

LMI Lambda. Symbolicsserie3600 (3460y 3670). Xeron, serie 1100(1108y 1132).

Tecnologíaavanzadapor ordenadores Los programasde A necesitanmás recursosinformáticosque otros. La mayor parte de la investigaciónen lA está dedicada a optimizar los ordenadores para emplearlosen aplicacionesde lA. Mencionaremosa continuacióndos grandesáreas de investigación. Integración a escalamuy grande:VLSI La integraciónes el procesode combinarcomponenteselectrónicosen un único dispositivocompacto:chip.La técnicaVLSIpermiteintegarcientosde miles de componentesen un único chip, dotandoa los ordenadoresde memoria suficientemente grandey de altas velocidadesde procesamiento. Por ejemplo,el proyectojaponésde quinta generaciónesperadesarrollar ordenadores con memoriasde 1.000 gigabytes (1.000.000.000.000 de caracteres) y velocidades de mil millones de inferencias lógicas por segundo. Cadainferencialógica contienede 100 a 1.000 instruccionesde ordenador. Procesamientoparalelo Los ordenadores,que pareceque están haciendomuchascosas al mismo tiempo, en realidad realizanlas acciones en secuencia,de una en una (procesamiento secuencial). Uno de los objetivos de investigaciónen ordenadores es incrementarlas velocidadesde cálculo, y uno de los métodos para lograrlo es ejecutar más de un proceso al mismo tiempo (procesamientoparalelo).Estecaminoes posiblehoy día,dadoqueel coste de las técnicas VLSI han hecho de los procesadoresuno de los componentesmás baratosde un ordenador. —

98



El proyectode arquitecturaavanzadade ordenadoresde la Compañíade Tecnología de Ordenadoresy Microelectrónica(MCC),consorcio de 21 compañíasamericanas,estáinvestigandoformasde representarel conoci miento humanopara mejorarel almacenamientoy recuperaciónde una informaciónen una basede datos,para incorporarlas tecnologíasde lA al diseño de ordenadoresy para mejorar el procesamientoparalelo.Este proyecto durarádiez añosy se centra en los siguientespuntos: Sistemasbasadosen conocimiento/lA. Gestión de sistemasde base de datos. Tecnologíade factoreshumanos. ProcesamiefltC) paralelo. — — — —



99

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.