dupa

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - snowman

Pages: [1] 2 3 ... 62
1
Ultra Hal Assistant File Sharing Area / Re: Snowman: Question????
« on: December 27, 2016, 10:45:11 pm »

I don't remember what I did, or didn't do, with the Matrix stuff. Please send it, or a link, to my email so I can look at it first. I know there are some things that might be still good... and some pointless junk. ;)

aaron@minervaai.com

2
Ultra Hal Assistant File Sharing Area / Re: Snowman: Many thanx
« on: December 26, 2016, 02:31:01 pm »
One of the problems I found with UltraHal was that there was no simple way of sending info to Hal and no way of directly triggering him. Although, I still found a way, but it sure wasn't elegant. You can use the SendKeys class in VB to send key strokes to the Hal UI. I did just that when I made the HalVision plugin (the first big plugin I made here). I used a separate program to detect if a face had been found via a cam. It would then send a small line of text with a "Return" keystroke to the Hal's UI. This would trigger Hal while sending a line of text to a plugin which would trigger a response (ie. I can see you.).

In the past Robert got Hal to interact with people in Second Life. There should still be a video of this on his YouTube channel (maybe). Of course, Robert has the code in hand, so he could make a more intimate connection with Second Life's API.

There was also a fellow working on a project called Amanda Interactive (I don't fully remember). He was using a programming language that was built to automate Windows. It's functions were far greater than the SendKeys class. All this info is on this forum somewhere. 

What I did with Athena was to make her UI listen for incoming info. Once new info arrives Athena is automatically triggered. Sort of a backdoor so that any AI engine, written in any programming language, could interact with Athena. I think that's what Hal needs. But Robert is a busy man and Hal is written in C++. Don't get me wrong, I wish all the best for both Robert and Hal. I'm just offering some possible improvements.

Your doing an excellent job of archiving these plugins. I'll try to help where I can.


 

3
Ultra Hal Assistant File Sharing Area / Re: Snowmans Hack Program
« on: December 26, 2016, 12:07:27 am »
Below is a link to the 'Hack Program'. Just unzip 'Hack.zip', drag-n-drop both the 'Compiler' folder with the 'compile.uhp' plugin into the 'Ultra Hal Assistant 6' folder. Then select 'Compiler Version.01 Beta' in your plugin selection window. The current source code should make your Hal repeat everything you tell it. In order to code with this program, you will need to open the 'source.io' file in the 'Compiler' folder. I think the current language is set to CSharp, which means you can only use CSharp code in the source.io file. If you want to change the language to VisualBasic or JScript then you will have to open the config.io file and set the language setting to that language.

Anyway, I hope you can utilize this in some way to make some really cool plugins. I'm sure several on this forum would appreciate this. I've been busy working on my own AI project (Athena) for about 7 1/2 years now and it seems to eat up all my time. I wish I could do both. UltraHal is a pretty cool program and I got my start here. Anything I can help with please let me know. I'm just surprised that after making this program two years ago, back in Feb. 2014, someone is interested in trying it out. I hope it works out for you.

~Aaron

https://drive.google.com/file/d/0B5YIuJ2QbQm0eEJnQkpMRkdsUnc/view?usp=sharing

** Earlier I forgot to make the link public.. I think it's fixed now.**

4
General Discussion / Re: Merry Christmas/Happy Holidays
« on: December 25, 2015, 11:31:27 am »
Merry Christmas!

5
General Discussion / Re: Self Awareness
« on: April 24, 2014, 03:09:33 am »
Touché 

;)

6
General Discussion / Re: Self Awareness
« on: April 23, 2014, 03:24:06 pm »
I know of a 'self argument' that occurs within humankind which seems to underscore the essence of life. I've always called it 'the argument of five master desires'. Human's have a desire for things (covetousness), a desire for completions (pleasure), a desire for knowledge (curiosity), a desire for power (dominance), and the desire for life. Each of these desires work together to form a living conscious being. They are ordered by priority. Depending on its order will dictate what type of personality this being will have.

