Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The matching procedure for profiles #41

Closed
1 of 5 tasks
andreastausend opened this issue Mar 12, 2015 · 0 comments
Closed
1 of 5 tasks

The matching procedure for profiles #41

andreastausend opened this issue Mar 12, 2015 · 0 comments
Labels

Comments

@andreastausend
Copy link

How does the user find her peers?

The core service of openmediate is to supply any user with a list of other users that are similar or relevant to her. This similarity concerns the symptoms and other features of the user's constitution. In the following the main aspects of this list-generating mechanism are described.

1. Representing the constitution of the users

When the users generate their openmediate-profile they are asked to fill out a structured form (medical data editor) whose items characterise the users medical consitution. Is designed according to the demands in the ticket Create Medical Profile. An example would be an item corresponding to "pain", which would consist in enquiries concerning the location and the tissue where the pain occurs, the intensity with which the pain occurs, the type of pain and its frequency or conditions of appearance. Once an item is filled out it generates one or several medical finding that encode the information entered by the user. A finding could be an array. In the "pain" example the users's finding could look like this

type of pain location, tissue trigger intensity
stinging right shoulder joint when moved "can hardly move, but sleep o.k."

The entries of the array are refered to as "particles" of the finding. After the form is completed the user is associated with a "profile" of such findings which represents all aspects of the user's constitution that she consideres relevant for her well being.

2. How to find "interesting" profiles

Assume for now that the user has such a "profile" of findings. The core mechanism that generates a list of potentially interesting other users for her combines the following three heuristics:

a) Given a tool that associates to each pair of users (to be precise their pair of sets of findings) a numerical value - called general distance - all users are ordered in ascending order with respect to their general distance to the user. The first m memeber of this list are considered for presentation to the user.

b) Consider a set of "established illnesses", each characterised by a set of findings and equiped with an illness-specific distance function and the list of users, orderd by their illness-specific distance to the respective illness. Based on the user's illness-specific distance to each such "established illness" a certain number of members of the respective illness's list of users - that additionally have small distance to the user in illness-specific and/or general distance - is considered for presentation to the user.

c) Given a method to find more extrem cases of the user's condition a list of such cases is considered for presentation to the user.

The resulting three lists of considered candidate-users are recombined in a way that addresses how well each of the heuristics performed. The obtained ordered list is presented to the user. One way of deciding on the proportion of each heuristics candidate-users is to increase the proportion of users from method (b) if the user can be well-associated two one or two established illnesses. The three heuristics are explained in more detail in the following.

Related tickets:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant