asm
Class BFCast

asm.BFCast

public class BFCast

Title: BFCast

Description: El BFCast es la clase que sostiene todos los componetes de predicción. Esto significa que tiene un BitVector (llamada "conditions" en el código, que conserva los bits monitarizados del mundo) además de otros coeficientes que son usados para hacer las predicciones. También tiene variables de instancia que registran cuando fue usada la regla por última vez, cuantas veces ha sido usada, como ha sido de precisa....

Copyright:

Depto.Organización Industrial. Universidad de Valladolid

Version:
1.0
Author:
José Manuel Galán & Luis R. Izquierdo

Field Summary
(package private)  double a
          Coeficiente de (price + dividend)
(package private)  double b
          coeficiente del dividendo
(package private)  double bitcost
          coste que asignamos a los bits en los forecasts
(package private)  double c
          término constante
(package private)  int condbits
          número de bits de información monitorizadas por el forecast
(package private)  BitVector conditions
          Un objeto BitVector que mantiene las condiciones que ha de tener el mundo para que el forecast se active
(package private)  int condwords
          nº de palabras de memoria que se necesitan para mantener las condiciones
(package private)  int count
          nº de veces en el que el forecast ha estado activo
(package private)  double forecast
          La predicción que devuelve el agente
(package private)  int lastactive
          El último periodo de tiempo en el que el forecast estuvo activo
(package private)  double lforecast
          La predicción anterior
(package private)  int nnulls
          nº de bits sin usar que hay en el vector
(package private)  double specfactor
          especificidad=(condbits - nnulls - specificity)* bitcost.
(package private)  int specificity
          especificidad
(package private)  double strength
          strength=maxdev - variance +specfactor
(package private)  double variance
          La varianza del forecast
 
Constructor Summary
(package private) BFCast(swarm.defobj.Zone aZone)
          BFCast es la clase que sostiene todos los componetes de predicción.
 
Method Summary
 java.lang.Object copyEverythingFrom(BFCast from)
          Dado un forecast de entrada from , cambia todas las variables de BFCast por las de from
 java.lang.Object createEnd()
           
 void decrSpecificity()
          Reduce la specificity del forecast en una unidad
 void drop()
          Liberador de memoria dinámica
 double getAval()
          Devuelve el coeficiente a de la ecuación de la demanda
 double getBval()
          Devuelve el coeficiente b de la ecuación de la demanda
 int getCnt()
          Devuelve el valor de count
 int[] getConditions()
          Devuelve el primer elemento de un array en el que figuran las conditions
 int getConditionsbit(int bit)
          Devuelve 0,1, o 2 para un bit dado de la lista de condiciones
 BitVector getConditionsObject()
          Devuelve un objeto de tipo BitVector donde se representan las conditions que actualmente estan siendo usadas
 int getConditionsWord(int x)
          Devuelve la representación de la x palabra de conditions
 double getCval()
          Devuelve el coeficiente c de la ecuación de la demanda
 double getForecast()
          Devuelve el valor de forecast
 int getLastactive()
          Devuelve el valor de lastactive
 double getLforecast()
          Devuelve el forecast del periodo anterior
 double getSpecfactor()
          Devuelve el valor de specfactor
 int getSpecificity()
          Devuelve el valor de specificity
 double getStrength()
          Devuelve la fuerza (strength) de este forecast
 double getVariance()
          Devuelve el valor de variance
 int incrCount()
          Aumenta count (contador) en una unidad
 void incrSpecificity()
          Aumenta la specificity del forecast en una unidad
