Semester Offering: InterSem

To provide students with basic skills in using free softwares (PuLP in the Python programming language) to create network optimization programs that can be used in industrial applications as well as in research.


Computer networks, integer linear programming, linear programming, network algorithms, network optimization, network simulation.


AT77.18 (Optical Networks) or AT77.19 (Optimization for Communications and Networks)


I.          Formulation of network optimization problems
1.  Components of an optimization problem
2.  Linear programming (LP)
3.  Integer linear programming (ILP)

II.        Introduction to PuLP and Python
1.  Basic commands for programming in Python
2.  Using PuLP to solve optimization problems

III.     Software project on shortest path routing and k-shortest path routing
1.  Representing networks as graphs
2.  Shortest path algorithms
3.  k-shortest path algorithms

IV.     Software project on static routing and wavelength assignment (RWA) in optical networks
1.  Optical switching node architectures
2.  Formulation of static RWA problems

V.       Software project on energy efficient routing in wireless sensor networks (WSNs)
1.  Modeling WSNs and their energy usages
2.  Formulation of energy efficient routing

VI.     Software project on M/M/m and M/M/m/m queues
1.  Dynamic traffic and queues
2.  M/M/m queues
3.  M/M/m/m queues

VII.  Software project on dynamic RWA in optical networks
1.  Modeling dynamic traffic for optical networks
2.  Computation of lightpath request blocking probability

VIII.     Final project presentations


 Lecture notes and handouts.


D. Bertsemas and J.N. Tsitsiklis:
Introduction to Linear Optimization, Athena Scientific, 1997.

D.P. Bertsekas and R.G. Gallager:
Data Networks, Prentice Hall, 1992.

T.H. Cormen, C.E. Leiserson, R.L. Rivest, and C. Stein:
Introduction to Algorithms, 2009.

R. Ramaswamy, K. Sivarajan, and G. Sasaki:
Optical Networks: A Practical Perspective, Morgan Kaufmann, 2008.


IEEE Transactions on Communications
IEEE/ACM Transactions on Networking
IEEE Journal on Selected Areas of Communications


The final grade will be computed from the following components:

Weekly in-class projects (40%) and
Final project (60%). 

The projects will be evaluated from all aspects, including technical correctness of the work, the quality of report writings, and the quality of project presentation (for the final project).