
Apologies for the delay, I've been 'computerless' for some time. I've been thinking over your suggestion. I've used colours in this example to keep it simple, but in reality it's going to be images. Each image has various attributes (which I assume are inputted in the feature vector), such as "category", "size", "filetype" etc.. The aim of the program is to monitor what images the user selects (there could be thousands). Although there may not necessarily be a pattern, the program should take into consideration when the user selects images (e.g. is it opened from Windows Explorer, or from Photoshop. If the latter, then chances are, (s)he want's a JPG as that's what they have been opening before). As you can probably tell, this isn't a 'real' program, it's just for experimentation. However, would neural networks still be the way forward? Would I use back propagation to see if the user selects a GIF instead of a JPG, the error should be reduced slightly, and eventually it'll always open GIF instead of JPG? How would I check that the user usually selects category 'Car' after category 'wallpaper'?
Thanks. Sorry if this is confusing. I'll clarify any points that are ambiguous.





I just got back from a vacation too.
Neural nets don't work well with nonnumeric data such as {GIF, JPG, ...} or {Car, Wallpaper, ...}, unless there are exactly two choices which can be modeled as 0 or 1.
In a system involving an intelligent agent (the user), one must take into account the Principle of Rationality: An intelligent agent will choose actions that will help it accomplish its goals. What are your users' goals?
It's also possible there's an orderindependent clustering of attributes selected, e.g. the user has a preference for small, brightly colored images.
What are your goals for this program?





Hi Alan!
Would it be possible to enumerate "GIF, JPG" etc... and use those in the neural net? Or is it only good if it's binary?
The goal of this program is to adapt the interface to each user. The user logs into their profile, and the interface would then be different based on what the user usually does. So for someone who tends to select 'car' after 'wallpapers', the interface would automatically streamline to have those two near each other. There would be a huge number of permutations and so I am wary of simply having a huge matrix that contains all possible combinations and thei relative probabilities.
Thanks for the help.





If you have more than two items in an enumeration, you're implying an ordering that doesn't exist to the neural net. You could have separate input neurons for GIF, JPG, etc. that would each be 0 or 1.
Adapting the user interface to streamline a user's work flow is a good idea. It might help to look at logs of actual users' patterns to see what you'd get the most benefit from optimizing.





I think that's the best way to go about it. I should have each attribute as seperate input neurons and see if they 'fire' the neuron. If I was to go about using neural networks, am I correct in thinking that the best way to do this is to use the backpropagation method? Or is there one better suited for this scenario?
Also, could I achieve the same effect using (Hidden?) Markov models?
Thanks again for the help. Much appreciated!





The backpropagation method is the standard algorithm for training a neural net. There are many variants but there's no consensus yet on which is better. They generally give similar results.
With neural nets, you can take the user's last n selections into account by simply adding more input neurons. With a Markov process, only the last state is considered.





What's the algorithm for finding the shortest path for connecting points on a plane, provided that:
1 You can use unlimited branches
2 You can move vertically and horizontally only, no diagonal moving
3 The first point, which is the starting point, is predefined
Please provide me with algorithm ,flowchart, vb, c++, etc.... code for this problem
Thank you





I'm talking about infinite points
or maybe we can say, 10 points
please check the attached picture
Legend:
Blue: First point
Red: Destination points
Black: The shortest path
http://img413.imageshack.us/my.php?image=sample1ty5.jpg





The people who post here are not paid to answer questions or help people. They will help you out if they can and they feel like it. They will do so by giving answers to specific questions, refering you to sources of information, ect... but they are not going to write the code for you unless it is very very short (say 2 lines long). We're here to help each other out, not to do other people's work for them.
I would recommend you either post this at a place like rent a coder where you will have to pay someone or else refrase this as a question not a request to do it for you.





Thank you for your reply
But I didn't request them to write code for me
Sorry for making the question look like that
I just wanted any available information about this topic
After some investigation, I found this library:
http://www.diku.dk/geosteiner/[^]
which I think will solve my problem using Steiner Trees....





Hi, can somebody tell me how to create a plane passing through 3 points and how to project a point onto this plane.I have to develop a c/c++ code to do that.Can somebody suggest me a way or a good algorithm to do it.Plse do help me out.Thnk You.





one way:
all variables are vectors, the three points are defined by their position vectors r1, r2, r3, and the given point is simply r.
v1 = r1  r3
v2 = r2  r3
unit normal on plane
n = (v1 x v2) / v1 x v2
then the position vector of the projection point is
r  ((r  r1).n)n
[edit]
forgot to add that the equation of the plane is
(r  r1).n = 0
where r is the position vector to a point on the plane
[/edit]
Peter
"Until the invention of the computer, the machine gun was the device that enabled humans to make the most mistakes in the smallest amount of time."
modified on Friday, August 29, 2008 5:09 AM





Thnx for the reply.Ill chk it out.





Hi.I'm researching on an algorithm about the counting car on traffic. We're using to camera to catch and count the cars but I have some problems about this.
The problem is we know the coordinates of cars on the way. For example 4 cars with their coordinates in 1st frame. At 2nd frame lets say 1 car goes out from the camera view point and new car comes in. At 3rd frame no car goes out and 2 car come in to the view point.
So the video will like this;
First Frame = 4 Car 4 new
Second Frame = 4 Car 1 new
Third Frame = 6 Car 2 new

Total Passed Cars =7 CARS
With our calculation we know that 7 car passed from way. But the problem is camera cant recognize which car is from old frame.
I want a suggestion from you. Any ideas about to solve this? Please help me...





Sounds like you either need to upgrade your frame rate so you can track the cars incrementally, that is, their motion between frames is less than a car length so you can infer the same car because it was in the previous frame and couldn't have moved more than a certain distance between frames. If you can find partial cars, you can track them entering and exiting the frame as well. Otherwise, it seems you need a way to uniquely identify the cars in the frame. Color (assuming you're capturing color) could be used but that's, obviously, not robust since cars can be the same color and it's prone to lighting problems. Even if you can identify features of the cars, it's not entirely robust since tens of thousands of identical (at least from an exterior perspective) roll off the assembly lines each year.
If you don't have the data, you're just another a**hole with an opinion.





BTW, you didn't say how you were detecting cars and the camera setup or what kind of literature search you'd done. There are thousands of items on the web about the topic.
If you don't have the data, you're just another a**hole with an opinion.





I have am trying to find the difference between factor and coefficient. Searching shows they both are used a lot but I have been unable to find a good comparison of the two (various online dictionary definitions aren't a lot of help). What I have been able to find implies they are the same  the coefficient of friction (ratio of tangential force to the perpendicular normal force) and drag factor (total acceleration force divided by weight). Each results in a multiplicative number. What am I missing? What is the difference?





AFAIK, a coefficient is used for a multiplicative constant while factor has a more general meaning (i.e. multiplicative operand).
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
 Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
 Iain Clarke
[My articles]





Hey guys,
How do you compare two values and say that value 1 is X% larger than value 2 or value 1 is x fold larger than value 2?
Thanks!
It is said that the most complex structures built by mankind are software systems. This is not generally appreciated because most people cannot see them. Maybe that's a good thing because if we saw them as buildings, we'd deem many of them unsafe.





Ian Uy wrote: How do you compare two values and say that value 1 is X% larger than value 2
double value1 = 150.0
double value2 = 100.0
double difference = value1  value2;
double percentageIncrease = (difference / value2) * 100;
It would be said that value1 is 50% larger than value2.
Ian Uy wrote: value 1 is x fold larger than value 2
Technically, "x fold larger" is a suffix you add to a number to say "multipled by."
double value1 = 200.0;
double value2 = 50.0;
double foldIncrease = value1 / value2;
It would be said that value1 is fourfold larger than value2.
Enjoy,
Robert C. Cartaino
modified on Tuesday, August 19, 2008 4:48 PM





Uhmm. I have a problem. The two values are MILES APART and I can't find a calculator powerful enough to compute the percentage increase.
Value 1 = 1.36 x 10^58
Value 2 = 2.36 x 10^19,709
Is there any mathematical technique or approach to simplify this?
It is said that the most complex structures built by mankind are software systems. This is not generally appreciated because most people cannot see them. Maybe that's a good thing because if we saw them as buildings, we'd deem many of them unsafe.





Ian Uy wrote: Value 2 = 2.36 x 10^19,709
Is there any mathematical technique or approach to simplify this?
The rules for addition/subtraction/multiplication/division of scientific notation are not difficult. Here is an article on Scientific Notation[^] which covers how to multiply and divide powers of ten. Here is another one[^] which also covers addition and subtraction.





Yeah, I already did that before asking. However, I am not sure if its correct.
To subtract value 1 from value 2, I need to move value 1's decimal point (1970958)=19651 times to the right? this will produce a relatively small number. And if I subtract that small number to value 2, the result will not be different. It is still 2.36 x 10^19,709. Right?
It is said that the most complex structures built by mankind are software systems. This is not generally appreciated because most people cannot see them. Maybe that's a good thing because if we saw them as buildings, we'd deem many of them unsafe.





Ian Uy wrote: this will produce a relatively small number. And if I subtract that small number to value 2, the result will not be different. It is still 2.36 x 10^19,709. Right?
Pretty much. Consider your numbers.
Value 2 = 2.36 x 10^19,709
There are about 1.0 x 10^80 atoms in the known universe. If we discovered that there were actually a billion other universes out there, there would still only be 1.0 x 10^89 atoms in all of them combined. So your number (2.36 x 10^19,709) is what would be known in the mathematical community as "big... really big."
Relatively speaking (compared to your first number)...
Value 1 = 1.36 x 10^58 ...is really, really small. Pretty much, for all intents and purposes, practically zero.
So your question boils down to something like, "If I take all the matter in the in the known universe  every tree, every person, every planet, every sun, every black hole contained in all 100billion known galaxies  and manage to sneeze into a parallel dimension, what percentage did I decrease the weight of the universe? And you would still be way off from your example.
Enjoy,
Robert C. Cartaino





Comparing the larger number to the smaller, it is (2.36/1.36)*10^19651 larger. 10^19728 is just less than 2^64K. This can be expressed exactly by an extended arithmetic binary number 64K BITS long, or 8K BYTES long, or 2048 DWORDS long.



