Random Weighted Graph Network Generator

Random Weighted Graph Network Generator
Loading the math board and drawing, please wait…
2017-02-03 01:22
This example demonstrates how to generate a graph network with random weights using GeoGebra scripting, where nodes are arranged in a grid, edges connect adjacent nodes, and each edge displays a random weight value. Core mathematical concepts include weighted graphs in graph theory, random number generation, geometric points and segments, as well as the use of angles and rotations. Construction highlights: from the construction summary, the Random command generates random weights, Element and If are used for conditional logic, Circle, Point, Rotate, Angle, and Segment build nodes and edges, Midpoint computes midpoints, and LaTeX renders weight labels; object names like J10randomweight3 indicate each node is associated with a random weight. Suitable for high school or university students learning graph theory, discrete mathematics, or introductory computer science, and also useful for demonstrating scripted geometric construction and stochastic simulation in GeoGebra.

GeoGebra Commands & Parameters

  1. Random(1, 20) → J9randomweight3
  2. Random(1, 20) → J8randomweight3
  3. Random(1, 20) → I8randomweight3
  4. Random(1, 20) → J7randomweight3
  5. Random(1, 20) → I7randomweight3
  6. Random(1, 20) → H7randomweight3
  7. Random(1, 20) → J6randomweight3
  8. Random(1, 20) → I6randomweight3
  9. Random(1, 20) → H6randomweight3
  10. Random(1, 20) → G6randomweight3
  11. Random(1, 20) → J5randomweight3
  12. Random(1, 20) → I5randomweight3
  13. Random(1, 20) → H5randomweight3
  14. Random(1, 20) → G5randomweight3
  15. Random(1, 20) → F5randomweight3
  16. Random(1, 20) → J4randomweight3
  17. Random(1, 20) → I4randomweight3
  18. Random(1, 20) → H4randomweight3
  19. Random(1, 20) → G4randomweight3
  20. Random(1, 20) → F4randomweight3
  21. Random(1, 20) → E4randomweight3
  22. Random(1, 20) → J3randomweight3
  23. Random(1, 20) → I3randomweight3
  24. Random(1, 20) → H3randomweight3
  25. Random(1, 20) → G3randomweight3
  26. Random(1, 20) → F3randomweight3
  27. Random(1, 20) → E3randomweight3
  28. Random(1, 20) → D3randomweight3
  29. Random(1, 20) → J2randomweight3
  30. Random(1, 20) → I2randomweight3
  31. Random(1, 20) → H2randomweight3
  32. Random(1, 20) → G2randomweight3
  33. Random(1, 20) → F2randomweight3
  34. Random(1, 20) → E2randomweight3
  35. Random(1, 20) → D2randomweight3
  36. Random(1, 20) → C2randomweight3
  37. Random(1, 20) → J1randomweight3
  38. Random(1, 20) → I1randomweight3
  39. Random(1, 20) → H1randomweight3
  40. Random(1, 20) → G1randomweight3
  41. Random(1, 20) → F1randomweight3
  42. Random(1, 20) → E1randomweight3
  43. Random(1, 20) → D1randomweight3
  44. Random(1, 20) → C1randomweight3
  45. Random(1, 20) → B1randomweight3
  46. Random(0, 1) → B1randomweight2
  47. Random(0, 1) → C1randomweight2
  48. Random(0, 1) → D1randomweight2
  49. Random(0, 1) → E1randomweight2
  50. Random(0, 1) → F1randomweight2
  51. Random(0, 1) → G1randomweight2
  52. Random(0, 1) → H1randomweight2
  53. Random(0, 1) → I1randomweight2
  54. Random(0, 1) → J1randomweight2
  55. Random(0, 1) → C2randomweight2
  56. Random(0, 1) → D2randomweight2
  57. Random(0, 1) → E2randomweight2
  58. Random(0, 1) → F2randomweight2
  59. Random(0, 1) → G2randomweight2
  60. Random(0, 1) → H2randomweight2
  61. Random(0, 1) → I2randomweight2
  62. Random(0, 1) → J2randomweight2
  63. Random(0, 1) → D3randomweight2
  64. Random(0, 1) → E3randomweight2
  65. Random(0, 1) → F3randomweight2
  66. Random(0, 1) → G3randomweight2
  67. Random(0, 1) → H3randomweight2
  68. Random(0, 1) → I3randomweight2
  69. Random(0, 1) → J3randomweight2
  70. Random(0, 1) → E4randomweight2
  71. Random(0, 1) → F4randomweight2
  72. Random(0, 1) → G4randomweight2
  73. Random(0, 1) → H4randomweight2
  74. Random(0, 1) → I4randomweight2
  75. Random(0, 1) → J4randomweight2
  76. Random(0, 1) → F5randomweight2
  77. Random(0, 1) → G5randomweight2
  78. Random(0, 1) → H5randomweight2
  79. Random(0, 1) → I5randomweight2
  80. Random(0, 1) → J5randomweight2
  81. Random(0, 1) → G6randomweight2
  82. Random(0, 1) → H6randomweight2
  83. Random(0, 1) → I6randomweight2
  84. Random(0, 1) → J6randomweight2
  85. Random(0, 1) → H7randomweight2
  86. Random(0, 1) → I7randomweight2
  87. Random(0, 1) → J7randomweight2
  88. Random(0, 1) → I8randomweight2
  89. Random(0, 1) → J8randomweight2
  90. Random(0, 1) → J9randomweight2
  91. Random(0, 1) → J1
  92. Random(0, 1) → J2
  93. Random(0, 1) → J3
  94. Random(0, 1) → J4
  95. Random(0, 1) → J5
  96. Random(0, 1) → J6
  97. Random(0, 1) → J7
  98. Random(0, 1) → J8
  99. Random(0, 1) → J9
  100. Random(0, 1) → I8
  101. Random(0, 1) → I7
  102. Random(0, 1) → H7
  103. Random(0, 1) → G6
  104. Random(0, 1) → I6
  105. Random(0, 1) → H6
  106. Random(0, 1) → G5
  107. Random(0, 1) → I5
  108. Random(0, 1) → H5
  109. Random(0, 1) → F5
  110. Random(0, 1) → G4
  111. Random(0, 1) → I4
  112. Random(0, 1) → H4
  113. Random(0, 1) → F4
  114. Random(0, 1) → E4
  115. Random(0, 1) → G3
  116. Random(0, 1) → I3
  117. Random(0, 1) → H3
  118. Random(0, 1) → F3
  119. Random(0, 1) → E3
  120. Random(0, 1) → D3
  121. Random(0, 1) → F2
  122. Random(0, 1) → I2
  123. Random(0, 1) → H2
  124. Random(0, 1) → G2
  125. Random(0, 1) → E2
  126. Random(0, 1) → D2
  127. Random(0, 1) → C2
  128. Random(0, 1) → F1
  129. Random(0, 1) → I1
  130. Random(0, 1) → H1
  131. Random(0, 1) → G1
  132. Random(0, 1) → E1
  133. Random(0, 1) → D1
  134. Random(0, 1) → C1
  135. Random(0, 1) → B1
  136. Element(matrix1, 10) → row10
  137. Element(matrix1, 9) → row9
  138. Element(matrix1, 8) → row8
  139. Element(matrix1, 7) → row7
  140. Element(matrix1, 6) → row6
  141. Element(matrix1, 5) → row5
  142. Element(matrix1, 4) → row4
  143. Element(matrix1, 3) → row3
  144. Element(matrix1, 2) → row2
  145. Element(matrix1, 1) → row1
  146. If(nodes ≟ 1, {Sum[row1], 0, 0, 0, 0, 0, 0, 0, 0, 0}, If[nodes ≟ 2, {Sum[row1], Sum[row2], 0, 0, 0, 0, 0, 0, 0, 0}, If[nodes ≟ 3, {Sum[row1], Sum[row2], Sum[row3], 0, 0, 0, 0, 0, 0, 0}, If[nodes ≟ 4, {Sum[row1], Sum[row2], Sum[row3], Sum[row4], 0, 0, 0, 0, 0, 0}, If[nodes ≟ 5, {Sum[row1], Sum[row2], Sum[row3], Sum[row4], Sum[row5], 0, 0, 0, 0, 0, 0}, If[nodes ≟ 6, {Sum[row1], Sum[row2], Sum[row3], Sum[row4], Sum[row5], Sum[row6], 0, 0, 0, 0}, If[nodes ≟ 7, {Sum[row1], Sum[row2], Sum[row3], Sum[row4], Sum[row5], Sum[row6], Sum[row7], 0, 0, 0}, If[nodes ≟ 8, {Sum[row1], Sum[row2], Sum[row3], Sum[row4], Sum[row5], Sum[row6], Sum[row7], Sum[row8], 0, 0}, If[nodes ≟ 9, {Sum[row1], Sum[row2], Sum[row3], Sum[row4], Sum[row5], Sum[row6], Sum[row7], Sum[row8], Sum[row9], 0}, If[nodes ≟ 10, {Sum[row1], Sum[row2], Sum[row3], Sum[row4], Sum[row5], Sum[row6], Sum[row7], Sum[row8], Sum[row9], Sum[row10]}]]]]]]]]]) → list1
  147. Circle(A_1, B_1) → c
  148. Point(c) → A
  149. Rotate(A, (360 / nodes)°, A_1) → B
  150. Angle(A, A_1, B) → α
  151. Rotate(B, (360 / nodes)°, A_1) → C
  152. Angle(B, A_1, C) → β
  153. Rotate(C, (360 / nodes)°, A_1) → D
  154. Angle(C, A_1, D) → γ
  155. Rotate(D, (360 / nodes)°, A_1) → E
  156. Angle(D, A_1, E) → δ
  157. Rotate(E, (360 / nodes)°, A_1) → F
  158. Angle(E, A_1, F) → ε
  159. Rotate(F, (360 / nodes)°, A_1) → G
  160. Angle(F, A_1, G) → ζ
  161. Rotate(G, (360 / nodes)°, A_1) → H
  162. Angle(G, A_1, H) → η
  163. Rotate(H, (360 / nodes)°, A_1) → I
  164. Angle(H, A_1, I) → θ
  165. Rotate(I, (360 / nodes)°, A_1) → J
  166. Angle(I, A_1, J) → ι
  167. Segment(A, B) → a
  168. Segment(A, C) → b
  169. Segment(A, D) → d
  170. Segment(A, E) → e
  171. Segment(A, G) → g
  172. Segment(A, H) → h
  173. Segment(A, I) → i
  174. Segment(A, J) → j
  175. Segment(B, C) → k
  176. Segment(B, D) → l
  177. Segment(B, E) → m
  178. Segment(B, F) → p
  179. Segment(B, G) → q
  180. Segment(B, H) → r
  181. Segment(B, I) → s
  182. Segment(B, J) → t
  183. Segment(C, D) → a_1
  184. Segment(C, E) → b_1
  185. Segment(C, F) → c_1
  186. Segment(C, G) → e_1
  187. Segment(C, H) → f_1
  188. Segment(C, I) → g_1
  189. Segment(C, J) → h_1
  190. Segment(D, E) → d_1
  191. Segment(D, F) → i_1
  192. Segment(D, G) → j_1
  193. Segment(D, H) → k_1
  194. Segment(D, I) → l_1
  195. Segment(D, J) → m_1
  196. Segment(E, F) → n_1
  197. Segment(E, G) → p_1
  198. Segment(E, H) → q_1
  199. Segment(E, I) → r_1
  200. Segment(E, J) → s_1
  201. Segment(F, G) → t_1
  202. Segment(F, H) → a_2
  203. Segment(F, I) → b_2
  204. Segment(F, J) → c_2
  205. Segment(G, H) → d_2
  206. Segment(G, I) → e_2
  207. Segment(G, J) → f_2
  208. Segment(H, I) → g_2
  209. Segment(H, J) → h_2
  210. Segment(I, J) → i_2
  211. Segment(A, F) → j_2
  212. LaTeX(matrix2, true, true) → text1
  213. LaTeX(matrix3, true, true) → text2
  214. LaTeX(matrix4, true, true) → text3
  215. LaTeX(matrix5, true, true) → text4
  216. LaTeX(matrix6, true, true) → text5
  217. LaTeX(matrix7, true, true) → text6
  218. LaTeX(matrix8, true, true) → text7
  219. LaTeX(matrix9, true, true) → text8
  220. LaTeX(matrix1, true, true) → text9
  221. Element(row2, 3) → c2
  222. Element(row2, 4) → d2
  223. Element(row2, 5) → e2
  224. Element(row2, 6) → f2
  225. Element(row2, 7) → g2
  226. Element(row2, 8) → h2
  227. Element(row2, 9) → i2
  228. Element(row2, 10) → j2
  229. Element(row3, 4) → d3
  230. Element(row3, 5) → e3
  231. Element(row3, 6) → f3
  232. Element(row3, 7) → g3
  233. Element(row3, 10) → j3
  234. Element(row4, 8) → h4
  235. Element(row4, 9) → i4
  236. Element(row1, 2) → b1
  237. Midpoint(a) → K
  238. Midpoint(b) → L
  239. Midpoint(d) → M
  240. Midpoint(e) → N
  241. Midpoint(j_2) → O
  242. Midpoint(g) → P
  243. Midpoint(h) → Q
  244. Midpoint(i) → R
  245. Midpoint(j) → S
  246. Element(row1, 3) → c1
  247. Element(row1, 4) → d1
  248. Element(row1, 5) → e1
  249. Element(row1, 6) → f1
  250. Element(row1, 7) → g1
  251. Element(row1, 8) → h1
  252. Element(row1, 9) → i1
  253. Element(row1, 10) → j1
  254. Midpoint(k) → T
  255. Midpoint(l) → U
  256. Midpoint(m) → V
  257. Midpoint(p) → W
  258. Midpoint(q) → Z
  259. Midpoint(s) → C_1
  260. Midpoint(t) → D_1
  261. Midpoint(r) → E_1
  262. Midpoint(a_1) → F_1
  263. Midpoint(b_1) → G_1
  264. Midpoint(c_1) → H_1
  265. Midpoint(e_1) → I_1
  266. Midpoint(f_1) → J_1
  267. Midpoint(g_1) → K_1
  268. Midpoint(h_1) → L_1
  269. Midpoint(d_1) → M_1
  270. Midpoint(i_1) → N_1
  271. Midpoint(j_1) → O_1
  272. Midpoint(k_1) → P_1
  273. Midpoint(l_1) → Q_1
  274. Midpoint(m_1) → R_1
  275. Midpoint(n_1) → S_1
  276. Midpoint(p_1) → T_1
  277. Midpoint(q_1) → U_1
  278. Midpoint(r_1) → V_1
  279. Midpoint(s_1) → W_1
  280. Midpoint(t_1) → Z_1
  281. Midpoint(a_2) → A_2
  282. Midpoint(b_2) → B_2
  283. Midpoint(c_2) → C_2
  284. Midpoint(d_2) → D_2
  285. Midpoint(e_2) → E_2
  286. Midpoint(f_2) → F_2
  287. Midpoint(g_2) → G_2
  288. Midpoint(h_2) → H_2
  289. Midpoint(i_2) → I_2
  290. Element(row4, 5) → e4
  291. Element(row4, 6) → f4
  292. Element(row5, 6) → f5
  293. Element(row4, 7) → g4
  294. Element(row5, 7) → g5
  295. Element(row6, 7) → g6
  296. Element(row5, 8) → h5
  297. Element(row6, 8) → h6
  298. Element(row7, 8) → h7
  299. Element(row5, 9) → i5
  300. Element(row6, 9) → i6
  301. Element(row7, 9) → i7
  302. Element(row8, 9) → i8
  303. Element(row4, 10) → j4
  304. Element(row5, 10) → j5
  305. Element(row6, 10) → j6
  306. Element(row7, 10) → j7
  307. Element(row8, 10) → j8
  308. Element(row9, 10) → j9
  309. Element(row3, 8) → h3
  310. Element(row3, 9) → i3

AI Drawing Prompt Reference

Draw a random weighted graph network with nodes arranged in a grid. Each node has a random weight between 1 and 20. Connect adjacent nodes with line segments, and label each edge with a random weight also between 1 and 20. All weights are randomly generated and displayed on the graph, creating a connected network with stochastic edge weights.
The prompt above was compiled from the original drawing commands and is for reference only.