Siirry suoraan sisältöön

Laskennalliset algoritmitLaajuus (4 op)

Tunnus: TTC8010

Laajuus

4 op

Opetuskieli

  • suomi

Vastuuhenkilö

  • Tuomas Huopana,
  • Antti Häkkinen,

Osaamistavoitteet

Tarkoitus:
Yhteiskunnan toiminta perustuu informaatioteknologian hyödyntämiseen, missä datan avulla säädellään eri yhteiskunnan prosesseja monilla eri tasoilla. Data kertoo aina jostain ilmiöstä tai tapahtumasta, jonka tulkitsemiseksi tarvitaan algoritmeja. Laskennallisten algoritmien osalta keskitytään algoritmien suunnitteluun, toteutukseen ja testaukseen.

EUR-ACE-osaamiset:
Tieto ja ymmärrys
Tekniikan soveltaminen käytäntöön

Osaamistavoitteet:
Olet määritellyt laskentaa vaativan ongelman. Olet prosessoinut ongelman ratkaisemiseksi olennaisen datan. Osaat suunnitella algoritmin laskennallisen ongelman ratkaisemiseksi sekä olet toteuttanut ja testannut algoritmin käytännössä. Osaat optimoida algoritmia ja tunnet algoritmin käyttöön liittyviä rajoitteita datan ja ratkaistavan ongelman suhteen.

Sisältö

• Algoritmit
• NumPy
• Listat ja lajittelu
• Kombinaatiot
• Ahne menetelmä
• K-means

Esitietovaatimukset

Perusteet tietorakenteista ja algoritmeista, datan visualisointi, jonkin ohjelmointi kielen hyvä hallinta. Kurssilla suositeltava ohjelmointikieli on Python.

Arviointikriteerit, tyydyttävä (1)

Välttävä 1:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu data on otettu käyttöön. Osaat suunnitella ja toteuttaa yksinkertaisen algoritmin, joka tuottaa ratkaisun määritettyyn laskennalliseen ongelmaan. Tunnet optimoinnin osana algoritmin kehitystä. Toteutuksen dokumentaatio kattaa välttämättömät osat.

Tyydyttävä 2:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu olennainen data on otettu käyttöön. Osaat suunnitella ja toteuttaa yksinkertaisen algoritmin, joka tuottaa ratkaisun määritettyyn laskennalliseen ongelmaan. Algoritmin tehokkuuden arviointia on tehty. Toteutuksen ja optimoinnin osalta dokumentaatio kattaa välttämättömät osat.

Arviointikriteerit, hyvä (3)

Hyvä 3:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu data on prosessoitu. Osaat suunnitella ja toteuttaa algoritmin, joka tuottaa useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida algoritmin optimoinnin tarpeen pohjautuen tehokkuuden arviointiin. Toteutuksen dokumentaatio on hyvätasoinen ja antaa selkeän kuvan toteutuksesta.

Kiitettävä 4:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman kattavasti. Laskennallisen ongelman ratkaisuun vaadittu data on olennaisilta osin prosessoitu. Osaat suunnitella ja toteuttaa vaihtoehtoisia algoritmeja, jotka tuotavat useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida ja tarvittaessa toteuttaa algoritmin optimoinnin pohjautuen tehokkuuden arviointiin. Toteutuksen dokumentaatio on hyvätasoinen ja antaa selkeän kuvan toteutuksesta.

Arviointikriteerit, kiitettävä (5)

Ymmärrät ja osaat määritellä laskentaa vaativan ongelman kattavasti. Laskennallisen ongelman ratkaisemisen kannalta data on kattavasti prosessoitu. Osaat suunnitella ja toteuttaa vaihtoehtoisia algoritmeja, jotka tuotavat useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida ja tarvittaessa toteuttaa algoritmin optimoinnin pohjautuen tehokkuuden arviointiin. Optimoinnissa on pohdittu ohjelmointikielen soveltuvuutta ratkaistavaan laskennalliseen ongelmaan. Toteutus on dokumentoitu kattavasti ja antaa selkeän kuvan toteutuksesta.

Enrollment

18.11.2024 - 09.01.2025

Timing

10.03.2025 - 30.04.2025

Number of ECTS credits allocated

4 op

Virtual portion

4 op

Mode of delivery

Online learning

Unit

Teknologiayksikkö

Teaching languages
  • English
Seats

0 - 35

Degree programmes
  • Bachelor's Degree Programme in Information and Communications Technology
  • Tieto- ja viestintätekniikka (AMK)
Teachers
  • Tuomas Huopana
Groups
  • TTV22S5
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S2
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S3
    Tieto- ja viestintätekniikka (AMK)
  • TIC22S1
    Bachelor's Degree Programme in Information and Communications Technology
  • TTV22S1
    Tieto- ja viestintätekniikka (AMK)
  • TTV22SM
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S4
    Tieto- ja viestintätekniikka (AMK)
  • TTV22SM2
    Tieto- ja viestintätekniikka (AMK)
  • ZJA25KSTIDA2
    Avoin amk, Data-analytiikka 2, Verkko

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

