Networks: Lectures 1 & 2Introduction and basic concepts
Heather A Harrington
Mathematical InstituteUniversity of Oxford
HT 2017
What you’re in for
• Week 1: Introduction and basic concepts
• Week 2: Small worlds
• Week 3: Toy models of network formation
• Week 4: Additional summary statistics and other concepts
• Week 5: Random graphs
• Week 6: Community structure and other mesocopicstructures
• Week 7: Dynamical systems on networks
• Week 8: Other topics TBD
Contents
1 What is a network?
2 Introduction to networks
3 Data and visualization
4 Networks and applications
5 Basic concepts
6 Degrees
7 Types of networks
Preliminaries
• 16 Lectures (M 10am L3, W 4pm L4), 6 classes (Th or F)
• Assessment by mini project given in week 8
• Email list
• My email: [email protected]
Reading:
• M.E.J Newman, Networks: An Introduction, OUP, 2010
• M.A. Porter, In progress book, A Terse Introduction toNetworks.
• various surveys, reviews and tutorial articles to bementioned at relevant times
Networks
A network (or graph) G = {V, E} is a mathematical object consisting
of a set of vertices (or nodes) V = {v1, v2, . . . , vn}, and a set of edges
E = {e1, e2, . . . , em} which define a relationship between two nodes
e.g., ek = (vi, vj).
1
2
34
5
6 Node
Edge
Pictorially, nodes can be representedwith circles, and edges by linesjoining them.
The labeling of the nodes isarbitrary, what matters is howthey are connected.
Network science is the science of connectivity.
Four principle goals ofnetworked systems
1 Discover and enumerate basic principles of networked systems
2 Use structure, dynamics and metadata to elucidate and discoverfunction
3 Predict network structure and metadata
4 Use mathematical, computational and statistical methods tomanipulate existing networks and design new networks withdesired properties.
We will almost exclusively focus on (1).
Graph theory or network theory?Origins
Graph theory has a long and illustrious history in mathematics,starting with Leonard Euler and the Konigsberg bridge problemin 1735.
Euler’s breakthrough was to consider abstract connectivity(independently of the origin of the problem) for the first time.
Graph theory or network theory?Same objects, different problems
Since Euler Graph theory has grown into a rich branch ofmathematics where many others meet, for example probability,combinatorics, linear algebra, to name a few.
Some examples of problems in graph theory include enumeration,colourings, and the study of symmetries.
Graph theory or network theory?Same objects, different problems
In modern network theory many of those problems are either
impractical or outright impossible.
In modern network theory many ofthose problems are either impracticalor outright impossible.
Real-world networks are large andcomplex.
Large, empirical networks require adifferent approach, and requiremethods from tools from statistics,physics, computer science, andmathematics.
Porter et al (2009).
Why study networks?
Many systems of interacting agents can be represented as anetwork.
Once a system is represented by a network we can, like Euler,focus on the connectivity.
For example, the internet has computers (nodes) and theirphysical connections (edges).
Networks software
In addition to the usual suspects (i.e., Matlab, C++ et al):
NetworkX: Python library for networks:http://networkx.github.io/
Gephi: GUI program for network manipulation, useful forvisualisations:
https://gephi.org/
Good resource for data and general network software:http://netwiki.amath.unc.edu
Visualization tools also available here:http://netwiki.amath.unc.edu/VisComms/VisComms
There are many more, of course, use the one you like best.
Why study networks?
Many systems of interacting agents can be represented as anetwork.
The brain can be seen as a network where neurons are nodes andtheir synapses are the edges.
The power of abstraction
Importantly, the same abstraction is used to represent theconnectivity of the Internet and the connectivity of the brain(and many, many others).
The same set of mathematical and computational techniques canbe used to study both systems.
Networks are everywhere!In the kitchen
Ingredient co-occurrence network for recipe recommendation:
cherry gelatin
graham cracker
low fat cottage cheese
pork shoulder roast
heavy whipping cream tofu
bok choy
butter cracker
baking soda
pimento pepper
milk powder
chorizo sausage
lady�nger
steak sauce
crimushroom
radishe
shiitake mushroom
pesto
brownie mix
pumpkin pie spice
rye �our
cardamom
sa�ron thread
linguine
corn
fat free sour cream
basmati rice
bittersweet chocolate
bay
corn chip
cracker
french green bean
poppy seed
vegetable oil
grape tomato
pizza crust dough
low sodium beef broth
club soda
lard
soy saucepanko bread
couscou
crab meat
mango
unpastry shell
catalina dressing
pasta shell
italian salad dressing
mexican corn
decorating gel
italian bread
napa cabbage
onion powder
white wine vinegar
cocktail rye bread
basil sauce
crouton
brown gravy mix
barbeque sauce
apple cider vinegar
hoagie roll
milk chocolate candy kisse
�ounder
salt black pepper
maraschino cherry juice
chow mein noodle
tiger prawn
banana pepper
cranberry
vermicelli pasta
root beer
strawberry jam
lemon gelatin mix
creamed corn
pretzel
pie shell
sun�ower kernel
rump roast
romaine
vegetable stock
lemon pepper seasoning
guacamole
louisiana hot sauce
cabbage
yellow onion
super�ne sugar
orange peel
raspberry
cumin seedcandied mixed fruit peel
cream of coconut
bow tie pasta
creme fraiche
currant
pork chop
turkey gravy
fat free half and half
chicken ramen noodle
wooden skewer
whipping cream
mace
seasoning salt
mozzarella cheesepasta sauce
lean pork
broccoli �oweret
tomatillo
lemonade
tomato paste
caesar dressing
basil pesto
melon liqueur
coconut milk
whole wheat pastry �our
muenster cheese
lump crab meat
angel food cake
ring
cheese tortellini
spiral pasta
vanilla pudding
cauli�oweret
smoked sausage
hot dog
pita bread
cocoa powder
garbanzo bean
tart apple
wheat bran
hot pepper sauce
chili
refried bean
salmon steak
white cheddar cheese
low fat mayonnaise
grapefruit
dijon mustard
tomato juice
yellow squash
baking apple
cream of tartar
vodka
rye bread
white chip
�at iron steak
linguine pasta
fennel
whole wheat bread
baking mix
alfredo pasta sauce
margarine
confectioners' sugarfruit gelatin mix
pork
balsamic vinegar
pork loin chop
jicama
pre pizza crust
triple sec
teriyaki sauce
cola carbonated beverage
polish sausage
cracked black pepper
poblano chile pepper
individually wrapped caramel
roast beef
bread stu�ng mix
eggnog
pear
caramel
beet
worcestershire sauce
chicken stock
horseradish
semisweet chocolate chip
basil
red grape
plum
cinnamon sugar
fajita seasoning
rice noodle
powdered milk
star anise pod
short grain rice
ramen noodle
vegetable
coconut oil
whiskey
lime gelatin mix
peanut oil
ham
ginger root
lima bean
pimento stu�ed green olive
hoisin sauce
round steak
stu�ng
part skim ricotta cheese
broiler fryer chicken up
milk chocolate chip
turbinado sugar
vegetable shortening
tarragon vinegar
golden delicious apple
turkey
rigatoni pasta
stu�ng mix
milk
juiced
burgundy wine
red kidney bean
dill
candied pineapple
german chocolate cake mix
arborio rice
sugar free vanilla pudding mix
pine nut
green apple
cucumber oreganopearl onion
stu�ed green olive
whipped topping mix
broccoli
pinto bean
pasta
beef short rib
gelatin
garlic powder
rutabaga
chicken liver
pepperjack cheese
herb
lemon gras
sweet potato
pineapple ring
parsley �ake
pie �lling
spice cake mix
butterscotch chip
greek yogurt
vanilla ice cream
seafood seasoning
parsnip
applesauce
chinese �ve spice powder
salt pepper
beef broth
cherry tomato
sage
vanilla
vital wheat gluten
artichoke heart
mixed berry
bacon dripping
self rising �our
nilla wafer
navy bean
bacon
egg yolk
wonton wrapper
chocolate pudding mix
salsa
coconut
tomato based chili sauce
marsala wine
mussel
manicotti shell
anise extract
mustard seed
nutmeg
cayenne pepper
black bean pepperokra
asparagu
mustard powder
�rmly brown sugar
balsamic vinaigrette dressing
chicken breastoyster
ditalini pasta
old bay seasoning tm
brown rice
process american cheese
chocolate
miso paste
pineapple
iceberg lettuce
pearl barley
oat
greek seasoning
biscuit
clove
browning sauce
chicken bouillon powder
green pea
bread dough
cream cheesepeanut butter chip
silken tofu
pineapple chip
sea scallop
ricotta cheese
papaya
red cabbage
egg substitute
zesty italian dressing
devil's food cake mix
bagel
sour mix
lamb
irish stout beer
sea salt
romaine lettuce
kalamata olive
salt
monosodium glutamate
rice wine
white potato
rum extract
grape jelly
crescent roll dough
beer
phyllo dough
fettuccine pasta
chili seasoning mix
biscuit mix
candy coated chocolate
green cabbage
ranch bean
cream of celery soup
apple pie �lling
caper
nectarine
white mushroom
banana
orange gelatin mix
1% buttermilk
apple jelly
dinner roll
sugar pumpkin
salad green
shrimp
cheese ravioli
chicken wing
sour cream
saltine
cornmeal
mixed vegetable
beef tenderloin
sherry
rotini pasta
mexican cheese blend
kosher salt black pepper
mayonnaise
lobster
white onion
chocolate cookie
white bread
french baguette
bread
vanilla frosting
anise seed
ranch dressing mix
wild rice
hot
canadian bacon
corn�akes cereal
wax bean
cantaloupe
non fat yogurt
lite whipped topping
spaghetti squash
egg roll wrapper
solid pack pumpkin
recipe pastry
asafoetida powder
co�ee powder
italian sauce
amaretto liqueur
shortening
turmeric
semolina �our
pomegranate juice
corned beef
skewer
shallotspanish onion
tapioca
provolone cheese
chile sauce
vanilla bean
chile pepperangel hair pasta
pumpkin
tilapia
brie cheese
cottage cheese
banana liqueur
lemon
smoked salmon
ginger paste
brown mustard
peanut butter
escarole
sour milk
olive oil
country pork rib
pastry shell
adobo seasoning
candy coated milk chocolate
curryghee
alfredo sauce
yellow cake mix
granny smith apple
beef chuck
chocolate hazelnut spread
maple syrup
squid
gingersnap cooky
raspberry gelatin
molasse
lemon cake mix
�sh stock
cook
grenadine syrup
pu� pastry
rum
grapefruit juice
tahini
black pepperbutternut squash
key lime juice
sirloin steak
macaroni
butter shortening
brown lentil
chicken broth
chili bean
pickling spice
yellow food coloring
great northern bean
mixed nut
green chile
salmon
english mu�n
co�ee liqueur
non fat milk powder
buttermilk
distilled white vinegar
golden syrup
powdered fruit pectin
green chily
grape
raspberry gelatin mix
low fat sour cream
topping
pineapple juice
red lettuce
orange zest
ketchup
chunk chicken
steak seasoning
sandwich roll
crystallized ginger
kosher salt
roma tomato
red bean
red candied cherry
sesame seed
beef stock
cashew
popped popcorn
apricot nectar
any fruit jam
processed cheese food
red pepper
coleslaw mix
white cake mix
cherry pie �lling
canola oil
whole wheat �our
honey
long grain
marinara sauce
yellow summer squash
to�ee baking bit
whole milk
trout
onion separated
low fat cream cheese
corn oil
oat bran
cream of potato soup
allspice berry
mandarin orange
cumin
saltine cracker
swiss chard
fenugreek seed
�sh sauce
eggplant
baby corn
cider vinegar
orange sherbet
debearded
beef bouillon
kernel corn
vanilla vodka
chicken leg quarter
mintfeta cheese
lime juice
raspberry jam
cooking oil
white corn
herb stu�ng mix
lemon lime soda
pork sausage
ziti pasta
orange marmalade
yogurt
bean
ginger garlic paste
crescent dinner roll
scallop
walnut oil
smoked ham
red food coloring
triple sec liqueur
fat free evaporated milk
walnutbaking chocolate
blueberry
caramel ice cream topping
bacon grease
fat free italian dressing
steak
�g
miracle whip ‚Ñ
potato starch
luncheon meat
brandy based orange liqueur
smoked paprika
pu� pastry shell
raspberry preserve
apple butter
tomato sauce
white rice
beef stew meat
taco seasoning mix
date
whipped topping
marshmallow
co�ee
butterscotch schnapp
red wine vinegar
orange
chicken thigh
mild italian sausage
blueberry pie �lling
yeast
lime peel
rice �our
chocolate cake mix
barbecue sauce
monterey jack cheese
halibut
beef round steak
seed
sour cherry
pork sparerib
orange roughy
barley nugget cereal
leek
maraschino cherry
chickpea
fettuccini pasta
orange juice
blue cheese dressing
yam
garam masala
black eyed pea
penne pasta
serrano chile pepper
�ourchive
marjoram
herb stu�ng
beef sirloin
beef
maple extract
bamboo shoot
lemon extract
meat tenderizer
kielbasa sausage
low sodium chicken broth
asparagus
cod
italian seasoning
lime gelatin
vegetable bouillon
andouille sausage
collard green
blackberry
beef gravy
green grape
tamari
fruit
malt vinegar
strawberry gelatin
lemon gelatin
green olive
poultry seasoning
prune
beef consomme
chili powder
dressing
fennel seed
gruyere cheese
jellied cranberry sauce
chipotle pepper
vanilla extract
apricot
linguini pasta
cranberry sauce
port wine
process cheese
cornish game hen
cilantro
green chile pepper
wheat
bread machine yeast
tube pasta
biscuit baking mix
cream corn
spinach
low fat whipped topping
irish cream liqueur
candy
zucchini
mild cheddar cheese
orange gelatin cornstarch
cheese
snow pea
low fat margarine
green candied cherry
vermouth
brandy
white grape juice
corn bread mix
broccoli �oret
vidalia onion
cocktail sauce
pickled jalapeno pepper
beaten egg
hamburger bun
black walnut
dill pickle juice
dill pickle relish
habanero pepper
white chocolate chip
veal
powdered non dairy creamer
lasagna noodle
gingerapricot jam
imitation crab meat
chicken soup base
white bean
tarragon
onion soup mix
thousand island dressing
red lentil
pancake mix
wheat germ
fat free mayonnaise
yukon gold potato
long grain rice
carrot
cauli�ower �oret
vegetable cooking spray
craw�sh tail
peppermint extract
brussels sprout
onion salt buttermilk biscuit
white kidney bean
mango chutney
black olive
meatless spaghetti sauce
curry powder
coriander
red snapper
biscuit dough
sausage
cheddar cheese soup
lettuce
pork loin roast
lemon pepper
red curry paste
egg noodle
hot sauce
raspberry vinegar
butter cooking spray
peach schnapp
eggspicy pork sausage
mixed fruit
cat�sh
venison
yellow pepper
carbonated water
pumpkin seed
new potato
lemon juice
chocolate pudding
watermelon
chicken breast half
gorgonzola cheese
buttery round cracker
apple pie spice
process cheese sauce
jasmine rice
lemon pudding mix
cooking sherry
strawberry preserve
french bread
toothpick
sauce
corn tortilla chip
garlic paste
salt free seasoning blend
elbow macaronipickle
cream of chicken soup
cardamom pod
persimmon pulp
chicken
liquid smoke
cocoa
pound cake
bell pepper
food coloring
coconut extract
chocolate chip
berry cranberry sauce
red bell pepper
seashell pasta
american cheese
oatmeal
sourdough bread
cornbread
mixed salad green
arugula
oil
parmesan cheeseclam juice
brick cream cheesecereal
italian parsley
milk chocolate
rice wine vinegar
hot dog bun
pistachio pudding mix
curd cottage cheese
garlic salt
chocolate cookie crust
orange extract
cream of mushroom soup
sa�ron
mushroom
tortilla chip
white hominy
green beans snapped
dill pickle
french onion soup
skim milk
tequila
�ax seed
low fat cheddar cheese
red wine
nut
apple cider
candied cherry
cheddar cheese
gingerroot
chocolate frosting
low fat yogurt
peppercorn
pepperoni
artichoke
baby pea
crisp rice cereal
potato chip
coconut cream
angel food cake mix
onion �ake
salad shrimp
taco seasoning
champagne
peach
low fat
yellow cornmeal
pork roast
baby spinach
portobello mushroom cap
blue cheese
strawberry gelatin mix
pink lemonade
chestnut
strawberry
oyster sauce
sugar snap pea
ka�r lime
anchovy
stu�ed olive
herb bread stu�ng mix
half and half
serrano pepper
coconut rum
red apple
cherry
�ank steak
round
peppermint candy
butter bean
almond
white vinegarcelery seed
corn syrupfat free cream cheese
cannellini bean
clam
mustard
scallion
potato �ake
parsley
fat free yogurt
pita bread round
red pepper �ake
onion
bourbon whiskey
creme de menthe liqueur
golden raisin
pancetta bacon
apple juice
egg white
fontina cheese
kale
asiago cheese
spiced rum
farfalle pasta
lobster tail
mirin
leg of lamb
tomato
zested
sauerkraut
unpie crust
bourbon
lean beef
tuna steak
wild rice mix
raisin
chocolate syrup
juice
cajun seasoning
cauli�owerwaterlemon yogurt
tapioca �our
vanilla yogurt
pimiento
hazelnut liqueur
thyme
part skim mozzarella cheese
mandarin orange segment
cinnamon
corn tortilla
crispy rice cereal
colby monterey jack cheese
apricot preserve
chipotle chile powder
swiss cheese
white wine
baking powdergraham cracker crust
vanilla wafer
lime
sugar based curing mixture
cream cheese spread
celeryolive
simple syrup
asian sesame oil
bacon bit
sharp cheddar cheese
rice vinegar
sea salt black pepper
curry paste
beef chuck roast
butter extract
pork loin
ginger ale
chicken leg
adobo sauce
lime zest
ham hock
watercres
pastry
seasoning
lentil
mascarpone cheese
baker's semisweet chocolate
acorn squash
chunk chicken breast
pepperoni sausage
brown sugar
fusilli pasta
kaiser roll
red delicious apple
honey mustard
unbleached �our
vinegar
spicy brown mustard
chuck roast
candied citron
vegetable combination
beef �ank steak
red chile pepper
avocado
quinoa
cake �our
whole wheat tortilla
dill seed
turnip
vegetable broth
sugarsugar cookie mix neufchatel cheese
coriander seed
apple
vegetable soup mix
chocolate sandwich cooky
colby cheese
sourdough starter
green bean
pecansoftened butter matzo meal
hash brown potato
vanilla pudding mix
pickle relish
noodlered potato
white chocolate
pistachio nut
green food coloring
lemon zest
chutney
splenda
buttermilk baking mix
caraway seedmaple �avoring
taco sauce
chili oil
kiwi
lean turkey
garlic
golden mushroom soup
grit
chili sauce
rosemary
green salsa
corkscrew shaped pasta
marshmallow creme
enchilada sauce
baby carrot
savory
cinnamon red candy
corn mu�n mix
black peppercorn
green bell pepperwater chestnut
french dressing
almond extract
rose water
paprika
english cucumber
nutritional yeast
unpie shell
ears corn
cream of shrimp soup
plum tomato
bratwurst
green lettuce
lemon lime carbonated beverage
ice
creole seasoning
grape juice
italian sausage
pizza crust
orzo pasta
white rum
crescent roll
italian cheese blend
rhubarb
chicken bouillon
prosciutto
cream
red onion
marinated artichoke heart
jalapeno chile pepper
tater tot
pork tenderloin
spaghetti
gin
semisweet chocolate
pie crust
cooking spray
spaghetti sauce
bread �our
butterscotch pudding mix
romano cheese
bulgur
hungarian paprika
white balsamic vinegar
picante sauce
meatball
tuna
chili without bean
bean sprout
baking cocoa
chile paste
butter
yellow mustard
haddock
sun�ower seed
processed american cheese
russet potato
allspice
giblet
button mushroom
peanut
kidney bean
portobello mushroom
ranch dressing
almond paste
hazelnut
beef brisket
sake
fruit cocktail
beef sirloin steak
pimento
honeydew melon
low fat milk
salami
german chocolate
pizza sauce
green tomato
orange liqueur
celery salt
chocolate mix
cranberry juice
white pepper
barley
soy milk
sweet
poblano pepper
macadamia nut
goat cheese
tomato soup
tea bag
mixed spice
low fat peanut butter
turkey breast
lemon peel
tomato vegetable juice cocktail
jalapeno pepper
low sodium soy sauce
processed cheese
limeade
arti�cial sweetener
sesame oil
heavy cream
fat free chicken broth
pork shoulder
evaporated milk
corn�ake
bay scallop
chocolate waferwhite sugar
rapid rise yeast potato
�our tortilla
chicken drum
chocolate ice cream
pepper jack cheese
baking potato
italian dressing mix
Teng et al (2011) arXiv:1111.3919v3
Networks are everywhere!In the genes
Gene interaction network in Arabidopsis thaliana whichregulates the cell cycle and circadian rythms:
Bassel et al (2011) PNAS 108 (23) 9709-9714.
• Social networks (friendships, karate club, coauthorships,actors),
• Biological networks (neuronal, gene regulatory, ecological,protein interaction, cardiovascular),
• Technological and information networks (internet, WWW,twitter, facebook, trade),
• Physical networks – embedded in space (transportation,granular force, rabbit warren, cardiovascular).
Etc.
Undirected binary networksIn undirected, unweighted networks we only care about whethera connection exists between a given pair of nodes.
1
2
34
5
6 Node
Edge
Though complete, this
representation is not very
practical, in particular when we’re
dealing with large networks.
The complete characterisation ofthe network G isV = {1, 2, 3, 4, 5, 6},
E = {(1, 4), (1, 3),(4, 3), (3, 6),(3, 2), (3, 5),(2, 5)}.
We allow a single edge between
each node (ignore multi-edges).
The size of the network here is
given by |V| = 6 and |E| = 7. Here
the edges are undirected i.e.,
(vi, vj) = (vj , vi).
Undirected binary networksA more practical representation of G (one we can work with) is givenby the adjacency matrix of the graph.
The adjacency matrix is a n× n matrix where Ai,j = 1 if (vi, vj) ∈ Eand Ai,j = 0 otherwise.
1
2
34
5
6 Node
Edge
In our example the 6× 6 adjacencymatrix of G is:
A =
0 0 1 1 0 00 0 1 0 1 01 1 0 1 1 11 0 1 0 0 00 1 1 0 0 00 0 1 0 0 0
= AT
A is a symmetric (and therefore
square) nonnegatve matrix.
A binary undirected network is a simple network if no node isconnected to itself (i.e., no self-edges, a.k.a no self-loops).
Weighted networksIn weighted networks the edges have a weight or intensity thatdescribes the nature of the relationship between the nodes.
In other words, a weighted edge between nodes vi and vj is
ek = (vi, vj , wk), where wk is the weight of the edge.
1
2
34
5
64
1
2
3
1
1 2
The entries of the weightedadjacency matrix are Wi,j = wk ifek ∈ E and 0 otherwise:
A =
0 0 2 1 0 00 0 3 0 2 02 3 0 1 1 41 0 1 0 0 00 2 1 0 0 00 0 4 0 0 0
= AT
The “topology” is represented by the unweighted adjacency matrix
and the “geometry” is represented by the weighted adjacency matrix.
Directed networks
In directed networks each edge has a precise origin and end, i.e.,(vi, vj) 6= (vj , vi) necessarily.Convention (Newman): Aij = 1 represents a directed edge from j → i.
AEF = AFE = 1; this gives a 2-cycle between nodes E and F.
Harrington et al (2013) Network Science 1 (02) 226-247
Matrices are no longer symmetric, but still binary and non-negative.
Directed networksA cycle is a closed loop of nodes in which each node and edge istraversed exactly once.The length of a cycle in unweighted network is the number of edgestraversed.
Remark: In undirected, unweighted networks, without self-edges, the
minimum cycle length is 3.
Harrington et al (2013) Network Science 1 (02) 226-247
Directed networksAsymmetry and flow are central concepts in directed networks.
Directionality in essential for studying ecosystem stability and food
webs.
Phytoplankton
Halodule
Micro-epiphytesMacro-epiphytes
Benthic algae
Bacterio plankton
Micro protozoa
Zooplankton
Epiphyte-graz amphipods suspension-feed molluscs
Suspension-feed polychts
Benthic bact
MicrofaunaMeiofauna
Deposit feed amphipods
Detritus feed crust.
Hermit crab
Spider crab
Omnivorous crabsBlue crab
Isopod
Brittle stars
Herbivorous shrimp
Predatory shrimp
Deposit-feed gastropod
Deposit-feed polycht
Predatory polycht
Predatory gastropod
Epiphyte-graz gastropodOther gastropods
Catfish& stingrays
Tongue fish
Gulf flound& needle fish
Southrn hake& sea robins
Atl. silverside& bay anc
Gobies& blennies
Pinfish
Spot
Pipefish& seahorses
Sheepshead minnow
Red Drum
Killifish
Herbivorous ducks
Benthos-eating birds
Fish-eating birds
Fish& crust. eating birdGulls
Raptors
DOC
Suspended POC
Sediment POC
Input
Output Respiration
Christian R.R. & Luczkovich J.J. (1999)
Ecological Modelling 117: 99-124.
Directed networks
Directed networks also allow us to study information and interest
dynamics in social media.
Structure of the Twitter
follower nertwork:
Beguerisse-Dıaz et al (2013)
Directed networks
The network of air travel is both directed and weighted:
http://openflights.org
Question: how do you define cycle length in a weighted network?
Degrees
In a network G = {V, E} the degree (aka degree centrality) ki of a nodei ∈ E is the number of edges connected to it (aka, the number of edgesincident to it).If G is unweighted (and no self-loops) and its adjacency matrix is A,then:
ki =
N∑j=1
Ai,j ,
When G is weighted then:
ki =
N∑j=1
sign(Ai,j).
Degrees
Take, for example, the following network:
1
2
34
5
6 In this sample network we have:
deg(v1) = 2,
deg(v2) = 2,
deg(v3) = 5,
...
A node with a very large degree is sometimes called a “hub”.
Degrees
To obtain the degrees in the network we multiply:
1
2
34
5
6 0 0 1 1 0 00 0 1 0 1 01 1 0 1 1 11 0 1 0 0 00 1 1 0 0 00 0 1 0 0 0
111111
=
225221
DegreesSimple network metrics:
Total number of edges:
m =1
2
N∑i=1
ki,
=1
2
N∑i=1
N∑j=1
Ai,j .
In a complete simple graph, every possible edge exists.m = N(N − 1)/2 edges
Mean degree:
c =1
N
N∑i=1
ki,
=1
N2m.
Degrees
The density of a network
ρ =Number of edges
Total possible edges=
mN(N−1)
2
,
=c
N − 1.
A network is said to be dense if ρ→ constant as N →∞,and sparse if ρ→ 0.Examples of dense networks include food-webs.Examples of sparse networks include social networks or the internet.
NOTE: In reality, one has to be careful because often one cannot
simply let N →∞.
Node strengths
In a weighted network the strength of a node is the sum of all theweights of the edges:
si =
N∑j=1
Ai,j .
A degree can be seen as a particular instance of strength when allweights are 1.
The matrix operations are all analogous, same with directed networks(e.g., in-strength, out-strength and so on).
Degrees in directed networks
In directed networks, where in general A 6= AT , nodes have twodegrees.
The number of outgoing connections is the out-degree:
koutj =
N∑i=1
Ai,j .
The number of incoming connections is the in-degree:
kini =
N∑j=1
Ai,j .
Note: different summation indices.
Degrees in directed networks
The total number of edges is
m =
N∑i=1
kini ,=
N∑i=1
kouti ,=
N∑i=1
N∑j=1
Ai,j .
The mean out-degree cout and mean in-degree cin must be equal:
c := cin =1
N
N∑i=1
kini =1
N
N∑i=1
koutj = cout =m
N
Note: different by factor of 2 from undirected case.
Degree Distribution
The degree sequence is the set of the degrees of all nodes in a graph,
i.e., {k1, k2, . . . , kN}. Order is not important.
1
2
34
5
6Network G has degree sequence{2, 2, 5, 2, 2, 1}
If a 7th node is added and connected tonode 6, it has degree sequence:{2, 2, 5, 2, 2, 1, 1}
If an 8th and 9th node are added andnot connected, it has degree sequence:{2, 2, 5, 2, 2, 1, 1, 0, 0}
Note: A graph is called regular if ki = k for all i, i.e., its degreesequence is {k, k, k, . . . , k}.
Degree distribution
Let pk be the probability that a randomly chosen nodes has degree k,
k ∈ N. The degree distribution {pk} of G is usually denoted pk by
abuse of notation. Clearly∑∞k=1 pk = 1.
1
2
34
5
6
p0 = 0/6
p1 = 1/6
p2 = 4/6
p3 = 0/6
p4 = 0/6
p5 = 1/6
pk = 0 for k ≥ 6.For real data, determine degree distribution from a degree sequence.
Degree distribution
A degree distribution can also be given from a formula (e.g., Poissondistribution or another distribution).
Many real networks have heavy -tailed degree distributions,which are skewed such that extreme events become more likely.
An important example of a heavy-tailed degree distribution is apower law
pk = Ck−α
where C is a constant, α is the exponent of the power law.
If one plots pk = Ck−α on a doubly logarithmic coordinate, onesees a straight line (slope −α).
The term “scale-free” is used to describe a power law. These arenot really scale free networks so don’t do this.
Degree distribution
It is often convenient to consider cumulative degree distribution:
Pk =
∞∑k′=k
pk′ ,
which is the fraction of nodes of degree at least k.Suppose that pk = Ck−α for k ≥ kmin.
For k ≥ kmin, we have
Pk = C
∞∑k′=k
(k′)−α ≈ C∫ ∞k
(k)−αdk′ =C
1− αk1−α
• α determine which ‘moments’ of the distribution converge.
• More precisely, pk has a power-law tail with exponent α ifpk ∼ k−α as k →∞.
Degree distribution
In directed networks we have an in-degree distribution pink andan out-degree distribution poutk .
We may consider the joint distribution:
P (k, h; i) ={
probability kini = k & probability kouti = h}.
If pink and pouth are independent then:
P (k, h; i) = pink pouth .
In weighted networks, we may equally talk about the strength
distribution of G.
Trees and DAGs
• A tree is connected, undirected network that doesn’t have cycles.
• A Directed Acyclic Graph (DAG) is a directed network withoutcycles.e.g., citation networks, genealogies
Spatial networks
A spatial network is a network that is embedded in some space(and this can have significant implications on network structure).e.g., transportation networks, granular force networks,cardiovascular networks
Q: Consider a road network that is embedded in 2D. How much ofthe structure is because it is embedded in 2D and how much isparticluarl to the fact that it is “road-like”?
Note: Space can also have implicit effects on structure innetworks that aren’t spatial networks (e.g., friendship networks).
Hypergraphs
Everything previously assumed pairwise connections; this notneed be true in general.
A hypergraph is like a graph except it has hyperedges that canconnect more than 2 nodes.
Example: everybody in this room is connected by a hyperedgefrom being in this room and smaller subsets of people are alsoconnected by hyperedges being in the same College.
Bipartite networks
In bipartite (also two-mode) networks there are two types of nodes.
Edges only connect nodes of different type.
Terminator Jaws Snow
White
Renaud Anne Mauricio Mariano
42 31
4 3
1
Beguerisse-Dıaz et al (2010)
There are two nodesetsA = {a1, a2, . . . , aN} andB = {b1, b2, . . . , bM}; edges are suchthat ek = (ai, bj).
The adjacency matrix is A with sizeN ×M , must no longer be square.
Bipartite networks are also calledaffiliation networks (for obviousreasons).
Unipartite projectionBipartite networks can be projected to create two unipartite networks:
1
2
3
4
1 2 3 4
A B C
A
B
C
We can obtain matrices for the unipartite projections:
B = AAT and C = ATA,
where B is N ×N and C is M ×M . Each entry in the matrices is:
Bi,j =M∑k=1
Ai,kAj,k and Ci,j =
N∑g=1
Ag,iAg,j .
What does the weight of the edges indicate?
What are elements in the diagonal?
Similarity networks
One can construct networks from correlations and othermeasures of similarity.
A is weighted and typically fully or almost fully connected (oftentake Aii = 0).
For example, let V = (Vik) be a matrix of votes where
1 entry i voted in favor of measure k,-1 entry i voted against measure k,0 entry i abstained on k.
One way to construct A is to define
Aij =#times entires i and j votes in the same way
#total measures on which i and j voted, i 6= j,
One can also construct similarity networks from time series (e.g.,stock prices)
Temporal networks
Temporal networks (aka time-dependent networks) are networksin which the nodes and/or edges (and their weight) change intime.
Example: network of mobile phone calls
1
2
34
5
6
Unweighted1
2
34
5
6
Weighted
4
16
3
52
Directed
1
2
34
5
61
2
34
5
61
2
34
5
61
2
34
5
6
Temporal
1
2
3
4 5
61
2
3
4 5
61
2
3
4
6
5
1
2
3
4 5
6
Multilayer
Multiplex networks
A multiplex network is a network with more than one type ofedge.
Example: social network with offline connections, Twitterconnections (follows, retweets, mentions) etc.
Example: transportation network (buses, trains, metro etc).
Multilayer network
Very general type of network with multiple levels of connectivity.
See Kivela et al (2014) J Complex Networks for a review.
1
2
34
5
6
Unweighted1
2
34
5
6
Weighted
4
16
3
52
Directed
1
2
34
5
61
2
34
5
61
2
34
5
61
2
34
5
6
Temporal
1
2
3
4 5
61
2
3
4 5
61
2
3
4
6
5
1
2
3
4 5
6
Multilayer