Winner of „Best Place for Everything” task on HackYeah 2021
Once again, I’m excited to announce that our hackathon project, “Harbour”, has won the “Best Place for Everything” task at HackYeah 2021.
Our solution, “Harbour”, is a mobile app that helps real estate agencies to create personalized offers for small and medium-sized entrepreneurs in the city of Łódź. The app is designed to make it easy for entrepreneurs to find the perfect property for their business, while also making it easy for real estate agencies to connect with potential clients.
The implementation filters features available on the BIK Open API platform, based on the natural language processing algorithm. Information about sophisticated features allows real estate offices to create a personalised offer for their clients.
In addition to this, we also added an experimental functionality that allows clients to conduct a virtual walk around selected properties using VR headset (Oculus/Unity). This means that clients can get a feel for the property before even visiting it in person, which is a huge advantage for entrepreneurs who are looking to relocate their business.
Feature ranking and intelligent sorting
The API provided by task organizer, could be queried using location coordinates to receive various attributes associated with the people living in the area, such as average income or puchasing power for specific businesses.
We decided that to create list of offers tailored to individual user, we would firstly generate ranking of features, most closely resembling the target customers of user’s business, and then let the user assign them weights, based on their own intuition. That way we could sort agency offers in semi-automatic manner, and also give user some control over the recommended real-estate.
The technical implmentation of the algorithm utilizes the BERT language model to generate embeddings of textual descriptions of both available attributes from the organizer’s API and user’s business category. These embeddings are then compared using cosine similarity to reveal the closest matches. That way the algorihtm can filter and order available properties using top-5 attributes, that are presumed to be most important to user’s business.
The system is exposed to mobile client using REST API, and is resposible for handling user queries.
The solution was deployed as the cross-platform mobile app (designed to be used on tablets) - thanks to the Flutter framework. The user can pick the business category (based on PKD codes - official business category identifiers used in Poland), then provide information about price/area ranges they’re interested in. Next, based on the provided infomation, recommendtation system will respond with a list of features, whose significance can be manually specified by user. Then based on that, sorted list of offers is presented.
The user is placed on a 3D map of the city of Łódź, which contains markers for each real-estate available for sale. The user can move around the city by teleporting, and also visit the selected building interiors (This is just an example, as we did not have real 3d representations of these buildings. On the prototype, every property is using the same Unity asset for the interior.)
VR walk solution was created using Unity. It runs on Oculus Quest 2 VR headset.