An Algorithmic and Social Introduction to Computer Science (CSC-105 2000S)


Find a Web site with an illustrative example of genetic programming or neural networks. Report on the success or failure of the technique to solve the problem described therein.

Adan

The following URL is page 3 of 6 separate pages. Within each page are a lot of links samples of genetic algorithms and neural networks. Unfortunately, when I tried to open them up, they did not seem to want to cooperate.

http//www.gamelan.com/javaprogramming/applets/dir.sciencecomputers3.html

Here is one website that I selected that is about neural networks: URL : http//rfhs8012.fh-regensburg.de/~saj39122/jfroehl/diplom/e-index.html

The following URL is a sample neural network....It would be really cool if I totally understood what was going on.

http//rfhs8012.fh-regensburg.de/~saj39122/jfroehl/diplom/e-sample.html

The creator of the sample neural network seemingly was able to complete his task; however, in another section of his website, he acknowledges the faults of neural networks.

Cathy

Prof. Dr. Hugo de Garis, Head of "STARBRAIN," STARLAB's Artificial Brain Project, has been working on the "CAM-Brain Project" since 1993. Introductory information can be found at http://foobar.starlab.net/~degaris/, and at the various links top the CAM project on that page. On http://foobar.starlab.net/~degaris/cam/ and http://foobar.starlab.net/~degaris/cbm/index.html de Garis includes some diagrams and further information. One of the goals of the project seems to be to create a robot that uses this technology.

Little "movies" of how some of the different stages of the project work are at http://foobar.starlab.net/~degaris/cam/movies, although they take a really long time to load and I don't totally understand what some of them are showing. The explanatory text that is also linked to on this page is kind of interesting.

From what I can tell, this project has been relatively successful. I don't think they've come up with an "artificial brain" yet, but they do seem to have passed some milestones using the combined power of neural networks and genetic programming.

Ivy

http://www.emsl.pnl.gov:2080/proj/neuron/neural/

Ivy couldn't reach the instructions, so she didn't give an analysis.

Jae

I found this example at: http://www.nd.com/application%20summaries/appsum-other.html The page is called NeuroSolutions, and seems to amount to a database of projects in progress right now. I chose this particular example to discuss:

"Portfolio Management Several well-known financial organizations have disclosed where they are applying neural computing effectively. For example, Deere & Company's pension fund has been managing a portfolio of $100 million since December 1993 using neural networks. The fund monitors a pool of 1,000 US stocks on a weekly basis. For each of these stocks there is a neural network which models the future performance of the stock as a function of the stock's exposure to 40 fundamental and technical factors, and gives an estimate of its weekly price change. The company then selects a portfolio of the top 100 stocks and allocates the fund proportionately to predicted returns. Its annual return has been well in excess of industry benchmarks."

So, this is an example of the use of a Neural Network as applied to stock market portfolio creation. Each stock has it's own neural network tracking system which analyses the stock's expected performance as related to many factors in the economy. It solves the problem of having a more drawn-out human process (which might incorporat e the use of technological tools) and replaces it with a computer that does your stock portfolio management for you. The program is already in use, as the Deere&Company example illustrates, and the final sentence of this abstract sums up the success of the program: "Its annual return has been well in excess of industry benchmarks." I am surprised and interested to find such a real world example of neural network computing already in progress as a beneficial application.

Jeana

Using the teams of ghosts in Pacman, and with the objective of increasing ghost team efficiency (which in this case is defined in terms of the greatest number of Pacmen caught within a given time frame), a group of students used genetic programming in an attempt to evole the hive intelligence of the ghost teams. Hive intelligence, as is exhibited by colonies of ants and bees, is the concept that a group of individual organisms working collectively can efficiently accomplish a defined task.

The game itself was modified to include multiple Pacmen, and the ghosts were able to communicate with one another through the use of pheremones. In their model, ghosts were able to lay pheremones and assign a strength and a value to each pheremone that they laid. The hope was that over time, the ghost might evolve a language from the value of the pheremone.

At the conclusion of each simulation the group ran, their program would rate the teams of ghosts on a fitness scale, with the ghost team catching the highest number of Pacmen in a specified amount of time getting the highest fitness score. The programs (genes) of the fittest teams were then taken and crossbred using a crossover algorithm. More simulations were then run to test the fitness of the new generation of ghost teams.

While I wasn't able to access their "Results and Conclusions" section, from what I could gather from the summary of their report, it appears that the group was indeed successful in increasing the efficiency by which ghost teams were able to catch the Pacmen. So in this case, genetic programming seems to have worked quite well.

A full description of this project, along with an appendix that includes a sample game, can be found at:

http://www.challenge.nm.org/archive/98-99/finalreports/006/contents.html

Jeff

First, here is an example of a general genetic algorithm and the selection process http://www.faqs.org/faqs/ai-faq/genetic/part2/section-2.html:

