Home    About me    Publications    Blog    Photo gallery
Some other old good stuff

Fabio Ruini’s blog

Because Italians do it better! What the f**k? Ehm… the blogs, I mean… obviously! :-/

Archivio per Novembre, 2008

Wall-E

Credo di arrivare un po’ in ritardo, ma di sicuro non come ho fatto con Platoon (visto ad inizio settimana, a giusto una ventina d’anni di distanza rispetto alla data di uscita). Arrivato fresco fresco da uTorrent (la beta per Mac e’ scaricabile a questo link), ieri sera mi sono sparato Wall-E.

Wall-E

Finalmente un film in inglese, per il quale conoscere bene l’inglese non e’ necessario (per inciso, guardare Platoon e’ stata un’autentica tragedia…). Che dire a riguardo? Film (o cartone? come si dovrebbe definire?) piacevole e pieno di trovate simpatiche. Ovviamente non potevo esimermi dall’usare il mio occhio clinico. E devo dire che mi sono piaciute moltissimo le trovate dei disegnatori per realizzare i movimenti di Wall-E che, specie nelle primissime battute, sono dannatamente realistiche. Intendiamoci, la tecnologia attuale e’ ancora ben lontana dal riuscire a produrre qualcosa che si muova con quella naturalezza e velocita’. Ma i principi in accordo ai quali un robottino di quelle fattezze si muoverebbe sono esattamente quelli descritti nel film. Il che dimostra un attenzione ai dettagli veramente degna di nota. Straordinario come i disegnatori riescano a trasmettere emozioni intensissime semplicemente utilizzando gli occhi di Wall-E. Occhi, che occhi non sono, ma semplici specie di binocoli. Eppure, basta modificare di un niente l’angolo secondo cui questi sono orientati, oppure mostrare sulla loro superficie un certo riflesso, ed ecco che questi occhi parlano. Splendido. Un’autentica chicca, poi, il suono in stile Mac ogni qualvolta che Wall-E si sveglia. Insomma, non sara’ un film che vi cambiera’ la vita, ma di sicuro si tratta di una visione piu’ che piacevole.

Manco a dirlo, sulla rete siamo gia’ sommersi di gadget dedicati al robottino raccogli-rifiuti della Pixar. Basti dare un occhio a cosa offre Amazon per rendersene conto.

Contrordine compagni!

Scordate quanto detto qualche giorno fa. L’abstract che abbiamo sottomesso per il famoso book chapter di “Advances in Cognitive Systems”, alla fine e’ completamente diverso rispetto a quello che vi avevo presentato. Diciamo che e’ stato un buon esercizio stilistico, ma in ultima analisi piuttosto fine a se stesso. Quindi, contrordine compagni.

Ecco a voi il nuovo abstract, fresco fresco di invio:

The strategic level and the tactical level of behaviour

The behaviour of organisms has both a strategic level and a tactical level. The strategic level is the level at which an organism decides the particular activity that the organism has to execute at any given time. The tactical level is the level at which the organism executes the specific behaviours which constitute the activity decided at the strategic level and which make it possible to reach the goal of the activity. The tactical level is obviously important because it is the actual level of behaviour. But the strategic level is even more critical because to survive and reproduce all organisms have to accomplish many different activities and they generally cannot be involved in more than one single activity at any given time. Therefore, there must exist some mechanism in the organism for deciding to which specific activity to dedicate itself at any particular time. Examples of different activities are eating, drinking, avoiding predators and other dangers, finding a partner for reproduction, insuring the survival of one’s offspring, sleeping, reacting appropriately to physical pain. At one given time the organism must decide, for example, to eat, and not to drink or to find a partner for reproduction or to sleep, and then it must execute the specific behaviours in response to environmental stimuli that allow the organism to eat. The two levels of behaviour may be labelled “motivational” (strategic level) and “cognitive” (tactical level). An organism’s chances to survive and reproduce depend on both its capacity to manage appropriately the competition between different motivations and to choose the specific motivation that must govern its behaviour at any given time and its ability to generate the appropriate sensory-motor mappings that constitute the activity aimed at satisfying its current motivation.

In this chapter we will illustrate the distinction between the strategic and the tactical levels of behaviour by describing a series of simple computer simulations in which a population of organisms evolves in various types of environments.

