STEM-intensiivinen oppimismenetelmä

Insinöörikoulutuksen maailmassa on monia erinomaisia ​​kursseja, mutta usein niiden ympärille rakennettu opetussuunnitelma kärsii yhdestä vakavasta puutteesta - hyvän johdonmukaisuuden puutteesta eri aiheiden välillä. Joku voisi vastustaa: miten tämä voi olla?

Koulutusohjelmaa muodostettaessa kullekin kurssille ilmoitetaan edellytykset ja selkeä järjestys, jossa tieteenaloja tulee opiskella. Esimerkiksi primitiivisen mobiilirobotin rakentamiseksi ja ohjelmoimiseksi sinun on tunnettava hieman mekaniikkaa sen fyysisen rakenteen luomiseksi; sähkön perusteet Ohmin/Kirchhoffin lakien tasolla, digitaalisten ja analogisten signaalien esitys; operaatiot vektoreilla ja matriiseilla koordinaattijärjestelmien ja robotin liikkeiden kuvaamiseksi avaruudessa; ohjelmoinnin perusteet tiedon esittämisen tasolla, yksinkertaiset algoritmit ja ohjauksen siirtorakenteet jne. kuvaamaan käyttäytymistä.

Käsitetäänkö tämä kaikki yliopiston kursseilla? Tietysti on. Ohmin/Kirchhoffin laeilla saamme kuitenkin termodynamiikan ja kenttäteorian; matriiseilla ja vektoreilla suoritettavien operaatioiden lisäksi täytyy käsitellä Jordan-muotoja; ohjelmoinnissa opiskele polymorfismia - aiheita, joita ei aina tarvita yksinkertaisen käytännön ongelman ratkaisemiseksi.

Yliopistokoulutus on laajaa - opiskelija kulkee laajalla rintamalla, eikä usein näe saamansa tiedon merkitystä ja käytännön merkitystä. Päätimme kääntää STEM-yliopistokoulutuksen paradigman (sanoista Science, Technology, Engineering, Math) ja luoda tiedon koherenssiin perustuvan ohjelman, joka mahdollistaa kokonaisuuden lisäämisen tulevaisuudessa, eli edellyttää intensiivistä aiheiden hallintaa.

Uuden aihealueen oppimista voidaan verrata paikallisen alueen tutkimiseen. Ja tässä on kaksi vaihtoehtoa: joko meillä on erittäin yksityiskohtainen kartta, jossa on valtava määrä yksityiskohtia, joita on tutkittava (ja tämä vie paljon aikaa), jotta ymmärrämme, missä tärkeimmät maamerkit ovat ja miten ne liittyvät toisiinsa ; tai voit käyttää primitiivistä suunnitelmaa, johon on merkitty vain pääpisteet ja niiden suhteellinen sijainti - tällainen kartta riittää aloittamaan heti liikkeen oikeaan suuntaan, selkeyttäen yksityiskohtia edetessäsi.

Testasimme intensiivistä STEM-oppimistapaa talvikoulussa, jonka pidimme yhdessä MIT-opiskelijoiden kanssa JetBrains-tutkimus.

Materiaalin valmistelu


Kouluohjelman ensimmäinen osa oli viikko, jossa opiskeli pääalueita, joihin sisältyi algebra, sähköpiirit, tietokonearkkitehtuuri, Python-ohjelmointi ja johdatus ROS:iin (Robot Operating System).

Suunta ei ole valittu sattumalta: toisiaan täydentäen niiden oli tarkoitus auttaa oppilaita näkemään yhteys ensisilmäyksellä erilaisten asioiden - matematiikan, elektroniikan ja ohjelmoinnin - välillä.

Päätavoitteena ei tietenkään ollut pitää paljon luentoja, vaan antaa opiskelijoille mahdollisuus soveltaa uutta tietoa itse käytännössä.

Algebra-osiossa opiskelijat saivat harjoitella matriisioperaatioita ja yhtälöjärjestelmien ratkaisemista, joista oli hyötyä sähköpiirien tutkimisessa. Tutustuttuaan transistorin rakenteeseen ja sen pohjalle rakennetuihin loogisiin elementteihin, opiskelijat pääsivät näkemään niiden käytön prosessorilaitteessa ja Python-kielen perusteiden oppimisen jälkeen kirjoittaa siihen ohjelman oikealle robotille.

