# How to reduce the execution time of the given piece of code?

7 views (last 30 days)

Show older comments

I have an algorithm "WHO", a function "fobjNoise" and a script "main". I run the main and I get different values of fitness for Noise that is varying from 0 to 40 dB. Then I plot the fitness vs Noise graph. But there are two issues. These are:

1- This code takes too much time. I want to reduce it execution time.

2-When I do pre-allocation for the variables onev, twov etc, like below:

Runs = 50; % Number Of Times To Run The Inner Loop

onev=zeros(Runs,1);

time1=zeros(Runs,1);

two1=zeros(Runs,dim);

twov=zeros(Runs,dim);

then when I try to plot the fitness values obtained , it gives me an error like below:

>> onev=sort(onev,'descend');

>> plot(Noise,onev)

Error using plot

Vectors must be the same length.

>>

Why it is so and what to do so that it takes less time and doesn't give me the error even if I increase the no. of Runs or I vary the Noise levels from 0 to 50 or from -40 to 40 etc.?

##### 9 Comments

### Answers (1)

Taylor
on 8 Jan 2024

##### 0 Comments

### See Also

### Community Treasure Hunt

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

Start Hunting!