Code Monkey home page Code Monkey logo

caramel's People

Contributors

albandelavenne avatar celmonteil avatar fzao avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

caramel's Issues

would be good to protect against NA values in dominate()

This package has been very helpful to us for visualizing many-objective optimization results. Thank you!

With 100s of thousands of potential solutions, the dominate() method runs for upwards of an hour (as expected).

We had a corrupted input file where the last line was truncated and there was one row with an NA value. In this case, dominate() continued to run with the busy CPU utilization as if it was still calculating values, but it was forever hung. It took awhile to figure out it wasn't working correctly, and then a bit of debugging to figure out why.

Although, this is clearly an error in the input data, it would be good to protect against this case. To me, a better solution would be to detect any NAs in the input and fail immediately with a corresponding message.

The following demonstrates:

This runs fine as per the documentation:

mat_ok <- matrix(runif(20),10,2)
mat_ok              # view the matrix
any(is.na(mat_ok))  # no NAs
caRamel::dominate(mat_ok) # completes

This hangs forever with high CPU:

mat_w_na <- mat_ok
mat_w_na[10,1] <-NA   # same matrix as above with one NA value
mat_w_na              # view the new matrix
any(is.na(mat_w_na))  # at least one NA
caRamel::dominate(mat_w_na)  # hangs in busy state

Suggestion: Passing extra arguments to func in the caRamel function

Hello, it would be great to be able to pass an arbitrary number of parameters to "func" in the caRamel function if we have variables coming from the overall script that are used in the objective functions. E.g.:

my_obj_func <- function(i, var1, var2, var3) {
  ...
  return(goodness_of_fit)
}
caRamel(
  ...
  func=my_obj_func,
  ...
  carallel=TRUE, numcores=10,
  var1=aaa, var2=bbb, var3=ccc
)

If the objective function is quite long with many variables as in my case, it would avoid hard coding every variable value inside the objective function, especially if the function is reused many times in the script...

Not an issue - but a question

Hello! This package is fantastic.
For my use case, I am wondering whether it is possible to use more complex constraints on the objective functions than just upper and lower bounds for the parameters? For example, "the overall amount of a certain subset of the parameters used must be lower than a certain level". I would happy to discuss this in some other way (e.g. via email) if more convenient. Thank you :)

How to pass parameters in caRamel for discontinuous variables

I want to add an output variable for subcatch, which has only a few options, such as choices<- list ("x4"=c (207, 39, 206, 214, 121)). Can I set the range of this variable in caRamel? How to set it up? I look forward to your reply and help very much, and I would greatly appreciate any of your suggestions.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.