File size: 28,642 Bytes
e2d09ed |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 |
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="729pt" height="873pt" viewBox="0.00 0.00 729.00 872.72">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 868.72)">
<title>ImagePredictionFlow</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-868.72 725,-868.72 725,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_models</title>
<polygon fill="none" stroke="black" stroke-dasharray="5,2" points="8,-568 8,-748.72 510,-748.72 510,-568 8,-568"/>
<text text-anchor="middle" x="259" y="-735.72" font-family="Arial" font-size="10.00">Model Ensemble</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_forensics</title>
<polygon fill="none" stroke="black" stroke-dasharray="5,2" points="268,-136 268,-334.36 713,-334.36 713,-136 268,-136"/>
<text text-anchor="middle" x="490.5" y="-321.36" font-family="Arial" font-size="10.00">Forensic Analysis</text>
</g>
<!-- A -->
<g id="node1" class="node">
<title>A</title>
<path fill="lightgreen" stroke="black" d="M284.18,-864.72C284.18,-864.72 233.82,-864.72 233.82,-864.72 227.82,-864.72 221.82,-858.72 221.82,-852.72 221.82,-852.72 221.82,-840.72 221.82,-840.72 221.82,-834.72 227.82,-828.72 233.82,-828.72 233.82,-828.72 284.18,-828.72 284.18,-828.72 290.18,-828.72 296.18,-834.72 296.18,-840.72 296.18,-840.72 296.18,-852.72 296.18,-852.72 296.18,-858.72 290.18,-864.72 284.18,-864.72"/>
<text text-anchor="middle" x="259" y="-849.72" font-family="Arial" font-size="10.00">User Upload,</text>
<text text-anchor="middle" x="259" y="-837.72" font-family="Arial" font-size="10.00">Predict</text>
</g>
<!-- B -->
<g id="node2" class="node">
<title>B</title>
<path fill="lightyellow" stroke="black" d="M285.29,-792.72C285.29,-792.72 232.71,-792.72 232.71,-792.72 226.71,-792.72 220.71,-786.72 220.71,-780.72 220.71,-780.72 220.71,-768.72 220.71,-768.72 220.71,-762.72 226.71,-756.72 232.71,-756.72 232.71,-756.72 285.29,-756.72 285.29,-756.72 291.29,-756.72 297.29,-762.72 297.29,-768.72 297.29,-768.72 297.29,-780.72 297.29,-780.72 297.29,-786.72 291.29,-792.72 285.29,-792.72"/>
<text text-anchor="middle" x="259" y="-777.72" font-family="Arial" font-size="10.00">Img Pre-proc,</text>
<text text-anchor="middle" x="259" y="-765.72" font-family="Arial" font-size="10.00">Agent Init</text>
</g>
<!-- A->B -->
<g id="edge25" class="edge">
<title>A->B</title>
<path fill="none" stroke="black" d="M259,-828.42C259,-821.13 259,-812.45 259,-804.26"/>
<polygon fill="black" stroke="black" points="262.5,-804.34 259,-794.34 255.5,-804.34 262.5,-804.34"/>
</g>
<!-- ImageIn -->
<g id="node3" class="node">
<title>ImageIn</title>
<ellipse fill="lightblue" stroke="black" cx="259" cy="-720.36" rx="0.36" ry="0.36"/>
</g>
<!-- B->ImageIn -->
<g id="edge26" class="edge">
<title>B->ImageIn</title>
<path fill="none" stroke="black" d="M259,-756.28C259,-748.56 259,-739.69 259,-732.82"/>
<polygon fill="black" stroke="black" points="262.5,-732.93 259,-722.93 255.5,-732.93 262.5,-732.93"/>
</g>
<!-- Model1 -->
<g id="node4" class="node">
<title>Model1</title>
<path fill="lightcoral" stroke="black" d="M58,-684C58,-684 28,-684 28,-684 22,-684 16,-678 16,-672 16,-672 16,-660 16,-660 16,-654 22,-648 28,-648 28,-648 58,-648 58,-648 64,-648 70,-654 70,-660 70,-660 70,-672 70,-672 70,-678 64,-684 58,-684"/>
<text text-anchor="middle" x="43" y="-663" font-family="Arial" font-size="10.00">Model1</text>
</g>
<!-- ImageIn->Model1 -->
<g id="edge1" class="edge">
<title>ImageIn->Model1</title>
<path fill="none" stroke="black" d="M258.34,-719.93C249.82,-719.03 160.97,-709.3 80.95,-684.18"/>
<polygon fill="black" stroke="black" points="82.27,-680.93 71.67,-681.17 80.11,-687.58 82.27,-680.93"/>
</g>
<!-- Model2 -->
<g id="node5" class="node">
<title>Model2</title>
<path fill="lightcoral" stroke="black" d="M130,-684C130,-684 100,-684 100,-684 94,-684 88,-678 88,-672 88,-672 88,-660 88,-660 88,-654 94,-648 100,-648 100,-648 130,-648 130,-648 136,-648 142,-654 142,-660 142,-660 142,-672 142,-672 142,-678 136,-684 130,-684"/>
<text text-anchor="middle" x="115" y="-663" font-family="Arial" font-size="10.00">Model2</text>
</g>
<!-- ImageIn->Model2 -->
<g id="edge2" class="edge">
<title>ImageIn->Model2</title>
<path fill="none" stroke="black" d="M258.61,-719.89C253.66,-718.49 203.17,-704.07 153.04,-684.57"/>
<polygon fill="black" stroke="black" points="154.36,-681.33 143.77,-680.89 151.78,-687.84 154.36,-681.33"/>
</g>
<!-- Model3 -->
<g id="node6" class="node">
<title>Model3</title>
<path fill="lightcoral" stroke="black" d="M202,-684C202,-684 172,-684 172,-684 166,-684 160,-678 160,-672 160,-672 160,-660 160,-660 160,-654 166,-648 172,-648 172,-648 202,-648 202,-648 208,-648 214,-654 214,-660 214,-660 214,-672 214,-672 214,-678 208,-684 202,-684"/>
<text text-anchor="middle" x="187" y="-663" font-family="Arial" font-size="10.00">Model3</text>
</g>
<!-- ImageIn->Model3 -->
<g id="edge3" class="edge">
<title>ImageIn->Model3</title>
<path fill="none" stroke="black" d="M258.54,-719.66C255.42,-717.36 236.94,-703.76 219.55,-690.96"/>
<polygon fill="black" stroke="black" points="221.99,-688.41 211.86,-685.3 217.84,-694.05 221.99,-688.41"/>
</g>
<!-- Model4 -->
<g id="node7" class="node">
<title>Model4</title>
<path fill="lightcoral" stroke="black" d="M274,-684C274,-684 244,-684 244,-684 238,-684 232,-678 232,-672 232,-672 232,-660 232,-660 232,-654 238,-648 244,-648 244,-648 274,-648 274,-648 280,-648 286,-654 286,-660 286,-660 286,-672 286,-672 286,-678 280,-684 274,-684"/>
<text text-anchor="middle" x="259" y="-663" font-family="Arial" font-size="10.00">Model4</text>
</g>
<!-- ImageIn->Model4 -->
<g id="edge4" class="edge">
<title>ImageIn->Model4</title>
<path fill="none" stroke="black" d="M259,-719.85C259,-718.44 259,-707.41 259,-695.79"/>
<polygon fill="black" stroke="black" points="262.5,-695.82 259,-685.82 255.5,-695.82 262.5,-695.82"/>
</g>
<!-- Model5 -->
<g id="node8" class="node">
<title>Model5</title>
<path fill="lightcoral" stroke="black" d="M346,-684C346,-684 316,-684 316,-684 310,-684 304,-678 304,-672 304,-672 304,-660 304,-660 304,-654 310,-648 316,-648 316,-648 346,-648 346,-648 352,-648 358,-654 358,-660 358,-660 358,-672 358,-672 358,-678 352,-684 346,-684"/>
<text text-anchor="middle" x="331" y="-663" font-family="Arial" font-size="10.00">Model5</text>
</g>
<!-- ImageIn->Model5 -->
<g id="edge5" class="edge">
<title>ImageIn->Model5</title>
<path fill="none" stroke="black" d="M259.46,-719.66C262.58,-717.36 281.06,-703.76 298.45,-690.96"/>
<polygon fill="black" stroke="black" points="300.16,-694.05 306.14,-685.3 296.01,-688.41 300.16,-694.05"/>
</g>
<!-- Model6 -->
<g id="node9" class="node">
<title>Model6</title>
<path fill="lightcoral" stroke="black" d="M418,-684C418,-684 388,-684 388,-684 382,-684 376,-678 376,-672 376,-672 376,-660 376,-660 376,-654 382,-648 388,-648 388,-648 418,-648 418,-648 424,-648 430,-654 430,-660 430,-660 430,-672 430,-672 430,-678 424,-684 418,-684"/>
<text text-anchor="middle" x="403" y="-663" font-family="Arial" font-size="10.00">Model6</text>
</g>
<!-- ImageIn->Model6 -->
<g id="edge6" class="edge">
<title>ImageIn->Model6</title>
<path fill="none" stroke="black" d="M259.39,-719.89C264.34,-718.49 314.83,-704.07 364.96,-684.57"/>
<polygon fill="black" stroke="black" points="366.22,-687.84 374.23,-680.89 363.64,-681.33 366.22,-687.84"/>
</g>
<!-- Model7 -->
<g id="node10" class="node">
<title>Model7</title>
<path fill="lightcoral" stroke="black" d="M490,-684C490,-684 460,-684 460,-684 454,-684 448,-678 448,-672 448,-672 448,-660 448,-660 448,-654 454,-648 460,-648 460,-648 490,-648 490,-648 496,-648 502,-654 502,-660 502,-660 502,-672 502,-672 502,-678 496,-684 490,-684"/>
<text text-anchor="middle" x="475" y="-663" font-family="Arial" font-size="10.00">Model7</text>
</g>
<!-- ImageIn->Model7 -->
<g id="edge7" class="edge">
<title>ImageIn->Model7</title>
<path fill="none" stroke="black" d="M259.66,-719.93C268.18,-719.03 357.03,-709.3 437.05,-684.18"/>
<polygon fill="black" stroke="black" points="437.89,-687.58 446.33,-681.17 435.73,-680.93 437.89,-687.58"/>
</g>
<!-- WeightedConsensusInput -->
<g id="node11" class="node">
<title>WeightedConsensusInput</title>
<path fill="lightyellow" stroke="black" d="M286.68,-612C286.68,-612 231.32,-612 231.32,-612 225.32,-612 219.32,-606 219.32,-600 219.32,-600 219.32,-588 219.32,-588 219.32,-582 225.32,-576 231.32,-576 231.32,-576 286.68,-576 286.68,-576 292.68,-576 298.68,-582 298.68,-588 298.68,-588 298.68,-600 298.68,-600 298.68,-606 292.68,-612 286.68,-612"/>
<text text-anchor="middle" x="259" y="-591" font-family="Arial" font-size="10.00">Model Results</text>
</g>
<!-- Model1->WeightedConsensusInput -->
<g id="edge8" class="edge">
<title>Model1->WeightedConsensusInput</title>
<path fill="none" stroke="black" d="M70.33,-651.56C73.23,-650.29 76.16,-649.08 79,-648 121.77,-631.72 171.79,-617.35 208.24,-607.69"/>
<polygon fill="black" stroke="black" points="208.84,-611.15 217.63,-605.23 207.07,-604.38 208.84,-611.15"/>
</g>
<!-- Model2->WeightedConsensusInput -->
<g id="edge9" class="edge">
<title>Model2->WeightedConsensusInput</title>
<path fill="none" stroke="black" d="M142.42,-651.67C162.31,-642 189.67,-628.7 212.89,-617.41"/>
<polygon fill="black" stroke="black" points="214.4,-620.57 221.86,-613.05 211.34,-614.28 214.4,-620.57"/>
</g>
<!-- Model3->WeightedConsensusInput -->
<g id="edge10" class="edge">
<title>Model3->WeightedConsensusInput</title>
<path fill="none" stroke="black" d="M204.8,-647.7C213.28,-639.45 223.59,-629.43 232.93,-620.35"/>
<polygon fill="black" stroke="black" points="235.34,-622.88 240.07,-613.4 230.46,-617.86 235.34,-622.88"/>
</g>
<!-- Model4->WeightedConsensusInput -->
<g id="edge11" class="edge">
<title>Model4->WeightedConsensusInput</title>
<path fill="none" stroke="black" d="M259,-647.7C259,-640.41 259,-631.73 259,-623.54"/>
<polygon fill="black" stroke="black" points="262.5,-623.62 259,-613.62 255.5,-623.62 262.5,-623.62"/>
</g>
<!-- Model5->WeightedConsensusInput -->
<g id="edge12" class="edge">
<title>Model5->WeightedConsensusInput</title>
<path fill="none" stroke="black" d="M313.2,-647.7C304.72,-639.45 294.41,-629.43 285.07,-620.35"/>
<polygon fill="black" stroke="black" points="287.54,-617.86 277.93,-613.4 282.66,-622.88 287.54,-617.86"/>
</g>
<!-- Model6->WeightedConsensusInput -->
<g id="edge13" class="edge">
<title>Model6->WeightedConsensusInput</title>
<path fill="none" stroke="black" d="M375.58,-651.67C355.69,-642 328.33,-628.7 305.11,-617.41"/>
<polygon fill="black" stroke="black" points="306.66,-614.28 296.14,-613.05 303.6,-620.57 306.66,-614.28"/>
</g>
<!-- Model7->WeightedConsensusInput -->
<g id="edge14" class="edge">
<title>Model7->WeightedConsensusInput</title>
<path fill="none" stroke="black" d="M447.67,-651.56C444.77,-650.29 441.84,-649.08 439,-648 396.23,-631.72 346.21,-617.35 309.76,-607.69"/>
<polygon fill="black" stroke="black" points="310.93,-604.38 300.37,-605.23 309.16,-611.15 310.93,-604.38"/>
</g>
<!-- ContextualIntelligenceAgent -->
<g id="node12" class="node">
<title>ContextualIntelligenceAgent</title>
<path fill="lightcyan" stroke="black" d="M139.75,-540C139.75,-540 68.25,-540 68.25,-540 62.25,-540 56.25,-534 56.25,-528 56.25,-528 56.25,-516 56.25,-516 56.25,-510 62.25,-504 68.25,-504 68.25,-504 139.75,-504 139.75,-504 145.75,-504 151.75,-510 151.75,-516 151.75,-516 151.75,-528 151.75,-528 151.75,-534 145.75,-540 139.75,-540"/>
<text text-anchor="middle" x="104" y="-525" font-family="Arial" font-size="10.00">Contextual</text>
<text text-anchor="middle" x="104" y="-513" font-family="Arial" font-size="10.00">Intelligence Agent</text>
</g>
<!-- WeightedConsensusInput->ContextualIntelligenceAgent -->
<g id="edge27" class="edge">
<title>WeightedConsensusInput->ContextualIntelligenceAgent</title>
<path fill="none" stroke="black" d="M220.29,-575.52C199.87,-566.29 174.61,-554.89 152.85,-545.06"/>
<polygon fill="black" stroke="black" points="154.42,-541.93 143.87,-541 151.54,-548.31 154.42,-541.93"/>
</g>
<!-- BaggingAgent -->
<g id="node13" class="node">
<title>BaggingAgent</title>
<path fill="lightcyan" stroke="black" d="M236.42,-540C236.42,-540 181.58,-540 181.58,-540 175.58,-540 169.58,-534 169.58,-528 169.58,-528 169.58,-516 169.58,-516 169.58,-510 175.58,-504 181.58,-504 181.58,-504 236.42,-504 236.42,-504 242.42,-504 248.42,-510 248.42,-516 248.42,-516 248.42,-528 248.42,-528 248.42,-534 242.42,-540 236.42,-540"/>
<text text-anchor="middle" x="209" y="-519" font-family="Arial" font-size="10.00">BaggingAgent</text>
</g>
<!-- WeightedConsensusInput->BaggingAgent -->
<g id="edge28" class="edge">
<title>WeightedConsensusInput->BaggingAgent</title>
<path fill="none" stroke="black" d="M246.64,-575.7C240.95,-567.73 234.07,-558.1 227.76,-549.26"/>
<polygon fill="black" stroke="black" points="230.76,-547.44 222.1,-541.34 225.06,-551.51 230.76,-547.44"/>
</g>
<!-- DeepEnsembleAgent -->
<g id="node14" class="node">
<title>DeepEnsembleAgent</title>
<path fill="lightcyan" stroke="black" d="M339.19,-540C339.19,-540 278.81,-540 278.81,-540 272.81,-540 266.81,-534 266.81,-528 266.81,-528 266.81,-516 266.81,-516 266.81,-510 272.81,-504 278.81,-504 278.81,-504 339.19,-504 339.19,-504 345.19,-504 351.19,-510 351.19,-516 351.19,-516 351.19,-528 351.19,-528 351.19,-534 345.19,-540 339.19,-540"/>
<text text-anchor="middle" x="309" y="-525" font-family="Arial" font-size="10.00">DeepEnsemble</text>
<text text-anchor="middle" x="309" y="-513" font-family="Arial" font-size="10.00">Agent</text>
</g>
<!-- WeightedConsensusInput->DeepEnsembleAgent -->
<g id="edge29" class="edge">
<title>WeightedConsensusInput->DeepEnsembleAgent</title>
<path fill="none" stroke="black" d="M271.36,-575.7C277.05,-567.73 283.93,-558.1 290.24,-549.26"/>
<polygon fill="black" stroke="black" points="292.94,-551.51 295.9,-541.34 287.24,-547.44 292.94,-551.51"/>
</g>
<!-- EvolutionEnsembleAgent -->
<g id="node15" class="node">
<title>EvolutionEnsembleAgent</title>
<path fill="lightcyan" stroke="black" d="M458.8,-540C458.8,-540 381.2,-540 381.2,-540 375.2,-540 369.2,-534 369.2,-528 369.2,-528 369.2,-516 369.2,-516 369.2,-510 375.2,-504 381.2,-504 381.2,-504 458.8,-504 458.8,-504 464.8,-504 470.8,-510 470.8,-516 470.8,-516 470.8,-528 470.8,-528 470.8,-534 464.8,-540 458.8,-540"/>
<text text-anchor="middle" x="420" y="-525" font-family="Arial" font-size="10.00">EvolutionEnsemble</text>
<text text-anchor="middle" x="420" y="-513" font-family="Arial" font-size="10.00">Agent</text>
</g>
<!-- WeightedConsensusInput->EvolutionEnsembleAgent -->
<g id="edge30" class="edge">
<title>WeightedConsensusInput->EvolutionEnsembleAgent</title>
<path fill="none" stroke="black" d="M298.8,-575.7C320.1,-566.43 346.56,-554.93 369.32,-545.03"/>
<polygon fill="black" stroke="black" points="370.66,-548.27 378.43,-541.07 367.87,-541.85 370.66,-548.27"/>
</g>
<!-- WeightManager -->
<g id="node16" class="node">
<title>WeightManager</title>
<path fill="lightcyan" stroke="black" d="M274.73,-468C274.73,-468 243.27,-468 243.27,-468 237.27,-468 231.27,-462 231.27,-456 231.27,-456 231.27,-444 231.27,-444 231.27,-438 237.27,-432 243.27,-432 243.27,-432 274.73,-432 274.73,-432 280.73,-432 286.73,-438 286.73,-444 286.73,-444 286.73,-456 286.73,-456 286.73,-462 280.73,-468 274.73,-468"/>
<text text-anchor="middle" x="259" y="-453" font-family="Arial" font-size="10.00">Weight</text>
<text text-anchor="middle" x="259" y="-441" font-family="Arial" font-size="10.00">Manager</text>
</g>
<!-- ContextualIntelligenceAgent->WeightManager -->
<g id="edge31" class="edge">
<title>ContextualIntelligenceAgent->WeightManager</title>
<path fill="none" stroke="black" d="M142.71,-503.52C166.51,-492.77 196.87,-479.06 220.61,-468.34"/>
<polygon fill="black" stroke="black" points="221.95,-471.57 229.62,-464.27 219.07,-465.19 221.95,-471.57"/>
</g>
<!-- BaggingAgent->WeightManager -->
<g id="edge32" class="edge">
<title>BaggingAgent->WeightManager</title>
<path fill="none" stroke="black" d="M221.36,-503.7C227.05,-495.73 233.93,-486.1 240.24,-477.26"/>
<polygon fill="black" stroke="black" points="242.94,-479.51 245.9,-469.34 237.24,-475.44 242.94,-479.51"/>
</g>
<!-- DeepEnsembleAgent->WeightManager -->
<g id="edge33" class="edge">
<title>DeepEnsembleAgent->WeightManager</title>
<path fill="none" stroke="black" d="M296.64,-503.7C290.95,-495.73 284.07,-486.1 277.76,-477.26"/>
<polygon fill="black" stroke="black" points="280.76,-475.44 272.1,-469.34 275.06,-479.51 280.76,-475.44"/>
</g>
<!-- EvolutionEnsembleAgent->WeightManager -->
<g id="edge34" class="edge">
<title>EvolutionEnsembleAgent->WeightManager</title>
<path fill="none" stroke="black" d="M379.79,-503.52C354.64,-492.58 322.42,-478.57 297.58,-467.77"/>
<polygon fill="black" stroke="black" points="299.04,-464.59 288.47,-463.81 296.25,-471.01 299.04,-464.59"/>
</g>
<!-- WeightedConsensus -->
<g id="node17" class="node">
<title>WeightedConsensus</title>
<path fill="lightgreen" stroke="black" d="M311.01,-396C311.01,-396 268.99,-396 268.99,-396 262.99,-396 256.99,-390 256.99,-384 256.99,-384 256.99,-372 256.99,-372 256.99,-366 262.99,-360 268.99,-360 268.99,-360 311.01,-360 311.01,-360 317.01,-360 323.01,-366 323.01,-372 323.01,-372 323.01,-384 323.01,-384 323.01,-390 317.01,-396 311.01,-396"/>
<text text-anchor="middle" x="290" y="-381" font-family="Arial" font-size="10.00">Weighted</text>
<text text-anchor="middle" x="290" y="-369" font-family="Arial" font-size="10.00">Consensus</text>
</g>
<!-- WeightManager->WeightedConsensus -->
<g id="edge35" class="edge">
<title>WeightManager->WeightedConsensus</title>
<path fill="none" stroke="black" d="M266.66,-431.7C270.04,-424.07 274.09,-414.92 277.87,-406.4"/>
<polygon fill="black" stroke="black" points="280.96,-408.05 281.81,-397.49 274.56,-405.21 280.96,-408.05"/>
</g>
<!-- OptimizeAgent -->
<g id="node18" class="node">
<title>OptimizeAgent</title>
<path fill="lightcyan" stroke="black" d="M247.51,-324C247.51,-324 210.49,-324 210.49,-324 204.49,-324 198.49,-318 198.49,-312 198.49,-312 198.49,-300 198.49,-300 198.49,-294 204.49,-288 210.49,-288 210.49,-288 247.51,-288 247.51,-288 253.51,-288 259.51,-294 259.51,-300 259.51,-300 259.51,-312 259.51,-312 259.51,-318 253.51,-324 247.51,-324"/>
<text text-anchor="middle" x="229" y="-309" font-family="Arial" font-size="10.00">Weight</text>
<text text-anchor="middle" x="229" y="-297" font-family="Arial" font-size="10.00">Opt Agent</text>
</g>
<!-- WeightedConsensus->OptimizeAgent -->
<g id="edge36" class="edge">
<title>WeightedConsensus->OptimizeAgent</title>
<path fill="none" stroke="black" d="M274.92,-359.7C267.83,-351.56 259.23,-341.69 251.4,-332.7"/>
<polygon fill="black" stroke="black" points="254.11,-330.49 244.9,-325.25 248.83,-335.08 254.11,-330.49"/>
</g>
<!-- ForensicIn -->
<g id="node19" class="node">
<title>ForensicIn</title>
<ellipse fill="lightblue" stroke="black" cx="438" cy="-306" rx="0.36" ry="0.36"/>
</g>
<!-- WeightedConsensus->ForensicIn -->
<g id="edge38" class="edge">
<title>WeightedConsensus->ForensicIn</title>
<path fill="none" stroke="black" d="M323.21,-361.29C356.77,-345.42 406.6,-321.85 427.83,-311.81"/>
<polygon fill="black" stroke="black" points="429.04,-315.11 436.58,-307.67 426.04,-308.78 429.04,-315.11"/>
</g>
<!-- OptimizeAgent->WeightManager -->
<g id="edge37" class="edge">
<title>OptimizeAgent->WeightManager</title>
<path fill="none" stroke="black" d="M232.61,-324.11C237.67,-348.03 246.91,-391.76 253,-420.6"/>
<polygon fill="black" stroke="black" points="249.52,-421.05 255.01,-430.11 256.37,-419.6 249.52,-421.05"/>
</g>
<!-- GradientProcessing -->
<g id="node20" class="node">
<title>GradientProcessing</title>
<path fill="lightpink" stroke="black" d="M329.73,-252C329.73,-252 288.27,-252 288.27,-252 282.27,-252 276.27,-246 276.27,-240 276.27,-240 276.27,-228 276.27,-228 276.27,-222 282.27,-216 288.27,-216 288.27,-216 329.73,-216 329.73,-216 335.73,-216 341.73,-222 341.73,-228 341.73,-228 341.73,-240 341.73,-240 341.73,-246 335.73,-252 329.73,-252"/>
<text text-anchor="middle" x="309" y="-237" font-family="Arial" font-size="10.00">Gradient</text>
<text text-anchor="middle" x="309" y="-225" font-family="Arial" font-size="10.00">Processing</text>
</g>
<!-- ForensicIn->GradientProcessing -->
<g id="edge15" class="edge">
<title>ForensicIn->GradientProcessing</title>
<path fill="none" stroke="black" d="M437.91,-304.95C435.51,-303.65 387.72,-277.71 351.02,-257.8"/>
<polygon fill="black" stroke="black" points="352.8,-254.78 342.34,-253.09 349.46,-260.94 352.8,-254.78"/>
</g>
<!-- MinMaxProcessing -->
<g id="node21" class="node">
<title>MinMaxProcessing</title>
<path fill="lightpink" stroke="black" d="M412.73,-252C412.73,-252 371.27,-252 371.27,-252 365.27,-252 359.27,-246 359.27,-240 359.27,-240 359.27,-228 359.27,-228 359.27,-222 365.27,-216 371.27,-216 371.27,-216 412.73,-216 412.73,-216 418.73,-216 424.73,-222 424.73,-228 424.73,-228 424.73,-240 424.73,-240 424.73,-246 418.73,-252 412.73,-252"/>
<text text-anchor="middle" x="392" y="-237" font-family="Arial" font-size="10.00">MinMax</text>
<text text-anchor="middle" x="392" y="-225" font-family="Arial" font-size="10.00">Processing</text>
</g>
<!-- ForensicIn->MinMaxProcessing -->
<g id="edge16" class="edge">
<title>ForensicIn->MinMaxProcessing</title>
<path fill="none" stroke="black" d="M437.97,-304.95C437.17,-303.74 422.24,-281.01 409.61,-261.79"/>
<polygon fill="black" stroke="black" points="412.55,-259.89 404.13,-253.46 406.7,-263.74 412.55,-259.89"/>
</g>
<!-- ELAPorcessing -->
<g id="node22" class="node">
<title>ELAPorcessing</title>
<path fill="lightpink" stroke="black" d="M515.18,-252C515.18,-252 454.82,-252 454.82,-252 448.82,-252 442.82,-246 442.82,-240 442.82,-240 442.82,-228 442.82,-228 442.82,-222 448.82,-216 454.82,-216 454.82,-216 515.18,-216 515.18,-216 521.18,-216 527.18,-222 527.18,-228 527.18,-228 527.18,-240 527.18,-240 527.18,-246 521.18,-252 515.18,-252"/>
<text text-anchor="middle" x="485" y="-231" font-family="Arial" font-size="10.00">ELAPorcessing</text>
</g>
<!-- ForensicIn->ELAPorcessing -->
<g id="edge17" class="edge">
<title>ForensicIn->ELAPorcessing</title>
<path fill="none" stroke="black" d="M438.03,-304.95C438.85,-303.73 454.25,-280.8 467.19,-261.53"/>
<polygon fill="black" stroke="black" points="469.95,-263.7 472.61,-253.45 464.13,-259.8 469.95,-263.7"/>
</g>
<!-- BitPlaneExtraction -->
<g id="node23" class="node">
<title>BitPlaneExtraction</title>
<path fill="lightpink" stroke="black" d="M593.23,-252C593.23,-252 556.77,-252 556.77,-252 550.77,-252 544.77,-246 544.77,-240 544.77,-240 544.77,-228 544.77,-228 544.77,-222 550.77,-216 556.77,-216 556.77,-216 593.23,-216 593.23,-216 599.23,-216 605.23,-222 605.23,-228 605.23,-228 605.23,-240 605.23,-240 605.23,-246 599.23,-252 593.23,-252"/>
<text text-anchor="middle" x="575" y="-237" font-family="Arial" font-size="10.00">BitPlane</text>
<text text-anchor="middle" x="575" y="-225" font-family="Arial" font-size="10.00">Extraction</text>
</g>
<!-- ForensicIn->BitPlaneExtraction -->
<g id="edge18" class="edge">
<title>ForensicIn->BitPlaneExtraction</title>
<path fill="none" stroke="black" d="M438.1,-304.95C440.72,-303.61 494.86,-275.95 534.26,-255.82"/>
<polygon fill="black" stroke="black" points="535.76,-258.98 543.07,-251.31 532.57,-252.75 535.76,-258.98"/>
</g>
<!-- WaveletBasedNoiseAnalysis -->
<g id="node24" class="node">
<title>WaveletBasedNoiseAnalysis</title>
<path fill="lightpink" stroke="black" d="M692.79,-252C692.79,-252 635.21,-252 635.21,-252 629.21,-252 623.21,-246 623.21,-240 623.21,-240 623.21,-228 623.21,-228 623.21,-222 629.21,-216 635.21,-216 635.21,-216 692.79,-216 692.79,-216 698.79,-216 704.79,-222 704.79,-228 704.79,-228 704.79,-240 704.79,-240 704.79,-246 698.79,-252 692.79,-252"/>
<text text-anchor="middle" x="664" y="-237" font-family="Arial" font-size="10.00">Wavelet</text>
<text text-anchor="middle" x="664" y="-225" font-family="Arial" font-size="10.00">Noise Analysis</text>
</g>
<!-- ForensicIn->WaveletBasedNoiseAnalysis -->
<g id="edge19" class="edge">
<title>ForensicIn->WaveletBasedNoiseAnalysis</title>
<path fill="none" stroke="black" d="M438.07,-304.98C440.94,-304.16 529.49,-278.81 612.03,-252.58"/>
<polygon fill="black" stroke="black" points="612.93,-255.96 621.4,-249.58 610.8,-249.29 612.93,-255.96"/>
</g>
<!-- AnomalyAgent -->
<g id="node25" class="node">
<title>AnomalyAgent</title>
<path fill="lightcyan" stroke="black" d="M502.12,-180C502.12,-180 467.88,-180 467.88,-180 461.88,-180 455.88,-174 455.88,-168 455.88,-168 455.88,-156 455.88,-156 455.88,-150 461.88,-144 467.88,-144 467.88,-144 502.12,-144 502.12,-144 508.12,-144 514.12,-150 514.12,-156 514.12,-156 514.12,-168 514.12,-168 514.12,-174 508.12,-180 502.12,-180"/>
<text text-anchor="middle" x="485" y="-165" font-family="Arial" font-size="10.00">Anomaly</text>
<text text-anchor="middle" x="485" y="-153" font-family="Arial" font-size="10.00">Detection</text>
</g>
<!-- GradientProcessing->AnomalyAgent -->
<g id="edge20" class="edge">
<title>GradientProcessing->AnomalyAgent</title>
<path fill="none" stroke="black" d="M342.1,-219.21C344.77,-218.12 347.43,-217.04 350,-216 381.81,-203.16 417.99,-188.98 444.89,-178.52"/>
<polygon fill="black" stroke="black" points="445.98,-181.85 454.03,-174.97 443.44,-175.33 445.98,-181.85"/>
</g>
<!-- MinMaxProcessing->AnomalyAgent -->
<g id="edge21" class="edge">
<title>MinMaxProcessing->AnomalyAgent</title>
<path fill="none" stroke="black" d="M414.99,-215.7C426.39,-207.11 440.35,-196.61 452.8,-187.24"/>
<polygon fill="black" stroke="black" points="454.86,-190.07 460.74,-181.26 450.65,-184.47 454.86,-190.07"/>
</g>
<!-- ELAPorcessing->AnomalyAgent -->
<g id="edge22" class="edge">
<title>ELAPorcessing->AnomalyAgent</title>
<path fill="none" stroke="black" d="M485,-215.7C485,-208.41 485,-199.73 485,-191.54"/>
<polygon fill="black" stroke="black" points="488.5,-191.62 485,-181.62 481.5,-191.62 488.5,-191.62"/>
</g>
<!-- BitPlaneExtraction->AnomalyAgent -->
<g id="edge23" class="edge">
<title>BitPlaneExtraction->AnomalyAgent</title>
<path fill="none" stroke="black" d="M552.75,-215.7C541.72,-207.11 528.21,-196.61 516.16,-187.24"/>
<polygon fill="black" stroke="black" points="518.54,-184.65 508.5,-181.28 514.24,-190.18 518.54,-184.65"/>
</g>
<!-- WaveletBasedNoiseAnalysis->AnomalyAgent -->
<g id="edge24" class="edge">
<title>WaveletBasedNoiseAnalysis->AnomalyAgent</title>
<path fill="none" stroke="black" d="M622.93,-216.94C593.55,-205.45 554.21,-190.07 525.06,-178.67"/>
<polygon fill="black" stroke="black" points="526.43,-175.44 515.84,-175.06 523.88,-181.96 526.43,-175.44"/>
</g>
<!-- DataLoggingAndOutput -->
<g id="node26" class="node">
<title>DataLoggingAndOutput</title>
<path fill="lightsalmon" stroke="black" d="M510.75,-108C510.75,-108 459.25,-108 459.25,-108 453.25,-108 447.25,-102 447.25,-96 447.25,-96 447.25,-84 447.25,-84 447.25,-78 453.25,-72 459.25,-72 459.25,-72 510.75,-72 510.75,-72 516.75,-72 522.75,-78 522.75,-84 522.75,-84 522.75,-96 522.75,-96 522.75,-102 516.75,-108 510.75,-108"/>
<text text-anchor="middle" x="485" y="-93" font-family="Arial" font-size="10.00">Data Logging</text>
<text text-anchor="middle" x="485" y="-81" font-family="Arial" font-size="10.00">Output</text>
</g>
<!-- AnomalyAgent->DataLoggingAndOutput -->
<g id="edge39" class="edge">
<title>AnomalyAgent->DataLoggingAndOutput</title>
<path fill="none" stroke="black" d="M485,-143.7C485,-136.41 485,-127.73 485,-119.54"/>
<polygon fill="black" stroke="black" points="488.5,-119.62 485,-109.62 481.5,-119.62 488.5,-119.62"/>
</g>
<!-- ResultsDisplay -->
<g id="node27" class="node">
<title>ResultsDisplay</title>
<path fill="lightgreen" stroke="black" d="M500,-36C500,-36 470,-36 470,-36 464,-36 458,-30 458,-24 458,-24 458,-12 458,-12 458,-6 464,0 470,0 470,0 500,0 500,0 506,0 512,-6 512,-12 512,-12 512,-24 512,-24 512,-30 506,-36 500,-36"/>
<text text-anchor="middle" x="485" y="-15" font-family="Arial" font-size="10.00">Results</text>
</g>
<!-- DataLoggingAndOutput->ResultsDisplay -->
<g id="edge40" class="edge">
<title>DataLoggingAndOutput->ResultsDisplay</title>
<path fill="none" stroke="black" d="M485,-71.7C485,-64.41 485,-55.73 485,-47.54"/>
<polygon fill="black" stroke="black" points="488.5,-47.62 485,-37.62 481.5,-47.62 488.5,-47.62"/>
</g>
</g>
</svg> |