MATLAB Answers

Facing issues in interior point method for optimization

2 views (last 30 days)
Maheen Fazal
Maheen Fazal on 10 Oct 2018
Edited: Maheen Fazal on 11 Oct 2018
I am facing issue regarding the optimization problem, I have to optimize the objective function Rsum by maximizing it with respect to phi and tau, and my constrains are
function [RTotal]= M_throughput(x)
global n
B=0.3;
backscatteringrate= 20*1000;
RB=x(1) *backscatteringrate;
BT=n*RB; %rate for two STS%
PRn=0.0002224;
EH= ((1-B-x (1)) *PRn);
EHH=n*EH;
transmitpower=EHH /x (2);
Bandwidth=100*1000;
Transmissionefficiecny=0.6;
BTE=Bandwidth*Transmissionefficiecny;
Po=0.001;
Gema=1/Po;
RH=-(x(2) *BTE*log2(1+Gema*EH/x(2)));
RR=n*RH;
RTotal=(BT+RR)
end
Question 1a: in my code I used interior point method to optimize the overall throughput Rsum where
Rsum = Rn for n=1 to N where N=10 and Rn= Rnb+Rnh.
Rnb = phi*20*1000;
Rnh= -(tau* 100*1000*0.6*log2(1+1/ 0.001* 1-phi)* 0.0002224/tau)
Here is the code for the optimization (the lower bound for phi is 0 and upper bound as mentioned above in the contraints is ≤ 1-β where value of β =0.3 so is 0.7,same with the tau the lower bound is 0 and upper bound is 0.3,means from 0 to 1 the phi must be between 0 to 0.7 and tau must be between 0.7 to 1 but after optimization the value of x I get that is always 0.000 and 1.000 its mean the value of phi is 0 and tau =1 which is not possible for all time so kindly help me out to solve this issue that I get some value for phi and tau.
Question 1b: The 2nd issue m facing in question 1 is I have N numbers for users so how to optimize all values for N number of users,shall I use for loop in the optimization code and Global N in the main code(function) or I shall make a separate function for Global N and call it in the main function or code.
% idle is the main function file for optimization)
clc
clear all
global n
n_vec=(0:1:10);
throughput=[];
for n=n_vec
lb = [0,0.7];
ub = [0.7,1];
A = [];
b = [];
Aeq = [];
beq = [];
x0 = [0.5,0.8];
[x,fval]=fmincon(@idle,x0,A,b,Aeq,beq,lb,ub);
max=-(fval);
throughput=[throughput max];
end
plot(n_vec,throughput)
Question 2: I used interior point method for optimization, and I have optimized 1st two above mentioned constraints but did not know to optimized the third constraints i.e. Rn≥ Rnt ∀n ϵ N in the same interior point method and also the threshold value (Rnt ) in undefined.(supposed value of threshold (Rnt)=27000
  1 Comment
Torsten
Torsten on 10 Oct 2018
Don't you get an error when setting
RB=(x1) *backscatteringrate;
in "M_throughput" ?

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!