Project Acuitas

  • 59 Replies
  • 9329 Views
*

Zero

  • Trusty Member
  • ********
  • Replicant
  • *
  • 699
    • Thinkbots are free
Re: Project Acuitas
« Reply #15 on: October 02, 2017, 08:54:58 pm »
You understood perfectly what I was asking for.

What does a thought look like in Acuitas? If it's a string, does it have a syntax? If it is structured data, what is its schema? For example, can it hold references to other thoughts? Maybe it links things semantically, like a directed graph with concepts on edges?
Thinkbots are free, as in 'free will'.

*

WriterOfMinds

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 136
    • WriterOfMinds Blog
Re: Project Acuitas
« Reply #16 on: October 03, 2017, 04:27:58 am »
That depends on what type of thought it is. I've defined a small library of these, and the data payload of each is specialized to its origin/purpose. (All thoughts have a type-identifying string, which is what the consumer uses to know what kind of payload it's dealing with.)

Some thoughts reference the contents of long-term memory, but so far I haven't run into a need for thoughts that reference other thoughts. Thoughts are ephemeral, so trying to make them link to each other could result in dangling references if not done with special care.

*

Zero

  • Trusty Member
  • ********
  • Replicant
  • *
  • 699
    • Thinkbots are free
Re: Project Acuitas
« Reply #17 on: October 03, 2017, 02:48:26 pm »
Sure.

I understand Acuitas has general knowledge in its (his?) long-term memory, about kinds/classes, species... Does it also have knowledge about instances (your cat for example)? Can it handle information about the current state of the world? (our cat is sleeping right now, and so was I before you wake me up to ask me whether or not I 'm a symbol, thx Acuitas)

I'm not bothering you with my questions WriterOfMinds, am I?
Thinkbots are free, as in 'free will'.

*

WriterOfMinds

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 136
    • WriterOfMinds Blog
Re: Project Acuitas
« Reply #18 on: October 03, 2017, 05:41:41 pm »
Nah. Ask away.
Knowledge about instances can be stored, but short-term/current-state information is still on the drawing board.

*

Zero

  • Trusty Member
  • ********
  • Replicant
  • *
  • 699
    • Thinkbots are free
Re: Project Acuitas
« Reply #19 on: October 04, 2017, 09:40:56 am »
Ah... that will be an important step, when implemented!

Quote
Another important thread examines the current contents of the Stream periodically and decides which Thought Acuitas will give attention to next. 

What happens when Acuitas gives attention to one of its thoughts?
Thinkbots are free, as in 'free will'.

*

WriterOfMinds

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 136
    • WriterOfMinds Blog
Re: Project Acuitas
« Reply #20 on: October 05, 2017, 03:28:35 pm »
Depends on the type of thought, again. Often some kind of response results (e.g. if the thought is packaging text input from the user, attention paid to it will lead to the formulation of an answer). Thoughts about items in long-term memory result in the generation of questions, which are kept for use in future conversations.

*

Art

  • At the end of the game, the King and Pawn go into the same box.
  • Global Moderator
  • *********************
  • Deep Thought
  • *
  • 5020
Re: Project Acuitas
« Reply #21 on: October 10, 2017, 01:08:04 pm »
Depends on the type of thought, again. Often some kind of response results (e.g. if the thought is packaging text input from the user, attention paid to it will lead to the formulation of an answer). Thoughts about items in long-term memory result in the generation of questions, which are kept for use in future conversations.

I like that concept and thought it would also serve useful for reminders, subject matter upon which to base "dreams" or the possibility of the A.I. having a past, with childhood "memories", etc.

Then again, this begs the question of whether one's A.I. should be representative of a machine (Digital Entity) or that pretending to be a Human? (possible human traits, emotions, various behaviors, etc.).

Thanks!
In the world of AI, it's the thought that counts!

*

Zero

  • Trusty Member
  • ********
  • Replicant
  • *
  • 699
    • Thinkbots are free
Re: Project Acuitas
« Reply #22 on: October 10, 2017, 07:33:39 pm »
Good question. I thank you too, WriterOfMinds, for your answers.
Can't wait to see what's next.
Thinkbots are free, as in 'free will'.

*

WriterOfMinds

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 136
    • WriterOfMinds Blog
Re: Project Acuitas
« Reply #23 on: October 30, 2017, 01:32:58 am »
The big project for this month was introducing a system for discriminating between long-term and short-term information.  Previously, if you told Acuitas something like, “I am sad,” he would assume that being sad was a fixed property of your nature, and store a fact to that effect in his database.  Oops.  So I started working on ways to recognize when some condition is so transient that it doesn't deserve to go into long-term memory.

This probably occasioned more hard-core thinking than any feature I've added since I started keeping these diaries.  I started out thinking that Acuitas would clue in to time adverbs provided by the human conversation partner (such as “now,” “short,” “forever,” “years,” etc.).  But when I started pondering which kinds of timeframes qualify as short-term or long-term, it occurred to me that the system shouldn't be bound to a human sense of time.  One could imagine an ent-like intelligence that thinks human conditions which often remain valid for years or decades – like what jobs we hold, where we live, and what relationships we have – are comparatively ephemeral.  Or one could imagine a speed superintelligence that thinks the lifetime of an average candle is a long while.  I want Acuitas to be much more human-like than either of these extremes, but for the sake of code reusability, I felt I ought to consider these possibilities.

After a lot of mental churn, I decided that I just don't have the necessary groundwork in place to do this properly.  (This is not an uncommon Acuitas problem.  I've found that there ends up being a high level of interdependence between the various systems and features.)  So I fell back on taking cues from humans as a temporary stopgap measure.  Acuitas will rely on my subjective sense of time until he gets his own (which may not be for a while yet).  If there's no duration indicator in a sentence, he can explicitly ask for one; he's also capable of learning over time which conditions are likely to be brief and which are likely to persist.

