0XVLNVNDSDQGHJHQRP *HQHWLVN 3URJUDPPHULQJ

Storlek: px
Starta visningen från sidan:

Download "0XVLNVNDSDQGHJHQRP *HQHWLVN 3URJUDPPHULQJ"

Transkript

1 0XVLNVNDSDQGHJHQRP *HQHWLVN 3URJUDPPHULQJ ) UGMXSQLQJVDUEHWHL$,

2 0XVLNVNDSDQGHRFK*HQHWLVN3URJUDPPHULQJ 6DPPDQIDWWQLQJ I detta arbete har jag valt att undersöka hur musik kan skapas genom ett system grundat på Genetisk Programmering (GP). GP tillhör grenen maskininlärning inom AI och är skulle man kunna säga, en datoriserad metafor av evolutionsförloppet. Samma tankar som återfinns i Darwins teorier hittar sin plats även i GP. Jag har i mitt arbete framförallt tittat på ett system baserat på GP där musik genereras. Namnet på systemet är GP-Music och skapades vid ett projektsammarbete mellan Brad Johanson från Stanford University och Riccardo Poli från University of Birmingham. Musiken representeras som toner i skalan och ett antal funktioner att applicera på dessa. Resultatet av att sätta ihop dessa blir en enstämmig musikslinga som ska förbättras över generationerna. Johanson & Poli är utifrån resultatet av deras system nöjda med att ha visat att det med enkla medel går att skapa unik relativt bra musik men lägger till att mycket forskning finns att göra för att utveckla och förbättra systemet. Själv tycker jag inte resultaten är speciellt överväldigande även om det finns intressanta inslag i deras system som är värda att titta närmare och jobba vidare på.

3 ,QOHGQLQJ (författaren) (läsaren) (författaren) (läsaren) - Kan en dator generera bra musik på egen hand? - Det kan den väl antar jag, eftersom du frågar. - Ja, där har du kanske rätt, men vet du i så fall hur detta kan gå till? - Nej, där satte du mig på pottkanten, men nu är mitt intresse väckt! Denna korta inledningsdialog får sammanfatta det jag valt att titta på i mitt fördjupningsarbete. En direkt reaktion på ovanstående dialog kanske är vad som egentligen menas med bra musik. Detta är självklart en fråga om subjektiv bedömning eftersom musik handlar om personlig smak. Detta kommer också vara av betydelse ska vi se senare i rapporten. Innan vi fortsätter vill jag bara kort nämna varför jag valt detta ämne. Jag är själv väldigt intresserad av musik och har skapat musik med hjälp av datorer sedan början av nittiotalet. När intresset för AI nu klampat in under kursen som gått så känns det därför extra kul att kunna titta på vad dessa till synes vitt skilda områden kan erbjuda en när de möts. För att hitta svaret på frågorna i dialogen har jag valt att koncentrera mitt arbete på ett musikgenererande system kallat GP-Music. Systemet är baserat på en gren av AI som heter Genetisk Programmering (GP). Därför kommer jag innan jag kastar mig över själva systemet ge en kort introduktion till GP. Därefter görs en djupdykning in i hur själva systemet arbetar och vilka resultat det gett och sist kommer några egna tankar, både kring GP-Music och hur forskningsområdet i stort kan användas.

