PPO, et notamment TRPO tente de mettre à jour la politique de manière conservatrice, sans affecter ses performances de façon négative entre chaque mise à jour de politique. Pour ce faire, vous devez disposer d'un moyen de mesurer l'évolution de la stratégie après chaque mise à jour. Cette mesure est faite en regardant la divergence KL entre la politique mise à jour et l'ancienne politique. Ceci devient un problème d'optimisation contraint, nous voulons changer la politique dans le sens de la performance maximum, suite aux contraintes que la divergence KL entre ma nouvelle politique et ancienne ne dépasse pas un certain seuil prédéfini (ou adaptatif). Avec TRPO, nous calculons la contrainte KL pendant la mise à jour et trouvons le taux d'apprentissage pour ce problème (via Fisher Matrix et le gradient conjugué). C'est un peu compliqué à mettre en œuvre. Avec PPO, nous simplifions le problème en transformant la divergence KL d'une contrainte en un terme de pénalité, semblable à par exemple à L1, L2 pénalité de poids (pour empêcher un poids de croître de grandes valeurs). PPO effectue des modifications supplémentaires en supprimant le besoin de calculer la divergence KL tous ensemble, en coupant durablement le ratio de politique (ratio de politique mise à jour avec ancienne) pour être dans une petite gamme autour de 1.0, où 1.0 signifie que la nouvelle politique est la même qu'ancienne.