cat theta.json | simplex -M 1e4 | ksimplex -M 1e4 | mif -M 1e2 > mle.json
Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface.
            cat index.html | wc
          
            ls | grep .html | wc -l
          
Code → Inference
plug-and-play methods require only simulations from a model
Semantic → Code → Inference
  "model": [
    {"from": "S", "to": "I",  "rate": "beta*S*I/N"},
    {"from": "I", "to": "R",  "rate": "v"}
  ],
  "white_noise": [
    {
      "reaction": [{"from":"S", "to": "I"}],
      "sd": "sto"
    }
  ]
                
              
{
  "beta": {
    "transformation": "log",
    "unit": "D"
    "guess": {"NewYork": 90, "Paris": 120}
  },
}
              cat theta.json | simplex -M 1e4 | ksimplex -M 1e4 | mif -M 1e2 > mle.json
simul [implementation]smc [implementation]kalman [implementation]simplex [implementation]ksimplex [implementation]kmcmc [implementation]pmcmc [implementation]mif [implementation]
[
  {
    name: "lhs_simplex",  
    id: "lhs",
    H: 500,  
    cmd: [
      {
        comment: "Get the initial conditions",
        fit: "-D -p -I",
        algorithm: "simul ode -T 100000"
      },
      {
        comment: "First simplex",
        fit: "-D -X -p -r rep -j",
        algorithm: "simplex -M 10000 --no_trace --prior"
      },
      {
        comment: "We chain ksimplex",
        fit: "-B -u 0.01",
        algorithm: "ksimplex -M 10000 --no_trace --prior",
        repeat: 19
      }
    ]
  },
  {
   reduce: "best"
  },
  {
    name: "pMCMC_sampler", 
    id: "replicate",
    H: 19,  
    cmd: [
      {
        comment: "Get a covariance matrix",
        fit: "-D",
        algorithm: "kmcmc -M 20000 --full"
      },
      {
        comment: "sample",
        fit: "-D -C",
        algorithm: "pmcmc -M 1000000 -J 1000 --full -C"
      }
    ]
  }
]
	>