Flower Pollination Algorithm for Global Optimization

Flower Pollination Algorithm for Global Optimization - Xin-She Yang 2013 The last of the optimisation algorithms we'll look at for now, today's paper is the most recent (2013) and also by Xin-She Yang. Once more, we only get comparisons to genetic algorithms and PSO, and once more the comparison is favourable. In many design applications … Continue reading Flower Pollination Algorithm for Global Optimization

Firefly Algorithms for Multimodal Optimization

Firefly Algorithms for Multimodal Optimization - Xin-She Yang, 2010 This is the third post in a mini-series on nature-inspired optimisation algorithms. The flashing light of fireflies is an amazing sight in the summer sky in the tropical and temperate regions. There are about two thousand firefly species, and most fireflies produce short and rhythmic flashes. … Continue reading Firefly Algorithms for Multimodal Optimization

Ant Algorithms for Discrete Optimization

Ant Algorithms for Discrete Optimization - Dorigo et al. 1999 It's the emergent behaviour in nature-inspired algorithms that excites me. Ant colonies provide a great example: although each individual ant is in principle capable of finding a solution, it is only the ensemble of ants - that is, the ant colony - that exhibits optimisation … Continue reading Ant Algorithms for Discrete Optimization

Particle Swarm Optimization

Particle Swarm Optimization - Kennedy & Eberhart 1995 What do flocks of birds, schools of fish, ant colonies, bat echo-location, firefly flashlights, cuckoos, and flower-pollination all have in common? They've all inspired optimisation algorithms! I've been perusing Xin-She Yang's book on Nature-Inspired Optimization Algorithms and thought it might be fun to make a mini-series out … Continue reading Particle Swarm Optimization

PerfBlower: Quickly Detecting Memory-Related Performance Problems via Amplification

PerfBlower: Quickly Detecting Memory-Related Performance Problems via Amplification - Fang et al. 2015 Another ECOOP '15 paper, and definitely something with immediate pragmatic utility. PerfBlower finds heap-related performance problems during regular test runs (not exhaustive performance tests) by amplifying the effects of small issues to make them visible. The user provides details of classes of … Continue reading PerfBlower: Quickly Detecting Memory-Related Performance Problems via Amplification

Streams à la carte: Extensible pipelines with object algebras

Streams à la carte: Extensible pipelines with object algebras - Biboudis et al. 2015 Streaming APIs are popping up everywhere, allowing the programmer to express streaming computations such as: int sum = IntStream.of(v) .filter(x -> x % 2 == 0) .map(x -> x * x) .sum(); On examining the streaming libraries in Java, Scala, and … Continue reading Streams à la carte: Extensible pipelines with object algebras

Cloud Types for Eventual Consistency

Cloud Types for Eventual Consistency - Burckhardt et al. 2012 Providing good programming abstractions for cloud storage, synchronization, and disconnected operation appears crucial to accelerate the production of useful and novel applications on today’s and tomorrow’s mobile devices. This paper proposes a model based on cloud types (which may be integrated with a programming language). … Continue reading Cloud Types for Eventual Consistency