About the author

Sébastien Joly

Passionné de plongée, de voile croisière, de navigation, d'océans, de géomatique, de domotique, d'informatique ... des tictictics, je suis technophile un point c'est tout. Je m'intéresse à la domotique depuis plusieurs années mais je me suis lancé fin 2012 seulement. [ Accéder à mes articles ] [ Mon installation domotique ]

Related Articles

19 Comments

  1. 6

    Pascal STEPHANY

    Merci Seb pour ce superbe article, belle analyse 🙂

  2. 7

    sli

    Merci Sébastien de lever ce sujet de fond de la domotique 3.0 et de la smart-home, la vraie, celle-qui doit devancer nos besoins et nos souhaits.
    Beau sujet de fond.

  3. 8

    Gilles

    Hello Sébastien

    Beau travail qui ouvre à quantité d’autres articles compte tenu de la largeur du sujet et comme promis, voici quelques critiques que j’espère constructives. Ton approche est originale dans le sens où tu ramène cela vers l’individu, alors que tout le monde parle de globalisation, de smart cities, d’intelligence globale.

    Tu regrettes le manque de communication inter objet (ce que tu appelles le paradoxe des objets connectés) mais ça ne me parait pas trop gênant ni même souhaitable. La combinatoire de dialogues risque de devenir trop importante et il me parait mieux de standardiser les interfaces pour que des hubs puissent faire la concentration.

    Tu as, volontairement, écarté le sujet de la propriété des données donc on ne va pas discuter de cela, même si c’est d’une très grande importance. Ça me fait mal de devoir ouvrir des comptes chez tous les fournisseurs et leur fournir une partie de ma vie privé. Surtout que je fréquente des chercheurs et des entreprises qui font de l’analyse sur les jeux de données récoltés et c’est impressionnant ce qu’on peut en sortir comme analyse globale de la population.

    Dans la pyramide, des besoins, les derniers niveaux ne sont atteignables que par une étude approfondie globale des usages par des traitements BigData, type machine learning ou autre. C’est le nombre de données et de variables croisées qui donne l’intelligence globale.

    Quand tu parles de valorisation, j’ai compris que tu cherches à valoriser tes propres données pour ton usage propre. Cela ne me parait pas accessible avec ses propres données. Par contre on pourrait imaginer d’injecter ses propres données dans des modèles construits avec toutes les données des autres.

    Reste à trouver un écosystème pour cela.

    Quant à l’analyse des outils, rien à signaler, on est arrivé aux mêmes solutions. Moi aussi je développe quelque chose à ce niveau car je n’ai pas trouvé la perle rare.

    J’ai essayé OpenTSDB, mais je l’ai vite remballée pour des raisons de technologie.
    J’ai aussi fait un agent de collecte pour Zabbix (que j’avais par ailleurs), mais c’est plus compliqué pour l’analyse.
    Il y a la box eedomus qui stocke un historique que je récupère régulièrement sur leur site.
    Pour l’instant, c’est un petit prog en node.js avec du stockage en MongoDB et PostgreSQL pour constituer une base de fond. Il faut un an de données a minima pour pouvoir entreprendre quelque chose sur l’analyse.

    Pour nos volumes, le SQL va bien et le NoSQL permet de jouer avec un autre outil 😉
    Pour des volumes de collecte globale de l’ensemble des utilisateurs, là il faut passer à des solutions réparties comme Cassandra, SparkSQL ou autre, ne serait-ce que pour répartir les calculs. Mais la on parle de dizaines de teraoctets ou de petaoctets.

    A+

    PS : Au niveau des détails, on n’écrit pas « pallier à ce désagrément », il faut mettre « pallier ce désagrément ».

  4. 9

    Sébastien Joly

    @Gilles,
    Merci du retour.
    Effectivement par habitudes professionnelles j’ai une approche user-centric. Les démarches globales ne m’intéressent pas en générale.
    Je ne crois pas aux modèles globaux, je leur trouve pas de finesse utile. J’aime la généricité d’un modèle, mais dans un cadre strict, défini et cohérent.
    Si je prends la donnée d’un thermostat et de son efficacité sur une habitation avec ces propriétés intrinsèques,
    Comment appliquer un modèle unique à ce même thermostat pour des habitations différentes (Appartement, Matériaux, Surface) ?
    Sans classification, cela me semble pas très transposable ou alors dans l’objectif de connaitre les habitudes de chauffe des utilisateurs de manière globale, et non de connaitre le modèle d’inertie thermique de l’habitation.
    Ce qui reviendrait à dire que l’on utilise non pas nos données pour la valeur thermique, mais dans l’optique de nous profiler dans une catégorie de consommateurs chauffant de telle manière.
    A+

  5. 10

    Gilles

    @Sébastien

    Pour reprendre l’exemple du thermostat, l’usage d’un modèle général peut pré-programmer l’intelligence de ton système.
    Par exemple comment ajuster la température en fonction du moment de la journée ? Une analyse globale de la population pourrait déterminer que les gens souhaitent en général un peu plus de chaleur vers 21h quand ils sont devant la télé. Ça c’est le modèle globale de base. Par contre, le profiling de ton bracelet Withing montre que tu es sportif et qu’à cette heure là, tu es en train de courir. L’algo général saura s’adapter en fonction de ton propre profil, car tu n’es pas le seul à courir après le boulot.
    Un apprentissage qui ne serait basé que sur tes données propres ne permettrait pas de faire cela aussi simplement.
    Par contre, tu pourrais édicter tes propres règles de fonctionnement, mais cela, c’est de la programmation, pas de l’intelligence artificielle.

    La déontologie à mettre en place doit permettre d’étudier l’algo avec les données de tout le monde, de définir ta classification, mais de ne l’utiliser qu’avec ton accord. Et ça, c’est pas gagné !

  6. 11

    Sébastien Joly

    Oui à mettre dans la balance du pour et du contre…
    Si on commence à ripper sur le sujet, je trouve que cela ressemble quelques peu à la problématique des fichiers STIC, FNAEG, FIJAIS.
    Mais là c’est le sujet que je n’ai pas souhaité développé.

  7. 12

    Guillaume

    Très bonne article et en effet depuis qu’il existe des solutions simples et fiables pour gérer la domotique, nous pouvons commencer à rendre intelligibles les données générées (pour moi une box domotique c’est un gros thing).

    Le stockage des données n’est pas un problème à partir du moment où l’on dispose d’une api pour récupérer la donnée et d’une api pour la stocker (le modèle le plus simple serait une suite de script bash exécutant des curl ordonnancé par cron).

    Par contre pour exploiter ces données, il va falloir faire du « machine learning » et il n’y a pas encore de librairie « user frendly » (maitriser MLlib c’est loin d’être simple).

    Malgré la difficulté technique, des initiatives vont forcement apparaitre car que chaqu’un puisse disposer de son assistant intelligent libre de toutes sociétés (donc en self hosting) me semble être le but ultime du geek 😉

  8. 13

    benhur78

    Waah , vite un doliprame . c’est une question que je me posais , mais vu l’article et vu les compétences informatique exiger rien que pour lire l’article , j’ai beau me considéré comme un geek et même par mes collègues de boulot , Y’a du chemin jusqu’à une utilisation optimal des mes idO et l’utilisation , exploitation de ces données.

  9. 14

    Sebastien Warin

    Hello,

    C’est justement dans ce sens que j’ai développé début 2014 ma plateforme Constellation permettant l’interconnexion des système informatique que ce soit des serveurs/ordinateurs, des services Web, ou objets connectés du commerce (domotique, nest, netatmo & co) ou DIY à base d’Arduino, ESP8266, RPi, etc..

    Cette plateforme permet à chaque système de dialoguer avec les autres et surtout de s’échanger les informations. Par exemple la porte de garage (un Raspberry) connait l’état de l’alarme pour savoir si il doit ou non s’ouvre. Le système audio multi-room connait en temps réel la consommation de la douche pour avertir l’utilisateur, ou encore le pluviomètre NetAtmo communiquera avec le capteur de porte Z-Wave et/ou de l’alarme pour faire clignoter des lampe Hue si il pleut et que les fenêtres sont restées ouvertes.

    Ca permet également de faire des dashboards « Universels » type S-Panel avec quelques lignes de JS à : http://sebastien.warin.fr/2015/07/15/3033-s-panel-une-interface-domotique-et-iot-multi-plateforme-avec-cordova-angularjs-et-constellation-ou-comment-crer-son-dashboard-domotique-mural/

    Une simple puce Arduino comme un ESP8266, peut alors, dès qu’il est connecté à Constellation, piloter des chose plus complexe comme un serveur, la domotique, etc… Sans aucune complexité apparente (Constellation joue le rôle de traducteur).

    Comme Constellation est une sorte de bus, on peut « brancher » et « débrancher » tous type de chose pour rajouter des fonctionnalités.

    Pour ma part les données produites par les systèmes et IoT de la maison servent à plusieurs choses :
    – Créer des dashboards / télécommande universelles comme S-Panel ou des applications mobiles (comme S-Opener que j’utilise pour rentrer chez moi)
    – Créer de l’intelligence ambiante, car une fois qu’on a les données de tout le monde on peut réellement faire de belles choses en terme d’automatisation, Machine Learning, etc..
    – Créer des systèmes d’alerting
    – Créer des systèmes d’analyse.

    Et justement en terme d’analyse, le sujet de mon dernier article, j’enregistre l’ensemble des données produites par mes systèmes et IoT dans une base ElasticSearch et j’utilise Kibana comme interface de visualisation.

    Le potentiel est énorme, je vous laisse découvrir toutes les possibilités : http://sebastien.warin.fr/2015/10/09/3180-creez-votre-home-analytics-analyse-et-reporting-de-votre-domotique-informatique-et-objets-connectes-avec-elasticsearch-graylog-kibana-constellation/

    Bien à vous,

  10. 15

    guiguiabloc

    Tiens j’en parlais début 2014 :p http://blog.guiguiabloc.fr/index.php/2014/02/17/domotique-valoriser-et-exploiter-les-donnees/ Maintenant il y a plus de plateformes effectivement, mais l’anonymisation des données n’est pas forcément leur critère premier… Bien après CitizenData, tout le monde commence à s’y mettre, mais peu en maitrise les tenants et aboutissements 🙂
    Bon article Sébastien 🙂

  11. 16

    Gilles

    @guiguiabloc
    Bonjour,

    Le problème n’est pas tant l’anonymisation des données qui est exigée par la CNIL que la dés-anonymisation volontaire qui pourrait suivre.
    Un des premiers traitements que l’on fait sur des gros jeux de données est la « clusterisation » qui permet de définir des grandes familles de données. En recoupant plusieurs jeux de données tu arrives à définir très précisément des familles, par exemple des comportements sociaux ou des comportements d’achat. Cela défini un modèle.
    Comme beaucoup de gens ne sont pas soucieux de leur identité et de leurs actions, on peut facilement les faire entrer dans le modèle et obtenir leur profil : ce n’est pas grave, ils l’ont voulu.
    Maintenant si quelqu’un fait particulièrement attention à sa « privacy », il peut ne pas entrer dans un modèle, donc ne pas être catalogué et devenir « dangereux » pour certaines décisions. Je pense, par exemple, aux banquiers (qui maitrisent bien les statistiques) qui pourrait refuser un prêt à cause d’un manque d’information d’aide à la décision, et ce même si on est totalement solvable. Cela fonctionne aussi pour les assureurs, pour les DRH de grands groupes, ….
    Il va devenir difficile d’être un « ermite » informatique.

  12. 17

    Sébastien Joly

    En tout cas je suis content de voir que le dossier permet de développer quelques réflexions sur le sujet. En effet, quand j’ai commencé la rédaction de cet article, je me suis dit que celui-ci ne fixerait pas beaucoup d’attention en raison de sa spécificité technique et sociétale. Je me suis tout de suite dit que l’auditoire ne finirait pas la lecture de l’article. Non pas parce que c’est compliqué mais car cela demande de prendre du recul sur nos usages de la domotique. Ce qui de facto nécessite d’être un utilisateur averti.
    De mon point de vue, les IOT peuvent être classé en deux catégories : Les données environnementales (contexte/eco-système de l’homme) et les données propriétés de l’homme (poids, santé, activité, habitudes, usages..).
    Je suis amateur d’IOT de la première catégorie et ne m’intéresse pas vraiment à la deuxième. Pour autant,j’ai l’impression que la deuxième catégorie intéresse plus le mass market d’une société où l’individu s’intéresse surtout à lui-même et moins aux valeurs collectives et de partages.
    On le constate, le marché des wearables se développe plus vite. Il faut donc intégrer rapidement l’usage qu’il peut être fait de nos données. Personne n’est t’exclus de la collecte d’information, car on peut considérer que l’usage d’un smartphone est universel et que c’est le premier wearable qui fut inventé.
    La catégorisation anthropologique me semble inévitable, il faut alors trouver comment cela pourrait servir les intérêts de chacun plus que de certains.

  13. 18

    destroyedlolo

    Bonjour,

    Article et réflexions vraiment intéressants, mais qui m’amènent plusieurs commentaires 🙂

    > […] serait de disposer de plateforme matériel propre à votre réseau local permettant d’agréger vos données externalisées, mais nous serions donc à contre courant et machine arrière de l’ère du temps.

    Ben l’air du temps est une chose, le réel en est une autre. Si on laisse de côté la question de l’application idéale (qui évidement n’existe pas), de la sécurisation des données et du respect des données privées, il se pose une autre question hautement plus importante : la robustesse de la solution. Que se passe-t-il lorsque la liaison ADSL tombe ? Ou lorsque la fameuse application cloud tombe en panne ????
    Ben, je ne suis sans doute pas « hype », mais la gestion critique de ma maison (chauffage, arrosage, sécurité, … mais aussi eau chaude, lumière, etc, ) ne peut se faire QU’EN LOCAL.

    > […] 3 679 200 valeurs stockées par an. Il faut donc envisager un système de gestion de base de données adapté aux « séries temporelles » pour un volume conséquent si je décidais de passer à un pas de collecte deux fois supérieur.

    Heu … pourquoi ? N’importe quelle base de données plus ou moins sérieuse gère largement une telle volumétrie. Dans mon cas, je stocke entre 20 et 50 données (ca dépend du nombre de machines en marche sur mon réseau) toutes les 5 minutes, le tout dans une base de donnée PostgreSQL sur un BananaPI, et je n’ai ni des problèmes de volumétrie, ni des problèmes de performances : la charge de mon BananaPI ne dépasse que rarement les … 10%

    Mais pour ce faire, il faut :
    – Avoir un design clean des schémas de la base de données, avec les indexes qui vont bien
    – Réfléchir à l’agrégation et à l’archivage des données. Je m’explique, dans mon cas, je garde la granularité à 5 minutes sur 2 jours (plus long ne me servirait à rien). Ensuite, les données sont agrégées à l’heure (mini, moyenne, maxi). Enfin, je purge au bout d’1ans et demi. Ce sont les règles par défaut, pour d’autres comme ma production électrique, les stratégies sont beaucoup plus agressives pour les agrégations et je ne purge (pour le moment ?) pas.

    Enfin, les SGBD gèrent très bien les fenêtres de temps et PostgreSQL dispose de tous les outils statistiques … le jour où je me pencherais sur l’IA 🙂

    Mais tu arrives à la même conclusion lorsque tu as testé NoSQL.
    ATTENTION : je ne dis pas que NoSQL n’est pas moins adapté, je dis simplement que nous ne sommes pas des entreprises, et que même les plus frénétiques d’entre nous niveau nombre de capteurs n’arriveront pas à exploser une base PostgreSQL.

    > il faut tout de même intégrer que nous ne sommes pas tous des informaticiens

    Ca oui.

    > Il faut aussi comprendre que ces technologies sont censées se déployer dans des infrastructures distribuées (noeuds/clusters) que nous n’avons évidemment pas à la maison.

    Mais ça non : un SBC (raspberry, BananaPI, …) ont très largement la puissance suffisante, ne consomment en pointe que 2 ou 3 watts et il y a des outils open sources pour clusteriser n’importe quel SGBD. Il n’y a donc strictement aucune raison technique de ne pas clusteriser si le BESOIN s’en fait sentir. Le reste n’est qu’un question d’architecture.

    En résumé, il faut faire la balance entre :
    – Ce qu’on sait faire
    – Ce qu’on veut faire
    – Les moyens qu’on souhaite y mettre
    – A quel point nous considérons que nos données personnelles doivent le rester, personnelles 🙂

    Mais en gardant toujours à l’esprit que la solution doit être ROBUSTE : que la moindre coupure ASDL ne doit pas provoquer une température de 10° dans les zones de vies, que la moindre coupure électrique ne doit pas vous empêcher d’entrer ou de sortir de chez vous.

    L’un dans l’autre, ma solution est et restera purement local pour les raisons ci-dessus … mais c’est mon métier de penser ce genre d’architecture (ça aide 🙂 ). Je ne m’interdis pas cependant d’utiliser des solutions comme Netvibes pour agréger des données qui sont déjà dans les nuages : typiquement, générée une alerte peuf lorsque la neige est annoncée dans ma station préférée 🙂 🙂

Leave a Reply

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

2016 - Tous droits protégés - Domotique Info

En poursuivant votre navigation sur ce site, vous acceptez l’utilisation de cookies ou autres traceurs pour vous proposer par exemple, des publicités ciblées adaptés à vos centres d’intérêts ou encore, réaliser des statistiques de visites. Plus informations

Les paramètres de cookies sur ce site sont configurés pour "autoriser les cookies" afin de vous offrir la meilleure expérience de navigation possible. Si vous continuez à utiliser ce site Web sans modifier vos paramètres de cookies ou si vous cliquez sur "Accepter" ci-dessous, vous consentez à cela.

Fermer