Very often the strategic level involves the arrival of information from the organism’s body to the organism’s brain. For example, if the organism must decide whether to look for food or to look for water the organism’s body must inform the organism’s brain concerning the quantity of energy (hunger) and of liquids (thirst) currently contained in the body. This input from the body arrives to a motivational circuit that acts together with the sensory input from the external environment to determine the organism’s behaviour. More specifically, the input from the body (motivational input) may have an attentional role in the sense that it allows the organism to respond to some part of the current input from the external environment and to ignore the remaining part. For example, if an organism is hungry but not thirsty (the organism’s body informs the organism’s brain that there is little energy but sufficient liquids in the body), the organism will ignore sensory input from water and respond to sensory input from food by approaching and eating the food.

However, since the body constitutes an internal environment that co-evolves with the brain in order to insure the organisms’ reproductive chances, it is possible to show that a system for informing the brain about the current level of energy and liquids present in the body is more useful in certain environments with a given distribution of food and water than in other environments with a different distribution of food and water. In other words both the motivational and cognitive capacities of organisms evolve in function of the particular environment in which the population of organisms happens to live. The different environments and the different motivational systems are also reflected in the behaviour exhibited by the organisms in a controlled (experimental) situation in which an individual is exposed to both food and water and it has to decide whether to approach food or water.
For other motivations, however, it is the sensory input from the external environment which triggers the motivational choice and causes the organism to decide the activity to execute. In an environment that contains both food and predators an organism can look for food when the predator is absent but must cease looking for food and react appropriately to the predator (for example, by flying away from the predator) when the predator appears. These simulations indicate that it may be important for an organism’s brain to include a special motivational circuit which is activated by sensory input from the external environment and acts together with the cognitive circuit that maps sensory input into motor output. This motivational circuit may reside in different parts of the brain with respect to the cognitive circuit (e.g., sub-cortical vs. cortical), may have different structural and functional properties (more rapid and more prolonged action), and may result in more effective (adaptive) behaviour.

Finally, these simulations on motivational systems make it possible to explore pathological conditions such as “depressive” states in which competition between different but equally strong motivations may lead to maladaptive behaviour. In fact it can be shown that individual organisms which are unable to survive and reproduce may belong to two different typologies: individuals that are not very good at executing appropriately an activity such as approaching food or water or flying away from a predator (cognitive deficit) and individuals which become “paralyzed” when they are exposed to two competing motivations that are both very strong (motivational or clinical deficit).

Papers e Word 2008 per gestire la bibliografia facilmente su Mac

Alle prese con la stesura del paper da sottomettere ad IJCNN 2009, mi sono imbattuto in un interessante post trovato su Bloody Fingers, che potete rintracciare a questo link.

Il post in questione tratta dell’interfacciamento tra Papers, un software della Mekentosj sviluppato per Mac che consente di archiviare in maniera pratica e sensata articoli scientifici, e l’intramontabile Microsoft Word. Quest’ultimo, strumento principe per scrivere articoli usato da chi, come il sottoscritto, non ha particolare dimestichezza con il mondo del LaTeX. In sostanza, a partire dalla versione 1.7, Papers e’ in grado di esportare l’archivio dei propri articoli in un formato compatibile con il Bibliography Manager di Word per Mac. In questo modo, con pochi e semplici click, e’ possibile inserire citazioni nei propri documenti Word ed ottenere una bibliografia ben formattata in fondo. Decisamente una bella comodita’, anche se il formato in cui la bibliografia viene riassunta ad una prima occhiata non mi entusiasma particolarmente.

Ad ogni modo, se volete saperne di piu’ su come Word gestisce la bibliografia, consiglio una lettura all’interessante documento che trovate qui.

Vai di abstract

Prima o poi diventero’ uno scrittore di abstract. Con quello che mi e’ stato richiesto di scrivere oggi pomeriggio, in piena emergenza, credo di essere arrivato in doppia cifra. E direi che una volta tanto non mi e’ uscito neppure tanto male. Lascio comunque a voi i giudizi.

