IIC2613 / Syllabus

Repositorio oficial Inteligencia Artificial 2020-2
7 stars 1 forks source link

Parte 4: número de cláusulas #9

Closed furcelay closed 3 years ago

furcelay commented 4 years ago

Hola! No entiendo muy bien a qué se refieren con el número de cláusulas en éste contexto... ¿Corresponde al número de instanciaciones dsitintas del predicado para revisar la regla?

La noción que tengo es que por ejemplo si tenemos que una variable X toma valores de un conjunto conjuntoX, entonces la regla p1(X) :- conjuntoX(X), q1(X) sería lineal respecto a X mientras que :- conjuntoX(X1), conjuntoX(X2), q2(X1, X2) sería cuadrática .

¿Estoy en lo correcto?

Gracias!! 😄

valerojasm commented 4 years ago

Hola!

Sip, se refiere a que ninguna regla puede generar R^2 instancias o átomos en un modelo, con R siendo la cantidad de robots. El primer ejemplo que diste efectivamente sería lineal en X, mientras que si te fijas en el predicado on(R,X,Y,T) de la tarea, puedes generar instancias para cada robot, para cada posición de la grilla, para cada instante de tiempo en un mismo modelo (cuánto sería eso?).

Es por esto último que se introduce lo del número de cláusulas, porque si no se maneja, admitiríamos que dos robots (todos, de hecho) estén en una misma posición en un mismo momento, o que un robot esté en distintas posiciones en un mismo momento también, por ejemplo.

Me cuentas si te quedan dudas. Saludos!

furcelay commented 4 years ago

Me queda mas claro, gracias!

raimundomartinez commented 4 years ago

No me quedó muy claro. El segundo ejemplo que da furcelay, :- conjuntoX(X1), conjuntoX(X2), q2(X1, X2) ¿Es cuadrática? ¿No nos pueden decir que líneas de bodegas.lp son cuadráticas con respecto a R? O por lo menos darnos un ejemplo.

jabaier commented 4 years ago

Es cuadrática. Para que lo veas más fácil, imagina: p(1..n). :- p(X1), p(X2), r(X1,X2).

hay n formas de instanciar X1 y n formas de instanciar X2, por lo que generas n*n=n^2 reglas al instanciar.

raimundomartinez commented 4 years ago

Gracias!