Skip to content
Roberto Rossi edited this page Sep 22, 2022 · 22 revisions

Suppose you have $5 and you are playing a gambling game, which simply consists in tossing a coin. You can bet any amount up to your current balance; if the coin toss is HEAD you double your bet, if the toss is TAIL you lose your bet. What is the optimal betting strategy that maximises the probability of achieving a certain target balance after N tosses?

Stochastic dynamic programming is a techniques that is used for determining optimal policies for problems akin to the one above. It is typically applied in finance (option pricing), production planning (stochastic inventory control), and in several other application domains.

jsdp is a Java library for modelling and solving stochastic dynamic programs.

R. Rossi, "jsdp: a Java Stochastic Dynamic programming Library," arXiv:2209.09979 [cs.AI][math.OC]

Project objectives

  • streamline stochastic modelling based on stochastic dynamic programming
  • exploit built-in Java 8 parallelisation
  • showcase a range of applications in multiple areas

Citing jsdp

To cite jsdp:

@software{jsdp_github,
  author = {Roberto Rossi},
  title = {jsdp: a Java Stochastic Dynamic Programming library},
  url = {http://gwr3n.github.io/jsdp/},
  version = {1.0.1},
  year = {2018},
}
@misc{2209.09979,
Author = {Roberto Rossi},
Title = {jsdp: a Java Stochastic Dynamic Programming Library},
Year = {2022},
Eprint = {arXiv:2209.09979},
}