« januari 2006 | Main | mars 2006 »

februari 18, 2006

Varför flyger malen som den gör? En NetLogo-modell

Som tidigare skrivits finns det många fascinerande beteenden och fenomen i djurvärlden, det sociala livet och - för den delen - de flesta områden där flera agenter interagerar med varandra eller sin miljö.

Ett verktyg för att studera sådana beteenden och framför allt emergenta fenomen som uppstår är NetLogo (som också skrivits om tidigare ). Systemet kräver Java, men det finns även Appletversioner av många modeller

När jag testade betaversionen av version 3.1 upptäcktes modellen Moths (malar) som inte setts tidigare.

Modellen försöker att visa malens beteende, dvs varför de cirklar runt-runt-runt ljuset men inte flyger direkt in i ljuset eller flyger därifrån. Det finns flera olika teorier kring detta. En teori - och den som NetLogo-modellen implementerar - är den som Henry Hsiao beskrev i boken Attraction of moths to light and to infrared radiation (San Fransisco Press, 1972, ISBN:0911302212).

Hsiaos teori beskrivs kortfattat och populärt i Cecil Adams (The Straigt Dope) Why are moths attracted to bright lights?. Från artikeln:

[Henry Hsiao] said moths exhibit two kinds of behavior. When they're distant from a light source (they're drawn to light from as far as 200 feet away), they make a beeline straight toward it. Why, nobody knows. Maybe they've tumbled to the fact that lights mean people, and people mean: Wool sweaters! On an even more basic level, a light means: Other moths! Par-ty!

However, when the moths get close to the light, a different kind of behavior takes over. Instead of being attracted to the light, the moth is actually trying to avoid the light. When you think about it, this is only natural. To a creature of the night like a moth, daylight and by extension any bright light means danger. The moth doesn't fly directly away from the light due to a peculiarity of vision called a Mach band. A Mach band, which apparently is common to all sighted creatures, is the region surrounding a bright light that seems darker than any other part of the sky.


Den enkla NetLogo-modellen gör det alltså möjligt att studera teorin, t.ex. att se hur beteendet förändras ju fler malar det finns, om antalet ljuspunkter förändras, eller förändringar i den vinkel som malen flyger bort från ljuset. Som så många andra NetLogo-modeller är det skoj att leka med parametrarna för att se vad som händer, även om man kanske egentligen inte har djupare intresse av specifikt malens beteende.

Disclaimer: Jag är ingen biolog.


Se även
Agentbaserad modellering
Komplexitet/emergens

Wikipedia: Moth för mer om mal-teorierna.
Kursen Emergenta system, 5p, Institutionen för datavetenskap, Umeå Universitet.

Posted by hakank at 11:19 FM Posted to Agentbaserad modellering

februari 13, 2006

Svenska synonymvägar

Gårdagens Svenska synonymer och begreppet "surfa synonymer" inspirerade till ett annat program: Svenska synonymvägar.

Programmet utgår från ett ord och dess synonymer (om sådana finns) och visar deras synonymer, och sedan deras synonymer osv. Man kan notera att ofta försvinner orginalordets betydelse snabbt så och det blir helt andra spår att vandra. Därav namnet synonymvägar.

Exempel
Ett väldigt litet exempel är synonymvägen för fågel som endast innehåller 5 ord. Det ser ut så här:


fågel


fjäderfä
flygfä
pippihöns

Synonymerna länkas alltså, vilket gör att man kan klicka runt så att man bli alldeles snurrig i huvudet....

Som sagt, detta var ett litet exempel med endast 5 ord i synonymvägen. Det finns betydligt större vägar, t.ex. för ordet känslig där vägen har 6682 ord. OBS: Det tar en stund för programmet att lista ut vägen, och sedan för webbläsaren att rendera sidan (som är på över 1 Mb).


Not
Synonymlistan är exakt samma som används i programmet Svenska synonymer, och som presenterades i blogganteckningen Svenska synonymer.

En not av mer teknisk natur är att jag hellre skulle vilja visa detta som en graf med bågar och noder för att visa kopplingarna (synonymer) mellan orden.


Eventuell vidare utveckling
Förutom att presentera det som en synonymgraf vore det intressant att se hur lång den största vägen är, hur många "isolerade synonymöar" det finns (där endast ett fåtal ord sammanbinds med varandra men inga andra), och överhuvudtaget analysera mer med grafteoretiska eller komplexa nätverkstekniker. Det bli eventuellt ett senare projekt.

