## teaching

### Graduate Courses

Optimization – (elective, semester A)

**Objectives:** The course aims to introduce students to algorithms used for the solution of optimization problems, as well as their applications in Informatics and scientific decision making, in the context of complex economic and management decisions.

**Content:** Historical review, Definitions and concepts of Optimization, Ellipsoid Algorithm, Scaling Techniques, Interior Point Methods (path following, barrier methods, affine scaling), Exterior Point Algorithms, Presolve Techniques, Advanced Optimization Techniques in dynamic decision problems, Differntial equations with inputs, Calculus of Variations, Euler-Lagrange equations, Linear-quadratic regulators, the Maximum Principle, Hamilton-Jacobi-Bellman equation.

**Web Page:** http://compus.uom.gr/MINF175/

Modeling and Decision Making – (elective, semester B)

**Objectives:** The course aims to introduce the students to advanced topics in mathematical modeling and decision making through case studies and selected papers from the current literature. We will examine problems (and their solutions) from a series of scientific fields such as bioinformatics, image processing, social networks, auctions, tax policy optimization and others.

**Content:** Topics will vary each year, drawing on articles from the current literature. Examples include: Online add auctions (Decision Support Systems), Trust and electronic word-of-mouth modeling (DSS), Structure and function of complex networks (SIAM Review), Mathematics of Infectious Diseases (SIAM Review), Modeling Growth in Biological Materials (SIAM Review), Modeling Basketball Free Throws (SIAM Review).

**Web Page:** http://compus.uom.gr/MINF202/

### Undergraduate Courses

Algorithms with C – (mandatory, 1st semester)

**Objectives:** The student will (a) learn the algorithmic thought, (b) gain familiarity with basic algorithms for sorting and searching and (c) be able to implement these algorithms in C.

**Content:** Algorithms and Problems. Historical review, Definitions and properties of Algorithms, Computational problems, Description of algorithms, Basic concepts of algorithms (Iterative, Recursive, Stochastic, Heuristic). Iterative Sorting Algorithms: Selection Sort, Bucket Sort, Bubble Sort, Radix Sort. Searching Algorithms: Linear Search, Binary Search. Data Structures: Stack, Queue, Cyclic queue, Linked lists (single and double), Heaps, Heap Sort. Recursive Algorithms: Factorial, Fibonacci Numbers, Anoi Towers, Transformation from recursive to iterative. Divide and conquer: Quick Sort, Merge Sort, Matrix Multiplication, Strassen Multiplication, Polynomial Multiplication. Graph Algorithms: Depth First Search, Breadth First Search, Graph connectivity, Directed acyclic graphs. Special Topics on Algorithms: Οn-line algorithms, Dynamic Programming, Greedy algorithms, Backtracking, Branch and Bound. Laboratory. Implementation of basic sorting and searching algorithms using C.

**Web Page:** : http://compus.uom.gr/INF141/index.php

Linear and Network Programming – (mandatory, 4th semester)

**Objectives:** The course aims to introduce the students to the algorithms for the solution of two of the most applied problems; The Linear and Network problems, as also it's applications in Informatics and in the scientific method for decision making in complicated economical and managerial decisions.

**Content:****Introduction – Basic concepts**. Historical review, Definitions and concepts of Linear and Network optimization, Applications of the linear problem formulation, Description of the linear problem, Linear problem formulations (normal, standard, general), Transformation between different formulations, Storage schemes of graphs and trees, Node – node adjacency matrix, Node – arc adjacency matrix, Linked lists.

**Network flow problems and transformations**. Minimum Cost Network Flow Problems, (MCNF), Balanced and not-balanced MCNF, Special MCNF cases, Network flow problems' transformations, MCNF optimality conditions.

**Geometrical solution of the linear problem**. Improving directions, Geometrical solution in the space of variables, Invert matrix properties, Methods of invert matrix calculation for linear optimization problems, Eta-matrices usage.

**Simplex type algorithms**. General description of simplex type algorithms, Methodology of simplex type algorithms, The revised primal simplex algorithm, simplex algorithm's justification, Analysis of different pivoting rules, Solution of general linear problems, (two phase algorithm and big M algorithm), Implementation of simplex type algorithms.

**Duality theory**. Relations between primal and dual linear problem, Transforming primal to dual, Weak duality theorem, Strong duality theorem, Theorem of complementarity slackness, The revised dual simplex algorithm.

**Minimum spanning tree algorithms**. Kruscal algorithm, Prim algorithm.

**Sensitivity analysis**. Classical sensitivity analysis, Changes in the cost variables, Changes in the right hand side.

**Web Page:** http://compus.uom.gr/INF244/index.php

**OpenCourses:** http://opencourses.uom.gr/courses/efarmosmenhs-plhroforikhs/576-grammikos-diktyakos-programmatismos