FAWS comments on Counterfactual Calculation and Observational Knowledge - Less Wrong

11 Post author: Vladimir_Nesov 31 January 2011 04:28PM

You are viewing a comment permalink. View the original post to see all comments and the full post content.

Comments (183)

You are viewing a single comment's thread. Show more comments above.

Comment author: FAWS 02 February 2011 02:59:44AM *  2 points [-]

I seem to agree with all of the above statements. The conditional probabilities are indeed this way. But it's incorrect to use these conditional probabilities (which is to say, probabilities of Odd/Even after updating on observing "even") to compute expected utility for the counterfactual.

No. There is no problem with using conditional probabilities if you use the correct conditional probabilities, that is the probabilities from wherever the decision happens, not from what you personally encounter. And I never claimed that any of the pieces you were quoting were part of an updateless analysis, just that it made no difference.

I would try to write a Wei Dai style world program at this point, but I know no programming at all and am unsure how drawing at random is supposed to be represented. It would be the same as the program for this game, though:

1 black and 99 white balls in an urn. You prefer white balls. You may decide to draw a ball and change all balls of the other color to balls of the color drawn, and must decide before the draw is made. (or to make it slightly more complicated: Someone else secretly flips a coin whether you get points for black or white balls. You get 99 balls of the color you get points for and one ball of the other color).

Comment author: Vladimir_Nesov 02 February 2011 03:04:38AM *  1 point [-]

It would help a lot if you just wrote the formulas you use for computing expected utility (or the probabilities you named) in symbols, as in P(Odd|"odd")=0.99,

P(Odd|"odd")*100+P(Even|"odd")*0 = 0.99*100+0.01*0 = 99.

Comment author: FAWS 02 February 2011 03:56:15AM *  0 points [-]

Do you need more than that? I don't see how this could possibly help, but:

N(worlds)=100

For each world:

P(correct)=0.99

U_world(correct)=1

U_world(~correct) = 0

P(Omega)=0.01

P(correct|Omega)=P(correct|~Omega) = 0.99

If choosing to replace:

correct ∧ Omega ⇒for all worlds: U_world(~correct) = 1

~correct ∧ Omega ⇒for all worlds: U_world(correct) = 0

This is imprecise in that exactly one world ends up with Omega.

Comment author: Vladimir_Nesov 02 February 2011 04:24:31AM 0 points [-]

I give up, sorry. Read up on standard concepts/notation for expected utility/conditional probability maybe.

Comment author: FAWS 02 February 2011 05:28:00AM *  0 points [-]

I don't think there is a standard notation for what I was trying to express (if there was formalizing the simple equivalent game I gave should be trivial, so why didn't you do that?) if you are happy with just the end result here is another attempt:

P(Odd|"odd")=P(Even|"even")=P("odd"|Odd)=P("even"|Even)=0.99, P(Odd)=P(Even)=0.5, P("odd" n Odd)= P("even" n Even) =0.495

U_not_replace = P("odd" n Odd)*100 + P("even" n Odd)*0 +P("even" n Even)*100 + P("odd" n Even)*0 = 0.495*100 + 0.005*0 + 0.495*100 + 0.005*0 = 99

U_replace= P("odd"|Odd)*( P("odd" n Odd)*100 + P("even" n Odd)*100) + P("even"|Odd)*( P("odd" n Odd)*0 + P("even" n Odd)*0) + P("even"|Even)*( P("even" n Even)*100 + P("odd" n Even)*100) + P("odd"|Even)*( P("even" n Even)*0 + P("odd" n Even)*0) = 0.99*( 0.495*100 + 0.005*100) + 0.01* ( 0.495*0 + 0.005*0) +0.99*( 0.495*100 + 0.005*100) + 0.01* ( 0.495*0 + 0.005*0) =99

Comment author: Vladimir_Nesov 02 February 2011 10:28:12AM *  1 point [-]

Probabilities correct, U_not_replace correct, U_replace I don't see what's going on with (what's the first conceptual step that generates that formula?). Correct U_replace is just this:

U_replace_updateless = P("odd" n Odd)*0 + P("even" n Odd)*0 +P("even" n Even)*100 + P("odd" n Even)*100 = 0.495*0 + 0.005*0 + 0.495*100 + 0.005*100 = 50

Comment author: FAWS 02 February 2011 04:46:26PM *  1 point [-]

That seems obviously incorrect to me because as an updateless decision maker you don't know you are in the branch where you replace odds with evens. Your utility is half way between a correct updateless analysis and a correct analysis with updates. Or it is the correct utility if Omega also replaces the result in worlds where the parity of Q is different (so either Q is different or Omega randomly decides whether it's actually going to visit anyone or just predict what you would decide if the situation was different and applies that to whatever happens), in which case you have done a horrible job of miscommunication.

I have only a vague idea what exactly required more explanation so I'll try to explain everything.