The work covered by this grant focuses on the use of embodied neural network controllers for MAV (Micro-unmanned Aerial Vehicles) swarms. The goal of the research is to demonstrate how autonomous controllers for groups of flying robots can be successfully developed through computer simulations based on multi-agent systems and evolutionary robotics methodologies.
In the computer simulations we have developed a swarm made of four MAVs has to navigate through an unknown environment, looking for and attempting to neutralize a certain target. In order to make the target inoffensive, a MAV need to perform a low-potential detonation when the distance between itself and the target is lower than a certain threshold. In our hypothesis the MAVs do not have a formalized knowledge about the environment. The only information they can rely on is provided by a satellite system, which informs them about the target’s geographical coordinates. We have tested the swarms’ behaviour in four different experimental setups. First, we have created a simulated environment free of any obstructions. Then we have introduced into the environment many buildings (imitating the buildings’ deployment style typically seen into a Western city, i.e. in our case Canary Wharf, London) that the MAVs are able to perceive during navigation thanks to a set of onboard ultra-sonic sensors. We have then introduced a target able to move, trying to fly away from the MAVs, and a more “robust” one, which requires two contemporary detonations to be neutralized.
The results obtained so far seem to demonstrate the validity of the approach we have chosen to follow. The average percentage of tests concluded successfully for the two easier scenarios is in both cases higher than 85% (respectively 93.46% for obstacle free environments and 87.18% when many buildings are present into the simulated scenario). In case of a target able to move at a speed comparable to the one of a person running, the measured success rate equals to 81.89%. The performance of the neural network-based controllers decreases when the task requires cooperation. In case of a non-movable target that needs two hits in order to be neutralized, the success rate is about 70%. This value becomes minor than 50% when the target is “robust” as well as able to move.
Further investigations on this topic will be focused on the development of forms of communications between the swarms’ members. The idea behind this is that MAVs should greatly benefit from exchanging information when performing tasks requiring cooperation and coordination. At the same time a new 3D simulator is being built in order to develop autonomous controller more easily transferrable on real hardware platforms.

15th place

Di sicuro non posso lamentarmi della costanza. Questa proprio non mi sta mancando quest’anno. Al settimo appuntamento con il campionato di poker della UPPS chiudo al 15esimo posto sui soliti 70 giocatori al via. Ricapitolando un po’, nelle precedenti sei giornate ho infatti terminato rispettivamente 84/90 (uscito subito contro quel famoso runner runner quads), 26/81, 16/91, 27/72, 16/73, 21/70. Ancora una volta chiudo lontano dalla vittoria. Ancora una volta lontano dal final table. Ma ancora una volta con un po’ di punticini in piu’ in tasca rispetto alla volta prima. I primi della classe, finalmente, hanno tutti subito un brusco stop. Al contrario, quelli piu’ vicini a me si sono comportati alla grande. Quindi, paradossalmente, nonostante il buon piazzamento potrei anche aver perso un paio di posizioni, per quanto dovrei rimanere abbondantemente nella top 15. Di sicuro pero’ la classifica si e’ accorciata e questa e’ sempre cosa buona e giusta. Certo, per ambire alle prime posizioni, bisogna iniziare ad infilare almeno un maledetto final table.

Cronaca veloce. Stavolta, miracolo dei miracoli, le mie calzine porta-fortuna non deludono. E vedo carte. AK e AA in sequenza durante la prima mezz’ora di gioco. Vinco poi tre bei piatti multiway legando bene al flop o trovando i miei avversari completamente vuoti. Gioco solido e i miei raise sono molto rispettati, cosi’ ne approfitto un po’.

Poi, alle soglie del break, la prima mano negativa della serata. UTG e UTG+1 foldano. Il terzo giocatore, con circa 2000 chips ed estremamente tight, fa un min-raise a 400 totali. Fold del giocatore dopo di lui e call di quello dopo ancora, da poco arrivato al tavolo con poco meno di 3,000 chips, sul quale non ho informazioni particolari. Fold del bottone e dello SB. Io scopro coppia di 9, ci penso un po’ su e raiso a 1,200 totali. Quello che mi preoccupa particolarmente e’ il primo raiser e sono pronto a mollare la mano nel caso in cui mi mostri grande forza re-raisandomi o anche solo chiamando e puntando al flop. Mentre valutavo il da farsi, pero’, prendendo le chips e mimando il rilancio, le sue smorfie mi fanno capire che non ha una grossa mano. Cosi’ sparo. Come previsto il raiser iniziale folda, ma l’altro giocatore in tutta risposta mi manda la vasca. Chiamo e mi scopre coppia d’assi. Poi, va beh, manco a dirlo, asso al flop giusto per non avere dubbi su chi vincera’ la mano. Se vi va di approfondire un po’ questa giocata, ne abbiamo discusso stamattina a questo link. Io non gli facevo assolutamente due assi visto il precedente limp (pericolosissimo con ancora SB e BB in gioco) e pensavo piuttosto di essere in coin-flip o davanti con una coppia piu’ alta della sua. Ma non era cosi’.

