Alexandr Andoni

I am an associate professor at Columbia University, and member of the Data Science Institute. I have a broad interest in algorithmic foundations of massive data. Some particular interests include sublinear algorithms (streaming and property testing), high-dimensional computational geometry, metric embeddings, and machine learning.

I graduated from MIT in 2009, under the supervision of Prof. Piotr Indyk. My PhD thesis is on the "Nearest Neighbor Search: the Old, the New, and the Impossible". In 2009--2010, I was a postdoc at the Center for Computational Intractability at Princeton, and a visitor at NYU and IAS. I was a researcher at Microsoft Research Silicon Valley lab, from 2010 until its closure in 2014. Afterwards, I was a visiting scientist at the Simons Institute for the Theory of Computing at UC Berkeley.

If you are a prospective graduate student and are interested to work with me, please consider to apply to our PhD program here. I am always looking to hire great PhD students.

Columbia TRIPODS Institute:

I am a member of Columbia's NSF-sponsored TRIPODS Institute on the foundations of data science.


I maintain a page on Locality-Sensitive Hashing (LSH), which is an algorithm for approximate nearest neighbor problem (in high dimensions). Check out the related FALCONN software package as well.

Selected publications (all publications):

Teaching (grad-level classes):


I have/had the pleasure to advise a number of brilliant researchers, including:
Students: Postdocs:
Former postdocs/interns:

Lectures and talks:

Other (i.e., random stuff):

ACM ICPC: I used to be one of the coaches for the MIT's team for ACM International Collegiate Programming Contest.

AntiChess: Play my AntiChess :) (a 6.170 class project, joint with Cristian Cadar and Tudor Leu). Warning: the rendering might be suboptimal (different browsers tend to diplay the board sligthly differently). If you find 3min too little, you can change the time in the menus ('Options->Change player options').

A paranthesis that will hopefully help search engines better index my webpage. Alternative spellings of my name are: Alexandru Andoni (in Romanian, my normal name, although not the official one due to some hard-to-explain bureaucracy), Alexander Andoni ("anglified" version), and Alex Andoni (simplified version :).