gw-sd-2016 / ChillOut

Adam Gray Senior Design Project
0 stars 0 forks source link

Week 23: Added initial algorithm for stress/event correlation detection #8

Open agray123 opened 8 years ago

agray123 commented 8 years ago

@poorvi-vora

I spent this week working on the algorithm to detect correlations between stress and certain event factors. At the moment, I haven't tied the algorithm into the actual calendar event data. I've just written the initial version of a majority of the necessary functions. Put simply, the algorithm builds a graph of the different event factors. Each node represents a factor or combination of factors. A node contains its stress ratio and a list of its parents nodes. Each parent node represents a subset of factors of it's child nodes. When a stressful event occurs, the stress ratio of every relevant node gets updated. To predict whether a future event will be stressful, the difference in the stress ratios of the node to be predicted and its parents are calculated to determine which combination of factors has had the biggest impact on previous events. Basically, if an event is predicted to be stressful, this data structure allows the cause of stress to be attributed to either one specific factor or a combination of factors. I still have some testing to do, but this initial algorithm appears to work reasonably well on simulated events. Notable files include Node.java, CorrelationGraph.java, and EventGraph.java