Closed MelanyLillo closed 1 year ago
Hola, el problema se genera porque tu programa no retorna una solución al problema, te recomiendo revisar la salida de Clingo para estar seguro.
Hola! Si pasó eso, pero mi duda es por qué sucedió cuando solo agregué un parámetro y no creé nuevas reglas que afectaran el programa:(
¿Estas corriendo el código en conjunto al archivo del mapa? Asegúrate de estar haciéndolo correctamente dado que es en ese en cual se define la regla de rangeX. Desde la carpeta de DCCarrybot (no la carpeta base de la tarea), debes correr la siguiente línea en tu terminal:
clingo robots.lp tests/old.lp -c bound=14 | python process.py
Avísame como te va, saludos :)
Hola! Ya logré arreglar mi error, gracias!
@MelanyLillo como solucionaste el problema? porque me esta saliendo el mismo error
Es que estaba corriendo el mismo archivo robots.lp para todos los tests, pero solo el que nos entregaron funciona para old.lp, luego cuando agregues la dirección solo funcionará para los tests DX y al final cuando añadas la energía solo funcionará en los tests EX.
Hola!, tengo un problema pero solo con el rest d1 (d2 y d3 me dan output), en el cual me sale :
Lo extraño es que no modifiqué ninguna linea asociada a los obsteaculos, solo robotOn y boxAdjacentToRobot para incluir la direccionalidad.
esto tengo en show
Hola @javieranavarrete , esto se debe a que no hay obstáculos presentes en el mapa. En todo caso, deberías tener un output correcto a menos que de las reglas utilizadas requieran de la definición de al menos una preposición obstacle(X, Y)
. En todo caso, los test con que corregiremos si incluirán obstáculos, ya que evaluarán esta parte y el uso de energía.
Un saludo ✨
Hola! Tengo un problema con el uso de process.py al agregar el parámetro de dirección. Solo agregué las 4 nuevas acciones y agregué el parámetro D en robotOn(R,X,Y,T,D). Además, al final agregué #show robotOn/5. para asegurar el funcionamiento. Sin embargo, me surge el siguiente error: answer.range_x = max(map(lambda x: get_number(x), list(filter(lambda x: "rangeX" in x, atoms)))) ValueError: max() arg is an empty sequence ¿Saben cómo podría arreglarlo?