GA with integer and linear constraints

2 ビュー (過去 30 日間)
siddhesh rane
siddhesh rane 2017 年 10 月 27 日
回答済み: Alan Weiss 2017 年 10 月 27 日
According to the documentation of global optimization toolbox "ga does not enforce linear constraints when there are integer constraints. Instead, ga incorporates linear constraint violations into the penalty function".
In an optimization problem I am trying to solve if linear constraints are violated, other constraints will return non-real values. How can I tackle this issue?
Simplified version of problem
Objective Function : min a + b
0 <= a <= 10
0 <= b <= 10
Subject to,
a*b - 25*a < 0
theta < 0 (Where theta is function of a and b, and returns non-real value if first constraint is not satisfied)

回答 (2 件)

Walter Roberson
Walter Roberson 2017 年 10 月 27 日
For that situation, do not use integer constraints. Instead, use custom population, mutation, and cross-over functions that "just happen" to obey the desired integer constraints.
  1 件のコメント
siddhesh rane
siddhesh rane 2017 年 10 月 27 日
@Walter: This seems little intimidating as I am a newbie to GA and constraints I am using are fairly complex. I will read more about creating custom population, mutation and crossover. Is there any other solver which is more suitable for these kinds of problems?

サインインしてコメントする。


Alan Weiss
Alan Weiss 2017 年 10 月 27 日
You can set your returned objective function values to a large value, say 1e100, if the calculation comes back complex or NaN.
Alan Weiss
MATLAB mathematical toolbox documentation

カテゴリ

Help Center および File ExchangeGenetic Algorithm についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by