Destino vuole, tuttavia, che riesca a riprendermi alla grande e poi buttare fuori, questa volta con due assi che arrivano a me, il giocatore con cui mi ero scrociato in precedenza. Queste sono le grandi soddisfazioni del poker. Il gioco procede, prendo un altro brutto colpo, poi al penultimo tavolo riesco in un double-up chiamando dal BB il raise all-in di un avversario. Buii a 600/1200, io con 3,000 chips non guardo neppure le carte e chiamo. Destino vuole che abbia un discreto A8-o e sia sufficiente per battere le sue due high cards. Esco poi in puro bluff. 7,000 chips in cassa da UTG+2 con buii a 800/1600. Call da UTG, call da UTG+1 e io, con tutto quel ben di dio di chips nel piatto senza che nessuno abbia mostrato grande forza, forte del mio stack ancora pungente, mi fiondo all-in. Tutti fold eccetto il primo limper, che chiama e mi gira coppia di K. I quali tengono senza il minimo scossone. Niente da fare, era evidentemente la serata dei limp idioti.

That’s my (3d) face

Ammettetelo. Quando girate nei meandri di un museo o per una chiesa antica e vi imbattete nel busto di un qualche personaggio piu’ o meno famoso (sia esso un famoso condottiero o un semplice benefattore), fantasticate su come sarebbe se foste voi ad essere al suo posto. Pero’ poi vi rendete conto del fatto che siamo nel 2008 e che questa forma d’arte inizia a non essere piu’ tanto in voga. E cosi’ avete una scusa valida per non sbattervi troppo nel tentare di diventare meritevoli di un busto anche voi. Ma magari vi chiedete anche come i nostri antenati si ricorderanno di noi tra due/tre secoli.

Ebbene, a questo link trovate una possibile risposta. Una bella simil-statua, alias un contenitore contenente una replica 3D della vostra capoccia. Decisamente trash, ma di sicuro effetto. Chi e’ il volontario che prova a ordinarne una?

Enjoy the power of Gigapedia

Signore e signori, ho trovato il paradiso. E se cio’ e’ accaduto lo devo al buon Matteo, che durante una brevissima chiacchierata mattutina via Skype mi ha reso partecipe dell’esistenza di Gigapedia.

Trattasi, come dicevo qui sopra, di un piccolo paradiso. Almeno fino a quando riuscira’ a resistere. E’ sufficiente registrarsi (gratuitamente) per poter fare ricerche nell’immenso archivio di libri in formato PDF linkati dal portale. Linkati e liberamente scaricabili. O meglio, non liberamente scaricabili, ma comunque scaricabili. Insomma, ci siamo capiti.

Giving lectures at UoP

E’ andata. La mia prima lezione in quel di Plymouth e’ finita. Ammetto candidamente che non e’ andata particolarmente bene, ma non mi prendo piu’ della meta’ della colpa. Il problema di fondo e’ che la lezione era strutturata veramente male. Dalle slides (senza altro materiale didattico) che mi sono state date era difficile riuscire a capire dove chi le ha preparate volesse andare a parare. C’erano strafalcioni enormi ed in generale mancava un filo logico. Ho provato a rimediare un po’, riaggiustanto qualche diapositiva e riordinandole, ma per i miracoli ancora non sono attrezzato…

Posso pero’ imputarmi tutte le colpe per la gestione temporale. Studenti attenti e presenti in un discreto numero. Ma per un tragico errore di valutazione, dopo quaranta minuti di lezione (sull’ora originariamente prevista) mi sono accorto di essere arrivato all’ultima slide. Quindi la lezione, per la gioia dei presenti, si e’ conclusa con abbondante anticipo rispetto alla tabella di marcia prevista. Settimana prossima andra’ decisamente meglio, ne sono sicuro.

Chiuso il capitolo insegnamento, nel pomeriggio mi sono buttato nella stesura di una bozza dell’abstract che entro venerdi’ della settimana prossima dovro’ sottomettere agli editors di Advances in Cognitive Systems. Ho provato anche ad indicare, come richiesto, un provisional title. Posto il tutto qui di seguito, nel caso in cui abbiate commenti/consigli/quant’altro da proporre.

