You can only use the algorithms for which you have installed the corresponding 
solvers. Apparently you haven't installed the TSPOPF solvers, as the error 
message indicates.

-- 
Ray Zimmerman
Senior Research Associate
419A Warren Hall, Cornell University, Ithaca, NY 14853
phone: (607) 255-9645




On Nov 7, 2011, at 9:21 AM, Dailan Xu wrote:

> Dear Prof. Zimmerman,
> With the following code that you gave me it has error for all of the 
> algorithms, for example 550, 540. Could you please let me know what is the 
> problem?
> 
> mpopt=mpoption('OPF_ALG', 550);
> offers.P.qty = [10 120 120; 10 145 145; 10 130 130];
> offers.P.prc = [15 25 50; 10 30 40; 10 20 55];
> bids = [];
> mkt = struct();
> [r, co] = runmarket('case9', offers, bids, mkt, mpopt);
> 
> Error using ==> opf_execute at 123
> opf_execute: OPF_ALG 550 requires TRALM (see 
> http://www.pserc.cornell.edu/tspopf/)
> 
> Error in ==> opf at 225
> [results, success, raw] = opf_execute(om, mpopt);
> 
> Error in ==> uopf at 128
> [results, success] = opf(mpc, mpopt);
> 
> Error in ==> smartmkt at 90
> [r, success] = uopf(mpc2, mpopt);
> 
> Error in ==> runmarket at 141
> [co, cb, r, dispatch, success] = smartmkt(mpc, offers, bids, mkt, mpopt);
> 
> 
> the error is as follows:
> 
> 
> 
> Best Regards
> 
> D. Xu
> 
> 
> 
> On Thu, Nov 3, 2011 at 18:46, Ray Zimmerman <[email protected]> wrote:
> They are all solving the same problem, just using different methods to find 
> the solution. Identical solutions is a good thing.
> 
>    Ray
> 
> 
> 
> On Nov 3, 2011, at 11:41 AM, Dailan Xu wrote:
> 
>> Thank you for your help. Why sometimes there is no difference between the 
>> results obtained by different solvers?
>> Best Regards
>> 
>> D. Xu
>> 
>> 
>> 
>> On Thu, Nov 3, 2011 at 16:16, Ray Zimmerman <[email protected]> wrote:
>> OPF_ALG = 320 relies on the optional package BPMPD_MEX. By the way, those 
>> old LP-based OPF solvers are not very good relative to the best solvers 
>> available now. For small problems (if you have a 32-bit Matlab) MINOPF 
>> (OPF_ALG = 500) is still one of the best. For larger problems, the interior 
>> point solvers are better (540, 560).
>> 
>> They should all give the same answer. If you are seeing differences, it's 
>> likely because the termination tolerances on one or more of the algorithms 
>> is not small enough.
>> 
>> -- 
>> Ray Zimmerman
>> Senior Research Associate
>> 419A Warren Hall, Cornell University, Ithaca, NY 14853
>> phone: (607) 255-9645
>> 
>> 
>> 
>> 
>> On Nov 3, 2011, at 11:05 AM, Dailan Xu wrote:
>> 
>>> The following error was occurred. It doesn't work. 
>>> 
>>> 
>>> ??? Undefined function or variable 'bpopt'.
>>> 
>>> Error in ==> qps_bpmpd at 282
>>>     bp_opt = bpopt;         %% use default options
>>> 
>>> Error in ==> qps_matpower at 191
>>>         [x, f, eflag, output, lambda] = ...
>>> 
>>> Error in ==> mp_qp at 104
>>> [xout, fval, howout, output, lambda] = qps_matpower(H, f, A, l, b, VLB, 
>>> VUB, x0,
>>> qps_opt);
>>> 
>>> Error in ==> mp_lp at 83
>>> [varargout{1:nargout}] = mp_qp([], varargin{:});
>>> 
>>> Error in ==> LPrelax at 55
>>>     [x2, duals] = mp_lp(f, atemp, btemp, vlb, vub, [], nequs, -1, 100);
>>> 
>>> Error in ==> LPsetup at 116
>>> [x2, dualsred, idx_workc, idx_bindc] = LPrelax(ared, fred, bred, nequsred, 
>>> vlbred,
>>> vubred, idx_workc, mpopt);
>>> 
>>> Error in ==> LPconstr at 225
>>>     [dx, lambda, idx_workc, idx_bindc] = LPsetup(a_lp, f_lp, rhs_lp, nequ, 
>>> vlbdx, vubdx,
>>>     idx_workc, mpopt);
>>> 
>>> Error in ==> lpopf_solver at 157
>>> [x, lambda, success] = LPconstr('fun_copf', x0, mpopt, step0, [], [], 
>>> 'grad_copf', ...
>>> 
>>> Error in ==> opf_execute at 148
>>>     [results, success, raw] = lpopf_solver(om, mpopt);
>>> 
>>> Error in ==> opf at 225
>>> [results, success, raw] = opf_execute(om, mpopt);
>>> 
>>> Error in ==> uopf at 128
>>> [results, success] = opf(mpc, mpopt);
>>> 
>>> Error in ==> smartmkt at 90
>>> [r, success] = uopf(mpc2, mpopt);
>>> 
>>> Error in ==> runmarket at 141
>>> [co, cb, r, dispatch, success] = smartmkt(mpc, offers, bids, mkt, mpopt);
>>> 
>>> 
>>> 
>>> On Thu, Nov 3, 2011 at 15:58, Ray Zimmerman <[email protected]> wrote:
>>> mpopt=mpoption('OPF_ALG', 320);
>>> offers.P.qty = [10 120 120; 10 145 145; 10 130 130];
>>> offers.P.prc = [15 25 50; 10 30 40; 10 20 55];
>>> bids = [];
>>> mkt = struct();
>>> [r, co] = runmarket('case9', offers, bids, mkt, mpopt);
>>> 
>> 
>> 
> 
> 

Reply via email to