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

Release checklist #43

Closed
9 tasks done
abelsiqueira opened this issue Aug 11, 2015 · 15 comments
Closed
9 tasks done

Release checklist #43

abelsiqueira opened this issue Aug 11, 2015 · 15 comments
Milestone

Comments

@abelsiqueira
Copy link
Member

abelsiqueira commented Aug 11, 2015

What else we should do to release a stable version?

@abelsiqueira abelsiqueira added this to the Announcement release milestone Aug 11, 2015
@timholy
Copy link
Contributor

timholy commented Feb 12, 2016

Add a deps/build.jl script that (in an ideal world) works on all major platforms?

@dpo
Copy link
Member

dpo commented Feb 12, 2016

Technically we don't support Windows. It's doable for OSX and Linux.

@dpo
Copy link
Member

dpo commented Oct 8, 2016

Done for OSX and Linux (in the develop branch).

@timholy
Copy link
Contributor

timholy commented Oct 27, 2016

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.

@dpo
Copy link
Member

dpo commented Oct 27, 2016

Thanks for the feedback! The build script still needs improvements. What version of gsl did you install? You need gsl1. Perhaps you installed gsl2?!

@timholy
Copy link
Contributor

timholy commented Oct 27, 2016

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
...

@dpo
Copy link
Member

dpo commented Oct 27, 2016

I'm not a linux user so I have to ask @abelsiqueira how he does it.

@abelsiqueira
Copy link
Member Author

Sorry for the delay, I'll investigate this now.

@abelsiqueira
Copy link
Member Author

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.

@dpo
Copy link
Member

dpo commented Oct 29, 2016

Thanks. Importantly, I don't think CUTEst builds against gsl2, so gsl1 is really needed here.

@timholy
Copy link
Contributor

timholy commented Nov 8, 2016

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?

@abelsiqueira
Copy link
Member Author

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.

@dpo
Copy link
Member

dpo commented Nov 8, 2016

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".

@timholy
Copy link
Contributor

timholy commented Nov 12, 2016

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.

@abelsiqueira abelsiqueira changed the title Milestone checklist Release checklist Jan 2, 2017
@abelsiqueira
Copy link
Member Author

Will use version number 0.1.0

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

No branches or pull requests

3 participants