Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Jim Dowling is active.

Publication


Featured researches published by Jim Dowling.


Lecture Notes in Computer Science | 2001

The K-Component Architecture Meta-model for Self-Adaptive Software

Jim Dowling; Vinny Cahill

Software architectures have recently emerged as a level of design concerned with specifying the overall structure of a system. Traditionally, software architectures only provide static descriptions of the participants and interaction structures in a system. Dynamic software architectures, however, can be reconfigured at runtime and therefore provide support for building dynamically adaptable applications. Software architectures can be specified using architectural reflection. In this paper we introduce an architecture meta-model that realises a dynamic software architecture. The architecture meta-model reifies the configuration graph of the architecture and is automatically generated from our component definitions and implementation language source-code. We show how graph transformations that re-write the architectures configuration graph can be implemented as reflective programs, called adaptation contracts. Adaptation contracts are written in a separate programming language, thus cleanly separating the adaptation code from the computational code. Adaptation contracts can even be replaced at run-time. They are deployed in a run-time meta-level architecture that addresses issues of system safety, integrity and overhead during graph transformation. The paper also describes a prototype implementation of our model called K-Components.


systems man and cybernetics | 2005

Using feedback in collaborative reinforcement learning to adaptively optimize MANET routing

Jim Dowling; Eoin Curran; Raymond Cunningham; Vinny Cahill

Designers face many system optimization problems when building distributed systems. Traditionally, designers have relied on optimization techniques that require either prior knowledge or centrally managed runtime knowledge of the systems environment, but such techniques are not viable in dynamic networks where topology, resource, and node availability are subject to frequent and unpredictable change. To address this problem, we propose collaborative reinforcement learning (CRL) as a technique that enables groups of reinforcement learning agents to solve system optimization problems online in dynamic, decentralized networks. We evaluate an implementation of CRL in a routing protocol for mobile ad hoc networks, called SAMPLE. Simulation results show how feedback in the selection of links by routing agents enables SAMPLE to adapt and optimize its routing behavior to varying network conditions and properties, resulting in optimization of network throughput. In the experiments, SAMPLE displays emergent properties such as traffic flows that exploit stable routes and reroute around areas of wireless interference or congestion. SAMPLE is an example of a complex adaptive distributed system.


distributed applications and interoperable systems | 2006

Discovery of stable peers in a self-organising peer-to-peer gradient topology

Jan Sacha; Jim Dowling; Raymond Cunningham; René Meier

Peer-to-peer (P2P) systems are characterised by a wide disparity in peer resources and capabilities. In particular, a number of measurements on deployed P2P systems show that peer stability (e.g. uptime) varies by several orders of magnitude between peers. In this paper, we introduce a peer utility metric and construct a self-organising P2P topology based on this metric that allows the efficient discovery of stable peers in the system. We propose and evaluate a search algorithm and we show that it achieves significantly better performance than random walking. Our approach can be used by certain classes of applications to improve the availability and performance of system services by placing them on the most stable peers, as well as to reduce the amount of network traffic required to discover and use these services. As a proof-of-concept, we demonstrate the design of a naming service on the gradient topology.


acm sigsoft workshop on self managed systems | 2004

Self-managed decentralised systems using K-components and collaborative reinforcement learning

Jim Dowling; Vinny Cahill

Components in a decentralised system are faced with uncertainty as how to best adapt to a changing environment to maintain or optimise system performance. How can individual components learn to adapt to recover from faults in an uncertain environment? How can a decentralised system coordinate the adaptive behaviour of its components to realise system optimisation goals given problems establishing consensus in dynamic environments? This paper introduces a self-adaptive component model, called K-Components, that enables individual components adapt to a changing environment and a decentralised coordination model, called collaborative reinforcement learning, that enables groups of components to learn to collectively adapt their behaviour to establish and maintain system-wide properties in a changing environment.


conference on object oriented programming systems languages and applications | 1999

Using Reflection to Support Dynamic Adaptation of System Software: A Case Study Driven Evaluation

Jim Dowling; Tilman Schäfer; Vinny Cahill; Peter Haraszti; Barry Redmond

A number of researchers have recently suggested the use of reflection as a means of supporting dynamic adaptation of object-oriented software especially systems software including both middleware and operating systems. In order to evaluate the use of reflection in this context we have implemented a resource manager that can be adapted to use different resource management strategies on behalf of its clients using three distinct technologies: design patterns, dynamic link libraries, and reflection. In this paper we report on this experiment and compare the three approaches under performance, ability to separate functional code from code concerned with adaptation, and programming effort. We conclude that although the overhead of using reflection may be high, reflection offers significant advantages in terms of the ability to separate functional and adaptation code.


