Inteligencia Artificial y Cibernética
La inteligencia artificial, término que acuñó John McCarthy me parece,
se basa en la idea de hacer sistemas inteligentes, tan capaces como los
que puede lograr el cerebro humano. Sin embargo, se halló, después de
los primeros años frustrantes, que la inteligencia humano no sólo era
complicada, sino mucho más complicada de lo que habíamos pensado. Por
ello, hubo una división natural de tareas: visión por computadora;
sistemas expertos; reconocimiento de patrones; entre otros.
Es un lugar común escuchar el uso del término “cibernética”
como equivalente de “aquel hecho informático en un entorno de
computadoras y robots”, por desgracia esta aberración no es
exclusiva del hablar del ciudadano común y corriente poco
informado, sino que ha alcanzado un alarmante uso generalizado
entre académicos y profesionales de disciplinas relacionadas
a ella.
El Periodismo de la Inteligencia Artificial.
El mayor motor de difusión del periodismo en la actualidad es internet.
Todos los días leemos noticias en twitter escritas por
personas que no se dedican profesionalmente al periodismo. Pese a ello,
el modelo periodístico y de redacción sigue siendo el tradicional. El de
los diarios en papel, con sus mesas de redacción y directores de
contenidos. Se abre ante nosotros una nueva era de modernización del
periodismo, con nuevas estructuras y nuevos modelos de engranaje. Donde
la vieja imagen del estrés en la redacción cuando se acerca la hora de
cierre está condenada al olvido.
Otra cuestión, que no está considerada en el sistema experto es la de
explicar su funcionamiento. Es decir, ¿por qué el sistema experto llegó a
las conclusiones y diagnósticos a los que llegó? Hay muchas maneras de
hacer esto pero una de ellas es simplemente avisarle al programador, vía
mensajes a la pantalla, en qué regla está trabajando. Otrso sistemas
expertos pueden trazar la ruta de desarrollo. Por ejemplo, pueden
decirte: "primero usé la regla 4, la cual me remitió a la regla 92 y por
las respuestas del usuario tuve que probar las reglas 153 y 25", etc.
Pero esto es mucho más sofisticado y difícil de programar.
/* Program: Dog Expert */
/* Purpose: To show the working of */
/* an expert system. It is a pro- */
/* duction rule-based system. */
/* */
/* Remarks: This is a dog classi- */
/* cation expert system. It uses a */
/* set of production rules for the */
/* purpose of inferring. */
domains
database
xpositive(symbol,symbol)
xnegative(symbol,symbol)
predicates
do_expert_job
do_consulting
ask(symbol,symbol)
dog_is(symbol)
it_is(symbol)
positive(symbol,symbol)
negative(symbol,symbol)
remember(symbol,symbol,symbol)
clear_facts
goal
do_expert_job.
clauses
/* User Interface System (UIS) */
do_expert_job :-
makewindow(1,7,7,"An Expert System",1,16,22,58),
nl, write(" ************************************"),
nl, write(" Welcome to a Dog Expert System"),
nl, write(" "),
nl, write(" This is a dog identification system"),
nl, write(" Please, respond by typing in 'yes'"),
nl, write(" or 'no'. Thank you. "),
nl,nl,
do_consulting,
write("Press space bar..."), nl,
readchar(_),
clearwindow,
exit.
do_consulting :-
dog_is(X), !,
nl, write(" Your dog may be a(n) ",X,"."),
clear_facts.
do_consulting :-
nl, write("Sorry, unable to determine the dog."),nl,
clear_facts.
ask(X,Y) :-
write(" Question :- ",X," it, ",Y," ? "),
readln(Reply),
remember(X,Y,Reply).
/* Inference Engine (INE) */
positive(X,Y) :-
xpositive(X,Y),!.
positive(X,Y) :-
not(negative(X,Y)),!,
ask(X,Y).
negative(X,Y) :-
xnegative(X,Y),!.
remember(X,Y,yes) :-
asserta(xpositive(X,Y)).
remember(X,Y,no) :-
asserta(xnegative(X,Y)),
fail.
clear_facts :-
retract(xpositive(_,_)),
fail.
clear_facts :-
retract(xnegative(_,_)),
fail.
/* Production Rules */
dog_is("English Bulldog") :-
it_is("short-haired dog"),
positive(has,"height under 22 inches"),
positive(has,"low-set tail"),
positive(has,"good natured personality"),!.
dog_is("Beagle") :-
it_is("short-haired dog"),
positive(has,"height under 22 inches"),
positive(has,"long ears"),
positive(has,"good natured personality"),!.
dog_is("Great Dane") :-
it_is("short-haired dog"),
positive(has,"low-set tail"),
positive(has,"longer ears"),
positive(has,"good natured personality"),
positive(has,"weight over 100 lb"),!.
dog_is("American Foxhound") :-
it_is("short-haired dog"),
positive(has,"height under 30 inches"),
positive(has,"longer ears"),
positive(has,"good natured personality"),!.
dog_is("Cocker Spaniel") :-
it_is("long-haired dog"),
positive(has,"height under 22 inches"),
positive(has,"low-set tail"),
positive(has,"longer ears"),
positive(has,"good natured personality"),!.
dog_is("Irish Setter") :-
it_is("long-haired dog"),
positive(has,"height under 30 inches"),
positive(has,"low-set tail"),
positive(has,"good natured personality"),!.
dog_is("Collie") :-
it_is("long-haired dog"),
positive(has,"height under 30 inches"),
positive(has,"low-set tail"),
positive(has,"good natured personality"),!.
dog_is("St. Bernard") :-
it_is("long-haired dog"),
positive(has,"low-set tail"),
positive(has,"good natured personality"),
positive(has,"weight over 100 lb"),!.
it_is("short-haired dog") :-
positive(has,"short-haired"),!.
it_is("long-haired dog") :-
positive(has,"long-haired"),!.
/* Program: Dog Expert */
/* Purpose: To show the working of */
/* an expert system. It is a pro- */
/* duction rule-based system. */
/* */
/* Remarks: This is a dog classi- */
/* cation expert system. It uses a */
/* set of production rules for the */
/* purpose of inferring. */
domains
database
xpositive(symbol,symbol)
xnegative(symbol,symbol)
predicates
do_expert_job
do_consulting
ask(symbol,symbol)
dog_is(symbol)
it_is(symbol)
positive(symbol,symbol)
negative(symbol,symbol)
remember(symbol,symbol,symbol)
clear_facts
goal
do_expert_job.
clauses
/* User Interface System (UIS) */
do_expert_job :-
makewindow(1,7,7,"An Expert System",1,16,22,58),
nl, write(" ************************************"),
nl, write(" Welcome to a Dog Expert System"),
nl, write(" "),
nl, write(" This is a dog identification system"),
nl, write(" Please, respond by typing in 'yes'"),
nl, write(" or 'no'. Thank you. "),
nl,nl,
do_consulting,
write("Press space bar..."), nl,
readchar(_),
clearwindow,
exit.
do_consulting :-
dog_is(X), !,
nl, write(" Your dog may be a(n) ",X,"."),
clear_facts.
do_consulting :-
nl, write("Sorry, unable to determine the dog."),nl,
clear_facts.
ask(X,Y) :-
write(" Question :- ",X," it, ",Y," ? "),
readln(Reply),
remember(X,Y,Reply).
/* Inference Engine (INE) */
positive(X,Y) :-
xpositive(X,Y),!.
positive(X,Y) :-
not(negative(X,Y)),!,
ask(X,Y).
negative(X,Y) :-
xnegative(X,Y),!.
remember(X,Y,yes) :-
asserta(xpositive(X,Y)).
remember(X,Y,no) :-
asserta(xnegative(X,Y)),
fail.
clear_facts :-
retract(xpositive(_,_)),
fail.
clear_facts :-
retract(xnegative(_,_)),
fail.
/* Production Rules */
dog_is("English Bulldog") :-
it_is("short-haired dog"),
positive(has,"height under 22 inches"),
positive(has,"low-set tail"),
positive(has,"good natured personality"),!.
dog_is("Beagle") :-
it_is("short-haired dog"),
positive(has,"height under 22 inches"),
positive(has,"long ears"),
positive(has,"good natured personality"),!.
dog_is("Great Dane") :-
it_is("short-haired dog"),
positive(has,"low-set tail"),
positive(has,"longer ears"),
positive(has,"good natured personality"),
positive(has,"weight over 100 lb"),!.
dog_is("American Foxhound") :-
it_is("short-haired dog"),
positive(has,"height under 30 inches"),
positive(has,"longer ears"),
positive(has,"good natured personality"),!.
dog_is("Cocker Spaniel") :-
it_is("long-haired dog"),
positive(has,"height under 22 inches"),
positive(has,"low-set tail"),
positive(has,"longer ears"),
positive(has,"good natured personality"),!.
dog_is("Irish Setter") :-
it_is("long-haired dog"),
positive(has,"height under 30 inches"),
positive(has,"low-set tail"),
positive(has,"good natured personality"),!.
dog_is("Collie") :-
it_is("long-haired dog"),
positive(has,"height under 30 inches"),
positive(has,"low-set tail"),
positive(has,"good natured personality"),!.
dog_is("St. Bernard") :-
it_is("long-haired dog"),
positive(has,"low-set tail"),
positive(has,"good natured personality"),
positive(has,"weight over 100 lb"),!.
it_is("short-haired dog") :-
positive(has,"short-haired"),!.
it_is("long-haired dog") :-
positive(has,"long-haired"),!.
habla tu mismo como eres en un S.E.
No hay comentarios:
Publicar un comentario