I've been playing around with basic AI algorithms for some years, myself, and I could see several ways to actually use machine learning the way you're thinking, xox. The problem, as you said yourself, is processing power, but even that could be somewhat reduced by having each character controlled by their own (small) "neural network" instance - the quote marks being there because I'd probably use something more primitive in this case. With a couple hundred characters in an average game, though, it could still take a minute or two between turns...
... unless we're talking about a multiplayer game hosted on a sufficiently powerful server, or distributing the character action calculations among the connected clients. But even if it were based on the same events etc., we'd be talking about a completely different game here, basically. Probably one where each player is a student instead of the principal... Or maybe a parent. And it might weird people out that they wouldn't know whether a specific other character in an erotic game is played by a human or a computer. Might still be fun, both to play and to create, but to be honest, I lack the motivation to do so in what little free time I have. And I get stumped on finding a good way to handle players leaving the game. And yes, that means I've been thinking about this for a while before now.