Location and time

The course is implemented on 10th March 2025 - 30th April 2025.

Oppimateriaali ja suositeltava kirjallisuus

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.

Employer connections

The content of the course aims to be working life connected.

Vaihtoehtoiset suoritustavat

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

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

Arviointikriteerit, tyydyttävä (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.

Arviointikriteerit, hyvä (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.

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.

Qualifications

Basics in data structures and algorithms, data visualization, good command of some programming language. The programming language used in the course is Python.

Ilmoittautumisaika

01.08.2024 - 22.08.2024

Ajoitus

26.08.2024 - 13.10.2024

Opintopistemäärä

4 op

Virtuaaliosuus

4 op

Toteutustapa

Verkko-opetus

Yksikkö

Teknologiayksikkö

Opetuskielet
  • Suomi
Paikat

0 - 35

Koulutus
  • Tieto- ja viestintätekniikka (AMK)
Opettaja
  • Tuomas Huopana
Ryhmät
  • TTV22S5
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S2
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S3
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S1
    Tieto- ja viestintätekniikka (AMK)
  • TTV22SM
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S4
    Tieto- ja viestintätekniikka (AMK)
  • TTV22SM2
    Tieto- ja viestintätekniikka (AMK)
  • ZJA24STIDA2
    Avoin amk, Data-analytiikka 2, Verkko

Tavoitteet

Tarkoitus:
Yhteiskunnan toiminta perustuu informaatioteknologian hyödyntämiseen, missä datan avulla säädellään eri yhteiskunnan prosesseja monilla eri tasoilla. Data kertoo aina jostain ilmiöstä tai tapahtumasta, jonka tulkitsemiseksi tarvitaan algoritmeja. Laskennallisten algoritmien osalta keskitytään algoritmien suunnitteluun, toteutukseen ja testaukseen.

EUR-ACE-osaamiset:
Tieto ja ymmärrys
Tekniikan soveltaminen käytäntöön

Osaamistavoitteet:
Olet määritellyt laskentaa vaativan ongelman. Olet prosessoinut ongelman ratkaisemiseksi olennaisen datan. Osaat suunnitella algoritmin laskennallisen ongelman ratkaisemiseksi sekä olet toteuttanut ja testannut algoritmin käytännössä. Osaat optimoida algoritmia ja tunnet algoritmin käyttöön liittyviä rajoitteita datan ja ratkaistavan ongelman suhteen.

Sisältö

• Algoritmit
• NumPy
• Listat ja lajittelu
• Kombinaatiot
• Ahne menetelmä
• K-means

Aika ja paikka

Opintojakso toteutetaan 26.8.2024-13.10.2024.

Oppimateriaali ja suositeltava kirjallisuus

Harjoitustöiden tekemisessä hyödynnetään Anaconda ohjelmistoa (Python 3.7-versio tai uudempi): https://www.anaconda.com/download/

Opetusmenetelmät

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.

Harjoittelu- ja työelämäyhteistyö

Kurssin sisältö pyritään kytkemään työelämässä esiintyviin ongelmiin.

Vaihtoehtoiset suoritustavat

Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.

Opiskelijan ajankäyttö ja kuormitus

Yhden opintopisteen työmäärä vastaa 27 tunnin opiskelutyötä. Yhteensä opiskelutyömäärä (4 op.) kurssilla on 108 tuntia.

Lisätietoja opiskelijoille

Kurssi arvioidaan palautettujen harjoitustöiden perusteella. Kurssin suorittaminen edellyttää harjoitustehtävin suorittamista heti kurssin alusta alkaen. Harjoitustöitä voi palauttaa vain kurssitoteutuksen aikana.

Arviointiasteikko

0-5

Arviointikriteerit, tyydyttävä (1-2)

Välttävä 1:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu data on otettu käyttöön. Osaat suunnitella ja toteuttaa yksinkertaisen algoritmin, joka tuottaa ratkaisun määritettyyn laskennalliseen ongelmaan. Tunnet optimoinnin osana algoritmin kehitystä. Toteutuksen dokumentaatio kattaa välttämättömät osat.

Tyydyttävä 2:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu olennainen data on otettu käyttöön. Osaat suunnitella ja toteuttaa yksinkertaisen algoritmin, joka tuottaa ratkaisun määritettyyn laskennalliseen ongelmaan. Algoritmin tehokkuuden arviointia on tehty. Toteutuksen ja optimoinnin osalta dokumentaatio kattaa välttämättömät osat.

Arviointikriteerit, hyvä (3-4)

Hyvä 3:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu data on prosessoitu. Osaat suunnitella ja toteuttaa algoritmin, joka tuottaa useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida algoritmin optimoinnin tarpeen pohjautuen tehokkuuden arviointiin. Toteutuksen dokumentaatio on hyvätasoinen ja antaa selkeän kuvan toteutuksesta.

Kiitettävä 4:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman kattavasti. Laskennallisen ongelman ratkaisuun vaadittu data on olennaisilta osin prosessoitu. Osaat suunnitella ja toteuttaa vaihtoehtoisia algoritmeja, jotka tuotavat useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida ja tarvittaessa toteuttaa algoritmin optimoinnin pohjautuen tehokkuuden arviointiin. Toteutuksen dokumentaatio on hyvätasoinen ja antaa selkeän kuvan toteutuksesta.

Arviointikriteerit, kiitettävä (5)

Ymmärrät ja osaat määritellä laskentaa vaativan ongelman kattavasti. Laskennallisen ongelman ratkaisemisen kannalta data on kattavasti prosessoitu. Osaat suunnitella ja toteuttaa vaihtoehtoisia algoritmeja, jotka tuotavat useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida ja tarvittaessa toteuttaa algoritmin optimoinnin pohjautuen tehokkuuden arviointiin. Optimoinnissa on pohdittu ohjelmointikielen soveltuvuutta ratkaistavaan laskennalliseen ongelmaan. Toteutus on dokumentoitu kattavasti ja antaa selkeän kuvan toteutuksesta.

Esitietovaatimukset

Perusteet tietorakenteista ja algoritmeista, datan visualisointi, jonkin ohjelmointi kielen hyvä hallinta. Kurssilla suositeltava ohjelmointikieli on 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

Teknologiayksikkö

Teaching languages
  • English
Seats

0 - 30

Degree programmes
  • Bachelor's Degree Programme in Information and Communications Technology
  • Tieto- ja viestintätekniikka (AMK)
Teachers
  • Tuomas Huopana
Groups
  • TTV21S3
    Tieto- ja viestintätekniikka (AMK)
  • TTV21S5
    Tieto- ja viestintätekniikka (AMK)
  • TTV21SM
    Tieto- ja viestintätekniikka (AMK)
  • TIC21S1
    Bachelor's Degree Programme in Information and Communications Technology
  • TTV21S2
    Tieto- ja viestintätekniikka (AMK)
  • ZJA24KTIDA2
    Avoin amk, Data-analytiikka 2, Verkko
  • TTV21S1
    Tieto- ja viestintätekniikka (AMK)

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

Location and time

The course is implemented on 4th March 2024 - 28th April 2024.

Oppimateriaali ja suositeltava kirjallisuus

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.

Employer connections

The content of the course aims to be working life connected.

Vaihtoehtoiset suoritustavat

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

The course assessment is based on the submitted exercises. Exercises can only be submitted during course implementation.

Evaluation scale

0-5

Arviointikriteerit, tyydyttävä (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.

Arviointikriteerit, hyvä (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.

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.

Qualifications

Basics in data structures and algorithms, data visualization, good command of some programming language. The programming language used in the course is Python.

Ilmoittautumisaika

01.08.2023 - 24.08.2023

Ajoitus

28.08.2023 - 13.10.2023

Opintopistemäärä

4 op

Virtuaaliosuus

4 op

Toteutustapa

Verkko-opetus

Yksikkö

Teknologiayksikkö

Opetuskielet
  • Suomi
Paikat

0 - 30

Koulutus
  • Tieto- ja viestintätekniikka (AMK)
Opettaja
  • Harri Varpanen
Ryhmät
  • TTV21S3
    Tieto- ja viestintätekniikka (AMK)
  • TTV21S5
    Tieto- ja viestintätekniikka (AMK)
  • TTV21SM
    Tieto- ja viestintätekniikka (AMK)
  • TTV21S2
    Tieto- ja viestintätekniikka (AMK)
  • TTV21S1
    Tieto- ja viestintätekniikka (AMK)
  • ZJA23STIDA2
    Avoin amk, Data-analytiikka 2, Verkko

Tavoitteet

Tarkoitus:
Yhteiskunnan toiminta perustuu informaatioteknologian hyödyntämiseen, missä datan avulla säädellään eri yhteiskunnan prosesseja monilla eri tasoilla. Data kertoo aina jostain ilmiöstä tai tapahtumasta, jonka tulkitsemiseksi tarvitaan algoritmeja. Laskennallisten algoritmien osalta keskitytään algoritmien suunnitteluun, toteutukseen ja testaukseen.

EUR-ACE-osaamiset:
Tieto ja ymmärrys
Tekniikan soveltaminen käytäntöön

Osaamistavoitteet:
Olet määritellyt laskentaa vaativan ongelman. Olet prosessoinut ongelman ratkaisemiseksi olennaisen datan. Osaat suunnitella algoritmin laskennallisen ongelman ratkaisemiseksi sekä olet toteuttanut ja testannut algoritmin käytännössä. Osaat optimoida algoritmia ja tunnet algoritmin käyttöön liittyviä rajoitteita datan ja ratkaistavan ongelman suhteen.

Sisältö

• Algoritmit
• NumPy
• Listat ja lajittelu
• Kombinaatiot
• Ahne menetelmä
• K-means

Aika ja paikka

Opintojakso toteutetaan 28.8.2023-13.10.2023.

Oppimateriaali ja suositeltava kirjallisuus

Harjoitustöiden tekemisessä hyödynnetään Anaconda ohjelmistoa (Python 3.7-versio tai uudempi): https://www.anaconda.com/download/

Opetusmenetelmät

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.

Harjoittelu- ja työelämäyhteistyö

Kurssin sisältö pyritään kytkemään työelämässä esiintyviin ongelmiin.

Vaihtoehtoiset suoritustavat

Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.

Opiskelijan ajankäyttö ja kuormitus

Yhden opintopisteen työmäärä vastaa 27 tunnin opiskelutyötä. Yhteensä opiskelutyömäärä (4 op.) kurssilla on 108 tuntia.

Lisätietoja opiskelijoille

Kurssi arvioidaan palautettujen harjoitustöiden perusteella. Harjoitustöitä voi palauttaa vain kurssitoteutuksen aikana.

Arviointiasteikko

0-5

Arviointikriteerit, tyydyttävä (1-2)

Välttävä 1:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu data on otettu käyttöön. Osaat suunnitella ja toteuttaa yksinkertaisen algoritmin, joka tuottaa ratkaisun määritettyyn laskennalliseen ongelmaan. Tunnet optimoinnin osana algoritmin kehitystä. Toteutuksen dokumentaatio kattaa välttämättömät osat.

Tyydyttävä 2:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu olennainen data on otettu käyttöön. Osaat suunnitella ja toteuttaa yksinkertaisen algoritmin, joka tuottaa ratkaisun määritettyyn laskennalliseen ongelmaan. Algoritmin tehokkuuden arviointia on tehty. Toteutuksen ja optimoinnin osalta dokumentaatio kattaa välttämättömät osat.

Arviointikriteerit, hyvä (3-4)

Hyvä 3:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu data on prosessoitu. Osaat suunnitella ja toteuttaa algoritmin, joka tuottaa useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida algoritmin optimoinnin tarpeen pohjautuen tehokkuuden arviointiin. Toteutuksen dokumentaatio on hyvätasoinen ja antaa selkeän kuvan toteutuksesta.

Kiitettävä 4:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman kattavasti. Laskennallisen ongelman ratkaisuun vaadittu data on olennaisilta osin prosessoitu. Osaat suunnitella ja toteuttaa vaihtoehtoisia algoritmeja, jotka tuotavat useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida ja tarvittaessa toteuttaa algoritmin optimoinnin pohjautuen tehokkuuden arviointiin. Toteutuksen dokumentaatio on hyvätasoinen ja antaa selkeän kuvan toteutuksesta.

Arviointikriteerit, kiitettävä (5)

Ymmärrät ja osaat määritellä laskentaa vaativan ongelman kattavasti. Laskennallisen ongelman ratkaisemisen kannalta data on kattavasti prosessoitu. Osaat suunnitella ja toteuttaa vaihtoehtoisia algoritmeja, jotka tuotavat useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida ja tarvittaessa toteuttaa algoritmin optimoinnin pohjautuen tehokkuuden arviointiin. Optimoinnissa on pohdittu ohjelmointikielen soveltuvuutta ratkaistavaan laskennalliseen ongelmaan. Toteutus on dokumentoitu kattavasti ja antaa selkeän kuvan toteutuksesta.

Esitietovaatimukset

Perusteet tietorakenteista ja algoritmeista, datan visualisointi, jonkin ohjelmointi kielen hyvä hallinta. Kurssilla suositeltava ohjelmointikieli on Python.

Ajoitus

06.03.2023 - 30.04.2023

Opintopistemäärä

4 op

Virtuaaliosuus

4 op

Toteutustapa

Verkko-opetus

Yksikkö

Teknologiayksikkö

Opetuskielet
  • Suomi
Koulutus
  • Tieto- ja viestintätekniikka (AMK)
Opettaja
  • Tuomas Huopana
Ryhmät
  • ZJA23KTIDA2
    Avoin amk, Data-analytiikka 2, Verkko

Tavoitteet

Tarkoitus:
Yhteiskunnan toiminta perustuu informaatioteknologian hyödyntämiseen, missä datan avulla säädellään eri yhteiskunnan prosesseja monilla eri tasoilla. Data kertoo aina jostain ilmiöstä tai tapahtumasta, jonka tulkitsemiseksi tarvitaan algoritmeja. Laskennallisten algoritmien osalta keskitytään algoritmien suunnitteluun, toteutukseen ja testaukseen.

EUR-ACE-osaamiset:
Tieto ja ymmärrys
Tekniikan soveltaminen käytäntöön

Osaamistavoitteet:
Olet määritellyt laskentaa vaativan ongelman. Olet prosessoinut ongelman ratkaisemiseksi olennaisen datan. Osaat suunnitella algoritmin laskennallisen ongelman ratkaisemiseksi sekä olet toteuttanut ja testannut algoritmin käytännössä. Osaat optimoida algoritmia ja tunnet algoritmin käyttöön liittyviä rajoitteita datan ja ratkaistavan ongelman suhteen.

Sisältö

• Algoritmit
• NumPy
• Listat ja lajittelu
• Kombinaatiot
• Ahne menetelmä
• K-means

Aika ja paikka

Opintojakso toteutetaan 6.3.2023-30.4.2023.

Oppimateriaali ja suositeltava kirjallisuus

Harjoitustöiden tekemisessä hyödynnetään Anaconda ohjelmistoa (Python 3.7-versio tai uudempi): https://www.anaconda.com/download/

Opetusmenetelmät

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.

Harjoittelu- ja työelämäyhteistyö

Kurssin sisältö pyritään kytkemään työelämässä esiintyviin ongelmiin.

Vaihtoehtoiset suoritustavat

Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.

Opiskelijan ajankäyttö ja kuormitus

Yhden opintopisteen työmäärä vastaa 27 tunnin opiskelutyötä. Yhteensä opiskelutyömäärä (4 op.) kurssilla on 108 tuntia.

Lisätietoja opiskelijoille

Kurssi arvioidaan palautettujen harjoitustöiden perusteella. Harjoitustöitä voi palauttaa vain kurssitoteutuksen aikana.

Arviointiasteikko

0-5

Arviointikriteerit, tyydyttävä (1-2)

Välttävä 1:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu data on otettu käyttöön. Osaat suunnitella ja toteuttaa yksinkertaisen algoritmin, joka tuottaa ratkaisun määritettyyn laskennalliseen ongelmaan. Tunnet optimoinnin osana algoritmin kehitystä. Toteutuksen dokumentaatio kattaa välttämättömät osat.

Tyydyttävä 2:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu olennainen data on otettu käyttöön. Osaat suunnitella ja toteuttaa yksinkertaisen algoritmin, joka tuottaa ratkaisun määritettyyn laskennalliseen ongelmaan. Algoritmin tehokkuuden arviointia on tehty. Toteutuksen ja optimoinnin osalta dokumentaatio kattaa välttämättömät osat.

Arviointikriteerit, hyvä (3-4)

Hyvä 3:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu data on prosessoitu. Osaat suunnitella ja toteuttaa algoritmin, joka tuottaa useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida algoritmin optimoinnin tarpeen pohjautuen tehokkuuden arviointiin. Toteutuksen dokumentaatio on hyvätasoinen ja antaa selkeän kuvan toteutuksesta.

Kiitettävä 4:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman kattavasti. Laskennallisen ongelman ratkaisuun vaadittu data on olennaisilta osin prosessoitu. Osaat suunnitella ja toteuttaa vaihtoehtoisia algoritmeja, jotka tuotavat useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida ja tarvittaessa toteuttaa algoritmin optimoinnin pohjautuen tehokkuuden arviointiin. Toteutuksen dokumentaatio on hyvätasoinen ja antaa selkeän kuvan toteutuksesta.

Arviointikriteerit, kiitettävä (5)

Ymmärrät ja osaat määritellä laskentaa vaativan ongelman kattavasti. Laskennallisen ongelman ratkaisemisen kannalta data on kattavasti prosessoitu. Osaat suunnitella ja toteuttaa vaihtoehtoisia algoritmeja, jotka tuotavat useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida ja tarvittaessa toteuttaa algoritmin optimoinnin pohjautuen tehokkuuden arviointiin. Optimoinnissa on pohdittu ohjelmointikielen soveltuvuutta ratkaistavaan laskennalliseen ongelmaan. Toteutus on dokumentoitu kattavasti ja antaa selkeän kuvan toteutuksesta.

Esitietovaatimukset

Perusteet tietorakenteista ja algoritmeista, datan visualisointi, jonkin ohjelmointi kielen hyvä hallinta. Kurssilla suositeltava ohjelmointikieli on Python.

Ilmoittautumisaika

01.11.2022 - 05.01.2023

Ajoitus

06.03.2023 - 30.04.2023

Opintopistemäärä

4 op

Virtuaaliosuus

4 op

Toteutustapa

Verkko-opetus

Yksikkö

Teknologiayksikkö

Toimipiste

Lutakon kampus

Opetuskielet
  • Suomi
Paikat

0 - 30

Koulutus
  • Tieto- ja viestintätekniikka (AMK)
Opettaja
  • Tuomas Huopana

Tavoitteet

Tarkoitus:
Yhteiskunnan toiminta perustuu informaatioteknologian hyödyntämiseen, missä datan avulla säädellään eri yhteiskunnan prosesseja monilla eri tasoilla. Data kertoo aina jostain ilmiöstä tai tapahtumasta, jonka tulkitsemiseksi tarvitaan algoritmeja. Laskennallisten algoritmien osalta keskitytään algoritmien suunnitteluun, toteutukseen ja testaukseen.

EUR-ACE-osaamiset:
Tieto ja ymmärrys
Tekniikan soveltaminen käytäntöön

Osaamistavoitteet:
Olet määritellyt laskentaa vaativan ongelman. Olet prosessoinut ongelman ratkaisemiseksi olennaisen datan. Osaat suunnitella algoritmin laskennallisen ongelman ratkaisemiseksi sekä olet toteuttanut ja testannut algoritmin käytännössä. Osaat optimoida algoritmia ja tunnet algoritmin käyttöön liittyviä rajoitteita datan ja ratkaistavan ongelman suhteen.

Sisältö

• Algoritmit
• NumPy
• Listat ja lajittelu
• Kombinaatiot
• Ahne menetelmä
• K-means

Aika ja paikka

Opintojakso toteutetaan 6.3.2023-30.4.2023.

Oppimateriaali ja suositeltava kirjallisuus

Harjoitustöiden tekemisessä hyödynnetään Anaconda ohjelmistoa (Python 3.7-versio tai uudempi): https://www.anaconda.com/download/

Opetusmenetelmät

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.

Harjoittelu- ja työelämäyhteistyö

Kurssin sisältö pyritään kytkemään työelämässä esiintyviin ongelmiin.

Vaihtoehtoiset suoritustavat

Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.

Opiskelijan ajankäyttö ja kuormitus

Yhden opintopisteen työmäärä vastaa 27 tunnin opiskelutyötä. Yhteensä opiskelutyömäärä (4 op.) kurssilla on 108 tuntia.

Lisätietoja opiskelijoille

Kurssi arvioidaan palautettujen harjoitustöiden perusteella. Harjoitustöitä voi palauttaa vain kurssitoteutuksen aikana.

Arviointiasteikko

0-5

Arviointikriteerit, tyydyttävä (1-2)

Välttävä 1:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu data on otettu käyttöön. Osaat suunnitella ja toteuttaa yksinkertaisen algoritmin, joka tuottaa ratkaisun määritettyyn laskennalliseen ongelmaan. Tunnet optimoinnin osana algoritmin kehitystä. Toteutuksen dokumentaatio kattaa välttämättömät osat.

Tyydyttävä 2:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu olennainen data on otettu käyttöön. Osaat suunnitella ja toteuttaa yksinkertaisen algoritmin, joka tuottaa ratkaisun määritettyyn laskennalliseen ongelmaan. Algoritmin tehokkuuden arviointia on tehty. Toteutuksen ja optimoinnin osalta dokumentaatio kattaa välttämättömät osat.

Arviointikriteerit, hyvä (3-4)

Hyvä 3:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu data on prosessoitu. Osaat suunnitella ja toteuttaa algoritmin, joka tuottaa useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida algoritmin optimoinnin tarpeen pohjautuen tehokkuuden arviointiin. Toteutuksen dokumentaatio on hyvätasoinen ja antaa selkeän kuvan toteutuksesta.

Kiitettävä 4:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman kattavasti. Laskennallisen ongelman ratkaisuun vaadittu data on olennaisilta osin prosessoitu. Osaat suunnitella ja toteuttaa vaihtoehtoisia algoritmeja, jotka tuotavat useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida ja tarvittaessa toteuttaa algoritmin optimoinnin pohjautuen tehokkuuden arviointiin. Toteutuksen dokumentaatio on hyvätasoinen ja antaa selkeän kuvan toteutuksesta.

Arviointikriteerit, kiitettävä (5)

Ymmärrät ja osaat määritellä laskentaa vaativan ongelman kattavasti. Laskennallisen ongelman ratkaisemisen kannalta data on kattavasti prosessoitu. Osaat suunnitella ja toteuttaa vaihtoehtoisia algoritmeja, jotka tuotavat useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida ja tarvittaessa toteuttaa algoritmin optimoinnin pohjautuen tehokkuuden arviointiin. Optimoinnissa on pohdittu ohjelmointikielen soveltuvuutta ratkaistavaan laskennalliseen ongelmaan. Toteutus on dokumentoitu kattavasti ja antaa selkeän kuvan toteutuksesta.

Esitietovaatimukset

Perusteet tietorakenteista ja algoritmeista, datan visualisointi, jonkin ohjelmointi kielen hyvä hallinta. Kurssilla suositeltava ohjelmointikieli on Python.

Ilmoittautumisaika

01.08.2022 - 25.08.2022

Ajoitus

03.10.2022 - 04.12.2022

Opintopistemäärä

4 op

Virtuaaliosuus

4 op

Toteutustapa

Verkko-opetus

Yksikkö

Teknologiayksikkö

Opetuskielet
  • Suomi
Koulutus
  • Tieto- ja viestintätekniikka (AMK)
Opettaja
  • Tuomas Huopana
Ryhmät
  • ZJA22STIDA2
    Avoin amk, Data-analytiikka 2, Verkko

Tavoitteet

Tarkoitus:
Yhteiskunnan toiminta perustuu informaatioteknologian hyödyntämiseen, missä datan avulla säädellään eri yhteiskunnan prosesseja monilla eri tasoilla. Data kertoo aina jostain ilmiöstä tai tapahtumasta, jonka tulkitsemiseksi tarvitaan algoritmeja. Laskennallisten algoritmien osalta keskitytään algoritmien suunnitteluun, toteutukseen ja testaukseen.

EUR-ACE-osaamiset:
Tieto ja ymmärrys
Tekniikan soveltaminen käytäntöön

Osaamistavoitteet:
Olet määritellyt laskentaa vaativan ongelman. Olet prosessoinut ongelman ratkaisemiseksi olennaisen datan. Osaat suunnitella algoritmin laskennallisen ongelman ratkaisemiseksi sekä olet toteuttanut ja testannut algoritmin käytännössä. Osaat optimoida algoritmia ja tunnet algoritmin käyttöön liittyviä rajoitteita datan ja ratkaistavan ongelman suhteen.

Sisältö

• Algoritmit
• NumPy
• Listat ja lajittelu
• Kombinaatiot
• Ahne menetelmä
• K-means

Aika ja paikka

Opintojakso toteutetaan 3.10.2022-4.12.2022.

Oppimateriaali ja suositeltava kirjallisuus

Harjoitustöiden tekemisessä hyödynnetään Anaconda ohjelmistoa (Python 3.7-versio tai uudempi): https://www.anaconda.com/download/

Opetusmenetelmät

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.

Harjoittelu- ja työelämäyhteistyö

Kurssin sisältö pyritään kytkemään työelämässä esiintyviin ongelmiin.

Vaihtoehtoiset suoritustavat

Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.

Opiskelijan ajankäyttö ja kuormitus

Yhden opintopisteen työmäärä vastaa 27 tunnin opiskelutyötä. Yhteensä opiskelutyömäärä (4 op.) kurssilla on 108 tuntia.

Lisätietoja opiskelijoille

Kurssi arvioidaan palautettujen harjoitustöiden perusteella. Harjoitustöitä voi palauttaa vain kurssitoteutuksen aikana.

Arviointiasteikko

0-5

Arviointikriteerit, tyydyttävä (1-2)

Välttävä 1:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu data on otettu käyttöön. Osaat suunnitella ja toteuttaa yksinkertaisen algoritmin, joka tuottaa ratkaisun määritettyyn laskennalliseen ongelmaan. Tunnet optimoinnin osana algoritmin kehitystä. Toteutuksen dokumentaatio kattaa välttämättömät osat.

Tyydyttävä 2:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu olennainen data on otettu käyttöön. Osaat suunnitella ja toteuttaa yksinkertaisen algoritmin, joka tuottaa ratkaisun määritettyyn laskennalliseen ongelmaan. Algoritmin tehokkuuden arviointia on tehty. Toteutuksen ja optimoinnin osalta dokumentaatio kattaa välttämättömät osat.

Arviointikriteerit, hyvä (3-4)

Hyvä 3:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu data on prosessoitu. Osaat suunnitella ja toteuttaa algoritmin, joka tuottaa useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida algoritmin optimoinnin tarpeen pohjautuen tehokkuuden arviointiin. Toteutuksen dokumentaatio on hyvätasoinen ja antaa selkeän kuvan toteutuksesta.

Kiitettävä 4:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman kattavasti. Laskennallisen ongelman ratkaisuun vaadittu data on olennaisilta osin prosessoitu. Osaat suunnitella ja toteuttaa vaihtoehtoisia algoritmeja, jotka tuotavat useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida ja tarvittaessa toteuttaa algoritmin optimoinnin pohjautuen tehokkuuden arviointiin. Toteutuksen dokumentaatio on hyvätasoinen ja antaa selkeän kuvan toteutuksesta.

Arviointikriteerit, kiitettävä (5)

Ymmärrät ja osaat määritellä laskentaa vaativan ongelman kattavasti. Laskennallisen ongelman ratkaisemisen kannalta data on kattavasti prosessoitu. Osaat suunnitella ja toteuttaa vaihtoehtoisia algoritmeja, jotka tuotavat useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida ja tarvittaessa toteuttaa algoritmin optimoinnin pohjautuen tehokkuuden arviointiin. Optimoinnissa on pohdittu ohjelmointikielen soveltuvuutta ratkaistavaan laskennalliseen ongelmaan. Toteutus on dokumentoitu kattavasti ja antaa selkeän kuvan toteutuksesta.

Esitietovaatimukset

Perusteet tietorakenteista ja algoritmeista, datan visualisointi, jonkin ohjelmointi kielen hyvä hallinta. Kurssilla suositeltava ohjelmointikieli on Python.

Ilmoittautumisaika

01.08.2022 - 25.08.2022

Ajoitus

29.08.2022 - 16.12.2022

Opintopistemäärä

4 op

Virtuaaliosuus

4 op

Toteutustapa

Verkko-opetus

Yksikkö

Teknologiayksikkö

Toimipiste

Lutakon kampus

Opetuskielet
  • Suomi
Paikat

0 - 30

Koulutus
  • Tieto- ja viestintätekniikka (AMK)
Opettaja
  • Tuomas Huopana

Tavoitteet

Tarkoitus:
Yhteiskunnan toiminta perustuu informaatioteknologian hyödyntämiseen, missä datan avulla säädellään eri yhteiskunnan prosesseja monilla eri tasoilla. Data kertoo aina jostain ilmiöstä tai tapahtumasta, jonka tulkitsemiseksi tarvitaan algoritmeja. Laskennallisten algoritmien osalta keskitytään algoritmien suunnitteluun, toteutukseen ja testaukseen.

EUR-ACE-osaamiset:
Tieto ja ymmärrys
Tekniikan soveltaminen käytäntöön

Osaamistavoitteet:
Olet määritellyt laskentaa vaativan ongelman. Olet prosessoinut ongelman ratkaisemiseksi olennaisen datan. Osaat suunnitella algoritmin laskennallisen ongelman ratkaisemiseksi sekä olet toteuttanut ja testannut algoritmin käytännössä. Osaat optimoida algoritmia ja tunnet algoritmin käyttöön liittyviä rajoitteita datan ja ratkaistavan ongelman suhteen.

Sisältö

• Algoritmit
• NumPy
• Listat ja lajittelu
• Kombinaatiot
• Ahne menetelmä
• K-means

Aika ja paikka

Opintojakso toteutetaan 3.10.2022-4.12.2022.

Oppimateriaali ja suositeltava kirjallisuus

Harjoitustöiden tekemisessä hyödynnetään Anaconda ohjelmistoa (Python 3.7-versio tai uudempi): https://www.anaconda.com/download/

Opetusmenetelmät

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.

Harjoittelu- ja työelämäyhteistyö

Kurssin sisältö pyritään kytkemään työelämässä esiintyviin ongelmiin.

Vaihtoehtoiset suoritustavat

Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.

Opiskelijan ajankäyttö ja kuormitus

Yhden opintopisteen työmäärä vastaa 27 tunnin opiskelutyötä. Yhteensä opiskelutyömäärä (4 op.) kurssilla on 108 tuntia.

Lisätietoja opiskelijoille

Kurssi arvioidaan palautettujen harjoitustöiden perusteella. Harjoitustöitä voi palauttaa vain kurssitoteutuksen aikana.

Arviointiasteikko

0-5

Arviointikriteerit, tyydyttävä (1-2)

Välttävä 1:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu data on otettu käyttöön. Osaat suunnitella ja toteuttaa yksinkertaisen algoritmin, joka tuottaa ratkaisun määritettyyn laskennalliseen ongelmaan. Tunnet optimoinnin osana algoritmin kehitystä. Toteutuksen dokumentaatio kattaa välttämättömät osat.

Tyydyttävä 2:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu olennainen data on otettu käyttöön. Osaat suunnitella ja toteuttaa yksinkertaisen algoritmin, joka tuottaa ratkaisun määritettyyn laskennalliseen ongelmaan. Algoritmin tehokkuuden arviointia on tehty. Toteutuksen ja optimoinnin osalta dokumentaatio kattaa välttämättömät osat.

Arviointikriteerit, hyvä (3-4)

Hyvä 3:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman. Laskennallisen ongelman ratkaisuun vaadittu data on prosessoitu. Osaat suunnitella ja toteuttaa algoritmin, joka tuottaa useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida algoritmin optimoinnin tarpeen pohjautuen tehokkuuden arviointiin. Toteutuksen dokumentaatio on hyvätasoinen ja antaa selkeän kuvan toteutuksesta.

Kiitettävä 4:
Ymmärrät ja osaat määritellä laskentaa vaativan ongelman kattavasti. Laskennallisen ongelman ratkaisuun vaadittu data on olennaisilta osin prosessoitu. Osaat suunnitella ja toteuttaa vaihtoehtoisia algoritmeja, jotka tuotavat useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida ja tarvittaessa toteuttaa algoritmin optimoinnin pohjautuen tehokkuuden arviointiin. Toteutuksen dokumentaatio on hyvätasoinen ja antaa selkeän kuvan toteutuksesta.

Arviointikriteerit, kiitettävä (5)

Ymmärrät ja osaat määritellä laskentaa vaativan ongelman kattavasti. Laskennallisen ongelman ratkaisemisen kannalta data on kattavasti prosessoitu. Osaat suunnitella ja toteuttaa vaihtoehtoisia algoritmeja, jotka tuotavat useita ratkaisuja määritettyyn laskennalliseen ongelmaan. Osaat arvioida ja tarvittaessa toteuttaa algoritmin optimoinnin pohjautuen tehokkuuden arviointiin. Optimoinnissa on pohdittu ohjelmointikielen soveltuvuutta ratkaistavaan laskennalliseen ongelmaan. Toteutus on dokumentoitu kattavasti ja antaa selkeän kuvan toteutuksesta.

Esitietovaatimukset

Perusteet tietorakenteista ja algoritmeista, datan visualisointi, jonkin ohjelmointi kielen hyvä hallinta. Kurssilla suositeltava ohjelmointikieli on Python.