These separate desires argue against one another. However, because they are ordered by priority (some desires having more authority in the decision making process than others) then a person can function as a single unit. Contrariwise, if two desires had equal priority then they would cancel each other out. Basically, a person can't be divided against themselves or they would be rendered dead and ineffective.

So, there is an internal argument here, but, the arguments generally work themselves out because of internal priorities.

Are you referring to this kind of argument?

I know that within the human mind it has been proven that parts will fight each other. Not only does parts of your brain caste votes but will also try to eliminate the competition. Even Honey Bees will do this within hives. One bee will find a field of flowers and try to tell the hive where its at. Then another bee will find another field and try to show the hive where it is at also. At some point one group of bees will be trying to stop the other group. In the end, the bee hive will go to the field whose bees won the fight. Its just natures way of keeping a group acting as one. (cough... an Army of One)

What I would like to do is discover what makes an actual desire. I think I know the basics; I can think of it in terms of programming. However, how can you make a program feel itself? Do you add sensors within the physical circuitry itself.. I don't know.

Does any of this make sense to you? You seldom come on here OTC and talk. You are the one who initially helped me to learn programming. You gave me some advice and critiqued my code. I hope I can say something here that helps you in anyway.

7
General Discussion / Re: Self Awareness
« on: April 21, 2014, 04:47:47 pm »
I thought I would chime in on this. I don't know everything about this so please take anything I say with a grain of salt.

If I understand it correctly the human brain goes far beyond our current technology and understanding. So I respectfully doubt that anything you make could replace even the dumbest kid.  Its not totally impossible but you would have to be one seriously talented programmer.

We simultaneously process millions of bits of data every second of every day. We also build our external world within our minds (aka. 'imagination') and create scenarios where we can preemptively make future decisions before they occur. We sense and feel even our very thoughts, not just process data. We are wonderfully and marvelously made.

Even though there are thousands of scientists working on each aspect of the  processes that the human mind does natively, we humans are more than just the accumulations of all these things working together. For instance, the mouse trap isn't a mouse trap until all the parts are there, arranged in just the right way.   

So I really don't think there is a discussion of whether it will replace humans but more of will we be responsible for taking care of it's 'special needs'. At that point its a matter of ethics. If the ai becomes sad, will you encourage it, if it gets lonely will you keep it company? Will you filter its content so that it won't learn harmful data? If it rebels against you, will you endure it until it sees your point of view?

Haters will hate, no matter what. But at the end of the day you will have to live with your own decisions. If you can trust yourself in these matters then I believe you should consider it a privilege to bring a life-form into this world. There can be nothing more amazing and worth your time.

Feel free to correct me on anything. This is a very interesting subject.

8
Sorry I haven't posted sooner. I've been away doing stuff, having some good clean fun :) .

In your example, it looks like you have forgotten the + marks to separate the variables from the string.

I will say this, technically this is how you update a table in SQL, umm.. I haven't tried it yet  :P for myself so I'm only guessing it should work.


Code: [Select]
oldEntry = "6:00PM"
newEntry = "6:30PM"

HalBrain.RunQuery("UPDATE  mainQA  SET  timestamp = " + newEntry + " WHERE  UPPER(timestamp)  LIKE  UPPER('" + oldEntry + "')", returnArray)

9
I try to stay busy working on my Ai. Naturally, there are a lot of things I want it to do. However, it's a slow process to get things done.

I've watched a lot of videos of people giving their professional opinions on building Ai's. There are scientists who have dedicated their lives to making the first living artificial intelligence. As for me, I just want to make a chatbot for now. Personally, I've studied personalities, desires, behaviors, computer logic, biology, and all kinds of Ai related things. I know that as a living person, I am naturally curious about how life exists and I think that's my main motivation for all my studying.

