MatCUTEst

バージョン 1.0 (45 KB) 作成者: Zaikun Zhang
MatCUTEst is a package for facilitating the usage of CUTEst (https://github.com/ralna/CUTEst) in MATLAB on Linux.
ダウンロード: 27
更新 2023/3/27

MatCUTEst

license CI View MatCUTEst on File Exchange

What is this?

MatCUTEst is a package facilitating the usage of CUTEst in MATLAB on Linux.

N.B.: Using CUTEst in MATLAB on MacOS is not supported anymore as of 2022. See the discussions in CUTEst issue 28.

How to use?

If you are using MATLAB R2020b or above on Ubuntu 20.04 or above, you should first try the compiled version of MatCUTEst. Do the following only if that version does not work.

First of all, clone this repository to the place where you want MatCUTEst to be installed. You should then get a directory containing this README file. We will refer to this directory as "[the current directory]" in the sequel.

  1. Run the following in the terminal under [the current directory]:

    bash ./INSTALL

    It will install CUTEst and then mexify all the problems, which may take a few hours.

  2. After 1, any CUTEst problem can be obtained in MATLAB by

    macup(PROBLEM_NAME)

    where you have to replace PROBLEM_NAME by a string that is the name of the problem. For example, try

    macup('AKIVA')

    This should give you a structure containing the full information of problem AKIVA, including its objective function, constraints (if any), starting point, etc. Try help matcutest in MATLAB or see mtools/README.txt for more information.

Use MatCUTEst in GitHub Actions

If you want to use MatCUTEst in GitHub Actions, see the demo. MatCUTEst has been used intensively in the testing and development of PRIMA, where you can find more realistic examples of using MatCUTEst in GitHub Actions.

Thread safety

MatCUTEst is thread-safe. It can be used within a parfor loop. Here is an example.

problist = {'AKIVA', 'BOX2', 'ZECEVIC2', 'ZY2'};
parfor ip = 1 : length(problist)
    pname = problist{ip};
    fprintf('\n%d. Try %s:\n', ip, pname);
    p = macup(pname);  % make a CUTEst problem
    p.objective(p.x0)
    decup(p);  % destroy the CUTEst problem
end

Remarks

  • MatCUTEst has been playing a vital role in the testing and development of PRIMA.
  • If you would like to use CUTEst in Python, check PyCUTEst.

引用

Zaikun Zhang (2024). MatCUTEst (https://github.com/equipez/matcutest/releases/tag/v1.0), GitHub. 取得済み .

MATLAB リリースの互換性
作成: R2023b
R2020b 以降のリリースと互換性あり
プラットフォームの互換性
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
バージョン 公開済み リリース ノート
1.0

この GitHub アドオンでの問題を表示または報告するには、GitHub リポジトリにアクセスしてください。
この GitHub アドオンでの問題を表示または報告するには、GitHub リポジトリにアクセスしてください。