4 (Q YHUEOLFN YHU*3 Mycket av informationen i detta avsnitt är hämtad ur boken Genetic Programming $Q,QWURGXFWLRQ skriven av Banzhaf, Nordin, Keller och Francome 1998 vilka i sin tur grundar just detta parti, om hur ett grundläggande GP-system fungerar, mycket på John R. Kozas direktiv för hur ett sådant grundläggande GP-system kan fungera. Denne John R. Koza är en stor förgrundsfigur inom GP och leder en stor del av forskningen i området framåt genom sitt arbete vid Stanford University och han driver dessutom några hemsidor där jag funnit mycket information. En del referenser nedan är alltså dessutom från olika delar av dessa hemsidor. Är det något parti som är mer direkt hämtat ur en viss källa så anger jag den referensen efter det partiet. För övrigt fick jag bra hjälp av just Koza via en e-post konversation där han tipsade om var jag kunde hitta relevant information vilket jag tycker visar på att allt möjligt intresse och arbete i området välkomnas varmt. %DNJUXQG GP tillhör en gren inom AI som kallas maskininlärning (ML). Tanken med MLsystem är att en dator automatiskt ska kunna lära sig ett problem utan att vi ger den explicita instruktioner för hur det ska gå till (Genetic Programming: Banzhaf, Nordin, Keller, Francome, 1998). Detta är också utgångspunkten för GP vars karaktäristiska är ett det grundar sitt system på den biologiska vetenskapen och framförallt det evolutionistiska synsättet. GP är nämligen en metafor på detta evolutionistiska förlopp där termer som individkorsning, populationer, och mutation följer med in i GP:s värld. En fördel med GP jämfört med andra ML-metoder är att det kan använda sig av alla tänkbara program och funktioner som hittills skapats av programmerare då den arbetar genom vanlig programmering till datorn (Seven Differences Between Genetic Programming and Other Approaches to Machine Learning and Artificial Intelligence: Dessutom innefattar den genom denna egenskap i förlängningen alla andra ML-metoder då dessa kan beskrivas i program (Genetic Programming: Banzhaf, Nordin, Keller, Francome, 1998). I stora drag fungerar en grundläggande GP-algoritm så att en population skapas efter vissa förutbestämda riktlinjer och när detta är gjort väljs de individer, som verkar bäst lämpade för att lösa problemet, till att genomgå genetiska operationer och efter detta slungas de sedan in i nästa generation. Denna generation genomgår sedan samma procedur igen och så fortsätter det tills man är nöjd med de individer man fått fram. Nyckeln till att systemet lär sig är att bättre och bättre individer tas fram och förs vidare genom urvalet. Vi ska dock lite mer ingående se hur detta går till.

5 1nJUDJUXQGOlJJDQGHI UEHUHGHOVHU När man tar sig an ett problem genom GP gäller det först att definiera vilka funktioner och värden som behöver finnas med för att GP ska kunna lösa problemet. I GP talar man om funktioner och terminaler där funktioner är alla tänkbara sorters funktioner som kan appliceras på ett värde och där terminaler är det indatavärde som funktionerna börjar operera på. Till exempel innehåller (1 + 2) * x funktionerna + och * och terminalerna 1, 2 och x. När man definierat sina terminaler och funktioner kan man i stort sett redan initiera en första population av individer där varje individ är ett program bestående av x och y antal funktioner och terminaler. Det man bör fundera på är vilken struktur man vill att en individ ska ha. Det kanske mest gängse sättet inom GP idag är trädstrukturen men man kan också välja att representera en individ linjärt eller grafiskt. Respektive metod har olika fördelar och man bör undersöka vad som verkar passa det problem man vill lösa. Man ska sen också ta ställning till hur man genererar individerna i sin första population vilket bör ske genom någon form av utrandomisering av sina funktioner och terminaler. Dessutom bör man sätta gränser för hur stora dessa första individer kan vara och sedan också hur stora man max vill att de ska kunna bli efterhand (i trädstrukturen, sätts ett maxdjup). Att dessa individer kan variera i storlek är en viktig egenskap som skiljer GP från många andra ML-metoder och gör att den lättare kan hantera problem där lösningen kan variera i storlek. Vi börjar nu, genom dessa storlekar, komma in på vad som brukar kallas parametrarna inom GP (Example of a Run of Genetic Programming Utöver maxstorleken på individerna är andra parametrar att sätta vilka genetiska operatorer man använder sig av, hur stor sannolikhet det är att en viss operations ska utföras på en individ, samt hur många individer varje generation ska innehålla och hur många generationer man kör över. Allt bör analyseras och undersökas i förväg då dessa parametrar är av betydande vikt för att uppnå ett bra resultat. Vanliga genetiska operatorer är kopiering, mutation och korsning där kopiering innebär en fördubbling av en individ, mutation att en del av programmet ersätts med en helt ny del, och korsning att två individer kapas någonstans och byter ut var sin del. En stor del av förberedelserna ligger i att komma på vilken fitnessfunktion man ska använda, det vill säga hur man ska avgöra hur nära en individ är det önskade resultatet. Detta kan vara en matematisk funktion men också någon helt annan metod. Fitnessfunktionen är kanske den mest specifika delen i ett GP-system och kanske därför också den svagaste punkten eftersom många intressanta problem är komplexa. Det är samtidigt absolut nödvändigt att en väl fungerande fitnessfunktion hittas för att kunna få en bra utveckling i sitt GP-system. När detta är gjort och individerna i en generation väl genomgått en bedömning genom fitnessfunktionen så har de olika stor sannolikhet att få väljas till de genetiska operatorerna. Det finns olika metoder hur själva urvalet går till. En sådan är tournament selection där ett visst antal slumpvalda individer får mötas varpå segraren i varje turnering slussas vidare.

6 När allt detta jobb är utfört är det dags att implementera sin algoritm i programkod så att ens val efterföljs och sedan är det bara till att köra och utvärdera och ändra sina inställningar och sin kod om det behövs. Vi ska nu se hur det system jag fördjupat mig i fungerar.

7 *30XVLF GP-Music är ett musikgenererande system baserat på genetisk programmering. Systemet utvecklades genom ett samarbete mellan Brad Johanson från Stanford University och Riccardo Poli från University of Birmingham. Systemet genererar ett stycke kod som kan översättas till en enstämmig melodislinga. Detta utförs genom användningen av en ganska grundläggande GP-algoritm men med några små finesser. Vi ska nu se mer exakt hur denna har implementerats till ett färdigt musikgenererande system. Där inget annat sägs är det jag som tar mig friheten att spekulera i vilka problem som finns med att skapa ett musikgenererande GP-system men allt som har med själva systemet GP-Music att göra är hämtat ur Johanson & Poli:s rapport GP- Music: An interactive Genetic Programming System for Music Generation with Automated Fitness Raters. 5HSUHVHQWDWLRQ Det första problemet att ta hänsyn till är hur musiken ska representeras i systemet. Det hela blir en avvägning över vad man vill ska vara av betydelse. Vill man ha med mycket av informationen som finns i ett musikflöde skulle man kunna använda sig av ljudvågformen som ett musikflöde generar. Problemet med den är att det är så mycket information inlagrad att variabler som, ljud (flöjt, piano), melodier, harmonier, styrkan på dessa, eko, rymdklang med flera, troligtvis blir svåra att tolka och hantera i ett GP-system. Svårigheten ligger i att välja funktioner och terminaler för skapandet av den komplexa vågformen. Ett mycket mindre komplext sätt att representera musiken är att begränsa sig till vilka toner som ingår och när dessa spelas. Fördelen är att det nu är lättare att översätta ett sådant tonsystem så att ett GP-system kan använda sig av datan. Precis så är också tanken i GP-Music där Johanson & Poli valt att representera musik genom dessa toner samt ett antal funktioner att applicera på tonerna för att de ska spelas på ett visst sätt. Detta utgör då funktionerna och terminalerna till GP-systemet (se tabellen). Function Set: play_two, add_space, play_twice, shift_up, shift_down, mirror, play_and_mirror Terminal Set: Notes: C-4, C#4, D-4, D#4, E-4, F-4, F#4, G-4, G#4, A-5, A#5, B-5 Pseudo- Chords: C-Chord, D-Chord, E- Chord, F-Chord, G- Chord, A-Chord, B-Chord Other: RST 7DEHOOHQYLVDUIXQNWLRQHUQDRFKWHUPLQDOHUQDL*3PXVLF-RKDQVRQ3ROL

8 En närmare titt på detta visar att tonerna representeras av typen C-4 där C är vilken ton i skalan den är och 4 i vilken oktav den ligger. Dessutom finns det pseudoackord som är tre toner i ett ackord spelandes sekvensiellt efter varandra. Den sista terminalen (RST) är en paus och läggs in om ingen ton ska ljuda vid tillfället. Funktionerna som används gör följande: Play_two tar två sekvenser av noter och sätter ihop de till en sekvens (behövs för att spela mer en not). Add_space tar en sekvens och lägger till paus efter varje ton i sekvensen vilket saktar ner tempot. Play_twice tar en sekvens och spelar denna två gånger efter varandra. Shift_up tar en sekvens och höjer alla toner inom denna ett steg. Shift_down samma som ovan fast ner ett steg. Mirror tar en sekvens och spelar den baklänges. Play-_and_mirror tar en sekvens och reverserar den som i föregående funktion men lägger till det reverserade efter originalet så att först den ursprungliga sekvensen spelas varpå den spelas baklänges. Någon närmare förklaring till varför just dessa funktioner valts nämns inte mer än att play_two är till för att göra längre sekvenser än en not och de andra för att få en viss grad av strukturerade sekvenser. Ett annat val Johanson & Poli gör är att endast ha en sekvensiell melodislinga, det vill säga utesluta att flera toner spelas samtidigt, även detta för att minska komplexiteten. Här finns alltså flera möjligheter till vidare experimenterande för att uppnå nya dimensioner i musikgenereringen. Med dessa funktioner och terminaler definierade kan nu program skapas för att få fram en melodislinga. Dessa program representeras i Johanson & Polis system som LISP-liknande strukturer vilket gör det naturligt att se programmet ur ett trädperspektiv. Av exemplena från deras system att döma så har de använt sig av grow metoden för att genererar dessa programträd vilket innebär att varje gren kan variera i längd men avslutas så fort en terminal dykt upp (Genetic Programming: Banzhaf, Nordin, Keller, Francome, 1998). (shift-down (add-space (play-and-mirror (play-two (play-two (play-two (play-two B-5 B-5) (shift-down A-5)) (shift-down A-5)) F-4)))) %LOGHQI UHVWlOOHUHQUHSUHVHQWDWLRQDYHWWSURJUDPLHQ/,63OLNQDQGHVWUXNWXU

9 %LOGHQI UHVWlOOHUHQWUlGVWUXNWXU YHUHWWSURJUDPVRPJHQHUHUDUHQPXVLNVHNYHQV )LWQHVVIXQNWLRQHQ Nästa steg i förberedandet är att bestämma en fitnessfunktion så att en bedömning kan utföras över vilken sannolikhet en individ ska få för att utsättas för de genetiska operatorerna. Musikbedömning är ett ypperligt exempel på när matematiska fitnessfunktioner inte räcker till för att utföra en bedömning. Hur skulle man med en matematisk funktion kunna säga att ett stycke är bättre än ett annat? Detta problem speglar GP:s akilleshäl, i verkligheten är problemen ofta komplexa och av annan karaktär än enbart matematiska och då blir det genast en större utmaning att finna en passande fitnessfunktion. Detta diskuterar också Johanson & Poli och deras lösning på problemet är att låta en människa vara fitnessfunktionen och utföra en bedömning och ranking av varje genererad musikslinga. För detta ändamål skapas ett user interface där användaren kan välja mellan alla individer i en generation och sätta betyg på en skala mellan i hur bra melodin är. Kravet är att alla individer ska vara betygsatta innan arbetet med en generation är klart men under den tiden får användaren gå tillbaka och lyssna på redan betygsatta individer för att kunna jämföra och göra en så rättvis bedömning som möjligt. På så sätt fungerar bedömningen inom en genaration bra och för att uppnå en rättvis bedömning över generationerna så låter de individer som skickats över till nästa

10 generation få behålla sitt värde så att användaren kan luta sig tillbaka mot dessa när den bedömer nästa generation. Ett problem Johanson & Poli tar upp är att ta hänsyn till att GP:s natur som maskininlärningssystem gör att olika långa sekvenser skapas, vilket i och för sig är önskvärt då man vill att längden ska kunna variera, men där alltför korta eller långa sekvenser bör tas bort för att få en mer homogen grupp att bedöma och för att öka effektiviteten med tanke på tidsåtgången för en person. Detta är gränser som går att laborera med efter önskemål. Ett problem med själva fitnessfunktionen som tas upp är att, eftersom musiksbedömning är subjektiv och personlig, så bör endast en person göra bedömningen av alla melodier för att få ett enhetligt resultat och då blir arbetet väldigt tids- och tålamodskrävande. Detta begränsar då hur många individer varje population får innehålla, hur många generationer som kan köras, samt hur långa musikslingorna kan vara (vilket styrs av satt maxdjup på trädet). I förlängningen gör det att man inte hinner få ett så kraftfullt GP-system som man kanske vill. 1HXUDOWQlWVRPDXWRPDWLVNUDQNLQJ En lösningsidé till det sistnämnda problemet som Johanson och Poli använder sig av hämtas ur ett annat område inom AI och maskininlärning, nämligen neurala nät. Tanken är att skapa och träna sådana genom backpropagation för att sedan ta över bedömningen av melodislingorna. Kan man få fram ett väl fungerande nät skulle man plötsligt kunna öka alla de faktorer som begränsas av att en person måste göra bedömningen. Intressant, och problematiskt, är att man inte kan använda ett och samma nät till alla exempel eftersom de olika långa sekvenserna gör att indatalagret varierar. För att bemästra detta så används här en teknik där vissa vikter delas mellan de olika neurala näten och sedan justeras efterhand så att de passar alla nät. På det sättet kan sedan de olika NN ge en rättvis bedömning. Sammanlagt består nätet som de använder av ett indatalager, tre dolda, och ett utdatalager (se bilden). 'HWQHXUDODQlWHWXUHWWODJHUSHUVSHNWLY

11 Som utdata ur nätet är det en nod som får ett värde mellan 0 och 1 och som sedan multipliceras med 100 för att få ett värde på skalan När nätet tränas så börjar det enligt backpropagation ifrån utdatanoden och tar felet där och börjar justera vikterna bakåt i lagren tills det når indatalagret (Artificial Intelligence A Modern Approach: Russel, Norvig 2003) samtidigt som det alltså håller koll på de delade vikterna så att dessa justeras även med hänsyn till de andra näten. Jag har själv inte förstått helt exakt hur denna viktdelningsteknik fungerar och går inte in mer i detalj på den här men det låter samtidigt rimligt så jag nöjer mig med att acceptera att det kan fungera så länge. Vi ska dock senare i körningarna se hur bra Johanson & Poli får det hela att fungera. 3DUDPHWUDU Ett sista steg innan körningar kan börja utföras är att fastställa de grundläggande parametrarna för körningarna och Johanson & Poli väljer att följa rekommendationer från Koza för att sätta dessa. Tournament selection används för att utse vilka individer som hamnar i nästa generation och hos dessa utses 70 % av individerna för korsning, 15 % för kopiering och 15 % för mutation. Antal generationer är satt till sex där varje generation innehåller sexton individer. Slutligen är det maximala djupet satt till sex nivåer, vilket dock ändras senare under körningarna. 5HVXOWDWIUnQROLNDN UQLQJDU Från början så kontrolleras systemet så att det även fungerar i praktiken och för detta ändamål används bara toner inom en oktav, inga pseudoackord och endast funktionerna play_two och add_space. Resultatet som de får fram är enligt de själva ganska ostrukturerade melodier som ofta låter rätt illa även om det efter en tre till fyra generationer börjar arta sig hyfsat vad gäller toner i melodin. Systemet har dock åtminstone visat att det fungerar så det är därför naturligt att fortsätta att lägga till även de andra funktionerna för att få mer struktur i melodierna. Tabellen nedan visar just resultatet av en sådan körning och den bästa individ som skapades i denna. Enligt Johanson & Poli blir det nu också mer struktur på melodierna och en jämnare nivå bland individerna även om de bästa tenderar att påminna mycket om varandra. Gen. Nodes Depth Seq. Len. Fitness 3/ Program Tree: (play-two (play-and-mirror B-5) (mirror (play-two (shift-up (playtwo (mirror G-4) (play-and-mirror D-4))) (play-twice (play-two (play-twice F#4) (play-twice (play-two (shift-down A-5) (add-space F#4)))))))) 7DEHOOHQYLVDUGHQElVWDLQGLYLGHQLGHQDQGUDN UQLQJHQGlUDOODIXQNWLRQHUODJWVWLOO Inför nästa körning så begränsas tonerna till C-dur skalan och pseudoackorden läggs till terminalen för att man sedan innan vet att dessa genererar behagliga sekvenser att lyssna till. Nu blir också nästan alla individer överlag trevliga att lyssna till även om de låter mer och mer lika då de nu förlitar sig på pseudoackorden i stor utsträckning.

12 Gen. Nodes Depth Seq. Len. Fitness 4/ Program Tree: (play-and-mirror (shift-down (play-two (play-and-mirror (shiftdown (play-two (shift-up (add-space A-Chord)) (shift-up (addspace A-Chord))))) (shift-up (add-space A-Chord))))) 7DEHOOHQYLVDUElVWDLQGLYLGHQGlUSVHXGRDFNRUGHQODJWVWLOO6RPV\QHVVnDQYlQGHUGHQVLJEDUD DYHWW$GXUDFNRUG Efter att ha känt på hur systemet fungerar så vill nu Johanson & Poli skapa förutsättningar för att träna sitt neurala nätverk och därför genomför de en extra stor körning där de låter systemet jobba över tio generationer med tjugo individer i varje population. Maxdjupet sätts till tolv och till att lyssna och bedöma samtliga sätts en erfaren musiklärare. Sammanlagt utförs en bedömning och ranking av tvåhundra individer som sedan utgör grunden till träningen och testet av det neurala nätet. Den bästa individen de nu får fram anser de hålla den högsta klassen av de dittills genererade musikslingorna, den är nu både längre och mer originell men fortfarande harmonisk. Gen. Nodes Depth Seq. Len. Fitness 9/ Program Tree: (play-twice (play-two (add-space (shift-up (play-two (play-twice (play-and-mirror (shift-down (shift-up D-Chord)))) (play-two (playtwice G-Chord) (mirror F-Chord))))) (play-and-mirror (shift-down (shift-up (play-two (play-twice G-Chord) (mirror F-Chord))))))) 'HQElVWDLQGLYLGHQIUnQN UQLQJDUQDPHGPlQVNOLJILWQHVVIXQNWLRQVSnUSn&'Q Efter att ha fått fram ett nät med relativt bra felmarginaler tränat på hundra exempel, är det dags att testa den automatiska rankaren på GP-Music. Först används samma parametrar som vid framplockningen av träningsexemplen och sedan utökas antal generationer till femtio som körs med både hundra respektive femhundra individer för att testa kapaciteten. Resultatet från de bästa individerna ur respektive körning syns nedan. Gen. Nodes Depth Seq. Len. Fitness 7/ Program Tree: (mirror (shift-up (play-two (shift-down (play-twice (play-twice (mirror (shift-up (play-two (play-and-mirror (play-and-mirror (add-space G-4))) (add-space F-Chord))))))) (shift-up (play-two (play-twice (play-twice (shift-up (play-two (play-and-mirror (play-and-mirror add-space G-4))) (add-space F-Chord))))) (shift-up (shift-down (mirror (mirror (play-twice (mirror (shift-up E2-Chord))))))))))))

13 (IWHUI UVWDN UQLQJHQPHGDXWRUDQNDUHQPHGVDPPDSDUDPHWUDUVRPI UHJnHQGHVSnU Gen. Nodes Depth Seq. Len. Fitness 48/ Program Tree: (play-twice (mirror (play-two (add-space (add-space (add-space E2-Chord))) (play-twice (play-two (add-space E2-Chord) (play-two (add-space (play-two (add-space (mirror RST)) (play-and-mirror G1-Chord))) (mirror (mirror (play-twice (play-and-mirror (shift-down E2-Chord))))))))))) (IWHUHQN UQLQJ YHUIHPWLRLQGLYLGHUPHGKXQGUDSHUJHQHUDWLRQVSnU Gen. Nodes Depth Seq. Len. Fitness 50/ Program Tree: (add-space (shift-up (shift-up (mirror (shift-up (play-two (play-twice (play-two (play-twice (play-twice (play-two E2-Chord RST))) (play-twice E2-Chord))) (mirror (play-and-mirror (add-space (play-two (mirror (addspace C2-Chord)) (play-twice (shift-up E2-Chord)))))))))))) (IWHUHQN UQLQJ YHUIHPWLRLQGLYLGHUPHGIHPKXQGUDSHUJHQHUDWLRQVSnU Deras åsikter om dessa tre bästa individer ur respektive körning är att den första låter OK men inte lika bra som motsvarande med mänsklig bedömning, den andra något sämre och den tredje återigen lite bättre men fortfarande långtifrån de individer genererade inför nätträningen. Svaret till varför musiken nu är sämre ligger kanske i utvärderingen av träning och testning av de neurala näten där resultaten verkade OK överlag men där de även kunde ana att nätverken ibland ger ifrån sig alltför allvarliga felbedömningar som verkar svåra att hitta orsaken till. 8SSKRYVPDNDUQDVXWYlUGHULQJDYV\VWHPHW Sammanfattningsvis anser sig Johanson & Poli ha visat att det går att generera korta melodier med hjälp av GP och att riktigt bra resultat tas fram då en person får agera fitnessfunktion. Samtidigt inser de problemet med tidsåtgången om man vill göra längre körningar och det var därför den automatiska rankningen i form av neurala nätverk infördes. Även om resultaten från dessa inte är fullt lika bra så finns antydningar till att detta kan vara värt att forska vidare på för att utveckla dessa automatiska bedömare ännu mer. Framförallt gäller det att bättre inse hur de delade vikterna fungerar för att optimera samstämmigheten. De föreslår också att ännu mer arbete kan läggas på utformning av terminaler och funktioner samt vad parametrarna ska sättas till. Slutligen poängterar de att datorn kommer att få en aktivare roll inom musikskapande i framtiden.

14 (JQDIXQGHULQJDU 0LQXWYlUGHULQJDY*30XVLF En första reaktion på systemet är att det genom valet av dess terminaler och funktioner nästan försöker tvinga fram trevliga melodier ur systemet. Som de själva kommer fram till så används pseudoackorden flitigt spelandes fram och baklänges och så vidare men då har också systemet begränsats till att förlita sig till dessa pseudoackord. Jag tycker en hel del av kreativiteten försvinner om inte systemet får agera friare. Jag inser att detta dock skulle innebära att större och längre körningar skulle behöva göras och då finns problemet med om en person ska bedöma alla individer. Syftet med GP-Music är kanske inte heller att skapa vackra melodier helt skiljda från varandra, utan verkar ha varit att börja nosa på området och se om det överhuvudtaget är möjligt att skapa bra musik på detta sätt, men det hade helt klart varit mer spännande med mer kreativ musik. Som det är nu känns det inte så fantastiskt att det skapas bra melodier när funktioner och terminaler har valts ut för att öka chansen. Ibland används fler funktioner än nödvändigt och då jobbar man sig bort ifrån målet (Genetic Programming: Banzhaf, Nordin, Keller, Francome, 1998), vilket jag tycker stämmer bra in här. Så fort man börjar fundera på vilka specialfunktioner och terminaler som borde finnas för att systemet ska kunna skapa bra musik så berövar man systemets frihet i att på egen hand komma fram till intressanta musiksekvenser som i längden blir mycket mer spännande och varierande. Jag tror också att man riskerar att spela bort mutationens roll på detta sätt då dessa mutationer så som systemet nu ser ut kommer att generera lite konstigare sekvenser gentemot vad reproduktion och korsning ger. I längden är kanske ändå mutationen just den del av de genetiska operatorerna som skapar den riktiga kreativiteten i systemet (Music ex Machina: Composing 16th-Century Counterpoint with Genetic Programming and Symbiosis: Polito, Daida, Bersano-Begey, 1997). En intressant iakttagelse att göra är att representationen av musik är väldigt avskalad och enkel i detta experiment och trots det så är ändå fitnessfunktionen svår att bemästra. Att välja människan som fitnessfunktion är kanske det ända rätta för hur skulle man med en annan funktion täcka in allt som är bra och dåligt med musik? Det hela är ju helt och hållet en smaksak, det en tycker är bra tycker någon annan är dåligt. Tar man dessutom in alla andra variabler i musiken som inte får plats i detta system kan man tänka sig att bedömningarna blir än mer subjektiva och att hitta en fitnessfunktion som inte är baserat på mänskligt tyckande blir då ännu svårare. Intressant hade dock varit om man såg några generella mönster i vad som är bra musik och vad som är dåligt. Skulle man kunna träna AI-system, till exempel neurala nät, på musik som är allmänt uppfattat som bra och få systemet att känna igen mönster i bra musik? I så fall skulle kanske sådana system kunna utgöra fitnessfunktionen och på så sätt bidra till genereringen av bra musik. En tanke som slår mig är att man skulle kunna dela upp musiken i olika byggstenar för att sedan träna olika neurala nät på respektive område. Ett som har hand om harmonier, ett om produktion och ljudkvalité, ett om melodier och så vidare. Sedan skulle alla dessa neurala nät tillsammans få utgöra fitnessfunktionen. Liknande idéer finns i et annat musikgenererande GP-system kallat Music ex Machina där visserligen inte neurala nät ingår men där musiken delas upp i olika delområden som sedan olika

15 agenter i systemet har hand om (Music ex Machina: Composing 16th-Century Counterpoint with Genetic Programming and Symbiosis: Polito, Daida, Bersano- Begey, 1997). Att dela upp musiken och låta olika agenter ha hand om respektive del för att sedan tillsammans sätta ihop en helhet är ett område som vore intressant att utveckla. Kastar man sig in i detta tycker jag hur som helst man bör vara medveten om hur otroligt komplex musik kan vara och hur svårt det är att säga, även för oss människor, vad det är som gör bra musik till just bra musik. Som låtskrivare och producent har jag själv stor erfarenhet från musikskapande och vet hur svårt det är att sätta fingret på vad som gjorde just den här låten till en bra låt. Ofta är det någon slags magisk helhet av faktorer som melodier, valda ljud, en viss röst och produktion. Men återigen, det kanske finns mönster vi inte själva vet om men som datorer kan hjälpa oss att hitta. Själva idén att använda ett neuralt nät som fitnessfunktion är ett mycket intressant grepp som det bör läggas ner mer forskning på för att utveckla. Skulle man få mer kunskap inom detta område och utveckla kraftfulla och väl fungerande sådana nät så skulle detta kunna appliceras inom mängder av andra områden där problemen är av liknande karaktär, väldigt subjektiva och svårbeskrivna. Som jag var inne på tidigare så är just GP:s svaghet att det är svårt att applicera GP på riktigt komplexa problem ute i verkligheten då fitnessfunktionen blir svår att hantera. Dock är det ett mastigt jobb att bita tag i dessa neurala nät för det måste igen påpekas att komplexiteten i denna representation är väldigt avskalad mot vad den kan vara. Hur skulle indatalagret till ett neuralt nät se ut om all annan information också ska få plats. Kanske som jag nämnde i föregående stycke så måste informationen delas upp i mindre delar. Med rätt metoder är kanske neurala nät tränade på mänsklig bedömning hur som helst just rätt medicin att råda bot på GP:s svaghet! Jag tycker personligen att AI blir som mest spännande när man kan använda olika metoders styrka i samma projekt. Idén med en symbios mellan de båda biologiska grenarna av AI (genetiska och neurobiologiska) är för övrigt inte något helt nytt utan har förekommit även tidigare (se t.ex Neural Network Training using Genetic Algorithms: van Rooij, Jain, Johnson, 1998). Som Johanson & Poli själva nämner finns det också mycket arbete att lägga ner på hur själva GP-algoritmen ska implementeras. Det känns som att de själva valt de grundläggande parametrarna för att kunna komma igång men utan att ha utvärderat närmare om det finns andra sätt att förbättra systemet på. Kan det vara idé med linjär eller grafisk GP? Vilka selektionsmetoder passar? Finns det andra genetiska operatorer som kan förbättra resultatet? $QYlQGQLQJDYIRUVNQLQJVRPUnGHW En fråga viktig att ställa i sammanhanget är vilken glädje man kan ha av att titta på musikskapande i GP-system. Jag har redan varit inne lite på detta i föregående avsnitt där jag talar om nyttan man skulle kunna ha av en liknande teknik för fitnessfunktionen i andra problemområden. Eftersom musik är så komplext tvingas man att skapa nya angripsvinklar vilket leder till en utveckling som kan vara till glädje även i andra domäner. En rent praktisk och kommersiell applikation som man skulle kunna utveckla utifrån liknande system som GP-Music är en hemsida där man kan tanka ner unika

16 ringsignaler genom användandet av ett sådant system. Jag tror folk skulle tycka en sådan applikation vore kul och kanske skulle det även väcka ett intresse för AI vilket ju aldrig kan vara fel. Slutligen vill jag bara påpeka att det finns andra AI-projekt där ute som också tittar på musik och som sista spår på CDn (spår 6 och 7) har jag lagt ett litet smakprov på vad två forskare på Chalmers, Mats Nordahl och Palle Dahlstedt, lyckats skapa med ett ArtificialLife system kallat Living Melodies. De har skapat en hel värld av individer som glider runt, äter, motionerar, lyssnar till musik och om rätt kriterier uppfylls, parar sig med andra individer. Resultatet blir musik och rätt häftig sådan tycker jag. Improvisation på hög nivå, lyssna och njut. (

17 5HIHUHQVHU A J F van Rooij, L C Jain, R P Johnson (1998) Neural Network Training using Genetic Algorithms World Scientific Brad Johanson, Riccardo Poli (1997) GP-Music: An interactive Genetic Programming System for Music Generation with Automated Fitness Raters School of Computer Sciense, The University of Birmingham. John Polito, Jason M. Daida, Tommaso F. Bersano-Begey, (1997) Music ex Machina: Composing 16th-Century Counterpoint with Genetic Programming and Symbiosis Artificial Intelligence Laboratory and Space Physics Research Laboratory, The University of Michigan. Stuart Russel, Peter Norvig Artificial Intelligence: A Modern Approach second edition, Prentice Hall Wolfgang Banzhaf, Peter Nordin, Robert E. Keller, Frank D. Francome (1998) Genetic Programming: An Introduction2QWKH(YROXWLRQRI&RPSXWHU3URJUDPV DQG,WV$SSOLFDWLRQV Morgan Kaufmann Publishers, Inc., dpunkt Verlag für digitale Technologie GmbH Example of a Run of Genetic Programming Seven Differences Between Genetic Programming and Other Approaches to Machine Learning and Artificial Intelligence:

GENETISK PROGRAMMERAD MUSIK OCH

GENETISK PROGRAMMERAD MUSIK OCH GENETISK PROGRAMMERAD MUSIK OCH UTVECKLINGEN AV AUTO FITNESS RATERS Abstract Kan datorer skapa egen musik? Kan datorer lära sig vad som är bra musik? Med hjälp av Genetisk programmering och neurala nät

Läs mer

Genetiskt Programmerad Musik

Genetiskt Programmerad Musik Genetiskt Programmerad Musik Function Set: play_two, add_space, play_twice, shift_up, shift_down, mirror, play_and_mirror Terminal Set: Notes: C-4, C#4, D-4, D#4, E-4, F-4, F#4, G-4, G#4, A-5, A#5, B-5

Läs mer

Föreläsning 3.1: Datastrukturer, en översikt

Föreläsning 3.1: Datastrukturer, en översikt Föreläsning.: Datastrukturer, en översikt Hittills har vi i kursen lagt mycket fokus på algoritmiskt tänkande. Vi har inte egentligen ägna så mycket uppmärksamhet åt det andra som datorprogram också består,

Läs mer

Utvärdering av föräldrakurs hösten 2013

Utvärdering av föräldrakurs hösten 2013 Utvärdering av föräldrakurs hösten 2013 - Har du verktyg för att bemöta din oroliga och nedstämda tonåring? Föräldrakursen oro/nedstämdhet är ett samarbete mellan Råd & stöd, Gamla Uppsala familjeenhet

Läs mer

Det musikaliska hantverket

Det musikaliska hantverket Det musikaliska hantverket Kan jag bli för duktig på mitt instrument för att lovsjunga? Behöver jag öva med bandet innan ett lovsångspass? Lars Ekberg, frilansmusiker och pastor i Göteborg Vineyard, undervisar

Läs mer

Öppen data och vad vi kan vinna på att offentliggöra uppgifter! Formatdag i västerås 2015-11-17 Björn Hagström bjorn.

Öppen data och vad vi kan vinna på att offentliggöra uppgifter! Formatdag i västerås 2015-11-17 Björn Hagström bjorn. Öppen data och vad vi kan vinna på att offentliggöra uppgifter! Formatdag i västerås 2015-11-17 Björn Hagström bjorn.hagstrom@orebrolse Den information vi har är ofta kopplad till personer. Grundregeln

Läs mer

Planeringsspelets mysterier, del 1

Planeringsspelets mysterier, del 1 Peter Lindberg Computer Programmer, Oops AB mailto:peter@oops.se http://oops.se/ 28 februari 2002 Planeringsspelets mysterier, del 1 Om jag ska spela ett sällskapsspel för första gången så vill jag att

Läs mer

Slutrapport för Pacman

Slutrapport för Pacman Slutrapport för Pacman Datum: 2011-05-30 Författare: cb222bj Christoffer Bengtsson 1 Abstrakt Jag har under våren arbetat med ett projekt i kursen Individuellt Mjukvaruutvecklingsprojekt. Målet med mitt

Läs mer

Concept Selection Chaper 7

Concept Selection Chaper 7 Akademin för Innovation, Design och Teknik Concept Selection Chaper 7 KPP306 Produkt och processutveckling Grupp 2 Johannes Carlem Daniel Nordin Tommie Olsson 2012 02 28 Handledare: Rolf Lövgren Inledning

Läs mer

Grundläggande Idéer Algoritmens komponenter Numerisk optimering Genetisk Programmering. Genetiska Algoritmer

Grundläggande Idéer Algoritmens komponenter Numerisk optimering Genetisk Programmering. Genetiska Algoritmer Genetiska Algoritmer 1 Grundläggande Idéer 2 3 4 Exempel Parallell optimering inspirerad av biologisk evolution Parallell optimering inspirerad av biologisk evolution Population av hypoteser Urvalprocess

Läs mer

Tre misstag som äter upp din tid och hur du enkelt gör någonting åt dem. Innehåll. Misstag #1: Önskelistan... 4. Misstag #2: Parkinsons lag...

Tre misstag som äter upp din tid och hur du enkelt gör någonting åt dem. Innehåll. Misstag #1: Önskelistan... 4. Misstag #2: Parkinsons lag... Innehåll Inledning... 3 Misstag #1: Önskelistan... 4 Misstag #2: Parkinsons lag... 7 Misstag #3: E-postfällan... 9 Avslutning... 11 2 Inledning Jag vill inte påstå att dålig tidshantering är en folksjukdom.

Läs mer

Digitalt lärande och programmering i klassrummet

Digitalt lärande och programmering i klassrummet Digitalt lärande och programmering i klassrummet Innehåll Programmering Vad är programmering och varför behövs det? Argument för (och emot) programmering Kort introduktion om programmering Några grundbegrepp

Läs mer

- 1 - 3 Ovanliga Tips till ett Smalare Liv av Seif Fendukly 2012. Alla rättigheter förbehålls.

- 1 - 3 Ovanliga Tips till ett Smalare Liv av Seif Fendukly 2012. Alla rättigheter förbehålls. - 1 - - 2-3 Ovanliga Tips till ett Smalare Liv Av Seif Fendukly Användarvillkor I den här guiden presenterar författaren information om muskler, fysiologi och kostråd. All information presenteras enbart

Läs mer

Hur mäts kunskap bäst? examinationen som inlärningsmoment

Hur mäts kunskap bäst? examinationen som inlärningsmoment Miniprojekt, pedagogisk grundkurs I, vt 2001. Klemens Eriksson, Evolutionsbiologiska institutionen Hur mäts kunskap bäst? examinationen som inlärningsmoment Jag hävdar att kunskapskontrollen är en del

Läs mer

Självkänsla. Här beskriver jag skillnaden på några begrepp som ofta blandas ihop.

Självkänsla. Här beskriver jag skillnaden på några begrepp som ofta blandas ihop. Självkänsla Självkänsla är lika med att bottna i sitt innerst. Självkänslan finns i varje människa och söker plats att få fäste i och växa ur. Vissa ger den utrymme medan vissa inte låter den gro. Det

Läs mer

Hitta kunder som frilansare

Hitta kunder som frilansare Hitta kunder som frilansare Hitta kunder som frilansare 4 Att livnära sig som frilansare, genom att ta långa- eller kortsiktiga uppdrag, är en allt vanligare arbetsform. På Billogram träffar vi många frilansare,

Läs mer

Att ge feedback. Detta är ett verktyg för dig som:

Att ge feedback. Detta är ett verktyg för dig som: Att ge feedback Detta är ett verktyg för dig som: Vill skapa ett målinriktat lärande hos dina medarbetare Vill bli tydligare i din kommunikation som chef Vill skapa tydlighet i dina förväntningar på dina

Läs mer

1DV433 HT13. I vilken utsträckning har kursens innehåll och uppläggning gett förutsättningar för att du ska ha uppnått respektive lärandemål?

1DV433 HT13. I vilken utsträckning har kursens innehåll och uppläggning gett förutsättningar för att du ska ha uppnått respektive lärandemål? 1DV33 HT13 Antal : I vilken utsträckning har kursens innehåll och uppläggning gett förutsättningar för att du ska ha uppnått respektive lärandemål? - ha fått grundläggande kunskaper om strukturerad programmering

Läs mer

OM KRITERIER av Emelie Johnson Vegh och Eva Bertilsson, publicerad i Canis 2004

OM KRITERIER av Emelie Johnson Vegh och Eva Bertilsson, publicerad i Canis 2004 OM KRITERIER av Emelie Johnson Vegh och Eva Bertilsson, publicerad i Canis 2004 Ibland dyker det upp ord som är så fantastiskt användbara och bra att man inte kan begripa hur man någonsin klarat sig utan

Läs mer

En rapport om villkor för bemannings anställda

En rapport om villkor för bemannings anställda www.svensktnaringsliv.se maj 2013 Storgatan 19, 114 82 Stockholm Telefon 08-553 430 00 Är framtiden vår? En rapport om villkor för bemannings anställda på en Kartläggning bland Linné studenter i Kalmar

Läs mer

Föreläsning 4: Poster

Föreläsning 4: Poster Föreläsning 4: Poster Följande är genomgånget: type Person_Type is Namn : String(30); Skonr : Float; Kon : Boolean; Diskussion runt detta med olika typer m.m. Har tagit upp vilka operationer man kan göra

Läs mer

Peter Ottosson 31/8-2012 petott@kth.se Introduktionskurs i datateknik II1310

Peter Ottosson 31/8-2012 petott@kth.se Introduktionskurs i datateknik II1310 KUNGLIGA TEKNISKA HÖGSKOLAN Robotlabb En introduktion till Datateknik 31/8-2012 petott@kth.se Introduktionskurs i datateknik II1310 1 Innehållsförteckning 1. Inledning... 3 1.1 Bakgrund... 3 1.2 Syfte

Läs mer

Skriftlig kommunikation. Att väcka och behålla läsarnas intresse

Skriftlig kommunikation. Att väcka och behålla läsarnas intresse Skriftlig kommunikation Att väcka och behålla läsarnas intresse Verktyg för skrivande! Innehåll! Språk! Struktur! Layout! Vetenskaplighet Innehåll! Det som ska förmedlas! Vad efterfrågas?! Vad förväntas?!

Läs mer

Liten introduktion till akademiskt arbete

Liten introduktion till akademiskt arbete Högskolan Väst, Inst för ekonomi och IT, Avd för medier och design 2013-09-14 Pierre Gander, pierre.gander@hv.se Liten introduktion till akademiskt arbete Den här texten introducerar tankarna bakom akademiskt

Läs mer

NATURVETENSKAP FÖR LIVET?

NATURVETENSKAP FÖR LIVET? NATURVETENSKAP FÖR LIVET? Under terminen kommer din klass att medverka i ett forskningsprojekt. Ni kommer att arbeta med uppgifter som handlar om naturvetenskap och teknik i samhället. Enkäten innehåller

Läs mer

Sammanställning över enkätsvar från föräldrar till förskolebarn i Nynäshamns kommun, 2016.

Sammanställning över enkätsvar från föräldrar till förskolebarn i Nynäshamns kommun, 2016. 2016-05-22 Sammanställning över enkätsvar från föräldrar till förskolebarn i Nynäshamns kommun, 2016. Enkäten avser Språksatsningens bokpåsar. 101 föräldrar har svarat på enkäten. 1. Har du och ditt barn

Läs mer

Recept för rörelse. TEXT Johan Pihlblad. Lena Kallings är medicine doktor och landets främsta expert på fysisk aktivitet på recept.

Recept för rörelse. TEXT Johan Pihlblad. Lena Kallings är medicine doktor och landets främsta expert på fysisk aktivitet på recept. Recept för rörelse Minst hälften av svenska folket rör sig för lite. Forskare varnar för negativa hälsoeffekter och skenande sjukvårdskostnader i en snar framtid. Frågan är vad som går att göra. Fysisk

Läs mer

LYRICUS SAMTAL NR. 1. Att uppleva Helhetens Navigatör

LYRICUS SAMTAL NR. 1. Att uppleva Helhetens Navigatör 1 Swedish Translation LYRICUS DISCOURSES 1 Experiencing the Wholeness Navigator LYRICUS SAMTAL NR. 1 Att uppleva Helhetens Navigatör James, skaparen av WingMakers material, har översatt dessa samtal till

Läs mer

Verktyg för Achievers

Verktyg för Achievers Verktyg för Achievers 2.5. Glöm aldrig vem som kör Bengt Elmén Sothönsgränd 5 123 49 Farsta Tel 08-949871 Fax 08-6040723 http://www.bengtelmen.com mailto:mail@bengtelmen.com Ska man kunna tackla sina problem

Läs mer

ANONYMA TENTAMINA (FÖRDELAR) ÅSIKTSTORG:

ANONYMA TENTAMINA (FÖRDELAR) ÅSIKTSTORG: ANONYMA TENTAMINA (FÖRDELAR) ÅSIKTSTORG: SVAR: 1. En bra lärare kan inte favorisera 2. Kan vara bra för att förminska diskriminering 3. Att man inte kan bli orättvist bedömd 4. Alla blir lika behandlade

Läs mer

Studien. Teknik. Akustik. Enkätundersökning. En kvalitativ, explorativ studie av ett case. Bestående av tre delar:

Studien. Teknik. Akustik. Enkätundersökning. En kvalitativ, explorativ studie av ett case. Bestående av tre delar: Studien En kvalitativ, explorativ studie av ett case Bestående av tre delar: Teknik Akustik Enkätundersökning Redovisning av Enkätsvar: från lyssnare, musiker, anställda Subjektiv hörselstatus Ljudkvalitet

Läs mer

En nybörjarkurs i kritiskt tänkande

En nybörjarkurs i kritiskt tänkande En nybörjarkurs i kritiskt tänkande Jesper Jerkert Andreas Anundi & CJ Åkerberg: Skeptikerskolan. Handbok i kritiskt tänkande. Stockholm: Forum, 2010, 226 s. ISBN 978-91-37-13588-5. Andreas Anundi och

Läs mer

Att skriva Hur utformar man en Social berättelse? Lathund för hur en Social berättelse kan skrivas

Att skriva Hur utformar man en Social berättelse? Lathund för hur en Social berättelse kan skrivas 52 56 57 57 59 59 61 61 63 64 64 65 67 67 76 77 77 79 80 83 86 87 89 91 93 95 Seriesamtalets andra möjligheter Sammanfattning Seriesamtal Sociala berättelser Vad är en Social berättelse? För vilka personer

Läs mer

Storyline Familjen Bilgren

Storyline Familjen Bilgren Storyline Familjen Bilgren Du har valt att jobba med trafik med hjälp av Storyline. Denna Storyline vänder sig till årskurs 4 6 Eleverna får till en början möta familjen Bilgren som bor i Ringstorp. Familjen

Läs mer

1. Att lyssna 1. Titta på den som talar. 2. Tänk på vad som sagts. 3. Vänta på min tur att prata. 4. Säg det jag vill säga. 1.

1. Att lyssna 1. Titta på den som talar. 2. Tänk på vad som sagts. 3. Vänta på min tur att prata. 4. Säg det jag vill säga. 1. 1. Att lyssna 1. Titta på den som talar. 2. Tänk på vad som sagts. 3. Vänta på min tur att prata. 4. Säg det jag vill säga. 1. Att lyssna 1. Titta på den som talar. 2. Tänk på vad som sagts. 3. Vänta på

Läs mer

6-stegsguide för hur du tänker positivt och förblir positiv.

6-stegsguide för hur du tänker positivt och förblir positiv. 6-stegsguide för hur du tänker positivt och förblir positiv Låt oss säga att du vill tänka en positiv tanke, till exempel Jag klarar det här galant. och du vill förbli positiv och fortsätta tänka den här

Läs mer

Real-time requirements for online games

Real-time requirements for online games Real-time requirements for online games En undersökning om protokoll, tekniker och metoder som datorspel använder för att kommunicera över Internet Victor Grape Milad Hemmati Linköpings universitet Linköping

Läs mer

Utvärdering 2015 deltagare Voice Camp

Utvärdering 2015 deltagare Voice Camp Utvärdering 15 deltagare Voice Camp 8 deltagare Har det varit roligt på lägret? (%) 1 8 6 4 1 Ja Nej Varför eller varför inte? - Enkelt, jag älskar att sjunga och det är alltid kul att träffa nya vänner

Läs mer

Brott, straff och normer 3

Brott, straff och normer 3 Brott, straff och normer 3 Vad kan samhället (staten, kommunen, vi tillsammans) göra för att förändra situationen för de grupper som oftare hamnar i kriminalitet? Vad anser du? I uppgiften ska eleven resonera

Läs mer

NATURVETENSKAP FÖR LIVET?

NATURVETENSKAP FÖR LIVET? NATURVETENSKAP FÖR LIVET? Under terminen kommer din klass att medverka i ett forskningsprojekt. Ni kommer att arbeta med uppgifter som handlar om i samhället. Enkäten innehåller frågor om dig och dina

Läs mer

Just nu pågår flera satsningar för att förbättra svenska elevers måluppfyllelse

Just nu pågår flera satsningar för att förbättra svenska elevers måluppfyllelse Andersson, Losand & Bergman Ärlebäck Att uppleva räta linjer och grafer erfarenheter från ett forskningsprojekt Författarna beskriver en undervisningsform där diskussioner och undersökande arbetssätt utgör

Läs mer

Matematik 92MA41 (15hp) Vladimir Tkatjev

Matematik 92MA41 (15hp) Vladimir Tkatjev Matematik 92MA41 (15hp) Vladimir Tkatjev Dagens program Problemlösning i undervisning Vad menas med rika problem? Heuristisk metod: geometriskt ort Problemlösning The question, what is problem solving,

Läs mer

VIDEODAGBOKEN. Individuellt Mjukvaruutvecklingsprojekt. En dagbok i videoform online. Robert Forsgren (rf222ce) UD12 2013-06-05

VIDEODAGBOKEN. Individuellt Mjukvaruutvecklingsprojekt. En dagbok i videoform online. Robert Forsgren (rf222ce) UD12 2013-06-05 VIDEODAGBOKEN En dagbok i videoform online. Individuellt Mjukvaruutvecklingsprojekt Robert Forsgren (rf222ce) UD12 2013-06-05 Abstrakt: Den här rapporten kommer ta upp mitt projekt Videodagboken, en dagbok

Läs mer

Det första steget blir att titta i Svensk MeSH för att se om vi kan hitta några bra engelska termer att ha med oss på sökresan.

Det första steget blir att titta i Svensk MeSH för att se om vi kan hitta några bra engelska termer att ha med oss på sökresan. Sökexempel - Hälsovägledare Hälsovägledning med inriktning mot olika folkhälsoproblem som t ex rökning, tips på hur man går tillväga för att göra en datasökning och hur man även kontrollerar om artiklarna

Läs mer

ditt kommande år 2015 2016

ditt kommande år 2015 2016 ditt kommande år 2015 2016 Årsplanering - Häfte Vad är det här? Det här häftet kommer att hjälpa dig att se tillbaka på året som gått och planera det år du har framför dig. Varför är det bra för mig? Att

Läs mer

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER Matematiska institutionen Optimeringslära TENTAMEN TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER Datum: 28 maj 2014 Tid: 14.00-19.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar

Läs mer

Provivus tips om KONCENTRATION - VAD PEDAGOGEN KAN GÖRA

Provivus tips om KONCENTRATION - VAD PEDAGOGEN KAN GÖRA Provivus tips om KONCENTRATION - VAD PEDAGOGEN KAN GÖRA Det kan vara svårt att räcka till som pedagog. Med en eller flera elever som har behov av särskilt stöd kan man lätt själv känna sig otillräcklig.

Läs mer

Artificiell Musik? AI som kompositör 2001-10-18

Artificiell Musik? AI som kompositör 2001-10-18 Artificiell Intelligens HKGBB0 Kognitionsvetenskapliga programmet, HT 2001 Institutionen för Datavetenskap, Linköpings universitet Artificiell Musik? AI som kompositör 2001-10-18 "Musik ska byggas utav

Läs mer

Hur definieras ett jämställt samhälle? (vad krävs för att nå dit? På vilket sätt har vi ett jämställt/ojämställt samhälle?)

Hur definieras ett jämställt samhälle? (vad krävs för att nå dit? På vilket sätt har vi ett jämställt/ojämställt samhälle?) BILAGA 1 INTERVJUGUIDE Vad är jämställdhet? Hur viktigt är det med jämställdhet? Hur definieras ett jämställt samhälle? (vad krävs för att nå dit? På vilket sätt har vi ett jämställt/ojämställt samhälle?)

Läs mer

Hur kommer man igång?

Hur kommer man igång? Hur kommer man igång? Alla har någon gång varit nybörjare. Här ger Per Alexanderson, lovsångsledare från Örebro, många enkla och praktiska råd för dig som vill komma igång som lovsångsledare och som mer

Läs mer

UMEÅ UNIVERSITET 26 april 2002 Instutionen för datavetenskap. Grafproblem. Laboration 4, Datastrukturer och Algoritmer VT02

UMEÅ UNIVERSITET 26 april 2002 Instutionen för datavetenskap. Grafproblem. Laboration 4, Datastrukturer och Algoritmer VT02 UMEÅ UNIVERSITET 26 april 2002 Instutionen för datavetenskap Grafproblem Laboration 4, Datastrukturer och Algoritmer VT02 Laboration 4 - grafproblem Förpackningsdatum: Denna lab-spec är senast ändrad:

Läs mer

Programmering av stegmotorer ett miniprojekt i samarbete med Svensk Maskinprovning

Programmering av stegmotorer ett miniprojekt i samarbete med Svensk Maskinprovning Programmering av stegmotorer ett miniprojekt i samarbete med Svensk Maskinprovning Daniel Leonardsson dale0010@student.umu.se Kajsa Persson kape0038@student.umu.se I samarbete med Svensk Maskinprovning,

Läs mer

Att komma utanför en storstad ger ro för att fokusera och samla gruppen.

Att komma utanför en storstad ger ro för att fokusera och samla gruppen. 10 steg till att planera en workshop Att organisera en workshop är mycket tidskrävande och det finns många detaljer att hålla reda på, men det kan vara en mycket givande forum och kan användas i många

Läs mer

Träningspaket Sälenfjällen 2014

Träningspaket Sälenfjällen 2014 Träningspaket Sälenfjällen 2014 Allmän information Vid varje kontroll sitter en skärm med kodsiffra eller en orange snitsel med kodsiffra (se bild). Kontrollerna sitter ute under perioden 1 juni - 1 september

Läs mer

Hej läsare. Jämför en vanlig gymnisse med en olympisk styrkelyftare. Hur kan styrkelyftaren lyfta sådana enorma mängder mer? Är hans muskler magiska?

Hej läsare. Jämför en vanlig gymnisse med en olympisk styrkelyftare. Hur kan styrkelyftaren lyfta sådana enorma mängder mer? Är hans muskler magiska? Hej läsare Mitt mål här först är att förklara konceptet maxstyrka. Jag vill att du noga läser igenom det här dokumentet. Gärna flera gånger. Schemat är bara ett schema, men det är när du har förståelsen

Läs mer

Slutrapport YUNSIT.se Portfolio/blogg

Slutrapport YUNSIT.se Portfolio/blogg Slutrapport YUNSIT.se Portfolio/blogg RICKARD HANSSON 2012-06-04 Abstrakt Rapporten du har i din hand kommer handla om mitt projektarbete som jag genomfört under tio veckor för utbildningen Utvecklare

Läs mer

NXT LEGO-robot laboration Programmering och felsökning av en LEGOrobot

NXT LEGO-robot laboration Programmering och felsökning av en LEGOrobot KUNGLIGA TEKNISKA HÖGSKOLAN NXT LEGO-robot laboration Programmering och felsökning av en LEGOrobot Gabriel Vilén 30/8-2012 gvilen@kth.se Introduktionskurs i datateknik II1310 Sammanfattning Vi har programmerat

Läs mer

Kristet Sällskapande Stefan Forsbäck 2007

Kristet Sällskapande Stefan Forsbäck 2007 Kristet Sällskapande Stefan Forsbäck 2007 INLEDNING Kärlek är något underbart! Säkert det finaste vi kan uppleva! Vi längtar alla efter att vara riktigt älskade och få bli överösta av någons uppmärksamhet.

Läs mer

Tärna Folkhögskola 2010-06-03 IT-pedagogutbildningen Individuellt fördjupningsarbete Vt 2010 2010-06-03 IT I FÖRSKOLAN. Författare:Tove Andersson

Tärna Folkhögskola 2010-06-03 IT-pedagogutbildningen Individuellt fördjupningsarbete Vt 2010 2010-06-03 IT I FÖRSKOLAN. Författare:Tove Andersson Tärna Folkhögskola 2010-06-03 IT-pedagogutbildningen Individuellt fördjupningsarbete Vt 2010 2010-06-03 IT I FÖRSKOLAN Författare:Tove Andersson Innehåll Inledning:... 2 Syfte:... 2 Frågeställningar:...

Läs mer

Roligaste Sommarjobbet 2014

Roligaste Sommarjobbet 2014 Roligaste Sommarjobbet Q Vilket program har du deltagit i? Svarade: Hoppade över: RS Nacka sv al RS Arboga/Köping/Kungsör RS Avesta RS Enköping RS Falun RS Heby RS Håbo RS Mora RS Nacka RS Sigtuna RS Skövde

Läs mer

Copyright 2007 Human Excellence, all rights reserved

Copyright 2007 Human Excellence, all rights reserved Copyright 2007 Human Excellence, all rights reserved Personligt Mästerskap - Träningsjournal. Samtliga åtta program som ingår i Personligt Mästerskap är cirka 20 minuter långa. De innehåller alla samma

Läs mer

Enkätsvar 2013. Fler kvinnor. Enkätsvar 2013 Kyrkans Familjerådgivning Stockholm

Enkätsvar 2013. Fler kvinnor. Enkätsvar 2013 Kyrkans Familjerådgivning Stockholm Enkätsvar 13 Kyrkans Familjerådgivning Stockholm Enkätsvar 13 Under en fyraveckorsperiod, 25/2 till22/3 13, bad vi våra besökare på mottagningarna i Stockholm och Handen att fylla i och svara på en brukarenkät.

Läs mer

LEGO Mindstorm-robot

LEGO Mindstorm-robot KUNGLIGA TEKNISKA HÖGSKOLAN LEGO Mindstorm-robot Programmering av LEGO Mindstorm-robot i språket NXC Kim Hammar 2/6-2013 Kimham@kth.se Introduktionskurs i Datateknik 1311 Sammanfattning En viktig del av

Läs mer

Grunderna i stegkodsprogrammering

Grunderna i stegkodsprogrammering Kapitel 1 Grunderna i stegkodsprogrammering Följande bilaga innehåller grunderna i stegkodsprogrammering i den form som används under kursen. Vi kommer att kort diskutera olika datatyper, villkor, operationer

Läs mer

Inför föreställningen

Inför föreställningen LÄRARHANDLEDNING Tage Granit 2008 Inför föreställningen Förberedelser Innan man går med sina elever på teater är det alltid bra att prata igenom om hur det är att gå på teater och hur man uppför sig. Orka

Läs mer

hh.se/studentsupport goda råd för en hållbar studietid Studentsupport

hh.se/studentsupport goda råd för en hållbar studietid Studentsupport hh.se/studentsupport goda råd för en hållbar studietid Studentsupport Till dig som är student Studietiden är för många en fantastisk tid med frihet, möjligheter och inspiration. Samtidigt innebär det ett

Läs mer

Positiv Ridning Systemet Arbetar min häst korrekt? Av Henrik Johansen

Positiv Ridning Systemet Arbetar min häst korrekt? Av Henrik Johansen Positiv Ridning Systemet Arbetar min häst korrekt? Av Henrik Johansen Detta test på hur din häst arbetar tar ca tre minuter och bör ingå i uppvärmningen varje dag. Du måste veta vad du vill när du sitter

Läs mer

LEGO Robot programmering och felsökning Hur svårt ska det vara att följa den svarta linjen?

LEGO Robot programmering och felsökning Hur svårt ska det vara att följa den svarta linjen? ICT LEGO Robot programmering och felsökning Hur svårt ska det vara att följa den svarta linjen? Daniel Lindfors 12/9/07 dlindf@kth.se Introduktionskurs i datateknik II1310 Sammanfattning Denna laboration

Läs mer

1. (första söndagen i månaden: arbetsmöte) Anonyma Sexmissbrukares Stockholmsmöte söndagar 18.00 19.30, Hartwickska huset, St Paulsgatan 39.

1. (första söndagen i månaden: arbetsmöte) Anonyma Sexmissbrukares Stockholmsmöte söndagar 18.00 19.30, Hartwickska huset, St Paulsgatan 39. 1. (första söndagen i månaden: arbetsmöte) Anonyma Sexmissbrukares Stockholmsmöte söndagar 18.00 19.30, Hartwickska huset, St Paulsgatan 39. 1. Välkomna till Sex Addicts Anonymous och mötet From Shame

Läs mer

Tentamen: Programutveckling ht 2015

Tentamen: Programutveckling ht 2015 Tentamen: Programutveckling ht 2015 Datum: 2015-11-04 Tid: 09:00-13:00 Sal: Ansvarig: Resultat: Hjälpmedel: Maxpoäng: Betygsgränser: Anslås inom 3 veckor. Inga 40 p 20 p för G, 32 p för VG. Iakttag följande:

Läs mer

Genetiska algoritmer. Henrik Hansson (hhn00001@student.mdh.se) Rapport, CDT212 Mälardalens Högskola

Genetiska algoritmer. Henrik Hansson (hhn00001@student.mdh.se) Rapport, CDT212 Mälardalens Högskola Genetiska algoritmer Henrik Hansson (hhn00001@student.mdh.se) Rapport, CDT212 Mälardalens Högskola 1 Sammanfattning Genetiska algoritmer har rötter i 60-talet och efterliknar evolutionsteorin på så sätt

Läs mer

Integrering av formgivningsprocessen i en produktutvecklingsprocess

Integrering av formgivningsprocessen i en produktutvecklingsprocess Integrering av formgivningsprocessen i en produktutvecklingsprocess KN3060 Produktutveckling med formgivning Mälardalens Högskola INPRE 4 2006-04-24 Index Inledning... 2 Den klassiska PU-processen... 2

Läs mer

SkövdeNät Nöjd Kund Analys

SkövdeNät Nöjd Kund Analys SkövdeNät Nöjd Kund Analys Kvartal 1-2015 med jämförande index 2006, 2008, 2010, 2012 Välkommen till en spännande värld av marknadsutveckling! Mätningens uppbyggnad Bas: Antal intervjuer: 303 N=Mätningens

Läs mer

kapitel 4 en annan värld

kapitel 4 en annan värld Hej! kapitel 1-hej Jag heter Amy. Jag är 10 år gammal. Jag har brunt hår och gröna ögon. Jag har bott här i Sverige i snart 1 månad. Innan jag flyttade hit var mitt liv som vanligt. Just nu är min mamma

Läs mer

Föreläsning 6: Introduktion av listor

Föreläsning 6: Introduktion av listor Föreläsning 6: Introduktion av listor Med hjälp av pekare kan man bygga upp datastrukturer på olika sätt. Bland annat kan man bygga upp listor bestående av någon typ av data. Begreppet lista bör förklaras.

Läs mer

Välkommen till Övertygande Kommunikation

Välkommen till Övertygande Kommunikation Välkommen till Övertygande Kommunikation Urban Gavelin/Henrik Mannerstråle Hur vår hjärna kodar språket Om man är stark måste man vara snäll Använd vassa vapen med försiktighet För att fungera måste detta

Läs mer

ETT ÅR MED DIN TRÄNING

ETT ÅR MED DIN TRÄNING ETT ÅR MED DIN TRÄNING Bli både större, starkare & snyggare till nästa sommar! TEXT: JOACHIM BARTOLL FOTO: JASON MATHAS Sommaren är över och de flesta av oss ser höst och vinter som en utmärkt tid att

Läs mer

Genetisk programmering i Othello

Genetisk programmering i Othello LINKÖPINGS UNIVERSITET Första versionen Fördjupningsuppgift i kursen 729G11 2009-10-09 Genetisk programmering i Othello Kerstin Johansson kerjo104@student.liu.se Innehållsförteckning 1. Inledning... 1

Läs mer

Studio Ett den 12 december: Svensk film med svensk textning

Studio Ett den 12 december: Svensk film med svensk textning Studio Ett den 12 december: Svensk film med svensk textning Jan-Peter Strömgren, förbundsordförande på Hörselskadades Riksförbund (HRF) och Kay Pollak, filmregissör, känd för bland annat "Så som i himmelen",

Läs mer

Fortsättningskurs i programmering F 2. Algoritmer i Programutveckling Hugo Quisbert 20130122. Problemexempel 1

Fortsättningskurs i programmering F 2. Algoritmer i Programutveckling Hugo Quisbert 20130122. Problemexempel 1 Fortsättningskurs i programmering F 2 Algoritmer i Programutveckling Hugo Quisbert 20130122 1 Exempel 1 Problemexempel 1 En souvenirbutik behöver ett datorprogram som omvandlar ett pris i svenska kronor

Läs mer

Att överbrygga den digitala klyftan

Att överbrygga den digitala klyftan Det finns många grupper som behöver nås i arbetet med att överbrygga den digitala klyftan. En av dessa är de invandrare som kommer till vårt land. Monica Öhrn Johansson på Karlskoga folkhögskola möter

Läs mer

I PRAKTIKEN» Teamet i fokus

I PRAKTIKEN» Teamet i fokus I PRAKTIKEN» Teamet i fokus Större rörlighet, otydliga gränser och större avstånd både geografiskt och kulturellt. Att arbeta i team blir allt vanligare och samtidigt mer komplext. Ikea har tagit ett grepp

Läs mer

1. Bekräftelsebehov eller självacceptans

1. Bekräftelsebehov eller självacceptans 1. Bekräftelsebehov eller självacceptans Jag behöver kärlek och bekräftelse från människor som känns viktiga för mig och jag måste till varje pris undvika avvisande eller nedvärdering från andra. Jag gillar

Läs mer

GYMKEEPER ANDREAS SÖDERSTRÖM

GYMKEEPER ANDREAS SÖDERSTRÖM GYMKEEPER ANDREAS SÖDERSTRÖM 20120529 ABSTRAKT En post mortem på mitt ios-projekt. Utmaningen låg i att under 10 veckors tid sätta sig in i en plattform och programspråk jag aldrig använt förut. Jag har

Läs mer

============================================================================

============================================================================ Begränsat/avdelat nätverk Postad av Marcus - 31 jul 2015 17:26 Hejsan! Har en ADLS anslutning och kombinerat modem/router idag, men vill ha en anslutning på en av Ethernet portarna som har tillgång till

Läs mer

Brukarenkät IFO 2011. Kvalitetsrapport 2011:01 KVALITETSRAPPORT

Brukarenkät IFO 2011. Kvalitetsrapport 2011:01 KVALITETSRAPPORT Brukarenkät IFO 2011 Kvalitetsrapport 2011:01 KVALITETSRAPPORT Sammanställningen av enkätresultatet visar att förvaltningen totalt sett ligger högt på nöjdhetsskalan i alla frågeområdena. Speciellt glädjande

Läs mer

Efter att ha arbetat med det här kapitlet bör du

Efter att ha arbetat med det här kapitlet bör du 6 Efter att ha arbetat med det här kapitlet bör du > veta något om hur mycket och på vilket sätt du ska träna > kunna skilja på träning för uthållighet, styrka och rörlighet > förstå uppvärmningens betydelse

Läs mer

Åtgärdsprogram och lärares synsätt

Åtgärdsprogram och lärares synsätt SKOLPORTENS NUMRERADE ARTIKELSERIE FÖR UTVECKLINGSARBETE I SKOLAN Åtgärdsprogram och lärares synsätt En kartläggning av problem och möjligheter i arbetet med att upprätta åtgärdsprogram i en högstadieskola

Läs mer

Språkäventyret. Mål. Verktyg. Inledande arbete

Språkäventyret. Mål. Verktyg. Inledande arbete Språkäventyret Mål Sammanfatta hur jag gjorde spelet Språkäventyret på Fronter. Verktyg Fronters provverktyg Inledande arbete Fundera över dessa saker innan du börjar: 1. Vilken del av det centrala innehållet

Läs mer

Djuretik. Vetenskap, politik, strategi. moralfrågan. Indirekta vs direkta skäl

Djuretik. Vetenskap, politik, strategi. moralfrågan. Indirekta vs direkta skäl Djuretik Henrik Ahlenius, Filosofiska institutionen LIME, Karolinska institutet Vetenskap, politik, strategi Vilken betydelse har djurförsök för vetenskapens framåtskridande? Vilka regler bör omgärda användningen

Läs mer

ÖKA DIN SOCIALA KOMPETENS. På en timme

ÖKA DIN SOCIALA KOMPETENS. På en timme ÖKA DIN SOCIALA KOMPETENS På en timme Henrik Fexeus Tidigare utgivning Konsten att läsa tankar När du gör som jag vill Alla får ligga Konsten att få mentala superkrafter Bokförlaget Forum, Box 3159, 103

Läs mer

PiteåPanelen. Rapport 8. Vinterväghållning. April 2010. Anna Lena Pogulis Kommunledningskontoret

PiteåPanelen. Rapport 8. Vinterväghållning. April 2010. Anna Lena Pogulis Kommunledningskontoret PiteåPanelen Rapport 8 Vinterväghållning April 2010 Anna Lena Pogulis Kommunledningskontoret 1.0 Svarsfrekvens Det är 89 personer 60 % av panelen som svarat deltagit i frågor kring vinterväghållning. Av

Läs mer

Ledarskap Utbildning & bildning Matematik

Ledarskap Utbildning & bildning Matematik Ledarskap Utbildning & bildning Matematik Sju rektorer samtalar under fem dagar Dialogseminarieserien Olika former för kunskap Veta att (teoretisk, vetenskaplig kunskap, veta att-satser) Veta hur (färdighet,

Läs mer

Låtskrivarboken. Monica Welander. Hands Up Music. Innehåll:

Låtskrivarboken. Monica Welander. Hands Up Music. Innehåll: Låtskrivarboken Innehåll: Låtskrivaren 7 Varför göra låtar 11 Vad är en låt? 17 Melodi, Text och Rytm 23 Låtarnas struktur 33 Verktygslådan 41 Mer verktyg 47 Mall för en tre-ackordslåt 54 Övning: tt skriva

Läs mer

Kursutvärdering. Samhällskunskap A

Kursutvärdering. Samhällskunskap A Samhällskunskap A Läsåret 9-1 Läsåret 9-1 8 6 4 Mycket bra Bra Dåligt Mycket dåligt EAS 1. Mitt första inryck av denna kurs var: Mycket bra 6 29 Bra 14 67 Dåligt 1 5 Mycket dåligt - - Antal EAS:. Antal

Läs mer

VIMENTIS VIP. FÖR STARTUPS & SMÅFÖRETAGARE Med hjälp utav Vimentis VIP kommer en helt ny värld att öppnas upp för dig som företagare.

VIMENTIS VIP. FÖR STARTUPS & SMÅFÖRETAGARE Med hjälp utav Vimentis VIP kommer en helt ny värld att öppnas upp för dig som företagare. FÖR STARTUPS & SMÅFÖRETAGARE Med hjälp utav Vimentis VIP kommer en helt ny värld att öppnas upp för dig som företagare. VIMENTIS VIP Tillväxtprogram med fokus på försäljning Med Vimentis VIP blir försäljningen

Läs mer

Finns det en skillnad mellan vad barn tror sig om att klara jämfört med vad de faktiskt klarar?

Finns det en skillnad mellan vad barn tror sig om att klara jämfört med vad de faktiskt klarar? Praktiknära forskning inom ämnet idrott och hälsa Rapport nr. 3: 2006 Finns det en skillnad mellan vad barn tror sig om att klara jämfört med vad de faktiskt klarar? En studie kring barns självvärderingar

Läs mer

ÄMNESPLANENS STRUKTUR. Progressionstabellen

ÄMNESPLANENS STRUKTUR. Progressionstabellen Progressionstabellen Nivåerna för betygsstegen E, C och A i kunskapskraven är formulerade med hjälp av en progressionstabell. Progressionstabellen är utgångspunkt för kunskapskraven i samtliga kurser för

Läs mer

Tvärtom Hur du vinner framgång, blir lycklig och rik genom att göra precis tvärtom

Tvärtom Hur du vinner framgång, blir lycklig och rik genom att göra precis tvärtom Boksammanfattning Tvärtom Hur du vinner framgång, blir lycklig och rik genom att göra precis tvärtom Tvärtom är skriven för dig som vill bli en vinnare i dina egna ögon, säger författaren Max Söderpalm

Läs mer

Att fånga bedömningar i flykten

Att fånga bedömningar i flykten Att fånga bedömningar i flykten ATT BJUDA IN ELEVER TILL MATEMATIK (ELLER INTE) LISA BJÖRKLUND BOISTRUP Föreläsningens struktur Tidigare forskning om kommunikation ur ett bedömningsperspektiv Kommunfinansierad

Läs mer