lbfgsb 0.5.0 → 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d0558e429ff4c590e681165e0af885de04e9b78d4d679afc89f9c0bcfc1b2764
4
- data.tar.gz: 5e1a8a157614da1a8541fbe28aad8cb04bf4096a4d3022f1b519c35abf071544
3
+ metadata.gz: b8b981810814f144065eb51dadf5c310ce4eaa5080e1cb4092189dbe916387bf
4
+ data.tar.gz: 1ba3ff6d1cfe6fe0e0a707963b39554d7ad2c1e8be8829d8eaf1918ffd743adf
5
5
  SHA512:
6
- metadata.gz: 66997d33a6fd0fb750ae236934fa866a94592161cbba49375bd7d46d94a9c98f0177cd207431d24cd1812bbf10be050106c941de9ac972f7699d0687b97a41c8
7
- data.tar.gz: d8ba46b919591239180642f9a45fe5f14337f2aa703ac527ba533449c647be4b64de700a49a88616019241010d37e6118904c992c3886ed7e44c620f771cadc9
6
+ metadata.gz: 778a041c3072451e86dccd5d75850540fc2503d49f14e1a4c11db9c20f05f0d427627f2f17c5931fe90dba68ba3ab5760b4f59a811f5af19eb5f0ce12ab0891c
7
+ data.tar.gz: 01d735e9f03a3bc4615cf5b471a2c88bc210663b7d268edf0898c5936e50a2b636cfd8ee6e1664c6d225c6872aa7108bd00aece439629a4d5c691d90bd6e7913
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ ## 0.5.1
2
+ - Refactor codes and configs with RuboCop.
3
+
1
4
  ## 0.5.0
2
5
  - Add build option to select FORTRAN integer bit size.
3
6
 
data/README.md CHANGED
@@ -3,9 +3,9 @@
3
3
  [![Build Status](https://github.com/yoshoku/lbfgsb.rb/workflows/build/badge.svg)](https://github.com/yoshoku/lbfgsb.rb/actions?query=workflow%3Abuild)
4
4
  [![Gem Version](https://badge.fury.io/rb/lbfgsb.svg)](https://badge.fury.io/rb/lbfgsb)
5
5
  [![BSD 3-Clause License](https://img.shields.io/badge/License-BSD%203--Clause-orange.svg)](https://github.com/yoshoku/suika/blob/main/LICENSE.txt)
6
- [![Documentation](http://img.shields.io/badge/api-reference-blue.svg)](https://yoshoku.github.io/lbfgsb.rb/doc/)
6
+ [![Documentation](https://img.shields.io/badge/api-reference-blue.svg)](https://yoshoku.github.io/lbfgsb.rb/doc/)
7
7
 
8
- Lbfgsb.rb is a Ruby binding for [L-BFGS-B](http://users.iems.northwestern.edu/~nocedal/lbfgsb.html)
8
+ Lbfgsb.rb is a Ruby binding for [L-BFGS-B](https://users.iems.northwestern.edu/~nocedal/lbfgsb.html)
9
9
  that is a limited-memory algorithm for solving large nonlinear optimization problems
10
10
  subject to simple bounds on the variables.
11
11
  L-BFGS-B is written in FORTRAN. Author converted the codes into C-lang
@@ -27,6 +27,20 @@ Or install it yourself as:
27
27
 
28
28
  $ gem install lbfgsb
29
29
 
30
+ Notes: lbfgsb.rb uses 32-bit integer for the integer type in its native code.
31
+ If you want to use 64-bit integer, give the installation option as below:
32
+
33
+ ```
34
+ $ gem install lbfgsb -- --with-use-int64
35
+ ```
36
+
37
+ In adition, if you want to use an external BLAS library for linear algebra on LBFGSB optimization,
38
+ give the directory and library in the installation options as follows:
39
+
40
+ ```
41
+ $ gem install lbfgsb -- --with-blas-dir=/opt/local/openblas/lib --with-blas-lib=openblas
42
+ ```
43
+
30
44
  ## Usage
31
45
  Example 1. Logistic Regression
32
46
 
@@ -3,5 +3,5 @@
3
3
  # Lbfgsb.rb is a Ruby binding for L-BFGS-B with Numo::NArray.
4
4
  module Lbfgsb
5
5
  # The version of Lbfgsb.rb you are using.
6
- VERSION = '0.5.0'
6
+ VERSION = '0.5.1'
7
7
  end
data/lib/lbfgsb.rb CHANGED
@@ -5,6 +5,7 @@ require 'numo/narray'
5
5
  require 'lbfgsb/version'
6
6
  require 'lbfgsb/lbfgsbext'
7
7
 
8
+ # Lbfgsb.rb is a Ruby binding for L-BFGS-B with Numo::NArray.
8
9
  module Lbfgsb
9
10
  module_function
10
11
 
@@ -39,7 +40,7 @@ module Lbfgsb
39
40
  # - jcb [Numo::Narray] Values of the jacobian
40
41
  # - task [String] Description of the cause of the termination.
41
42
  # - success [Boolean] Whether or not the optimization exited successfully.
42
- def minimize(fnc:, x_init:, jcb:, args: nil, bounds: nil, factr: 1e7, pgtol: 1e-5, maxcor: 10, maxiter: 15_000, verbose: nil)
43
+ def minimize(fnc:, x_init:, jcb:, args: nil, bounds: nil, factr: 1e7, pgtol: 1e-5, maxcor: 10, maxiter: 15_000, verbose: nil) # rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
43
44
  n_elements = x_init.size
44
45
  l = Numo::DFloat.zeros(n_elements)
45
46
  u = Numo::DFloat.zeros(n_elements)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lbfgsb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - yoshoku
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-02-13 00:00:00.000000000 Z
11
+ date: 2022-07-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: numo-narray
@@ -59,6 +59,7 @@ metadata:
59
59
  source_code_uri: https://github.com/yoshoku/lbfgsb.rb
60
60
  changelog_uri: https://github.com/yoshoku/lbfgsb.rb/blob/main/CHANGELOG.md
61
61
  documentation_uri: https://yoshoku.github.io/lbfgsb.rb/doc/
62
+ rubygems_mfa_required: 'true'
62
63
  post_install_message:
63
64
  rdoc_options: []
64
65
  require_paths:
@@ -74,7 +75,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
74
75
  - !ruby/object:Gem::Version
75
76
  version: '0'
76
77
  requirements: []
77
- rubygems_version: 3.3.7
78
+ rubygems_version: 3.2.33
78
79
  signing_key:
79
80
  specification_version: 4
80
81
  summary: Lbfgsb.rb is a Ruby binding for L-BFGS-B.