AssignEdgeWeights - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.
Our website is currently undergoing maintenance, which may result in occasional errors while browsing. We apologize for any inconvenience this may cause and are working swiftly to restore full functionality. Thank you for your patience.

Online Help

All Products    Maple    MapleSim


GraphTheory[RandomGraphs]

  

AssignEdgeWeights

  

generate random edge weights for a graph

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

AssignEdgeWeights(G,m..n)

AssignEdgeWeights(G,a..b)

AssignEdgeWeights(G,R)

Parameters

G

-

graph

m, n

-

integers satisfying mn

a, b

-

floats satisfying ab

R

-

user-defined function for generating random edge weights

Description

• 

If G is a weighted graph, AssignEdgeWeights(G,...) assigns new random edge weights to G, that is, for each edge (i,j) in G the (i,j)th entry in the weight matrix of G is updated inplace.

• 

If G is an unweighted graph, a weighted graph is first created before assigning the edge weights.  The structure of G is not copied.

• 

AssignEdgeWeights(G,m..n) assigns the edges of the weighted graph random integer weights uniformly distributed on [m,n].

• 

AssignEdgeWeights(G,a..b) assigns the edges of the weighted graph random decimal weights uniformly distributed on [a,b).

• 

AssignEdgeWeights(G,R) assigns the edges of the weighted graph G values defined by R().  The Maple procedure R must return numerical values, that is, integers, rationals, or floating-point constants.

• 

The random number generator used to compute the edge weights can be seeded using the seed option or the randomize function.

Examples

withGraphTheory:

withRandomGraphs:

TGraphweighted,1,2,2,3,3,4,4,1

TGraph 1: a directed weighted graph with 4 vertices and 4 arc(s)

(1)

WeightMatrixT

0100001000011000

(2)

AssignEdgeWeightsT,1..9

Graph 1: a directed weighted graph with 4 vertices and 4 arc(s)

(3)

WeightMatrixT

0400001000071000

(4)

TRandomTree4

TGraph 2: an undirected graph with 4 vertices and 3 edge(s)

(5)

TAssignEdgeWeightsT,0...1.0

TGraph 3: an undirected weighted graph with 4 vertices and 3 edge(s)

(6)

WWeightMatrixT

W0.0.09754040499940950.0.6323592462254100.09754040499940950.0.0.0.0.0.0.9133758561390190.6323592462254100.0.9133758561390190.

(7)

op3,W

datatype=float8,storage=rectangular,order=Fortran_order,shape=symmetric

(8)

TRandomTree100

TGraph 4: an undirected graph with 100 vertices and 99 edge(s)

(9)

TAssignEdgeWeightsT,1..99

TGraph 5: an undirected weighted graph with 100 vertices and 99 edge(s)

(10)

op3,WeightMatrixT

datatype=integer,storage=sparse,order=Fortran_order,shape=symmetric

(11)

This example creates a network

NGraph1,2,1,3,1,4,2,3,2,5,3,5,4,3,4,5

NGraph 6: a directed graph with 5 vertices and 8 arc(s)

(12)

Urand1..4:

B := proc() if U()=1 then 1 else 2 end if; end proc:

So Prob(B=1)=1/4, Prob(B=2)=3/4

NAssignEdgeWeightsN,B

NGraph 7: a directed weighted graph with 5 vertices and 8 arc(s)

(13)

WWeightMatrixN

W0121000101000020010200000

(14)

op3,W

datatype=anything,storage=rectangular,order=Fortran_order,shape=

(15)

See Also

GraphTheory:-Graph

GraphTheory:-MakeWeighted

GraphTheory:-RandomGraphs:-RandomTree

GraphTheory:-WeightMatrix

 


Download Help Document