Siirry suoraan sisältöön

Applied mathematics: Optimization and Network Models (3 cr)

Code: TZLM7030-3008

General information


Enrollment

20.11.2023 - 04.01.2024

Timing

08.01.2024 - 23.02.2024

Number of ECTS credits allocated

3 op

Mode of delivery

Face-to-face

Unit

School of Technology

Campus

Lutakko Campus

Teaching languages

  • English

Degree programmes

  • Bachelor's Degree Programme in Information and Communications Technology

Teachers

  • Harri Varpanen

Groups

  • TTV22S5
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S2
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S3
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S1
    Tieto- ja viestintätekniikka (AMK)
  • TTV22SM2
    Tieto- ja viestintätekniikka (AMK)
  • 09.01.2024 08:15 - 10:30, Applied mathematics: Optimization and Network Models TZLM7030-3008
  • 11.01.2024 12:15 - 14:00, Applied mathematics: Optimization and Network Models TZLM7030-3008
  • 16.01.2024 08:15 - 10:30, Applied mathematics: Optimization and Network Models TZLM7030-3008
  • 18.01.2024 12:15 - 14:00, Applied mathematics: Optimization and Network Models TZLM7030-3008
  • 23.01.2024 08:15 - 10:30, Applied mathematics: Optimization and Network Models TZLM7030-3008
  • 25.01.2024 12:15 - 14:00, Applied mathematics: Optimization and Network Models TZLM7030-3008
  • 30.01.2024 08:15 - 10:30, Applied mathematics: Optimization and Network Models TZLM7030-3008
  • 01.02.2024 12:15 - 14:00, Applied mathematics: Optimization and Network Models TZLM7030-3008
  • 06.02.2024 08:15 - 10:30, Applied mathematics: Optimization and Network Models TZLM7030-3008
  • 08.02.2024 12:15 - 14:00, Applied mathematics: Optimization and Network Models TZLM7030-3008
  • 13.02.2024 08:15 - 10:30, Applied mathematics: Optimization and Network Models TZLM7030-3008
  • 15.02.2024 12:15 - 14:00, Applied mathematics: Optimization and Network Models TZLM7030-3008

Objective

Course objective

Network models and optimization is one of the alternatives for the applied mathematics courses of information and communication technology. In this course, you will focus your knowledge in systems sciences, i.e. operations research. You will learn about network optimization models that are actively used, e.g. in logistics and urban planning. You will also learn how to solve optimization problems programmatically using both network algorithms and more general linear algorithms.

Competences

EUR-ACE Knowledge and Understanding
- knowledge and understanding of natural scientific and mathematical principles in ICT
- knowledge and understanding of the own specialization field in engineering sciences at a level that enables achieving the other program outcomes including an understanding of requirements in your own field.

EUR-ACE Engineering Practice
- knowledge about the linear techniques and their limitations

Learning outcomes

You know the basic concepts related to networks. You know how to process networks programmatically and how to run optimization algorithms for networks. You understand how the elementary network algorithms work. You are able to formulate a linear optimization problem programmatically and find a solution for it. You understand the general principle of optimization and have familiarized yourself with some non-linear optimization problems.

Content

Directed and undirected graph. Graph coloring, scheduling problems. Minimal spanning tree, shortest path. Flow networks with applications. Linear optimization. Examples of non-linear optimization. Selected algorithms.

Location and time

Teaching in Dynamo (with Teams broadcast & recording), Jan-Feb 2023

Oppimateriaali ja suositeltava kirjallisuus

Ahuja, Magnanti, Orlin. Network Flows. Theory, Algorithms, and Applications. Prentice-Hall 1993.

See also:
https://coral.ise.lehigh.edu/~ted/teaching/ie411/
https://towardsdatascience.com/graph-theory-and-deep-learning-know-hows-6556b0e9891b

Teaching methods

Weekly lectures and exercise sessions.

The course is completed by doing the weekly exercises (mostly python) and by peer-reviewing exercises done by the other students. Completing all the exercises is mandatory in order to pass the course.

We use the networkx python library. A working python environment is installed on the student.labranet.jamk.fi server, and one can use just an SSH connection in order to do all the work.

Content scheduling

Six weeks:

1. Basics & course orientation
2. Network traversals, minimal spanning trees
3. Shortest paths
4. Scheduling via graph coloring
5. Min cost flow
6. More min cost flow.

Further information

No previous python experience is required, but the general process of editing and running computer code should be familiar from before.

More specific course conventions will be negotiated during the first week of the course.

Evaluation scale

0-5

Assessment criteria, approved/failed

You know the basic concepts related to networks. You know how to process networks programmatically and how to run optimization algorithms for networks. You understand how the elementary network algorithms work. You are able to formulate a linear optimization problem programmatically and find a solution for it. You understand the general principle of optimization and have familiarized yourself with some non-linear optimization problems.

Qualifications

Ohjelmoinnin perusosaaminen