Iain Stewart

Teaching

During 2019-20 I will teach the following courses:

  • Artificial Intelligence Search (10 lectures; a sub-module of the module COMP2231 Software Methodologies)
    This Level 2 sub-module describes how to translate problems into a search problem framework and then introduces generic problem-solving techniques such as: breadth-first search and uniform-cost search; depth-first search and depth-limited search; greedy best-first search; A*-search; local search; hill climbing; simulated annealing; genetic algorithms; and constraint satisfaction. We put everything together and show how propositional logic can be used to implement an agent's knowledge-base, with new formulae inferred from old using algorithms based on resolution and satisfiability (e.g., Davis-Putnam) that can be implemented with the help of our search methods.
  • Interconnection Networks for Parallel Computing (10 lectures; a sub-module of the module COMP4031 Computing Methodologies IV)
    This Level 4 sub-module explains the role of interconnection networks in distributed-memory multiprocessors. We consider four core aspects of interconnection networks: topologies (structure, properties, performance and cost); routing (algorithms, deadlock and livelock); flow control and switching (circuit switching, store-and-forward, cut-through, wormhole and virtual channel); and broadcasting (multi-node, single-node scatters and total exchanges). We concentrate on the hypercube, k-ary n-cube and cube-connected cycles topologies.

I also supervise Level 3 and Level 4 project students. This coming year, I will offer the following project themes:

  • Bribery in Rating-Based Systems
  • Colouring Nodes of a Decentralized Network
  • Designing and Simulating Structured Peer-to-Peer Networks
  • Heuristics for Application Mapping on Networks-on-Chips
  • Influence Spreading in Networks
  • Positive Influence Dominating Sets in Social Networks
  • Simulating Data Centre Networks
  • Solving Reconfiguration Problems Using Heuristic Methods
  • Using Cuckoo Search to Colour Graphs
  • Using Heuristic Methods to Train Neural Networks
  • Virtual Machine Embedding in Server-Centric Data Centre Networks
  • Wireless Recharging in Wireless Sensor Networks

(updated 27th March 2019)