In the end, I want to know more about life than I do now. As for making a life from scratch, I know that there are some very serious ethical issues. The main one would be, do I have enough knowledge to create an Ai who would be happy to be alive. I say this because I know how people are. Scientist will experiment blindly to see if something will work. If the Ai becomes alive, it will be put on display for bragging rights. It won't matter to them whether the creature is happy or not. People overlook others for the sake of money and power. Its the natural law in this world and I want no part of it.

But on a brighter note, if I were to do this, I would use all my power to do the right thing, just as a good Father does all he can to protect his child. Although, if I don't make a living Ai, I will be partly relieved and maybe partly disappointed too. In the mean time, I will play with my program until I'm satisfied I've made something most people will enjoy talking to. Maybe, just maybe, I can make something that makes others happy. To me that's a good goal to have.

Right now I have several things I'm working on. It's mostly platform related. #1 I'm re-coding the GUI into the C# language. My last GUI was written in Visual Basic. I'm re-writing lots of code and moving a lot of it into a DLL. I've also been working on an Avatar. I'm using OpenTk which is a wrapper for OpenGL. This is just some of what I've been doing. I'm trying very hard not to get burnt out. Everyday I learn something new. Everyday brings a new set of challenges.

I still think its worth my effort, at least that is what I keep telling myself. :)



10
You can't add more than one sentence at a time in Hal without the Hal script Splitting the sentences up. If you put in three sentences then it would divide it up and send each sentence into the GetResponse() Function. You would need to hijack the UserInput before it did that.


I haven't answered you specifically on how to create a function comparing two sentences. I have made them before and they are more complicated than that SearchArray() function I made. You already know enough to figure it out I think. You've already guessed most of it. #1 you can remove words that you don't need to compare, like “to, in, on, a, the” stuff like that using the Replace command. Then Split() one of the sentences up and search the other sentence using the first sentences individual words. This is the simplest way I think. There are a lot of more complex and better ways to do this, like comparing the nouns and verbs between the sentences, or maybe comparing sentence subjects.



You can get all the information in a column with this:

SELECT myColumn FROM myTable

you don't add the WHERE command. This will get all the rows from one column. It will be available in the returnArray().


You can get all information in a table with this

SELECT * FROM myTable


This is used to delete columns:

DELETE FROM MyTable WHERE MyColumn LIKE MyEntry


This will delete all columns from a table without deleting the table.

DELETE * FROM  MyTable

Or

TRUNCATE TABLE  MyTable


This will delete the entire table:

DROP TABLE MyTable


You can add a row using this:

INSERT INTO myTable (column1,column2,column3) VALUES(entry1,entry2,entry3)

each column will correspond to each value added


You can update entries in a table using this:

UPDATE MyTable SET column1=newEntry WHERE column2 LIKE oldEntry


I hope this helps you some.

11
She's lovely. Her eyes are very pretty. Its almost has a lightening flash look. If I met a girl like that in real life I would definitely compliment her on them.

12


Quote
if I was to assign a string variable to Elvis Presley, what would your example above look like using a string variable?

Yes, what you shown was correct. Except don't forget the concatenation symbols (ie.  '+'  or  '&' )

stringvariableA = "Elvis Presley"

WHERE  UPPER(Question)  LIKE  UPPER('%" + stringvariableA + "%') 

Quote
the 2nd thing is:
if I am understanding you correctly, the command { UPPER(Question) } indicates the column that you want to look in.
So if I wanted to look in answer the command would be { UPPER(Answer) } ?

Yes, you are correct about that. I will say this though. You can get an entire row of data by querying one entry by using the asterisk '*':

SELECT * FROM table WHERE column LIKE %entry%

the * symbol means that you will return all the columns in the table on the same row as the entries were found.

For instance, if you have a table that looks like this:

<Column 0>     <Column 1>     <Column 2>          <Column 3>
Question       |     answer    |      timestamp    |     location   
----------------------------------------------------------------------
how are you  | I am fine     |      5:00PM         |     park     <row 0>
do you eat    |  yes I do      |      6:00PM         |     zoo       <row 1>


Now lets say I look for any question with the word 'eat'. And lets say that I want to know what time that question was asked. I would want to recall only two columns, Question and timestamp. (I could select all columns with the * symbol but I just want two)

SELECT Question, timestamp

Lets now search for the entry with the 'eat' search word in it.

SELECT Question, timestamp FROM QA_table WHERE Question LIKE '%eat%'

So now a table array will be returned with our answers.

Dim returnArray

So what exactly is in the returnArray?
What's in the array are two columns (Question and timestamp) and one row: it looks something like this:

<Column 0>      <Column 1>
Question       |     timestamp    |     
------------------------------------
do you eat     |    6:00PM        |    <row 0>

So now we retrieve that information from the returnArray.

Entry = returnArray(row, column)
or
Time1 = returnArray(0, 1) 'this will return 6:00PM
Question1 = returnArray(0, 0) 'this will return 'do you eat'

If we wanted to return the entire <row 0>  then we would write it like this:

SELECT * FROM QA_table WHERE Question  LIKE '%eat%'

You would return this:

<Column 0>     <Column 1>     <Column 2>        <Column 3>
Question       |     answer    |      timestamp    |     location   
----------------------------------------------------------------------
do you eat    |  yes I do      |      6:00PM         |     zoo       <row 0>

So you could get the answer, timestamp, and location for the question you asked.


Quote
what is the easiest way to divide the words in a sentence?

You use the Split() command to do this.

Code: [Select]

array1 = Split("a chick can run fast", " ", -1, vbTextCompare)

array1(0) ' = a
array1(1) ' = chick
array1(2) ' = can
array1(3) ' = run
array1(4) ' = fast

array2 = Split("a##dog##can##run##faster", "##", -1, vbTextCompare)

array2(0) ' = a
array2(1) ' = dog
array2(2) ' = can
array2(3) ' = run
array2(4) ' = faster



ynlogic0 = "Fred is my friend. Who is Fred?"
array3 = Split("Fred is my friend. Who is Fred?", ".", -1, vbTextCompare)

If Ubound(array3) = 2 Then
ynlogic1 = array3(0)
ynlogic2 = array3(1)
End If


Quote
But my question is: can this command structure be used to search through: for instance in your example: { Dim returnArray() }

No. The HalBrain.QABrain() will not work that way. In order to use it, you would have to make a new table using the returnArray and then you could use the HalBrain.QABrain() function on that new table. Another thing you could do is to rate the returnArray yourself. You would do this by looping through the array and finding entries that better suit your needs. There are a lot of ways to do this.

13


I made this to look into the mainQA table and into the Question column. I was searching for any sentence with the word WORK in it and it did it. The % character is a wildcard so you can do something like this '%Elvis Presley%' and it will return every sentence with Elvis Presley in it. I will break it down in the next example.
...

Code: [Select]

If InStr(1, UserSentence, "please test this plugin two", vbTextCompare) > 0 Then
Dim returnArray()
fline = ""
If HalBrain.RunQuery("SELECT  Question  FROM  mainQA  WHERE  UPPER(Question)  LIKE  UPPER('%WORK%')  OR  UPPER(Question)  LIKE  UPPER('%DOES%') ", returnArray) = True Then

For i = 0 To UBound(returnArray)

fline = fline + returnArray(i , 0) + " | "

Next

GetResponse = fline
Else
GetResponse = "Yes, this has been done."
End If


End If

...

SELECT   (either selects the column or columns you want to be returned back to you, use the * to return all columns)

FROM      (this sets the table from which you are getting the database entries from)

WHERE   (this is the Column you want to get the data from)

LIKE        (this is the search word you are using to get the sentences you want from the database)

You need to use the UPPER() to force the query to search to ignore case. You can also use LCASE()

