DATA MINING! Hitta dolda mönster i stora mängder data!! Johan Rittfeldt
|
|
- Maj Pålsson
- för 7 år sedan
- Visningar:
Transkript
1 DATA MINING Hitta dolda mönster i stora mängder data Johan Rittfeldt
2
3 INNEHÅLLSFÖRTECKNING Introduktion... 1 Omfång... 1 Data Mining... 2 Definition... 2 Bakgrund... 2 Användningsområden... 2 Knowlede discovery... 3 Data mining med ID3 och C Utveckling av algoritmen... 4 Konstruktion av beslutsträd... 5 Numeriska attribut Uteblivna värden Beskärning Slutord Referenser... 14
4 Introduktion Fångade i en tidsera där allt lagras digitalt finns en expanderande marknad för allt större databaser då fler människor kopplas upp och var individ tycks generera allt mer data. Ny data skapas i samband med att vi upprättar medlemskonto på en webbplats, handlar på kreditkortet, ringer med telefonen eller kanske tittar på videoklipp på youtube. Lagringsdensiteten på hårddiskarna ökar i takt med att priset reduceras, och nya lagringstekniker banar väg för nya produkter och användningsområden som ytterligare bidrar till en allt större mängd data. Men vad ska vi med all information till? Många företag har fått upp ögonen för den ekonomiska aspekten med data mining. I dessa enorma mängder data ligger nämligen vanor, beteenden, mönster och indikatorer på våra intressen. Att kunna extrahera användbar information av sådan typ är viktigt för många företag som strävar efter ett högre kundfokus på en konkurrensstark marknad. Givetvis är det också andra användningsområden än rent ekonomiska, det kan handla om att ställa medicinska prognoser eller som beslutshjälp vid produktdesign (Bramer, 2007). Det är inget nytt med att söka efter mönster. Det ligger i människans natur och är något vi gjort sedan urminnes tider. Jägare söker mönster i djurens vandringsbeteende, bönder efter grödornas påverkas av olika faktorer, politiker i opinionssiffror och älskare i sin partners respons. Vad som är nytt är ökade möjligheter för att hitta mönster i en allt mer komplex värld som i det närmsta svämmar över i data. Men i takt med att databaserna sväller ökar också möjligheterna för data mining där det blir det enda hoppet för att lyfta fram dolda mönster. Omfång Avsikten med uppsatsen är att ge en inblick i vad data mining innebär, dess nytta, hur det fungerar samt ge en djupare förklaring hur algoritmen ID3 är konstruerad och hur den skiljer sig mot senare versioner som C4.5. 1
5 Data Mining Definition Data Mining definieras som processen att upptäcka mönster i data. Processen måste vara automatisk eller (mer vanligtvis) semiautomatisk. Mönstren måste vara meningsfulla på så sätt att de leder till en fördel. Denna är ofta av ekonomisk karaktär, antingen direkt eller indirekt. Datan består undantagslöst av omfattande kvantiteter (Cox, 2008; Ian Witten 2011). Det finns två ytterligheter för hur mönster kan uttryckas; prediktivt eller deskriptivt. Vad som skiljer dem åt är framför allt huruvida beslutsstrukturen kan undersökas och resoneras kring i syfte av framtida beslut. Riktad data mining är en top-down strategi som används när man vet vad man söker efter. Den är i regel av prediktivt slag, där man vet exakt vad man önskar förutspå. Oriktad data mining är omvänt en bottom-up-strategi där man låter datan tala för sig själv. Modellen hittar mönster i datan och det är upp till användaren att avgöra om mönstren är av någon vikt (Berry & Linoff, 2000). Bakgrund Data mining började utvecklas redan på 1980-talet, men det var en långsamtgående process och under 90-talet var principen fortfarande objekt för definiering och förfining (Matthew North, 2012). Första boken om data mining skrevs 1991 av Piatetsky-Shapiro and Frawley. Men även om begreppet myntades på 90-talet så härstammar tekniken från andra områden, varav vissa är betydligt äldre. Data mining har rötter från framför allt klassisk statistik, artificiell intelligens och maskininlärning. Inom data mining används exempelvis statistiska metoder så som regressionsanalys, standardavvikelse standarddistribution, konfidensintervall med flera. Detta i syfte att studera relationer i datan. Användningsområden Sökandet efter mönster kan handla om att man önskar kunna exponera kunder för reklam som är anpassade till sin profil, ställa finansiella prognoser eller förutspå antal tv-tittare för 2
6 ett program. Men det är andra fördelar än bara direkt ekonomiska. Det kan handla om medicinska prognoser som att förutspå risken för återfall av bröstcancer eller att upptäcka kortbedrägerier och mycket annat (Bramer, 2007). Knowlede discovery Knowledge Discovery in Databases och data mining används ibland synonymt. Enligt Bramer (2007) kan KDD definieras som icke-trivial extrahering av tidigare okänd implicit och potentiellt användbar information från data. Data mining är här bara en del i processen, om så en central sådan, och kan ses som en applikation där en specifik algoritm extraherar mönster baserad på KDD-processens övergripande mål. Figur 1. Knowledge Discovery process Figur 1 visar ett typiskt flödesschema för hur knowledge discovery processen kan se ut. Data samlas in från diverse källor. Det kan exempelvis vara från marknadsavdelningen, försäljning eller externa källor. Ofta kommer informationen i olika format och integreras därför till ett enhetligt standardformat som gör den direkt jämförbar. Sedan flyttas datan över till en permanent lagringsplats, en så kallad data store - ofta mer benämnt som data warehouse. Datan kan här vid behov delas in i data marts/sub-avdelning i syfte att öka prestanda och förenkla användandet beroende på vilken domän man vill applicera den på. Det är framförallt när databaserna börjar svälla och bli allt mer komplexa som data marts blir aktuella (Wikipedia, data mining). I nästa steg i processen väljs aktuell data för analys 3
7 ut och anpassas till format hanterbart av data mining algoritmerna. Outputen producerar regler eller andra sorts mönster som så tolkas för knowledge discovery - det vill säga potentiell användbar och ny kunskap Data mining med ID3 och C4.5 Utveckling av algoritmen Några år efter sin doktorsexamen i datavetenskap startade Ross Quinlan på tidigt 1970-tal arbeta på ett program för beslutsträd. Först ut var ett enkelt system ID3 (Iterative Dichotomiser 3) som bäst hanterade attribut med nominalvärden. Arbetet pågick i två decennier och har sedemera resulterat i algoritmen C4.5 som släpptes öppet komplett med källkod och beskrivning i början av 90-talet. Vad denna klarade som ID3 inte var kapabel till var främst numeriska attribut, uteblivna värden och beskärning av beslutsträd. Den sistnämnda syftar till att åtgärda problemet med att testdata ofta producerar klassificerare som passar testdatan för tight och alltså generaliserar dåligt. För att algoritmen skulle vara användbar på riktig data så var dessa tre krav ett måste. C4.5-algoritmen med sina varianter är idag en av de mest vanligen förekommande inom data mining. Senare versioner som C5.0 har blivit en kommersiell produkt. C5.0 liksom C4.5 tycks båda producera högst likartade resultat, men fokus vid utvecklingen till den senare versionen har framför allt varit kring prestanda för att snabba upp systemet och göra det mer minneseffektivt med hjälp av olika tekniker. Enligt RuleQuest (2012) ska den även klara producera avsevärt mindre träd. Flera varianter av C4.5 finns idag på marknaden, så som exempelvis J4.8 som är data mining-programmet Wekas implementation av algoritmen. Den bygger på den sista öppna versionen C4.8 revision 8 innan den kommersiella versionen släpptes. J:et i namnet kommer från att den är skriven i Java, och finns därmed tillgänglig för alla vanliga plattformar idag (Hwitten, 2011). 4
8 Konstruktion av beslutsträd Metoden är beskriven utifrån Witten (2011) och går till enligt följande princip. Först väljs ett attribut att placera som rotnod, sen förgrenas vart enskild möjligt värde. Därefter upprepas processen rekursivt för var gren med endast de instanserna som når den aktuella grenen. Om vid något tillfälle alla instanser har samma klassificering vid en nod så slutar utvecklingen av den delen av trädet. Det som återstår nu är att avgöra vilket attribut som ska splittas utifrån givet set av olika klasser. Nedan presenteras exempeldata där olika väderfaktorer (attribut) avgör huruvida det blir någon lek eller inte. Tabell 1. Weather Data 5
9 Figur 2. Stubbar för weather data: (a) outlook, (b) temprature, (c) humidity och (d) windy. Figur 2 visar resultatet, antal yes och no, av en splitt för respektive attribut. De löven som bara innehåller en klass, det vill säga bara yes eller bara no i väderexemplet kommer inte splittas vidare och den rekursiva processen upphör vidare ner i grenen. Löv med bara en klass är vad man eftersträvar eftersom det resulterar i renare noder som alltså resulterar i högre precision i beslutsträdet. Denna renhet är vad man räknar på för att välja det attribut som producerar renast subnoder. Måttsenheten för renheten kallas för information anges i 6
10 bits - ej att förväxla med minnesenheten bit(s) för datorer som bara kan ha ett av två värden, vanligen 1 eller 0. Var nod associeras med en den mängd information som skulle krävas för att klassificera en ny instans som yes eller no, förutsatt att instansen förgrenar sig ner till den noden. Beräkningen startar med att respektive klasser [yes, no] summeras per lövnod. I Figur 2(a) resulterar det i: [2, 3], [4, 0] samt [3, 2]. Informationsvärdet beräknas utifrån formeln för entropi. entropy(p1, p2,, pn) = p1 log p1 p2 log p2 pn log pn info([2, 3]) = entropi(2/5, 3/5) info([2,3]) = 2/5 log2/5 3/5 log3/5 = 0.971bits info([2, 3]) = bits - Sedan samma beräkning för de andra lövnoderna: info([4, 0]) = 0.0 bits info([3, 2]) = bits - Om antingen yes eller no är noll, så blir informationen noll. Nästa steg är att beräkna ett snitt på informationsvärdet av dessa. Det snittet representerar den mängd information som förväntas krävas för att specificera klassen av en ny instans, givet strukturen man utgår från. snitt info([2, 3], [4, 0], [3, 2]) = (5/14) (4/14) 0 + (5/14) = bits Innan några ytterligare trädstrukturer skapas består rotnoden Figur 2(a) av nio yes- och fem no-noder. Detta innebär ett informationsvärde på: info([9, 5]) = bits 7
11 Därmed kan Figur 2(a)s informationsvinst beräknas genom att subtrahera lövens genomsnittliga informationsvärde från rotnodens informationsvärde på följande vis. gain(outlook) = info([9, 5]) info([2, 3], [4, 0], [3, 2]) = = bits Samma procedur genomförs på resterande attribut och resulterar sedan i nedan informationsvinst. gain(outlook) = bits gain(temperature) = bits gain(humidity) = bits gain(windy) = bits Som synes resulterar outlook i störst informationsvinst. Därför utgår härefter beslutsträdet med den som rot. Proceduren fortsätter rekursivt med att försöka splitta de övriga attributen under roten enligt samma princip som innan. 8
12 Figur 3. Expanderade stubbar för weather data. Informationsvinsten för de tre kvarstående attributen: gain(temperature) = bits gain(humidity) = bits gain(windy) = bits 9
13 Därav kan vi välja humidity som nästa sub-nod till outlook då den ger mest fördelaktigt informationsvärde. Och eftersom den har enhetliga klasser i löven så krävs ingen vidare splitt på grenen. I ett idealfall for fortsätter processen på samma vis med alla attributen tills löven är rena och ingen mer splitt behövs. Går inte detta att uppnå fortsätter man tills splitt inte längre är möjlig att genomföra eller när informationsvinsten är noll. Figur 4. Komplett beslutsträd för weather data Numeriska attribut Nedan följer en variant på Tabell 1 där det i stället för nominalvärden används numeriska värden för att, som i detta fallet, beskriva temperatur. Detta är alltså något som ID3 inte hanterar men dock C4.5. Innan en två-splitt eller så kallad binär-splitt genomförs rangordnas värdena. Det finns även andra metoder som exempelvis en tre-split, men nedan följer metoden för en ordinär två-vägs/binärsplit (Witten, 2011). 10
14 Tabell 2. weather temperature. Utmaningen ovan är att hitta vid vilket värde splitten ska ske. Det finns 11 potentiella skärpunkter. Informationsvinsten beräknas på samma vis som tidigare. Det innebär att om vi försöker bryta i mitten, vilket är var man ofta sätter tröskelvärdet, där temperature < 71,5 resulterar i fyra yes och två no liksom temperature > 71,5 ger fem yes och tre no. Informationsvärdet beräknas därmed enligt: info([4, 2], [5, 3]) = (6/14) info([4, 2]) + (8/14) info([5, 3]) = bits Efter det mest förmånliga attributet för splitt valts, skapas en rotnod som splittar attributet och algoritmen fortsätter rekursivt på sub-noderna på samma vis som beskrivet för ID3- algoritmen. Att splitta numeriska värden på binärt innebär att man inte nödvändigtvis nyttjat all information den erbjuder till skillnad mot när vi har splittat nominalvärden. Fortsätter man splitta numeriska värden i fler nivåer resulterar det lätt i svårtolkade komplexa träd. Ett kraftfullt alternativ till binärsplit, i syfte att skapa ett enklare träd, är att testa fler olika konstanter mot de numeriska attributen och på så vis hitta en lämpligare splitt än nödvändigtvis på mitten. Uteblivna värden En vidareutveckling av ID3-algoritmen blev en nödvändighet för att också klara handskas med uteblivna värden. I riktiga databaser kan nämligen värden saknas av diverse anledningar, det kan vara felaktiga data som tagits bort, de kan ha försvunnit eller helt enkelt fattas av helt andra orsaker. Det är som regel mindre lämpligt att bara ignorera alla 11
15 instanser som saknar värden då de ofta kan innehålla mycket övrig användbar information. Ibland spelar attributen med saknade värden ingen roll i beslutet och då är instanserna givetvis varken bättre eller sämre än några andra. En av flera möjliga lösningar på bekymret är att hantera saknade värden som ett annat möjligt värde på attributet, exempelvis i tillägg till temperature < 71,5 och temperature > 71,5 kan det kompletteras med ett frågetecken,?, för att symbolisera saknat värde. Det skapar då en tredje gren. Detta är lämpligt om attributet som saknas är signifikant på något vis. Då behöver ingen vidare åtgärd tas. Men om det inte finns någon särskild signifikans i det faktum att en viss instans har ett saknat attributvärde, krävs en mer sofistikerad lösning. En alternativ enkel lösning till ovan är att se till till antalet element i träningsdatan som går ner i respektive gren och låta den mest populära grenen styra var instansen går ner när ett värde saknas. En mer raffinerad lösning är att använda så kallade viktscheman. Man delar då upp instanserna i delar och skickar ner element i var gren och vidare till löven av involverade subträd. För att göra splitten viktas var gren mellan 0 och 1. Vikten är proportionell till antalet instanser från tränings-settet som går ner i aktuell gren. Summan av vikterna på grenarna ska bli samma som av parent-noden. Med andra ord så blir de 1 i top-noden. En viktad instans kan splittas vidare till ytterligare sub-noder med samma regler tills de når ett löv. När respektive del av instansen nått sina löv-noder måste de återförenas utifrån vikterna som har föranlett till löven. Beräkningar på informationsvinsten och informationsration kan också tillämpas på delar av instanser, och kan därmed nyttja de beräkningsmodeller för klassificering som nämnts tidigare (Witten, 2011). Beskärning Ett fullt expanderat beslutsträd har ofta en onödigt komplex struktur, varför man introducerat beskärning för att göra det enklare och kompaktare. Två tillvägagångssätt finns möjliga; prepuning eller postpruning som alltså innebär för- eller efterbeskäring av trädet. 12
16 Postpruning erbjuder vissa fördelar som gör den till den mest använda, även om de bägge har sina för- och nackdelar i olika situationer. Att beskära orsakar mindre precision på tränings-settet om den skapats enligt tidigare beskriven konstruktion för trädstruktur. Detta eftersom den metoden resulterar i rena noder. Men på ett test-set så kan postpruning i stället öka precisionen. För att avgöra om en intern nod ska ersättas av ett löv eller av en sub-nod så används beräkning av error rates. Det är nödvändigt att estimera förväntad error rate vid respektive nod givet ett oberoende valt test-set för att kunna ta ett sådant beslut. Har man inget test-set kan man nyttja en teknik som kallas reduced-error pruning. Den innebär att man inte använder all given data utan undanhåller en del till ett test-set för att kunna uppskatta error raten vid respektive nod. C4.5-algoritmen estimerar i stället error baserat på tränings-datan utifrån heuristiker baserat på statistiska resonemang (Witten, 2011). Slutord Det finns ytterligare metoder för att förfina sökträden, och det går att fördjupa sig än mer i de befintliga. Mycket information finns tillgängligt fritt och spritt både i form av böcker och artiklar på internet. För egen del lyftes intresset ordentligt i takt med att förståelsen ökade, så som ofta annars. Mest intressant har ändå det varit som inte direkt omnämnt i uppgiften, nämligen att utforska analysverktyget Weka. Har upprättat ett antal egna dataset och provat olika algoritmer och sett hur de fungerar i praktiken och reagerar på olika justeringar och förutsättningar. Också undersökt verktygen för att visualisera datan för att exempelvis hitta extremvärden eller felaktigheter med mera. Mer generellt kring data mining finns många intressanta aspekter att dyka djupare på. Det är inte nödvändigtvis primärt relaterat till artificiell intelligens. Integritet är ett sådant ämne, dessutom hett i debatten kring data mining. Det är högaktuellt med stora företag som Facebook eller Google som kontinuerligt samlar in data om våra preferenser eller och vanor. En sak är dock säker; extrahering av mönster i stora databaser är på framåt march 13
17 Böcker Referenser Max Bramer (2007). Principles of Data Mining: Undergraduate Topics in Computer Science Michael J. A. Berry, Gordon S. Linoff (2000). Mastering Data Mining: The Art and Science of Customer Relationship Management North, D. M. (2012). Data Mining for the Masses. Witten, I. H., Frank, E., & Hall, M. A. (2011). Data Mining: Practical Machine Learning Tools and techniques (3rd ed.). Soumen Chakrabarti, Earl Cox, Eibe Frank, Ralf Hartmut Güting, Jiawei Han, Xia Jiang, Micheline Kamber, Sam S. Lightstone, Thomas P. Nadeau, Richard E. Neapolitan, Dorian Pyle, Mamdouh Refaat, Markus Schneider, Toby J. Teorey, Ian H. Witten (2008). Data Mining: Know It All Webbplatser Wikipedia. Data Warehouse. Retrieved 8 Jan, 2014, from Data_warehouse RuleQuest. Is See5/C5.0 Better Than C4.5? Retrieved 8 Jan, 2014, from see5-comparison.html 14
Upplägg. Binära träd. Träd. Binära träd. Binära träd. Antal löv på ett träd. Binära träd (9) Binära sökträd (10.1)
Binära träd Algoritmer och Datastrukturer Markus Saers markus.saers@lingfil.uu.se Upplägg Binära träd (9) Binära sökträd (0.) Träd Många botaniska termer Träd, rot, löv, gren, Trädets rot kan ha ett antal
Regression med Genetiska Algoritmer
Regression med Genetiska Algoritmer Projektarbete, Artificiell intelligens, 729G43 Jimmy Eriksson, jimer336 770529-5991 2014 Inledning Hur många kramar finns det i världen givet? Att kunna estimera givet
Tentamen, Algoritmer och datastrukturer
UNDS TEKNISKA ÖGSKOA (6) Institutionen för datavetenskap Tentamen, Algoritmer och datastrukturer 23 8 29, 8. 3. Anvisningar: Denna tentamen består av fem uppgifter. Totalt är skrivningen på 36 poäng och
Ett generellt träd är. Antingen det tomma trädet, eller en rekursiv struktur: rot /. \ /... \ t1... tn
Träd allmänt Träd allmänt Ett generellt träd är Antingen det tomma trädet, eller en rekursiv struktur: rot /. \ /... \ t1... tn där t1,..., tn i sin tur är träd och kallas subträd, vars rotnoder kallas
Case-based resoning. och dess användning inom sjukvården. Linköpings universitet Artificiell intelligens II 729G11 HT 2011
Linköpings universitet Artificiell intelligens II HT 2011 Case-based resoning och dess användning inom sjukvården Sammanfattning Det här arbetet handlar om vad case-based resoning är, hur den funkar, vilka
Data mining. Ett analysverktyg för att upptäcka mönster i stora mängder data. Linköpings universitet Artificiell intelligens II 729G11 HT 2010
Linköpings universitet Artificiell intelligens II 729G11 HT 2010 Data mining Ett analysverktyg för att upptäcka mönster i stora mängder data 840515 4009 karfr294@student.liu.se Innehållsförteckning 1 Inledning...
Tentamen TEN1 HI
Tentamen TEN1 HI1029 2015-03-17 Skrivtid: 8.15-13.00 Hjälpmedel: Referensblad (utdelas), papper (tomma), penna Logga in med tentamenskontot ni får av skrivvakten. Det kommer att ta tid att logga in ha
Översikt. Stegvis förfining. Stegvis förfining. Dekomposition. Algoritmer. Metod för att skapa ett program från ett analyserat problem
Översikt Stegvis förfining Pseudokod Flödesdiagram Dekomposition KISS-regeln Procedurell dekomposition DRY-regeln Algoritmer Sortering och sökning Stegvis förfining Metod för att skapa ett program från
Optimala koder. Övre gräns för optimala koder. Gränser. Övre gräns för optimala koder, forts.
Datakompression fö 3 p.3 Datakompression fö 3 p.4 Optimala koder Övre gräns för optimala koder En prefixkod kallas optimal om det inte existerar någon annan kod (för samma alfabet och sannolikhetsfördelning)
Optimala koder. Det existerar förstås flera koder som har samma kodordsmedellängd. Enklaste fallet är att bara byta 0:or mot 1:or.
Datakompression fö 3 p.1 Optimala koder En prefixkod kallas optimal om det inte existerar någon annan kod (för samma alfabet och sannolikhetsfördelning) som har lägre kodordsmedellängd. Det existerar förstås
Lösningar Datastrukturer TDA
Lösningar Datastrukturer TDA416 2016 12 21 roblem 1. roblem 2. a) Falskt. Urvalssortering gör alltid samma mängd av jobb. b) Sant. Genom att ha en referens till sista och första elementet, kan man nå både
Grundläggande logik och modellteori
Grundläggande logik och modellteori Kapitel 6: Binära beslutsdiagram (BDD) Henrik Björklund Umeå universitet 22. september, 2014 Binära beslutsdiagram Binära beslutsdiagram (Binary decision diagrams, BDDs)
Frågeoptimering. Frågeoptimering kapitel 14
Frågeoptimering kapitel 14 Frågeoptimering sid Introduktion 1 Transformering av relationsuttyck 4 Kataloginformation för kostnadsestimering Statisk information för kostnadsestimering Kostnadsbaserad optimering
Tabeller. Programkonstruktion. Moment 8 Om abstrakta datatyper och binära sökträd. Implementering av tabellen. Operationer på tabellen
Programkonstruktion Moment 8 Om abstrakta datatyper och binära sökträd Tabeller En viktig tillämpning är tabellen att ifrån en nyckel kunna ta fram ett tabellvärde. Ett typiskt exempel är en telefonkatalog:
TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 8 Erik Nilsson, Institutionen för Datavetenskap, LiU
TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 8 Erik Nilsson, Institutionen för Datavetenskap, LiU På denna föreläsning: Träd Traversering Insättning, borttagning
TDDI16 Datastrukturer och algoritmer. Prioritetsköer, heapar, Union/Find
TDDI16 Datastrukturer och algoritmer Prioritetsköer, heapar, Union/Find Prioritetsköer En vanligt förekommande situation: Väntelista (jobbhantering på skrivare, simulering av händelser) Om en resurs blir
Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper
Tentamen Programmeringsteknik II 2018-10-19 Skrivtid: 8:00 13:00 Tänk på följande Skriv läsligt. Använd inte rödpenna. Skriv bara på framsidan av varje papper. Lägg uppgifterna i ordning. Skriv uppgiftsnummer
de var svåra att implementera och var väldigt ineffektiva.
OBS! För flervalsfrågorna gäller att flera alternativ eller inget alternativ kan vara korrekt. På flervalsfrågorna kan man bara ha rätt eller fel, dvs frågan måste vara helt korrekt besvarad. Totalt kan
Föreläsning Datastrukturer (DAT036)
Föreläsning Datastrukturer (DAT036) Nils Anders Danielsson 2013-11-27 Idag Balanserade sökträd Splayträd Skipplistor AVL-träd AVL-träd Sökträd Invariant (för varje nod): Vänster och höger delträd har samma
Föreläsning 9 Innehåll
Föreläsning 9 Innehåll Binära sökträd algoritmer för sökning, insättning och borttagning, implementering effektivitet balanserade binära sökträd, AVL-träd Abstrakta datatyperna mängd (eng. Set) och lexikon
Rapport från Praktik på SVOX AG 2008 05 14 till 2008 09 01
Rapport från Praktik på SVOX AG 2008 05 14 till 2008 09 01 Om SVOX AG Jag gjorde min praktik på företaget SVOX AG, ett företag som bygger och sysslar med TTSmotorer. Företaget bildades våren 2000 och har
Trädstrukturer och grafer
Översikt Trädstrukturer och grafer Trädstrukturer Grundbegrepp Binära träd Sökning i träd Grafer Sökning i grafer Programmering tillämpningar och datastrukturer Varför olika datastrukturer? Olika datastrukturer
TDDC74 Programmering: Abstraktion och modellering Datortenta , kl 14-18
TDDC74 Programmering: Abstraktion och modellering Datortenta - 017-10-7, kl 14-18 Läs alla frågorna först och bestäm dig för i vilken ordning du vill lösa uppgifterna. Uppgifterna är inte nödvändigtvis
Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 2014-2015. Lektion 4
Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 014-015 Denna lektion ska vi studera rekursion. Lektion 4 Principen om induktion Principen om induktion är ett vanligt sätt att bevisa
Sökning och sortering
Sökning och sortering Programmering för språkteknologer 2 Sara Stymne 2013-09-16 Idag Sökning Analys av algoritmer komplexitet Sortering Vad är sökning? Sökning innebär att hitta ett värde i en samling
TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 9 Jonas Lindgren, Institutionen för Datavetenskap, LiU
TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 9 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Prioritetskö Heap Representation som
TDDC74 Programmering: Abstraktion och modellering Tentamen, onsdag 9 juni 2016, kl 14 18
TDDC74 Programmering: Abstraktion och modellering Tentamen, onsdag 9 juni 2016, kl 14 18 Läs alla frågorna först, och bestäm dig för i vilken ordning du vill lösa uppgifterna. Skriv tydligt och läsligt.
Tentamen Datastrukturer D DAT 036/INN960
Tentamen Datastrukturer D DAT 036/INN960 18 december 2009 Tid: 8.30-12.30 Ansvarig: Peter Dybjer, tel 7721035 eller 405836 Max poäng på tentamen: 60. Betygsgränser, CTH: 3 = 24 p, 4 = 36 p, 5 = 48 p, GU:
Träd och koder. Anders Björner KTH
27 Träd och koder Anders Björner KTH 1. Inledning. Det är i flera sammanhang viktigt att representera information digitalt (d.v.s omvandla till sviter av nollor och ettor). Beroende på vilka villkor som
Bakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT 2007. Lars Larsson Algoritmer 1
Algoritmer Lars Larsson VT 2007 Lars Larsson Algoritmer 1 1 2 3 4 5 Lars Larsson Algoritmer 2 Ni som går denna kurs är framtidens projektledare inom mjukvaruutveckling. Som ledare måste ni göra svåra beslut
Informationsteknologi Tom Smedsaas 19 augusti 2016
Informationsteknologi Tom Smedsaas 19 augusti 016 VL-träd Definition Ett VL-träd är ett binärt sökträd där det för varje nod gäller att skillnaden i höjd mellan nodens vänster och höger subträd är högst
Inlämningsuppgiften. Föreläsning 9 Innehåll. Träd. Datastrukturer i kursen
Föreläsning 9 Innehåll Inlämningsuppgiften De föreläsningar som inlämningsuppgiften bygger på är nu klara. Det är alltså dags att börja arbeta med inlämningsuppgiften. Träd, speciellt binära träd egenskaper
Programmeringsmetodik DV1 Programkonstruktion 1. Moment 8 Om abstrakta datatyper och binära sökträd
Programmeringsmetodik DV1 Programkonstruktion 1 Moment 8 Om abstrakta datatyper och binära sökträd PK1&PM1 HT-06 moment 8 Sida 1 Uppdaterad 2005-09-22 Tabeller En viktig tillämpning är tabellen att ifrån
Föreläsning 10 Innehåll. Prioritetsköer och heapar. ADT Prioritetskö. Interface för Prioritetskö. Exempel på vad du ska kunna
Föreläsning Innehåll Prioritetsköer och heapar Prioritetsköer och heapar ADT prioritetskö Klassen PriorityQueue i java.util Implementering med lista ar Implementering av prioritetskö med heap Sortering
Introduktion till algoritmer - Lektion 1 Matematikgymnasiet, Läsåret 2014-2015. Lektion 1
Kattis Lektion 1 I kursen används onlinedomaren Kattis (från http://kattis.com) för att automatiskt rätta programmeringsproblem. För att få ett konto på Kattis anmäler du dig på Programmeringsolympiadens
Ekvivalensrelationer
Abstrakt datatyp för disjunkta mängder Vi skall presentera en abstrakt datatyp för att representera disjunkta mängder Kan bl.a. användas för att lösa ekvivalensproblemet avgör om två godtyckliga element
Teoretisk del. Facit Tentamen TDDC kl (6) 1. (6p) "Snabba frågor" Alla svar motiveras väl.
Facit Tentamen TDDC30 2015-08-28 kl 08-12 1 (6) Teoretisk del 1. (6p) "Snabba frågor" Alla svar motiveras väl. a) Vad är syftet med ett interface? (1p) Svar:Att ange vilka metoder som ska finnas, utan
Inlämningsuppgift : Finn. 2D1418 Språkteknologi. Christoffer Sabel E-post: csabel@kth.se 1
Inlämningsuppgift : Finn 2D1418 Språkteknologi Christoffer Sabel E-post: csabel@kth.se 1 1. Inledning...3 2. Teori...3 2.1 Termdokumentmatrisen...3 2.2 Finn...4 3. Implementation...4 3.1 Databasen...4
Probabilistisk logik 2
729G43 Artificiell intelligens / 2016 Probabilistisk logik 2 Marco Kuhlmann Institutionen för datavetenskap Översikt Probabilistiska modeller Probabilistisk inferens 1: Betingad sannolikhet Probabilistisk
Föreläsning 13. Träd
Föreläsning 13 Träd Träd Ett träd är en datastruktur som tillåter oss att modellera sådant som vi inte kan modellera med linjära datastrukturer. Ett datavetenskapligt träd består av noder med pilar emellan.
Mångdubbla din försäljning med målsökande marknadsföring
Mångdubbla din försäljning med målsökande marknadsföring Av alla besökare i en webbutik är det statistiskt sett bara en liten andel som handlar något. Tänk om du kunde återengagera den stora andelen potentiella
Artificiell Intelligens den nya superkraften
Artificiell Intelligens den nya superkraften Socialchefsdagarna, 4 oktober 2018 #CGINext Artificiell Intelligens Förmågan hos mjukvara att agera självständigt på ett intelligent sätt tidigare bara associerat
Algoritmer, datastrukturer och komplexitet
Algoritmer, datastrukturer och komplexitet Övning 6 Anton Grensjö grensjo@csc.kth.se 4 oktober 2017 1 Idag Algoritmkonstruktion (lite blandat) Redovisning och inlämning av labbteori 3 2 Uppgifter Uppgift
Mälardalens högskola
Teknisk rapportskrivning - en kortfattad handledning (Version 1.2) Mälardalens högskola Institutionen för datateknik (IDt) Thomas Larsson 10 september 1998 Västerås Sammanfattning En mycket viktig del
ADT Prioritetskö. Föreläsning 13 Innehåll. Prioritetskö vs FIFO-kö. Prioritetskö Exempel på användning. Prioritetsköer och heapar
Föreläsning 1 Innehåll ADT Prioritetskö Prioritetsköer och heapar Prioritetsköer och heapar ADT prioritetskö Klassen PriorityQueue i java.util ar Implementering av prioritetskö med heap Sortering med hjälp
Föreläsning 9 Innehåll
Föreläsning 9 Innehåll Träd, speciellt binära träd egenskaper användningsområden implementering Datavetenskap (LTH) Föreläsning 9 HT 2017 1 / 31 Inlämningsuppgiften De föreläsningar som inlämningsuppgiften
Ett urval D/A- och A/D-omvandlare
Ett urval D/A- och A/D-omvandlare Om man vill ansluta en mikrodator (eller annan digital krets) till sensorer och givare så är det inga problem så länge givarna själva är digitala. Strömbrytare, reläer
Linjärt minne. Sammanhängande minne är ej flexibelt. Effektivt
Binära träd (forts) Ett binärt träd kan lagras i ett enda sammanhängande minne Roten har index 1 Vänster barn till nod i har index 2*i Höger barn till nod i har index 2*i + 1 Föräldern till nod i har index
Övningshäfte 2: Induktion och rekursion
GÖTEBORGS UNIVERSITET MATEMATIK 1, MMG200, HT2017 INLEDANDE ALGEBRA Övningshäfte 2: Induktion och rekursion Övning D Syftet är att öva förmågan att utgående från enkla samband, aritmetiska och geometriska,
Fallbaserat resonerande
Linköpings Universitet Fallbaserat resonerande Klassifikation av signaler från smarta sensorer Kristina Svahnström 2016-01-08 Innehållsförteckning Inledning... 1 Fallbaserat resonerande... 1 Tillämpning...
3. Toppkvinnor på hög Låt lådan och de två kvinnornas famnar utgöra stackarna L, K1 respektive K2. Från början finns alla kort i L.
KTH, Nada, Erik Forslin 2D1343, LÖSNING TILL TENTAMEN I DATALOGI FÖR ELEKTRO Lördagen den 8 mars 2003 kl 14 19 Maxpoäng tenta+bonus = 50+7. Betygsgränser: 25 poäng ger trea, 35 ger fyra, 45 ger femma.
Lösning till tentamensskrivning i Diskret Matematik för CINTE, CL2 och Media 1, SF1610 och 5B1118, onsdagen den 17 augusti 2011, kl
Matematiska Institutionen KTH Lösning till tentamensskrivning i Diskret Matematik för CINTE, CL och Media, SF60 och 5B8, onsdagen den 7 augusti 0, kl 4.00-9.00. Examinator: Olof Heden Hjälpmedel: Inga
EKG-klassificering. Andreas Bergkvist, Michael Sörnell,
EKG-klassificering Projektrapport i Signaler och system Uppsala Universitet Inst. för signaler och system 2002-2-0 För: Mattias Johansson Av: Andreas Bergkvist, andreasbergkvist@hotmail.com Michael Sörnell,
Binära sökträd. Seminarium 9 Binära sökträd Innehåll. Traversering av binära sökträd. Binära sökträd Definition. Exempel på vad du ska kunna
Seminarium inära sökträd Innehåll inära sökträd inära sökträd Definition Implementering lgoritmer Sökning Insättning orttagning Effektivitet alanserade binära sökträd Eempel på vad du ska kunna Förklara
Medieteknologi Webbprogrammering och databaser MEB725, 5p (7,5 ECTS) Klientprogrammering JavaScript Program på flera sidor
http://w3.msi.vxu.se/multimedia Medieteknologi Webbprogrammering och databaser MEB725, 5p (7,5 ECTS) Klientprogrammering JavaScript Program på flera sidor Rune Körnefors Innehåll Variabler i JavaScript
Algoritmer, datastrukturer och komplexitet
Algoritmer, datastrukturer och komplexitet Övning 6 Anton Grensjö grensjo@csc.kth.se 9 oktober 2015 Anton Grensjö ADK Övning 6 9 oktober 2015 1 / 23 Översikt Kursplanering Ö5: Grafalgoritmer och undre
Högskolebiblioteket vid Mälardalens högskola
Högskolebiblioteket vid Mälardalens högskola Biblioteksenkät 2009 1 Innehåll Innehåll... 2 Inledning... 3 Metod... 3 Redovisningen... 3 Antal svar... 4 Förhållandet mellan orterna... 4 Användarkategorier...
Bedömningsanvisningar
Bedömningsanvisningar Exempel på ett godtagbart svar anges inom parentes. Till en del uppgifter är bedömda elevlösningar bifogade för att ange nivån på bedömningen. Om bedömda elevlösningar finns i materialet
Datastrukturer och Algoritmer D0041D
Luleå Tekniska Universitet 19 mars 2014 Laborationsrapport Laboration 3 Datastrukturer och Algoritmer D0041D Primms Algoritm Namn E-mail Magnus Björk magbjr-3@ltu.student.se Handledare Felix Hansson Primms
Föreläsning 9 Datastrukturer (DAT037)
Föreläsning Datastrukturer (DAT07) Fredrik Lindblad 27 november 207 Slides skapade av Nils Anders Danielsson har använts som utgångspunkt Se http://wwwcsechalmersse/edu/year/20/course/dat07 Innehåll 2
Denna Sekretesspolicy gäller endast för webbsidor som direkt länkar till denna policy när du klickar på "Sekretesspolicy" längst ner på webbsidorna.
Sekretesspolicy Elanco, en division inom Eli Lilly and Company (Lilly), (härefter "Elanco" eller "Lilly" i denna Sekretesspolicy) respekterar integriteten hos dem som besöker våra webbsidor och det är
Källkodning. Egenskaper hos koder. Några exempel
Källkodning Källkodning innebär att vi avbildar sekvenser av symboler ur en källas alfabet på binära sekvenser (kallade kodord). Mängden av alla kodord kalls för en kod. (Man kan förstås tänka sig att
Teoretisk del. Facit Tentamen TDDC (6)
Facit Tentamen TDDC30 2014-08-29 1 (6) Teoretisk del 1. (6p) "Snabba frågor" Alla svar motiveras väl. a) Vad är skillnaden mellan synligheterna public, private och protected? (1p) Svar:public: Nåbar för
DD1350 Logik för dataloger. Vad är logik?
DD1350 Logik för dataloger Fö 1 - Introduktion Vad är logik? Vetenskapen som studerar hur man bör resoneraoch dra slutsatser utifrån givna påståenden (=utsagor, satser). 1 Aristoteles (384-322 f.kr) Logik
Rapport (1,5 HP) Lunds Universitet HT15
Rapport (1,5 HP) Lunds Universitet HT15 Cache-koherens protokoll i Intel Core i7 En rapport om cache-koherens och protokollet som används i Intel Core i7 processorer för att hålla minnet koherent Författare:
Programkonstruktion och. Datastrukturer
Programkonstruktion och Datastrukturer Repetitionskurs, sommaren 2011 Datastrukturer (Listor, Träd, Sökträd och AVL-träd) Elias Castegren elias.castegren.7381@student.uu.se Datastrukturer Vad är en datastruktur?
Facit Tentamen TDDC (7)
Facit Tentamen TDDC30 2014-03-18 1 (7) Teoretisk del 1. (3p) "Snabba frågor" a) Varför kan man tänkas vilja dölja metoder och variabler med private? (0.5p) Svar:För att skydda interna variabler från ändringar
Föreläsning 4 Datastrukturer (DAT037)
Föreläsning 4 Datastrukturer (DAT07) Fredrik Lindblad 1 november 2017 1 Slides skapade av Nils Anders Danielsson har använts som utgångspunkt Se http://wwwcsechalmersse/edu/year/2015/course/dat07 1 Innehåll
Vindkraft och ML. - hur kan vindkraft dra nytta avml
Vindkraft och ML - hur kan vindkraft dra nytta avml AI och ML Intelligens: förmågan att utnyttja kunskap för att bättre lösa en klass av uppgifter Lärande: förmågan att förbättra sin förmåga att lösa uppgifterna
Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten.
OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet
MinMax Algoritmen Implementation och optimering. Joakim Östlund 15 juni 2004
MinMax Algoritmen Implementation och optimering Joakim Östlund 15 juni 2004 1 Samanfattning MinMax är en algoritm som kan användas i turbaserade spel för att skapa en virituell motståndare. Algoritmen
Datastrukturer i kursen. Föreläsning 8 Innehåll. Träd rekursiv definition. Träd
Föreläsning 8 Innehåll Datastrukturer i kursen Träd, speciellt binära träd egenskaper användningsområden implementering Undervisningsmoment: föreläsning 8, övningsuppgifter 8, lab 4 Avsnitt i läroboken:
NODA Smart Heat Building. Hur funkar det? - En teknisk översikt
NODA Smart Heat Building Hur funkar det? - En teknisk översikt Vad är NODA? NODA grundades 2005 baserat på forskning på Blekinge Tekniska Högskola Bygger på en stark vetenskaplig grund inom datavetenskap,
Föreläsning 9: NP-fullständighet
Föreläsning 9: NP-fullständighet Olika typer av problem: 1. Beslutsproblem: A(x) =Ja. 2. Optimeringsproblem: A(x) =m Vanligen max/min. 3. Konstruktionsproblem: A(x) =En struktur. Vanligen lösningen till
I en deterministisk omgivning beror nästa tillstånd bara av agentens handling och nuvarande tillstånd.
OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet
JavaRats. Kravspecifikation. Version 1.1. Gustav Skoglund gussk258@student.liu.se. Marcus Widblom marwi026@student.liu.se. Senast ändrad: 13 / 05 / 08
JavaRats Kravspecifikation Version 1.1 Gustav Skoglund gussk258@student.liu.se Marcus Widblom marwi026@student.liu.se Senast ändrad: 13 / 05 / 08 Sammanfattning Kravspecifikationen för JavaRats har skrivit
Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder.
OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna kan man bara ha rätt eller fel, dvs frågan måste vara helt korrekt besvarad för att man skall
Sekantmetoden Beräkningsmatematik TANA21 Linköpings universitet Caroline Cornelius, Anja Hellander Ht 2018
Sekantmetoden Beräkningsmatematik TANA21 Linköpings universitet Caroline Cornelius, Anja Hellander Ht 2018 1. Inledning Inom matematiken är det ofta intressant att finna nollställen till en ekvation f(x),
Omtentamen i DV & TDV
Umeå Universitet Institutionen för Datavetenskap Gunilla Wikström (e-post wikstrom) Omtentamen i Teknisk-Vetenskapliga Beräkningar för DV & TDV Tentamensdatum: 2006-06-05 Skrivtid: 9-15 Hjälpmedel: inga
Datastrukturer. föreläsning 10. Maps 1
Datastrukturer föreläsning 10 Maps 1 AVL-träd 1 2 5 2 0 4 1 8 3 2 1 11 1 7 Lecture 6 2 Insättning i AVL-träd Sätt först in det nya elementet på samma sätt som i ett vanligt BST! Det nya trädet kan bli
Ännu mera träd: 2-3-träd, B-träd, rödsvarta träd, träd Weiss, avsnitt 4.7, 11.5, 12.2, etc.
Ännu mera träd: 2-3-träd, B-träd, rödsvarta träd, 2-3-4-träd Weiss, avsnitt 4.7, 11.5, 12.2, etc. Peter Ljunglöf DAT036, Datastrukturer 30 nov 2012 1 2-3-träd [inte i kursboken] Ett 2-3-träd har två sorters
if (n==null) { return null; } else { return new Node(n.data, copy(n.next));
Inledning I bilagor finns ett antal mer eller mindre ofullständiga klasser. Klassen List innehåller några grundläggande komponenter för att skapa och hantera enkellänkade listor av heltal. Listorna hålls
Digital strategi för Miljöpartiet
2012-03-12 Digital strategi för Miljöpartiet Bakgrund Vår webbplats ska förnyas och i processen med att upphandla en ny dök frågan upp om vilket syfte den skulle ha i relation till övrig webbnärvaro. I
Tentamen Datastrukturer, DAT037 (DAT036)
Tentamen Datastrukturer, DAT037 (DAT036) Datum, tid och plats för tentamen: 2017-08-17, 8:30 12:30, M. Ansvarig: Fredrik Lindblad. Nås på tel nr. 031-772 2038. Besöker tentamenssalarna ca 9:30 och ca 11:00.
Precis som var fallet med förra artikeln, Geogebra för de yngre i Nämnaren
Publicerad med tillstånd av Nämnaren Thomas Lingefjärd Geogebra i gymnasieskolan En tilltalande egenskap med Geogebra är att programmet kan användas tvärs över stora delar av utbildningssystemets matematikkurser.
Lektion 8: Konstruktion av semantiska tablåer för PTL-formler
Lektion 8: Konstruktion av semantiska tablåer för PTL-formler Till denna lektion hör uppgift 2, 6 och 0 i lärobokens avsnitt.6 (sid. 255). Lös uppgift 2 genom att konstruera en semantisk tablå. Följande
Tentamen 2016-01-13. Marco Kuhlmann
TDDD02 Språkteknologi för informationssökning (2015) Tentamen 2016-01-13 Marco Kuhlmann Denna tentamen består av 10 frågor. Frågorna 8 10 ligger på en högre kunskapsnivå än de övriga och kräver utförliga
Övningen vill visa på vikten av valet av datastruktur, trots att de ofta erbjuder samma funktionalitet genom sina gränssnitt.
1 Samlingar 1.1 Frekvenstabell En Integer är icke-muterbar (precis som String, Float, Boolean et.c.). Ickemuterbarhet har många fördelar, men en nackdel är att ett helt nytt objekt måste skapas när ett
HYBRIDMODELLER FÖR PREDIKTIV
HYBRIDMODELLER FÖR PREDIKTIV MODELLERING SKAPADE MED GENETISK PROGRAMMERING Examensarbete Systemarkitekturutbildningen Fredrik Johansson Markus Lindgren VT 2013:KSAI02 Systemarkitekturutbildningen är en
Här är två korta exempel på situationer då vi tillämpar den distributiva lagen:
Modul: Algebra Del 8: Avslutande reflektion och utvärdering Distributiva lagen Cecilia Kilhamn, Göteborgs Universitet Distributiva lagen a (b + c) = a b + a c Den distributiva lagen kallas den räknelag
Ledtidsanpassa standardavvikelser för efterfrågevariationer
Handbok i materialstyrning - Del B Parametrar och variabler B 43 Ledtidsanpassa standardavvikelser för efterfrågevariationer I affärssystem brukar standardavvikelser för efterfrågevariationer eller prognosfel
Algoritmer och maskininlärning
Algoritmer och maskininlärning Olof Mogren Chalmers tekniska högskola 2016 De här företagen vill Tjäna pengar Hitta mönster i stora datamängder Göra förutsägelser Klassificera data Förstå människan Maskininlärning
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:
Tentamen Datastrukturer D DAT 036/INN960
Tentamen Datastrukturer D DAT 036/INN960 18 december 2009 Tid: 8.30-12.30 Ansvarig: Peter Dybjer, tel 7721035 eller 405836 Max poäng på tentamen: 60. Betygsgränser, CTH: 3 = 24 p, 4 = 36 p, 5 = 48 p, GU:
Självbalanserande träd AVL-träd. Koffman & Wolfgang kapitel 9, avsnitt 1 2
Självbalanserande träd AVL-träd Koffman & Wolfgang kapitel 9, avsnitt 1 2 1 Balanserade träd Nodbalanserat träd: skillnaden i antalet noder mellan vänster och höger delträd är högst 1 Höjdbalanserat träd:
Lokal pedagogisk planering i matematik för årskurs 9
Lokal pedagogisk planering i matematik för årskurs 9 Arbetsområde 4. Samband och förändring Syfte formulera och lösa problem med hjälp av matematik samt värdera valda strategier och metoder. reflektera
Vinjetter TDDC91 Datastrukturer och algoritmer
Vinjetter TDDC91 Datastrukturer och algoritmer 17 augusti 2015 2 Scenario 1 Man har inom Posten Logistik AB skrivit programvara för sortering av kundinformation och vill standardisera användningen av sorteringsalgoritmer.
Föreläsning Datastrukturer (DAT036)
Föreläsning Datastrukturer (DAT036) Nils Anders Danielsson 2013-11-18 Idag Mer om grafer: Minsta uppspännande träd (för oriktade grafer). Prims algoritm. Kruskals algoritm. Djupet först-sökning. Cykel
Vad behövs för att skapa en tillståndsrymd?
OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervarlsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet
Kapitel 4. Scanlon tar också upp problemet om moralens omfång d.v.s. frågan om vilka varelser som vi har moraliska skyldigheter mot.
Kapitel 4 Scanlon tar också upp problemet om moralens omfång d.v.s. frågan om vilka varelser som vi har moraliska skyldigheter mot. Han svarar: de är alla varelser som är förmögna att inta omdömeskänsliga