In example implementations of the present disclosure, processing of a specification and/or other parameters generates a NoC with flows that meet specification requirements. In example implementations, the specification is processed to determine the characteristics of the NoC to be generated, the characteristics of flow (e.g. number of hops, bandwidth requirements, type of flow such as request/response, etc.), flow mapping decision strategy (e.g., limit on number of new virtual channels to be constructed, using of existing VCs, yx/xy mapping), and desired strategy to be used for how the flows are to be mapped to the network. In such processing, the machine learning algorithm can provide a determination as to if a flow is acceptable or not in view of the specification (e.g., via a Q score). In example implementations, the machine learning decisions can be applied on a flow by flow basis, and can involve supervised learning and unsupervised learning algorithms.