Academic Model Answers
Library for UK Postgraduates

Browse tutor-verified model answers across MBA, Law, Finance, Research Methods and more. Use as study references for your own work.

200 model answers 30+ subjects covered 50+ UK universities
Find your assignment

Search the Library

Filter by keyword, subject, or both. Updates live as new model answers are added to our portal.

Filtering by “Weighted Graphs” Clear filters

Available Model Answers (2)

Real-time Database Sync
Computer Science / Algorithms / Network Optimisation

An Improved Dijkstra’s Shortest Path Algorithm for Sparse Networks

This technical research paper investigates an improved version of Dijkstra’s shortest path algorithm for sparse weighted networks. Traditional implementations of Dijkstra’s algorithm can achieve a time complexity of O(m + n log n) when Fibonacci heaps are used, but the authors argue that heap construction increases implementation complexity. The proposed approach modifies the original algorithm so that heap construction is avoided while maintaining competitive performance on sparse graphs. An_improved_Dijkstra’s_shortest… The study focuses on the single-source shortest path problem in weighted directed graphs with non-negative edge lengths. It begins by reviewing a refined Dijkstra algorithm in which each vertex maintains a distance label representing an upper bound on the shortest distance from the source vertex. The main computational bottleneck is repeatedly identifying the unvisited vertex with the smallest distance label. A naïve implementation requires O(n²) time, while Fibonacci-heap implementations improve efficiency but introduce additional implementation complexity. An_improved_Dijkstra’s_shortest… An_improved_Dijkstra’s_shortest… The authors propose an improved Dijkstra algorithm that maintains distance labels in an ordered list. When a distance label changes, the corresponding entry is reinserted into the appropriate location rather than rebuilding or maintaining a heap. The algorithm exploits the characteristics of sparse networks, where each vertex is connected to only a relatively small number of edges. This is particularly relevant to road networks, where the maximum degree of each node is typically low. An_improved_Dijkstra’s_shortest… To support efficient reinsertion, the paper introduces a predefined step-size vector and a binary-search-style process for locating the correct insertion position. This approach reduces the number of comparisons required while avoiding the division operations commonly associated with standard binary search implementations. An_improved_Dijkstra’s_shortest… An_improved_Dijkstra’s_shortest… The theoretical analysis shows that the proposed method requires approximately O(m + Dmax log(n!)) comparisons and arithmetic operations, where m represents the number of edges and Dmax is the maximum number of edges incident on a vertex. The authors argue that this complexity makes the approach especially suitable for large-scale sparse networks where the maximum node degree remains relatively small. An_improved_Dijkstra’s_shortest… An_improved_Dijkstra’s_shortest… The algorithm is evaluated through numerical experiments implemented in MATLAB. Two families of randomly generated sparse networks are tested, with network sizes ranging from approximately 10,000 to 21,000 nodes. The first experiment uses a maximum node degree of four, while the second uses a maximum degree of six. Experimental ratios reported in the paper remain close to the theoretical complexity estimate as network size increases. An_improved_Dijkstra’s_shortest… The paper concludes that the improved Dijkstra approach is practical for large sparse networks, particularly road-traffic networks. By avoiding Fibonacci-heap construction and using an ordered-list reinsertion strategy, the algorithm aims to simplify implementation while maintaining competitive computational performance for shortest-path calculations. An_improved_Dijkstra’s_shortest… Important: because this is a published journal article rather than a university assignment brief, fields such as module name, assessment level and assignment word count are not stated in the source. For the portal, it is safer to use Not specified / Not applicable for those fields rather than inventing academic-assessment details.

Read Model Answer →
Computer Science / Algorithms and Optimisation

Genetic Algorithms for the Balanced Spanning Tree Problem

This technical research work investigates the Balanced Spanning Tree Problem, an optimisation problem that seeks to construct a spanning tree capable of balancing two competing network objectives: the low overall cost associated with a Minimum Spanning Tree and the short source-to-destination distances provided by a Shortest Path Tree. For an undirected, weighted and connected graph with a designated root vertex, a balanced spanning tree is defined using two parameters, α and β. The first limits the distance between the root and each vertex relative to the corresponding shortest path in the original graph, while the second limits the total tree weight relative to the Minimum Spanning Tree. Finding an optimal balanced spanning tree is computationally challenging because determining whether a graph contains an (α, β)-balanced spanning tree is an NP-complete problem. The research therefore proposes genetic algorithms as heuristic optimisation techniques for two variants of the problem: minimising β while α is fixed, and minimising α while β is fixed. The proposed genetic algorithm represents individual spanning trees as chromosomes composed of graph edges. An initial population of valid spanning trees is generated before evolutionary operations are repeatedly applied. The approach incorporates chromosome selection, crossover, mutation, fitness evaluation and stopping criteria. Four selection strategies are examined: Random Selection, Roulette Wheel Selection, Stochastic Universal Sampling and Tournament Selection. The fitness function is based on the relationship between the Minimum Spanning Tree weight and the total weight of the candidate chromosome. Experimental evaluation is performed using randomly generated weighted graphs containing 6, 10, 15 and 20 vertices. The experiments investigate different values of the balancing parameters, selection mechanisms and population sizes. The implementation uses a population size of 30, a maximum of 300 generations, crossover probability of 0.9 and mutation probability of 0.01 in the principal experiments. The reported results show that the genetic approach can generate high-quality balanced spanning trees and, for the tested instances, produced solutions matching the corresponding optimal balanced spanning trees. The study also examines how balancing parameters and population size influence execution time and convergence, demonstrating the practical use of evolutionary computation for complex graph-optimisation problems.

Read Model Answer →