There have been a few questions (and subsequent answers) regarding the generation of networks (graphs) with a fixed edge density (see e.g., here and here), and these are mostly based on the methods put forward by Bansal et al. (2009). Yet, for my specific problem I am interested in generating networks with a desired global clustering coefficient and a desired average path length.
The path length here is the average (shortest) distance between each nodes, which is therefore expensive to compute.
In principle, I would like to fix the average path length while being able to ‘tune’ the clustering coefficient to be (close to a) desired value, or vice versa.
I have already explored preferential attachment schemes, which often result in no clustering (i.e., no triangles, which one can see for example for the Barabasi-Albert with m=1), yet I cannot find preferential attachment schemes that result in a desired, arbitrary global clustering coefficient.
I can of course resort to Simulated Annealing (SA) schemes, that in principle should allow me to search for graphs with any desired structure, however I as computing the average path length is expensive my (naive) implementations already take substantial time for small networks with ~100 nodes. Ideally, I would like to generate many networks with, say, ~1000 nodes, so finding these graphs would of course not take too much time.
Outside of SA, are there known algorithms and/or (edge) rewiring procedures that can change either the global clustering coefficient or the average path length, but not both? If SA is the only option, is there a way to drastically reduce the computation of the average path length such that it can be incrementally updated?