You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/src/performancetips.md
+1-49Lines changed: 1 addition & 49 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -174,52 +174,4 @@ Solution space properties computable on GPU includes
174
174
* [`CountingAll`](@ref)
175
175
* [`CountingMax`](@ref) and [`CountingMin`](@ref)
176
176
* [`GraphPolynomial`](@ref)
177
-
* [`SingleConfigMax`](@ref) and [`SingleConfigMin`](@ref)
178
-
179
-
## Sum product representation for configurations
180
-
[`SumProductTree`](@ref) can use polynomial memory to store exponential number of configurations.
181
-
It is a sum-product expression tree to store [`ConfigEnumerator`](@ref) in a lazy style, where configurations can be extracted by depth first searching the tree with the `Base.collect` method.
182
-
Although it is space efficient, it is in general not easy to extract information from it due to the exponential large configuration space.
183
-
Directed sampling is one of its most important operations, with which one can get some statistic properties from it with an intermediate effort. For example, if we want to check some property of an intermediate scale graph, one can type
184
-
```julia
185
-
julia> graph = random_regular_graph(70, 3)
186
-
187
-
julia> problem = IndependentSet(graph; optimizer=TreeSA());
188
-
189
-
julia> tree = solve(problem, ConfigsAll(; tree_storage=true))[];
190
-
16633909006371
191
-
```
192
-
If one wants to store these configurations, he will need a hard disk of size 256 TB!
193
-
However, this sum-product binary tree structure supports efficient and unbiased direct sampling.
194
-
195
-
```julia
196
-
samples = generate_samples(tree, 1000);
197
-
```
198
-
199
-
With these samples, one can already compute useful properties like Hamming distance (see [`hamming_distribution`](@ref)) distribution.
[`SumProductTree`](@ref) can use polynomial memory to store exponential number of configurations.
3
+
It is a sum-product expression tree to store [`ConfigEnumerator`](@ref) in a lazy style, where configurations can be extracted by depth first searching the tree with the `Base.collect` method.
4
+
Although it is space efficient, it is in general not easy to extract information from it due to the exponential large configuration space.
5
+
Directed sampling is one of its most important operations, with which one can get some statistic properties from it with an intermediate effort. For example, if we want to check some property of an intermediate scale graph, one can type
6
+
```julia
7
+
julia> graph =random_regular_graph(70, 3)
8
+
9
+
julia> problem =IndependentSet(graph; optimizer=TreeSA());
10
+
11
+
julia> tree =solve(problem, ConfigsAll(; tree_storage=true))[];
12
+
16633909006371
13
+
```
14
+
If one wants to store these configurations, he will need a hard disk of size 256 TB!
15
+
However, this sum-product binary tree structure supports efficient and unbiased direct sampling.
16
+
17
+
```julia
18
+
samples =generate_samples(tree, 1000);
19
+
```
20
+
21
+
With these samples, one can already compute useful properties like Hamming distance (see [`hamming_distribution`](@ref)) distribution.
0 commit comments