Tunny Icon
TunnyDocs

The next-gen Grasshopper optimization tool.

Benchmark

詳細はベンチマーク関数セクションをご参照ください。ここでは概要のみを説明します。

単目的関数が 6 種類、多目的関数が 4 種類用意されています。

コンポーネントを配置すると、適切な範囲が設定された GenePool に接続され、Vars 入力に接続されます。 デフォルトは 10 変数ですが、変数の数は任意に設定できます。

Delay 入力に秒数を入力します。目的関数の処理にその秒数がかかるようになります。 実際の重い解析をシミュレートしたい場合に便利です。

以下のように Tunny に接続することで、ベンチマーク関数の最適化を実行できます。

image

サマリー

単目的関数

名前 説明 最適値 最適変数
Ackley 多数の局所最小値と原点に 1 つの大域最小値を持つ多峰性関数です。指数関数と余弦関数の組み合わせにより、複雑なランドスケープを形成します。 0 x* = (0, 0, ..., 0)
Griewank 次元数が増えるほど難しくなる多峰性関数です。原点に大域最小値が 1 つあり、多数の局所最小値を持ちます。 0 x* = (0, 0, ..., 0)
Rastrigin 規則的なパターンで多数の局所最小値が並ぶ、高度に多峰性の関数です。球面関数に余弦変調を加えることで複数のピークと谷を形成しています。 0 x* = (0, 0, ..., 0)
Rosenbrock 「バナナ関数」として知られる古典的な最適化ベンチマーク関数です。非凸で、発見が難しい細長い曲がった谷に大域最小値が 1 つあります。 0 x* = (1, 1, ..., 1)
Schwefel 大域最小値が局所最小値から遠く離れている欺瞞的な多峰性関数です。大域最適解が探索空間の境界付近にある複雑な構造を持ちます。 0 x* = (420.9687, 420.9687, ..., 420.9687)
Sphere 原点に単一の大域最小値を持つ最もシンプルなベンチマーク関数です。単峰性かつ凸であり、基本的なアルゴリズム性能のテストに適しています。 0 x* = (0, 0, ..., 0)

多目的関数

名前 説明
DTLZ1 線形パレートフロントを持つスケーラブルな多目的テスト問題です。目的数が増えるほど難しくなる多峰性ランドスケープを特徴とし、パレートフロントは線形超平面を形成します。
DTLZ2 球面パレートフロントを持つスケーラブルな多目的テスト問題です。DTLZ1 より単純な単峰性構造を持ちます。パレートフロントは目的空間において単位球面を形成し、収束性のテストに有用です。
ZDT1 凸型パレートフロントを持つ 2 目的テスト関数です。一方の目的が Sphere 関数で、もう一方が凸型のトレードオフを形成するシンプルな構造です。アルゴリズム比較に広く使用されます。
ZDT2 非凸(凹型)パレートフロントを持つ 2 目的テスト関数です。ZDT1 に似ていますが、パレートフロントが凹型であるため、凸性を前提とするアルゴリズムにはより難しい問題となります。