GraphTheory[RandomGraphs] - Maple Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Mathematics : Discrete Mathematics : Graph Theory : GraphTheory Package : RandomGraphs : GraphTheory/RandomGraphs/RandomGraph

GraphTheory[RandomGraphs]

  

RandomGraph

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

RandomGraph(n,p,options)

RandomGraph(n,m,options)

Parameters

n

-

positive integer or a list of vertex labels

p

-

real number between 0.0 and 1.0

m

-

non-negative integer

options

-

sequence of options (see below)

Description

• 

RandomGraph(n,p) creates an undirected unweighted graph on n vertices where each possible edge is present with probability p where 0.0 <= p <= 1.0.

• 

RandomGraph(n,m) creates an undirected unweighted graph on n vertices and m edges where the m edges are chosen uniformly at random. The value of m must satisfy 0 <= m <= binomial(n,2) = n*(n-1)/2.

• 

If the first input is a positive integer n, then the vertices are labeled 1,2,...,n.  Alternatively, you may specify the vertex labels in a list.

• 

If the option directed is specified, a random directed graph is chosen. This is equivalent to using the RandomDigraph command.

• 

If the option connected is specified, the graph created is connected, and hence has at least n-1 edges. For RandomGraph(n,m,connected), m must be at least n-1. A random tree is first created, then the remaining m-n+1 edges are chosen uniformly at random. For RandomGraph(n,p,connected), a random tree is first created then each remaining edge is present with probability p.

• 

If the option degree=d is specified, and d-regular n vertex graph is possible, then a random d-regular graph having n vertices will be returned. Note that this option cannot be present with the directed option. When this option is used the number of edges m may be omitted, but if provided must be consistent with the number of edges in a d-regular n vertex graph. This is equivalent to using the RandomRegularGraph command.

• 

If the option weights=m..n is specified, where m <= n are integers, the graph is a weighted graph with integer edge weights chosen from [m,n] uniformly at random.  The weight matrix W in the graph has datatype=integer, and if the edge from vertex i to j is not in the graph then W[i,j] = 0.

• 

If the option weights=x..y where x <= y are decimals is specified, the graph is a weighted graph with numerical edge weights chosen from [x,y] uniformly at random.  The weight matrix W in the graph has datatype=float[8], that is, double precision floats (16 decimal digits), and if the edge from vertex i to j is not in the graph then W[i,j] = 0.0.

• 

If the option weights=f where f is a function (a Maple procedure) that returns a number (integer, rational, or decimal number), then f is used to generate the edge weights.  The weight matrix W in the graph has datatype=anything, and if the edge from vertex i to j is not in the graph then W[i,j] = 0.

• 

The random number generator used can be seeded using the randomize function.

Examples

withGraphTheory&colon;

withRandomGraphs&colon;

GRandomGraph8&comma;0.5

G:=Graph 1: an undirected unweighted graph with 8 vertices and 14 edge(s)

(1)

GRandomGraph8&comma;10

G:=Graph 2: an undirected unweighted graph with 8 vertices and 10 edge(s)

(2)

GRandomGraph8&comma;10&comma;connected

G:=Graph 3: an undirected unweighted graph with 8 vertices and 10 edge(s)

(3)

IsConnectedG

true

(4)

GRandomGraph6&comma;degree&equals;3

G:=Graph 4: an undirected unweighted graph with 6 vertices and 9 edge(s)

(5)

IsRegularG

true

(6)

HRandomGraph4&comma;1.0&comma;weights&equals;0.0..1.0

H:=Graph 5: an undirected weighted graph with 4 vertices and 6 edge(s)

(7)

WeightMatrixH

0.0.01190206950124140.4693906410582060.5688236608721930.01190206950124140.0.1299062084737300.9340106842291830.4693906410582060.1299062084737300.0.7791672301020110.5688236608721930.9340106842291830.7791672301020110.

(8)

HRandomGraph8&comma;10&comma;connected&comma;weights&equals;1..4

H:=Graph 6: an undirected weighted graph with 8 vertices and 10 edge(s)

(9)

WeightMatrixH

0010140000100002110010000000300410130000400000030000000102040310

(10)

Urand1..4&colon;

f := proc() local x; x := U(); if x=1 then 1 else 2 fi end:

HRandomGraph6&comma;1.0&comma;weights&equals;f

H:=Graph 7: an undirected weighted graph with 6 vertices and 15 edge(s)

(11)

WeightMatrixH

012121102221220112121011221101112110

(12)

See Also

AssignEdgeWeights

GraphTheory[IsConnected]

GraphTheory[WeightMatrix]

RandomBipartiteGraph

RandomDigraph

RandomNetwork

RandomRegularGraph

RandomTournament

RandomTree

 


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam