Problem solving optimal stopping PDE

I am trying to solve a PDE that is coming up in a control problem. So far I have the following:

eqn = Max[-(s + ϕ) - h[t, α],
D[h[t, α], t] - ζ α D[h[t, α], α] +
1/2 η^2 D[h[t, α], {α, 2}] - α] == 0;

bc1 = h[t, 10] == -(s + ϕ);
bc2 = h[1, α] == -(s + ϕ);


To do that, I am using

NDSolveValue[Evaluate[{eqn, bc1, bc2} /. {η -> 0.01, ζ -> 0.25,
s -> 10, ϕ -> 0.005}],
h[t, α], {t, 0, 1}, {α, -10, 10}]


I was told that this type of equation can be solved with finite difference methods, but I am unable to come up with a scheme due to the Max at the outset.

Mathematica does not deal with the problem well either, as it fails with

NDSolveValue::ndnum: Encountered non-numerical value for a derivative at t == 1.. >>

Since I am no expert in PDEs, I would appreciate both advice to solve the problem in Mathematica and advice/references to deal with the problem more efficiently from a mathematical standpoint.

• Are you solving the equation in a semi-infinite domain or you forgot one boundary? – xzczd Sep 16 '16 at 9:20
• Ideally the former, but I could live with adding the bc h[t, 10] = -(s + [\phi]) – em70 Sep 16 '16 at 12:30
• Well, after a second look at the equation, I'm thinking that, isn't the equation itself incorrect? Let alone the case that the 2 arguments are equal i.e. -(s + ϕ) - h[t, α] == D[h[t, α], t] - ζ α D[h[t, α], α] + 1/2 η^2 D[h[t, α], {α, 2}] - α, no matter which argument inside Max is larger, it should be == 0 i.e. the remaining argument is < 0`, then the comparison makes no sense, because the remaining part isn't able to form a valid equation! – xzczd Sep 16 '16 at 13:11
• @xzczd This is really a quasi-variational inequality that arises in an optimal stopping problem. My hope, perhaps naïve, was that Mathematica would handle it. – em70 Sep 16 '16 at 23:38
• If the equation comes from a real problem, then I guess there's something wrong with your "translation", maybe you can add a bit more background information. – xzczd Sep 17 '16 at 3:08