Elastic Search: Machine learning based on the search results data

I have a usecase of city Locations data, where a user searches for Lon, Many results would turn up for example,. London Ontorio, London Greater London, London Ohio, Londres, but based the search result chosen frequency London Greater London should be preffered over the top of the order of the search results, any plugins or features might of help?