Computational algorithmsLaajuus (4 cr)
Code: TTC8010
Credits
4 op
Teaching language
- Finnish
Responsible person
- Tuomas Huopana
- Antti Häkkinen
Objective
Purpose:
The operation of society is based on utilization of information technology where various processes of society are regulated at many levels with data. Data always describes some phenomenon or event for the interpretation of which algorithms are needed. In this course, the focus is on planning, implementation and testing of computational algorithms.
EUR-ACE Competences:
Knowledge and understanding
Engineering practice
Learning outcomes:
You have defined a problem that requires computational algorithms. You have processed data that is essential to solving the problem. You know how to design an algorithm to solve a computational problem and you have implemented and tested the algorithm in practice. You know how to optimize an algorithm and you know the limitations related to the use of the algorithm in terms of data and the problem to be solved.
Content
- Algorithms
- NumPy
- Lists and sorting
- Combinations
- Greedy algorithm
- K- means
Qualifications
Basics in data structures and algorithms, data visualization, good command of some programming language. The programming language used in the course is Python.
Assessment criteria, satisfactory (1)
Sufficient 1:
You understand and know how to define a problem that requires computation. The data required for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. You are familiar with optimization as a part of algorithm development. The documentation of the implementation covers the necessary parts.
Satisfactory 2:
You understand and are able to define the problem requiring computation. The essential data for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. The effectiveness of the algorithm has been assessed. Documentation of implementation and optimization covers the necessary parts.
Assessment criteria, good (3)
Good 3: You understand and are able to define the problem that requires computation. The data for solving the computational problem has been processed. You are able to plan and implement an algorithm that produces several solutions to the defined computational problem. You are able to assess the need for optimization based on assessment of effectiveness. The documentation of the implementation is of good quality and gives a clear idea of the implementation.
Very good 4: You understand and are able to comprehensively define the problem that requires computation. The data required to solve the computational problem has been for its essential parts processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if needed implement optimization of the algorithm based on effectiveness assessment. The documentation of the implementation is of high quality and it illustrates the implementation clearly.
Assessment criteria, excellent (5)
Excellent 5: You understand and are able to define a computational problem thoroughly. Data for solving the computational data is widely processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if necessary implement the algorithm optimization based on assessment of effectiveness. In optimization the suitability of the programming language has been considered for the computational problem to be solved. The implementation has been documented thoroughly and it illustrates the implementation clearly.
Enrollment
18.11.2024 - 09.01.2025
Timing
07.03.2025 - 30.04.2025
Number of ECTS credits allocated
4 op
Virtual portion
4 op
Mode of delivery
Online learning
Unit
School of Technology
Teaching languages
- English
Seats
0 - 35
Degree programmes
- Bachelor's Degree Programme in Information and Communications Technology
- Bachelor's Degree Programme in Information and Communications Technology
Teachers
- Tuomas Huopana
Groups
-
TTV22S5Tieto- ja viestintätekniikka (AMK)
-
TTV22S2Tieto- ja viestintätekniikka (AMK)
-
TTV22S3Tieto- ja viestintätekniikka (AMK)
-
TIC22S1Bachelor's Degree Programme in Information and Communications Technology
-
TTV22S1Tieto- ja viestintätekniikka (AMK)
-
TTV22SMTieto- ja viestintätekniikka (AMK)
-
TTV22S4Tieto- ja viestintätekniikka (AMK)
-
TTV22SM2Tieto- ja viestintätekniikka (AMK)
-
ZJA25KSTIDA2Avoin amk, Data-analytiikka 2, Verkko
Objectives
Purpose:
The operation of society is based on utilization of information technology where various processes of society are regulated at many levels with data. Data always describes some phenomenon or event for the interpretation of which algorithms are needed. In this course, the focus is on planning, implementation and testing of computational algorithms.
EUR-ACE Competences:
Knowledge and understanding
Engineering practice
Learning outcomes:
You have defined a problem that requires computational algorithms. You have processed data that is essential to solving the problem. You know how to design an algorithm to solve a computational problem and you have implemented and tested the algorithm in practice. You know how to optimize an algorithm and you know the limitations related to the use of the algorithm in terms of data and the problem to be solved.
Content
- Algorithms
- NumPy
- Lists and sorting
- Combinations
- Greedy algorithm
- K- means
Time and location
The course is implemented on 10th March 2025 - 30th April 2025.
Learning materials and recommended literature
Anaconda software (Python version 3.7 or later) is used for the exercises: https://www.anaconda.com/download/
Teaching methods
The course introduces the theory related to the application of computational algorithms, based on which the exercises are done. Exercises are done individually, but peer support is available from the course's Teams group. The course can be completed completely virtually.
Practical training and working life connections
The content of the course aims to be working life connected.
Alternative completion methods
The approval procedures are described in the degree regulations and the study guide. The teacher of the course provides additional information about possible alternative course completion procedures.
Student workload
One credit corresponds to a workload of 27 hours. In total, the course requires 108 hours of work.
Further information for students
The course assessment is based on the submitted exercises. To confirm participation in the course, the exercises specified at the start must be submitted within the first three weeks. Completing the course requires completing exercises right from the beginning of the course. Exercises can only be submitted during course implementation.
Evaluation scale
0-5
Evaluation criteria, satisfactory (1-2)
Sufficient 1:
You understand and know how to define a problem that requires computation. The data required for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. You are familiar with optimization as a part of algorithm development. The documentation of the implementation covers the necessary parts.
Satisfactory 2:
You understand and are able to define the problem requiring computation. The essential data for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. The effectiveness of the algorithm has been assessed. Documentation of implementation and optimization covers the necessary parts.
Evaluation criteria, good (3-4)
Good 3: You understand and are able to define the problem that requires computation. The data for solving the computational problem has been processed. You are able to plan and implement an algorithm that produces several solutions to the defined computational problem. You are able to assess the need for optimization based on assessment of effectiveness. The documentation of the implementation is of good quality and gives a clear idea of the implementation.
Very good 4: You understand and are able to comprehensively define the problem that requires computation. The data required to solve the computational problem has been for its essential parts processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if needed implement optimization of the algorithm based on effectiveness assessment. The documentation of the implementation is of high quality and it illustrates the implementation clearly.
Evaluation criteria, excellent (5)
Excellent 5: You understand and are able to define a computational problem thoroughly. Data for solving the computational data is widely processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if necessary implement the algorithm optimization based on assessment of effectiveness. In optimization the suitability of the programming language has been considered for the computational problem to be solved. The implementation has been documented thoroughly and it illustrates the implementation clearly.
Prerequisites
Basics in data structures and algorithms, data visualization, good command of some programming language. The programming language used in the course is Python.
Enrollment
01.08.2024 - 22.08.2024
Timing
26.08.2024 - 13.10.2024
Number of ECTS credits allocated
4 op
Virtual portion
4 op
Mode of delivery
Online learning
Unit
School of Technology
Teaching languages
- Finnish
Seats
0 - 35
Degree programmes
- Bachelor's Degree Programme in Information and Communications Technology
Teachers
- Tuomas Huopana
Groups
-
TTV22S5Tieto- ja viestintätekniikka (AMK)
-
TTV22S2Tieto- ja viestintätekniikka (AMK)
-
TTV22S3Tieto- ja viestintätekniikka (AMK)
-
TTV22S1Tieto- ja viestintätekniikka (AMK)
-
TTV22SMTieto- ja viestintätekniikka (AMK)
-
TTV22S4Tieto- ja viestintätekniikka (AMK)
-
TTV22SM2Tieto- ja viestintätekniikka (AMK)
-
ZJA24STIDA2Avoin amk, Data-analytiikka 2, Verkko
Objectives
Purpose:
The operation of society is based on utilization of information technology where various processes of society are regulated at many levels with data. Data always describes some phenomenon or event for the interpretation of which algorithms are needed. In this course, the focus is on planning, implementation and testing of computational algorithms.
EUR-ACE Competences:
Knowledge and understanding
Engineering practice
Learning outcomes:
You have defined a problem that requires computational algorithms. You have processed data that is essential to solving the problem. You know how to design an algorithm to solve a computational problem and you have implemented and tested the algorithm in practice. You know how to optimize an algorithm and you know the limitations related to the use of the algorithm in terms of data and the problem to be solved.
Content
- Algorithms
- NumPy
- Lists and sorting
- Combinations
- Greedy algorithm
- K- means
Time and location
The course is implemented on 26th August 2024 - 13th October 2024.
Learning materials and recommended literature
Anaconda software (Python version 3.7 or later) is used for the exercises: https://www.anaconda.com/download/
Teaching methods
The course introduces the theory related to the application of computational algorithms, based on which the exercises are done. Exercises are done individually, but peer support is available from the course's Teams group. The course can be completed completely virtually.
Practical training and working life connections
The content of the course aims to be working life connected.
Alternative completion methods
The approval procedures are described in the degree regulations and the study guide. The teacher of the course provides additional information about possible alternative course completion procedures.
Student workload
One credit corresponds to a workload of 27 hours. In total, the course requires 108 hours of work.
Further information for students
The course assessment is based on the submitted exercises. Completing the course requires completing exercises right from the beginning of the course. Exercises can only be submitted during course implementation.
Evaluation scale
0-5
Evaluation criteria, satisfactory (1-2)
Sufficient 1:
You understand and know how to define a problem that requires computation. The data required for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. You are familiar with optimization as a part of algorithm development. The documentation of the implementation covers the necessary parts.
Satisfactory 2:
You understand and are able to define the problem requiring computation. The essential data for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. The effectiveness of the algorithm has been assessed. Documentation of implementation and optimization covers the necessary parts.
Evaluation criteria, good (3-4)
Good 3: You understand and are able to define the problem that requires computation. The data for solving the computational problem has been processed. You are able to plan and implement an algorithm that produces several solutions to the defined computational problem. You are able to assess the need for optimization based on assessment of effectiveness. The documentation of the implementation is of good quality and gives a clear idea of the implementation.
Very good 4: You understand and are able to comprehensively define the problem that requires computation. The data required to solve the computational problem has been for its essential parts processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if needed implement optimization of the algorithm based on effectiveness assessment. The documentation of the implementation is of high quality and it illustrates the implementation clearly.
Evaluation criteria, excellent (5)
Excellent 5: You understand and are able to define a computational problem thoroughly. Data for solving the computational data is widely processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if necessary implement the algorithm optimization based on assessment of effectiveness. In optimization the suitability of the programming language has been considered for the computational problem to be solved. The implementation has been documented thoroughly and it illustrates the implementation clearly.
Prerequisites
Basics in data structures and algorithms, data visualization, good command of some programming language. The programming language used in the course is Python.
Enrollment
20.11.2023 - 04.01.2024
Timing
04.03.2024 - 28.04.2024
Number of ECTS credits allocated
4 op
Virtual portion
4 op
Mode of delivery
Online learning
Unit
School of Technology
Teaching languages
- English
Seats
0 - 30
Degree programmes
- Bachelor's Degree Programme in Information and Communications Technology
- Bachelor's Degree Programme in Information and Communications Technology
Teachers
- Tuomas Huopana
Groups
-
TTV21S3Tieto- ja viestintätekniikka (AMK)
-
TTV21S5Tieto- ja viestintätekniikka (AMK)
-
TTV21SMTieto- ja viestintätekniikka (AMK)
-
TIC21S1Bachelor's Degree Programme in Information and Communications Technology
-
TTV21S2Tieto- ja viestintätekniikka (AMK)
-
ZJA24KTIDA2Avoin amk, Data-analytiikka 2, Verkko
-
TTV21S1Tieto- ja viestintätekniikka (AMK)
Objectives
Purpose:
The operation of society is based on utilization of information technology where various processes of society are regulated at many levels with data. Data always describes some phenomenon or event for the interpretation of which algorithms are needed. In this course, the focus is on planning, implementation and testing of computational algorithms.
EUR-ACE Competences:
Knowledge and understanding
Engineering practice
Learning outcomes:
You have defined a problem that requires computational algorithms. You have processed data that is essential to solving the problem. You know how to design an algorithm to solve a computational problem and you have implemented and tested the algorithm in practice. You know how to optimize an algorithm and you know the limitations related to the use of the algorithm in terms of data and the problem to be solved.
Content
- Algorithms
- NumPy
- Lists and sorting
- Combinations
- Greedy algorithm
- K- means
Time and location
The course is implemented on 4th March 2024 - 28th April 2024.
Learning materials and recommended literature
Anaconda software (Python version 3.7 or later) is used for the exercises: https://www.anaconda.com/download/
Teaching methods
The course introduces the theory related to the application of computational algorithms, based on which the exercises are done. Exercises are done individually, but peer support is available from the course's Teams group. The course can be completed completely virtually.
Practical training and working life connections
The content of the course aims to be working life connected.
Alternative completion methods
The approval procedures are described in the degree regulations and the study guide. The teacher of the course provides additional information about possible alternative course completion procedures.
Student workload
One credit corresponds to a workload of 27 hours. In total, the course requires 108 hours of work.
Further information for students
The course assessment is based on the submitted exercises. Exercises can only be submitted during course implementation.
Evaluation scale
0-5
Evaluation criteria, satisfactory (1-2)
Sufficient 1:
You understand and know how to define a problem that requires computation. The data required for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. You are familiar with optimization as a part of algorithm development. The documentation of the implementation covers the necessary parts.
Satisfactory 2:
You understand and are able to define the problem requiring computation. The essential data for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. The effectiveness of the algorithm has been assessed. Documentation of implementation and optimization covers the necessary parts.
Evaluation criteria, good (3-4)
Good 3: You understand and are able to define the problem that requires computation. The data for solving the computational problem has been processed. You are able to plan and implement an algorithm that produces several solutions to the defined computational problem. You are able to assess the need for optimization based on assessment of effectiveness. The documentation of the implementation is of good quality and gives a clear idea of the implementation.
Very good 4: You understand and are able to comprehensively define the problem that requires computation. The data required to solve the computational problem has been for its essential parts processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if needed implement optimization of the algorithm based on effectiveness assessment. The documentation of the implementation is of high quality and it illustrates the implementation clearly.
Evaluation criteria, excellent (5)
Excellent 5: You understand and are able to define a computational problem thoroughly. Data for solving the computational data is widely processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if necessary implement the algorithm optimization based on assessment of effectiveness. In optimization the suitability of the programming language has been considered for the computational problem to be solved. The implementation has been documented thoroughly and it illustrates the implementation clearly.
Prerequisites
Basics in data structures and algorithms, data visualization, good command of some programming language. The programming language used in the course is Python.
Enrollment
01.08.2023 - 24.08.2023
Timing
28.08.2023 - 13.10.2023
Number of ECTS credits allocated
4 op
Virtual portion
4 op
Mode of delivery
Online learning
Unit
School of Technology
Teaching languages
- Finnish
Seats
0 - 30
Degree programmes
- Bachelor's Degree Programme in Information and Communications Technology
Teachers
- Harri Varpanen
Groups
-
TTV21S3Tieto- ja viestintätekniikka (AMK)
-
TTV21S5Tieto- ja viestintätekniikka (AMK)
-
TTV21SMTieto- ja viestintätekniikka (AMK)
-
TTV21S2Tieto- ja viestintätekniikka (AMK)
-
TTV21S1Tieto- ja viestintätekniikka (AMK)
-
ZJA23STIDA2Avoin amk, Data-analytiikka 2, Verkko
Objectives
Purpose:
The operation of society is based on utilization of information technology where various processes of society are regulated at many levels with data. Data always describes some phenomenon or event for the interpretation of which algorithms are needed. In this course, the focus is on planning, implementation and testing of computational algorithms.
EUR-ACE Competences:
Knowledge and understanding
Engineering practice
Learning outcomes:
You have defined a problem that requires computational algorithms. You have processed data that is essential to solving the problem. You know how to design an algorithm to solve a computational problem and you have implemented and tested the algorithm in practice. You know how to optimize an algorithm and you know the limitations related to the use of the algorithm in terms of data and the problem to be solved.
Content
- Algorithms
- NumPy
- Lists and sorting
- Combinations
- Greedy algorithm
- K- means
Time and location
Opintojakso toteutetaan 28.8.2023-13.10.2023.
Learning materials and recommended literature
Harjoitustöiden tekemisessä hyödynnetään Anaconda ohjelmistoa (Python 3.7-versio tai uudempi): https://www.anaconda.com/download/
Teaching methods
Kurssilla tutustutaan laskennallisten algoritmien soveltamiseen liittyvään teoriaan, minkä pohjalta tehdään arvioitavat harjoitustyöt. Harjoitustyöt tehdään yksilötöinä, mutta vertaistukea on tarjolla kurssin Teams – ryhmästä. Kurssin voi suorittaa täysin virtuaalisesti.
Practical training and working life connections
Kurssin sisältö pyritään kytkemään työelämässä esiintyviin ongelmiin.
Alternative completion methods
Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.
Student workload
Yhden opintopisteen työmäärä vastaa 27 tunnin opiskelutyötä. Yhteensä opiskelutyömäärä (4 op.) kurssilla on 108 tuntia.
Further information for students
Kurssi arvioidaan palautettujen harjoitustöiden perusteella. Harjoitustöitä voi palauttaa vain kurssitoteutuksen aikana.
Evaluation scale
0-5
Evaluation criteria, satisfactory (1-2)
Sufficient 1:
You understand and know how to define a problem that requires computation. The data required for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. You are familiar with optimization as a part of algorithm development. The documentation of the implementation covers the necessary parts.
Satisfactory 2:
You understand and are able to define the problem requiring computation. The essential data for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. The effectiveness of the algorithm has been assessed. Documentation of implementation and optimization covers the necessary parts.
Evaluation criteria, good (3-4)
Good 3: You understand and are able to define the problem that requires computation. The data for solving the computational problem has been processed. You are able to plan and implement an algorithm that produces several solutions to the defined computational problem. You are able to assess the need for optimization based on assessment of effectiveness. The documentation of the implementation is of good quality and gives a clear idea of the implementation.
Very good 4: You understand and are able to comprehensively define the problem that requires computation. The data required to solve the computational problem has been for its essential parts processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if needed implement optimization of the algorithm based on effectiveness assessment. The documentation of the implementation is of high quality and it illustrates the implementation clearly.
Evaluation criteria, excellent (5)
Excellent 5: You understand and are able to define a computational problem thoroughly. Data for solving the computational data is widely processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if necessary implement the algorithm optimization based on assessment of effectiveness. In optimization the suitability of the programming language has been considered for the computational problem to be solved. The implementation has been documented thoroughly and it illustrates the implementation clearly.
Prerequisites
Basics in data structures and algorithms, data visualization, good command of some programming language. The programming language used in the course is Python.
Timing
06.03.2023 - 30.04.2023
Number of ECTS credits allocated
4 op
Virtual portion
4 op
Mode of delivery
Online learning
Unit
School of Technology
Teaching languages
- Finnish
Degree programmes
- Bachelor's Degree Programme in Information and Communications Technology
Teachers
- Tuomas Huopana
Groups
-
ZJA23KTIDA2Avoin amk, Data-analytiikka 2, Verkko
Objectives
Purpose:
The operation of society is based on utilization of information technology where various processes of society are regulated at many levels with data. Data always describes some phenomenon or event for the interpretation of which algorithms are needed. In this course, the focus is on planning, implementation and testing of computational algorithms.
EUR-ACE Competences:
Knowledge and understanding
Engineering practice
Learning outcomes:
You have defined a problem that requires computational algorithms. You have processed data that is essential to solving the problem. You know how to design an algorithm to solve a computational problem and you have implemented and tested the algorithm in practice. You know how to optimize an algorithm and you know the limitations related to the use of the algorithm in terms of data and the problem to be solved.
Content
- Algorithms
- NumPy
- Lists and sorting
- Combinations
- Greedy algorithm
- K- means
Time and location
Opintojakso toteutetaan 6.3.2023-30.4.2023.
Learning materials and recommended literature
Harjoitustöiden tekemisessä hyödynnetään Anaconda ohjelmistoa (Python 3.7-versio tai uudempi): https://www.anaconda.com/download/
Teaching methods
Kurssilla tutustutaan laskennallisten algoritmien soveltamiseen liittyvään teoriaan, minkä pohjalta tehdään arvioitavat harjoitustyöt. Harjoitustyöt tehdään yksilötöinä, mutta vertaistukea on tarjolla kurssin Teams – ryhmästä. Kurssin voi suorittaa täysin virtuaalisesti.
Practical training and working life connections
Kurssin sisältö pyritään kytkemään työelämässä esiintyviin ongelmiin.
Alternative completion methods
Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.
Student workload
Yhden opintopisteen työmäärä vastaa 27 tunnin opiskelutyötä. Yhteensä opiskelutyömäärä (4 op.) kurssilla on 108 tuntia.
Further information for students
Kurssi arvioidaan palautettujen harjoitustöiden perusteella. Harjoitustöitä voi palauttaa vain kurssitoteutuksen aikana.
Evaluation scale
0-5
Evaluation criteria, satisfactory (1-2)
Sufficient 1:
You understand and know how to define a problem that requires computation. The data required for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. You are familiar with optimization as a part of algorithm development. The documentation of the implementation covers the necessary parts.
Satisfactory 2:
You understand and are able to define the problem requiring computation. The essential data for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. The effectiveness of the algorithm has been assessed. Documentation of implementation and optimization covers the necessary parts.
Evaluation criteria, good (3-4)
Good 3: You understand and are able to define the problem that requires computation. The data for solving the computational problem has been processed. You are able to plan and implement an algorithm that produces several solutions to the defined computational problem. You are able to assess the need for optimization based on assessment of effectiveness. The documentation of the implementation is of good quality and gives a clear idea of the implementation.
Very good 4: You understand and are able to comprehensively define the problem that requires computation. The data required to solve the computational problem has been for its essential parts processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if needed implement optimization of the algorithm based on effectiveness assessment. The documentation of the implementation is of high quality and it illustrates the implementation clearly.
Evaluation criteria, excellent (5)
Excellent 5: You understand and are able to define a computational problem thoroughly. Data for solving the computational data is widely processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if necessary implement the algorithm optimization based on assessment of effectiveness. In optimization the suitability of the programming language has been considered for the computational problem to be solved. The implementation has been documented thoroughly and it illustrates the implementation clearly.
Prerequisites
Basics in data structures and algorithms, data visualization, good command of some programming language. The programming language used in the course is Python.
Enrollment
01.11.2022 - 05.01.2023
Timing
06.03.2023 - 30.04.2023
Number of ECTS credits allocated
4 op
Virtual portion
4 op
Mode of delivery
Online learning
Unit
School of Technology
Campus
Lutakko Campus
Teaching languages
- Finnish
Seats
0 - 30
Degree programmes
- Bachelor's Degree Programme in Information and Communications Technology
Teachers
- Tuomas Huopana
Objectives
Purpose:
The operation of society is based on utilization of information technology where various processes of society are regulated at many levels with data. Data always describes some phenomenon or event for the interpretation of which algorithms are needed. In this course, the focus is on planning, implementation and testing of computational algorithms.
EUR-ACE Competences:
Knowledge and understanding
Engineering practice
Learning outcomes:
You have defined a problem that requires computational algorithms. You have processed data that is essential to solving the problem. You know how to design an algorithm to solve a computational problem and you have implemented and tested the algorithm in practice. You know how to optimize an algorithm and you know the limitations related to the use of the algorithm in terms of data and the problem to be solved.
Content
- Algorithms
- NumPy
- Lists and sorting
- Combinations
- Greedy algorithm
- K- means
Time and location
Opintojakso toteutetaan 6.3.2023-30.4.2023.
Learning materials and recommended literature
Harjoitustöiden tekemisessä hyödynnetään Anaconda ohjelmistoa (Python 3.7-versio tai uudempi): https://www.anaconda.com/download/
Teaching methods
Kurssilla tutustutaan laskennallisten algoritmien soveltamiseen liittyvään teoriaan, minkä pohjalta tehdään arvioitavat harjoitustyöt. Harjoitustyöt tehdään yksilötöinä, mutta vertaistukea on tarjolla kurssin Teams – ryhmästä. Kurssin voi suorittaa täysin virtuaalisesti.
Practical training and working life connections
Kurssin sisältö pyritään kytkemään työelämässä esiintyviin ongelmiin.
Alternative completion methods
Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.
Student workload
Yhden opintopisteen työmäärä vastaa 27 tunnin opiskelutyötä. Yhteensä opiskelutyömäärä (4 op.) kurssilla on 108 tuntia.
Further information for students
Kurssi arvioidaan palautettujen harjoitustöiden perusteella. Harjoitustöitä voi palauttaa vain kurssitoteutuksen aikana.
Evaluation scale
0-5
Evaluation criteria, satisfactory (1-2)
Sufficient 1:
You understand and know how to define a problem that requires computation. The data required for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. You are familiar with optimization as a part of algorithm development. The documentation of the implementation covers the necessary parts.
Satisfactory 2:
You understand and are able to define the problem requiring computation. The essential data for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. The effectiveness of the algorithm has been assessed. Documentation of implementation and optimization covers the necessary parts.
Evaluation criteria, good (3-4)
Good 3: You understand and are able to define the problem that requires computation. The data for solving the computational problem has been processed. You are able to plan and implement an algorithm that produces several solutions to the defined computational problem. You are able to assess the need for optimization based on assessment of effectiveness. The documentation of the implementation is of good quality and gives a clear idea of the implementation.
Very good 4: You understand and are able to comprehensively define the problem that requires computation. The data required to solve the computational problem has been for its essential parts processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if needed implement optimization of the algorithm based on effectiveness assessment. The documentation of the implementation is of high quality and it illustrates the implementation clearly.
Evaluation criteria, excellent (5)
Excellent 5: You understand and are able to define a computational problem thoroughly. Data for solving the computational data is widely processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if necessary implement the algorithm optimization based on assessment of effectiveness. In optimization the suitability of the programming language has been considered for the computational problem to be solved. The implementation has been documented thoroughly and it illustrates the implementation clearly.
Prerequisites
Basics in data structures and algorithms, data visualization, good command of some programming language. The programming language used in the course is Python.
Enrollment
01.08.2022 - 25.08.2022
Timing
03.10.2022 - 04.12.2022
Number of ECTS credits allocated
4 op
Virtual portion
4 op
Mode of delivery
Online learning
Unit
School of Technology
Teaching languages
- Finnish
Degree programmes
- Bachelor's Degree Programme in Information and Communications Technology
Teachers
- Tuomas Huopana
Groups
-
ZJA22STIDA2Avoin amk, Data-analytiikka 2, Verkko
Objectives
Purpose:
The operation of society is based on utilization of information technology where various processes of society are regulated at many levels with data. Data always describes some phenomenon or event for the interpretation of which algorithms are needed. In this course, the focus is on planning, implementation and testing of computational algorithms.
EUR-ACE Competences:
Knowledge and understanding
Engineering practice
Learning outcomes:
You have defined a problem that requires computational algorithms. You have processed data that is essential to solving the problem. You know how to design an algorithm to solve a computational problem and you have implemented and tested the algorithm in practice. You know how to optimize an algorithm and you know the limitations related to the use of the algorithm in terms of data and the problem to be solved.
Content
- Algorithms
- NumPy
- Lists and sorting
- Combinations
- Greedy algorithm
- K- means
Time and location
Opintojakso toteutetaan 3.10.2022-4.12.2022.
Learning materials and recommended literature
Harjoitustöiden tekemisessä hyödynnetään Anaconda ohjelmistoa (Python 3.7-versio tai uudempi): https://www.anaconda.com/download/
Teaching methods
Kurssilla tutustutaan laskennallisten algoritmien soveltamiseen liittyvään teoriaan, minkä pohjalta tehdään arvioitavat harjoitustyöt. Harjoitustyöt tehdään yksilötöinä, mutta vertaistukea on tarjolla kurssin Teams – ryhmästä. Kurssin voi suorittaa täysin virtuaalisesti.
Practical training and working life connections
Kurssin sisältö pyritään kytkemään työelämässä esiintyviin ongelmiin.
Alternative completion methods
Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.
Student workload
Yhden opintopisteen työmäärä vastaa 27 tunnin opiskelutyötä. Yhteensä opiskelutyömäärä (4 op.) kurssilla on 108 tuntia.
Further information for students
Kurssi arvioidaan palautettujen harjoitustöiden perusteella. Harjoitustöitä voi palauttaa vain kurssitoteutuksen aikana.
Evaluation scale
0-5
Evaluation criteria, satisfactory (1-2)
Sufficient 1:
You understand and know how to define a problem that requires computation. The data required for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. You are familiar with optimization as a part of algorithm development. The documentation of the implementation covers the necessary parts.
Satisfactory 2:
You understand and are able to define the problem requiring computation. The essential data for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. The effectiveness of the algorithm has been assessed. Documentation of implementation and optimization covers the necessary parts.
Evaluation criteria, good (3-4)
Good 3: You understand and are able to define the problem that requires computation. The data for solving the computational problem has been processed. You are able to plan and implement an algorithm that produces several solutions to the defined computational problem. You are able to assess the need for optimization based on assessment of effectiveness. The documentation of the implementation is of good quality and gives a clear idea of the implementation.
Very good 4: You understand and are able to comprehensively define the problem that requires computation. The data required to solve the computational problem has been for its essential parts processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if needed implement optimization of the algorithm based on effectiveness assessment. The documentation of the implementation is of high quality and it illustrates the implementation clearly.
Evaluation criteria, excellent (5)
Excellent 5: You understand and are able to define a computational problem thoroughly. Data for solving the computational data is widely processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if necessary implement the algorithm optimization based on assessment of effectiveness. In optimization the suitability of the programming language has been considered for the computational problem to be solved. The implementation has been documented thoroughly and it illustrates the implementation clearly.
Prerequisites
Basics in data structures and algorithms, data visualization, good command of some programming language. The programming language used in the course is Python.
Enrollment
01.08.2022 - 25.08.2022
Timing
29.08.2022 - 16.12.2022
Number of ECTS credits allocated
4 op
Virtual portion
4 op
Mode of delivery
Online learning
Unit
School of Technology
Campus
Lutakko Campus
Teaching languages
- Finnish
Seats
0 - 30
Degree programmes
- Bachelor's Degree Programme in Information and Communications Technology
Teachers
- Tuomas Huopana
Objectives
Purpose:
The operation of society is based on utilization of information technology where various processes of society are regulated at many levels with data. Data always describes some phenomenon or event for the interpretation of which algorithms are needed. In this course, the focus is on planning, implementation and testing of computational algorithms.
EUR-ACE Competences:
Knowledge and understanding
Engineering practice
Learning outcomes:
You have defined a problem that requires computational algorithms. You have processed data that is essential to solving the problem. You know how to design an algorithm to solve a computational problem and you have implemented and tested the algorithm in practice. You know how to optimize an algorithm and you know the limitations related to the use of the algorithm in terms of data and the problem to be solved.
Content
- Algorithms
- NumPy
- Lists and sorting
- Combinations
- Greedy algorithm
- K- means
Time and location
Opintojakso toteutetaan 3.10.2022-4.12.2022.
Learning materials and recommended literature
Harjoitustöiden tekemisessä hyödynnetään Anaconda ohjelmistoa (Python 3.7-versio tai uudempi): https://www.anaconda.com/download/
Teaching methods
Kurssilla tutustutaan laskennallisten algoritmien soveltamiseen liittyvään teoriaan, minkä pohjalta tehdään arvioitavat harjoitustyöt. Harjoitustyöt tehdään yksilötöinä, mutta vertaistukea on tarjolla kurssin Teams – ryhmästä. Kurssin voi suorittaa täysin virtuaalisesti.
Practical training and working life connections
Kurssin sisältö pyritään kytkemään työelämässä esiintyviin ongelmiin.
Alternative completion methods
Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.
Student workload
Yhden opintopisteen työmäärä vastaa 27 tunnin opiskelutyötä. Yhteensä opiskelutyömäärä (4 op.) kurssilla on 108 tuntia.
Further information for students
Kurssi arvioidaan palautettujen harjoitustöiden perusteella. Harjoitustöitä voi palauttaa vain kurssitoteutuksen aikana.
Evaluation scale
0-5
Evaluation criteria, satisfactory (1-2)
Sufficient 1:
You understand and know how to define a problem that requires computation. The data required for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. You are familiar with optimization as a part of algorithm development. The documentation of the implementation covers the necessary parts.
Satisfactory 2:
You understand and are able to define the problem requiring computation. The essential data for solving the computational problem has been taken into use. You are able to plan and implement a simple algorithm that produces the solution to the defined computational problem. The effectiveness of the algorithm has been assessed. Documentation of implementation and optimization covers the necessary parts.
Evaluation criteria, good (3-4)
Good 3: You understand and are able to define the problem that requires computation. The data for solving the computational problem has been processed. You are able to plan and implement an algorithm that produces several solutions to the defined computational problem. You are able to assess the need for optimization based on assessment of effectiveness. The documentation of the implementation is of good quality and gives a clear idea of the implementation.
Very good 4: You understand and are able to comprehensively define the problem that requires computation. The data required to solve the computational problem has been for its essential parts processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if needed implement optimization of the algorithm based on effectiveness assessment. The documentation of the implementation is of high quality and it illustrates the implementation clearly.
Evaluation criteria, excellent (5)
Excellent 5: You understand and are able to define a computational problem thoroughly. Data for solving the computational data is widely processed. You are able to plan and implement alternative algorithms that produce several solutions to the defined computational problem. You are able to assess and if necessary implement the algorithm optimization based on assessment of effectiveness. In optimization the suitability of the programming language has been considered for the computational problem to be solved. The implementation has been documented thoroughly and it illustrates the implementation clearly.
Prerequisites
Basics in data structures and algorithms, data visualization, good command of some programming language. The programming language used in the course is Python.