STEM-intensiivinen oppimismenetelmä

Duckietown


Yksi koulun tavoitteista oli minimoida simulaattoreiden käyttö mahdollisuuksien mukaan. Siksi valmistettiin suuri joukko elektronisia piirejä, jotka opiskelijoiden piti koota leipälaudalle aidoista komponenteista ja testata niitä käytännössä, ja Duckietown valittiin hankkeiden pohjaksi.

Duckietown on avoimen lähdekoodin projekti, joka sisältää pieniä autonomisia robotteja nimeltä Duckiebots ja tieverkostoja, joita he kulkevat. Duckiebot on pyörillä varustettu alusta, joka on varustettu Raspberry Pi -mikrotietokoneella ja yhdellä kameralla.

Sen pohjalta olemme laatineet joukon mahdollisia tehtäviä, kuten tiekartan rakentamista, esineiden etsimistä ja niiden viereen pysähtymistä sekä monia muita. Opiskelijat voivat myös ehdottaa omaa ongelmaansa eikä vain kirjoittaa ohjelmaa sen ratkaisemiseksi, vaan myös suorittaa sen välittömästi oikealla robotilla.

opetus


Luennon aikana opettajat esittelivät materiaalia käyttäen valmiita esitelmiä. Jotkut tunnit tallennettiin videolle, jotta oppilaat saattoivat katsella niitä kotona. Luennoilla opiskelijat käyttivät materiaalia tietokoneillaan, esittivät kysymyksiä ja ratkoivat tehtäviä yhdessä ja itsenäisesti, joskus taulun ääressä. Työn tulosten perusteella kunkin opiskelijan arvosana laskettiin erikseen eri oppiaineissa.

STEM-intensiivinen oppimismenetelmä

Tarkastellaan tarkemmin kunkin aiheen kurssien kulkua. Ensimmäinen aihe oli lineaarinen algebra. Opiskelijat viettivät yhden päivän tutkiessaan vektoreita ja matriiseja, lineaarisia yhtälöjärjestelmiä jne. Käytännön tehtävät rakennettiin interaktiivisesti: ehdotetut tehtävät ratkaistiin yksilöllisesti ja opettaja ja muut opiskelijat antoivat kommentteja ja vinkkejä.

STEM-intensiivinen oppimismenetelmä

Toinen aihe on sähkö ja yksinkertaiset piirit. Opiskelijat oppivat sähködynamiikan perusteet: jännite, virta, resistanssi, Ohmin lait ja Kirchhoffin lait. Käytännön tehtävät tehtiin osittain simulaattorissa tai suoritettiin taululla, mutta enemmän aikaa kului oikeiden piirien, kuten logiikkapiirien, värähtelypiirien jne., rakentamiseen.

STEM-intensiivinen oppimismenetelmä

Seuraava aihe on Tietokonearkkitehtuuri - tietyssä mielessä fysiikan ja ohjelmoinnin yhdistävä silta. Opiskelijat opiskelivat perusteita, joiden merkitys on enemmän teoreettinen kuin käytännöllinen. Harjoitteluna opiskelijat suunnittelivat itsenäisesti aritmeettisia ja logiikkapiirejä simulaattorissa ja saivat suoritetuista tehtävistä pisteitä.

Neljäs päivä on ohjelmoinnin ensimmäinen päivä. Python 2 valittiin ohjelmointikieleksi, koska sitä käytetään ROS-ohjelmoinnissa. Päivä rakentui seuraavasti: opettajat esittelivät materiaalia, antoivat esimerkkejä ongelmien ratkaisemisesta, samalla kun opiskelijat kuuntelivat niitä tietokoneidensa ääressä ja toistivat mitä opettaja kirjoitti taululle tai dialle. Sitten opiskelijat ratkaisivat samanlaisia ​​ongelmia itse, ja opettajat arvioivat ratkaisuja.

Viides päivä oli omistettu ROS:lle: kaverit oppivat robottien ohjelmoinnista. Koko koulupäivän oppilaat istuivat tietokoneidensa ääressä ja suorittivat ohjelmakoodia, josta opettaja puhui. He pystyivät ajamaan ROS-perusyksiköitä itsenäisesti ja tutustuivat myös Duckietown-projektiin. Tämän päivän päätteeksi oppilaat olivat valmiita aloittamaan koulun projektiosuuden - käytännön ongelmien ratkaisemisen.

