OverviewFilesCommitsIssuesDocsReleasesPeers

opencog-generate commits / 1c12897

Update the stale README
1c12897da4e77132e65e743848ad59d8bb3d18ed
by Linas Vepstas <linasvepstas@gmail.com> · 2020-04-23T01:37:40.000Z

Changed files (1) +40 -7

opencog/generate/README.md +40 -7
……@@ -134,19 +134,52 @@ is no weighting or ranking involved in the drawing of pieces.
134134
135135## The `RandomCallback`
136136
137Under construction. Will provide ranking. Will provide random weighted
138draws.
137Provides ranking. Provides random weighted draws. Need writeup here
138describing it.
139
140## Alternatives to Aggregation
141There are other ways of creating network graphs. The aggregation
142algorithm is an implementation of the idea that networks can be
143"assembled", and that the assembly process is very much like assembling
144a jogsaw puzzle: start with an edge-piece, and keep adding more and more
145pieces, until one is done. But there are other possibilities.
146
147* Changing priorities during aggregation. So during early stages of
148 aggregation, if one consistntly picks high-arity pieces, one risks
149 combinatoric explosion and an infinite graph. To avoid this, the
150 probabilities could be adjusted to pick only lower-arity pieces,
151 as the number of unconnected connectors gets too large.
152
153* Swapping out pieces during aggregation. If there are too many
154 unconnected connectors, one could hunt for pieces that are identical,
155 in all respects, except that they have fewer connectors. These can
156 then be swaped in place of the bigger connector.
157
158* Like the above, but making the network more sparse, by activly cutting
159 links.
160
161* Growing a network. Inverse of the above: given an existing connected
162 edge, break it and insert a new piece in its place. This is
163 interesting because it is more "botanical" in it's process - its
164 actual growth.
165
166* Growth could be governed by explicit choices of substitution rules
167 (e.g. Lindenmeyer systems) and very specifically, the wealth of work
168 from Przemyslaw Prusinkiewicz at http://algorithmicbotany.org/papers/
169
170* The Prusinkiewicz work can be thought of as work with structure
171 grammars (e.g. BNF forms, classic Chomsky context-free grammars)
172 whereas the work here is with dependency grammars. These two grammar
173 types are "in principle" interconvertible, but behave quite
174 differently. A wealk of possibilities open up by stealing the
175 Prusinkiewicz ideas and applying them to dependency grammars.
139176
140177## To-do
141178
142179* Add weights to the polar-pairs list.
143* Add weights to the puzzle-pieces and/or connectors.
144* Add weighted random draw
145180* Allow pieces to be drawn at most N times, for any given piece.
146181* Force planar graphs
147182* Control recursion when there are degenerate link-types.
148* Fix the one-connector-type-per-disjunct issue, see issue #4.
149
150And, of course... mandatory seeds!
183 (See issue #6)
151184
152185THE END. Thanks for paying attention!