mKeRix / room-assistant

Presence tracking and more for automation on the room-level
https://www.room-assistant.io
MIT License
1.27k stars 122 forks source link

Determine presence via machine learning #507

Open mKeRix opened 3 years ago

mKeRix commented 3 years ago

Is your feature request related to a problem? Please describe. The current approach of using the closest instance has multiple disadvantages:

Describe the solution you'd like A machine learning solution should be added as an optional thing on top of the existing BT room presence sensors. The training data should be collected via room-assistant. The model should also be trained via room-assistant. Output should be an extra entity with the predicted room presence based on the measured distances/RSSI as state. Possibly the confidence could be added as an attribute.

Describe alternatives you've considered

Additional context More info on this can be found in the discussion to #291.

Neuronet commented 3 years ago

Hi. I would be happy to help you with this project. I've started similar to FIND3 and room-assistant project with python few years ago and stopped it as I had no free time to do all needed development by myself.

LucasJanin commented 3 years ago

Very interesting feature request!!! I suppose with 3 instances, it will be possible to triangulate and determine what's room the device is without the need to have one instance per room.

jrmcgarr commented 3 years ago

I am currently working on the triangulation/trilateration aspect of this issue. Once the data formatting from the room assistant API is finished, it will be straightforward to implement a trilateration script in something like pyscript with home assistant. I can query the room assistant API just fine, and am working on a stable solution that takes different numbers of detected sensors into account. I recognize that this is not machine learning, but it may be helpful towards that goal.

I recognize that others have done something similar with node-red here, but I would prefer a python based approach that doesn't require the installation of the different node-red dependencies. I can update here once I have a solution as long as this fits the topic.