STEM-intensiivinen oppimismenetelmä

Kuvaus valituista projekteista

Opiskelijoita pyydettiin muodostamaan kolmen hengen ryhmiä ja valitsemaan projektin aihe. Tämän seurauksena hyväksyttiin seuraavat hankkeet:

1. Värin kalibrointi. Duckiebotin on kalibroitava kamera, kun valaistusolosuhteet muuttuvat, joten käytössä on automaattinen kalibrointitehtävä. Ongelmana on, että värialueet ovat erittäin herkkiä valolle. Osallistujat ottivat käyttöön apuohjelman, joka korosti vaaditut värit kehyksessä (punainen, valkoinen ja keltainen) ja rakensi kullekin värille alueita HSV-muodossa.

2. Ankkataksi. Tämän projektin ideana on, että Duckiebot voisi pysähtyä kohteen lähellä, poimia sen ja seurata tiettyä reittiä. Kohteeksi valittiin kirkkaan keltainen ankka.

STEM-intensiivinen oppimismenetelmä

3. Tiekaavion rakentaminen. Tehtävänä on rakentaa kaavio teistä ja risteyksistä. Tämän projektin tavoitteena on rakentaa tiekaavio toimittamatta etukäteen Duckiebotille ympäristötietoja, tukeutuen vain kameratietoihin.

4. Partioauto. Tämän projektin ovat oppilaat itse keksineet. He ehdottivat, että yksi Duckiebot, ”partio”, jahtaa toista, ”rikkoilijaa”. Tätä tarkoitusta varten käytettiin kohteen tunnistusmekanismia ArUco-markkerilla. Heti kun tunnistus on valmis, "tunkeutujalle" lähetetään signaali työn suorittamiseksi loppuun.

STEM-intensiivinen oppimismenetelmä

Väri Kalibrointi

Color Calibration -projektin tavoitteena oli mukauttaa tunnistettavien merkintävärien valikoima uusiin valaistusolosuhteisiin. Ilman tällaisia ​​säätöjä pysäytyslinjojen, kaistaerottimien ja tierajojen tunnistaminen muuttui virheelliseksi. Osallistujat ehdottivat ratkaisua, joka perustui esikäsittelyyn merkintävärimallit: punainen, keltainen ja valkoinen.

Jokaisella näistä väreistä on esiasetettu HSV- tai RGB-arvoalue. Tämän alueen avulla löydetään kaikki sopivat värit sisältävät kehyksen alueet ja valitaan suurin. Tätä aluetta pidetään värinä, joka on muistettava. Tilastollisia kaavoja, kuten keskiarvon ja keskihajonnan laskemista, käytetään sitten uuden värialueen arvioimiseen.

Tämä alue on tallennettu Duckiebotin kameran asetustiedostoihin, ja sitä voidaan käyttää myöhemmin. Kuvattua lähestymistapaa sovellettiin kaikkiin kolmeen väriin, jolloin lopulta muodostui alueet kullekin merkintävärille.

Testit osoittivat merkintäviivojen lähes täydellisen tunnistamisen, paitsi tapauksissa, joissa merkintämateriaaleissa käytettiin kiiltävää teippiä, joka heijastaa valonlähteitä niin voimakkaasti, että kameran katselukulmasta merkit näyttivät valkoisilta alkuperäisestä väristään riippumatta.

STEM-intensiivinen oppimismenetelmä

Ankka Taksi

Duck Taxi -projektissa rakennettiin algoritmi ankkamatkustajan etsimiseksi kaupungista ja kuljetettiin sitten haluttuun paikkaan. Osallistujat jakoivat tämän ongelman kahteen osaan: havaitsemiseen ja liikkumiseen kaaviota pitkin.

Opiskelijat suorittivat ankantunnistuksen olettaen, että ankka on mikä tahansa kehyksessä oleva alue, joka voidaan tunnistaa keltaiseksi ja jossa on punainen kolmio (nokka). Heti kun tällainen alue havaitaan seuraavassa kuvassa, robotin tulee lähestyä sitä ja pysähtyä sitten muutamaksi sekunniksi simuloiden matkustajan laskeutumista.

