v0.7.0
Enhancements
- Add
cmaesas anoptlibmethod, use it by default for'auto'preset if available since ih has less overhead thanoptuna. - Add
HyperOptimizer.plot_parameters_parallelfor plotting the sampled parameter space of a hyper optimizer method in parallel coordinates. - Add
nconinterface. - Add
utils.save_to_jsonandutils.load_from_jsonfor saving and loading contractions to/from json. - Add
examples/benchmarkswith various json benchmark contractions - Add
utils.networkx_graph_to_equationfor converting a networkx graph to cotengra styleinputs,outputandsize_dict. - Add
"max"as a validminimizeoption foroptimize_optimal(also added tocotengrust), which minimizes the single most expensive contraction (i.e. the cost scaling) - Add
RandomOptimizer, a fully random optimizer for testing and initialization purposes. It can be used withoptimize="random"but is not recommended for actual optimization. - Add
PathOptimizerto top-level namespace. ContractTreeCompressed.from_path: add theautocompleteoption- Add option
overwrite="improved"to reusable hyper optimizers, which always searches but only overwrites if the new tree is better, allowing easy incremental refining of a collection of trees. - einsum via bmm (
implementation="cotengra") avoids using einsum for transposing inputs. - add example {ref}
ex_extract_contractiondoc
Bug fixes
- Fix
HyperGraph.plotwhen nodes are not labelled as consecutive integers (#36) - Fix
ContractionTreeCompressed.windowed_reconfigurenot propagating the default objective - Fix
kahyparpath optimization when no edges are present (#48)
Full Changelog: v0.6.2...v0.7.0