OK, I'll take a look at these. On Fri, May 1, 2020 at 11:41 PM Linas Vepstas <[email protected]> wrote:
> I'll be blunt: as to theoretical underpinning, I think that the ideas that > the network generation code is based on is of fundamental importance. > They're deeply related to vast tracts of mathematics and logic, and are, to > a very large degree, virgin unexplored territory, both in terms of > computing and algorithms, but also in terms of fundamental mathematical > theory. (It's taken me a decade to figure this out, its hard to give a > quick synopsis, other than to say that lambda calculus is a special case.) > > I have two (unpublished, but going to be submitted for publication) papers > on this. One is mostly "just words" and some pretty pictures. The other > has formulas. The words-only intro is here: > https://github.com/opencog/atomspace/raw/master/opencog/sheaf/docs/sheaves.pdf > > The with-formulas one is here: > https://github.com/opencog/learn/raw/master/learn-lang-diary/skippy.pdf > > --linas > > On Fri, May 1, 2020 at 6:41 PM qwerty mnbvc <[email protected]> wrote: > >> Thanks for your answers, I will interpret it as that both of you are the >> experts. I should immediately say that I have limited experience with >> research and mediocre programming abilities (and I’m not being modest), but >> that I’d like to improve. >> >> I’m currently being mentored by one of my professors to do a research >> project. My professor has advised me to write a few different research >> proposals and ultimately choose one to work on. >> >> Because the sky is the limit I’ve been using SWOT analysis to help me >> filter those choices and one of my interests is goal planning. That’s why I >> was curious about where OpenCog is at with regards to goal planning and was >> looking for papers on your work. >> >> What do you guys think? Could you offer some suggestions of things that >> might need to be researched and implemented to improve OpenCog’s goal >> planning functionality? Or maybe point me to some papers that would help me >> to come up with my own ideas? >> >> I did see this on the wiki: >> Planning via Temporal Logic & Consistency-Checking >> >> I will look into this idea and keep digging around for others. >> >> Thanks >> Q >> >> On Fri, May 1, 2020 at 8:04 AM Linas Vepstas <[email protected]> >> wrote: >> >>> Sorry, a part two to the below, I hit send too fast. See below. >>> >>> On Fri, May 1, 2020 at 9:51 AM Linas Vepstas <[email protected]> >>> wrote: >>> >>>> >>>> >>>> On Fri, May 1, 2020 at 9:15 AM Ben Goertzel <[email protected]> wrote: >>>> >>>>> Linas, what sort of algorithm is used for the constraint-solving here? >>>>> >>>> >>>> Heh. Marvelous question! For just right now, in version 0.1, its >>>> something I call "aggregation" (its supposed to remind you of DLA >>>> "diffusion-limited aggregation") and its quite "simple": (well not all that >>>> simple under the covers, but easy-to-understand) -- given an existing >>>> collection of unconnected connectors, try attaching one more node. Repeat >>>> until there are no more unconnected connectors. >>>> >>> >>> So, for example, if one of the unconnected connectors is "I'm here on >>> this side of the doorway", and another unconnected connector is "The other >>> wide of the doorway is unoccupied", and one of the nodes is "try opening >>> the door", that node would be attached, thus completing the motion-planning >>> problem. This may sound vague right now, and that's why an explicit demo >>> is needed. I think it should be possible and not hard. >>> >>> >>>> Aggregation is like generalized A*-search. Now, in A*-search, one only >>>> ever attaches a single edge at a time, and the space is always 2D (or 3D I >>>> guess..) In my case, the space doesn't have a dimension (or rather, doesn't >>>> have to have), and you don't have to add just a single edge at a time - you >>>> can add a three-pointed hyperedge, etc. (I guess that now I need to write a >>>> A*-search demo for this...) >>>> >>>> I say "just right now" because it is clear that other algos are >>>> possible; I'm pondering them now but have not yet created any specific >>>> plans. If you care to propose any, let me know. I'm interested in >>>> alternatives, because its clear that its hard to control the shapes of the >>>> generated network by using aggregation. >>>> >>> >>> The source of the constraints is that the connectors are typed. They can >>> be connected only when the types match. I think that this is equivalent to >>> the kinds of constraint problems that ASP (answer-set programming) solves >>> but not sure, I might be imagining things. Since all ASP solvers use SAT >>> solvers under the covers, I guess that using SAT should be possible in this >>> case too, but .. well, version 0.1 so far... >>> >>> I have not thought very much about other ways of specifying constraints. >>> >>> Search guiding is done by weighting. So far, I have only very simple >>> weighting. I imagine that ECAN can be layered on this, but it would >>> require a ground-up new implementation of ECAN. Other weighting and guiding >>> schemes are possible. Anything that returns a number that says "hey this is >>> not a fruitful direction to search in". >>> >>>> >>>> However, I think that the aggregation algo is plenty good enough for >>>> natural language -- I'm thinking of using this to replace sureal. As >>>> "starting points" you can specify "to eat" and "Ben" and "pizza" and it >>>> should generate all sentences with those words in it (in whatever word >>>> order is correct, for the specified formation rules). So far, only a few >>>> tiny examples of it doing this, with extremely limited vocabulary. Its >>>> version 0.1... >>>> >>>> --linas >>>> >>>> >>>> >>>> >>>> >>>> >>>>> On Fri, May 1, 2020 at 3:11 AM Linas Vepstas <[email protected]> >>>>> wrote: >>>>> > >>>>> > There is also the brand new version 0.1 generator code. It can be >>>>> thought of as kind-of a planner, in that a set of "start points" can be >>>>> specified, and a set of "end points" as well, and it will generate all >>>>> paths between the two. >>>>> > >>>>> > More precisely, it will generate a network of all possible >>>>> interconnected paths between the endpoints, with the intervening network >>>>> subject to rules of formation. So its not only a path planner, but also a >>>>> constraint solver. >>>>> > >>>>> > I have not yet written any demos showing "classical" planning, such >>>>> as "to get through a doorway, you must first open the door", but this >>>>> would >>>>> be an excellent example to have. If you're interested, I'd be happy to >>>>> help >>>>> you write it >>>>> > >>>>> > It currently works for various simple demos, but that's it - its >>>>> version 0.1 - (so I don't even know if the "open the door" example can >>>>> work. I think it will...) Here. https://github.com/opencog/generate >>>>> > >>>>> > Ben, since you didn't mention the generator in the list below, I'm >>>>> thinking that you're not really fully aware of it, or of what it can do >>>>> (or >>>>> rather, the goals of what it can do). Take a moment of pondering it ... >>>>> > >>>>> > --linas >>>>> > >>>>> > On Fri, May 1, 2020 at 12:54 AM Ben Goertzel <[email protected]> >>>>> wrote: >>>>> >> >>>>> >> OCPlanner is deprecated a while ago and not yet replaced! >>>>> >> >>>>> >> OpenPsi handles basic goal/context/procedure based action selection >>>>> >> but not planning except at the trivial level >>>>> >> >>>>> >> PLN logic works OK now (with scalability issues though) and could be >>>>> >> used as the basis for a temporal logic implementation of planning, >>>>> but >>>>> >> that needs to be done still >>>>> >> >>>>> >> ben >>>>> >> >>>>> >> On Thu, Apr 30, 2020 at 9:48 PM qwerty mnbvc <[email protected]> >>>>> wrote: >>>>> >> > >>>>> >> > Hello, >>>>> >> > >>>>> >> > I'm a student and I would like to learn more about OpenCog. What >>>>> module deals with goal planning in general? Not like motion planning. Is >>>>> it >>>>> OpenPSI or maybe OCPlanner? I noticed that OCPlanner was implemented by >>>>> Shujing Ke, is this the "expert" I should reach out to for more info? I >>>>> haven't been able to find any papers about OCPlanner (theory or >>>>> otherwise). >>>>> >> > >>>>> >> > Thanks >>>>> >> > Q >>>>> >> > >>>>> >> > -- >>>>> >> > You received this message because you are subscribed to the >>>>> Google Groups "opencog" group. >>>>> >> > To unsubscribe from this group and stop receiving emails from it, >>>>> send an email to [email protected]. >>>>> >> > To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/opencog/3c5ff62b-be11-46cc-81c9-89b06e14f218%40googlegroups.com >>>>> . >>>>> >> >>>>> >> >>>>> >> >>>>> >> -- >>>>> >> Ben Goertzel, PhD >>>>> >> http://goertzel.org >>>>> >> >>>>> >> “The only people for me are the mad ones, the ones who are mad to >>>>> >> live, mad to talk, mad to be saved, desirous of everything at the >>>>> same >>>>> >> time, the ones who never yawn or say a commonplace thing, but burn, >>>>> >> burn, burn like fabulous yellow roman candles exploding like spiders >>>>> >> across the stars.” -- Jack Kerouac >>>>> >> >>>>> >> -- >>>>> >> You received this message because you are subscribed to the Google >>>>> Groups "opencog" group. >>>>> >> To unsubscribe from this group and stop receiving emails from it, >>>>> send an email to [email protected]. >>>>> >> To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/opencog/CACYTDBdpfuc8%3DSioiuvA9fqrhcHREtboxSVzBHQnZWWnF35tcA%40mail.gmail.com >>>>> . >>>>> > >>>>> > >>>>> > >>>>> > -- >>>>> > cassette tapes - analog TV - film cameras - you >>>>> > >>>>> > -- >>>>> > You received this message because you are subscribed to the Google >>>>> Groups "opencog" group. >>>>> > To unsubscribe from this group and stop receiving emails from it, >>>>> send an email to [email protected]. >>>>> > To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/opencog/CAHrUA37BESN-yqtOgH_9z663Zy%3Dm47D9ddbpB1OHhLkexxnxiQ%40mail.gmail.com >>>>> . >>>>> >>>>> >>>>> >>>>> -- >>>>> Ben Goertzel, PhD >>>>> http://goertzel.org >>>>> >>>>> “The only people for me are the mad ones, the ones who are mad to >>>>> live, mad to talk, mad to be saved, desirous of everything at the same >>>>> time, the ones who never yawn or say a commonplace thing, but burn, >>>>> burn, burn like fabulous yellow roman candles exploding like spiders >>>>> across the stars.” -- Jack Kerouac >>>>> >>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "opencog" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to [email protected]. >>>>> To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/opencog/CACYTDBdpaZuvWufpczv7E7pGxtQpZwpKrm3ADvNPoU3S%2BoOOLg%40mail.gmail.com >>>>> . >>>>> >>>> >>>> >>>> -- >>>> cassette tapes - analog TV - film cameras - you >>>> >>> >>> >>> -- >>> cassette tapes - analog TV - film cameras - you >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "opencog" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/opencog/CAHrUA37VST2NsJkTkHTtJ%3D3Qo6vxcFzC-2Lg38b%2B9rUnp5bpfA%40mail.gmail.com >>> <https://groups.google.com/d/msgid/opencog/CAHrUA37VST2NsJkTkHTtJ%3D3Qo6vxcFzC-2Lg38b%2B9rUnp5bpfA%40mail.gmail.com?utm_medium=email&utm_source=footer> >>> . >>> >> -- >> You received this message because you are subscribed to the Google Groups >> "opencog" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/opencog/CALsVKVKvqwq9Frj7rVuv4K7bXL%2B9mw80AEedSojYDyPLMPdN9Q%40mail.gmail.com >> <https://groups.google.com/d/msgid/opencog/CALsVKVKvqwq9Frj7rVuv4K7bXL%2B9mw80AEedSojYDyPLMPdN9Q%40mail.gmail.com?utm_medium=email&utm_source=footer> >> . >> > > > -- > cassette tapes - analog TV - film cameras - you > > -- > You received this message because you are subscribed to the Google Groups > "opencog" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/opencog/CAHrUA36YzupO%3Dzs9qvKLPJFybDaFg84L4EKr1fz84pzepfLNWw%40mail.gmail.com > <https://groups.google.com/d/msgid/opencog/CAHrUA36YzupO%3Dzs9qvKLPJFybDaFg84L4EKr1fz84pzepfLNWw%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "opencog" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/opencog/CALsVKVJmjWkEPB%2BJSf7i9aH%3DUJ%3DEN29u_iHcTCy62%3DxP%3Di%3DW6g%40mail.gmail.com.
