forsys-sp / forsysr

An R implementation of the ForSys program
GNU General Public License v3.0
8 stars 3 forks source link

Replace `weight_priorities` function with non-linear permutations; better paramter input #85

Open codyevers opened 1 year ago

codyevers commented 1 year ago

Things to improve with the weighting function:

michelledayusfs commented 1 year ago

Let's make sure Rachel is part of this code revision. She has put a lot of thought into the weights and her expertise would be useful here.

And Alan- because this might create a difference in forsys versus ForSysX.

houtmanr commented 1 year ago

I think this will address the problem with weights more heavily searching some portions of the state space than others. Karen Abt brought this up a few years ago as well. I do think we should maintain the original weighting code as an option to maintain compatibility with ForSysX.

codyevers commented 1 year ago

Great idea about keeping this as an option. The weighting issue becomes super clear when I tried to animate this stuff where you would barely see any movement as you changed weights, then would get they drastic shifts. I'll share some examples and early work here and we can continue to develop this idea as a team.

codyevers commented 1 year ago
  # DRAFT FUNCTION FOR PERMUTING WEIGHTS
  func <- function(x, s=3) log10(x/(1-x))/s

  # plot differences in S
  num_seq <- seq(0,1,.01)
  plot(func(num_seq, s=2), type='l')
  points(func(num_seq, s=1.33), type='l')
  points(func(num_seq, s=5), type='l')