ePrints.FRI - University of Ljubljana, Faculty of Computer and Information Science

A nondeterministic and lazy framework for data-flow computation

Mitar Milutinović (2011) A nondeterministic and lazy framework for data-flow computation. EngD thesis.

[img] PDF
Download (3661Kb)


    We have developed a nondeterministic and lazy framework for data-flow computation called Etage. We implemented it in Haskell programming language. Programs in the developed framework are networks of operations and connections over which data is transmitted and where operations are triggered when all required data is available. The execution order of operations is nondeterministic and depends on the data arrival order. Etage is a lazy framework as it computes only the data really used by operations. The proposed approach is suitable for development of software systems which are connected to the physical world. An example of such a system is real-time robot control. The nature of sensory data processing and robot control is similar to data-flow computing and can be successfully translated into a program. In the thesis we tested such coupling of the physical machine and Etage by developing a robot, a system for capturing its position in a testing polygon, and software for communication with its control system. We found that the developed framework is very suitable for such systems. Additionally, we tested the performance of the framework on the problem of cheapest path search in a graph. Our Etage-based search programs performed slower than state-of-the-art solutions, but were more suitable for parallelization. The presented framework is by our knowledge the first one of its kind. We have also developed the first programming interface for robot's control system in Haskell programming language. The developed open-source code is freely accessible on the web. Alongside the framework itself the main contribution is a showcase for utility of functional languages for development of practical data-flow systems.

    Item Type: Thesis (EngD thesis)
    Keywords: data-flow computation, framework, parallel evaluation, robot, controling, graphs, shortest path, data flow, lazy evaluation
    Number of Pages: 115
    Language of Content: Slovenian
    Mentor / Comentors:
    Name and SurnameIDFunction
    prof. dr. Blaž Zupan106Mentor
    Link to COBISS: http://www.cobiss.si/scripts/cobiss?command=search&base=50070&select=(ID=00008447828)
    Institution: University of Ljubljana
    Department: Faculty of Computer and Information Science
    Item ID: 1382
    Date Deposited: 14 Jun 2011 12:03
    Last Modified: 13 Aug 2011 00:39
    URI: http://eprints.fri.uni-lj.si/id/eprint/1382

    Actions (login required)

    View Item