Ankündigung

Einklappen
Keine Ankündigung bisher.

Selbstlernende Systeme oder KNX (Server) mit Datenbank-Anbindungen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Selbstlernende Systeme oder KNX (Server) mit Datenbank-Anbindungen

    Hallo zusammen,

    der Thread ist vielleicht ein bißchen "aus-der-Reihe" aber ich mache ihn trotzdem mal auf.
    Hat sich jemand von Euch schon mal mit der Thematik "Selbstlernde Systeme" / "machine learning" oder wie es auch sonst noch heißt sowie deren Algorithmen in Zusammenhang mit SmartHomes auseinander gesetzt?

    Hintergrund meiner Frage ist:
    Ich habe im Sommer mal einen Thread zu Nutzungsprofilen aufgemacht (https://knx-user-forum.de/forum/%C3%...rofile-ja-nein). Auch wenn das Ergebnis meiner Frage nicht so ausgefallen ist, wie ich mir das vielleicht vorgestellt habe, würde ich dieses Thema eigentlich gerne "weiter spinnen" oder zumindest mal austesten, was in Bezug auf Selbstlernende-Systeme möglich ist.

    Technisch gesehen wäre dazu aus meiner Sicht erst einmal folgende Grundlage notwendig:
    - Anbindung der Homeserver (egal ob Gira HS, Edomi usw.) an eine Datenbank (was auch immer)
    - Entsprechende Performance bei der Abfrage / Logik zur Ermittlung der entsprechenden Information für das jeweilige Gewerk (Licht, Heizung, Jalousien/Rollladen, usw. usw.)!!!
    - Klar, es muss dann auch ein entsprechendes Daten-/Entitätenmodell realisiert werden, aber das ist aus meiner Sicht lediglich etwas "Kopfarbeit".

    Die Hauptfrage, die sich mir stellt ist einfach: Sind die im Einsatz befindlichen Systeme (Server wie Gira HS, Edomi usw.) überhaupt in der Lage, die entsprechende Performance bereit zu stellen, um im Bedarfsfall (Beispiel):
    - Man/frau betritt einen Raum
    - Präsenzmelder meldet Anwesenheit
    - Server prüft eine Vielzahl von Parametern/Bedingungen wie Datum, Monat, Wochentag/Feiertag/Urlaub/normaler Tag, Zeit, Temperatur, Lichtverhältnisse, Jahreszeit usw. usw.
    - und entscheidet dann über "Aktivierung" der Gewerke wie Licht, Jalousien/Rollladen, Verbraucher, Medien usw.

    Möglichkeiten:
    - Dies kann natürlich entsprechend realtime sein (fraglich, ob dies funktioniert)
    - oder aber über DB-Exports auf Parameterebene (beispielsweise Datumsbezogen oder wie auch immer) und dann werden ggf. entsprechende Spezifikation zyklisch geladen, um schnellere "Entscheidungen" zu treffen, denn niemand möchte, nachder er/sie den Raum betreten hat, erst 2 min. später Licht haben.

    Hat jemand schon mit DB-Anbindungen im Homeserver Umfeld Erfahrungen?

    Ciao
    Der DJ
    Darf man fremden Leuten eigentlich Fragen stellen, nachdem sie im Bus telefoniert haben und einem noch etwas unklar ist?
    Projects: Sonos Gateway (Musterprojekt) - KNX-MonAMI - Nutzer-Profile

    #2
    In den mir bekannten Systemen SmartHomeNG, ioBroker, openHAB und FHEM ist zumindest das Mitschreiben der Zustände in eine DB integriert und einfach konfigurierbar.
    Lesen lässt sich das in einer Logik abhängig vom System auch wieder irgendwie.

    Die Frage ist, ob die Auswertung wirklich Real Time sein muss oder ob man evtl. einfach nach einer gewissen Nutzungsdauer einmalig (bzw. bei geändertem Verhalten) fixe Regeln ableiten kann.

    Kommentar


      #3
      Es gibt in deiner Theorie eine Chaos variable, die das ganze System und sämtliche Logik zum Einsturz bringt... Nämlich "Frau"... Kannst du vergessen! Dann hättest du ein knx System das "Frauen versteht!"... Never!
      Dieser Beitrag enthält keine Spuren von Sarkasmus... ich bin einfach so?!

      Kommentar


        #4
        BadSmiley Man, hast Du ein Glück, dass meine Chefin mir nicht gerade über die Schulter geschaut hat . Also heißt, hier ist nicht nur ein Entwickler, DB-Spezi sondern auch ein "Frauen-Versteher" gefragt.

        smai
        die realtime Auswertung ist wahrscheinlich oversized und nicht nötig, da gebe ich Dir Recht. Eine zyklische Auswertung oder bei Änderungen sollte vollkommen ausreichend sein, zumindest für den überwiegenden Anteil der Gewerke.


        Gibt es Erfahrungen mit dem Gira HS?
        Man könnte zwar auch über http Daten an eine DB übertragen, ist jedoch fraglich, ob dies so sinnvoll ist.

        Ciao
        Der DJ
        Darf man fremden Leuten eigentlich Fragen stellen, nachdem sie im Bus telefoniert haben und einem noch etwas unklar ist?
        Projects: Sonos Gateway (Musterprojekt) - KNX-MonAMI - Nutzer-Profile

        Kommentar


          #5
          ich hab glaub den Sinn nicht verstanden?

          Man/frau betritt einen Raum
          - Präsenzmelder meldet Anwesenheit
          - Server prüft eine Vielzahl von Parametern/Bedingungen wie Datum, Monat, Wochentag/Feiertag/Urlaub/normaler Tag, Zeit, Temperatur, Lichtverhältnisse, Jahreszeit usw. usw.
          - und entscheidet dann über "Aktivierung" der Gewerke wie Licht, Jalousien/Rollladen, Verbraucher, Medien usw.
          Du willst dann mit den Daten Sachen lösen die eine KNX Logik oder eine Visu schon macht?

          Kommentar


            #6
            GermanSniper
            Eigentlich ganz simpel, hier ein Beispiel und damit eine Frage mit einer Frage beantworten:

            Woher weiß das Haus, zu welcher Zeit es wie das Licht anschalten soll? Beispielsweise um 18:00 Uhr oder 03:30 Uhr und das natürlich in verschiedenen Räumen.
            Klar, das kannst Du in der KNX-Logik eintragen, indem Du spezifizierst:
            - um 18:00 Uhr Lampe auf Flutlicht also 100%
            - um 03:30 Uhr Lampe auf 30% Dimmen

            Oder Du baust irgendeine "Intelligenz", die weiß, dass Du im Juli um 18:00 Uhr keine Beleuchtung benötigst (da es erst um 22:00 Uhr dunkel wird), du aber im Dezember auf jeden Fall Licht brauchst.
            Und um 03:30 Uhr braucht keiner Vollbeleuchtung wenn er/sie ins Bad geht.

            Also braucht man eine "Intelligenz" und "Logik"! Oder man macht es "sprachgesteuert": Schatzi, mach doch mal das Licht an!

            Ciao
            Der DJ
            Darf man fremden Leuten eigentlich Fragen stellen, nachdem sie im Bus telefoniert haben und einem noch etwas unklar ist?
            Projects: Sonos Gateway (Musterprojekt) - KNX-MonAMI - Nutzer-Profile

            Kommentar


              #7
              Zitat von DJ.Picasso Beitrag anzeigen
              Oder Du baust irgendeine "Intelligenz", die weiß, dass Du im Juli um 18:00 Uhr keine Beleuchtung benötigst (da es erst um 22:00 Uhr dunkel wird), du aber im Dezember auf jeden Fall Licht brauchst.
              Und um 03:30 Uhr braucht keiner Vollbeleuchtung wenn er/sie ins Bad geht.
              Dafür brauchst du keine "Intelligenz". Bis hierher ist es meines Erachtens noch alles Logik auf Basis von Regeln und/oder Sensorik.

              Intelligent wäre, wenn dein System von alleine lernen würde dass man abends um 18:00 das Licht anmacht, weil du das die letzten 3 Wochen immer manuell getan hast. Oder es dreht um 18:00 die Heizung gleich mit auf, weil du die letzten 3 Wochen immer nachdem du das Licht angemacht hast, auch die Heizung aufgedreht hast.

              Der Ansatz ist sicherlich sehr interessant. Allerdings würde ich für Dein Vorhaben keinen Homeserver von der Stange nehmen, sondern mit nem KNXD erst mal alle Telegramme in eine Datenbank schreiben (das sind keine 10 Zeilen Code).
              Im Anschluss kannst dann mit einer Sprache deiner Wahl versuchen Muster zu finden. Von der Performance her hängt das natürlich von der Anzahl der Telegramme ab die abgelegt sind und betrachtet werden sollen. So aus dem Bauch raus würde ich sagen, das benötigt jetzt nicht übertrieben viele Ressourcen.



              Kommentar


                #8
                Zitat von ITler Beitrag anzeigen
                Intelligent wäre, wenn dein System von alleine lernen würde dass man abends um 18:00 das Licht anmacht, weil du das die letzten 3 Wochen immer manuell getan hast. Oder es dreht um 18:00 die Heizung gleich mit auf, weil du die letzten 3 Wochen immer nachdem du das Licht angemacht hast, auch die Heizung aufgedreht hast.
                aber auch erst 2 Sekunden warten bevor das Licht einschaltet und auch noch 10 Sekunden warten bis die Heizung hochzudrehen ist.

                zum Muster erkennen, wäre sowas interessant, aber es wird störend, wenn das System einfach anfängt zu steuern und auch noch deine "Macken" mit übernimmt (zB Radio erst auf 50% aufdrehen, weil man zu grobmotorisch ist und dann auf 20% wieder runterregeln ) und dieses dann auch noch so steuert. Das System müsste vorher beim User nachfragen, soll ich es so und so machen bevor es solche Regeln aktiv umsetzt.

                Kommentar


                  #9
                  Zitat von ITler Beitrag anzeigen
                  Dafür brauchst du keine "Intelligenz". Bis hierher ist es meines Erachtens noch alles Logik auf Basis von Regeln und/oder Sensorik.
                  Genau so ist es! Die vorhanden Regeln bilden dafür eine definierte Intelligenz.
                  Sobald du anfängst eine "künstliche Intelligenz" hinzuzufügen, besteht die Gefahr das das Haus ein "Eigenleben" entwickelt.
                  Dies kann dann schleichend Einfluss auf die Bewohner nehmen und unbewusst die Gewohnheiten derer verändern....


                  Dennoch finde ich den Ansatz interessant!
                  Ich würde im ersten Schritt aber nicht versuchen das Haus lernen und ausführen zu lassen, sondern die manuellen Eingriffe / Änderungen und Aktivitäten (die nicht durch die Sensorik automatisch geregelt wurden) zu protokollieren und intelligent auszuwerten.
                  Aufgrund dieser Erkenntnisse können die vorhandenen Automatismen dann gezielt optimiert oder ggf. sogar durch zusätzliche (fehlende) Sensoren erweitert werden.

                  Grüße
                  Johann

                  Kommentar


                    #10
                    Zitat von ITler Beitrag anzeigen
                    Intelligent wäre, wenn dein System von alleine lernen würde dass man abends um 18:00 das Licht anmacht, weil du das die letzten 3 Wochen immer manuell getan hast. Oder es dreht um 18:00 die Heizung gleich mit auf, weil du die letzten 3 Wochen immer nachdem du das Licht angemacht hast, auch die Heizung aufgedreht hast.
                    .... GENAU, jetzt sind wir da wo ich hin will , dann sind wir nämlich bei "selbstlernenden Algorithmen"! ... und das nicht nur auf Objekt-Ebene sondern gleich auf einer Ebene, dass verschiedene Objekte unterschiedlicher Gewerke (Licht, Verbraucher, Rollladen) zu Gruppen zusammengefasst werden und gleichzeitig gesteuert werden => Szenen!

                    Zitat von ITler Beitrag anzeigen
                    Der Ansatz ist sicherlich sehr interessant. Allerdings würde ich für Dein Vorhaben keinen Homeserver von der Stange nehmen, sondern mit nem KNXD erst mal alle Telegramme in eine Datenbank schreiben (das sind keine 10 Zeilen Code).
                    Das ist wahrscheinlich etwas zuviel des Guten. Aus meiner Sicht muss es eine "Separation" der zu lernenden KOs geben, intern/extern.

                    Zitat von ITler Beitrag anzeigen
                    Im Anschluss kannst dann mit einer Sprache deiner Wahl versuchen Muster zu finden. Von der Performance her hängt das natürlich von der Anzahl der Telegramme ab die abgelegt sind und betrachtet werden sollen. So aus dem Bauch raus würde ich sagen, das benötigt jetzt nicht übertrieben viele Ressourcen.
                    Das wäre dann nämlich genau die Thematik der "auswertenden Algorithmen". Nach welchen Kriterien werden in Abhängigkeit der Gewerke die Daten ausgewertet und genutzt. Welches sind die "führenden/qualifizierenden Parameter" und welche sind in Abhängigkeit der Gewerke die weniger wichtigen Entscheidungsträger.

                    Zitat von oggy Beitrag anzeigen
                    zum Muster erkennen, wäre sowas interessant, aber es wird störend, wenn das System einfach anfängt zu steuern und auch noch deine "Macken" mit übernimmt (zB Radio erst auf 50% aufdrehen, weil man zu grobmotorisch ist und dann auf 20% wieder runterregeln ) und dieses dann auch noch so steuert. Das System müsste vorher beim User nachfragen, soll ich es so und so machen bevor es solche Regeln aktiv umsetzt.
                    ... oder halt nur die "eingeschwungenen" Zustände berücksichtigen => JEP!!

                    Zitat von Jo07 Beitrag anzeigen
                    Dennoch finde ich den Ansatz interessant!
                    Ich würde im ersten Schritt aber nicht versuchen das Haus lernen und ausführen zu lassen, sondern die manuellen Eingriffe / Änderungen und Aktivitäten (die nicht durch die Sensorik automatisch geregelt wurden) zu protokollieren und intelligent auszuwerten.
                    Aufgrund dieser Erkenntnisse können die vorhandenen Automatismen dann gezielt optimiert oder ggf. sogar durch zusätzliche (fehlende) Sensoren erweitert werden.
                    ... Genau das wäre mein Ansatz! Ist halt nur die Frage der Begriffsdefinition lernen=protokollieren (! ?), auswerten=intelligenz (! ?)

                    Ciao
                    Der DJ
                    Darf man fremden Leuten eigentlich Fragen stellen, nachdem sie im Bus telefoniert haben und einem noch etwas unklar ist?
                    Projects: Sonos Gateway (Musterprojekt) - KNX-MonAMI - Nutzer-Profile

                    Kommentar


                      #11
                      Ich sehe das wie Jo07. Mit Auswerten und Generieren der Regeln "On Demand" statt Realtime kann man ja auch noch manuell Einfluss nehmen und nur sinnvollen Regeln dann wirklich anwenden. Damit wäre auch das Problem mit der grobmotorischen Lautstärkenregelung umgangen.

                      Aber leider sind wir hier erst in der Theorie. Die praktische Umsetzung dürfte wohl mindestens einer Masterarbeit entsprechen.

                      Es gibt übrigens bereits kommerzielle Produkte, welche etwas ähnliches für den kleinen Teilbereich der Heizungsregelung umsetzen (z.B. NiQ). Für die Analyse wird dort meines Wissens ein künstliches neuronales Netz verwendet.

                      Kommentar


                        #12
                        Zitat von smai Beitrag anzeigen
                        Mit Auswerten und Generieren der Regeln "On Demand" statt Realtime kann man ja auch noch manuell Einfluss nehmen und nur sinnvollen Regeln dann wirklich anwenden.
                        Auf jeden Fall habe ich ab jetzt einen Projekt mehr für unseren Neubau (nach Einzug und Inbetriebnahme)

                        Kommentar


                          #13
                          Also wenn ich hier im Büro eine Etage runter gehe sitzen da 15 studierte und promovierte Modelltheoretiker, wenn jemand also eine gut gefüllte DB mit seinen KNX-Telegrammen der lezten 5 Jahre + x zur Verfügung hat dann rechnen die bestimmt im Handumdrehen alle möglichen Korrelationen und Muster aus die man sich wünscht.

                          Ich vermute allerdings das einfach nur KNX-Telegramme der aktiven Komponenten zwar gute Muster erkennen lassen aber eine adaptive intelligente Steuerung bedarf da noch mehr passive Sensordaten. Und bei der Auswertung der reinen Telegrammhistorie ist es auch wichtig zu verstehen welche Telegrammerscheinungen beruhen auf manuelles schalten oder sind eh schon bereits Ergebnisse impelentierter Logiken / Sequenzen. Das dies dann recht eindeutige Muster ergibt ist klar.
                          Und bei simpler Auswertung ergibit das alles nur ne umfangreichere Zeitschaltuhr.

                          Ich finde das ja sehr sehr interessant, aber wie immer zu erst Daten sammeln und davon nicht wenige.

                          ----------------------------------------------------------------------------------
                          "Der Hauptgrund für Stress ist der tägliche Kontakt mit Idioten."
                          Albert Einstein

                          Kommentar


                            #14
                            Ich finde die Idee interessant, mit Machine Learning an ein Smart Home heranzugehen. Wenn man das von Grund auf macht, hat man allerdings das Problem, dass das Haus am Anfang gar nichts kann - es muss ja erst lernen. Und während der Lernphase lernt es vermutlich zwischendurch auch mal Mist, den man dann erst abtrainieren muss und der nervt.
                            Ein Ansatz, das zu lösen wäre: Man implementiert als Basis konventionell, also mit expliziten Regeln/Logiken. Machine Learning benutzt man dann nur dazu, zu lernen, wann die explizit implementierten Automatismen vom Bewohner übersteuert werden.
                            In jedem Fall muss man viel Daten sammeln, alles was man bekommen kann. Es könnte ja durchaus sein, dass man bläulicheres Licht einstellt, wenn die Luftfeuchtigkeit im Sommer hoch ist. Oder das mehr als 4 Minuten hohe Lautstärke am Fernseher immer mit Verschattung korreliert, wenn die Frau außer Haus ist. Wenn man all solche Kleinigkeiten als explizite Regeln implementiert, verliert man vermutlich schnell die Übersicht, hat ohne Ende Aufwände und am Ende hat man sich irgendwelche Abhängigkeiten erdacht, die in der Realität dann doch eher nervig sind. Machine Learning könnte das aber vermutlich gut hinbekommen.

                            Schade, dass ich noch kein Smart Home habe, mit dem ich das ausprobieren könnte.

                            Kommentar


                              #15
                              Zitat von skibbi Beitrag anzeigen
                              Ein Ansatz, das zu lösen wäre: Man implementiert als Basis konventionell, also mit expliziten Regeln/Logiken. Machine Learning benutzt man dann nur dazu, zu lernen, wann die explizit implementierten Automatismen vom Bewohner übersteuert werden.
                              Zumindest auf Objekt-Ebene wäre es notwendig, bestimmte Grundeinstellungen zu realisieren. Ansonsten wäre es - wie Du schon sagst - zu Anfang relativ nervig.
                              Darf man fremden Leuten eigentlich Fragen stellen, nachdem sie im Bus telefoniert haben und einem noch etwas unklar ist?
                              Projects: Sonos Gateway (Musterprojekt) - KNX-MonAMI - Nutzer-Profile

                              Kommentar

                              Lädt...
                              X