Development of a Social Technology
It is not hard to define the problem and to decide how it should not be solved. It is harder to provide a real solution. Both will be attempted here. This is a simplified view of the problem. We must definitely make sure we do not turn this into a travelling salesman problem, which is easy to state but hard to solve — an NP-complete problem which would be entirely intractable for large numbers of people. It is possible to turn this into a bipartite matching problem, or more correctly three bipartite matching problems.
These are solvable, but still difficult to solve for large numbers of people. To actually solve the key problem of social technology, as described at the top of this page, we should look again at that first diagram, then look at a related one, in which queries between adjacent people have been added. The arrows labelled with a question mark are to be interpreted as queries and replies, information flow for a specific purpose.
To make sense of this it is best to assume that each of the boxes represents not just a person but a person with a computer and connection to the Internet. The queries are not intended to initiate interpersonal relationships, instead they are to initiate a flow of information which will permit the larger problem to be solved by the resulting network of computers addressing the overall matching problem. This is a connectionist approach, an attempt to use distributed processing.
The difficulties of the algorithms discussed above are to be overcome by making use of the fact that each person added to the problem also provides one human brain and one computer towards solving the problem. The formerly isolated person called L is not now attempting to establishing a relationship with her neighbors, D, P, J and Q. Instead she is making use of the derived relationships or derived communications channels to find and establish relationships with the most compatible people in this section of the social network.
In the solution given in the second diagram, L is connected to G, K and M. None of these would be people queried directly. She uses her queries to D, P, J and Q as a means of finding the right people for her, and should eventually connect up with G, K and M, because these are indeed part of a network of connected people which includes both the people she asks and the people she should find. This could be done without computer help, and would have to be in poor regions where people do not have computers and Internet connections.
But without computers this would require a set of elaborate protocols or an etiquette so that people can mediate for others without unpleasant and unwanted emotional involvement. A clear example of how this might work is to look at L’s query to Q. Q does not know any of the people compatible with L, but will be querying M. If Q passes on L’s query to M, then L and M might get together, forming a very strong relationship.
This would be best done with the aid of computers. L would enter a lot of data about herself into her computer, which would process it into a detailed descriptor. Her computer would then send this to others, who would then pass it on. L may be completely isolated, as shown in that first diagram, and may have nobody to send her descriptor too. In that case, some service, preferably a free service would provide possible links. It would process her descriptor, compare it to information on file.
Then pass her descriptor on for her to some small number of people, some possible matches and some people who might be able to intermediate on her behalf. The use of a service to make initial links is similar to the use of the old village matchmaker to suggest matches between people, but it is more than that. It includes suggesting people who would be reliable intermediators, people who are not matches themselves but could give good advice.
The problem with the traditional village matchmaker is that she would be likely to develop a proprietary interest in giving advice, wanting to serve that role entirely herself, not recommending others who might also give advice. The networking scheme being suggested here is much more connectionist than one involving a central service or public matchmaker. It is somewhat like a person wandering into the village and asking anyone he meets who might help him become an ordinary village person, integrated into the social structure of the village.
Given some suggestions, he would then go to those people and ask the same question. By this means he should eventually come in contact with the right people for him. This is an approach or algorithm that scales up well. Instead of a small village, a person could enter New York City and start asking the same questions, over and over again.
While this low-tech approach should work well enough, something making good use of computers would be better.
That will require the development of good software for the purpose. The author has been studying this problem for many years and found nothing suitable, yet. I have written some software myself, but what I have done is just a bare beginning. What I can say is how the analysis, design and implementation of this software should proceed, and I have worked through some of the difficulties. That work is described elsewhere, and will be further described as time goes on.