sábado, 21 de noviembre de 2009

La Inteligencia Artificial



Se denomina inteligencia artificial a la rama de la ciencia informática dedicada al desarrollo de agentes racionales no vivos.

Para explicar la definición anterior, entiéndase a un agente como cualquier cosa capaz de percibir su entorno (recibir entradas), procesar tales percepciones y actuar en su entorno (proporcionar salidas), y entiéndase a la racionalidad como la característica que posee una elección de ser correcta, más específicamente, de tender a maximizar un resultado esperado (este concepto de racionalidad es más general y por ello más adecuado que inteligencia para definir la naturaleza del objetivo de esta disciplina).

Por lo tanto, y de manera más específica la inteligencia artificial es la disciplina que se encarga de construir procesos que al ser ejecutados sobre una arquitectura física producen acciones o resultados que maximizan una medida de rendimiento determinada, basándose en la secuencia de entradas percibidas y en el conocimiento almacenado en tal arquitectura.

Existen distintos tipos de conocimiento y medios de representación del conocimiento. El cual puede ser cargado en el agente por su diseñador o puede ser aprendido por el mismo agente utilizando técnicas de aprendizaje.

También se distinguen varios tipos de procesos válidos para obtener resultados racionales, que determinan el tipo de agente inteligente. De más simples a más complejos, los cinco principales tipos de procesos son:

Ejecución de una respuesta predeterminada por cada entrada (análogas a actos reflejos en seres vivos).
Búsqueda del estado requerido en el conjunto de los estados producidos por las acciones posibles.
Algoritmos genéticos (análogo al proceso de evolución de las cadenas de ADN).
Redes neuronales artificiales (análogo al funcionamiento físico del cerebro de animales y humanos).
Razonamiento mediante una lógica formal (análogo al pensamiento abstracto humano).
También existen distintos tipos de percepciones y acciones, pueden ser obtenidas y producidas, respectivamente por sensores físicos y sensores mecánicos en máquinas, pulsos eléctricos u ópticos en computadoras, tanto como por entradas y salidas de bits de un software y su entorno software.

Varios ejemplos se encuentran en el área de control de sistemas, planificación automática, la habilidad de responder a diagnósticos y a consultas de los consumidores, reconocimiento de escritura, reconocimiento del habla y reconocimiento de patrones. Los sistemas de IA actualmente son parte de la rutina en campos como economía, medicina, ingeniería y la milicia, y se ha usado en gran variedad de aplicaciones de software, juegos de estrategia como ajedrez de computador y otros videojuegos.


Inteligencia artificial convencional
Se conoce también como IA simbólico-deductiva. Está basada en el análisis formal y estadístico del comportamiento humano ante diferentes problemas:

Razonamiento basado en casos: Ayuda a tomar decisiones mientras se resuelven ciertos problemas concretos.
Sistemas expertos: Infieren una solución a través del conocimiento previo del contexto en que se aplica y ocupa de ciertas reglas o relaciones.
Redes bayesianas: Propone soluciones mediante inferencia estadística.
Inteligencia artificial basada en comportamientos: que tienen autonomía y pueden auto-regularse y controlarse para mejorar.
[editar] Inteligencia artificial computacional
Artículo principal: Inteligencia Computacional
La Inteligencia Computacional (también conocida como IA subsimbólica-inductiva) implica desarrollo o aprendizaje interactivo (por ejemplo, modificaciones interactivas de los parámetros en sistemas conexionistas). El aprendizaje se realiza basándose en datos empíricos.

La Web 3.0 o Web Semántica


Web 3.0 es un neologismo que se utiliza para describir la evolución del uso y la interacción en la red a través de diferentes caminos. Ello incluye, la transformación de la red en una base de datos, un movimiento hacia hacer los contenidos accesibles por múltiples aplicaciones non-browser, el empuje de las tecnologías de inteligencia artificial, la web semántica, la Web Geoespacial, o la Web 3D. Frecuentemente es utilizado por el mercado para promocionar las mejoras respecto a la Web 2.0. El término Web 3.0 apareció por primera vez en 2006 en un artículo de Jeffrey Zeldman, crítico de la Web 2.0 y asociado a tecnologías como AJAX. Actualmente existe un debate considerable en torno a lo que significa Web 3.0, y cual es la definición acertada.[1]


