IIC2613-Inteligencia-Artificial-2023-1 / Syllabus

Repositorio base del curso, donde se publicarán enunciados, ayudantías y se resolverán dudas.
39 stars 1 forks source link

Uso de state.from_state.__str__() + state.__str__() #56

Closed 4n1t4 closed 1 year ago

4n1t4 commented 1 year ago

Hola buenas, no entiendo muy bien las implicancias de utilizar state.from_state.str() + state.str() en vez de solo un state.str() para ver si un nodo ya fue revisado. De forma más específica yo utilizo algo para saber que cosas estoy agregando a open y para revisar si debo o no crear algo nuevo, no se si utilizar solamente state.__str:() o ademas el from_state.

dfloreaa commented 1 year ago

Hola, fue una pequeña confusión mía. Para motivos de la implementación de la tarea, no debería haber problema con solamente utilizar state.str() para hashear un nodo. El uso de state.from_state.str() + state.str() es necesario si deseamos implementar Weighted A* (cambiando HEURISTIC_PONDERATOR a un valor >1) dado que un mismo estado podría ser alcanzado múltiples veces en una búsqueda no óptima.

dfloreaa commented 1 year ago

Una pequeña aclaración, para búsquedas no óptimas (como pueden ser aquellas guiadas por una heurística no admisible), también será necesario utilizar state.from_state.str() + state.str() para hashear cada nodo, esto debido a que dentro de ella si podríamos volver a un estado anterior.