Lecture Notes in Computer Science | 2006

Using aggregation for adaptive super-peer discovery on the gradient topology

Jan Sacha; Jim Dowling; Raymond Cunningham; René Meier

Peer-to-peer environments exhibit a very high diversity in individual peer characteristics ranging by orders of magnitude in terms of uptime, available bandwidth, and storage space. Many systems attempt to exploit this resource heterogeneity by using the best performing and most reliable peers, called super-peers, for hosting system services. However, due to inherent decentralisation, scale, dynamism, and complexity of P2P environments, self-managing super-peer selection is a challenging problem. In this paper, decentralised aggregation techniques are used to reduce the uncertainty about system properties by approximating the peer utility distribution allowing peers to calculate adaptive thresholds in order to discover appropriate super-peers. Furthermore, a heuristic search algorithm is described that allows super-peers, above a certain utility threshold, to be efficiently discovered and utilised by any peer in the system.


advanced architectures and algorithms for internet delivery and applications | 2006

High-bandwidth mesh-based overlay multicast in heterogeneous environments

Bartosz Biskupski; Raymond Cunningham; Jim Dowling; René Meier

In this paper we present MeshCast, a peer-to-peer (p2p) multicast protocol for applications requiring high bandwidth (such as live video streaming) from a server to a large number of receivers. Traditional tree-based approaches to overlay multicast inefficiently utilise the outgoing bandwidth of participating nodes and poorly adapt to node membership churn. In contrast, MeshCast is based on Chainsaw mesh-based approach to data delivery that better utilises bandwidth and provides excellent adaptation properties. In this paper we identify properties that enable mesh-based overlay multicast protocols to better utilise the available bandwidth and consequently support higher data stream rates in heterogeneous environments. MeshCast uses a gossip-based algorithm to adapt the overlay to peer heterogeneity, while still preserving the advantages of a mesh-based overlay. Our experiments show that MeshCast can support 68% higher stream rates and provides a 22% improvement in buffering delay over the recently proposed Chainsaw protocol for a heterogeneous node bandwidth distribution.


Knowledge Engineering Review | 2006

Building autonomic systems using collaborative reinforcement learning

Jim Dowling; Raymond Cunningham; Eoin Curran; Vinny Cahill

This paper presents Collaborative Reinforcement Learning (CRL), a coordination model for online system optimization in decentralized multi-agent systems. In CRL system optimization problems are represented as a set of discrete optimization problems, each of whose solution cost is minimized by model-based reinforcement learning agents collaborating on their solution. CRL systems can be built to provide autonomic behaviours such as optimizing system performance in an unpredictable environment and adaptation to partial failures. We evaluate CRL using an ad hoc routing protocol that optimizes system routing performance in an unpredictable network environment.


international conference on machine learning | 2005

Predicting probability distributions for surf height using an ensemble of mixture density networks

Michael Carney; Pádraig Cunningham; Jim Dowling; Ciaran Lee

There is a range of potential applications of Machine Learning where it would be more useful to predict the probability distribution for a variable rather than simply the most likely value for that variable. In meteorology and in finance it is often important to know the probability of a variable falling within (or outside) different ranges. In this paper we consider the prediction of surf height with the objective of predicting if it will fall within a given surfable range. Prediction problems such as this are considerably more difficult if the distribution of the phenomenon is significantly different from a normal distribution. This is the case with the surf data we have studied. To address this we use an ensemble of mixture density networks to predict the probability density function. Our evaluation shows that this is an effective solution. We also describe a web-based application that presents these predictions in a usable manner.


wireless on demand network systems and service | 2005

SAMPLE: Statistical Network Link Modelling in an On-Demand Probabilistic Routing Protocol for Ad Hoc Networks

Eoin Curran; Jim Dowling

Existing routing protocols for multi-hop wireless networks assume an idealised wireless network in which all links in the network are either on or off and where all functioning links are equally good. Such a model interprets the fraction of packets that are dropped due to contention or interference as broken links, which can in turn lead to increased routing traffic and radio contention. This paper introduces a statistical model of estimated link reliability in wireless networks based on sampling attempted and successful packet transmissions in the network. We present a path metric based on the link model to capture the cost of routes in the network. We investigate both the link model and the path metric in an on-demand probabilistic routing protocol called SAMPLE that is inspired by reinforcement learning techniques. Different scenario-based performance evaluations of the protocol in NS-2 are presented. In comparisons with AODV and DSR, SAMPLE exhibits improved performance in both lossy and congested wireless networks.

Collaboration


Dive into the Jim Dowling's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Simon Dobson

University of St Andrews

View shared research outputs
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge