Integer/Discrete Optimization with Simulated Annealing

Turning MATLAB's Simulated Annealing to Integer/Discrete Optimization
411.0 次下载
更新时间 2019/8/27

查看许可证

PLEASE USE THIS FILE ONLY IF YOU HAVE A GOOD GENERAL IDEA ABOUT YOUR OPTIMIZATION PROBLEM OTHERWISE THIS MAY NOT HELP YOUR PROBLEM.

This code customizes simulated annealing into an integer/discrete (can be adjusted) optimization. Hence, it relies on MATLAB's simulated annealing algorithm. Please make sure you have the appropriate toolboxes.

Please read the comments within the "SAIntegerOptim" very carefully. This is the code that you need to run.
You may want to adjust the other files too.

This submission demonstrates how to turn the MATLAB's "simulannealbnd" into an integer/discrete optimizer with an example. The example has some special condition!!!
There are a few advantages to this, however your optimization problem may not benefit from this advantages. That is why you need to know the optimization problem really good.

Perhaps some of the fundamental things/conditions to consider before using this demonstration:

1- You know that the global minimum of the objective function is exactly at some integer/discrete location of the solution space (This is the case for this demonstration, where global minimum is at [0,0]).

2- You can sacrifice decimal accuracy of solution space for speed so you can run the SA a few times to make sure it is not stopped at some local minima (this was the case with my project which led to this code, as I was working on image pixels that are obviously integers).

3- Acquiring a quick and close initial seed helps your optimization.

If you need one of the above then this may help you.

PLEASE BE AWARE YOU STILL NEED TO TAILOR THE CODE ACCORDING TO YOUR OPTIMIZATION PROBLEM (that only you know about). I tried to simplify things in the code as much as could.

Good luck
Sal

引用格式

Salaheddin Hosseinzadeh (2024). Integer/Discrete Optimization with Simulated Annealing (https://www.mathworks.com/matlabcentral/fileexchange/72539-integer-discrete-optimization-with-simulated-annealing), MATLAB Central File Exchange. 检索来源 .

MATLAB 版本兼容性
创建方式 R2019a
兼容任何版本
平台兼容性
Windows macOS Linux
类别
Help CenterMATLAB Answers 中查找有关 Simulated Annealing 的更多信息

Community Treasure Hunt

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

Start Hunting!
版本 已发布 发行说明
1.0.0