Documentos de Académico
Documentos de Profesional
Documentos de Cultura
En los autómatas basados en metas y en utilidades un estado puede estar asociado con
más de una regla. Esto es, la función REGLA_CONICIDENTA devuelve un conjunto de
reglas. Por la funcion REGLA_ACCION cada regla tiene asociada una acción. Si alguna de
esas acciones me lleva al estado objetivo selecciono esa acción en ambos autómatas. Sino
en el autómata basado en metas selecciona aleatoriamente cualquier regla y en el
autómata basado en utilidades selecciona la regla asociada a la acción con mayor utilidad.
En el autómata basado en utilidades selecciono la regla que tiene la acción con mayor
utilidad.
Si solo puede saber el estado de suciedad de las baldosas vecinas a la posición en que se
encuentra la aspiradora una estrategia es moverse a las baldosas vecinas que tienen más
suciedad y moverse en forma aleatoria si no hay ninguna baldosa vecina que esté sucia.
El termostato es una instancia de un agente reactivo. Podemos. asumir que el ambiente del
termostato puede estar en uno de dos estados, muy frío o temperatura OK. El agente
termostato tiene dos subsistemas: uno es percepción y el otro acción.
Ag = {ver, acción}
action: I -> Ac
next: I x Per -> I
El agente empieza con estado inicial i0, observa su ambiente y genera una percepción
ver(e). De esta forma el estado interno del agente es modificado por la función next de la
siguiente manera next(i0, ver(e)). Y la acción seleccionada por el agente es action(next(i0,
ver(e))
estadosVisitados.append(estadoInicial)
conjuntoDeEstados.append(estadoInicial)
while conjuntoDeEstados:
s = conjuntoDeEstados.sacarUnElemento()
print (s, end = " ")
Si en el algoritmo genérico de búsqueda usamos una pila para los nodos que se tienen que
visitar implementamos la búsqueda primero en profundidad. Saco el nodo que está en el
tope de la pila y agregó todos sus hijos a la pila y recien que haya terminado de visitar todos
los hijos del que estaba en el tope de la pila seguir con el que estaba segundo en la pila
hace que siempre se expanda el nodo más profundo en la frontera actual del árbol de
búsqueda.
estadosVisitados.append(estadoInicial)
pilaDeEstados.append(estadoInicial)
while pilaDeEstados:
s = pilaDeEstados.pop()
print (s, end = " ")
estadosVisitados.append(estadoInicial)
colaDeEstados.append(estadoInicial)
while colaDeEstados:
s = colaDeEstados.pop(0)
print (s, end = " ")