Senstivity analysis in GA

4 views (last 30 days)
Gauri
Gauri on 8 Apr 2024
Answered: Umang Pandey on 23 Jun 2024
Hello,
Im working to minimise the total cost incurred to retailer by finding optimum value of maximum inventory level using Genetic algorithm. Im considering 4 subcosts (procurment, holding, expiry, lost sales) which have fixed rate (per unit qty). I have to do this over a time period (x days). Ive already done it over different time duration (1 month, and 3 yr). Each day in this time period has pre-determined demand (ie. units sold), taken from CSVDemand file.
How to conduct "senstivity analysis"? I tried searching and understood that i should record changes in result based on the changes in GA parameters. However, on varying the mutation function, selection function, mutation rate, population size, etc im getting the same results. No variation. Is that because of only 1 optimisation variable?
How should i do senstivity analysis then?
Ive attached the code below. TCFunc is the Objective function. GA_1 is the GA code. it was made with help of optimtask insert.
please provide some guidance.

Answers (1)

Umang Pandey
Umang Pandey on 23 Jun 2024
Hi Gauri,
From what I understand, you are not able to see any variation on varying GA parameters while performing sensitivity analysis. There could be several reasons for that:
1) Single Optimization Variable: While having a single optimization variable might limit the complexity of the problem, it should still show some variation in results with different GA parameters.
2) Convergence: Your GA might be converging to the same solution every time, regardless of the parameters. This could be due to a well-defined problem with a clear global minimum.
3) Parameter Ranges: The ranges for your GA parameters might not be wide enough to show significant differences.
4) Problem Constraints: The constraints and bounds on your optimization variable might be too tight, leading to the same solution every time.
You can try performing the sensitivity analysis incorporating the following pointers which might be helpful.
  • Wider Range of GA Parameters: Ensure that you are testing a sufficiently wide range of GA parameters.
  • Multiple Runs: Run the GA multiple times for each set of parameters to account for the stochastic nature of GA.
  • Record Detailed Metrics: Record not just the final objective value but also intermediate metrics like convergence rate, number of generations, and diversity of the population.
Hope this helps!
Best,
Umang

Community Treasure Hunt

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

Start Hunting!