My Project
Public Member Functions | Protected Member Functions | List of all members
Innovator Class Reference

Public Member Functions

 Innovator (Model model, int id, double s, int x, int y, int c)
 
void experientialExploration (KnowledgeField kf, double p, boolean anyLowIntermediateCD)
 
void experientialExploitation (KnowledgeField kf, double currentExpertise, double p, boolean anyLowIntermediateCD)
 
void vicariousExploration (KnowledgeField kf2, double wd2, boolean anyIntermediateCD)
 
void vicariousExploitation (KnowledgeField kf1, KnowledgeField kf2, double d1, double d2, double cd)
 
void exitField (KnowledgeField kf)
 
void exitFieldInAnyCase (KnowledgeField kf)
 
int getExperientialExploration ()
 
int getExperientialExploitation ()
 
int getVicariousExploration ()
 
int getVicariousExploitation ()
 
int getExitField ()
 
java.awt.Color getColor ()
 
- Public Member Functions inherited from Firm
 Firm (Model m, int id, double s, int x, int y, int c)
 
void initializeKnowledge (Random RandomNumbersGenerator)
 
void updatePerformanceThreshold (double avep)
 
void performAction ()
 
void checkAlive ()
 
boolean isDead ()
 
void identifyRivals ()
 
void updateKnowledge ()
 
abstract void experientialExploration (KnowledgeField kf1, double p, boolean anyLowIntermediateCD)
 
abstract void experientialExploitation (KnowledgeField kf1, double currentExpertise, double p, boolean anyLowIntermediateCD)
 
abstract void vicariousExploration (KnowledgeField kf2, double wd2, boolean anyIntermediateCD)
 
abstract void vicariousExploitation (KnowledgeField kf1, KnowledgeField kf2, double d1, double d2, double cd)
 
abstract void exitField (KnowledgeField kf)
 
abstract int getExperientialExploration ()
 
abstract int getExperientialExploitation ()
 
abstract int getVicariousExploration ()
 
abstract int getVicariousExploitation ()
 
abstract int getExitField ()
 
abstract java.awt.Color getColor ()
 
int getIdentity ()
 
int getYourCluster ()
 
int getNumRivals ()
 
int getNumRivalsInsideCluster ()
 
double getCognitiveDistance ()
 
int getNumFields ()
 
double getLowestExpertise ()
 
double getAverageExpertise ()
 
double getHighestExpertise ()
 
double getPerformance ()
 
double getSize ()
 
int getX ()
 
int getY ()
 
double getDistanceCoefficient (int x, int y)
 
KnowledgeBase getKnowledgeBase ()
 

Protected Member Functions

KnowledgeField createNewField (KnowledgeField src)
 

Additional Inherited Members

- Public Attributes inherited from Firm
ArrayList< FirminspirationFirms = new ArrayList<Firm>()
 
double numRivalsInsideCluster
 
double numRivals
 The total number of rivals.
 
- Protected Attributes inherited from Firm
Model model
 The model that creates the agents.
 
CommonKnowledge commonKnowledge
 
boolean rivalsChanged
 Whether the set of rivals changed.
 
double similarityThreshold
 
double maxCognitiveEffort
 
ArrayList< FirmfirmList
 
double valuesSI []
 
ArrayList< FirmrivalsList = new ArrayList<Firm>()
 My rivals.
 
int identity
 A firm's identity.
 
double size
 A firm's size, the integral of performance.
 
double sizeAttained
 
int xPos
 
int cluster
 The firm is a member of this cluster.
 
double avePerformance
 
double lowPerformance
 
double minCriticalPerformance
 
boolean dead = false
 Dead firms will be eliminated.
 
KnowledgeBase myKnowledge
 A firm's knowledge base.
 
KnowledgeBase rivalKnowledge
 
double aveCognitiveDistance
 
double minCriticalCognitiveDistance
 
double maxCriticalCognitiveDistance
 
int maxNumFields
 The maximum number of fields.
 
double maxExpertise
 
double decayRate
 The rate of decay of capital and knowledge.
 
int expExploration
 
int vicExploration
 
int expExploitation
 
int vicExploitation
 
int exit
 
int numFields
 The number of knowledge fields of a firm.
 
double lowestExpertise
 
double averageExpertise
 
double highestExpertise
 

Detailed Description

The innovating firms. Innovator is a child of Firm. Innovators are able to make both vicarious and experiential exploration, as well as both vicarious and experiential exploitation. Action is taken in two steps. First, rivals are identified. Secondly, knowledge is changed.

Author
Sirio Capizzi
Guido Fioretti
Ruggero Rossi

Constructor & Destructor Documentation

Innovator.Innovator ( Model  model,
int  id,
double  s,
int  x,
int  y,
int  c 
)
inline
Parameters
model
id
s
x
y
c

Member Function Documentation

KnowledgeField Innovator.createNewField ( KnowledgeField  src)
inlineprotected

This method is needed by experientialExploration. It is the only place where new instances of a business element are created, beyond initialization.

Parameters
src
Returns
void Innovator.exitField ( KnowledgeField  kf)
inline

Exit a knowledge field if either its depth is zero, or it only entails undefined business elements.

void Innovator.exitFieldInAnyCase ( KnowledgeField  kf)
inline

Exit a knowledge field in any case (called by experiential and vicarious exploration)

Parameters
kf
void Innovator.experientialExploitation ( KnowledgeField  kf,
double  currentExpertise,
double  p,
boolean  anyLowIntermediateCD 
)
inline

Experiential Exploitation (the expertise of one's own knowledge field increases independently of rivals' knowledge).

void Innovator.experientialExploration ( KnowledgeField  kf,
double  p,
boolean  anyLowIntermediateCD 
)
inline

The following methods are called by updateKnowledge in Firm. They implement the actions carried out by innovating firms:

  • experientialExploration, which makes use of:
    • createNewField;
    • exitFieldInAnyCase;
  • vicariousExploration, which makes use of:
    • exitFieldInAnyCase;
  • experientialExploitation;
  • vicariousExploitation;
  • exitField. Experiential Exploration (creation of a novel knowledge field).
java.awt.Color Innovator.getColor ( )
inline

This method communicates the color of a firm: Innovators are black, Imitators are gray. This method is used in order to draw firms on networks.

int Innovator.getExperientialExploration ( )
inline

These methods return an Innovator's actions.

void Innovator.vicariousExploitation ( KnowledgeField  kf1,
KnowledgeField  kf2,
double  d1,
double  d2,
double  cd 
)
inline

Vicarious Exploitation (if the rivals have more expertise knowledge on a particular field, and if this knowledge intersects with a field of this agent, this knowledge is copied).

void Innovator.vicariousExploration ( KnowledgeField  kf2,
double  wd2,
boolean  anyIntermediateCD 
)
inline

Vicarious Exploration (a knowledge field is copied from rivals, that is new for the agent).


The documentation for this class was generated from the following file: