close Warning: Can't synchronize with repository "(default)" (/var/svn/tolp does not appear to be a Subversion repository.). Look in the Trac log for more information.

Changes between Version 18 and Version 19 of OfficialTolArchiveNetworkBysSamplerRandWalkInPolytope


Ignore:
Timestamp:
Feb 1, 2011, 7:17:40 PM (14 years ago)
Author:
Víctor de Buen Remiro
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • OfficialTolArchiveNetworkBysSamplerRandWalkInPolytope

    v18 v19  
    6060En la práctica se observa que cuando hay muchas restricciones la cadena tiende a colapsar en un
    6161punto de la frontera, lo cual impide que haya una convergencia real en un intervalo de tiempo
    62 razonable.
     62razonable. Si se utiliza un generador de tipo Gibbs le pasa exactamente lo mismo, pero la consecuencia
     63es que el método directamente fracasa y no es capaz de simular el siguiente punto.
    6364
    6465== Diseños de generadores de candidatos factibles ==
     
    9091
    9192Al igual que se hace con los generadores simétricos habituales es necesario fijar un tamaño de paso
    92 máximo [[LatexEquation(s)]] para que se generen puntos no demasiado lejanos del acutual, de forma
     93máximo [[LatexEquation(s)]] para que se generen puntos no demasiado lejanos del actual, de forma
    9394que el ratio de aceptación sea razonable.
    9495De esta forma se podría definir el radio de la hiperesfera como
     
    102103[[Image(source:/tolp/OfficialTolArchiveNetwork/BysSampler/doc/image/RandWalk.InPolytope.chart.726488582_b.png)]]
    103104
     105Obsérvese como este método tendrá siempre dificultades al acercarse demasiado a la frontera, y especialmente
     106si se acerca a un vértice demasiado agudo.
    104107
    105108==== Función de densidad ====
     
    108111[[LatexEquation( \ln Q\left(x,y\right) = n \ln \rho\left(x; s, \lambda\right))]]
    109112
    110 el cual depende de la posición del punto de partida respecto a las fronteras del politopo y no es por
    111 tanto un generador simétrico necesariamente, auqnue sí puede serlo eventualmente si el la distancia
    112 del punto a la frontera es menor que el tamaño de paso actual.
     113La densidad depende por tanto del radio, el cual depende de la posición del punto de partida respecto
     114a las fronteras del politopo y no es por tanto un generador simétrico necesariamente, auqnue sí puede
     115serlo eventualmente si la distancia del punto a la frontera es menor que el tamaño de paso actual.
     116
     117En realidad podría usarse cualquier otra densidad truncada en la hiperesfera, como por ejemplo una
     118multinormal estandarizada, pero eso puede complicar demasiado el cálculo de la función de densidad,
     119la cual habrá que calcular dos veces por cada candidato o precandidato generado.
    113120
    114121==== Función generatriz ====
     
    128135     proporcional a la hipersuperficie de dimensión n-1 de la hiperesfera correspondiente[[BR]] [[BR]]
    129136     [[LatexEquation( \begin{array}{c} F\left(h\right)=\intop_{0}^{h}c\cdot t^{n-1}\mathbf{d}t=\left.\frac{c}{n}t^{n}\right]_{0}^{h}=\frac{c}{n}h^{n}\\ F\left(\rho\right)=\frac{c}{n}\rho^{n}=1\Rightarrow c=n\rho^{-n}\\ F\left(h\right)=\left(\frac{h}{\rho}\right)^{n}\end{array} )]] [[BR]] [[BR]]
     137     Para ello se genera una uniforme unitaria y se calcula la inversa de la función de distribución en ella [[BR]] [[BR]]
     138     [[LatexEquation( \gamma \sim \left[0,1\rigt] )]]  [[BR]] [[BR]]
     139     [[LatexEquation( h = F^{-1}\left(\gamma\right) = \rho \gamma^{\frac{1}{n}})]] [[BR]] [[BR]]
    130140 1. Si el punto está en la frontera o a una distancia menor de [[LatexEquation( \rho_0 )]] entonces se
    131141    retomará el último punto interior que cumplía dicha condición como origen de los
    132142    candidatos, y se ejecuta desde el principio el proceso, pero luego se compararán las probabilidades
    133143    de los candidatos con las del último punto generado, para asegurar así la convergencia, según el
    134     principio básico del [http://en.wikipedia.org/wiki/Detailed_balance balance-detallado].
     144    principio básico del [http://en.wikipedia.org/wiki/Detailed_balance balance-detallado].
     145
     146Podríamos decir que se trata de un paseo aleatorio con retroceso, pues en ocasiones el origen de
     147candidatos puede retroceder. Esto es perfectamente lícito pues no hay ninguna regla que obligue a
     148que la distribución de los candidatos sea un paseo aleatorio. De hecho podría utilizarse perfectamente
     149un generador de candidatos con origen fijo, aunque sólo funcionaría en la práctica si se conoce una
     150buena aproximación de la función de densidad que sea fácil de generar y calcular. Aún así, como el
     151comportamiento mayoritario será el de un paseo aleatorio mantendremos la nomenclatura con todas las
     152reservas enunciadas.
    135153
    136154=== Paseo aleatorio radial asimétrico ===
    137 Otra forma similar a la anterior pero que podría adaptarse mejor caundo el punto se acerca
    138 demasiado a la frontera, e incluso es válido si está en la propia frontera.
     155A continuación de define otra forma de generador factible similar a la anterior pero que podría
     156adaptarse mejor cuando el punto se acerca demasiado a la frontera, e incluso es válida si está en
     157la propia frontera.
    139158
    140159Se trataría de tomar una dirección unitaria aleatoria [[LatexEquation(u \wedge \left\Vert u\right\Vert = 1)]],
     
    146165[[LatexEquation(h \sim U\left[h^{-},h^{+}\right] \wedge h^{-} \le 0 \le h^{+}  )]]
    147166
    148 Los pasos para conseguirlo serían los siguientes
     167==== Función de densidad ====
     168La función de densidad en este caso es simplemente proporcional al inverso de la longitud del intervalo,
     169luego su logaritmo salvo una constante será
     170
     171[[LatexEquation( \ln Q\left(x,y\right) = -\ln\left(h^{+}-h^{-}\right)  )]]
     172
     173Aunque no se explicita está claro que la longitud del intervalo depende del punto de origen por
     174lo que el generador no es simétrico.
     175
     176==== Función generatriz ====
     177Los pasos para muestrear un candidato serían los siguientes
    149178 1. Si los puntos [[LatexEquation( x - s u)]] y [[LatexEquation( x + s u)]] son ambos factibles
    150179    entonces se toma [[LatexEquation( h^{-} = -s)]] y [[LatexEquation( h^{+} = +s )]]