Что делает «матрицу Якоби» сингулярной в SAS? - PullRequest
1 голос
/ 05 ноября 2011

У меня есть простая программа SAS (версия 9.2) следующим образом,

proc model;
cdf('normal',log(V/100)+1)=0.5;
bounds V>0;
solve V/solveprint;
run;

Выдает исключение, которое говорит, что якобиева матрица является единственной,

The Newton method Jacobian matrix of partial derivatives of the
equations with respect to the variables to be solved is singular.

Какова возможная причина этой ошибки?

Обновление: я немного упростил проблему. При изменении на "cdf ('normal', X) = 0.5" он работает без исключения.

Update2: границы обновляются до V> 0; но исключение все еще существует

Ответы [ 2 ]

3 голосов
/ 07 ноября 2011

Какой набор входных данных вы передаете модели proc?Например, этот код работает согласованно:

data a;
 v=100;
run;

proc model data=a;
  cdf('normal',log(V/100)+1) = 0.5;
  bounds V>0;
  solve V / solveprint;
run;
quit;

и дает решение V=36.78794

Но некоторое изменение входных данных (см. Ниже) будет последовательно давать ошибку единичной матрицы Якоби.

data a;
 v=0.00001;
run;

proc model data=a;
  cdf('normal',log(V/100)+1) = 0.5;
  bounds V>0;
  solve V / solveprint;
run;
quit;
1 голос
/ 06 ноября 2011

Вы просите SAS решить функцию, которая не имеет решения. Вы запрашиваете значение V>1000, которое делает это уравнение верным. Но таких значений нет, потому что log(1000/100+1) составляет около 3,3, а CDF нормальной случайной величины со средним 0 и стандартным отклонением 1, оцененным в 3,3, составляет 0,9995. Любое большее значение V просто переместит функцию ближе к 1, а не к 0,5, поэтому ответа на ваш вопрос нет.

Говоря вам, что матрица частных производных сингулярна, SAS просто использует причудливую математику для выражения «у вашей функции нет решения». (На самом деле, он говорит: «Я превратил ваш вопрос в эквивалентную проблему максимизации, и у этой проблемы нет максимума, поэтому я не могу вам помочь».)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...