Barabasi Albert Graph (for Scale Free Models) in C/C++?

CC++Server Side ProgrammingProgramming

The Barabási-Albert model is treated as one of several proposed models that produce scale-free networks. It combines two important general concepts: growth and preferential attachment. Both concepts i.e. growth and preferential attachment have wide existence in real networks. The meaning of growth is that the number of nodes in the network increases over time.

The meaning of preferential attachment is that the more connected a node is, the more chance it is to receive new links.

Higher degree nodes have stronger ability to catch or grab links added to the network. Basically, the preferential attachment can be well understood if we think with respect of social networks connecting people. In this case, a link from X to Y means that person X "knows" or "is acquainted with" person Y. Heavily linked nodes can be able to represent well-known people with lots of relations. When a newcomer is able to enter the community, s/he is more generally to become acquainted with one of those more visible people instead of with a relative unknown. The proposal of BA model was with assumption that in the World Wide Web, new pages link preferentially to hubs, i.e. very well-known sites such as Yahoo, Google, instead of to pages that hardly anyone knows. If someone chooses a new page to link to by selecting an existing link in random manner, the chance or probability of choosing a particular page would be proportional to its degree.

Below image will depict the BA Model graph with 50 nodes following the preferential attachment model.

The above graph completely is able to satisfy the logic of the rich getting richer and the poor getting poorer.

Updated on 29-Jan-2020 11:00:00