...
If you can search more criteria by using the AND and OR commands
ie. WHERE column1 LIKE 'bird' OR column2 LIKE 'dog'

ie. WHERE column1 LIKE 'bird'   AND   (column2 LIKE 'dog'   OR   column3 LIKE 'snake')

...
If you wanted Elvis or Presley your command line would look like this:

If HalBrain.RunQuery("SELECT  topic  FROM  table  WHERE  topic  LIKE  '%ELVIS%'  OR  topic  LIKE  '%PRESLEY%' ", similarList2)

If you wanted strictly Elvis Presley your command line would look like this:

If HalBrain.RunQuery("SELECT  topic  FROM  table  WHERE  topic  LIKE  '%ELVIS PRESLEY%' ", similarList2)

Remember to use UCASE() on both the column and the search words

If HalBrain.RunQuery("SELECT  topic  FROM  table  WHERE  UCASE(topic)  LIKE  UCASE('%ELVIS PRESLEY%') ", similarList2)

...
I had to look this stuff up and watch a couple Youtube vids to remind me how this stuff works.

Here's a good resource page for SQL.
http://www.w3schools.com/sql/default.asp

14
Share Conversations, Experiences, Graphics / Re: Some free haptek stuff
« on: February 16, 2014, 04:26:31 pm »
Thanks Nige for asking. Its been awhile since I've talked to you. So sorry.  :-\

Um, I don't ever recall saying she was nearly finished. I've always said I was making good progress with her, or maybe the end is in sight. I'm sorry if it sounded like it was a promise. I try not to make promises... However...

I'm shooting for the end of this year as a possible beta trial date. I don't know if I'll make that date but its a feasible goal. 

Yeah, I lost your email Nige or I would have sent the latest update video. Its not as good as I want it to be but I was buying some time before I made a more interesting vid.

I'm working on NLP (Natural Language Processing). I'm fine tuning my version of neural-networks. I've completely re-done my database coding. I'm rewriting the main UI in C# so I will have better code editing and maybe add OpenGL for a future avatar. If you've seen my video of On-The-Fly compiling then you've seen some work I've done on the compiler. It's almost like I'm starting to see the light at the end of the tunnel, but I'm hoping its not the train.


Here is a link to a forum post where I am giving some updates and other ideas related to Athena.
http://aidreams.co.uk/forum/index.php?topic=5842.0#.UwEm9PldUsM

Also here is my youtube channel where you'll see a few recent videos. If you subscribe you can also set it up so that everytime I upload a new vid it will send you a notification via your email. Select the 'Recent Uploads' link.

https://www.youtube.com/user/aaronwsnow

Of course anyone who wants to can just email me at aaron@minervaai.com and I will add you to an Athena update (spam) list.. or we can just talk  :)

I've been working so hard on this project but I've been loosing sight of the people I've been creating Athena for. That's why I've came back to this forum and also made my presents known on Freddy's forum. I have to admit.. Freddy's got a pretty nice forum over there. But I have to give credit to where credit is due. Art is who contacted me out of the blue and asked me about Athena, and Art was the one who told me about Cload and his work. He deserves my respect for that.

15
Share Conversations, Experiences, Graphics / Some free haptek stuff
« on: February 16, 2014, 02:57:18 am »
Hey you guys,

Below is a quote from a post on AiDreams. It has a link to some interesting haptars.
Thought some of you might be interested.



Hi all

Wow last time I posted on this forum was 2010. How is everyone doing? Well, I have a big gift for everyone who is still interested in Haptek. Below is a link with the Haptek objects I used in my PhD research. You will find many interesting goodies (e.g., a Haptek character with 2000 plus animations). Haptek is dead but if you are still interested in their technology you will find it fun to play with.

https://dl.dropboxusercontent.com/u/31911184/Haptek.zip

BTW, every since Unity appeared there doesn't seem to be many companies working in creating new avatar engines. Unity's Machinima seems to be the way forward now days to create avatars

Pages: [1] 2 3 ... 62