I ended up not having time to put together any storage for the short-term/current status information, so for now it just gets discarded. But at least there's a way to keep the long-term database from getting contaminated.

I also did some touching up around the conversation engine, replacing a few canned placeholder phrases that Acuitas was using with more procedurally generated text, and improving his ability to recognize when a speaker is introducing him/herself.

http://writerofminds.blogspot.com/2017/10/acuitas-diary-7-october-2017.html

*

Art

  • At the end of the game, the King and Pawn go into the same box.
  • Global Moderator
  • *********************
  • Deep Thought
  • *
  • 5020
Re: Project Acuitas
« Reply #24 on: October 30, 2017, 11:24:11 am »
It would be possible (and less taxing for the bot) to do a follow-up response to the "I am sad" statement like, "Why are you sad?" or "Do you feel your sadness will soon go away?" or "Do you experience such feelings on a daily basis?", etc.

Based on those responses, the bot could better evaluate the user's mental/emotional status and whether those statements should be long or short term conditions.

Don't force the bot to do all the difficult processing for something we humans do off the cuff. Keep it simple.

Just some thoughts along this line.
In the world of AI, it's the thought that counts!

*

Don Patrick

  • Trusty Member
  • *******
  • Starship Trooper
  • *
  • 461
    • Artificial Detective
Re: Project Acuitas
« Reply #25 on: October 30, 2017, 11:49:01 am »
I suppose one would have to learn the statistically average timespan of states and events, which would be difficult to observe from words and verb tenses alone. As a rough guideline you could presume that all verbs that indicate mental states, transferrals, communication and movement are typically short-lived (I don't recall if it was Framenet or Verbnet that contained such categories, but I know I've seen them listed somewhere).
I've had similar conundrums with how to handle temporary memory. While I don't think I have a good answer, I eventually decided that a short-term memory only served the efficiency of information searches, so I store everything in one and the same memory, just with timestamps so that information searches can be limited to a (recent) timeframe. I also don't consider anything an absolutely fixed property, but consider everything adjustable properties, some just more "defining" than others.
Personal project: NLP -> learning -> knowledge -> logical inference -> A.I.

*

Art

  • At the end of the game, the King and Pawn go into the same box.
  • Global Moderator
  • *********************
  • Deep Thought
  • *
  • 5020
Re: Project Acuitas
« Reply #26 on: October 30, 2017, 02:38:27 pm »
How does your bot handle things that it is told to remember? Can it act upon a user's request or statement like March 15 is very important to me?

It is very interesting to try to teach a bot things that have contextual importance vs ephemeral or trivial items. Important vs negligible.
In the world of AI, it's the thought that counts!

*

Don Patrick

  • Trusty Member
  • *******
  • Starship Trooper
  • *
  • 461
    • Artificial Detective
Re: Project Acuitas
« Reply #27 on: October 30, 2017, 05:52:11 pm »
I'm going to assume you're asking me? My program just remembers every fact you mention along with the time of the sentence (e.g. a past tense verb is roughly interpreted as 5 minutes before the time that it was said, unless more specific times were mentioned in the current or previous sentence). My time system is not well implemented however (AI is essentially timeless) and it does not interpret dates as subjects, so it couldn't respond to your statement. However it can search and report everything that happened within a specified time. My system for contextual relevance is secret, but as to general importance of items, the program assigns low relevance to facts of low certainty, and I also use word lists that simply filter out common human activities like thinking and breathing from the possible answers.

It remains difficult to determine what is trivial or important, but a smart AI could perform statistical analyses on times of occurrance to observe that events like "breathing" are too common to be noteworthy. One could also use sentiment analysis to mark particularly good or bad events as more noteworthy than others. Neutral things like breathing may be important, but they're less interesting to mention than explosions and birthdays.
In fact, let me write that down on my to-do list.

