Multimedia on the mountaintop: presentation at ACM MM2016Piero Fraternali
This paper merges multimedia and environmental research
to verify the utility of public web images for improving water
management in periods of water scarcity, an increasingly
critical event due to climate change. A multimedia processing
pipeline fetches mountain images from multiple sources
and extracts virtual snow indexes correlated to the amount
of water accumulated in the snow pack. Such indexes are
used to predict water availability and design the operating
policy of Lake Como, Italy. The performance of this informed
policy is contrasted, via simulation, with the current
operation, which depends only on lake water level and day of
the year, and with a policy that exploits ocial Snow Water
Equivalent (SWE) estimated from ground stations data and
satellite imagery. Virtual snow indexes allow improving the
system performance by 11.6% w.r.t. the baseline operation,
and yield further improvement when coupled with ocial
SWE information, showing that the two data sources are
complementary. The proposed approach exemplies the opportunities
and challenges of applying multimedia content
analysis methods to complex environmental problems.
presentation at European Utility Week, Vienna, Nov. 2015Piero Fraternali
This document discusses using smart water meter data and analytics to improve demand management and customer relationships for water utilities. It describes collecting high frequency consumption data from smart meters, analyzing the data to classify customers and detect usage patterns, and developing a consumer portal with personalized tips, goals, comparisons to peers, and games to motivate more efficient water use. The system is currently being piloted with 400 households in Switzerland and will be deployed in London and Valencia in upcoming years.
This document discusses how to effectively exploit and leverage both corporate and user-generated content through cooperation between humans and machines. It outlines several challenges, such as dealing with low quality or adversarial content, and proposes solutions like incentivizing high quality contributions and using techniques like crowdsourcing, trust modeling, and gamification to optimize content creation and verification. The key is developing new algorithms and systems that coordinate humans and computers to obtain quality content with minimal resources, while also addressing issues like unreliable algorithms or deception by human contributors.
Multimedia on the mountaintop: presentation at ACM MM2016Piero Fraternali
This paper merges multimedia and environmental research
to verify the utility of public web images for improving water
management in periods of water scarcity, an increasingly
critical event due to climate change. A multimedia processing
pipeline fetches mountain images from multiple sources
and extracts virtual snow indexes correlated to the amount
of water accumulated in the snow pack. Such indexes are
used to predict water availability and design the operating
policy of Lake Como, Italy. The performance of this informed
policy is contrasted, via simulation, with the current
operation, which depends only on lake water level and day of
the year, and with a policy that exploits ocial Snow Water
Equivalent (SWE) estimated from ground stations data and
satellite imagery. Virtual snow indexes allow improving the
system performance by 11.6% w.r.t. the baseline operation,
and yield further improvement when coupled with ocial
SWE information, showing that the two data sources are
complementary. The proposed approach exemplies the opportunities
and challenges of applying multimedia content
analysis methods to complex environmental problems.
presentation at European Utility Week, Vienna, Nov. 2015Piero Fraternali
This document discusses using smart water meter data and analytics to improve demand management and customer relationships for water utilities. It describes collecting high frequency consumption data from smart meters, analyzing the data to classify customers and detect usage patterns, and developing a consumer portal with personalized tips, goals, comparisons to peers, and games to motivate more efficient water use. The system is currently being piloted with 400 households in Switzerland and will be deployed in London and Valencia in upcoming years.
This document discusses how to effectively exploit and leverage both corporate and user-generated content through cooperation between humans and machines. It outlines several challenges, such as dealing with low quality or adversarial content, and proposes solutions like incentivizing high quality contributions and using techniques like crowdsourcing, trust modeling, and gamification to optimize content creation and verification. The key is developing new algorithms and systems that coordinate humans and computers to obtain quality content with minimal resources, while also addressing issues like unreliable algorithms or deception by human contributors.
This document discusses human computation and how crowdsourcing and games can be used to solve problems. It provides examples of early human computation tasks like CAPTCHAs and describes different types of crowdsourcing games like output agreement, input agreement, and inversion games. Specific games discussed include ESP, TagATune, and Peekaboom. The document also outlines forms of human computation like crowdsourcing, games with a purpose, social mobilization, and how human computation can be applied to tasks involving public resource management, extracting information from data, and predictive modeling. Finally, it discusses some open problems and examples of human computation projects from Politecnico di Milano.
Better society: Meet us at #ICT2013eu for #trustedsocialmedia http://bit.ly/1...Piero Fraternali
Social media usage has surpassed email and people now spend over 200 million hours per month gaming online in the US. However, issues like spam, cheating, and threats to privacy and reputation exist on current social media platforms. The document proposes empowering Horizon 2020 by developing methods, platforms, tools, social incentives and business models to create trustable social media centered around assessing the trust and reputation of online content and people. This would help harness collective intelligence into apps that can support sustainability, the environment, social capital and economic growth.
1. The CUbRIK project combines automatic face recognition tools with crowdsourcing to build social graphs from images. It uses a four-tier architecture to process content and queries.
2. An initial proof of concept used a general purpose crowd to validate top face matches identified by an automatic tool on a dataset of European history photos, but achieved only weak results due to image quality issues and the non-expert crowd.
3. The presentation argues that using an expert-based crowdsourcing approach could overcome the limitations seen with solely automatic processing and general purpose crowds, by leveraging experts' domain knowledge and ability to collaborate within their communities.
This document discusses human computation and its uses in natural resource management. It defines human computation and describes various forms it can take including crowdsourcing, games with a purpose, solution space exploration, and social mobilization. Examples are given of human computation being used to monitor waterways, predict population dynamics from Twitter data, and predict snow levels from Flickr photos. Open issues and research projects exploring uses of human computation for problems in areas like predicting water demand are also discussed.
This document provides an introduction to model driven engineering and software models. It discusses how models provide an abstract representation of a system that can be used to investigate and verify properties before production. The document then covers the history of software models and milestones like the Object Management Group adopting standards like the Unified Modeling Language (UML) and Model Driven Architecture (MDA). It defines key concepts in model driven engineering like platform independent models and platform specific models. Finally, it discusses how models are specified using meta-models and transformations between models.
CGI (Common Gateway Interface) is an interface that allows a web server to launch external applications dynamically in response to requests. It defines standard communication variables between the web server and CGI programs. CGI programs can be written in any programming language and are executed by the web server to generate dynamic web page content on the fly based on request parameters and structured data. However, CGI has performance and security limitations due to creating new processes for each request.
2. Cenni all’algebra di Boole
L’algebra di Boole (inventata da George Boole,
britannico, ’800), o algebra della logica, si basa su
operazioni logiche
Le operazioni logiche sono applicabili a operandi logici,
cioè a operandi in grado di assumere solo i valori vero e
falso
Si può rappresentare vero con il bit 1 e falso con il bit 0
(convenzione di logica positiva)
3. Operazioni logiche fondamentali
Operatori logici binari (con 2 operandi logici)
Operatore OR, o somma logica
Operatore AND, o prodotto logico
Operatore logico unario (con 1 operando)
Operatore NOT, o negazione, o inversione
Poiché gli operandi logici ammettono due soli
valori, si può definire compiutamente ogni
operatore logico tramite una tabella di
associazione operandi-risultato, chiamata tabella di
verità
4. Operazioni logiche fondamentali
Tabelle di verità
A B
A or B
A B
A and B
A
not A
0
0
0
0
0
0
0
1
0
1
1
0
1
0
1
0
1
0
1
1
0
0
(negazione)
1
1
1
1
1
1
(somma logica)
(prodotto logico)
Le tabelle elencano tutte le possibili combinazioni in
ingresso e il risultato associato a ciascuna combinazione
5. Altri operatori logici
A B
A xor B
0
0
0
0
1
1
1
0
1
1
1
0
XOR, detto anche EX-OR o OR
esclusivo: il risultato è vero se solo
uno dei due operandi è vero
A xor B = ( A and ( not B ) ) or ( ( not A ) and B )
6. Altri operatori logici
A B
A xnor B
0
0
1
0
1
0
1
0
0
1
1
1
XNOR, detto anche EX-NOR:
l’inverso di XOR
A xnor B = not(A xor B) =
= not(( A and ( not B ) ) or ( ( not A ) and B ))
7. Espressioni logiche (o Booleane)
Come le espressioni algebriche, costruite con:
Variabili logiche (letterali): p. es. A, B, C = 0 oppure 1
Operatori logici: and, or, not
Esempi:
A or (B and C)
(A and (not B)) or (B and C)
Precedenza: l’operatore “not” precede l’operatore “and”,
che a sua volta precede l’operatore “or”
A and not B or B and C = (A and (not B)) or (B and C)
Per ricordarlo, si pensi OR come “+” (più), AND come “×”
(per) e NOT come “−” (cambia segno)
8. Tabelle di verità delle espressioni
logiche
A
B
NOT ( ( A OR B) AND ( NOT A ) )
0
0
1
0
1
0
1
0
1
1
1
1
Specificano i valori di verità per tutti i possibili valori
delle variabili
9. Tabelle di verità delle espressioni
logiche
A and B or not C
ABC
X = A and B
Y = not C
X or Y
000
0 and 0 = 0
not 0 = 1
0
or
1
=1
001
0 and 0 = 0
not 1 = 0
0
or
0
=0
010
0 and 1 = 0
not 0 = 1
0
or
1
=1
011
0 and 1 = 0
not 1 = 0
0
or
0
=0
100
1 and 0 = 0
not 0 = 1
0
or
1
=1
101
1 and 0 = 0
not 1 = 0
0
or
0
=0
110
1 and 1 = 1
not 0 = 1
1
or
1
=1
111
1 and 1 = 1
not 1 = 0
1
or
0
=1
10. Tabelle di verità delle espressioni
logiche
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
( B OR NOT C ) AND ( A OR NOT C )
0 1
1 0
1
0 1
1 0
0 0
0 1
0
0 0
0 1
1 1
1 0
1
0 1
1 0
1 1
0 1
0
0 0
0 1
0 1
1 0
1
1 1
1 0
0 0
0 1
0
1 1
0 1
1 1
1 0
1
1 1
1 0
1 1
0 1
1
1 1
0 1
11. A che cosa servono le espressioni
logiche?
A modellare alcune (non tutte) forme di ragionamento
A = è vero che 1 è maggiore di 2 ? (sì o no, qui è no) = 0
B = è vero che 2 più 2 fa 4 ? (sì o no, qui è sì) = 1
A and B = è vero che 1 sia maggiore di 2 e che 2 più 2 faccia 4 ?
Si ha che A and B = 0 and 1 = 0, dunque no
A or B = è vero che 1 sia maggiore di 2 o che 2 più 2 faccia 4 ?
Si ha che A or B = 0 or 1 = 1, dunque sì
OR, AND e NOT vengono anche chiamati connettivi logici,
perché funzionano come le congiunzioni coordinanti “o” ed
“e”, e come la negazione “non”, del linguaggio naturale
Si modellano ragionamenti (o deduzioni) basati solo sull’uso
di “o”, “e” e “non” (non è molto, ma è utile)
12. Che cosa non si può modellare
tramite espressioni logiche?
Le espressioni logiche (booleane) non modellano:
Domande esistenziali: “c’è almeno un numero reale x tale che il suo quadrato
valga −1 ?” (si sa bene che non c’è)
∃x | x2 = −1
è falso
Domande universali: “ogni numero naturale è la somma di quattro quadrati
di numeri naturali ?” (si è dimostrato di sì)
∀x | x = a2+b2+c2+d2 è vero (“teorema dei 4 quadrati”)
Più esattamente andrebbe scritto: ∀x ∃a,b,c,d | x = a2+b2+c2+d2
∃ e ∀ sono chiamati “operatori di quantificazione”, e sono ben
diversi da or, and e not
La parte della logica che tratta solo degli operatori or, and e not si
chiama calcolo proposizionale
Aggiungendo gli operatori di quantificazione, si ha il calcolo dei
predicati (che è molto più complesso)
13. Tautologie e Contraddizioni
Tautologia
Una espressione logica che è sempre vera, per
qualunque combinazione di valori delle variabili. Nella
tabella della verità risulta sempre 1
Esempio: principio del “terzo escluso”: A or not A (tertium non
datur, non si dà un terzo caso tra l’evento A e la sua negazione)
Contraddizione
Una espressione logica che è sempre falsa, per
qualunque combinazione di valori delle variabili. Nella
tabella della verità risulta sempre 0
Esempio: principio di “non contraddizione”: A and not A
(l’evento A e la sua negazione non possono essere entrambi
veri)
14. Equivalenza tra espressioni
Due espressioni logiche si dicono equivalenti (e si indica con ⇔)
se hanno la medesima tabella di verità. La verifica è algoritmica.
Per esempio:
AB
not A and not B ⇔ not (A or B)
00
not 0 = 1
01
1 and 0 = 0
not 1 = 0
10
0 and 1 = 0
not 1 = 0
11
1 and 1 = 1
0 and 0 = 0
not 1 = 0
Espressioni logiche equivalenti modellano gli stessi stati di verità a
fronte delle medesime variabili
15. Proprietà dell’algebra di Boole
L’algebra di Boole gode di svariate
proprietà, formulabili sotto specie di identità
(cioè formulabili come equivalenze tra espressioni
logiche, valide per qualunque combinazione di
valori delle variabili)
Esempio celebre: le “Leggi di De Morgan”
not (A and B)
not (A or B)
= not A or not B
= not A and not B
(1a legge)
(2a legge)
16. Proprietà dell’algebra di Boole
Alcune proprietà somigliano a quelle dell’algebra
numerica tradizionale:
Proprietà associativa: A or (B or C) = (A or B) or C (idem per AND)
Proprietà commutativa: A or B = B or A
(idem per AND)
Proprietà distributiva di AND rispetto a OR:
A and (B or C) = A and B or A and C
… e altre ancora
Ma parecchie altre sono alquanto insolite…
Proprietà distributiva di OR rispetto a AND:
A or B and C = (A or B) and (A or C)
Proprietà di assorbimento (A assorbe B):
A or A and B = A
Legge dell’elemento 1: not A or A = 1
… e altre ancora
17. Uso delle proprietà
Trasformare un’espressione logica in un’altra, differente per
aspetto ma equivalente:
=
=
=
=
=
=
not A and B or A =
(assorbimento)
not A and B or (A or A and B) =
(togli le parentesi)
not A and B or A or A and B =
(commutativa)
not A and B or A and B or A =
(distributiva)
(not A or A) and B or A =
(legge dell’elemento 1)
VERO and B or A =
(vero and B = B)
B or A è più semplice dell’espressione originale !
Si verifichi l’equivalenza con le tabelle di verità!
Occorre conoscere un’ampia lista di proprietà e si deve
riuscire a “vederle” nell’espressione (qui è il difficile)