A utility-maximizing varient of AIXI

post by AlexMennen · 2012-12-17T01:12:19.518Z · LW · GW · Legacy · 0 comments

Background

Here is the function implemented by finite-lifetime [AI![](http://www.codecogs.com/png.latex?\\xi)](http://www.hutter1.net/ai/aixigentle.pdf):

![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\dot\{y\}\_\{k\}:=\\arg\\max\_\{y\_\{k\}\\in%20Y\}\\sum\_\{x\_\{k\}\\in%20X\}\\max\_\{y\_\{k\+1\}\\in%20Y\}\\sum\_\{x\_\{k\+1\}\\in%20X\}\.\.\.\\max\_\{y\_\{m\}\\in%20Y\}\\sum\_\{x\_\{m\}\\in%20X\}\\left\(r\\left\(x\_\{k\}\\right\)\+\.\.\.\+r\\left\(x\_\{m\}\\right\)\\right\)\\cdot\\xi\\left\(\\dot\{y\}\\dot\{x\}\_\{%3Ck\}y\\underline\{x\}\_\{k:m\}\\right\)\}),

where ![](http://www.codecogs.com/png.latex?m) is the number of steps in the lifetime of the agent, ![](http://www.codecogs.com/png.latex?k)
is the current step being computed, ![](http://www.codecogs.com/png.latex?X) is the set of possible observations,
![](http://www.codecogs.com/png.latex?Y) is the set of possible actions, ![](http://www.codecogs.com/png.latex?r) is a function that extracts
a reward value from an observation, a dot over a variable represents
that its value is known to be the true value of the action or observation
it represents, underlines represent that the variable is an input
to a probability distribution, and ![](http://www.codecogs.com/png.latex?\\xi) is a function that returns
the probability of a sequence of observations, given a certain known
history and sequence of actions, and starting from the Solomonoff
prior. More formally,

![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\xi\\left\(\\dot\{y\}\\dot\{x\}\_\{%3Ck\}y\\underline\{x\}\_\{k:m\}\\right\)=\\left\(\\sum\_\{q\\in%20Q:q\\left\(y\_\{\\leq%20m\}\\right\)=x\_\{\\leq%20m\}\}2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\\diagup\\left\(\\sum\_\{q\\in%20Q:q\\left\(\\dot\{y\}\_\{%3Ck\}\\right\)=\\dot\{x\}\_\{%3Ck\}\}2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\}),

where ![](http://www.codecogs.com/png.latex?Q) is the set of all programs, ![](http://www.codecogs.com/png.latex?\\ell) is a function that
returns the length of a program in bits, and a program applied to
a sequence of actions returns the resulting sequence of observations.
Notice that the denominator is a constant, depending only on the already
known ![](http://www.codecogs.com/png.latex?\\dot\{y\}\\dot\{x\}\_\{%3Ck\}), and multiplying by a positive constant
does not change the argmax, so we can pretend that the denominator
doesn't exist. If ![](http://www.codecogs.com/png.latex?q) is a valid program, then any longer program
with ![](http://www.codecogs.com/png.latex?q) as a prefix is not a valid program, so ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\sum\_\{q\\in%20Q\}2%5E\{\-\\ell\\left\(q\\right\)\}\\leq1\}).


Problem

A problem with this is that it can only optimize over the input it
receives, not over aspects of the external world that it cannot observe.
Given the chance, AI![](http://www.codecogs.com/png.latex?\\xi) would hack its input channel so that it
would only observe good things, instead of trying to make good things
happen (in other words, it would [wirehead](http://lesswrong.com/lw/fkx/a\_definition\_of\_wireheading/)
itself). Anja [specified](http://lesswrong.com/lw/feo/universal\_agents\_and\_utility\_functions/)
a variant of AI![](http://www.codecogs.com/png.latex?\\xi) in which she replaced the sum of rewards with
a single utility value and made the domain of the utility function
be the entire sequence of actions and observations instead of a single
observation, like so:

![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\dot\{y\}\_\{k\}:=\\arg\\max\_\{y\_\{k\}\\in%20Y\}\\sum\_\{x\_\{k\}\\in%20X\}\\max\_\{y\_\{k\+1\}\\in%20Y\}\\sum\_\{x\_\{k\+1\}\\in%20X\}\.\.\.\\max\_\{y\_\{m\}\\in%20Y\}\\sum\_\{x\_\{m\}\\in%20X\}U\\left\(\\dot\{y\}\\dot\{x\}\_\{%3Ck\}yx\_\{k:m\}\\right\)\\cdot\\xi\\left\(\\dot\{y\}\\dot\{x\}\_\{%3Ck\}y\\underline\{x\}\_\{k:m\}\\right\)\}).

This doesn't really solve the problem, because the utility function
still only takes what the agent can see, rather than what is actually
going on outside the agent. The situation is a little better because
the utility function also takes into account the agent's actions,
so it could punish actions that look like the agent is trying to wirehead
itself, but if there was a flaw in the instructions not to wirehead,
the agent would exploit it, so the incentive not to wirehead would
have to be perfect, and this formulation is not very enlightening
about how to do that.


Solution

Here's what I suggest instead: everything that happens is determined
by the program that the world is running on and the agent's actions,
so the domain of the utility function should be ![](http://www.codecogs.com/png.latex?Q\\times%20Y%5E\{m\}).
The apparent problem with that is that the formula for AI![](http://www.codecogs.com/png.latex?\\xi) does
not contain any mention of elements of ![](http://www.codecogs.com/png.latex?Q). If we just take the original
formula and replace ![](http://www.codecogs.com/png.latex?r\\left\(x\_\{k\}\\right\)\+\.\.\.\+r\\left\(x\_\{m\}\\right\))
with ![](http://www.codecogs.com/png.latex?U\\left\(q,\\dot\{y\}\_\{%3Ck\}y\_\{k:m\}\\right\)), it wouldn't make any
sense. However, if we expand out ![](http://www.codecogs.com/png.latex?\\xi) in the original formula (excluding
the unnecessary denominator), we can move the sum of rewards inside
the sum over programs, like this:

![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\dot\{y\}\_\{k\}:=\\arg\\max\_\{y\_\{k\}\\in%20Y\}\\sum\_\{x\_\{k\}\\in%20X\}\\max\_\{y\_\{k\+1\}\\in%20Y\}\\sum\_\{x\_\{k\+1\}\\in%20X\}\.\.\.\\max\_\{y\_\{m\}\\in%20Y\}\\sum\_\{x\_\{m\}\\in%20X\}\\sum\_\{q\\in%20Q:q\\left\(y\_\{\\leq%20m\}\\right\)=x\_\{\\leq%20m\}\}\\left\(r\\left\(x\_\{k\}\\right\)\+\.\.\.\+r\\left\(x\_\{m\}\\right\)\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\}).

Now it is easy to replace the sum of rewards with the desired utility
function.

![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\dot\{y\}\_\{k\}:=\\arg\\max\_\{y\_\{k\}\\in%20Y\}\\sum\_\{x\_\{k\}\\in%20X\}\\max\_\{y\_\{k\+1\}\\in%20Y\}\\sum\_\{x\_\{k\+1\}\\in%20X\}\.\.\.\\max\_\{y\_\{m\}\\in%20Y\}\\sum\_\{x\_\{m\}\\in%20X\}\\sum\_\{q\\in%20Q:q\\left\(y\_\{\\leq%20m\}\\right\)=x\_\{\\leq%20m\}\}U\\left\(q,\\dot\{y\}\_\{%3Ck\}y\_\{k:m\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\}).

With this formulation, there is no danger of the agent wireheading,
and all ![](http://www.codecogs.com/png.latex?U) has to do is compute everything that happens when the
agent performs a given sequence of actions in a given program, and
decide how desirable it is. If the range of ![](http://www.codecogs.com/png.latex?U) is unbounded, then
this might not converge. Let's assume throughout this post that the
range of ![](http://www.codecogs.com/png.latex?U) is bounded.


Extension to infinite lifetimes

The previous discussion assumed that the agent would only have the
opportunity to perform a finite number of actions. The situation gets
a little tricky when the agent is allowed to perform an unbounded
number of actions. Hutter uses a finite look-ahead approach for AI![](http://www.codecogs.com/png.latex?\\xi),
where on each step ![](http://www.codecogs.com/png.latex?k), it pretends that it will only be performing
![](http://www.codecogs.com/png.latex?m\_\{k\}) actions, where ![](http://www.codecogs.com/png.latex?\\forall%20k\\,%20m\_\{k\}\\gg%20k).

![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\dot\{y\}\_\{k\}:=\\arg\\max\_\{y\_\{k\}\\in%20Y\}\\sum\_\{x\_\{k\}\\in%20X\}\\max\_\{y\_\{k\+1\}\\in%20Y\}\\sum\_\{x\_\{k\+1\}\\in%20X\}\.\.\.\\max\_\{y\_\{m\_\{k\}\}\\in%20Y\}\\sum\_\{x\_\{m\_\{k\}\}\\in%20X\}\\left\(r\\left\(x\_\{k\}\\right\)\+\.\.\.\+r\\left\(x\_\{m\_\{k\}\}\\right\)\\right\)\\cdot\\xi\\left\(\\dot\{y\}\\dot\{x\}\_\{%3Ck\}y\\underline\{x\}\_\{k:m\_\{k\}\}\\right\)\}).

If we make the same modification to the utility-based variant, we
get

![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\dot\{y\}\_\{k\}:=\\arg\\max\_\{y\_\{k\}\\in%20Y\}\\sum\_\{x\_\{k\}\\in%20X\}\\max\_\{y\_\{k\+1\}\\in%20Y\}\\sum\_\{x\_\{k\+1\}\\in%20X\}\.\.\.\\max\_\{y\_\{m\_\{k\}\}\\in%20Y\}\\sum\_\{x\_\{m\_\{k\}\}\\in%20X\}\\sum\_\{q\\in%20Q:q\\left\(y\_\{\\leq%20m\_\{k\}\}\\right\)=x\_\{\\leq%20m\_\{k\}\}\}U\\left\(q,\\dot\{y\}\_\{%3Ck\}y\_\{k:m\_\{k\}\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\}).

This is unsatisfactory because the domain of ![](http://www.codecogs.com/png.latex?U) was supposed to
consist of all the information necessary to determine everything that
happens, but here, it is missing all the actions after step ![](http://www.codecogs.com/png.latex?m\_\{k\}).
One obvious thing to try is to set ![](http://www.codecogs.com/png.latex?m\_\{k\}:=\\infty). This will be
easier to do using a compacted expression for AI![](http://www.codecogs.com/png.latex?\\xi):

![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\dot\{y\}\_\{k\}:=\\arg\\max\_\{y\_\{k\}\\in%20Y\}\\max\_\{p\\in%20P:p\\left\(\\dot\{x\}\_\{%3Ck\}\\right\)=\\dot\{y\}\_\{%3Ck\}y\_\{k\}\}\\sum\_\{q\\in%20Q:q\\left\(\\dot\{y\}\_\{%3Ck\}\\right\)=\\dot\{x\}\_\{%3Ck\}\}\\left\(r\\left\(x\_\{k\}%5E\{pq\}\\right\)\+\.\.\.\+r\\left\(x\_\{m\_\{k\}\}%5E\{pq\}\\right\)\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\}),

where ![](http://www.codecogs.com/png.latex?P) is the set of policies that map sequences of observations
to sequences of actions and ![](http://www.codecogs.com/png.latex?x\_\{i\}%5E\{pq\}) is shorthand for the last
observation in the sequence returned by ![](http://www.codecogs.com/png.latex?q\\left\(p\\left\(\\dot\{x\}\_\{%3Ck\}x\_\{k:i\-1\}%5E\{pq\}\\right\)\\right\)).
If we take this compacted formulation, modify it to accommodate the
new utility function, set ![](http://www.codecogs.com/png.latex?m\_\{k\}:=\\infty), and replace the maximum
with a supremum (since there's an infinite number of possible policies),
we get

![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\dot\{y\}\_\{k\}:=\\arg\\max\_\{y\_\{k\}\\in%20Y\}\\sup\_\{p\\in%20P:p\\left\(\\dot\{x\}\_\{%3Ck\}\\right\)=\\dot\{y\}\_\{%3Ck\}y\_\{k\}\}\\sum\_\{q\\in%20Q:q\\left\(\\dot\{y\}\_\{%3Ck\}\\right\)=\\dot\{x\}\_\{%3Ck\}\}U\\left\(q,\\dot\{y\}\_\{%3Ck\}y\_\{k\}y\_\{k\+1:\\infty\}%5E\{pq\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\}),

where ![](http://www.codecogs.com/png.latex?y\_\{i\}%5E\{pq\}) is shorthand for the last action in the sequence
returned by ![](http://www.codecogs.com/png.latex?p\\left\(q\\left\(\\dot\{y\}\_\{%3Ck\}y\_\{k\}y\_\{k\+1:i\-1\}%5E\{pq\}\\right\)\\right\)).

But there is a problem with this, which I will illustrate with a toy
example. Suppose ![](http://www.codecogs.com/png.latex?Y:=\\left\\\{%20a,b\\right\\\}%20), and ![](http://www.codecogs.com/png.latex?U\\left\(q,y\_\{1:\\infty\}\\right\)=0)
when ![](http://www.codecogs.com/png.latex?\\forall%20k\\in\\mathbb\{N\}\\,%20y\_\{k\}=a), and for any ![](http://www.codecogs.com/png.latex?n\\in\\mathbb\{N\}),
![](http://www.codecogs.com/png.latex?U\\left\(q,y\_\{1:\\infty\}\\right\)=1\-\\frac\{1\}\{n\}) when ![](http://www.codecogs.com/png.latex?y\_\{n\}=b) and
![](http://www.codecogs.com/png.latex?\\forall%20k%3Cn\\,%20y\_\{k\}=a). (![](http://www.codecogs.com/png.latex?U) does not depend on the program ![](http://www.codecogs.com/png.latex?q)
in this example). An agent following the above formula would output
![](http://www.codecogs.com/png.latex?a) on every step, and end up with a utility of ![](http://www.codecogs.com/png.latex?0), when it could
have gotten arbitrarily close to ![](http://www.codecogs.com/png.latex?1) by eventually outputting ![](http://www.codecogs.com/png.latex?b).

To avoid problems like that, we could assume the reasonable-seeming
condition that if ![](http://www.codecogs.com/png.latex?y\_\{1:\\infty\}) is an action sequence and ![](http://www.codecogs.com/png.latex?\\left\\\{%20y\_\{1:\\infty\}%5E\{n\}\\right\\\}%20\_\{n=1\}%5E\{\\infty\})
is a sequence of action sequences that converges to ![](http://www.codecogs.com/png.latex?y\_\{1:\\infty\})
(by which I mean ![](http://www.codecogs.com/png.latex?\\forall%20k\\in\\mathbb\{N\}\\,\\exists%20N\\in\\mathbb\{N\}\\,\\forall%20n%3EN\\,%20y\_\{k\}%5E\{n\}=y\_\{k\})),
then ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\lim\_\{n\\rightarrow\\infty\}U\\left\(q,y\_\{1:\\infty\}%5E\{n\}\\right\)=U\\left\(q,y\_\{1:\\infty\}\\right\)\}).
Under that assumption, the supremum is in fact a maximum, and the
formula gives you an action sequence that will reach that maximum
(proof below).

If you don't like the condition I imposed on ![](http://www.codecogs.com/png.latex?U), you might not be
satisfied by this. But without it, there is not necessarily a best
policy. One thing you can do is, on step 1, pick some extremely small
![](http://www.codecogs.com/png.latex?\\varepsilon%3E0), pick any element from ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\left\\\{%20p%5E\{\*\}\\in%20P:\\sum\_\{q\\in%20Q\}U\\left\(q,y\_\{1:\\infty\}%5E\{p%5E\{\*\}q\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}%3E\\left\(\\sup\_\{p\\in%20P\}\\sum\_\{q\\in%20Q\}U\\left\(q,y\_\{1:\\infty\}%5E\{pq\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\-\\varepsilon\\right\\\}%20\}),
and then follow that policy for the rest of eternity, which will guarantee
that you do not miss out on more than ![](http://www.codecogs.com/png.latex?\\varepsilon) of expected utility.


Proof of criterion for supremum-chasing working

definition: If ![](http://www.codecogs.com/png.latex?y\_\{1:\\infty\}) is an action sequence and ![](http://www.codecogs.com/png.latex?\\left\\\{%20y\_\{1:\\infty\}%5E\{n\}\\right\\\}%20\_\{n=1\}%5E\{\\infty\})
is an infinite sequence of action sequences, and ![](http://www.codecogs.com/png.latex?\\forall%20k\\in\\mathbb\{N\}\\,\\exists%20N\\in\\mathbb\{N\}\\,\\forall%20n%3EN\\,%20y\_\{k\}%5E\{n\}=y\_\{k\}),
then we say ![](http://www.codecogs.com/png.latex?\\left\\\{%20y\_\{1:\\infty\}%5E\{n\}\\right\\\}%20\_\{n=1\}%5E\{\\infty\}) converges
to ![](http://www.codecogs.com/png.latex?y\_\{1:\\infty\}). If ![](http://www.codecogs.com/png.latex?p) is a policy and ![](http://www.codecogs.com/png.latex?\\left\\\{%20p\_\{n\}\\right\\\}%20\_\{n=1\}%5E\{\\infty\})
is a sequence of policies, and ![](http://www.codecogs.com/png.latex?\\forall%20k\\in\\mathbb\{N\}\\,\\forall%20x\_\{%3Ck\}\\in%20X%5E\{k\}\\,\\exists%20N\\in\\mathbb\{N\}\\,\\forall%20n%3EN\\,%20p\\left\(x\_\{%3Ck\}\\right\)=p\_\{n\}\\left\(x\_\{%3Ck\}\\right\)),
then we say ![](http://www.codecogs.com/png.latex?\\left\\\{%20p\_\{n\}\\right\\\}%20\_\{n=1\}%5E\{\\infty\}) converges to
![](http://www.codecogs.com/png.latex?p).

assumption (for lemma 2 and theorem): If ![](http://www.codecogs.com/png.latex?\\left\\\{%20y\_\{1:\\infty\}%5E\{n\}\\right\\\}%20\_\{n=1\}%5E\{\\infty\})
converges to ![](http://www.codecogs.com/png.latex?y\_\{1:\\infty\}), then ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\lim\_\{n\\rightarrow\\infty\}U\\left\(q,y\_\{1:\\infty\}%5E\{n\}\\right\)=U\\left\(q,y\_\{1:\\infty\}\\right\)\})

lemma 1: The agent described by ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\dot\{y\}\_\{k\}:=\\arg\\max\_\{y\_\{k\}\\in%20Y\}\\sup\_\{p\\in%20P:p\\left\(\\dot\{x\}\_\{%3Ck\}\\right\)=\\dot\{y\}\_\{%3Ck\}y\_\{k\}\}\\sum\_\{q\\in%20Q:q\\left\(\\dot\{y\}\_\{%3Ck\}\\right\)=\\dot\{x\}\_\{%3Ck\}\}U\\left\(q,\\dot\{y\}\_\{%3Ck\}y\_\{k\}y\_\{k\+1:\\infty\}%5E\{pq\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\})
follows a policy that is the limit of a sequence of policies ![](http://www.codecogs.com/png.latex?\\left\\\{%20p\_\{n\}\\right\\\}%20\_\{n=1\}%5E\{\\infty\})
such that ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\lim\_\{n\\rightarrow\\infty\}\\sum\_\{q\\in%20Q\}U\\left\(q,y\_\{1:\\infty\}%5E\{p\_\{n\}q\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}=\\sup\_\{p\\in%20P\}\\sum\_\{q\\in%20Q\}U\\left\(q,y\_\{1:\\infty\}%5E\{pq\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\}).

proof of lemma 1: Any policy can be completely described by the last
action it outputs for every finite observation sequence. Observations
are returned by a program, so the set of possible finite observation
sequences is countable. It is possible to fix the last action returned
on any particular finite observation sequence to be the argmax, and
still get arbitrarily close to the supremum with suitable choices
for the last action returned on the other finite observation sequences.
By induction, it is possible to get arbitrarily close to the supremum
while fixing the last action returned to be the argmax for any finite
set of finite observation sequences. Thus, there exists a sequence
of policies approaching the policy implemented by AI![](http://www.codecogs.com/png.latex?\\xi) whose expected
utilities approach the supremum.

lemma 2: If ![](http://www.codecogs.com/png.latex?p) is a policy and ![](http://www.codecogs.com/png.latex?\\left\\\{%20p\_\{n\}\\right\\\}%20\_\{n=1\}%5E\{\\infty\})
is a sequence of policies converging to ![](http://www.codecogs.com/png.latex?p), then ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\sum\_\{q\\in%20Q\}U\\left\(q,y\_\{1:\\infty\}%5E\{pq\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}=\\lim\_\{n\\rightarrow\\infty\}\\sum\_\{q\\in%20Q\}U\\left\(q,y\_\{1:\\infty\}%5E\{p\_\{n\}q\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\}).

proof of lemma 2: Let ![](http://www.codecogs.com/png.latex?\\varepsilon%3E0). On any given sequence of inputs
![](http://www.codecogs.com/png.latex?x\_\{1:\\infty\}\\in%20X%5E\{\\infty\}), ![](http://www.codecogs.com/png.latex?\\left\\\{%20p\_\{n\}\\left\(x\_\{1:\\infty\}\\right\)\\right\\\}%20\_\{n=1\}%5E\{\\infty\})
converges to ![](http://www.codecogs.com/png.latex?p\\left\(x\_\{1:\\infty\}\\right\)), so, by assumption, ![](http://www.codecogs.com/png.latex?\\forall%20q\\in%20Q\\,\\exists%20N\\in\\mathbb\{N\}\\,\\forall%20n\\geq%20N\\,\\left|U\\left\(q,y\_\{1:\\infty\}%5E\{pq\}\\right\)\-U\\left\(q,y\_\{1:\\infty\}%5E\{p\_\{n\}q\}\\right\)\\right|%3C\\frac\{\\varepsilon\}\{2\}).
For each ![](http://www.codecogs.com/png.latex?N\\in\\mathbb\{N\}), let ![](http://www.codecogs.com/png.latex?Q\_\{N\}:=\\left\\\{%20q\\in%20Q:\\forall%20n\\geq%20N\\,\\left|U\\left\(q,y\_\{1:\\infty\}%5E\{pq\}\\right\)\-U\\left\(q,y\_\{1:\\infty\}%5E\{p\_\{n\}q\}\\right\)\\right|%3C\\frac\{\\varepsilon\}\{2\}\\right\\\}%20).
The previous statement implies that ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\bigcup\_\{N\\in\\mathbb\{N\}\}Q\_\{N\}=Q\}),
and each element of ![](http://www.codecogs.com/png.latex?\\left\\\{%20Q\_\{N\}\\right\\\}%20\_\{N\\in\\mathbb\{N\}\}) is
a subset of the next, so ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\exists%20N\\in\\mathbb\{N\}\\,\\sum\_\{q\\in%20Q\\setminus%20Q\_\{N\}\}2%5E\{\-\\ell\\left\(q\\right\)\}%3C\\frac\{\\varepsilon\}\{2\\left\(\\sup%20U\-\\inf%20U\\right\)\}\}).
The range of ![](http://www.codecogs.com/png.latex?U) is bounded, so ![](http://www.codecogs.com/png.latex?\\sup%20U) and ![](http://www.codecogs.com/png.latex?\\inf%20U) are defined.
This also implies that the difference in expected utility, given any
information, of any two policies, is bounded. More formally: ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\forall%20Q'\\subset%20Q\\,\\forall%20p',p''\\in%20P\\,\\left|\\left\(\\left\(\\sum\_\{q\\in%20Q'\}U\\left\(q,y\_\{1:\\infty\}%5E\{p'q\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\\diagup\\left\(\\sum\_\{q\\in%20Q'\}2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\\right\)\-\\left\(\\left\(\\sum\_\{q\\in%20Q'\}U\\left\(q,y\_\{1:\\infty\}%5E\{p''q\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\\diagup\\left\(\\sum\_\{q\\in%20Q'\}2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\\right\)\\right|\\leq\\sup%20U\-\\inf%20U\}),
so in particular, ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\left|\\left\(\\sum\_\{q\\in%20Q\\setminus%20Q\_\{N\}\}U\\left\(q,y\_\{1:\\infty\}%5E\{pq\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\-\\left\(\\sum\_\{q\\in%20Q\\setminus%20Q\_\{N\}\}U\\left\(q,y\_\{1:\\infty\}%5E\{p\_\{N\}q\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\\right|\\leq\\left\(\\sup%20U\-\\inf%20U\\right\)\\sum\_\{q\\in%20Q\\setminus%20Q\_\{N\}\}2%5E\{\-\\ell\\left\(q\\right\)\}%3C\\frac\{\\varepsilon\}\{2\}\}).
![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\left|\\left\(\\sum\_\{q\\in%20Q\}U\\left\(q,y\_\{1:\\infty\}%5E\{pq\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\-\\left\(\\sum\_\{q\\in%20Q\}U\\left\(q,y\_\{1:\\infty\}%5E\{p\_\{N\}q\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\\right|\\leq\\left|\\left\(\\sum\_\{q\\in%20Q\_\{N\}\}U\\left\(q,y\_\{1:\\infty\}%5E\{pq\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\-\\left\(\\sum\_\{q\\in%20Q\_\{N\}\}U\\left\(q,y\_\{1:\\infty\}%5E\{p\_\{N\}q\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\\right|\+\\left|\\left\(\\sum\_\{q\\in%20Q\\setminus%20Q\_\{N\}\}U\\left\(q,y\_\{1:\\infty\}%5E\{pq\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\-\\left\(\\sum\_\{q\\in%20Q\}U\\left\(q,y\_\{1:\\infty\}%5E\{p\_\{N\}q\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\\right\)\\right|%3C\\frac\{\\varepsilon\}\{2\}\+\\frac\{\\varepsilon\}\{2\}=\\varepsilon\}).

theorem: ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\sum\_\{\\dot\{q\}\\in%20Q\}U\\left\(\\dot\{q\},\\dot\{y\}\_\{1:\\infty\}\\right\)2%5E\{\-\\ell\\left\(\\dot\{q\}\\right\)\}=\\sup\_\{p\\in%20P\}\\sum\_\{q\\in%20Q\}U\\left\(q,y\_\{1:\\infty\}%5E\{pq\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\}),
where, ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\dot\{y\}\_\{k\}:=\\arg\\max\_\{y\_\{k\}\\in%20Y\}\\sup\_\{p\\in%20P:p\\left\(\\dot\{x\}\_\{%3Ck\}\\right\)=\\dot\{y\}\_\{%3Ck\}y\_\{k\}\}\\sum\_\{q\\in%20Q:q\\left\(\\dot\{y\}\_\{%3Ck\}\\right\)=\\dot\{x\}\_\{%3Ck\}\}U\\left\(q,\\dot\{y\}\_\{%3Ck\}y\_\{k\}y\_\{k\+1:\\infty\}%5E\{pq\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\}).

proof of theorem: Let's call the policy implemented by the agent ![](http://www.codecogs.com/png.latex?p%5E\{\*\}).
By lemma 1, there is a sequence of policies ![](http://www.codecogs.com/png.latex?\\left\\\{%20p\_\{n\}\\right\\\}%20\_\{n=1\}%5E\{\\infty\})
converging to ![](http://www.codecogs.com/png.latex?p%5E\{\*\}) such that ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\lim\_\{n\\rightarrow\\infty\}\\sum\_\{q\\in%20Q\}U\\left\(q,y\_\{1:\\infty\}%5E\{p\_\{n\}q\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}=\\sup\_\{p\\in%20P\}\\sum\_\{q\\in%20Q\}U\\left\(q,y\_\{1:\\infty\}%5E\{pq\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\}).
By lemma 2, ![](http://www.codecogs.com/png.latex?\{\\displaystyle%20\\sum\_\{q\\in%20Q\}U\\left\(q,y\_\{1:\\infty\}%5E\{p%5E\{\*\}q\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}=\\sup\_\{p\\in%20P\}\\sum\_\{q\\in%20Q\}U\\left\(q,y\_\{1:\\infty\}%5E\{pq\}\\right\)2%5E\{\-\\ell\\left\(q\\right\)\}\}).

0 comments

Comments sorted by top scores.