PSEUDO CODE for Algorithm GA is

   // start with an initial time
  t := 0;
 // initialize a usually random population of individuals initpopulation P (t);
 // evaluate fitness of all initial individuals of population evaluate P (t);
 // test for termination criterion (time, fitness, etc.) while not done do
 // increase the time counter t := t + 1;
 // select a sub-population for offspring production P' := selectparents P (t);
 // recombine the "genes" of selected parents recombine P' (t);
 // perturb the mated population stochastically mutate P' (t);
 // evaluate its new fitness evaluate P' (t);
  // select the survivors from actual fitness P := survive P,P' (t); od
end GA.

The Artificial Intelligence Laboratory at the University of Arizona offers a genetic algorithm at http://ai.bpa.arizona.edu/~mramsey/ga.html. In this algorithm, global maximum and global minimums are determined. The genetic algorithm also allows the user to determine the mutation rate, crossover rate, number of agents, and number of genes contained as parameters in the genetic algorithm.

The technique produces accurate approximations, however, it will not determine the precise, correct answer. When deal with simple functions, calculus may be an easy method to determine the global maximum and global minimum, however, when dealing with complex functions that the derivative is not easily ascertained and an approximation is all that is needed, genetic algorithms are effective tools.

Joel

I found a "A Binary Hopfield Neural Network Applet" here:

http://www.geocities.com/ResearchTriangle/Facility/7620/

(there is a link to the source code on the page)

A Hopfield network is an associative memory that works by calculating how much a node is in agreement with the nodes that it is connected to. The preferred states of agreement (that is, whether a node value should be like or unlike a certain neighbor) are determined by the patterns that are initially imposed upon the nodes. These states of agreement are inherently distributed over the nodes, so no single connection can be thought of as "storing" a pattern. This leads to to the rather nice properties of graceful degradation and categorization in an overloaded space. See the controls section below for how to store and retrieve patterns.

I actually didn't have much success with this page because my computer would not run the applet (I'm assuming it doesn't have the program to run it). But I'm assuming that our computers in class will, and it looked interesting, so that's why I chose it. If it doesn't work, I included one more that said it would work on UNIX machines:

http://www.informatik.uni-stuttgart.de/ipvr/bv/projekte/snns/snns.html

Kevin

I found my site through Yahoo!, with a company called Attrasoft at http://attrasoft.com/. The site is actually a pitch for products of theirs, called the Attrasoft Boltzmann Machine (ABM), and a more marketable (and easier to explain) version of their neural network software called the Attrasoft Dow 5, a wonderful program which emulates neurons to figure out which stocks will do well. You can buy software through the ABM program which simulates over 1,000,000 for right around $10,000. Lots o' money! Anyway, the basic idea is that it can figure out with a fair amount of basic information about some stocks which stocks will do well. Using data from one of their older programs, the program did so well that the stocks it chose whipped on the Dow Jones 30 over a period from 1997 to 2000, and in fact out-performed said Dow Jones 30 by a factor of three. The programs in general seem to be pretty successful. I think this is a really neat thing, and I hope the company does well. I don't really know what else to say, but feel free to research the site and all that; I think this is a very interesting company and I actually like the ideas about which I've been reading.

Liz

I found the following site: http://nuweb.jinr.dubna.su/LNP/NEMO/tspN.html It actually gives an algorithm for the travelling salesman. The little program that runs takes randomly chosen sites and maps out a route by taking cities that are near to each other and then extending the route out. (The explanation on the page is much better.) I think it is successful, because it seems to come up with reasonable answers in a consistent amount of time.

Sam

Website: http://www.artzcafe.com, linked from http://www.zsolutions.com as an example of a "working neural net application"

Problem: The artzcafe site has a "survey" for new visitors that, after completed, will construct a "private art collection" that suits the visitors tastes. The program funtions as a "personal shopping assistant."

Problematic guidelines: rating system from 1(Hate it)-7(Love it) for 21 pieces "For best results, give a high rank of 5 or more to a few of the paintings."

Solution: So, they gave me a sample of 7 paintings that "I like." I suppose I like most of them, in fact I quite like a couple. But it is completely based on preferences, which can't always be defined particularly. This was an interesting example of AI, since the variables and input were based on the individual, and some sort of pre-programmed rankings reference system. Plus, the paintings suggested ranged from a mild $250 to a slightly higher $4700, and since my tastes are more suited to the affluent and haughty, they were right on target. Just kidding.


Disclaimer Often, these pages were created "on the fly" with little, if any, proofreading. Any or all of the information on the pages may be incorrect. Please contact me if you notice errors.

This page may be found at http://www.math.grin.edu/~rebelsky/Courses/CS105/2000S/Questions/question.39.html

Source text last modified Wed Feb 16 08:16:09 2000.

This page generated on Fri Apr 14 09:32:40 2000 by Siteweaver. Validate this page's HTML.

Contact our webmaster at rebelsky@grinnell.edu