joseedil / phd

Stuff of my PhD I want to share publicly: all code, texts of my papers, research-notes & research-diary

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

phd

Stuff of my PhD I want to share publicly: all code, texts of my papers, reports, research-notes & research-diary

In my Ph.D. in computer science at the University of Nottingham I am looking into exploring the benefits and drawbacks of using the functional programming paradigm for implementing Agent-Based Simulations.

To give a short overview of the ideas and research directions the abstract of my Research Proposal is quoted here:

Agent-Based Modelling and Simulation (ABMS) is still a young discipline and the dominant approach to it is object-oriented computation. This thesis goes into the opposite direction and asks how ABM/S can be mapped to and implemented using pure functional computation and what one gains from doing so. To the best knowledge of the author, so far no proper treatment of ABMS in this field exists but a few papers which only scratch the surface. The author argues that approaching ABM/S from a pure functional direction offers a wealth of new powerful tools and methods. The most obvious one is that when using pure functional computation reasoning about the correctness and about total and partial correctness of the simulation becomes possible. Also pure functional approaches allow the design of an embedded domain specific language (EDSL) in which then the models can be formulated by domain-experts. The strongest point in using EDSL is that ideally the distinction between specification and implementation disappears: the model specification is then already the code of the simulation-program. This allows to rule out a serious class of errors where specification and implementation does not match, which is especially a big problem in scientific computing.

Jonathan Thaler, 27th July 2017

About

Stuff of my PhD I want to share publicly: all code, texts of my papers, research-notes & research-diary

License:GNU General Public License v3.0


Languages

Language:HTML 56.7%Language:Limbo 16.0%Language:TeX 11.2%Language:Haskell 7.1%Language:Java 4.2%Language:Agda 3.2%Language:MATLAB 0.6%Language:NetLogo 0.2%Language:Groovy 0.2%Language:Scala 0.1%Language:Batchfile 0.1%Language:Shell 0.1%Language:Erlang 0.1%Language:Visual Basic 0.1%Language:Elm 0.1%Language:Rascal 0.0%Language:CSS 0.0%Language:Scheme 0.0%Language:Makefile 0.0%