School of Electronic Engineering and Computer Science

Mr Mosab Bazargani


Room Number: Peter Landin, CS 319


Big Data Processing (Undergraduate)

Parallel computing, which implies the simultaneous execution of several processes for solving a single problem, is a mainstream subject with wide ranging implications for computer architecture, algorithms design and programming. The UK has been at the forefront of this technology through its involvement in the development of several innovative architectures. Queen Mary has been actively involved with Parallel Computing for more than a decade. In this module, you will be introduced to parallel computing and will gain first hand experience in relevant techniques. Laboratory work will be based on the MPI (Message Passing Interfaces) standard, running on a network of PCs in the teaching laboratory. The module should be of interest to Computer Scientists and those following joint programmes (eg CS/Maths, CS/Stats). It is also suitable for Chemistry and Engineering students and all those who are concerned with the application of high performance parallel computing for their particular field of study (eg Simulation of chemical Behaviour). The 12-week module involves two hours of timetabled lectures per week. Laboratory sessions are timetabled at two hours per week, normally spanning half the semester only. The module syllabus adopts a hands-on programming stance. In addition, it focuses on algorithms and architectures to familiarise you with messagepassing systems (MPI) as adopted by the industry.

Cloud Computing (Postgraduate)

Cloud Computing has transformed how services and applications are delivered. Thanks to the rise of virtualisation technology and new programming paradigms, applications can quickly be delivered to a growing audience, without the need to physically own and configure the infrastructure. The Cloud Computing module will cover the main characteristics of Cloud Computing, including the enabling technologies, main software and service paradigms underpinning it, as well as related aspects, namely security, privacy, ethical concerns

C Programming (Undergraduate)

This module introduces the principles of C Programming to students who already know how to program at a basic level in Java. It provides a knowledge of the theory of C Programming and also its practical use in real engineering systems. The focus is on microprocessor based systems.

Data Mining (Undergraduate)

Data that has relevance for decision-making is accumulating at an incredible rate due to a host of technological advances. Electronic data capture has become inexpensive and ubiquitous as a by-product of innovations such as the Internet, e-commerce, electronic banking, point-of-sale devices, bar-code readers, and electronic patient records. Data mining is a rapidly growing field that is concerned with developing techniques to assist decision-makers to make intelligent use of these repositories. The field of data mining has evolved from the disciplines of statistics and artificial intelligence. This module will combine practical exploration of data mining techniques with a exploration of algorithms, including their limitations. Students taking this module should have an elementary understanding of probability concepts and some experience of programming.

Object-Oriented Programming (Undergraduate)

Major topics include the concepts of class, object, method, subclass, inheritance and their use in programming. The relevance of the object oriented style with respect to concrete software problems will be stressed both in lectures and labs. There will be two hours of lectures per week, and each student will have a weekly timetabled lab session. In addition, you will be expected to spend further time outside scheduled lab periods in the lab (or at home machines if they are available), and to read textbooks and review notes.



  • Bazargani M, Drake JH, Burke EK (2018). Late Acceptance Hill Climbing for Constrained Covering Arrays. nameOfConference
  • Bazargani M, Lobo FG (2017). Parameter-less late acceptance hill-climbing. nameOfConference
  • Guizzo G, Bazargani M, Paixao M et al. (2017). A hyper-heuristic for multi-objective integration and test ordering in google guava. nameOfConference
  • Lobo FG, Bazargani M (2015). When hillclimbers beat genetic algorithms in multimodal optimization. nameOfConference
  • Bazargani M, Mateus L, Loja MAR (2015). Planar surfaces recognition in 3D point cloud using a real-coded multistage genetic algorithm. nameOfConference
  • Lobo FG, Bazargani M (2015). When Hillclimbers Beat Genetic Algorithms in Multimodal Optimization.. nameOfConference
  • Bazargani M, Mateus L, Loja MAR (2014). Logarithmically proportional objective function for planar surfaces recognition in 3D point cloud. nameOfConference
  • Bazargani M, Dos Anjos A, Lobo FG et al. (2012). Affine image registration transformation estimation using a real coded genetic algorithm with SBX. nameOfConference
  • Bazargani M, Anjos AD, Lobo FG et al. (2012). Affine image registration transformation estimation using a real coded genetic algorithm with SBX.. nameOfConference