Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/tcsvn/activity-assistant

Activity Assistant provides a platform for logging, evaluating and predicting Activities of Daily Living for Home Assistant.
https://github.com/tcsvn/activity-assistant

activities-of-daily-living activity-assistant adls data-mining data-science django django-rest-framework home-assistant home-assistant-addons home-automation homeassistant human-activity-recognition machine-learning smart-home smarthome visualization

Last synced: about 2 months ago
JSON representation

Activity Assistant provides a platform for logging, evaluating and predicting Activities of Daily Living for Home Assistant.

Awesome Lists containing this project

README

        

# Activity Assistant

> Collect, evaluate and predict Activities of Daily Living from within Home Assistant.

![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/tcsvn/activity-assistant/.github/workflows/main.yml?style=flat-square)
![Supports amd64 Architecture](https://img.shields.io/badge/amd64-yes-green?style=flat-square)
![Supports i386 Architecture](https://img.shields.io/badge/i386-no-orange?style=flat-square)
![Supports aarch64 Architecture](https://img.shields.io/badge/aarch64-yes-green?style=flat-square)
![Supports armv7 Architecture](https://img.shields.io/badge/armv7-yes-green?style=flat-square)
![Supports armhf Architecture](https://img.shields.io/badge/armhf-no-orange?style=flat-square)
![License](https://img.shields.io/pypi/l/pyadlml?style=flat-square)

Activities of Daily living (ADLs) such as eating, working, sleeping and Smart Home device readings are recorded by inhabitants. Predicting the activities of residents based on the device event-stream allows for a range of applications, including automation, action recommendation and abnormal activity detection in the context of assisted living for elderly inhabitants. Activity Assistant is a platform that streamlines the data collection process. The plugin extracts device readings from Home Assistant and tracks residents using an additional [Android](https://github.com/tcsvn/activity-assistant-logger) or the Home Assistant companion app. Moreover, Activity Assistant (will) support the deployment of trained models and running ADL predictions in real-time. A (future) Home Assistant integration provides users with a novel activity-based abstraction for automating their homes.



## Installation

The installation of this add-on is pretty straightforward and not different to installing any other Hass.io add-on.

1. Add the repository to the addon-store by pasting `https://github.com/tcsvn/hassio-activity-assistant` into the manage add-on repositories dialog
2. Ensure that Home Assistant is using the [recorder](https://www.home-assistant.io/integrations/recorder/) integration for Activity Assistant to successfully connect to the database and query devices
3. Search for the "Activity Assistant" addon-on in the Hass.io add-on store and install the latest release (NOT edge or development).
4. Start the "Activity Assistant" add-on.
5. Check the logs of the add-on to see if everything went well.
6. Ready to go!

_For a guide on how to use please refer to the Documentation (tbd)_

## Features

- [x] Create and run experiments for recording ADLs and device events
- [x] Activity annotation using an android app
- [x] Activity annotation using Home Assistant input_selects and input_booleans
- [x] Device or activity to room assignment
- [x] Interactive dashboard for the running experiment and previously recorded datasets
- [ ] Prior activity distributions with a "typical week" calendar widget
- [ ] Dask nodes for distributed computation
- [ ] Upload and deployment of trained models via the web interface
- [ ] Home Assistant integration + custom entity card displaying per person activity predictions

## Contributing

1. Fork it ()
2. Create your feature branch (`git checkout -b feature/fooBar`)
3. Commit your changes (`git commit -am 'Add some fooBar'`)
4. Push to the branch (`git push origin feature/fooBar`)
5. Create a new Pull Request

## Related projects

- [Activity Assistant - Logger](https://github.com/tcsvn/act_assist_logger) - The android companion app for labeling activities
- [pyadlml](https://github.com/tcsvn/pyadlml) - A python library offering data exploration methods for ADL datatasets.
- [Home Assistant](https://www.home-assistant.io/) - Homeautomation platform

## Support

[![Buy me a coffee][buy-me-a-coffee-shield]][buy-me-a-coffee]

## How to cite

If you are using Activity Assistant for puplications please consider citing the package.

```
@software{activity-assistant,
author = {Christian Meier},
title = {Activty Assistant},
url = {https://github.com/tcsvn/activity-assistant},
version = {0.0.4.1-alpha},
date = {16-02-2023}
}
```

## License

MIT © [tcsvn](http://deadlink)

[buy-me-a-coffee-shield]: https://img.shields.io/static/v1.svg?label=%20&message=Buy%20me%20a%20coffee&color=6f4e37&logo=buy%20me%20a%20coffee&logoColor=white
[buy-me-a-coffee]: https://www.buymeacoffee.com/tscvn