How do you change rules settings on the fly?
There are likely several ways of peeling the proverbial potato, depending on what you're actually trying to do:


See if the rule's callback function has some sort of hooks to allow you to change the data there. This is the easiest way to do anything and the least invasive.
Implement hook_rules_config_execute(). This hook gets called during the invocation of the rule and it appears to give you a chance to modify the rule before everything gets executed.


Not generally recommended but also possible:


Alter the rule's callback to call a new custom callback which wraps or replaces the original function and sets the configuration that you want.