Affichage des articles dont le libellé est partage. Afficher tous les articles
Affichage des articles dont le libellé est partage. Afficher tous les articles

02/07/2015

Robolution, Homme 2.0, Information 2.0

ROBOLUTION


J'entends parler, de-ci, de-là, de Robolution, comme quoi, d'ici 10 à 15 ans, les robots seront partout, que d'ici 5 ans, il y aura je ne sais combien d'objets connectés...

Mais ça me fait peur, moi, ils vont me prendre mon boulot, et je serais espionné, avec toutes ces caméras et ces capteurs qui collectent des informations sur moi, et les envoient à je ne sais quelle multinationale...

Il parait qu'ils seront plus intelligents que nous, avec leur puissance de calcul et auront accès à beaucoup pus d'informations, puisqu'ils seront connectés...

Et moi??? Qu'est-ce que je deviens, là-dedans ???

Vais-je être exterminé, les robots considérant qu'ils n'ont pas besoin des êtres humains (êtres inférieurs) ???

Dans cet article : https://wtvox.com/2015/06/roboethics-universal-robot-rights-ethics-and-legislation/, par exemple, il est déjà question de leurs droits, savoir si on a le droit de "tuer un robot" qui serait plus intelligent que nous, et à qui on aurait appris à réfléchir, à avoir des émotions...


HOMME 2.0

L'homme, pour survivre, a dû s'adapter aux nombreux changements de son environnement. Il semble que nous nous trouvions engagés dans l'un de ces changements majeurs. La course à la technologie que nous menons actuellement provoque des changements importants dans les habitudes et les comportements, et nous avons du mal à imaginer jusqu'où cela va nous mener.

STOP ! 

On a loupé une marche, ça va trop vite, et l'humain de base que je suis, préoccupé par son travail, ses enfants, son quotidien,... n'a pas pris le train dès le départ, on m'a catapulté dedans plus tard, et il avait déjà une bonne vitesse, ce train...

On me propose des outils (smartphone, objets connectés,...) qui certes sont sensés me rendre la vie plus facile en me fournissant des tonnes d'infos, mais j'ai raté le passage en gare de la "Société de l'Information", cette société dont on nous vantait les mérites dans les années 90 a déjà disparu, remplacée par des sociétés plus innovantes, plus connectées, plus plus plus ...

Mais l'information n'a pas connu sa révolution et c'est pourtant un point d'étape obligé, si l'homme ne veut pas se retrouver "exterminé" par une société de robots qui s'approprieraient ces informations...

Dans les années 80-90, on a usé du concept de "Société de l'Information", car on avait accès à des tonnes d'informations, grâce à Internet, mais une fois consultée, on s'en moquait, ou on la retenait, on l'exploitait peu...


INFORMATION 2.0


Aujourd'hui, les Intelligences Artificielles (IA) sont capables de capter, stocker, relier, interpréter, fusionner, traiter des données instantanément, elles sont supérieures à nous dans ce domaine.

Pour ne pas être dépasser, je dois moi aussi apprendre à communiquer avec ces intelligences artificielles et ces robots.

L'information de base, comme je la connais, comme je l'exploite au quotidien est matérialisable sous forme de textes, d'idée, de concepts définis dans un dictionnaire.

Mais l'information doit évoluer, être précisée...  On ne peut , par exemple plus se contenter de dire " ma maison", car cette notion regroupe des paramètres particuliers, des données différentes en fonction de chacun.
Si je dis "Je prends le bus pour venir", on ne saura de quel bus il s'agit réellement que si on connait le point de départ et le point d'arrivée, et encore, il faudra prendre en compte les habitudes, le contexte...

On a maintenant besoin de détailler l'information, il faut passer à l'information 2.0


Qu'est ce que l'information 2.0 ?

Quand on parle d'information 2.0, on ne parle plus d'un mot, d'une idée, ou d'un concept, mais d'une relation, d'une propriété, qui peut évoluer, ou encore être différente selon les points de vue.

