|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object de.cesr.more.building.network.MNetworkService<AgentType,EdgeType> de.cesr.more.rs.building.MRsNetworkService<AgentType,EdgeType> de.cesr.more.rs.building.MGeoRsNetworkService<AgentType,EdgeType> de.cesr.more.rs.building.MGeoRsHomophilyDistanceFfNetworkService<AgentType,EdgeType>
public class MGeoRsHomophilyDistanceFfNetworkService<AgentType extends MoreMilieuAgent & MoreNetworkAgent<AgentType,EdgeType>,EdgeType extends MRepastEdge<AgentType> & MoreEdge<AgentType>>
MORe TODO test and make component of RS version (?) This network builder considers baseline homophily [1] and distance distributions [2]. The network is build as follows:
MGeoHexagon
s, and add them to the geography and the root context.MMilieuPartnerFinder
MNetBuildHdffPa.AGENT_SHUFFLE_INTERVAL
.Property | Value |
---|---|
#Vertices | N (via collection of agents) |
#Edges: | undefined |
PmParameterDefinition
s:
MNetBuildHdffPa.HEXAGON_SHAPEFILE
MNetworkBuildingPa.BUILD_DIRECTED
MNetBuildHdffPa.K_DISTRIBUTION_CLASS
(via MNetworkBuildingPa.MILIEU_NETWORK_PARAMS
)MNetBuildHdffPa.K_PARAM_A
(via MNetworkBuildingPa.MILIEU_NETWORK_PARAMS
)MNetBuildHdffPa.K_PARAM_B
(via MNetworkBuildingPa.MILIEU_NETWORK_PARAMS
)MNetBuildHdffPa#DISTANCE_PROBABILITY_EXPONENT
(via MNetworkBuildingPa.MILIEU_NETWORK_PARAMS
)MNetBuildHdffPa.MAX_SEARCH_RADIUS
(via MNetworkBuildingPa.MILIEU_NETWORK_PARAMS
)MNetBuildHdffPa.P_MILIEUS
(via MNetworkBuildingPa.MILIEU_NETWORK_PARAMS
)MNetBuildHdffPa.PROB_FORWARD
(via MNetworkBuildingPa.MILIEU_NETWORK_PARAMS
)MNetBuildHdffPa.PROB_BACKWARD
(via MNetworkBuildingPa.MILIEU_NETWORK_PARAMS
)MNetBuildHdffPa.DIM_WEIGHTS_GEO
(via MNetworkBuildingPa.MILIEU_NETWORK_PARAMS
)MNetBuildHdffPa.DIM_WEIGHTS_MILIEU
(via MNetworkBuildingPa.MILIEU_NETWORK_PARAMS
)MNetBuildHdffPa.AGENT_SHUFFLE_INTERVAL
(specifies the number of turns - selection of new ambassador for
each agent - after which agents are shuffled)
Field Summary | |
---|---|
protected double |
areaDiameter
|
protected boolean |
considerBackwardLinks
|
protected boolean |
considerDistance
|
protected boolean |
considerForwardLinks
|
protected boolean |
considerMilieus
|
protected Map<Integer,MIntegerDistribution> |
degreeDistributions
|
static int |
DISTANCE_FACTOR_FOR_DISTRIBUTION
|
protected Map<Integer,MRealDistribution> |
distanceDistributions
|
protected double |
distanceStep
|
protected String |
name
|
protected MMilieuNetworkParameterMap |
paraMap
|
protected MMilieuPartnerFinder<AgentType,EdgeType> |
partnerFinder
|
protected cern.jet.random.Uniform |
rand
|
protected MRuntimeDbWriter |
runtimeWriter
|
static double |
TOLERANCE_VALUE_DIM_WEIGHTS
|
Fields inherited from class de.cesr.more.rs.building.MGeoRsNetworkService |
---|
geoFactory, geography, geoRequestClass, pm |
Fields inherited from class de.cesr.more.rs.building.MRsNetworkService |
---|
context |
Fields inherited from class de.cesr.more.building.network.MNetworkService |
---|
edgeFac, edgeModifier |
Constructor Summary | |
---|---|
MGeoRsHomophilyDistanceFfNetworkService(repast.simphony.space.gis.Geography<Object> geography,
MoreEdgeFactory<AgentType,EdgeType> edgeFac,
String name)
Uses main instance of PmParameterManager . |
|
MGeoRsHomophilyDistanceFfNetworkService(repast.simphony.space.gis.Geography<Object> geography,
MoreEdgeFactory<AgentType,EdgeType> edgeFac,
String name,
de.cesr.parma.core.PmParameterManager pm)
- builder constructor - edge modifier - builder set - parma |
|
MGeoRsHomophilyDistanceFfNetworkService(MoreEdgeFactory<AgentType,EdgeType> edgeFac,
String name)
Takes the geography from MBasicPa.ROOT_GEOGRAPHY . |
Method Summary | |
---|---|
boolean |
addAndLinkNode(MoreNetwork<AgentType,EdgeType> network,
AgentType node)
Removes an agent from the given network and deletes all its links. |
protected void |
adjustProbabilityWeights()
TODO test |
protected void |
assignMilieuParamMap()
|
MoreRsNetwork<AgentType,EdgeType> |
buildNetwork(Collection<AgentType> agents)
The returned network is always directed! |
protected void |
checkParameter()
Checks... |
protected ArrayList<AgentType> |
createRandomAgentList(Collection<AgentType> agents,
Map<AgentType,Integer> degreeTargets)
|
protected void |
explorePartner(AgentType agent,
LinkedList<AgentType> toExplore,
MoreNetwork<AgentType,EdgeType> network,
Map<AgentType,Integer> degreeTargets)
Assumes that the distance distribution's density is highest at supported lower bound (p_local / x_min). |
protected double |
getAreaDiameter()
Calculates the area diameter from hexagon shapefiles. |
protected double |
getDistance(int milieu)
|
protected double |
getDistanceProb(AgentType ego,
AgentType partner)
|
protected Map<AgentType,Integer> |
initDegreeTargets(Collection<AgentType> agents)
|
protected void |
initHexagons()
Init hexagons from shapefile into geography. |
void |
initRuntimeDbWriter(MoreRunIdProvider provider)
Initialises the MRuntimeDbWriter . |
protected void |
linkPartner(AgentType agent,
AgentType partner,
MoreNetwork<AgentType,EdgeType> network,
Map<AgentType,Integer> degreeTargets)
|
String |
toString()
|
Methods inherited from class de.cesr.more.rs.building.MGeoRsNetworkService |
---|
getGeoRequestClass, logEdges, setContext, setGeography, setGeoRequestClass, shuffleCollection |
Methods inherited from class de.cesr.more.building.network.MNetworkService |
---|
addAgents, checkAgentCollection, createEdge, getEdgeFactory, getEdgeModifier, logEdges, removeEdge, removeNode, setEdgeModifier |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface de.cesr.more.manipulate.network.MoreNetworkModifier |
---|
removeNode, setEdgeModifier |
Methods inherited from interface de.cesr.more.manipulate.edge.MoreNetworkEdgeModifier |
---|
createEdge, getEdgeFactory, removeEdge |
Field Detail |
---|
public static final int DISTANCE_FACTOR_FOR_DISTRIBUTION
public static final double TOLERANCE_VALUE_DIM_WEIGHTS
protected String name
protected MMilieuNetworkParameterMap paraMap
protected MMilieuPartnerFinder<AgentType extends MoreMilieuAgent & MoreNetworkAgent<AgentType,EdgeType>,EdgeType extends MRepastEdge<AgentType> & MoreEdge<AgentType>> partnerFinder
protected cern.jet.random.Uniform rand
protected Map<Integer,MIntegerDistribution> degreeDistributions
protected Map<Integer,MRealDistribution> distanceDistributions
protected double distanceStep
protected double areaDiameter
protected MRuntimeDbWriter runtimeWriter
protected boolean considerBackwardLinks
protected boolean considerForwardLinks
protected boolean considerMilieus
protected boolean considerDistance
Constructor Detail |
---|
public MGeoRsHomophilyDistanceFfNetworkService(MoreEdgeFactory<AgentType,EdgeType> edgeFac, String name)
MBasicPa.ROOT_GEOGRAPHY
.
edgeFac
- name
- public MGeoRsHomophilyDistanceFfNetworkService(repast.simphony.space.gis.Geography<Object> geography, MoreEdgeFactory<AgentType,EdgeType> edgeFac, String name)
PmParameterManager
.
areasGeography
- public MGeoRsHomophilyDistanceFfNetworkService(repast.simphony.space.gis.Geography<Object> geography, MoreEdgeFactory<AgentType,EdgeType> edgeFac, String name, de.cesr.parma.core.PmParameterManager pm)
areasGeography
- Method Detail |
---|
public void initRuntimeDbWriter(MoreRunIdProvider provider)
MRuntimeDbWriter
. Runtimes are only recorded when this method was called before this#buildNetwork(Collection)
.
initRuntimeDbWriter
in interface MoreRuntimeAnalysable
provider
- public MoreRsNetwork<AgentType,EdgeType> buildNetwork(Collection<AgentType> agents)
buildNetwork
in interface MoreNetworkBuilder<AgentType extends MoreMilieuAgent & MoreNetworkAgent<AgentType,EdgeType>,EdgeType extends MRepastEdge<AgentType> & MoreEdge<AgentType>>
buildNetwork
in interface MoreRsNetworkBuilder<AgentType extends MoreMilieuAgent & MoreNetworkAgent<AgentType,EdgeType>,EdgeType extends MRepastEdge<AgentType> & MoreEdge<AgentType>>
MoreRsNetworkBuilder.buildNetwork(java.util.Collection)
protected double getDistance(int milieu)
http://mathworld.wolfram.com/RandomNumber.html
protected double getAreaDiameter()
protected Map<AgentType,Integer> initDegreeTargets(Collection<AgentType> agents)
agents
-
protected void explorePartner(AgentType agent, LinkedList<AgentType> toExplore, MoreNetwork<AgentType,EdgeType> network, Map<AgentType,Integer> degreeTargets)
agent
- agent/ambassadorpartner
- network
- orderedAgents
- degreeTargets
- protected void linkPartner(AgentType agent, AgentType partner, MoreNetwork<AgentType,EdgeType> network, Map<AgentType,Integer> degreeTargets)
agent
- partner
- network
- orderedAgents
- degreeTargets
- protected double getDistanceProb(AgentType ego, AgentType partner)
ego
- partner
-
protected void adjustProbabilityWeights()
protected void checkParameter()
protected void assignMilieuParamMap()
protected ArrayList<AgentType> createRandomAgentList(Collection<AgentType> agents, Map<AgentType,Integer> degreeTargets)
agents
- public boolean addAndLinkNode(MoreNetwork<AgentType,EdgeType> network, AgentType node)
MoreNetworkModifier
#addAgent(Object, MoreRsNetwork)
performed.
addAndLinkNode
in interface MoreNetworkModifier<AgentType extends MoreMilieuAgent & MoreNetworkAgent<AgentType,EdgeType>,EdgeType extends MRepastEdge<AgentType> & MoreEdge<AgentType>>
network
- the network to remove the given agent from
MoreNetworkModifier.addAndLinkNode(de.cesr.more.basic.network.MoreNetwork,
java.lang.Object)
protected void initHexagons()
public String toString()
toString
in class Object
Object.toString()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |