Comments (15)
Done for OSX and Linux (in the develop
branch).
from cutest.jl.
For future reference:
- gsl updated to 2.0 in 2015
- Ubuntu LTS picked it up on 2016 (The last LTS version was 14.04 on 2014)
- Travis is using 12.04, so I wasn't aware of the issue.
- Homebrew is delaying using gsl 2.0 until all packages have migrated
Current solution is to
Download gsl-1.16 from http://mirror.nbtelecom.com.br/gnu/gsl/gsl-1.16.tar.gz
tar -zxf gsl-1.16.tar.gz
cd gsl-1.16
./configure
make
sudo make install
Additionally, you have to create a link to lgfortran:
sudo ln -s /usr/lib/x86_64-linux-gnu/libgfortran.so.3 /usr/lib/libgfortran.so
or something similar. Should work after this. I'll update the installation steps.
from cutest.jl.
Add a deps/build.jl
script that (in an ideal world) works on all major platforms?
from cutest.jl.
Technically we don't support Windows. It's doable for OSX and Linux.
from cutest.jl.
I just tested the build script. Looks really promising, but (1) I had to install libgsl-dev
manually (Ubuntu), and (2) it ends with an error; I've posted the log in this gist.
from cutest.jl.
Thanks for the feedback! The build script still needs improvements. What version of gsl did you install? You need gsl1. Perhaps you installed gsl2?!
from cutest.jl.
Looks like Ubuntu 16.04 doesn't offer gsl1; only gsl2 is available:
$ apt-cache search gsl
libgsl-dbg - GNU Scientific Library (GSL) -- debug symbols package
libgsl-dev - GNU Scientific Library (GSL) -- development package
libgsl2 - GNU Scientific Library (GSL) -- library package
gambas3-gb-gsl - Gambas GNU Scientific Library component
gsl-bin - GNU Scientific Library (GSL) -- binary package
gsl-ref-html - GNU Scientific Library (GSL) Reference Manual in html
gsl-ref-psdoc - GNU Scientific Library (GSL) Reference Manual in postscript
...
from cutest.jl.
I'm not a linux user so I have to ask @abelsiqueira how he does it.
from cutest.jl.
Sorry for the delay, I'll investigate this now.
from cutest.jl.
Thanks. Importantly, I don't think CUTEst builds against gsl2, so gsl1 is really needed here.
from cutest.jl.
Awesome, this worked for me.
I spent some time scanning through the source and the CUTEr/CUTEst documentation, but to my surprise I don't see a way to search (or even list) the available problems---it seems you have to know the name of the problem you want. Is there a good way to do that? Ideally I'd love to be able to loop over all problems fitting a particular description (e.g., all problems with continuous 2nd derivatives and fewer than n
variables). Also, I presume some problems have a known optimum, is there a good way to extract that?
from cutest.jl.
That's an open PR: #73
Don't know if there's a way to get the known optimum.
Outside of Julia, there is the CUTEst select
tool, which I actually never used, and I started a Python tool but never finished.
from cutest.jl.
You'll be scared when you see what the current best way to select problems is. There's a tool named select
in $SIFDECODE/bin
. It'll ask you a few questions and write the resulting list of problems to a file. It's very old school (think Fortran 77). #73 is supposed to improve on that for CUTEst problems. Further down the road, we'd like to be able to select problems written as in https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl.
Documenting the CUTEst problems has been an long-standing wish. There's a blurb at the beginning of each SIF file explaining where the problem comes from, but it's necessary to scour the papers and books to discover whether a solution is known. Many of those problems are nonconvex, so it's not even clear what a "solution" should be. Almost all solvers are only guaranteed to find a stationary point, not a local minimum (though they sometimes find a local minimum). For academic problems, it may be possible to find out what the/an optimum is. For the rest, we could record a "best known solution".
from cutest.jl.
Don't know if there's a way to get the known optimum.
It turns out there are many SIF files that have a line something like
*LO SOLTN 0.00102734
which records the intended solution. But many are 0 when my best minimum isn't 0 (could be a dummy value?), and at least in 32 cases I've found a lower value than the one in the file. Could be that there are multiple minima and I've just found a better one.
from cutest.jl.
Will use version number 0.1.0
from cutest.jl.
Related Issues (20)
- gfortran error HOT 10
- KeyError: key "MASTSIF" not found HOT 7
- How to specify the size of the test problem? HOT 2
- NLPModels computes gradient with elements out of order HOT 9
- jth_hess_coord! seems not implemented HOT 2
- CUTEst.jl and AutoDiff -- compute high-order derivatives HOT 10
- Function "NONCVXUN" HOT 5
- Make the package loadable in Windows even though it is not usable HOT 2
- nnzj in NLPModels HOT 9
- Update the function sifdecoder
- Update Artifacts.toml
- Interface cutest_cint_chsprod, cutest_cint_chjprod and cutest_cint_cohprods
- Add csjp in core_interface.jl
- Add a unit test for jth_hess_coord!
- Regenerate a new classf.json
- IOError on Windows HOT 5
- Preallocated more vectors in the CUTEstModel
- Mark CUTEst.select as @deprecated
- Different outputs between CUTEst.select & select_sif_problems HOT 2
- 'libpath' not defined when using Windows HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cutest.jl.