de.cesr.more.rs.building
Class MGeoRsHomophilyDistanceNetworkService<AgentType extends MoreMilieuAgent,EdgeType extends MRepastEdge<AgentType> & MoreEdge<AgentType>>
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.MGeoRsBaselineRadiusNetworkService<AgentType,EdgeType>
de.cesr.more.rs.building.MGeoRsHomophilyDistanceNetworkService<AgentType,EdgeType>
- Type Parameters:
AgentType
- The type of nodesEdgeType
- The type of edges
- All Implemented Interfaces:
- MoreNetworkBuilder<AgentType,EdgeType>, MoreNetworkService<AgentType,EdgeType>, MoreGeoNetworkBuilder<AgentType,EdgeType>, MoreGeoNetworkService<AgentType,EdgeType>, MoreNetworkEdgeModifier<AgentType,EdgeType>, MoreNetworkModifier<AgentType,EdgeType>, MoreGeoRsNetworkBuilder<AgentType,EdgeType>, MoreGeoRsNetworkService<AgentType,EdgeType>, MoreRsNetworkBuilder<AgentType,EdgeType>, MoreRsNetworkService<AgentType,EdgeType>
- Direct Known Subclasses:
- MGeoRsIdealHomophilyDistanceNetworkService
public class MGeoRsHomophilyDistanceNetworkService<AgentType extends MoreMilieuAgent,EdgeType extends MRepastEdge<AgentType> & MoreEdge<AgentType>>
- extends MGeoRsBaselineRadiusNetworkService<AgentType,EdgeType>
The homophily and distance dependence (HDD) considering network generation consists of two interlinked parts, the
establishment of local to medium distance links and the process of global tie generation. The distance dependence is
accomplished by defining probabilities for concentric rings around each agent using a ring’s mean radius. This
network builder considers baseline homophily [1]. Agents are linked as follows:
- For every agent
i
in the context
- Calculate a distance probability compensation factor c_d to normalise probabilities across rings
- For each ring r
- Request agents in current ring
- Shuffle agents
- For each requested agent
j
- Check:
i
not yet connected with j
?
- Accept milieu of
j
with probability of i
preference towards milieu of j
- Accept
j
as partner with i
's p_distance
- Connect!
- Establish distant link with
p_distant
- Determine desired milieu of
i
- Select random agent from entire population
- Check: Not yet connected?
- Check: Matches desired milieu?
For details see [2].
Uses MGeographyWrapper.getSurroundingAgents(Object, double, Class)
to fetch agents (all agents within the
given radius of the given class).
Property | Value |
#Vertices | N (via collection of agents) |
| |
#Edges: | N*K (milieu-specific) |
Considered PmParameterDefinition
s:
NOTE: Since the power function is invariant against scale/unit we do not need to adapt the meters scale.
[1] McPherson, M.; Smith-Lovin, L. & Cook, J. Birds of a feather: Homophily in social networks Annual Review of
Sociology, Annual Reviews, 2001, 27, 415-444
[2] Holzhauer, S.; Krebs, F., Ernst, A. Considering baseline homophily when generating spatial social networks for
agent-based modelling. Comput Math Organ Theory, 2012, SI: SNAMAS
- Date:
- 01.08.2012
MGeoRsHomophilyDistanceNetworkService
public MGeoRsHomophilyDistanceNetworkService(MoreEdgeFactory<AgentType,EdgeType> edgeFac)
MGeoRsHomophilyDistanceNetworkService
public MGeoRsHomophilyDistanceNetworkService(MoreEdgeFactory<AgentType,EdgeType> edgeFac,
String name)
- Parameters:
edgeFac
- name
-
MGeoRsHomophilyDistanceNetworkService
public MGeoRsHomophilyDistanceNetworkService(repast.simphony.space.gis.Geography<Object> geography,
MoreEdgeFactory<AgentType,EdgeType> edgeFac,
String name)
- Parameters:
geography
- edgeFac
- name
-
connectAgent
protected int connectAgent(MMilieuNetworkParameterMap paraMap,
MoreNetwork<AgentType,EdgeType> network,
int numNotConnectedPartners,
MGeographyWrapper<Object> geoWrapper,
AgentType hh)
- TODO integerate
- Overrides:
connectAgent
in class MGeoRsBaselineRadiusNetworkService<AgentType extends MoreMilieuAgent,EdgeType extends MRepastEdge<AgentType> & MoreEdge<AgentType>>
- Parameters:
paraMap
- network
- numNotConnectedPartners
- geoWrapper
- hh
-
- Returns:
- the number of _not_ connected partners