Se även
Blogganteckningen Svenska synonymer
Programmet Svenska synonymer

För vidare utveckling och analys kan möjligen litteratur och redskap som presenteras i Social Network Analysis och Complex Networks - En liten introduktion vara av intresse.


Uppdatering 1 - angående synonymkluster
Det skapades ett analysprogram för att studera de olika synonymklustren. Ett kluster innebär alltså att oavsett vilket ord man söker i klustret kommer det att visas endast dessa ord, där endast den inbördes ordningen förändras beroende på vilket ord man börjar på.

Intuitionen som nämndes i kommentaren till Simon nedan stämde relativt bra: Det finns ett enda mycket stort kluster ("Den Stora Vägen", "Det Gigantiska Klustret") som innehåller 6682 ord (känslig-klustret), därefter ett på 32 ord (bandit), ett på 30 (bastard) etc.

Fördelningen av klusterstorlekn är som följer. Uttolkning: det finns 1269 synonymöar (synonymgränder?) med endast 2 ord, 271 stycken kluster som innehåller endast 3 ord etc, och som nämnts ovan ett kluster med 6682 ord. Power law, någon?


Klusterstorlek: Antal kluster
2: 1269
3: 271
4: 87
5: 57
6: 34
7: 21
9: 13
8: 8
11: 5
10: 5
16: 4
12: 4
6682: 1
32: 1
30: 1
24: 1
23: 1
21: 1
20: 1
19: 1
15: 1

Filen synonym_kluster.txt innehåller samtliga kluster, enligt strukturen:

Antal ord i klustret: Orden som ingår i klustret (alfabetiskt sorterade)

Filen är sorterad alfabetiskt efter första ordet i klustret.

Kommentar: I och med att det endast finns ett mycket stort kluster är strukturen relativt stabil i meningen att om man lägger till en synonym så påverkas inte resultatet så mycket. Det är dock kvar att studera vad som händer om man tar bort en eller ett fåtal synonympar från det stora klustret. Det är möjligt att det finns ett enda synonympar som håller ihop två (mindre) kluster till detta stora. Men det tänker jag inte kolla in i kväll...


Uppdatering 2 - Kortaste synonymvägen mellan två ord
[Senare not: Det uppstod tyvärr en tankebugg vid ursprungsbefolningen av talen i listan, och som upptäcktes efter att Simon kommenterat resultatet. De tidigare och felaktiga värdena är kvar men överstrukna för att kommentarerna ska bli förståeliga; samt i ärlighetens namn.
Trots denna nesliga händelse fortsätter jag hävda att simuleringar är ett bra sätt att räkna ut mer komplicerade sannolikheter.]

Simon föreslog i sin kommentar en trevlig applikation: Kortaste synonymvägen mellan två ord.

Klusteranalysen ovan gav dock upphov till en fundering hur stor sannolikhet det är att två ord verkligen har en synonymväg. Om de två orden överhuvudtaget finns i listan (av cirka 25000 ord) krävs det även att de tillhör samma kluster, annars kan man inte skapa någon synonymväg. Om orden finns i det stora klustret (med 6682 ord) kan det vara intressant, liksom om orden finns i de andra större klustren (säg större än 10 ord). Man kan här notera att det finns hela 1787 kluster (se ovan för den exakta fördelningen).

För att räkna ut sannolikheten att två ord tillhör samma kluster (om båda orden finns i listan) gjordes en R-simulering enligt följande:

* Varje kluster representeras av ett unikt tal, och antalet ord bestämmer hur många gånger detta tal finns i en lista (kallad "kluster" i R-koden nedan). Funktionen rep(tal, antal) kan användas för att populera listan med talen.

* Ur denna stora lista av tal dras slumpmässigt två element.

* Om de två dragna talen är lika motsvarar det samma kluster, vilket alltså ger en synonymväg. Är talen olika finns ingen sådan väg

* Detta görs ett antal 1000 gånger.

R-koden för själva simuleringen (med 100000 dragningar) ser ut så här:

> sum(replicate(100000, diff(sample(kluster,2)))==0)/100000
[1] 0.02567
0.33059

Resultatet innebär att det är cirka 2.6% 33% sannolikhet att två tal (ord) tillhör samma kluster. Det är inte mycket. Det är ju inte så pjåkigt.

Ovanstående resultat förutsätter alltså att båda två orden fanns i synonymlistan, vilket troligen inte är fallet för en normal användning av ett sådant program.