My U_replace is the utility if you act on the general policy of replacing the result in counterfactual branches with the result in the branch Omega visits. It's the average over all imaginable worlds (imaginable worlds where Q is even and those where Q is odd), the probability of a world multiplied with its utility.

P("odd"|Odd)*( P("odd" n Odd)*100 + P("even" n Odd)*100) + P("even"|Odd)*( P("odd" n Odd)*0 + P("even" n Odd)*0) is the utility for the half of imaginable worlds where Q is odd (all possible worlds if Q is odd).

P("odd"|Odd) is the probability that the calculator shows odd in whatever other possible world Omega visits, conditional on Q being odd (which is correct to use because here only imaginable worlds where Q is odd are considered, the even worlds come later). If that happens the utility for worlds where the calculator shows even is replaced with 100.

P("even"|Odd) is the probability that the calculator shows even in the other possible (=odd) world Omega visits. If that happens the utility for possible worlds where the calculator shows odd is replaced with 0.

At this point I'd just say replace odd with even for the other half, but last time I said something like that it didn't seem to work so here's it replaced manually:

P("even"|even)*( P("even" n even)*100 + P("odd" n even)*100) + P("odd"|even)*( P("even" n even)*0 + P("odd" n even)*0) is the utility for the half of imaginable worlds where Q is even (all possible worlds if Q is even).

P("even"|even) is the probability that the calculator shows even in whatever other possible world Omega visits, conditional on Q being even (which is correct to use because here only imaginable worlds where Q is even are considered, the odd worlds came earlier). If that happens the utility for worlds where the calculator shows odd is replaced with 100.

P("odd"|even) is the probability that the calculator shows odd in the other possible (=even) world Omega visits. If that happens the utility for possible worlds where the calculator shows even is replaced with 0.

If you want to say that updateless analysis is not allowed to take dependencies of this kind into account I ask you for an updateless analysis of the game with black and white balls a few comments upthread. Either updateless analysis as you understand it can't deal with that game (and is therefore incomplete) or I can use whatever you use to formalize that game for this problem and you can't brush me aside with saying that I'm not working updatelessly.

EDIT: The third interpretation of your utility function would be the utility of the general policy of always replacing odds with evens regardless of what the calculator in the world Omega visited showed, which would be so ridiculously stupid that it didn't occur to me anyone might possibly be talking about that, even to point out fallacious thinking.

Comment author: Vladimir_Nesov 04 February 2011 12:02:26PM *  0 points [-]

P("odd"|Odd)*( P("odd" n Odd)*100 + P("even" n Odd)*100) + P("even"|Odd)*( P("odd" n Odd)*0 + P("even" n Odd)*0) is the utility for the half of imaginable worlds where Q is odd (all possible worlds if Q is odd).

Consider expected utility [P("odd" n Odd)*100 + P("even" n Odd)*100)] from your formula. What event and decision is this the expected utility of? It seems to consider two events, ["odd" n Odd] and ["even" n Odd]. For both of them to get 100 utils, the strategy (decision) you're considering must be, always answer-odd (since you can only answer in response to indication on the calculators, and here we have both indications and the same answer necessary for success in both events).

But U_replace estimates the expected utility of a different strategy, of strategy where you answer-even on your own "even" branch and also answer-even on the "odd" branch with Omega's help. So you're already computing something different.

Then, in the same formula, you have [P("odd" n Odd)*0 + P("even" n Odd)*0]. But to get 0 utils in both cases, you have to answer incorrectly in both cases, and since we're considering Odd, this must be unconditional answer-even. This contradicts the way you did your expected utility calculation in the first terms of the formula (where you were considering the strategy of unconditional answer-odd).

Expected utility is computed for one strategy at a time, and values of expected utility computed separately for each strategy are used to compare the strategies. You seem to be doing something else.

Comment author: FAWS 04 February 2011 03:53:28PM 1 point [-]

Expected utility is computed for one strategy at a time, and values of expected utility computed separately for each strategy are used to compare the strategies. You seem to be doing something else.

I'm calculating for one strategy, the strategy of "fill in whatever the calculator in the world Omega appeared in showed", but I have a probability distribution across what that entails (see my other reply). I'm multiplying the utility of picking "odd" with the probability of picking "odd" and the utility of picking "even" with the probability of picking "even".

Comment author: Vladimir_Nesov 04 February 2011 06:07:00PM 0 points [-]

So that's what happens when you don't describe what strategy you're computing expected utility of in enough detail in advance. By problem statement, the calculator in the world in which Omega showed shows "even".

But even if you expect Omega to appear on either side, this still isn't right. Where's the probability of Omega appearing on either side in your calculation? The event of Omega appearing on one or the other side must enter the model, and it wasn't explicitly referenced in any of your formulas.

Comment author: Vladimir_Nesov 04 February 2011 11:39:34AM *  0 points [-]

