I was wondering what are the current state-of-the-art methods (_aka_ your favourite methods, if you are an expert) for Monte Carlo sampling from a target density function $f(x)$ with $x \in \mathbb{R}^d$, $d > 1$, given different amount of accessible knowledge about $f$. If you already know a lot about $f$, or you spend a lot of time to get to know the details of $f$, you could do pretty clever stuff; but this is not often the case and I am curious to know what would be the first out-of-the-box method that you would try to attack the problem in these cases. Specifically, let us consider the following scenarios: 1. When for $f(x)$ you only have an unnormalized _black-box_. That is, you can only evaluate $f$ exactly at a given point $x$, and up to a normalization constant. You may have some vague information about the meaning of $x$. 2. As (1) but also with gradient information. 3. As (1) but the normalization constant is known (does it allow to do better?). 4. As (1) but we know that $f(x)$ has compact support within a known region $\mathcal{U} \subset \mathbb{R}^d$. 5. As any above and we know that $\log f(x) = \sum_{i = 1}^n \log f_i(x)$, and we can evaluate the various $f_i$ separately. 6. As (1) but we can only get a noisy (unbiased) estimate of $f(x)$ itself. 7. As (6) but with an unbiased estimate of $\log f(x)$. I'll post below what would be my answers, to give an idea.