Innovaciones [editar]Las tecnologías de la Web 3.0, como programas inteligentes, que utilizan datos semánticos; se han implementado y usado a pequeña escala en compañías para conseguir una manipulación de datos más eficiente. En los últimos años, sin embargo, ha habido un mayor enfoque dirigido a trasladar estas tecnologías de inteligencia semántica al público general.

Bases de datos [editar]El primer paso hacia la "Web 3.0" es el nacimiento de la "Data Web", ya que los formatos en que se publica la información en Internet son dispares, como XML, RDF y microformatos; el reciente crecimiento de la tecnología SPARQL, permite un lenguaje estandarizado y API para la búsqueda a través de bases de datos en la red. La "Data Web" permite un nuevo nivel de integración de datos y aplicación inter-operable, haciendo los datos tan accesibles y enlazables como las páginas web. La "Data Web" es el primer paso hacia la completa “Web Semántica”. En la fase “Data Web”, el objetivo es principalmente, hacer que los datos estructurados sean accesibles utilizando RDF. El escenario de la "Web Semántica" ampliará su alcance en tanto que los datos estructurados e incluso, lo que tradicionalmente se ha denominado contenido semi-estructurado (como páginas web, documentos, etc.), esté disponible en los formatos semánticos de RDF y OWL.[2]

Inteligencia artificial [editar]Web 3.0 también ha sido utilizada para describir el camino evolutivo de la red que conduce a la inteligencia artificial. Algunos escépticos lo ven como una visión inalcanzable. Sin embargo, compañías como IBM y Google están implementando nuevas tecnologías que cosechan información sorprendente, como el hecho de hacer predicciones de canciones que serán un éxito, tomando como base información de las webs de música de la Universidad. Existe también un debate sobre si la fuerza conductora tras Web 3.0 serán los sistemas inteligentes, o si la inteligencia vendrá de una forma más orgánica, es decir, de sistemas de inteligencia humana, a través de servicios colaborativos como del.icio.us, Flickr y Digg, que extraen el sentido y el orden de la red existente y cómo la gente interactúa con ella.

Web semántica y SOA [editar]En relación con la dirección de la inteligencia artificial, la Web 3.0 podría ser la realización y extensión del concepto de la “Web semántica”. Las investigaciones académicas están dirigidas a desarrollar programas que puedan razonar, basados en descripciones lógicas y agentes inteligentes. Dichas aplicaciones, pueden llevar a cabo razonamientos lógicos utilizando reglas que expresan relaciones lógicas entre conceptos y datos en la red.[3] Sramana Mitra difiere con la idea de que la "Web Semántica" será la esencia de la nueva generación de Internet y propone una fórmula para encapsular Web 3.[4]

Distinción entre Datos y Visores [editar]Uno de los factores que más se persiguen en la Web 3.0 es la distinción entre qué se muestra y cómo se muestra principalmente, es decir, los Base de datos y el Navegadores. Este nuevo modelo concibe páginas webs Tuentidad: Aplicación Web con división D/V que pueden cambiarse completamente de ubicación (servidores o subdirectorios), así como de hoja de estilos, diseño o incluso Plataforma (informática) como páginas web, aplicaciones webs u otras soluciones de escritorio; todas ellas mostrando los mismos datos.[5]

Este tipo de evoluciones se apoyan en tecnologías de llamadas asíncronas para recibir e incluir los datos dentro del visor de forma independiente. También permiten la utilización en dispositivos móviles, o diferentes dispositivos accesibles para personas con discapacidades, o con diferentes idiomas sin transformar los datos.

