|
-
Sep 2nd, 2000, 09:34 AM
#1
Thread Starter
Addicted Member
Hey peeps. Give us your thoughts on this:
Visual Basic programs that can learn
Impossible?! Well, think of it this way, a program that can improve it's code by it's own experiences. Is this impossible? Give me your thoughts...
-
Sep 2nd, 2000, 09:45 AM
#2
Guru
There's a company called NetCustomize who specializes in this.
Well, their programs don't change their own code but they learn what the user likes and act in a way which will be respected by the user.
Or something like that.
-
Sep 2nd, 2000, 10:01 AM
#3
Thread Starter
Addicted Member
That's not really what I mean.
Let's say, developing new features to the program as the program finds that it might be useful. Features that the programmer didn't program into the app, but the app thought for itself.
-
Sep 2nd, 2000, 10:05 AM
#4
Monday Morning Lunatic
I think LISP or Prolog are capable of making 'self-modifying code'. I think a VB program could do it by interfacing with VBA itself, and running the new code semi-interpretively.
I refuse to tie my hands behind my back and hear somebody say "Bend Over, Boy, Because You Have It Coming To You".
-- Linus Torvalds
-
Sep 2nd, 2000, 10:39 AM
#5
Frenzied Member
AI?
There are a lot of really long threads on AI that might help you.
-
Sep 2nd, 2000, 10:58 AM
#6
Fanatic Member
what do you mean???
once the program is built, its code is no longer a vb code,
its a binary code (or something like that) so it can't
change her code.
-
Sep 2nd, 2000, 11:25 AM
#7
Thread Starter
Addicted Member
Yes, in theory this isn't possible, but in practise, there may be a few ways.
Basically, I'm just speculating on AI I suppose...
-
Sep 2nd, 2000, 11:47 AM
#8
Frenzied Member
Let's say, developing new features to the program as the program finds that it might be useful. Features that the programmer didn't program into the app, but the app thought for itself.
If it's possible how would you achieve that?
Something that the programmer didn't programmed in the app? Then how would the prog know what kind of functions to build in and in wich language?
I mean, you as programmer must first tell the app what to do, then it can do stuff, the prog has no brains, you're the brain behind the prog.
These are your thoughts
prog hey! What to do next?
you hmm, dunno, find out yourself, think of anyting the users like!
That's not the way it works, it's more like:
prog Hey! What to do next?
you Ok, let's code a function the people need, something like a alarm, do it like this: <VB blablabla</VB>
prog ok, thanx
So.. you have to say the prog what to do, it can't live on his own.
Jop - validweb.nl
Alcohol doesn't solve any problems, but then again, neither does milk.
-
Sep 2nd, 2000, 12:26 PM
#9
Guru
Visual Basic is a program, and you tell it what to do.
-
Sep 2nd, 2000, 12:52 PM
#10
Member
You could..
run it with its original VB source code in a txt file..
You tell it to open up the text file every (ohh 24 hours) and save parts of the text file as their respective .vbp .bas .cls whatever...
I have a program that saves bytes to a file in a such a way that excel recognizes the saved .xls file even though it was never actually saved in excel..
So you could save info from the text file as their respective .bas .cls and .vbp
then after that you could run a shelled Vbscript that tells a compiler to compile the new files into an exe, leave a text file with commands for the new exe like to rename the old exe, compile the new exe, run the new exe and off itself... leaving the new exe running in its place after bring recompiled from a text file that got turned into its respective parts...
So then, the tough part, would be modifiying that source code in the file so that the program could add functions in the right spots that compiled without a problem...
and, in the end, you'd have to be the one to write in those functions for it to choose to insert into its new self..
hmm... It's a good idea... Perhaps you should do a random background changer / button changer / font changer so the program never looks the same twice?? =p
-
Sep 2nd, 2000, 01:26 PM
#11
Member
In fact...
I just found an example of what i was talking about
you can use VBSCript 5.0 to evaluate a variable as VBScript Code
http://www.vb2themax.com/HtmlDoc.asp...ID=1600&Page=6
go there to learn more...
so, in theory, if you did a *lot* of coding so that you *taught* the program vbscript on a below kindergarden level
'beginning of new programs start with Dim vRanDOmeVaR
vRanD0meVaR = Eval(userincluded vbs file)
it wouldn't be an *AI* but at least you could have a program upgrade itself while it runs automatically if you decide to throw stuff into its upgrade vbs file..
like, a bug fix or a patch on the fly... you wouldn't even have to stop your program, you could have it wait until it's idle before it offs itself and runs its new self..
-
Sep 2nd, 2000, 02:26 PM
#12
Addicted Member
Is it possible to change the code at runtime?
I do not mean something like
If this and this, do that, else do that,
but a function that lets the user write in lines of code and executes them.
Something like
Dim NewCode as String
NewCode = txtCode.Text ' Here the user inputs code
Execute(NewCode)
Where Execute should be the function to run the written code.
If someone knows if it's possible, please post!
Pentax
Wilhelm Tunemyr,
Swede in London
[email protected]
"Dort, wo man Bücher verbrennt, verbrennt man am Ende auch Menschen"
Heinrich Heine (1797-1856)
Pravda vítezi!
(Truth prevails!)
-
Sep 2nd, 2000, 02:58 PM
#13
Member
Like I just said...
Except that that functionality is in VBS not VB... if you really are interested follow the link I posted... Any More ideas on AI? this is a good subject..
-
Sep 2nd, 2000, 03:12 PM
#14
Changing the source code is impossible once the program is compiled, though you could have two identical EXEs in the same directory (both EXEs are your app). Once you run one EXE, it can open and change the bytes in the other EXE (it's close to asm), close the file, and run it, then the executed file will copy itself in order to update the other EXE.
Of course the tough part is to teach the program exactly how to change the bytes in the file.
-
Sep 2nd, 2000, 03:59 PM
#15
A little off topic but I've read an article regarding this subject.
It was a computer designed by IBM, which plays chess and learns from its opponents because of it's simulation of human brain nuerons. Because of it's "experience", it was able to beat the world chess champion.
-
Sep 2nd, 2000, 04:06 PM
#16
Monday Morning Lunatic
Oh yeah. Was it Deep Blue? I'd love to have a play on THAT.
I refuse to tie my hands behind my back and hear somebody say "Bend Over, Boy, Because You Have It Coming To You".
-- Linus Torvalds
-
Sep 2nd, 2000, 04:29 PM
#17
Frenzied Member
computer as dumn as the desk they are on
this is the most contriversial question about computers and their abilities
we all know that they cant do anything unless they are programmed
and as far as the chess program by ibm
it wasnt able to THINK
it was able to follow a strategy
and that strategy was programmed by a human
just like a computer game
it LOOKS like the monsters can think where you are
but in reality we all know its a program that is made by human to figure out where you are
computer power is in the hands of humanity
-
Sep 2nd, 2000, 04:33 PM
#18
Monday Morning Lunatic
Yeah, you're right. Although we will very likely see 'thinking' computers in the near future. They don't even have to be that complex, just enough to cope with a situation they haven't been programmed for.
It's like a baby - it has some information preprogrammed (instinct). Some information it learns, and other information it works out for itself based on a situation and what it knows. Once a computer can do that, we won't need to do much programming any more.
I refuse to tie my hands behind my back and hear somebody say "Bend Over, Boy, Because You Have It Coming To You".
-- Linus Torvalds
-
Sep 2nd, 2000, 04:43 PM
#19
Lively Member
Hmmm
I saw an atricle a few weeks back saying how a company (maybe IBM or Bell Labs or somert) are developing the worlds biggest computer. Something like the size of a tennis court. Very fast indeed. Anyway, i will try to find the article i saw and i will post a link to it. It may be of interest.
Later
REM
"Innovate, don't immitate."
-
Sep 2nd, 2000, 04:48 PM
#20
Frenzied Member
will they THINK?
the answer is no of course
will they LOOK like they are thinking YES
think of it this way
very simplistic
you say "good morning"
program the puter to say "good morning to see you too"
in reality we know the stupid thing is not thinking
but it LOOKS like it is
so take this simplicity to a advanced level
and yes i believe they will be out of control
-
Sep 2nd, 2000, 09:11 PM
#21
This isn’t really AI but I actually wrote a program as early as 1982 that learned from it’s mistake.
It was an Othello game (a classic board game) that stored every move it made and remembered them if it lost the game so it didn’t do the same mistake twice.
It was pretty easy to beat the program the first time you played but after a while it became virtually impossible to beat it (so I actually lost interest in playing it).
-
Sep 2nd, 2000, 09:44 PM
#22
Hyperactive Member
What did you program that game on back in 82?
-
Sep 2nd, 2000, 09:53 PM
#23
I programmed it in BASIC on a computer called ABC80.
It was an amazing machine with a Z-80 processor and 16KB RAM and with 16KB ROM that hold the BASIC interpretator.
-
Sep 2nd, 2000, 10:01 PM
#24
Hyperactive Member
Never hear of that one.. LOL I started out on a tiny little Sinclair and moved along to the Atari 400. Way back in the day!!!!
-
Sep 3rd, 2000, 05:24 AM
#25
Thread Starter
Addicted Member
This has turned into a long thread, all started by me!!!
The thing is, in England, they've made these Robots that reproduce. They started off with 18 different robots - 17 small and 1 big. The big one took the good parts out of the 17 smaller ones and built a 19th one. Cool stuff.
A true step forward.
Also, VB programs can't, and probably never will be able to make their own code up, simply because of the AI that would be involved, but what about more high-level programming languages?!
-
Sep 3rd, 2000, 05:36 AM
#26
Monday Morning Lunatic
Yeah - I'm sure I saw a demonstration of a LISP program a while back that 'learnt' - and then changed it's own code.
I think what they did was feed a value that caused it to go strange, and then it checked and added an error routine to it. Next time round, without any changes, it worked.
I refuse to tie my hands behind my back and hear somebody say "Bend Over, Boy, Because You Have It Coming To You".
-- Linus Torvalds
-
Sep 3rd, 2000, 09:20 AM
#27
Re: computer as dumn as the desk they are on
we all know that they cant do anything unless they are programmed
It was programmed to learn.
and as far as the chess program by ibm
it wasnt able to THINK
it was able to follow a strategy
and that strategy was programmed by a human
If you play a chess game today (on computers) you'll notice that the computer will move according to what you do. This computer was different in a sense that its moves changed everytime because of it's "playing experience".
[/B][/QUOTE]
-
Sep 3rd, 2000, 03:53 PM
#28
Hyperactive Member
From a chess player...
As for the IBM chess computer (Deep Blue, or Deep Thought), yes the program was capable of 'remembering' or 'learning' from passed moves. Also it was running on several CPUs, had a HUGE database of millions of games played by passed & present champions. Having said that, the contest between Kasparov & PC was NEVER fair to the human because of the fact that they were playing with the CLOCK. Therefore the computer had a big advantage being able to analize millions of moves per second. I firmly believe that if Kasparov had enough time to move (no clocks involved), he would win. Let's not forget that the software was written by humans far less advanced in chess comparing to Kasparov who I think is in top 1-2 players of all time. Clearly the computer's ability to perform fast calculations in a short period of time was the key to success.
I'm a chess playing machine, damn it! Not a cheese spraying mannequin.
-
Sep 3rd, 2000, 04:07 PM
#29
Those 'millions of games played' was the whole point of this computer. It was suppose to modify itself to play better each time.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|