For example if I see a very good contest/offer I might think it too good to be true, and look for more information to alter my model and find the catch before taking the offer up.
How is this case different from any other decision? You compute the current probabilities for this is a fraud and this is an unusually good deal. You compute the cost of collecting more data in a specific fashion, and the probability distribution over possible futures containing a future version of you with better knowledge about this problem. You do the same for various alternative actions you could take instead of collecting more data right now, calculate expected long-run utility for each of the considered possible futures, and choose an action based on that information—either to prod the universe to give you more data about this, or doing something else.
I am glossing over all the interesting hard parts, of course. But still, is there anything fundamentally different about manipulating the expected state of knowledge of your future-self from manipulating any other part of reality?
Interesting question. Not quite what I was getting at. I hope you don’t mind if I use a situation where extra processing can get you more information.
A normal decision theory can be represented as simple function from model to action. It should halt.
decisiontheory :: Model → Action
Lets say you have a model that you can keep on expanding the consequences of and get a more accurate picture of what is going to happen, like playing chess with a variable amount of look ahead. What the system is looking for is a program that will recursively self improve and be Friendly (where making an action is considered making an AI).
It has a function that can either carry on expanding the model or return an action.
modelOrAct :: Model → Either Action Model
You can implement decisiontheory with this code
decisiontheory :: Model → Action
decisiontheory m = either (decisionModel) (id) (modelOrAct m)
However this has the potential to infinite loop due to its recursive definition. This would happen if the expected utility of increasing the accuracy of the model is greater than performing an action and there is no program it can prove safe. You would want some way of interrupting it to update the model with information from the real world as well as the extrapolation.
So I suppose the difference in this case is that due to making a choice on which mental actions to perform you can get stuck not getting information from the world about real world actions.
How is this case different from any other decision? You compute the current probabilities for this is a fraud and this is an unusually good deal. You compute the cost of collecting more data in a specific fashion, and the probability distribution over possible futures containing a future version of you with better knowledge about this problem. You do the same for various alternative actions you could take instead of collecting more data right now, calculate expected long-run utility for each of the considered possible futures, and choose an action based on that information—either to prod the universe to give you more data about this, or doing something else.
I am glossing over all the interesting hard parts, of course. But still, is there anything fundamentally different about manipulating the expected state of knowledge of your future-self from manipulating any other part of reality?
Interesting question. Not quite what I was getting at. I hope you don’t mind if I use a situation where extra processing can get you more information.
A normal decision theory can be represented as simple function from model to action. It should halt.
decisiontheory :: Model → Action
Lets say you have a model that you can keep on expanding the consequences of and get a more accurate picture of what is going to happen, like playing chess with a variable amount of look ahead. What the system is looking for is a program that will recursively self improve and be Friendly (where making an action is considered making an AI).
It has a function that can either carry on expanding the model or return an action.
modelOrAct :: Model → Either Action Model
You can implement decisiontheory with this code
decisiontheory :: Model → Action
decisiontheory m = either (decisionModel) (id) (modelOrAct m)
However this has the potential to infinite loop due to its recursive definition. This would happen if the expected utility of increasing the accuracy of the model is greater than performing an action and there is no program it can prove safe. You would want some way of interrupting it to update the model with information from the real world as well as the extrapolation.
So I suppose the difference in this case is that due to making a choice on which mental actions to perform you can get stuck not getting information from the world about real world actions.