Varpå nästa analys göres: Om vi nu antar att det finns en möjlighet att användaren av systemet anger något av - säg - 75000 ord som inte finns i synonymlistan, hur stor är då sannolikheten att det finns en väg mellan dessa ord.

Här fortsätter simuleringen med samma princip och lägger 75000 unika tal en enda gång, vilket motsvarar det "klusterlösa" orden som inte finns i synonymlistan.

Motsvarande simulering (med 10000 dragningar) ger vid handen att sannolikheten är väldigt liten, nämligen endast:cirka 0.00051 (0.5 promille) 0.007 (7 promille). Det är ännu mindre. Det är inte så mycket.

Trots detta nedlyftande resultat finns det möjlighet att Simons föreslagna program ser världens ljus... Trots alternativt tack vare ovanstående resultat finns det möjlighet att någon variant av Simons föreslagna program kommer att se världens ljus...

Det finns även en tanke att från en ordlista med cirka ord lägga till böjningsformer till de synonymfilens grundord. Detta skulle göra sannolikhet för att orden finns med i (den då utökade) synonymlistan större.


Tillägg till Uppdatering 2
Vid uppdateringen av föregående analys (i "Uppdatering 2") testades även med att anta att det skulle vara färre ord än 75000 som inte fanns i synonymlistan. För 25000 sådana extra ord blir sannolikheten cirka 3.3% för en synonymväg. Möjligen är både 75000 och 25000 orealistiskt många. Här nedan är sannolikheten (inte procent) för några värden av antal icke-synonymord ("extra ord").

Antal extra ordSannolikhet (simulerad) att två
sökord ingår i sammakluster
750000.007
250000.033
100000.097
50000.161
10000.281

Det är troligen en uppgift för kognitiva psykologer att lista ut hur stor ens mentala ordlista är när man använder denna typ av tjänster. En möjlighet är att logga de ord som används i det eventuella framtida program och sedan göra lite analyser. Obs: ingen annan information än orden skulle i så fall loggas; inget IP-nummer, inget datum, utan endast de två potentiella synonymvägsorden..

Posted by hakank at 07:52 EM Posted to Program | Språk | Comments (7)

februari 12, 2006

Svenska synonymer

På sidan Folkets synonymlexikon Synlex - en sida under Skoldatanätet - Lexin - finns att ladda ner en XML-fil med cirka 25000 svenska synonymer (filen är ungefär 1.5Mb stor).

Synonymlistan har skapats bl.a. genom att användare av Lexin-programmen har fått skriva in egna synonymer samt bedömt hur bra synonymerna är, därefter har filteringar av materialet gjorts. Se Synlex-sidan för vidare förklaring. Nedan direktlänkas till två rapporter om projektet.


Programmet Svenska synonymer
Omedelbart efter att Synlex-sidan upptäcktes skrevs ett program för att söka i synonymlistan där en lokal kopia av preprocessad XML-filen används. Programmet heter Svenska synonymer och har följande finesser som jag saknat i andra webbaserade synonymlexikon:

Talen inom parentes efter synonymerna anger medelvärdet av hur bra synonymerna ansetts vara (kallas "level" i XML-filen) . Synonymlistan innehåller endast de synonymer som har medelvärde 3.0 eller mer, med max 5.0 (så man kan se det som betyg enligt den gamla skolordningen).

Fördelningen av dessa värden är

3.0: 3394
3.1: 1936
3.2: 2076
3.3: 1800
3.4: 1336
3.5: 1511
3.6: 1282
3.7: 837
3.8: 674
3.9: 176
4.0: 3158
4.1: 1160
4.2: 1390
4.3: 1064
4.4: 646
4.5: 914
4.6: 896
4.7: 446
4.8: 424
4.9: 60
5.0: 710


Se även
På sidan Folkets synonymlexikon Synlex finns (längst ned) två referenser till hur projektet fortlöpt:
Viggo Kann: Folkets användning av Lexin – en resurs (PDF)
Viggo Kann, Magnus Rosell: Free Construction of a Free Swedish Dictionary of Synonyms (PDF)


Sajten Synonymer.se använder data från Göran Walters Bonniers synonymordbok (boken finns även som bokreabok på Bokus att förhandsbeställa).

Posted by hakank at 09:13 EM Posted to Program | Språk

Lite mer om den nya telefonen inklusive länk till Flickr-sida

Efter nästan en vecka med den nya telefonen (Sony Ericsson W800i) kommer här några kommentarer:

Kameran är en av de roligaste delarna eftersom det inte har innehafts någon sådan på cirka 30 år. Det har alltså tagits bilder varav en del fiins på min Flickr-sida (som nu äntligen kommer till användning). Det är inte speciellt många bilder ännu, men de blir förhoppningsvis fler efter hand. För närstående släktingar kan nämnas att några bilder inkluderar faderskapets intarsia-tavlor.

Den gamla telefonen var en Ericsson modell gammal där det var omöjligt eller förfärligt tråkigt att göra vissa saker, t.ex. att skriva SMS. Ni som smsat mig tidigare har nu större chans att få svar.

Några saker som befunnits mycket trevliga med den nya telefonen:
* Det har även ringts flera samtal på riktigt och bara några få gånger blev det ryggradsfeltryckningar.
* det är mycket bra att T9 (ordlistan + lite intelligens) är mer intelligent och expanderbar än förra mobilen, även om inte "blogg" eller "hakank" fanns med från början.
* det är skoj att surfa mobilt på webben (och inte bara på WAP-sidor), kunna ta bilder, filmer lyssna på musik och liknande saker.
* Opera mini är väldigt trevlig. Den klarar till och med av Bloglines samt att visa bloggen min.
* På GetJar.com kan man ladda ner både fritidsbetonade och mindre fritidsbetonade applikationer på ett smidigt sätt.
* ShoZu för att direktFlickra bilder från telefonen.


Hittlls har följande saker har befunnits mindre trevliga eller något suboptimalt dokumenterade:
* Jag hittade inte i manualen hur man låser tangentbordet. När man väl vet det är det ju enkelt: * + "höger enter" eller vad denna knapp nu heter formellt. Låssymbolen på *-knappen är väldigt liten.
* Timeouten för skärmsläckaren är lite väl snålt tilltagen
* Det är lätt att spela in filmer (30-sekunders sekvenser) men jag har ännu inte hittat hur man spelar in enbart ljud. En sådan funktion borde väl vara självklar i en sådan här multimedial maskin?
* Det har inte lyckats att "mobila" ett gmail-konto. Googlegissning Antingen är det strul med certifikatet eller så klarar inte telefonen andra portar än 110 respektive 25.
* I går var jag ute för att ta lite naturbilder (=stadsbilder), men det var alldeles för kallt om fingrarna (och fingervantarna var inte kameravänliga). När kommer en mobiltelefon med inbyggd fingervärmare?


Se även
Sony Ericssons sida för utveckare.
Kurs: Mobiltelefonapplikationer med J2ME

Kattbloggning utan katt men med blogg och med tid samt kort kommentar kring gårdagens bloggträff däribland två avslöjanden görs
Mobile Words, ett gammalt program som lekts med den senaste tiden. Möjligen kommer det en utökning av detta.

Posted by hakank at 09:41 FM Posted to Diverse | Comments (9)

februari 06, 2006

Kattbloggning utan katt men med blogg och med tid samt kort kommentar kring gårdagens bloggträff däribland två avslöjanden görs

Lika bra att säga det från början: Detta tillhör avdelningen för mer privata/personliga meddelanden, gränsandes till testinlägg.

Köpte idag en fin Sony Ericsson-telefon ("W800i Walkman"), med kamera, musik, radio och förmodlingen någon form av telefonifunktion däribland. Riktigt trevlig är den.

Av tradition ska den första publicerade kamerabilden vara på sin katt, men eftersom hushållet inte har någon katt blir det i stället på den plats där katten skulle suttit i detta då (dvs det då innevarande nuet) skulle slik katt innehas. Så här ser den synnerligen väl utvalda kattplatsen ut.

.

Fast personligen skulle nog föredragas en mer tidstypisk studie såsom första bildvis:

.

Bloggträffskommentar
För övrigt var det bloggträff i går, där vi bl.a. pratade om telefoner och när dessas "slavkontrakt" går ut. Det visade sig att det gick ut re'n 2004, vilket - i kombination till långsamt gående förbi Teliabutiken p.g.a. snöfall - gjorde att ovan nämnda telefon införskaffades (detta visste vi dock inte i går).

Not 1 till Åsas rapport: Det var faktiskt jag. Bildbevis: , men det är tydligen ännu inte officiellt .
Not 2 till samma Åsas rapport: Det var också jag.


P.S. Jag lovar (relativt dyrt) att inte förpesta internettet med mer än nödvändigt antal onödiga spamfoton. Eller i alla fall be om ursäkt skulle så ske igen. Eventuellt.

Posted by hakank at 10:09 EM Posted to Diverse