La structure de base d'une information 2.0 est donc un triplet, et permet de décrire tout et n'importe quoi, comme une méthode (http://smag0.blogspot.fr/2015/06/visualiser-un-methode-pour-la-modifier.htmll).

Un triplet est un ensemble de trois élements tel que celui-ci  {sujet, predicat, objet} (https://fr.wikipedia.org/wiki/Resource_Description_Framework ) et permet d'établir une relation entre deux concepts, on retrouve une structure identique en xml, avec des elements, des clés et des valeurs.

on écrire par exemple  :
{VoitureDeDavid, type, Voiture }
{VoitureDeDavid, couleur, "jaune" }
{VoitureDeDavid, propriétaire, David }
{VoitureDeDavid, vitesse_de_pointe, 120Km/h}
{David, type, Humain}
{Voiture, sous_classe_de, Vehicule}
{VoitureDeDavid, marque, "Opel"}
...etc...
ainsi , quand on utilisera VoitureDeDavid, toutes les propriétés qu'on vient de rattacher pourront être exploitables, et visualisables en un instant, ou filtrables par un mécanisme de requêtes(Sparql)

Et RDF, permet de surcroît d'interconnecter les sources d'informations,et les graphes, permettent une visualisation et une appropriation plus claire de l'information, de la même manière que les cartes mentales, ou mindmap .

Les mindmaps sont une première étape, pour passer à l'information 2.0, car elles relient deux concepts, mais il leur manque souvent la nature du lien, ce que fournit RDF...

Une autre piste à explorer pour le stockage de grandes quantités d'informations est SPARK



23/04/2015

Coolitude

Téléchargez Coolitude4 : http://smag-smag0.rhcloud.com/coolitude4/Coolitude4.apk
l'application qui permet d'échanger des informations (projets, idées...) avec le système SMAG0. 

#Coolitude ou comment rencontrer des personnes intéressées par vos #projets.

Un réseau social basé sur la créativité et les projets plutôt que sur la libido? Hum, hum !

Pour transmettre des informations aux #robots#objets connectés de ma maison (#iot), je devais avoir sous la main une #appli me permettant d'enregistrer mes #idées, mes intentions, mes projets.
C'est le but de #Coolitude4  qui enregistre les informations au format #RDF sur un serveur #Fuseki.

Mais les fonctionnalités de cette appli vont plus loin : partage de projets , partage d'idées,  partages de ressources...

Par extension, cette appli permet de #visualiser les personnes qui ont des projets proches des miens, --> partage de ressources, de compétences --> réseau social basé sur les projets.

Appli en cours de dév pour Android seulement pour l'instant (version -alpha) téléchargeable ici http://smag-smag0.rhcloud.com/coolitude4/Coolitude4.apk

Et ça nous donne une liste des projets visible ici : http://smag-smag0.rhcloud.com/visu.jsp

Avis aux développeurs intéressés, ou pour reporter un bug, le code source est là :  https://github.com/scenaristeur/coolitude4

Fonction implémentées aujourd'hui : 
Les fonctions sont accessibles depuis la page d'accueil de l'appli, par le menu en haut à droite.
Page d'accueil : bouton Enregistrer --> permet de créer un nouveau projet, avec récupération des coordonnées GPS, 
- Carte : Visualisation des projets sur la carte ( recentrer manuellement sur Lyon, pour l'instant )
- Dans"Dernier Projets" : la liste des projets sur le serveur.
- Dans "100 derniers projets" --> la liste des projets, puis dans le menu, en haut à droite :

  • foaf:Agent : ajouter un agent (Group, Organization,Person);
  •  schema:Action (faut que je renomme, c'est plus dbpedia:Event, maintenant) : possibilité d'ajouter des evenements aux projets.
Pour voir le résultat, pour l'instant, c'est là (en descendant tout en bas, vous devriez voir vos derniers ajouts de projets, Agents et Evenements liés ) :


Pour en discuter, reporter un bug : https://groups.google.com/forum/#!topic/smag0/bRP0xAvvmis

Plus d'infos sur http://smag-smag0.rhcloud.com/
Plus d'infos sur RDF : https://larlet.fr/david/biologeek/archives/20070827-rdf-pour-tous-du-publicateur-au-developpeur-web/



!!! PLUS C'est la partie technique, réservée à ceux qui ont déjà entendu parlé de RDF ou Sparql |-}

Requetes Sparql utilisées: 

référence utilisées  :
les requetes s'effectuent sur le serveur Sparql à l'adresse ci-dessous : 
http://fuseki-smag0.rhcloud.com/ dans le graphe ds, choisissez ensuite votre format de sortie (output)

Selectionner tous les projets qui ont pour type <http://smag0.blogspot.fr/ns/smag0#Projet> 


select * where {?Projet <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://smag0.blogspot.fr/ns/smag0#Projet> }

lien direct, output JSON : 
http://fuseki-smag0.rhcloud.com/ds/query?query=select+*+where+%7B%3FProjet+%3Chttp%3A%2F%2Fwww.w3.org%2F1999%2F02%2F22-rdf-syntax-ns%23type%3E%09%3Chttp%3A%2F%2Fsmag0.blogspot.fr%2Fns%2Fsmag0%23Projet%3E+%7D&output=json&stylesheet=%2Fxml-to-html.xsl

Requete Sparql avec options : 


PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#>
PREFIX smag:   <http://smag0.blogspot.fr/ns/smag0#>
SELECT?projet ?titre ?description ?lat ?lon WHERE{
?projet <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> smag:Projet .
OPTIONAL {?projet <http://purl.org/dc/elements/1.1/title> ?titre }
 OPTIONAL {?projet <http://purl.org/dc/elements/1.1/description> ?description }
OPTIONAL {?projet smag:description ?description }
OPTIONAL { ?projet geo:lat ?lat }
 OPTIONAL { ?projet geo:long ?lon }
 OPTIONAL { ?projet smag:latitude ?lat } 
 OPTIONAL { ?projet smag:longitude ?lon } 
}
ORDER BY DESC(?projet)

ou :
http://fuseki-smag0.rhcloud.com/ds/query?query=PREFIX+geo%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2003%2F01%2Fgeo%2Fwgs84_pos%23%3E%0D%0A%0D%0APREFIX+smag%3A+++%3Chttp%3A%2F%2Fsmag0.blogspot.fr%2Fns%2Fsmag0%23%3E+%0D%0A%0D%0Aselect+%3Fprojet+%3Ftitre+%3Fdescription+%3Flat+%3Flon+where+%7B%0D%0A%0D%0A%3Fprojet+%3Chttp%3A%2F%2Fwww.w3.org%2F1999%2F02%2F22-rdf-syntax-ns%23type%3E+smag%3AProjet+.+%0D%0A%0D%0AOPTIONAL+%7B%3Fprojet+%3Chttp%3A%2F%2Fpurl.org%2Fdc%2Felements%2F1.1%2Ftitle%3E+%3Ftitre+%7D+%0D%0A%0D%0A+OPTIONAL+%7B%3Fprojet+%3Chttp%3A%2F%2Fpurl.org%2Fdc%2Felements%2F1.1%2Fdescription%3E+%3Fdescription+%7D+%0D%0A%0D%0AOPTIONAL+%7B%3Fprojet+smag%3Adescription+%3Fdescription+%7D+%0D%0A%0D%0AOPTIONAL+%7B+%3Fprojet+geo%3Alat+%3Flat+%7D+%0D%0A%0D%0A+OPTIONAL+%7B+%3Fprojet+geo%3Along+%3Flon+%7D+%0D%0A%0D%0A+OPTIONAL+%7B+%3Fprojet+smag%3Alatitude+%3Flat+%7D+%0D%0A%09%09%09%09%0D%0A+OPTIONAL+%7B+%3Fprojet+smag%3Alongitude+%3Flon+%7D+%0D%0A%09%09%09%09%0D%0A%7D%0D%0A%09%09%09%09%09%0D%0AORDER+BY+DESC%28%3Fprojet%29&output=xml&stylesheet=%2Fxml-to-html.xsl


récupérer les sous-classes (Agent, Group, Organisation)  sur http://lov.okfn.org/dataset/lov/sparql



PREFIX foaf:<http://xmlns.com/foaf/0.1/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>

### Vocabularies contained in LOV and their prefix
SELECT DISTINCT ?sousClasse {
  GRAPH <http://xmlns.com/foaf/0.1/>{
   ?sousClasse rdfs:subClassOf foaf:Agent
   
}} ORDER BY ?sousClasse

http://lov.okfn.org/dataset/lov/sparql?query=PREFIX+foaf%3A%3Chttp%3A%2F%2Fxmlns.com%2Ffoaf%2F0.1%2F%3E%0APREFIX+rdfs%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23%3E%0A+%0A%23%23%23+Vocabularies+contained+in+LOV+and+their+prefix%0ASELECT+DISTINCT+%3FsousClasse+%7B%0A+%09GRAPH+%3Chttp%3A%2F%2Fxmlns.com%2Ffoaf%2F0.1%2F%3E%7B%0A+%09++%3FsousClasse%09rdfs%3AsubClassOf+foaf%3AAgent%0A+%09+%0A%7D%7D+ORDER+BY+%3FsousClasse


Recuperer les propriétés des sous classes de la classe foaf:Agent  sur http://dbpedia.org/sparql/ (changer le graphe en http://xmlns.com/foaf/0.1/)

PREFIX foaf:<http://xmlns.com/foaf/0.1/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>

SELECT DISTINCT ?sousClasse ?propriete ?objet {
 
   ?sousClasse rdfs:subClassOf foaf:Agent.
?sousClasse ?propriete ?objet.

 
} ORDER BY ?sousClasse

ou au format JSON :
http://dbpedia.org/sparql/?default-graph-uri=http%3A%2F%2Fxmlns.com%2Ffoaf%2F0.1%2F&query=PREFIX+foaf%3A%3Chttp%3A%2F%2Fxmlns.com%2Ffoaf%2F0.1%2F%3E%0D%0APREFIX+rdfs%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23%3E%0D%0A+%0D%0ASELECT+DISTINCT+%3FsousClasse+%3Fpropriete+%3Fobjet+%7B%0D%0A+%09%0D%0A+%09++%3FsousClasse%09rdfs%3AsubClassOf+foaf%3AAgent.%0D%0A%3FsousClasse+%3Fpropriete+%3Fobjet.%0D%0A%0D%0A+%09+%0D%0A%7D+ORDER+BY+%3FsousClasse&format=application%2Fsparql-results%2Bjson&timeout=30000&debug=on


REcuperer les sous-classes d'une schema:Action : sur http://lod.openlinksw.com/sparql/


SELECT DISTINCT ?Action WHERE {
?Action <http://www.w3.org/2000/01/rdf-schema#subClassOf> <http://schema.org/Action>
 }

--> resultat :
http://lod.openlinksw.com/sparql/?default-graph-uri=&query=SELECT+DISTINCT+%3FAction+WHERE+%7B%0D%0A%3FAction+%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23subClassOf%3E+%3Chttp%3A%2F%2Fschema.org%2FAction%3E%0D%0A+%7D+&format=text%2Fhtml&CXML_redir_for_subjs=121&CXML_redir_for_hrefs=&timeout=30000&debug=on


REQUETE POUR RECUPERER les informations sur un projet :

select DISTINCT ?propriete ?objet ?labelObject ?commentaire ?labelCommentaire ?userCommentaire ?element ?labelElement where {
<http://smag0.blogspot.fr/ns/smag0#P1431363569> ?propriete ?objet .
OPTIONAL{?objet  <http://www.w3.org/2000/01/rdf-schema#label> ?labelObject .}

OPTIONAL { <http://smag0.blogspot.fr/ns/smag0#P1431363569>  <http://smag0.blogspot.fr/ns/smag0#hasComment> ?commentaire .}
OPTIONAL {?commentaire <http://www.w3.org/2000/01/rdf-schema#label> ?labelCommentaire .}
OPTIONAL {?commentaire <http://smag0.blogspot.fr/ns/smag0#user> ?userCommentaire .}

OPTIONAL { <http://smag0.blogspot.fr/ns/smag0#P1431363569>  <http://purl.org/dc/terms/hasPart> ?element .}
OPTIONAL {?element <http://www.w3.org/2000/01/rdf-schema#label> ?labelElement .}

}

ou plus simple : pour recupérer les infos d'un projet et leur type :


PREFIX rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX smag:   <http://smag0.blogspot.fr/ns/smag0#>
PREFIX dc: <http://purl.org/dc/elements/1.1/>
PREFIX dcterms: <http://purl.org/dc/terms/>

SELECT  ?propriete ?objet  ?objectLabel ?objectType
 WHERE {
<http://smag0.blogspot.fr/ns/smag0#P1431250984> ?propriete ?objet .
OPTIONAL{?objet  rdf:label  ?objectLabel .}
OPTIONAL{?objet  rdf:type        ?objectType  .}
}

résultat ici