1. Introduction
This Special Issue of Algorithms presents recent advances in the area of graphs and networks, focusing particularly on optimisation problems and their associated algorithms.
In layman’s terms, networks and graphs are structures made up of objects in which some pairs of objects (the “vertices”) are related to one other. They can be used in a surprisingly large number of problem areas, including social networking, chemistry, scheduling, electrical engineering, puzzles, and computer networking.
2. Algorithms for Graphs and Networks
One of the most common uses of graphs is in the modelling of transportation systems. In these settings, users are usually concerned in finding efficiencies so that fuel, costs, time and manpower are reduced, while levels of service are maintained or improved. The first article in this Special Issue focusses on the problem of finding shortest paths between locations on a map, represented as points on a graph [
1]. It focuses particularly on applications in which additional penalties are incurred at the vertices, such as when drivers are forced to wait at road junctions, or when passengers need to change vehicles when using public transport. The usual way of incorporating such penalties is to expand the graph by adding additional vertices and connections. This article shows alternative, polynomial-time methods where this expansion can be avoided. Experiments on a large set of real-world public transport networks are also included, helping to illustrate the performance of these methods.
In the second article, Thiruvady, Blum and Ernst use a resource constrained job scheduling problem to help test a variety of different hybrid algorithms that combine elements of heuristics and mathematical programming [
2]. Like many metaheuristics, their approaches are based on maintaining the populations of candidate solutions; however, in this work, the contents of these populations are also used to build restricted integer programming problems that can then be fed into an exact solver and solved quickly. Their results are seen to be competitive with current state-of-the-art methods for this problem.
The third article in this Special Issue is by Smith, Montemanni and Perkins and focuses on the NP-hard maximum clique problem [
3]. This is an important combinatorial optimisation problem that involves identifying the largest subset of vertices that are pairwise adjacent. It is also polynomially equivalent to the maximum independent set problem. Their article presents a high-performance method based on neighbourhood search. They also show how this can be augmented with an exact algorithm that operates on certain sub-problems that arise during computation, producing excellent results.
The fourth article in this Special Issue focuses on the problem of community detection in social networks [
4]. At the time that I am writing this editorial, the world is suffering greatly due to the COVID-19 pandemic. Understanding how and what groups of people physically interact is therefore of the utmost importance, making this research particularly timely. Here, Cutello and his co-researchers present two algorithms for community detection. The first uses random search together with purely stochastic operators; the second uses local search. A comparison with other methods indicates that their methods are reliable optimisation methods for this problem, often outperforming other algorithms.
The final article is by Thiruvady, Nazari and Aleti [
5]. It looks at the problem of maximising reliability in the component deployment problem while also minimising communication overheads. This is actually a multiobjective problem, in that it involves optimising two (potentially conflicting) objective functions simultaneously. The authors note that existing methods often fail to produce feasible solutions for this problem. Consequently, they develop a multiobjective beam search and ant colony optimisation hybrid that uses problem-specific bounds to help guide the search towards feasibility. Four variants of this algorithm are proposed, and it is found that those based on stochastic sampling, the respecting of memory constraints and the enforcement of co-localisation constraints are the most effective.
I hope that readers will find these articles informative.