Or it is the correct utility if Omega also replaces the result in worlds where the parity of Q is different

Since you don't know what parity of Q is, you can't refer to the class of worlds where it's "the same" or "different", in particular because it can't be different. So again, I don't know what you describe here.

(It's still correct to talk about the sets of possible worlds that rely on Q being either even or odd, because that's your model of uncertainty, and you are uncertain about whether Q is even or odd. But not of sets of possible worlds that have your parity of Q, just as it doesn't make sense to talk of the actual state of the world (as opposed to the current observational event, which is defined by past observations).)

Comment author: FAWS 04 February 2011 03:44:18PM 0 points [-]

Since you don't know what parity of Q is, you can't refer to the class of worlds where it's "the same" or "different", in particular because it can't be different. So again, I don't know what you describe here.

I'm merely trying to exclude a possible misunderstanding that would mean both of us being correct in the version of the problem we are talking about. Here's another attempt. The only difference between the world Omega shows up in and the counterfactual worlds Omega affects regarding the calculator result is whether or not the calculator malfunctioned, you just don't know on which side it malfunctioned. Is that correct?

Comment author: Vladimir_Nesov 04 February 2011 05:57:07PM *  0 points [-]

Sounds right, although when you speak of the only difference, it's easy to miss something.

Comment author: Vladimir_Nesov 04 February 2011 11:36:04AM 0 points [-]

as an updateless decision maker you don't know you are in the branch where you replace odds with evens.

I don't understand what this refers to. (Which branch is that? What do you mean by "replace"? Does your 'odd' refer to calculator-shows-odd or it's-actually-odd or 'let's-write-"odd"-on-the-test-sheet etc.?)

Also, updateless decision-maker reasons about strategies, which describe responses to all possible observations, and in this sense updateless analysis does take possible observations into account.

(The downside of long replies and asynchronous communication: it's better to be able to interrupt after a few words and make sure we won't talk past each other for another hour.)

Comment author: FAWS 04 February 2011 05:38:01PM *  1 point [-]

Here's another attempt at explaining your error (as it appears to me):

In the terminology of Wei Dai's original post an updateless agent considers the consequences of a program S(X) returning Y on input X, where X includes all observations and memories, and the agent is updateless in respect to things included in X. For an ideal updateless agent this X includes everything, including the memory of having seen the calculator come up even. So it does not make sense for such an agent to consider the unconditional strategy of choosing even, and doing so does not properly model an updating agent choosing even after seeing even, it models an updating agent choosing even without having seen anything.

An obvious simplification of an (computationally extremely expensive) updateless agent would be to simplify X. If X is made up of the parts X1 and X2 and X1 is identical for all instances of S being called, then it makes sense to incorporate X1 into a modified version of S, S' (more precisely the part of S or S' that generates the world programs S or S' tries to maximize). In that case a normal Bayesian update would be performed (UDT is not a blanket rejection of Bayesianism, see Wei Dai's original post). S' would be updateless with resepct to X2, but not with respect to X1. If X1 is indeed always part of the argument when S is called S' should always give back the same output as S.

Your utility implies an S' with respect to having observed "even", but without the corresponding update, so it generates faulty world programs, and a different utility expectation than the original S or a correctly simplified version S'' (which in this case is not updateless because there is nothing else to be updateless towards).

Comment author: Vladimir_Nesov 04 February 2011 06:26:25PM 0 points [-]

(This question seems to depend on resolving this first.)

Comment author: FAWS 04 February 2011 03:22:57PM 1 point [-]

The updateless analogue to the updater strategy "ask Omega to fill in the answer "even" in counterfactual worlds because you have seen the calculator result "even"" is "ask Omega to fill in the answer the calculator gives whereever Omega shows up". As an updateless decision maker you don't know that the calculator showed "even" in your world because "your world" doesn't even make sense to an updateless reasoner. The updateless replacing strategy is a fixed strategy that has a particular observation as parameter. An updateless strategy without parameter would be equivalent to an updater strategy of asking Omega to write in "even" in other worlds before seeing any calculator result.

Comment author: Vladimir_Nesov 04 February 2011 05:54:46PM *  0 points [-]

The updateless analogue to the updater strategy "ask Omega to fill in the answer "even" in counterfactual worlds because you have seen the calculator result "even"" is...

Updateless strategies describe how you react to observations. You do react to observations in updateless strategies. In our case, we don't even need that, since all observations are fixed by the problem statement: you observe "even", case closed. The strategies you consider specify what you write down on your own "even" test sheet, and what you write on the "odd" counterfactual test sheet, all independently of observations.

The "updateless" aspect is in not forgetting about counterfactuals and using prior probabilities everywhere, instead of updated probabilities. So, you use P(Odd n "odd") to describe the situation where Q is Odd and the counterfactual calculator shows "odd", instead of using P(Odd n "odd"|"even"), which doesn't even make sense.