2012-06-07 4 views
8

Я использую дополнительный MOSEK решатель с CVXOPT квадратичного программирования, т.е.CVXOPT выход с MOSEK

sol = cvxopt.solvers.qp(-Q,-p,G,h,A,b,solver='mosek') 

Теперь без использования MOSEK решатель, т.е.

sol = cvxopt.solvers.qp(-Q,-p,G,h,A,b) 

терминальный выход генерируется CVXOPT может подаваться с помощью команды

cvxopt.solvers.options['show_progress'] = False 

Однако это не сработает при использовании решения MOSEK вариант. Решатель MOSEK, который у меня есть в паре циклов, производит много результатов, которые меня не интересуют, а это значит, что я не могу видеть вывод, который меня интересует (например, я выбираю вывод с использованием «print»).

Кто-нибудь знает, возможно ли подавить выход MOSEK? Или, если нет, потенциальная работа вокруг (выводят вывод в файл или что-то в этом роде)?

Большое спасибо!

Dan

p.s К сожалению, я не мог включать более конкретные теги (мне не разрешено создавать новые теги).

ответ

0

Этот вопрос следует задавать в CVXOPT Google-группе (в связи с CVXOPT домашней страницы):

http://groups.google.com/forum/?fromgroups#!forum/cvxopt

Во всяком случае, от Doc-строк:

>>> help(cvxopt.msk.qp) 
. 
. 
    Options are passed to MOSEK solvers via the msk.options dictionary, 
    e.g., the following turns off output from the MOSEK solvers 

     >>> msk.options = {mosek.iparam.log: 0} 

    see chapter 15 of the MOSEK Python API manual. 
+0

Спасибо. У меня все еще есть проблемы (я очень новичок в использовании CVXOPT и MOSEK). Я отправлю свой вопрос в группе google. – Dan

+1

Stackoverflow - это сайт Q & A - и это прекрасный вопрос. Кроме того, это не отвечает на вопрос, в отличие от ответа от @ petter-nilsson – Zero

3

Я не мог» t выяснить, как передать эти параметры через CVXOPT, но после некоторого скрининга источника CVXOPT я придумал это решение:

from cvxopt import matrix, solvers 
from mosek import iparam 
solvers.options['MOSEK'] = {iparam.log: 0} 

Работает с mosek 6.

+0

Это действительно работает для меня; только вместо {mosek.iparam.log: 0} Я использовал {iparam.log: 0}. Благодаря! – Arash