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

add .bib file(s) ? #319

Open
d-monnet opened this issue Feb 1, 2024 · 7 comments
Open

add .bib file(s) ? #319

d-monnet opened this issue Feb 1, 2024 · 7 comments

Comments

@d-monnet
Copy link
Contributor

d-monnet commented Feb 1, 2024

Would it be relevant to add .bib file(s) with the problems' reference, and link it in the problems' .jl ?
This would make it easy to export a latex table with the name and citation of the problems.

@tmigot
Copy link
Member

tmigot commented Feb 2, 2024

Thanks @d-monnet for the suggestion, I actually like the idea.
We could add the DOI in each problem Meta and you can always use https://www.doi2bib.org for the rest :).
What do you think?

@d-monnet
Copy link
Contributor Author

d-monnet commented Feb 3, 2024

That would work, but is doi2bib 100% reliable ? I know google scholar, for example, is not great for generating correct .bib files.

What I have in mind is to export a .tex file with the benchmark examples in a table, like

|name| ... 
arglina~\cite{ref} & ....
...

with ref in a .bib file exported/given along.

If we don't want to add the .bib to the package, I suggest we also create a web scraper that get the refs from this website and exports a .bib.

@tmigot
Copy link
Member

tmigot commented Feb 4, 2024

I don't know if it is 100% reliable, but I have been using it very regularly and it seems pretty good nothing like the google scholar bib export. Maybe @abelsiqueira or @dpo have some feedback too on this?

I prefer anyway to add the DOI instead of the bib directly because it is more manageable for us.

@dpo
Copy link
Member

dpo commented Feb 5, 2024

This is a great idea and a corollary of a larger project I’ve been thinking about for years: properly documenting the source of each problem. Many come from the same source (e.g., the HS book or Buckley’s report), but many come from scattered sources. It would be great have a complete source description for each problem while we don’t have thousands of them.

Many problems will have a source of the form “problem 62 in Buckley’s report”, so the DOI alone isn’t sufficient. Maybe the problem source could be a struct with a DOI + other optional fields?!

@abelsiqueira
Copy link
Member

doi2bib is not 100% reliable AFAICT (depends on the source of the DOI), but I have also had a pretty good experience with it.
It does feel like it could be a larger project to list all source. It could actually be independent from this package, and link to implementations of the problems in multiple languages. It could potentially attract contributors from multiple languages. That being said, it is very niche, so I would start just adding the DOIs somewhere in the list here with the problem number or a string descriptor.

@tmigot
Copy link
Member

tmigot commented Feb 7, 2024

As a first step in that direction, I would suggest to add two fields in the DataFrame that describe all the problems:

  • a first field contains the DOI of the "primary" source ; so we can do what @d-monnet ;
  • a second field could contain a larger string with a general description of the origin (original source, test problems, etc.).

@tmigot
Copy link
Member

tmigot commented May 28, 2024

Ok, so a quick update about this.

  • The DOI source might not be as simple as I thought because many of the sources reporting new problems are not published and may not have a DOI. In this, case we probably just leave the DOI field empty and count on the reference field to give us info.
  • What do you think of something like this for the arggauss_meta (but then, it is aggregated in the giant DataFrame):
argauss_meta = Dict(
  :nvar => 3,
  :variable_nvar => false,
  :ncon => 15,
  :variable_ncon => false,
  :minimize => true,
  :name => "argauss",
  :has_equalities_only => true,
  :has_inequalities_only => false,
  :has_bounds => false,
  :has_fixed_variables => false,
  :objtype => :other,
  :contype => :general,
  :best_known_lower_bound => -Inf,
  :best_known_upper_bound => Inf,
  :is_feasible => missing,
  :defined_everywhere => missing,
  :origin => :unknown,
  :doi => "10.1145/355934.355936", # https://www.doi2bib.org/bib/10.1145/355934.355936
  :reference => "
- Problem 9 in J.J. More', B.S. Garbow and K.E. Hillstrom, \"Testing Unconstrained Optimization Software\", ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981;
- Buckley#28;
- CUTEst: ARGAUSS.",
)

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

No branches or pull requests

4 participants