Scénario de test & Cas d'usage
Análisis de redes y algoritmos de grafos.
Descubrir todas las acciones de optNetworkGenera un gran conjunto de datos simulando una red de proveedores. Se crean varios clústeres de proveedores interconectados a través de unos pocos proveedores centrales.
| 1 | DATA mycas.RedProveedores; |
| 2 | DO i = 1 to 500; |
| 3 | from = 'Factory_A'; |
| 4 | to = 'Supplier_' || left(put(i, 8.)); |
| 5 | OUTPUT; |
| 6 | END; |
| 7 | DO i = 501 to 1000; |
| 8 | from = 'Factory_B'; |
| 9 | to = 'Supplier_' || left(put(i, 8.)); |
| 10 | OUTPUT; |
| 11 | END; |
| 12 | /* Crear puntos de articulación */ |
| 13 | from = 'Supplier_250'; to = 'CentralHub_1'; OUTPUT; |
| 14 | from = 'Supplier_750'; to = 'CentralHub_1'; OUTPUT; |
| 15 | from = 'CentralHub_1'; to = 'MainFactory'; OUTPUT; |
| 16 | RUN; |
| 1 | PROC CAS; |
| 2 | ACTION optNetwork.biconnectedComponents / |
| 3 | links={name='RedProveedores'} |
| 4 | distributed=TRUE |
| 5 | nThreads=4 |
| 6 | outNodes={name='ProveedoresCriticos', replace=true} |
| 7 | out={name='ResumenComponentes', replace=true}; |
| 8 | RUN; |
| 9 | QUIT; |
| 1 | PROC PRINT DATA=mycas.ProveedoresCriticos; |
| 2 | where artpoint = 1; |
| 3 | RUN; |
| 4 | PROC PRINT DATA=mycas.ResumenComponentes; |
| 5 | RUN; |
La ejecución debe completarse con éxito en un tiempo razonable. La tabla `mycas.ProveedoresCriticos` debe identificar a 'Supplier_250', 'Supplier_750' y 'CentralHub_1' como puntos de articulación. La tabla `mycas.ResumenComponentes` debe mostrar la existencia de varios componentes biconexos grandes, correspondientes a los clústeres de proveedores y fábricas, conectados a través de los hubs.