Oppgaven er ikke lenger tilgjengelig

Improving grid-based simulation tool for swarm behavior

Motivation

Emergent Self-Organizing behavior (or simply swarming) is becoming
a popular paradigm in design of distributed systems and applications.
Despite many favorable properties (small memory footprint, simple
rules, high degree of adaptation and flexibility, robustness etc.),
design of swarm behavior is not a trivial task due to its inherent
property of “non-linearity” (the whole is greater than the sum of its parts)
and randomness (a certain degree of unpredictability). Therefore most of
the designs are done in an “ad hoc” way with a trial-and-error “design method”
avoiding exploring the full potential of swarming. To cope with this
problem we have proposed a methodology together with a design
framework. A part of the design process is an extensive number of
simulations that can on a single machine take several weeks or even
months. For this reason the framework contains module for grid
computations. Currently we cannot take the full advantage of the grid
network to perform simulations due to a fairly simple grid scheduler.
The goal of your thesis will be to improve or even propose own grid
schedulers with defined service qualities and integrate it into the
existing framework. The framework is implemented in Java.

Goal

Design and integration of the scheduler for grid computations into the
existing Java framework for swarm behavior.

Tasks

  • Review of existing grid computing middlewares
  • State of the art of schedulers for grid computations
  • Proposal of improved/new centralized global scheduler (deployed on the server and managing all nodes and tasks)
  • Optional work could be also to improve/create new distributed scheduler (each node autonomously decide about tasks to compute)
  • Implement the scheduler and integrate it into the existing swarm design environment
  • Evaluate the performance and quality parameters of the scheduler

Additional information

The design framework for swarm behavior with grid node software as well
as applications running in the grid will be provided. You are not
expected to design and provide them. Th focus will be only on the design
and implementation of the scheduler. The programming language is Java.

Expected knowledge

  • Fluent in Java and C/C++
  • Knowledge of distributed systems and computing
  • Good software engineering thinking (design patterns, reuse, modularity …)
  • Experience with programming network applications
Publisert 29. sep. 2012 08:07 - Sist endret 11. des. 2014 08:25

Veileder(e)

  • Frank Eliassen Universitetet i Oslo
  • Dalimir Orfanus (orfanus@gmail.com)

Omfang (studiepoeng)

60