Está en la página 1de 10

Unidad 3:

Representacin del
conocimiento y
razonamiento

3.1. Sistemas basados


en conocimiento.

surgen como una


evolucin de los
paradigmas de
programacin a lo
largo de la historia de
la informtica

3.1.1. Concepto de
conocimiento

Representan un paso
delante de los sistemas de
informacin convencionales
al pretender representar
funciones cognitivas del ser
humano como el
aprendizaje y el
razonamiento

3.2. Mapas
conceptuales.

3.1.2. Lenguajes
utilizados en la
representacin de
conocimiento

El lenguaje en el que se
expresa la ontologa debe
reunir caractersticas que a
veces (dependiendo del
dominio) no es fcil
compatibilizar

Son instrumentos de
representacin del
conocimiento sencillo y
prctico, que permiten
transmitir con claridad
mensajes conceptuales
complejos y facilitar tanto
el aprendizaje como la
enseanza.

Para mayor
abundamiento,
adoptan la forma de
grafos.

Unidad 3:
Representacin del
conocimiento y
razonamiento

3.3. Redes
semnticas.

Es un grafo, donde los


vrtices representan
conceptos y los arcos
representan relaciones
entre los conceptos

Se utilizan para
representar vocabulario
que es esencialmente
muy valioso para los
seres humanos.

3.4. Lgica de
predicados.

Es una herramienta para


estudiar el
comportamiento de un
sistema lgico.

Proporciona un
criterio para
determinar si un
sistema lgico es
absurdo o
inconsistente.

3.4.1.
Sintaxis.

Es la parte de la gramtica
que estudia las reglas y
principios que gobiernan la
combinatoria de
constituyentes sintcticos y la
formacin de unidades
superiores a estos, como los
sintagmas y las oraciones
gramaticales.

Elementos:
constantes
funciones
variables

Unidad 3: Representacin
del conocimiento y
razonamiento

3.4. Lgica de
predicados.

3.4.2. Semntica.

3.4.3. Validez..

Se refiere a los aspectos


del significado, sentido o
interpretacin de signos
lingsticos como
smbolos, palabras,
expresiones o
representaciones
formales..

Un predicado con variables


libres no es verdadero ni
falso, hasta que se asignen
valores para dichas
variables.gramaticales.

3.4.4.
Inferencia.

Reglas de
inferencia

Modus Ponendo Ponens


Modus Tollendo Tollens
Modus Tollendo Ponens
Doble negacin
Regla de adjuncin

Ley de adicin
Ley de simplificacin
disyuntiva
Ley del silogismo
hipottico
Ley del silogismo
disyuntivo
Leyes de Morgan

Unidad 3:
Representacin del
conocimiento y
razonamiento

3.5. Razonamiento
con incertidumbre.

En situaciones reales, no
siempre es posible contar
con toda la informacin.
Inclusive la informacin
disponible puede ser
incorrecta, incompleta o
cambiar muy rpidamente.

Todo esto da lugar a diferentes


formas de inconsistencias e
incertidumbre.

3.5.1.
Aprendizaje.

3.5.2.
Razonamiento
probabilstico.

Sistema organizado
que transforma un
mensaje de entrada en
uno de salida, de
acuerdo con el
principio de
Transformacin

La tcnica ms antigua
y mejor definida para
manejar la
incertidumbre es la
Regla de Bayes, la
misma que est
basada en la teora
clsica de la
probabilidad.

Unidad 3: Representacin
del conocimiento y
razonamiento

3.6. Demostracin y
mtodos.

3.5. Razonamiento
con incertidumbre.

3.5.3. Lgicas
multivaluadas.

3.5.4. Lgica
difusa..

Se usa en matemticas como


procedimiento para buscar modelos no
estndar..

Tambin llamada lgica


borrosa o heurstica, se basa
en lo relativo de lo observado
como posicin diferencial,
este tipo de lgica toma dos
valores aleatorios, pero
contextualizados y referidos
entre s.

Mtodos deductivos de
demostracin: el mtodo
deductivo es un proceso que
parte de un conocimiento
general, y arriba a uno
particular

public class puzzle extends javax.swing.JFrame {


int cartas[];
int j=-1;
JButton jb=new JButton();
JButton m=new JButton();
public puzzle() {
initComponents();
jb=jButton9;
int pos=0;
int n=0;
boolean p;
cartas=new int[8];
for(int x=0; x<8; x++)
cartas[x]=0;
for(int x=0; x<8; x++)
{
do{
n= (int) (Math.random()*8+1);
p=true;
for( int y=0; y<8; y++)
if (cartas[y]==n){
p=false;
break;}
}while(p==false);
do{
pos= (int) (Math.random()*8+0);
p=true;
if (cartas[pos]!=0)
p=false;
}while(p==false);
cartas[pos]=n;
}
for(int x=0; x<8; x++)
System.out.println(cartas[x]);
jButton1.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/imagenes/imagen"+ cartas[0] +
".jpg")));
jButton1.setMnemonic(cartas[0]);
jButton1.setToolTipText(Integer.toString(cartas[0]));
//j++;
jButton2.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/imagenes/imagen"+ cartas[1] +
".jpg")));
jButton2.setMnemonic(cartas[1]);
jButton2.setToolTipText(Integer.toString(cartas[1]));
//j++;

jButton3.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/imagenes/imagen"+
".jpg")));
jButton3.setMnemonic(cartas[2]);
jButton3.setToolTipText(Integer.toString(cartas[2]));
//j++;
jButton4.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/imagenes/imagen"+
".jpg")));
jButton4.setMnemonic(cartas[3]);
jButton4.setToolTipText(Integer.toString(cartas[3]));
//j++;
jButton5.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/imagenes/imagen"+
".jpg")));
jButton5.setMnemonic(cartas[4]);
jButton5.setToolTipText(Integer.toString(cartas[4]));
//j++;
jButton6.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/imagenes/imagen"+
".jpg")));
jButton6.setMnemonic(cartas[5]);
jButton6.setToolTipText(Integer.toString(cartas[5]));
//j++;
jButton7.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/imagenes/imagen"+
".jpg")));
jButton7.setMnemonic(cartas[6]);
jButton7.setToolTipText(Integer.toString(cartas[6]));
jButton8.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/imagenes/imagen"+
".jpg")));
jButton8.setMnemonic(cartas[7]);
jButton8.setToolTipText(Integer.toString(cartas[7]));
jButton9.setMnemonic(9);
}
private void cambiar(JButton a, JButton b){
JButton tem=new JButton();
tem.setIcon(a.getIcon());
a.setIcon(b.getIcon());
b.setIcon(tem.getIcon());
tem.setMnemonic(a.getMnemonic());
a.setMnemonic(b.getMnemonic());
b.setMnemonic(tem.getMnemonic());
tem.setToolTipText(a.getToolTipText());
a.setToolTipText(b.getToolTipText());
b.setToolTipText(tem.getToolTipText());
}

cartas[2] +

cartas[3] +

cartas[4] +

cartas[5] +

cartas[6] +

cartas[7] +

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {


if (jButton2.getIcon()==null){
cambiar(jButton1, jButton2);
System.out.println("vacio boton 2");
}else
if (jButton4.getIcon()==null){
cambiar(jButton1, jButton4);
System.out.println("vacio boton 4");
}
}
private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {
if (jButton7.getIcon()==null){
cambiar(jButton4, jButton7);
System.out.println("vacio boton 7");
}
else
if (jButton5.getIcon()==null){
cambiar(jButton4, jButton5);
System.out.println("vacio boton 5");
}
else
if (jButton1.getIcon()==null){
cambiar(jButton4, jButton1);
System.out.println("vacio boton 1");
}
private void jButton7ActionPerformed(java.awt.event.ActionEvent evt) {
if (jButton4.getIcon()==null){
cambiar(jButton7, jButton4);
System.out.println("vacio boton 4");
}
else
if (jButton8.getIcon()==null){
cambiar(jButton7, jButton8);
System.out.println("vacio boton 8");
}
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
if (jButton3.getIcon()==null){
cambiar(jButton2, jButton3);
System.out.println("vacio boton 3");
}
else
if (jButton5.getIcon()==null){
cambiar(jButton2, jButton5);
System.out.println("vacio boton 5");
}
else

if (jButton1.getIcon()==null){
cambiar(jButton2, jButton1);
System.out.println("vacio boton 1");
}
private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {
if (jButton6.getIcon()==null){
cambiar(jButton5, jButton6);
System.out.println("vacio boton 6");
}
if (jButton2.getIcon()==null){
cambiar(jButton5, jButton2);
System.out.println("vacio boton 2");
}
else
if (jButton4.getIcon()==null){
cambiar(jButton5, jButton4);
System.out.println("vacio boton 4");
}
else
if (jButton8.getIcon()==null){
cambiar(jButton5, jButton8);
System.out.println("vacio boton 8");
}
private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {
if (jButton7.getIcon()==null){
cambiar(jButton8, jButton7);
System.out.println("vacio boton 7");
}
else
if (jButton5.getIcon()==null){
cambiar(jButton8, jButton5);
System.out.println("vacio boton 5");
}
else
if (jButton9.getIcon()==null){
cambiar(jButton8, jButton9);
System.out.println("vacio boton 9");
}
}
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
if (jButton6.getIcon()==null){
cambiar(jButton3, jButton6);
System.out.println("vacio boton 6");
}
else
if (jButton2.getIcon()==null){
cambiar(jButton3, jButton2);

System.out.println("vacio boton 2");


}
}
private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {
if (jButton3.getIcon()==null){
cambiar(jButton6, jButton3);
System.out.println("vacio boton 3");
}
else
if (jButton5.getIcon()==null){
cambiar(jButton6, jButton5);
System.out.println("vacio boton 5");
}
else
if (jButton9.getIcon()==null){
cambiar(jButton6, jButton9);
System.out.println("vacio boton 9");}
}
private void jButton9ActionPerformed(java.awt.event.ActionEvent evt) {
if (jButton6.getIcon()==null){
cambiar(jButton9, jButton6);
System.out.println("vacio boton 6");
}
else
if (jButton8.getIcon()==null){
cambiar(jButton9, jButton8);
System.out.println("vacio boton 8");
}
if (jButton1.getMnemonic()==1 & jButton4.getMnemonic()==2 &
jButton7.getMnemonic()==3 &
jButton2.getMnemonic()==4 & jButton5.getMnemonic()==5 &
jButton8.getMnemonic()==6 &
jButton3.getMnemonic()==7 & jButton6.getMnemonic()==8 &
jButton9.getMnemonic()==9){
System.out.println("hola");
jButton9.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/imagenes/imagen9.jpg")));
JOptionPane.showMessageDialog(null, "Has Ganado");
System.exit(0);
}
}
private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {
JOptionPane.showMessageDialog(null,"8 Puzzle para la materia de Inteligencia
Artificial... " ,"8 Puzzle", JOptionPane.INFORMATION_MESSAGE);
}

También podría gustarte