We are looking for a few tips here. Does anyone know a good place to start looking for an appropriate algorithm in n-dimensional space. For example, any dating site should use some kind of algorithm to match 2 people. I read that we can compare the characteristics of a person in an n-dimensional array with a point system for each trait. Once we have all of the (accessible) characteristics of a person, we can represent that person at a point in an n-dimensional array. Then, for comparison, 2 people would be as simple as finding the shortest distance between two points in this n-dimensional array. Does anyone have a link to implement such an algorithm? What is the best language for writing this kind of thing?
If you want to find the closest match for one person, Bentley and Shamos have published a multidimensional method of division and rest: Divide-and-conquer in O (N log N) time: Divide and overcome in multidimensional space in the materials of the eighth annual ACM symposium on computational theory 1976. If you cannot get a copy of this may also be useful.
, , , - . , " ", , , ? -, , , , ?
, . . ( , , , , .) C, ++ # , python, vb.net ...
, , .
, , , . , (.. Sqrt / n- ), .
, . , K-Means c- .
k- , k = 1. .
http://en.wikipedia.org/wiki/K-nearest_neighbor_algorithm
.
, U1, U2, U3, U4, U5.... Un. : A1, A2, A3, A4, A5..... Am
A1 - U1, U2, U3... A2 - U4, U6, U7.... A3 -
- . , , , . , - .
, , n- , . ( , , ). . n- ( , , , . n- , : D) wikipedia , np-.
Also, as noted by others, if your goal is not to match people in pairs, but rather to find compatible groups, you should consider clustering them into groups. This can be done, for example, Uncontrolled training.