static void init()
          El método init es necesario porque BitVector necesita saber cuantos bits va a necesitar tener
 void maskConditionsbit(int bit)
           
 java.lang.Object printcond(int word)
          Actualmente este método no hace nada
 void setAval(double x)
          Configura el coeficiente a de la ecuación de la demanda
 void setBitcost(double x)
          Pone la variable bitcost al valor x
 void setBval(double x)
          Configura el coeficiente b de la ecuación de la demanda
 void setCnt(int x)
          Cambia el valor del contador (count) a un valor dado (x)
 void setCondbits(int x)
          Establece el nº de bits.
 void setConditions(int[] x)
          En lugar de establecer los bits uno a uno, los configuramos de una vez.
 void setConditionsbit$FromZeroTo(int bit, int x)
          Cambia el valor de un bit que vale 0 ("no importa") a 1 o 2 (0/1)
 void setConditionsbit$To(int bit, int x)
          Establece el valor de un bit en conditions
 void setConditionsWord$To(int i, int value)
          Método para acceder a una palabra de conditions
 void setCondwords(int x)
          Establece el nº de palabras con condiciones que van a ser usadas
 void setCval(double x)
          Configura el coeficiente c de la ecuación de la demanda
 void setForecast(double x)
          Pone el valor de forecast con el valor x
 void setLastactive(int x)
          Cambia el valor de lastactive a x
 void setLforecast(double x)
          Cambia el valor de la previsión anterior(lforecast) a un valor dado (x)
 void setNNulls(int x)
          Apareceran Null bits si el bitvector es mayor que el nº de bits del mundo que estan siendo observadas
 void setSpecfactor(double x)
          Cambia el valor de specfactor a x
 void setSpecificity(int x)
          Cambia el valor de specificity a x
 void setStrength(double x)
          Cambia el valor de la fuerza (strength) a un valor dado (x)
 void setVariance(double x)
          Cambia el valor de variance a x
 void switchConditionsbit(int bit)
          Cambia YES a NO y viceversa
 double updateForecastPrice$Dividend(double price, double dividend)
          Calcula el nuevo forecast basandose en la información del precio y el dividendo
 void updateSpecfactor()
          Actualiza el factor de especifidad de este forecast.
 

Field Detail

forecast

double forecast
La predicción que devuelve el agente

lforecast

double lforecast
La predicción anterior

variance

double variance
La varianza del forecast

strength

double strength
strength=maxdev - variance +specfactor

a

double a
Coeficiente de (price + dividend)

b

double b
coeficiente del dividendo

c

double c
término constante

specfactor

double specfactor
especificidad=(condbits - nnulls - specificity)* bitcost.

bitcost

double bitcost
coste que asignamos a los bits en los forecasts

conditions

BitVector conditions
Un objeto BitVector que mantiene las condiciones que ha de tener el mundo para que el forecast se active

lastactive

int lastactive
El último periodo de tiempo en el que el forecast estuvo activo

specificity

int specificity
especificidad

count

int count
nº de veces en el que el forecast ha estado activo

condwords

int condwords
nº de palabras de memoria que se necesitan para mantener las condiciones

condbits

int condbits
número de bits de información monitorizadas por el forecast

nnulls

int nnulls
nº de bits sin usar que hay en el vector
Constructor Detail

BFCast

BFCast(swarm.defobj.Zone aZone)
BFCast es la clase que sostiene todos los componetes de predicción. Esto significa que tiene un BitVector (llamada "conditions" en el código, que conserva los bits monitarizados del mundo) además de otros coeficientes que son usados para hacer las predicciones. También tiene variables de instancia que registran cuando fue usada la regla por última vez, cuantas veces ha sido usada, como ha sido de precisa....
Parameters:
aZone -  
Method Detail

createEnd

public java.lang.Object createEnd()
Returns:
this

init

public static void init()
El método init es necesario porque BitVector necesita saber cuantos bits va a necesitar tener

drop

public void drop()
Liberador de memoria dinámica

setCondwords

public void setCondwords(int x)
Establece el nº de palabras con condiciones que van a ser usadas
Parameters:
x -  

setCondbits

public void setCondbits(int x)
Establece el nº de bits. Es el nº de aspectos del mundo que van a ser observados
Parameters:
x -  

setNNulls

public void setNNulls(int x)
Apareceran Null bits si el bitvector es mayor que el nº de bits del mundo que estan siendo observadas
Parameters:
x -  

setBitcost

public void setBitcost(double x)
Pone la variable bitcost al valor x
Parameters:
x -  

setConditions

public void setConditions(int[] x)
En lugar de establecer los bits uno a uno, los configuramos de una vez. Esto lo hacemos mediante el paso de un array con el tamaño adecuado.
Parameters:
x -  

getConditions

public int[] getConditions()
Devuelve el primer elemento de un array en el que figuran las conditions
Returns:
conditions.getConditions()

getConditionsObject

public BitVector getConditionsObject()
Devuelve un objeto de tipo BitVector donde se representan las conditions que actualmente estan siendo usadas
Returns:
conditions

setConditionsWord$To

public void setConditionsWord$To(int i,
                                 int value)
Método para acceder a una palabra de conditions
Parameters:
i -  
value -  

getConditionsWord

public int getConditionsWord(int x)
Devuelve la representación de la x palabra de conditions
Parameters:
x -  
Returns:
conditions.getConditionsWord( x)

setConditionsbit$To

public void setConditionsbit$To(int bit,
                                int x)
Establece el valor de un bit en conditions
Parameters:
bit -  
x -  

setConditionsbit$FromZeroTo

public void setConditionsbit$FromZeroTo(int bit,
                                        int x)
Cambia el valor de un bit que vale 0 ("no importa") a 1 o 2 (0/1)
Parameters:
bit -  
x -  

getConditionsbit

public int getConditionsbit(int bit)
Devuelve 0,1, o 2 para un bit dado de la lista de condiciones
Parameters:
bit -  
Returns:
conditions.getConditionsbit( bit)

maskConditionsbit

public void maskConditionsbit(int bit)
Parameters:
bit -  

switchConditionsbit

public void switchConditionsbit(int bit)
Cambia YES a NO y viceversa
Parameters:
bit -  

setAval

public void setAval(double x)
Configura el coeficiente a de la ecuación de la demanda
Parameters:
x -  

setBval

public void setBval(double x)
Configura el coeficiente b de la ecuación de la demanda
Parameters:
x -  

setCval

public void setCval(double x)
Configura el coeficiente c de la ecuación de la demanda
Parameters:
x -  

getAval

public double getAval()
Devuelve el coeficiente a de la ecuación de la demanda
Returns:
a

getBval

public double getBval()
Devuelve el coeficiente b de la ecuación de la demanda
Returns:
b

getCval

public double getCval()
Devuelve el coeficiente c de la ecuación de la demanda
Returns:
c

updateSpecfactor

public void updateSpecfactor()
Actualiza el factor de especifidad de este forecast. Esto significa calcular: specfactor= (condbits - nnulls - specificity)* bitcost

setSpecfactor

public void setSpecfactor(double x)
Cambia el valor de specfactor a x
Parameters:
x -  

getSpecfactor

public double getSpecfactor()
Devuelve el valor de specfactor
Returns:
specfactor

incrSpecificity

public void incrSpecificity()
Aumenta la specificity del forecast en una unidad

decrSpecificity

public void decrSpecificity()
Reduce la specificity del forecast en una unidad

setSpecificity

public void setSpecificity(int x)
Cambia el valor de specificity a x
Parameters:
x -  

getSpecificity

public int getSpecificity()
Devuelve el valor de specificity
Returns:
specificity

setVariance

public void setVariance(double x)
Cambia el valor de variance a x
Parameters:
x -  

getVariance

public double getVariance()
Devuelve el valor de variance
Returns:
variance

setLastactive

public void setLastactive(int x)
Cambia el valor de lastactive a x
Parameters:
x -  

getLastactive

public int getLastactive()
Devuelve el valor de lastactive
Returns:
lastactive

getCnt

public int getCnt()
Devuelve el valor de count
Returns:
count

setCnt

public void setCnt(int x)
Cambia el valor del contador (count) a un valor dado (x)
Parameters:
x -  

incrCount

public int incrCount()
Aumenta count (contador) en una unidad
Returns:
count

getStrength

public double getStrength()
Devuelve la fuerza (strength) de este forecast
Returns:
strength

setStrength

public void setStrength(double x)
Cambia el valor de la fuerza (strength) a un valor dado (x)
Parameters:
x -  

setLforecast

public void setLforecast(double x)
Cambia el valor de la previsión anterior(lforecast) a un valor dado (x)
Parameters:
x -  

getLforecast

public double getLforecast()
Devuelve el forecast del periodo anterior
Returns:
lforecast

setForecast

public void setForecast(double x)
Pone el valor de forecast con el valor x
Parameters:
x -  

getForecast

public double getForecast()
Devuelve el valor de forecast
Returns:
forecast

updateForecastPrice$Dividend

public double updateForecastPrice$Dividend(double price,
                                           double dividend)
Calcula el nuevo forecast basandose en la información del precio y el dividendo
Parameters:
price -  
dividend -  
Returns:
forecast

copyEverythingFrom

public java.lang.Object copyEverythingFrom(BFCast from)
Dado un forecast de entrada from , cambia todas las variables de BFCast por las de from
Parameters:
from -  
Returns:
this

printcond

public java.lang.Object printcond(int word)
Actualmente este método no hace nada
Parameters:
word -  
Returns:
this