Para los visores: en la web, xHTML, JavaScript, COMET, Ajax, etc.
Para los datos: Lenguaje de programación interpretado, Base de datos relacional y protocolos para solicitar los datos.
Evolución al 3D [editar]Otro posible camino para la Web 3.0 es la dirección hacia la visión 3D, liderada por el Web 3D Consortium. Esto implicaría la transformación de la Web en una serie de espacios 3D, llevando más lejos el concepto propuesto por Second Life.[6] Esto podría abrir nuevas formas de conectar y colaborar, utilizando espacios tridimensionales.[7]



El concepto original del contexto, llamado Web 1.0 era páginas estáticas programadas en HTML que no eran actualizadas frecuentemente. El éxito de las .com dependía de webs más dinámicas (a veces llamadas Web 1.5) donde los CMS Sistema de gestión de contenidos (Content Management System en inglés, abreviado CMS) servían páginas HTML dinámicas creadas al vuelo desde una actualizada base de datos. En ambos sentidos, el conseguir hits (visitas) y la estética visual eran considerados como factores importantes.

Los teóricos de la aproximación a la Web 2.0 creen que el uso de la web está orientado a la interacción y redes sociales, que pueden servir contenido que explota los efectos de las redes, creando o no webs interactivas y visuales. Es decir, los sitios Web 2.0 actúan más como puntos de encuentro, o webs dependientes de usuarios, que como webs tradicionales.


Tecnología
Se puede decir que una web está construida usando tecnología de la Web 2.0 si se caracteriza por las siguientes técnicas:


Web 2.0 buzz wordsTécnicas:
CSS, marcado XHTML válido semánticamente y Microformatos
Técnicas de aplicaciones ricas no intrusivas (como AJAX)
Java Web Start
XUL
Redifusión/Agregación de datos en RSS/ATOM
URLs sencillas con significado semántico
Soporte para postear en un blog
JCC y APIs REST o XML
JSON
Algunos aspectos de redes sociales
Mashup (aplicación web híbrida)
General:
El sitio no debe actuar como un "jardín cerrado": la información debe poderse introducir y extraer fácilmente
Los usuarios deberían controlar su propia información
Basada exclusivamente en la Web: los sitios Web 2.0 con más éxito pueden ser utilizados enteramente desde un navegador
La existencia de autolinks es requisito imprescindible
[editar] Software de servidor
La funcionalidad de Web 2.0 se basa en la arquitectura existente de servidor web pero con un énfasis mayor en el software dorsal. La redifusión sólo se diferencia nominalmente de los métodos de publicación de la gestión dinámica de contenido, pero los servicios Web requieren normalmente un soporte de bases de datos y flujo de trabajo mucho más robusto y llegan a parecerse mucho a la funcionalidad de Internet tradicional de un servidor de aplicaciones. El enfoque empleado hasta ahora por los fabricantes suele ser bien un enfoque de servidor universal, el cual agrupa la mayor parte de la funcionalidad necesaria en una única plataforma de servidor, o bien un enfoque plugin de servidor Web con herramientas de publicación tradicionales mejoradas con interfaces API y otras herramientas. Independientemente del enfoque elegido, no se espera que el camino evolutivo hacia la Web 2.0 se vea alterado de forma importante por estas opciones.