Sitten kun koko duckietownin tiekaavio ja botin sijainti on tallennettu muistiin etukäteen ja vastaanottavat myös määränpään syötteenä, osallistujat rakentavat polun lähtöpisteestä saapumispisteeseen käyttämällä Dijkstran algoritmia polkujen etsimiseen kaaviosta. . Tulos esitetään joukkona komentoja - käännöksiä kussakin seuraavista risteyksistä.

STEM-intensiivinen oppimismenetelmä

Kaavio teistä

Tämän projektin tavoitteena oli rakentaa kaavio - tieverkosto Duckietownissa. Tuloksena olevan graafin solmut ovat risteyksiä ja kaaret ovat teitä. Tätä varten Duckiebotin on tutkittava kaupunkia ja analysoitava sen reittiä.

Projektin työskentelyn aikana ajatusta painotetun graafin luomisesta pohdittiin, mutta se hylättiin, jossa reunan hinta määräytyy risteysten välisen etäisyyden (matka-ajan) mukaan. Tämän idean toteuttaminen osoittautui liian työlääksi, eikä siihen riittänyt koulun sisällä aikaa.

Kun Duckiebot pääsee seuraavaan risteykseen, se valitsee risteyksestä ulos johtavan tien, jota se ei ole vielä kulkenut. Kun kaikki tiet kaikissa risteyksissä on ajettu, luotu luettelo risteysalueista jää botin muistiin, joka muunnetaan kuvaksi Graphviz-kirjaston avulla.

Osallistujien ehdottama algoritmi ei sopinut satunnaiselle Duckietownille, mutta toimi hyvin koulun sisällä käytettävälle neljän risteyksen pikkukaupungille. Ajatuksena oli lisätä jokaiseen risteykseen ArUco-merkki, joka sisältää risteystunnisteen, jotta voidaan seurata risteysten ajojärjestystä.
Osallistujien kehittämän algoritmin kaavio on esitetty kuvassa.

STEM-intensiivinen oppimismenetelmä

Partioauto

Tämän projektin tavoitteena on etsiä, jäljittää ja vangita rikkova botti Duckietownin kaupungissa. Partiobotin täytyy liikkua kaupunkitien ulkokehää pitkin etsimään tunnettua tunkeilijabottia. Havaittuaan tunkeilijan partiobotin on seurattava tunkeilijaa ja pakotettava hänet pysähtymään.

Työ alkoi idean etsimisellä botin havaitsemiseksi kehyksestä ja tunkeilijan tunnistamiseksi siitä. Tiimi ehdotti jokaisen kaupungin botin varustamista ainutlaatuisella merkillä takana - aivan kuten oikeilla autoilla on valtion rekisterinumerot. ArUco-merkit valittiin tähän tarkoitukseen. Niitä on käytetty aiemmin Dukietownissa, koska niiden kanssa on helppo työskennellä ja niiden avulla voit määrittää merkin suunnan avaruudessa ja etäisyyden siihen.

Seuraavaksi oli tarpeen varmistaa, että partiobotti liikkui tiukasti ulkokehässä pysähtymättä risteyksissä. Oletuksena Duckiebot liikkuu kaistalla ja pysähtyy pysähdyslinjalla. Sitten hän määrittää liikennemerkkien avulla risteyksen kokoonpanon ja tekee valinnan risteyksen kulkusuunnasta. Jokaisesta kuvatuista vaiheista vastaa yksi robotin äärellistilakoneen tilasta. Päästäkseen eroon risteyksen pysähdyksistä tiimi vaihtoi tilakonetta niin, että pysäkkiviivaa lähestyttäessä botti siirtyi välittömästi risteyksen kautta ajavaan tilaan.

Seuraava askel oli ratkaista tunkeilijabotin pysäyttäminen. Tiimi oletti, että partiobotilla voisi olla SSH-pääsy jokaiseen kaupungin bottiin, toisin sanoen sillä on tietoa siitä, mitä valtuutustietoja ja mikä id jokaisella botilla on. Siten havaittuaan tunkeilijan partiobotti alkoi muodostaa yhteyttä SSH:n kautta tunkeilijabottiin ja sammutti sen järjestelmän.

Vahvistettuaan, että sammutuskomento oli suoritettu loppuun, myös partiobotti pysähtyi.
Partiorobotin toiminta-algoritmi voidaan esittää seuraavalla kaaviolla:

STEM-intensiivinen oppimismenetelmä

Projektien parissa työskenteleminen

Työ järjestettiin Scrumin kaltaisessa muodossa: joka aamu opiskelijat suunnittelivat kuluvan päivän tehtäviä ja illalla raportoivat tehdystä työstä.

Ensimmäisenä ja viimeisenä päivänä opiskelijat valmistelivat esityksiä, joissa kuvattiin tehtävää ja sen ratkaisua. Auttaakseen opiskelijoita noudattamaan valitsemiaan suunnitelmia, opettajat Venäjältä ja Amerikasta olivat jatkuvasti läsnä tiloissa, joissa projektityötä tehtiin ja vastasivat kysymyksiin. Yhteydenpito tapahtui pääosin englanniksi.

Tulokset ja niiden esittely

Työ projektien parissa kesti viikon, jonka jälkeen opiskelijat esittelivät tulokset. Jokainen valmisteli esityksiä, joissa he kertoivat, mitä he oppivat tässä koulussa, mitkä olivat tärkeimmät opit, mistä he pitivät tai eivät pitäneet. Sen jälkeen jokainen tiimi esitteli projektinsa. Kaikki joukkueet suorittivat tehtävänsä.

Värikalibrointia toteuttava tiimi sai projektin valmiiksi muita nopeammin, joten heillä oli myös aikaa valmistella ohjelmansa dokumentaatio. Ja tiekaavion parissa työskentelevä tiimi yritti jopa viimeisenä päivänä ennen projektin esittelyä tarkentaa ja korjata algoritmejaan.

STEM-intensiivinen oppimismenetelmä

Johtopäätös

Koulun päätyttyä pyysimme oppilaita arvioimaan aiempia toimintoja ja vastaamaan kysymyksiin siitä, kuinka hyvin koulu vastasi heidän odotuksiaan, mitä taitoja he hankkivat jne. Kaikki opiskelijat totesivat oppineensa työskentelemään ryhmässä, jakamaan tehtäviä ja suunnittelemaan aikansa.

Opiskelijoita pyydettiin myös arvioimaan suorittamiensa kurssien hyödyllisyyttä ja vaikeutta. Ja tässä muodostui kaksi arviointiryhmää: joillekin kurssit eivät tuottaneet suuria vaikeuksia, toiset arvioivat ne erittäin vaikeiksi.

Tämä tarkoittaa, että koulu on ottanut oikean asennon pysymällä tietyn alan aloittelijoiden saatavilla, mutta myös tarjoamalla materiaalia kokeneiden opiskelijoiden toistoa ja lujittamista varten. On huomattava, että ohjelmointikurssi (Python) oli lähes kaikkien mielestä yksinkertainen mutta hyödyllinen. Opiskelijoiden mukaan vaikein kurssi oli ”Tietokonearkkitehtuuri”.

Kun opiskelijoilta kysyttiin koulun vahvuuksia ja heikkouksia, monet vastasivat pitävän valitusta opetustyylistä, jossa opettajat antoivat nopeaa ja henkilökohtaista apua ja vastasivat kysymyksiin.

Opiskelijat totesivat myös, että he pitivät työskentelystä tehtäviensä päivittäisen suunnittelun ja omien määräaikojen asettamisessa. Haittapuolena opiskelijat totesivat botin kanssa työskentelyssä tarvittavan tiedon puutteen: yhdistämisen yhteydessä sen toiminnan perusteiden ja periaatteiden ymmärtäminen.

Lähes kaikki oppilaat totesivat, että koulu ylitti heidän odotuksensa, mikä osoittaa oikean suunnan koulun organisointiin. Seuraavaa koulua järjestettäessä tulee siis noudattaa yleisiä periaatteita, ottaa huomioon ja mahdollisuuksien mukaan poistaa opiskelijoiden ja opettajien havaitsemat puutteet, mahdollisesti muuttaa kurssilistaa tai niiden opetuksen ajoitusta.

Artikkelin kirjoittajat: tiimi mobiilirobottialgoritmien laboratorio в JetBrains-tutkimus.

PS Yritysblogillamme on uusi nimi. Nyt se on omistettu JetBrainsin koulutusprojekteille.

Lähde: will.com

Lisää kommentti