Entendendo como o Airbnb está construindo um dos maiores sistemas de precificação do mundo!

O Airbnb certamente revolucionou a forma como o mundo viaja. Avaliados em mais de 30 bilhões de dólares, tornaram-se lucrativos ainda em 2016 e se preparam para crescer ainda mais através de aquisições. Neste ano já compraram a Tilt, uma startup de pagamentos, e lançaram a plataforma Trips, que compartilha experiências locais, explorando as abundantes oportunidades no mercado de turismo.
Nosso objetivo aqui é entender como se desenrolou o desenvolvimento da ferramenta de Smart Pricing do Airbnb, que automatiza o processo de precificação das listagens de seus anfitriões.
Começaram com um algoritmo bem simples que levava em consideração 3 principais fatores para dar uma dica de preço: similaridade, sazonalidade e localização. Similaridade porque é importante tomar como referência o preço de hospedagens com características semelhantes na região para fazer uma sugestão. Sazonalidade porque épocas festivas ou eventos especiais, como a copa do mundo, influenciam nos valores. Localização também porque listagens mais próximas a recursos geográficos e estruturais, como rios, rodovias e conexões de transporte são mais valorizadas.
Até aí, o software já dava sugestões de preços bem pertinentes, o grande problema é que o algoritmo ainda era estático. Ou seja, até entende eventos locais importantes ou épocas de maior turismo e ajusta os preços nessas datas, porém os preços não eram alterados a medida que essas datas se aproximavam. O comportamento precisaria ser semelhante ao que acontece com as companhias aéreas, baixando os preços quando as reservas estavam lentas e aumentando quando o mercado se aquece.
Portanto, a fim de tornar o algoritmo dinâmico, e adaptável às ações humanas, eles selecionaram um modelo de Machine Learning chamado Classificador. Esse modelo, neste caso, utiliza todos os atributos de uma listagem e a demanda de mercado para prever (classificar) se a listagem será alugada ou não.
O sistema também calcula dicas de preços baseados em centenas de atributos, como por exemplo, se o café da manhã está incluso ou se o hóspede tem um banheiro privado para utilizar.
O anfitrião pode escolher seguir essa dica ou não, independentemente disso, o software checa as dicas de preços com o fato da listagem ter sido alugada ou não, e usa essa informação para se ajustar e fazer novas predições.
Ou seja, o algoritmo consegue aprender com suas próprias sugestões de preços, erros e acertos.
É legal notarmos que o problema necessariamente é probabilístico, por uma razão muito simples: existem infinitas possibilidades de preços que podemos sugerir para as listagens, porém, nosso objetivo é encontrar o preço que nos retorne a máxima probabilidade da listagem ser alugada. Portanto, é possível que eles tenham utilizado Gaussianas para representar as variáveis que modelam as listagens.
Outra coisa que eles podem ter usado nesse algoritmo, é log likelihood para cálculo das dicas de preços tendo como base os atributos de uma listagem.
Claro que apenas os engenheiros ou cientistas do Airbnb saberão nos dizer exatamente a solução que utilizaram. Seria uma audácia muito grande querer prever o trabalho de 5 anos de uma equipe extremamente competente e especializada em apenas um post, haha.
Mas o fato é que a ferramenta de precificação já ganhou tanto corpo que se tornou uma plataforma com várias funcionalidades, acessível a toda comunidade de desenvolvedores abrindo possibilidades de novos negócios em diversos mercados para a gigante do turismo.
É possível, por exemplo, ver o mapa de uma cidade através da ótica do Airbnb. Ou seja, essa ferramenta é até capaz de gerar tipo um atlas, só que ao invés de delimitar as regiões por clima ou relevo, fazem isso por preços de hospedagens haha.
Interessante, né? Ficou com alguma dúvida? Tem alguma sugestão? Se sim, me fala nos comentários, vai me ajudar bastante a melhorar a qualidade do conteúdo para os próximos posts.