Aplicaciones Educativas
Anteriormente la internet era propiamente unidireccional, es decir, la información era más bien de corte informativo y no permitía la interacción directa con y entre los usuarios. Hoy en día, se ha convertido en bidireccional y nos permite la interacción de todo tipo de contenido, sean estos videos, imágenes, textos e inclusive almacenamiento y edición de archivos online y en tiempo real. Estas herramientas permiten la integración de un tejido social, es decir, una red de personas que pueden interactuar a través de los espacios que se han generado en internet, tales como blogs, google groups, twitter, facebook, wikipedia y un sinfín de útiles aplicaciones que permiten la interrelación de información. En este sentido, la información necesita de ser procesada, asimilada en aprendizajes útiles para los propósitos de la educación, que verdaderamente incidan sobre los conocimientos que imparten los docentes en sus aulas. Así, la web se basa en un componente social, por lo que aplicada en el ámbito educativo, constituye un potente medio para construir el conocimiento de forma colaborativa, mediante aportaciones individuales que enriquezcan el aprendizaje y la práctica docente. En este sentido, la información circula en la internet y es necesario desarrollar competencias necesarias para recopilar, organizar y procesar la información para generar contenidos oportunos y aplicables en la vida diaria. Así por ejemplo, podríamos utilizar google earth, al momento de impartir la clase de geografía o historia universal para ubicarnos en el espacio y en el tiempo, creando estrategias de participación de manera presencial o virtual con los alumnos, al tiempo que se generan respuestas en determinados blogs creados para la materia, y se suben los productos escritos formales al correo electrónico o a un escritorio virtual o a officelive workspace, que nos da la posibilidad de subir y compartir archivos online, al tiempo que se pueden editar por los usuarios participantes.

Servidor Web


Un servidor web es un programa que implementa el protocolo HTTP (HyperText Transfer Protocol). Este protocolo pertenece a la capa de aplicación del modelo OSI y está diseñado para transferir lo que llamamos hipertextos, páginas web o páginas HTML (HyperText Markup Language): textos complejos con enlaces, figuras, formularios, botones y objetos incrustados como animaciones o reproductores de música.

Es un programa que se ejecuta continuamente en un ordenador (también se emplea el término para referirse al ordenador que lo ejecuta), manteniéndose a la espera de peticiones por parte de un cliente (un navegador web) y que responde a estas peticiones adecuadamente, mediante una página web que se exhibirá en el navegador o mostrando el respectivo mensaje si se detectó algún error.

Instalar un servidor web en nuestro PC nos permitirá, entre otras cosas, poder montar nuestra propia página web sin necesidad de contratar hosting, probar nuestros desarrollos vía local, acceder a los archivos de nuestro equipo desde un PC remoto (aunque para esto existen otras opciones, como utilizar un servidor FTP) o utilizar alguno de los programas basados en web tan interesantes que están viendo la luz últimamente. El problema de usar nuestro ordenador como servidor web es que conviene tenerlo encendido permanentemente (para que esté accesible de forma continua como la mayoría de los sitios webs), con el consiguiente coste debido al consumo de electricidad (conviene tener en cuenta que hay alojamientos web gratuitos, incluso sin publicidad y con interesantes funciones).


Servidor web de la WikimediaSin embargo, el hecho de que HTTP y HTML estén íntimamente ligados no debe dar lugar a confundir ambos términos. HTML es un lenguaje de marcas y HTTP es un protocolo.

Un servidor web se mantiene a la espera de peticiones HTTP por parte de un cliente HTTP que solemos conocer como navegador. El cliente realiza una petición al servidor y éste le responde con el contenido que el cliente solicita. A modo de ejemplo, al teclear www.wikipedia.org en nuestro navegador, éste realiza una petición HTTP al servidor de dicha dirección. El servidor responde al cliente enviando el código HTML de la página; el cliente, una vez recibido el código, lo interpreta y lo exhibe en pantalla. Como vemos con este ejemplo, el cliente es el encargado de interpretar el código HTML, es decir, de mostrar las fuentes, los colores y la disposición de los textos y objetos de la página; el servidor tan sólo se limita a transferir el código de la página sin llevar a cabo ninguna interpretación de la misma.

Sobre el servicio web clásico podemos disponer de aplicaciones web. Éstas son porciones de código que se ejecutan cuando se realizan ciertas peticiones o respuestas HTTP. Hay que distinguir entre:

Aplicaciones en el lado del cliente: el cliente web es el encargado de ejecutarlas en la máquina del usuario. Son las aplicaciones tipo Java o Javascript: el servidor proporciona el código de las aplicaciones al cliente y éste, mediante el navegador, las ejecuta. Es necesario, por tanto, que el cliente disponga de un navegador con capacidad para ejecutar aplicaciones (también llamadas scripts). Comúnmente, los navegadores permiten ejecutar aplicaciones escritas en lenguaje javascript y java, aunque pueden añadirse más lenguajes mediante el uso de plugins.
Aplicaciones en el lado del servidor: el servidor web ejecuta la aplicación; ésta, una vez ejecutada, genera cierto código HTML; el servidor toma este código recién creado y lo envía al cliente por medio del protocolo HTTP.
Las aplicaciones de servidor muchas veces suelen ser la mejor opción para realizar aplicaciones web. La razón es que, al ejecutarse ésta en el servidor y no en la máquina del cliente, éste no necesita ninguna capacidad añadida, como sí ocurre en el caso de querer ejecutar aplicaciones javascript o java. Así pues, cualquier cliente dotado de un navegador web básico puede utilizar este tipo de aplicaciones

viernes, 20 de noviembre de 2009

un sitio Web

Un sitio web es un conjunto de páginas web, típicamente comunes a un dominio de Internet o subdominio en la World Wide Web en Internet.

Una página web es un documento HTML/XHTML accesible generalmente mediante el protocolo HTTP de Internet.

Todos los sitios web públicamente accesibles constituyen una gigantesca "World Wide Web" de información.

A las páginas de un sitio web se accede desde un URL raíz común llamado portada, que normalmente reside en el mismo servidor físico. Los URL organizan las páginas en una jerarquía, aunque los hiperenlaces entre ellas controlan cómo el lector percibe la estructura general y cómo el tráfico web fluye entre las diferentes partes de los sitios.

Algunos sitios web requieren una subscripción para acceder a algunos o todos sus contenidos. Ejemplos de sitios con subscripción incluyen muchos sitios de pornografía en Internet, parte de muchos sitios de noticias, sitios de juegos, foros, servicios de correo electrónico basados en web y sitios que proporcionan datos de bolsa en tiempo real.

Visión general [editar]Es otra organización y está típicamente dedicada a algún tema particular o propósito. Cualquier sitio web puede contener hiperenlaces a cualquier otro sitio web, de manera que la distinción entre sitios individuales, percibido por el usuario, puede ser a veces borroso.

No debemos confundir sitio web con página web, esta última es sólo un archivo HTML, y forma parte de un sitio web. Al ingresar una dirección, como por ejemplo www.wikimedia.org, siempre se está haciendo referencia a un sitio web, que tiene una página HTML inicial, que es lo primero que se visualiza. La búsqueda en Internet se realiza asociando el DNS ingresado con la dirección IP del servidor que contenga el sitio web en el cual está la página HTML buscada.

Los sitios web están escritos en HTML (Hyper Text Markup Language), o dinámicamente convertidos a éste y se acceden usando un software llamado navegador web, también conocido como un cliente HTTP. Los sitios web pueden ser visualizados o accedidos desde un abanico de dispositivos con disponibilidad de Internet como computadoras personales, computadores portátiles, PDAs y teléfonos móviles.

Un sitio web está alojado en una computadora conocida como servidor web, también llamada servidor HTTP, y estos términos también pueden referirse al software que se ejecuta en esta computadora y que recupera y entrega las páginas de un sitio web en respuesta a peticiones del usuario. Apache es el programa más comúnmente usado como servidor web (según las estadísticas de Netcraft) y el Internet Information Services (IIS) de Microsoft también se usa comúnmente.

Un sitio web estático es uno que tiene contenido que no se espera que cambie frecuentemente y se mantiene manualmente por alguna persona o personas que usan algún tipo de programa editor. Hay dos amplias categorías de programas editores usados para este propósito que son

Editores de texto como Notepad, donde el HTML se manipula directamente en el programa editor o
Editores WYSIWYG como por ejemplo Microsoft FrontPage y Adobe Dreamweaver, donde el sitio se edita usando una interfaz GUI y el HTML subyacente se genera automáticamente con el programa editor.
Un sitio web dinámico es uno que puede tener cambios frecuentes en la información. Cuando el servidor web recibe una petición para una determinada página de un sitio web, la página se genera automáticamente por el software como respuesta directa a la petición de la página; Por lo tanto abriendo muchas posibilidades incluyendo por ejemplo: El sitio puede mostrar el estado actual de un diálogo entre usuarios, monitorizar una situación cambiante, o proporcionar información personalizada de alguna manera a los requisitos del usuario individual.

