- RL est-il le bon cadre sous de telles contraintes?
Cela semble possible , mais peut-être que quelques petits détails que vous n'avez pas fournis rendraient d'autres approches plus réalisables. Par exemple, si les événements de notification peuvent être traités comme plus ou moins indépendants, une approche d'apprentissage supervisé peut être meilleure, ou du moins plus pragmatique.
Plus concrètement, il n'est pas clair à 100% quels seront votre état, vos pas de temps et vos choix d'action. Celles-ci doivent être bien définies pour que les approches RL fonctionnent. De plus, vous voulez pouvoir construire des états qui ont (ou ont presque) la propriété Markov - essentiellement que tout ce qui est connu et non aléatoire sur la récompense attendue et l'état suivant est couvert par l'état.
- Comment pouvons-nous apprendre la politique optimale hors ligne dans de telles situations
Vous voulez à la fois un apprenant hors ligne (les données sont historiques et non "en direct") et hors politique (les données sont générées par une politique différente de celle que vous souhaitez évaluer). De plus, je suppose que vous ne connaissez pas les politiques de comportement qui ont généré vos données, vous ne pouvez donc pas utiliser l' échantillonnage d'importance .
Vous pouvez probablement utiliser une approche Q-learning et parcourir vos données existantes soit en rejouant chaque trajectoire à l'aide de Q (λ) en lots, ou une variante de DQN utilisant des mini-lots échantillonnés .
Cela n'est pas garanti de fonctionner, car l'apprentissage hors politique a tendance à être moins stable que dans la politique, et peut nécessiter plusieurs tentatives pour obtenir des hyper-paramètres qui fonctionneront. Vous aurez besoin d'un bon nombre d'échantillons qui couvrent des choix optimaux ou presque optimaux à chaque étape (pas nécessairement dans les mêmes épisodes), car l'apprentissage Q repose sur le bootstrap - copiant essentiellement les estimations de valeur des choix d'action vers l'arrière vers les pas de temps antérieurs afin d'influencer qui indique plus tôt que l'agent préfère prendre des mesures pour se diriger vers.
Si votre espace d'état / d'action est suffisamment petit (lorsque vous énumérez complètement les états et les actions), vous préférerez peut-être utiliser la forme tabulaire de Q-learning, car cela offre certaines garanties de convergence. Cependant, pour la plupart des problèmes pratiques, cela n'est pas vraiment possible, vous voudrez donc examiner les options d'utilisation des fonctions d'approximation.
... et comment évaluons-nous la même chose?
Si vous pouvez obtenir des valeurs d'action convergentes réalistes à partir de votre Q-learning (par inspection), il n'y a que 2 façons raisonnables d'évaluer les performances:
En exécutant l'agent dans une simulation (et peut-être en l'affinant davantage) - je ne m'attends pas à ce que cela soit possible pour votre scénario, car votre environnement comprend les décisions prises par vos clients. Cependant, c'est un bon tremplin pour certains scénarios, par exemple si l'environnement est dominé par la physique de base du monde réel.
En exécutant l'agent pour de vrai, peut-être sur un sous-ensemble de la charge de travail, et en comparant les récompenses réelles à celles prévues pendant suffisamment de temps pour établir une confiance statistique.
Vous pouvez également exécuter à sec l'agent aux côtés d'un opérateur existant et obtenir des commentaires sur le caractère réaliste de ses suggestions d'actions (et prévisions de récompense). Ce sera une rétroaction subjective et difficile à évaluer numériquement les performances lorsque les actions peuvent ou non être utilisées. Cependant, cela vous donnerait un peu d'assurance qualité.