The importance of a dualistic nervous system: the advantages coming from equipping artificial organisms with a limbic system equivalent

In the work we are going to present we focus on the role played by the limbic system in human and artificial systems. We will first do a brief overview of what the limbic system is, and what is its presumably role from a neuropsychological perspective. We will then highlight the importance of reproducing it into artificial organisms in order to implement complex behaviours otherwise difficult to be reproduced.

We have decided to test our hypothesis about a possible implementation of a limbic system equivalent in artificial organisms employing typical Artificial Life (Langton, 1995) and Evolutionary Robotics (Nolfi and Floreano, 2000) methodologies. We will therefore describe the results obtained by two different sets of computer simulations run.

In the first set of simulations we aim to demonstrate the advantage in evolutionary terms provided by the presence of a sub-cortical circuit into the human/animal nervous system. What we are interesting in reproducing are situations characterised by a high emotional content – as prey/predator scenarios – which are the ones that typically prime the limbic system. The simulations run demonstrate that a fast but non-optimal processing of the sensorial information, as the one that the limbic system makes possible [some sort of references required!], could lead to better performances than a perfect but slower processing as it is typically guaranteed by the preminent employment of the brain’s cortical areas.

In the first simulations the two circuits (slow/accurate and fast/rough) have been used competitively – employing an evolutionary switch – just to demonstrate the non-obvious advantages generated by the latter. We are aware that, at least in mammals’ nervous systems, these two circuits are not mutually exclusive but they work together instead. In humans, for instance, the limbic system receives connections from other parts of the brain and gathers information from all the sensory system via parahippocampal gyrus (Neil Martin, 1997). The second set of simulations has been therefore targeted to clarify how the dualistic mechanism outlined above could actually work. We will see that the co-existence of two parallel circuits provides a general benefit to the individual. This result is achieved thanks to a better sensorial inputs filtering guaranteed by the limbic system, which allows the organism to concentrate itself on the stimulus relevant for its current activity only, while ignoring the others. Stated differently, when the two circuits are connected together, the limbic system aids the cortical circuit to filter out the sensorial information irrelevant for the current task.

The final discussion will touch both:

1) the plausibility, from a biological perspective, of the limbic system model sketched in this work;
2) the possibility to develop artificial agents able to cope with an increasing amount of emotional input stimulus, selecting the right action to perform at any given time.

Questo mi e’ nuovo…

Stavo provando a stampare le slides Powerpoint per la lezione di domani, quand’ecco che accade il solito inconveniente dell’ultimo minuto. La stampante dell’ufficio, per qualche oscuro motivo, si rifiuta di stampare le slides. Sia che lo faccia direttamente da Powerpoint, sia che esporti prima in PDF e quindi tenti la stampa (pure da un altro computer) del PDF stesso. Questo e’ quello che mi viene stampato.

Curioso come ci sia di mezzo una funzione chiamata ATAN, come quella che in C++ permette di calcolare l’arco-tangente. E che, casualmente, utilizzo anche nel mio simulatore.

ASUS AiGuru SV1

Skype ha inserito oggi sul suo store online l’AiGuru SV1, telefono Skype prodotto da Asus, erede designato del poco fortunato modello S1, che come tutti i suoi competitors si e’ trovato a dover fronteggiare l’inaspettato avvento dello Skypephone e veder cosi’ immediatamente distrutta la nicchia di mercato nel quale provava a collocarsi.

Prezzo non propriamente appetibile (£220 qui in UK), nonche’ gadget di pressoche’ nulla utilita’ per chiunque sia in possesso e sufficientemente abile nell’utilizzo di un computer. Ma oggettino decisamente simpatico. Nonche’ utile per tutti coloro (anziani e analfabeti tecnologici) che cercano giusto un modo per stare in contatto con un familiare sparso in qualche remota parte del globo. L’AiGuru SV1, infatti, non e’ altro che un telefono per Skype che permette di effettuare sia le chiamate Skype<->Skype, sia quelle da/verso linea fissa. Caratteristiche principali sono l’ampio display da 7″ (grande quanto lo schermo dell’eee PC prima generazione, per intenderci), la webcam integrata e la quasi totale assenza di tasti, rimpiazzati dal touch screen.

I primi report non sono propriamente positivi. Si parla di pessima risoluzione e frame-rate scadente. Staremo a vedere…

Pagina Successiva »