Hay un amplio abanico de sistemas de software, como el lenguaje de programación PHP, Active Server Pages (ASP), y Java Server Pages (JSP) que están disponibles para generar sistemas de sitios web dinámicos. Los sitios dinámicos a menudo incluyen contenido que se recupera de una o más bases de datos o usando tecnologías basadas en XML como por ejemplo el RSS.

El contenido estático puede también ser generado de manera dinámica periódicamente o si ocurren ciertas condiciones para la regeneración para evitar la pérdida de rendimiento de iniciar el motor dinámico para cada usuario o para cada conexión.

Hay plugins disponibles para navegadores, que se usan para mostrar contenido activo como Flash, Shockwave o applets escritos en Java. El HTML dinámico también proporciona para los usuarios interactividad y el elemento de actualización en tiempo real entre páginas web (i.e, las páginas no tienen que cargarse o recargarse para efectuar cualquier cambio), principalmente usando el DOM y JavaScript, el soporte de los cuales está integrado en la mayoría de navegadores web modernos.

Este tema es muy amplio y cada día hay nuevos modelos de páginas muy profesionales.

Últimamente, dado el compromiso social de muchos gobiernos, se recomienda que los Sitios Web cumplan unas normas de accesibilidad para que éstos, puedan ser visitados y utilizados por el mayor número de personas posibles independientemente de sus limitaciones físicas o las derivadas de su entorno. La accesibilidad web viene recogida en las Pautas de Accesibilidad al Contenido Web WCAG 1.0 del W3C.

Página Web


Una página web, también conocida como página de Internet, es un documento adaptado para la Web y que normalmente forma parte de un sitio web. Su principal característica son los hiperenlaces a otras páginas, siendo esto el fundamento de la Web.

Una página web está compuesta principalmente por información (sólo texto o multimedia) e hiperenlaces; además puede contener o asociar datos de estilo para especificar cómo debe visualizarse, o aplicaciones embebidas para hacerla interactiva.

Las páginas web son escritas en un lenguaje de marcado que provea la capacidad de insertar hiperenlaces, generalmente HTML.

El contenido de la página puede ser predeterminado ("página web estática") o generado al momento de visualizarla o solicitarla a un servidor web ("página web dinámica"). Las páginas dinámicas que se generan al momento de la visualización se hacen a través de lenguajes interpretados, generalmente JavaScript, y la aplicación encargada de visualizar el contenido es la que debe generarlo. La páginas dinámicas que se generan al ser solicitadas son creadas por una aplicación en el servidor web que alberga las mismas.

Respecto a la estructura de las páginas web algunos organismos, en especial el W3C, suelen establecer directivas con la intención de normalizar el diseño para facilitar y simplificar la visualización e interpretación del contenido.

World Wide Web



Para otros usos de este término, véase WWW y web.
No debe confundirse con WorldWideWeb o Internet.
En informática, la World Wide Web, cuya traducción podría ser Red Global Mundial, es un sistema de documentos de hipertexto y/o hipermedios enlazados y accesibles a través de Internet. Con un navegador web, un usuario visualiza sitios web compuestos de páginas web que pueden contener texto, imágenes, videos u otros contenidos multimedia, y navega a través de ellas usando hiperenlaces.

La Web fue creada alrededor de 1989 por el inglés Tim Berners-Lee y el belga Robert Cailliau mientras trabajaban en el CERN en Ginebra, Suiza, y publicado en 1992. Desde entonces, Berners-Lee ha jugado un papel activo guiando el desarrollo de estándares Web (como los lenguajes de marcado con los que se crean las páginas web), y en los últimos años ha abogado por su visión de una Web Semántica.