У чым розніца паміж групавой і няроўнасцей ў Matlab?

Выбачайце, калі гэта здаецца дурным. Мне было цікава, у чым розніца паміж групай і няроўнасцю абмежаванні ў Matlab. Наколькі я магу сказаць, што яны аднолькавыя:

З Matlab ( http://uk.mathworks.com/help/finance/setgroups.html )

Набор групы абмежаванняў для аб'екта Партфоліа Выкажам здагадку, у вас ёсць партфель з пяці актываў, і вы хочаце, каб пераканацца, што першыя тры актывы складаюць не больш за 30% ад партфеля. Прымаючы пад увагу аб'ект Партфель р, задаюцца абмежаванні групы з наступнымі.

G = [праўдзіва праўдзіва праўдзіва ілжывы ілжывы]; р = Партфель; р = setGroups (P, G, [], 0.3);

дисп (p.NumAssets); дисп (p.GroupMatrix); дисп (p.UpperGroup);

 5

 1     1     1     0     0

0.3000

Акрамя таго, з Matlab ( http://uk.mathworks.com/help/finance/setinequality.html )

Набор лінейных няроўнасцей для аб'екта Партфель Выкажам здагадку, у вас ёсць партфель з пяці актываў, і вы хочаце, каб пераканацца, што першыя тры сродкі не больш чым 50% вашага партфеля. Улічваючы аб'ект Portfolio р, усталяваць лінейныя абмежаванні няроўнасці з ніжэйпададзенымі.

А = [1 1 1 0 0]; б = 0,5; р = Партфель; р = setInequality (р, А, б);

дисп (p.NumAssets); дисп (p.AInequality); дисп (p.bInequality);

 5

 1     1     1     0     0

0.5000

Ці магу я што-то непаразуменне тут?

1

1 адказы

Гэта тонкі момант у матэматычнай аптымізацыі. Справа ў тым ,: ў «групавой сувязі» каэфіцыенты абмежаванні з'яўляюцца (няяўна) ўсе роўныя 1. У лінейным абмежаванні няроўнасці каэфіцыентаў можа быць любым, хоць у пэўным прыкладзе, улічваючы, што яны роўныя адзінцы (тым не менш у цэлым вы можаце ўсталяваць іх на ўсё, што вы хочаце, прысвоіўшы зменнай A).

Ўнутрана групавыя абмежаванні апрацоўваюцца адмысловым чынам, што робіць ўкараненне больш эфектыўным (праграма не павінна захоўваць каэфіцыенты для адной рэчы), асабліва калі ў вас ёсць вялікая колькасць з іх. Агульныя лінейныя абмежаванні апрацоўваюцца як любое лінейнае няроўнасць у LP або QP. Калі вы не занепакоеныя максімальнай эфектыўнасці праграмы гэта не мае значэння для вас, і вы маглі б выкарыстоўваць агульныя абмежаванні тыпу заўсёды.

Спецыяльныя хуткія метады праграмавання, якія выкарыстоўваюцца ўнутры мець справу з абмежаваннямі груп называюцца GUB (абагульнены верхняя мяжы) і Vub (Variable верхняй мяжы). Як вы можаце бачыць з ручных груп Абмежаванняў гэта новая функцыя, якая была дададзеная да MATLAB ў 2011 годзе.

1
дададзена