I am looking for a way to apply Berge's maximum theorem when my constraint set is a subset of $L^1$. The problem looks like this:
$$ g(\theta) = \min_{x\in B(\theta)} \mathbb{E}\left[f\left(x\right)\right].$$
In particular, if I am able to guarantee that my correspondence $B(\theta)\subset \mathbb{L}^1$ yields a minimum for each $\theta$ (rather than assuming compactness) what do I need to do to prove that $g(\theta)$ is continuous in $\theta$?
My idea was to invoke Berge's theorem by proving that $B(\theta)$ is continuous but I am not sure which metric to use for this purpose. Any ideas or references to something that might help would be appreciated!
Presumably the expectation is over some random variable $z$, so your objective is really $\mathbb{E}_z[f(x,z)]$? If the expectation is over $\theta$ the problem is very ill-posed.
So let's skip that. Just take $\theta$ as a parameter in $\Theta \subset \mathbb{R}^N$. The parameter $\theta$ determines $B(\theta)$, and then the decision-maker maximizes $f(x)$ subject to $x\in B(\theta)$.
The Weierstrass theorem implies that if $f(x)$ is lower semi-continuous in $x$ and $B(\theta)$ is a compact set, a solution exists. The Heine-Borel theorem says that if $B(\theta)$ is a closed and bounded subset of $\mathbb{R}^N$, $B(\theta)$ is compact. But you are not maximizing over elements in a finite-dimensional vector space, because your choice set is a subset of an infinite-dimensional vector space, $L^1$, the space of integrable functions. You are picking an entire function, say, $x(t), t \in [0,1] $. This is probably why you are hung up on the metric: you want to start in the direction of the topology induced by the metric by investigating the properties of closed and open balls. The problem is, the closed unit ball isn't compact in infinite dimensional vector spaces, so this is probably a dead end for you (look up why the closed unit ball isn't compact in the space of all vectors of infinite length that only take the values 0 or 1 at each entry; particularly the sequence $(1,0,0...)$, $(0,1,0,...)$, $(0,0,1,...)$, $...$.
You have (at least) three options to get existence, depending on what your objective function is. If it is some norm, the first is the parallelogram inequality; see Luenberger (1969), p. 69, to see this approach in action with, essentially, the OLS estimator. The main advantage of this approach is that you don't necessarily need compactness of the choice set to show existence of a minimizer. The second is the Arzela-Ascoli theorems that characterize compactness in function spaces, the same way that Heine-Borel does in $\mathbb{R}^N$. The conditions are much more demanding: it is, very roughly, something like requiring the family of functions in your set $B(\theta)$ to be Lipschitz continuous. If your $B(\theta)$ sets are sufficiently well-behaved, perhaps they will be uniformly bounded and equicontinuous for all $\theta$, and you will be in business. The third is to look at $B(\theta)$ and see if you can use the Calculus of Variations or Pontryagrin's theory of Optimal Control to just solve the problem.
Suppose you resolve the existence question. Great. Berge's theorem is one way to go, but like you've noticed, it will get wrapped up in a lot of topological details about functions spaces. You could go learn about such things; a start would be the topology of pointwise convergence, the compact-open topology, the weak topoogy, and epi-convergence (Clarke and Rockafellar are mathematicians who come to mind here). But this might be easier: "Envelope Theorems for Arbitrary Choice Sets" by Milgrom and Segal:
https://onlinelibrary.wiley.com/doi/abs/10.1111/1468-0262.00296
They show that the structure of the choice set is essentially irrelevant to the differentiability and continuity properties of the indirect utility function. If you can use their approach that really exploits the structure of $\theta \in \mathbb{R}^N$ and the general nature of maximization to avoid analyzing all the intermediate steps of the maximization process, maybe you'll get what you are looking for without learning all about maximization in function spaces (which is really pretty complicated)?