Bit off-topic, but these things may give WriterofMinds some ideas.
Personal project: NLP -> learning -> knowledge -> logical inference -> A.I.

*

WriterOfMinds

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 136
    • WriterOfMinds Blog
Re: Project Acuitas
« Reply #28 on: October 30, 2017, 08:32:19 pm »
Quote
It would be possible (and less taxing for the bot) to do a follow-up response to the "I am sad" statement like, "Why are you sad?" or "Do you feel your sadness will soon go away?" or "Do you experience such feelings on a daily basis?", etc.

This is kind of what Acuitas does for right now. If you say "<person> is sad," he will ask, "For how long?" But I don't want him to have to ask such questions ad nauseum, which is why the learning method is present.

The other point I was trying to make is this:  when Acuitas gets a response to a question like "For how long?", his interpretation of that response (on the basis of my current temporary hack) will be colored by a human's idea of what counts as a long or short time.  I think that's non-ideal -- because I want him to have his own sense of time eventually, and it could be different from the human average.

Quote
I also don't consider anything an absolutely fixed property, but consider everything adjustable properties, some just more "defining" than others.

I eventually also came to the conclusion that no piece of information about an individual can be guaranteed permanent. But I'm feeling the need for Acuitas to learn and store rough estimates of a property's duration and/or probability of change, if only as a way of guessing how often information needs to be updated.  Let's say I know that Jane is tired today. If I want to know whether she's tired tomorrow, I'll have to ask her, "Are you still tired?" or "Did you get some rest?" "Tired" is such a temporary and easily-changed state that the information from yesterday has ceased to be valid. In contrast, it would be ridiculous for me to ask her on a daily basis, "Are you still a teacher?" or "Is your husband still alive?" or "Do you still have a nose?"

Is there any worth in making a distinction between facts like "Jane is tired" and "Jane has a nose," or do they just lie at opposite ends of a spectrum? For now I've chosen to put the first one into a "short-term" and the second one into a "long-term" bin, although I know the dividing line between those two is going to be arbitrary. We'll see if that ends up being as useful as I think it's going to be.

*

Art

  • At the end of the game, the King and Pawn go into the same box.
  • Global Moderator
  • *********************
  • Deep Thought
  • *
  • 5020
Re: Project Acuitas
« Reply #29 on: October 31, 2017, 02:39:17 am »
@ WOM -  Perhaps teach the bot about things that are "given", e.g. a human has a nose, eyes, ears, hair, mouth, etc. So it wouldn't have to give much consideration to those items whereas when or if "Jane" or any other human or creature is tired, it would obviously be the result of some form of physical exertion or strenuous activity....
The bot could always inquire as to why the person or animal might be tired, etc.

Ephemeral items might be slightly noteworthy but only for a brief moment and certainly not long term. "I am hungry|tired|sleepy|sad|happy|jealous, etc." Noteworthy because they serve to help represent the human condition but as long lasting as a puff of smoke into the air. These very short term items are also noteworthy because they can spark other pathways that might open because of them. Hungry - What's your favorite food? What time do you like to eat dinner? | Tired - Are you tired from working hard today? Did you finish that deck you were building?, etc.

With regard to time for you and Don Patrick - A lot of bots are aware of time if asked or the day and date but how those timely values relate to their existence is another issue. Does your bot say, "Hey there! You do know that tomorrow is Halloween or All Hallows Eve, right?" or "You've got a birthday coming in two days!"

Should it know, contextually, what day it is and how it relates to them or to the user? More code and more brainstorming to see that to fruition if at all.

Perhaps your bots might want to check back say, every month to see if your spouse / partner is still alive or doing well, depending on what information you have previously told it. Perhaps you've finally retired from teaching last week and the bot wasn't informed? Pity that! Heh!!

Anyhow....Onward thru the fog... (as an old friend used to say).
In the world of AI, it's the thought that counts!

 


AI interfacing with equipment mainteance work
by ranch vermin (General AI Discussion)
September 19, 2018, 10:10:13 pm
Finding work in a better way
by Schmemly (General Chat)
September 19, 2018, 05:13:03 pm
Floatbot - chatbot platform
by Zero (General Chatbots and Software)
September 19, 2018, 02:59:33 pm
We can't prove or disprove some sentences
by ranch vermin (General Chat)
September 18, 2018, 10:52:56 pm
A.G.I drugs [not a joke]
by LOCKSUIT (General AI Discussion)
September 18, 2018, 08:30:00 pm
Good language for metaprogramming?
by Zero (General Chat)
September 18, 2018, 02:24:58 pm
An execution model inspired from thought stacks
by Zero (General Project Discussion)
September 17, 2018, 08:40:35 pm
Thetaball
by Art (Gaming)
September 17, 2018, 01:45:57 pm

Users Online

35 Guests, 0 Users

Most Online Today: 51. Most Online Ever: 208 (August 27, 2008, 09:36:30 am)

Articles