Archive for the 'AI' Category

SightCity Frankfurt, ChatZilla release, Privacy, Venkman issues, misc.

Thursday, May 15th, 2008

It’s been way too long since I posted anything here, for which I apologize. There are a couple of things that deserve mention here at the present time.

SightCity

I recently got back from visiting SightCity in Frankfurt am Main, Germany. The conference experience was excellent, and I had a great time with Steve, Ben and Marco, all of whom have written more pleasantly and/or extravagantly about our experiences there than I ever could. So this is all you’re getting from me, here. :-)

ChatZilla Releases

ChatZilla 0.9.82 was released, quickly followed by ChatZilla 0.9.82.1 after a couple of nasty regressions. Almost all of the releases’ features and fixes fall squarely into the “polish” bin (eg. dragging tabs for channels named only “#” now works, and doubleclicking a user in the userlist opens a query tab, some minor accessibility and localizability fixes, etc.), except for one: CEIP, short for Customer Experience Improvement Program. Customer not being very apt, I suppose, but it’s a standard name for what is essentially a data collecting tool.

Data collecting?! Yes, data collecting. I wrote a Privacy Policy about what we do. Please read it first, before flaming me/us. Really, read it – it’s quite short! As you will have read by now, I hope, we ask first if it would be OK to collect anonymous statistics. Without consent, ChatZilla doesn’t save anything you do, nor (consequently) does anything get sent. We never collect anything personal, and both in the policy and in the UI, which is accessible from the Help menu in ChatZilla, we indicate a bunch of things we specifically won’t collect. So what can we collect, then, and how is it useful? Well, examples include the length of sessions (do people run ChatZilla for days at a time without interruption, or only five minutes?) and how tabs are handled. We can already, after just a few days, see that many people seem to be closing lots of network tabs, which may lead us to prioritize bug 249188, for instance.

So I hope that this post helps clarify that we’re not turning evil. If you disagree, and had already turned it on, you’re free to turn it off again, at your leasure. Do let us know what you think we’re doing wrong, though.

Venkman trunk issue

If you’re using Venkman with a Gecko trunk product (eg. Firefox 3 RC1, Thunderbird Shredder 3.0a1, …) you may have found that viewing source code stopped working a while ago. This happened because of a change in the way unprivileged content, like the source view itself (which is plain old HTML) is allowed to access chrome content (like the stylesheet for the source view, unfortunately). Fixing it properly is not trivial. Right now, I have suggested a more or less wallpaper fix, because I am too busy to do something nicer, and it doesn’t seem like anyone else is willing to go and fix it instead. This basically allows unprivileged content to access the chrome content again. A better solution would be to channel the stylesheet through the jsd protocol. If anyone wants to step up to the plate and fix that, that’d be awesome. In the meantime, the wallpaper patch is waiting for review. If you’re in need of a working Venkman, I uploaded an XPI to bug 428848.

Misc

I’m nearing the end of my BSc degree. I’m working on my thesis at the moment, and finishing off the two courses that remain. Perhaps I’ll write more about the thesis once I have something I can demo or screenshot in-action. For now, I’d just like to happily announce that I was conditionally accepted into the 1 year MSc Advanced Computing course at Imperial College, London. So, if you know of a good place for a grad student to live in central London (South Kensington), let me know!

Why we need better AI

Monday, May 14th, 2007

I needed to find “two key papers on the future of Computer Mediated Communication” (and then summarize them and write a personal opinion on where we’re going).

The University of Amsterdam fortunately has a digital library you can access over VPN which allows you to search in lots of major databases. So I duly searched for:

“future” in Title AND  “Computer Mediated Communication” in All Words (after some failed other searches), in the “Informatiewetenschappen” subject area (“Information Science”, basically)
5th result from JSTOR:

“Promising the Future: Virginity Pledges and First Intercourse” by Peter S. Bearman.

No comment.

Junk

Sunday, April 29th, 2007

List of things on my mind, because I can’t be bothered (and don’t think you guys can) with separate posts for each of them.

  • Trying to find time to co-write a paper and to get it accepted for a student conference on AI in Utrecht.
  • Trying to find time to modify a paper on Ethics (specifically, Moral Relativism) that I wrote some time ago and submit that to ‘something’ Dutch / UvA.
  • Doing regular coursework, which involves
    • reading about 200-300 pages every week
    • writing summaries and questions for speakers on the subjects for all of them
    • working on a project with students from Stanford University and a Fortune 500 company in the tech industry. Can’t say much more than that, though for once it doesn’t involve engineering.
    • writing language processing tools in Python.
    • trying to catch up with lost classes from last block about Statistics and Stochastics.
    • writing knowledge processing tools and representations using Prolog and OWL.
  • Working on my Mozilla project. I meant to write about this earlier, but the Mozilla Foundation has sponsored me to work on making the ChatZilla IRC client accessible (as is clear from that link, it also needs a better website, we’re working on that on the sidelines). In fact, I have a conference call concerning that starting in 10 minutes, so I’d better finish this up.
  • Working on other Mozilla-related issues
  • Trying to get some work done on some other Firefox extensions of mine.
  • Figuring out what university I’d like to attend for my MSc.
  • Visiting junks drug and alcohol addicts. We need to stop calling people garbage – things are garbage (see also the post title) but people never should be. Also, Amsterdam is strange in the sense that I just went to a church service done by the Drug section of the pastoral care (not sure if that’s the right way of putting it in English) and atop of us (ie, in the room above us) some snobby people were having champagne, for the opening of some exhibition or whatever. Stark contrast…

That will do for now. Off to that conference call!

Status update: Universiteit

Monday, February 26th, 2007

Meer puntjes:

  • Ik heb m’n honoursmodule over Ethiek goed afgesloten, en ben nog bezig te proberen mijn essay daarvoor gepubliceerd te krijgen, daarvoor al een gesprek gehad met een “echte” ethicus enzovoort. Leuk allemaal.
  • Nadya, Hylke en ik hebben onze honoursmodule binnen de Kunstmatige Intelligentie Bachelor bijna afgerond. We moeten ons rapport nog wat redigeren en een presentatie geven, dan zijn we klaar.
  • Ik ben begonnen aan een minor Sociale Informatiekunde, wat gaat over de manier waarop mensen computers en informatie gebruiken, en hoe dat verbeterd zou kunnen worden. Dit is best interessant, alhoewel het eerste vak dat ik heb me tegenvalt: weinig nieuwe theorie en de praktijkonderdelen zijn mij niet uitdagend genoeg, te ‘gespreid’ en toch te veel werk. Er wordt verwacht dat je er 15 uur per week in steekt. Je moet de opdrachten in groepjes doen, maar je hebt naast het hoorcollege maar 15 minuten per week samen ingepland staan in het rooster (en bovendien zijn voor mij zowel het hoorcollege als het samenzijn dubbel ingeroosterd met Kunstmatige Intelligentie vakken). Het is dus veel werk, maar wordt gespreid over een week (in plaats van op projectbasis een paar dagen achter elkaar bikkelen). Bovendien is het niet uitdagend genoeg in die zin dat de verwachte resultaten (paper prototypes, bijvoorbeeld) bijna geen werk vragen en ik niet zo gemotiveerd ben om er uitgebreid mee bezig te zijn als het resultaat zo onsubstantieel is.
  • Ik probeer erachter te komen wat ik van mijn opleiding verwacht en wat ik als Masteropleiding zou willen doen (en waar dan). Wat mij tegenvalt aan KI is dat van de dingen waarvan mensen zeggen dat we ze kunnen (spraakherkenning, gezichtsherkenning, emoties, natuurlijke bewegingen, kennissystemen, etc. etc.) we de meeste dingen in werkelijkheid niet kunnen, gewoon omdat we er geen goede manier voor hebben, en dat we het vervolgens toch doen met gebruik van allerlei flauwe ‘hacks’ die in zeer specifieke gevallen het probleem oplossen. Het makkelijkste voorbeeld is kennissystemen in combinatie met natuurlijke taal: er zijn op dit moment systemen op de markt die bijvoorbeeld dokters kunnen helpen met het maken van diagnoses, en systemen waarbij mensen door middel van spraak een computer bedienen. Echter, dit zijn heel specifieke taken. De computer begrijpt je niet als je over een ander onderwerp dan medische diagnoses gaat praten (het weer, wat je voor het laatst gegeten hebt, etc.) of als je woorden of termen gebruikt waar de computer niet bekend mee is. Dit kunnen deze systemen over het algemeen niet leren, en op die manier vindt er nog steeds geen ‘sterke’ KI plaats, wat je wel graag zou willen…
  • Waar ik een masteropleiding zou willen doen: de meeste goede universiteiten die iets met KI doen zitten in de VS. Dat is best ver weg, en de VS als land trekt mij absoluut niet. Uit mijn vakantie-ervaring, en de inwoners ervan die ik heb leren kennen, zou ik liever naar Groot Brittanië of Zweden gaan, maar geen van beiden heeft KI opleidingen die als zodanig zijn aangeschreven (in plaats van vakken / ‘tracks’ bij “Computer Science”, waar ik waarschijnlijk weinig tot geen nieuwe dingen zou horen). Moeilijk, moeilijk…

Taartsnijden: niet alleen voor verjaarspartijtjes

Thursday, December 7th, 2006

Ik was net bij een voordracht van Steven Brams. De beste man hield een voordracht over het verdelen van cake (niet taart, want dat is nog ingewikkelder). Dhr. Brams was hier voor COMSOC-2006 – een kleine conferentie aan de UvA over ‘computationele sociale keuzes’. Het gaat hier dus om het verdelen van goederen (al dan niet ‘deelbaar’ (1 euro kun je delen, 1 auto niet, in die zin van het woord)) tussen verschillende agents die ieder weer hun eigen voorkeuren hebben.

Een paar termen om het straks volgende voorbeeld duidelijk te maken:

  • envy-freeness (‘vrij van jaloezie’) wil zoveel zeggen als: er is geen enkele agent die liever de set goederen van een andere agent wil hebben dan de set goederen die hij/zij/het nu heeft.
  • efficiency of, moeilijker gezegd, Pareto-optimality, wil zeggen dat er geen mogelijkheid is om iemand meer te geven dan hij/zij/het nu heeft, zonder dat (sommige) anderen daarop achteruit gaan.
  • equitability wil zeggen dat alle agents even gelukkig zijn met wat ze krijgen. Dit betekent niet per sé dat ze allemaal hetzelfde krijgen. Om een voorbeeld te noemen, stel ik mag land verdelen tussen mijn twee zoons (erfenis of zo), en het land grenst aan de ene kant aan een prachtig meer, en aan de andere kant aan een vuilnisbelt. Aangenomen dat de zoons inderdaad beiden het stuk land bij het meer leuker vinden dan dat naast de vuilnisbelt, zou het duidelijk niet ‘equitable’ zijn als ik mijn stuk land geometrisch middendoor deelde en de helft naast de vuilnisbelt aan mijn ene zoon geven, en de andere helft aan mijn andere – immers, hoewel ze fysiek evenveel gekregen hebben, is de één er gelukkiger mee dan de ander.

Dan ga ik nu een kleine aanslag plegen op het oer-Nederlandse “kiezen of delen”. Zoals we allemaal weten, is dit de eerlijkste manier om een cake te verdelen. Niet dus, zo zegt Brams. Stel je verdeelt een cake op die manier. De cake is voor de helft met chocola gevuld, en voor de helft met aardbeien. Stel, de ‘deler’ vindt de chocola twee keer zo lekker als de aarbeien. De ‘deler’ zal dan op zijn best de ‘helft’ van de waarde van de cake kunnen krijgen, door hem op 3/8 door te snijden. De ander mag dan kiezen tussen 3/4 van het chocolade deel, of het hele aardbeien deel en 1/4 van het chocolade deel. Hoe dan ook, de ‘deler’ zal nooit meer dan 50% van de waarde die hij aan de cake hecht krijgen, terwijl de ‘kiezer’ wellicht meer krijgt (bijvoorbeeld als die persoon aardbeien veel lekkerder vond). Met andere woorden, hier is weliswaar sprake van envy-freeness (want niemand zal het deel van de ander willen), en van efficiency, maar niet altijd van equitability. Brams voert een mogelijkheid aan om beiden te garanderen bij het verdelen van de cake.

Stel, we verdelen dezelfde cake tussen Aagje en Bert. Aagje vindt chocola twee keer zo lekker als aardbeien, en Bert maakt het allemaal niets uit, die wil gewoon zo veel mogelijk cake. Aagje en Bert vertellen dit allebei aan een onafhankelijke partij. Deze scheidsrechter kan dan onafhankelijk bepalen waar het fifty/fifty ‘punt’ op de cake ligt voor beide partijen. Voor Bert is dat dus middenop de cake, maar voor Aagje op 3/8 (3/4 van het chocolade deel). Vervolgens deelt de scheidsrechter het resterende deel op tussen beide partijen, in ons geval op 7/16 (midden tussen 3/8 en 1/2). Nu heeft Aagje dus 7/12 van de waarde die zijn aan de hele cake hechtte, en Bert heeft 9/16 gekregen. Dat is nog steeds niet helemaal eerlijk (equitable), maar wel eerlijker dan kiezen of delen (waar het verschil 6/12 tegen 10/16 was). Je kunt er ook voor kiezen om het resterende deel proportioneel te verdelen, maar dan kan het weer voordelig worden voor mensen om tegen de scheidsrechter te liegen over wat voor waarde ze aan welk deel hechten. Dit is allemaal wiskundig bewezen in het paper van Brams, maar voert wat mij betreft wat ver voor een blogpost.

Uiteraard wil ik niet suggereren dat je deze methode daadwerkelijk op verjaarspartijtjes gebruikt, echt praktisch is het daar niet. Maar het is een leuke metafoor voor serieuze dingen, zoals bijvoorbeeld vandaag aangehaald werd, het opdelen van Irak tussen Shiieten, Soennieten en Koerden, waarbij bepaalde partijen bepaalde heilige plaatsen belangrijk vinden, iedereen natuurlijk Bagdad wil hebben, etc.

Jelmer, weliswaar geen Koetjes en Kalfjes, maar toch wat AI. Om het even op mijn studie te betrekken, ik houd me dus, samen met twee medestudenten en de mede-organisator van deze conferentie, bezig met het schrijven van een computersimulator voor het verdelen van en onderhandelen over goederen (helaas geen cake) door verschillende agenten met verschillende behoeftes etc. Dit doe ik om uiteindelijk mijn BSc met ‘honours’ te behalen. Daarvoor volg ik ook wat interdisciplinaire extra vakken, etc. Het AI gedeelte is best interessant, maar moeilijk om zo een-twee-drie een blogpostje over te schrijven.