2011-03-07 13 views
8

Tutti gli algoritmi reinforcement learning di cui ho letto si applicano in genere a un singolo agente con un numero fisso di azioni. Esistono algoritmi di apprendimento di rinforzo per prendere una decisione tenendo conto di un numero variabile di azioni? Ad esempio, come applicheresti un algoritmo RL in un gioco per computer in cui un giocatore controlla N soldati, e ogni soldato ha un numero casuale di azioni basate sulla sua condizione? Non è possibile formulare un numero fisso di azioni per un decisore globale (ad esempio "il generale") perché le azioni disponibili cambiano continuamente mentre i soldati vengono creati e uccisi. E non puoi formulare un numero fisso di azioni a livello di soldato, poiché le azioni del soldato sono condizionate in base al suo ambiente immediato. Se un soldato non vede avversari, allora potrebbe solo essere in grado di camminare, mentre se vede 10 avversari, allora ha 10 nuove azioni possibili, attaccando 1 dei 10 avversari.Apprendimento rinforzo con azioni variabili

risposta

4

Quello che descrivi non è niente di insolito. L'apprendimento del rinforzo è un modo per trovare la funzione valore di un Markov Decision Process. In un MDP, ogni stato ha il proprio insieme di azioni. Per procedere con l'applicazione di apprendimento di rinforzo, è necessario definire chiaramente quali stati, azioni e vantaggi sono nel tuo problema.

0

Se si dispone di un numero di azioni per ciascun soldato che sono disponibili o meno in base a determinate condizioni, è comunque possibile modellarlo come selezione da un insieme fisso di azioni. Per esempio:

  • creare un "valore d'uso" per ciascuno dei set completo di azioni per ogni soldato
  • scegliere la massima azione di valore, ignorando quelle azioni che non sono disponibili in un dato momento

Se si dispone di più destinazioni possibili, si applica lo stesso principio, eccetto che questa volta si modella la funzione di utilità in modo che assuma la designazione di destinazione come parametro aggiuntivo ed esegua la funzione di valutazione più volte (una per ciascun target). Scegli il bersaglio che ha la più alta "utilità di attacco".

+0

Come ho già detto, anche i soldati hanno un numero variabile di azioni. Cosa intendi con il fatto che l'obiettivo target sia un parametro? – Cerin

+0

Intendo: rendere l'algoritmo RL prendere alcune informazioni sul target o sull'azione specifica che si sta considerando come input aggiuntivo. Quindi puoi applicarlo a più bersagli e/o azioni secondo necessità. È sufficiente rieseguire l'algoritmo con informazioni di destinazione e/o azione diverse per ciascuna di esse. – mikera

Problemi correlati