Changing circuitry of analog computer *During* simulations?

Click For Summary
The discussion centers on the potential for analog circuitry to change during simulations, particularly in the context of real-time simulations of biological organs. Participants clarify that while analog computers can modify component values during computations, changing connections mid-simulation introduces undefined conditions and stability concerns. The feasibility of using feedback loops to automate these changes based on prior results is debated, with caution advised to avoid self-excitation issues. The conversation also touches on the speed limitations of analog computers compared to digital systems, suggesting that digital solutions may ultimately be more efficient for complex simulations. Overall, the exploration of dynamic circuitry in analog computing remains largely theoretical, with practical applications needing careful consideration.
  • #91
Nidum said:
The computational problem can be reduced by using different resolutions for the FE and for the visible display . The underlying FE model can have a relatively coarse mesh to allow fast computation and the display could be generated using a 3D cad engine to generate smooth curves and photo realistic images .

If the underlying FE model is represented by a relatively coarse mesh, that leads to inaccuracy. Of course, that is one of the ways (approximations) through which people have already tried to address the problem. People have tried several other ways (approximations) also. The approximations were required since engineers sometimes cannot say that they don't have a solution. But they keep on looking for better solutions (or true solutions). The problem in hand is not new and it is not the one which is identified by me. It is also a well known fact that present day digital computers cannot solve the problem accurately. Of course, people who have used various approximations have used the digital computers most of the time (if not always), an have done whatever is possible with the digital computers (more realistic simulations are "future work"!).
 
Engineering news on Phys.org
  • #92
Nidum said:
Over short time periods the solutions for the mutating model are not going to change that much and possibly some parts of the solutions will not change at all .

In this situation an iterative solver might give very fast results . Generate the next solution from the previous one .

These are already tried in the literature. Again, these are some of the other ways of getting some approximate solution.

One more approximation that one can usually come across in the literature is to compute -- instead of thirty frames per second -- much lesser number of frames per second and go for interpolation!
 
  • #93
FactChecker said:
At that time, there were piloted handling qualities flight simulations that used a combination of analog and digital computers. The analog computers easily integrated with digital computers that ran with 1000 Hz frames.

The literature clearly tells that building surgical simulators (used to train surgeons in surgical procedures) is much much harder than building flight simulators (used for training pilots).
 
  • Like
Likes FactChecker
  • #94
FactChecker said:
This really tells us how difficult your problem is. The variability of your problem makes it very hard to anticipate how things will change during the simulation. It is not just a prepared-for switching problem.

Could this mean that one cannot design an analog computer that can solve this type of a problem (it is not just a prepared-for switching problem, things will change during the simulation, variability of the problem)?
 
  • Like
Likes FactChecker
  • #95
Kirana Kumara P said:
Could this mean that one cannot design an analog computer that can solve this type of a problem (it is not just a prepared-for switching problem, things will change during the simulation, variability of the problem)?
This does sound much more difficult than a flight simulator. I don't know how to set up an analog simulation for it. It's a special application that would require different experience than I have. Sorry.
 
  • Like
Likes Kirana Kumara P
  • #96
Last edited:
  • Like
Likes Kirana Kumara P and FactChecker
  • #97
Kirana Kumara P said:
The problem in hand is not new and it is not the one which is identified by me. It is also a well known fact that present day digital computers cannot solve the problem accurately. Of course, people who have used various approximations have used the digital computers most of the time (if not always), an have done whatever is possible with the digital computers (more realistic simulations are "future work"!).
Everything is an approximation. Just because a problem has not been solved to your satisfaction does not mean it is established as impossible. If that was the case, no problem would ever be solved.

Changing the element data structure can make a difficult problem tractable. Consider a 3D array of elements distributed as though throughout the mass of an organ. Each element would know where in 3D space it was, and which elements were it's immediate neighbours. A cut would be represented by a change of the interconnection parameters between elements, with a resulting disconnection of positions. More virtual elements could be inserted where detail was needed by replacing existing elements with multiple elements. Neighbours would be identified by dynamic links to other elements. Areas not being affected could be left with coarse resolution. Areas previously needing high resolution could have some elements merged to reduce processor time and so be returned to coarse resolution, but retaining well defined boundaries.

All the requirements for switching signal paths has then gone. It is all determined by changing element positions, boundary parameters and dynamic links to neighbouring elements.

How many elements would a 100 mm cube with 1 mm elements need? It would require about 10^6 elements. If each “relaxation” required 1 usec of digital 1GHz processing per element, it would need 1 second of processor time per relaxation. That could be done in about 30 msec by 32 independent processors working on elements in the same data array. It is an ideal problem for the arrays of up to 1024 RISC processors now available on a chip.

The very fact that the elements know where they are in space, as they move with each milligram of meat, makes the problem tractable. You can even drop a specimen in a jar and send it off to histology while continuing the simulation.

It would be impossible to solve that kind of problem with analogue computing elements. That is because available processors from the pool need to be continuously assigned to process elements in variable 3D positions with different separations and boundary connection parameters in the array. Initialising the state variables in an analogue processor every 1 usec would be as impossible as the task of building a rigid million element 3D array of analogue processors.
 
  • Like
Likes Kirana Kumara P
  • #98
Baluncore said:
Initialising the state variables in an analogue processor every 1 usec would be as impossible as the task of building a rigid million element 3D array of analogue processors.
In an analog computer, the state variables are continuously available as a result of the continuous integrals, derivatives, and other signal values. They are continuous and have no frame time or sampling frequency..
 
  • Like
Likes Kirana Kumara P
  • #99
FactChecker said:
In an analog computer, the state variables are continuously available as a result of the continuous integrals, derivatives, and other signal values. They are continuous and have no frame time or sampling frequency..
A 1 litre organ will weigh about 1kg. 1 mm resolution in 3D will require about 1 million elements. You cannot realistically build an array of 1 million analogue computers so you have to switch analogue processors between elements or tasks in microseconds. That is simply not possible due to the cost of the analogue sample and hold storage arrays required, or the number of A–D and D–A converters needed to operate at video speeds of about 50 MHz in parallel.
 
  • Like
Likes Kirana Kumara P
  • #100
  • Like
Likes Kirana Kumara P
  • #101
Nidum said:
Something like this ?

(Jump to 3:30 for the best bits)
This looks very interesting. (It took me a while to realize that the link was there and not missing.) I wonder if @Kirana Kumara P is familiar with how Mosegaard is doing that?
 
  • Like
Likes Kirana Kumara P
  • #102
Nidum said:
Something like this ?

(Jump to 3:30 for the best bits)

I was aware of this kind of simulations about ten years ago. This kind of simulation (using spring-mass systems) is decades old. I am not happy with the method (hence looking for better methods. "I am not happy" in the last sentence is not just a subjective opinion of just one person (me) but it is the opinion of the community who works in the area. Moreover, it is not just an opinion but a fact (which can be justified). Of course, the method is still useful for solving certain problems. I am very clear about my problem (I have got more than 300 standard references). Of course, I too would go for some approximation (maybe a new type of approximation) if the analog computer, ASIC, FPGA do not help. And I am capable of solving the problem by coming up with some new approximation and by using a digital computer. But the purpose of posting my question here in the forum is mainly to know whether the problem can be solved by using an analog computer.
 
  • #103
Kirana Kumara P said:
But the purpose of posting my question here in the forum is mainly to know whether the problem can be solved by using an analog computer.
No, it can't be solved with an analogue computer.
 
  • Like
Likes Kirana Kumara P
  • #104
Baluncore said:
A 1 litre organ will weigh about 1kg. 1 mm resolution in 3D will require about 1 million elements. You cannot realistically build an array of 1 million analogue computers so you have to switch analogue processors between elements or tasks in microseconds. That is simply not possible due to the cost of the analogue sample and hold storage arrays required, or the number of A–D and D–A converters needed to operate at video speeds of about 50 MHz in parallel.

It is enough if the organ is divided into about 1000 elements. That is why I told in one of my earlier replies that we could aim to solve a set of 5000 equations. These numbers (total number of equations in the set) are not just arbitrary numbers; I have arrived at these numbers by careful thinking and rough calculations (and also by cross-checking with the existing literature).
 
  • #105
FactChecker said:
In an analog computer, the state variables are continuously available as a result of the continuous integrals, derivatives, and other signal values. They are continuous and have no frame time or sampling frequency..
In an analog computer (for our problem), if input is constant output will also be constant (after the elapse of the settling time). The input can be changed thirty times per second (or, every 30 milliseconds) so that the output will also change the same number of times. This itself is the frame rate (30 times per second) here.
 
  • #106
Baluncore said:
Everything is an approximation. Just because a problem has not been solved to your satisfaction does not mean it is established as impossible. If that was the case, no problem would ever be solved.
Still people keep looking for better solutions. Otherwise digital computers would not have come into existence, if people were satisfied with analog computers (and did not try for a better system).
 
  • #107
Kirana Kumara P said:
In an analog computer (for our problem), if input is constant output will also be constant (after the elapse of the settling time). The input can be changed thirty times per second (or, every 30 milliseconds) so that the output will also change the same number of times. This itself is the frame rate (30 times per second) here.
Any D-As can handle much higher input rates of change than 30 frames/sec. The internal workings of an analog computer are analog, continuous signals and have no "frame" times. Old mixed analog/digital flight simulations have run when analog computers were connected to digital inputs that were changing at 1000 Hz. Even then, the analog computer was capable of MUCH higher rates and the digital calculations were the limiting factor. Commercially available FPAAs can handle signals up to 2 MHz. When their results are plotted, the smoothness of them compared to equivalent FPGAs are obvious. (e.g see figures 9 and 10 of https://www.researchgate.net/publication/224597250_A_comparison_of_FPGA_and_FPAA_technologies_for_a_signal_processing_application )
 
Last edited by a moderator:
  • Like
Likes Kirana Kumara P
  • #108
FactChecker said:
Any D-As can handle much higher input rates of change than 30 frames/sec. The internal workings of an analog computer are analog, continuous signals and have no "frame" times.

I need the concept of frames because the biological organ is displayed on a monitor which is connected to a digital computer (the analog computer is coupled to that digital computer). In analog computers, I think the "frame rate" is limited by the settling time (time required to change the connections/parameters would also matter of course).
 
  • #109
Kirana Kumara P said:
It is enough if the organ is divided into about 1000 elements. That is why I told in one of my earlier replies that we could aim to solve a set of 5000 equations. These numbers (total number of equations in the set) are not just arbitrary numbers; I have arrived at these numbers by careful thinking and rough calculations (and also by cross-checking with the existing literature).
I believe a 5000 equation system can be solved now on an array of digital processors or on a multi-GPU board in a PC. With the advent of arrays of 1024 digital processors on a chip, there is no way that next year, anyone will be satisfied with only 1000 elements. You must now be designing a solution that will be up-to-date in 3 to 5 years time.

Storing 5000 state variables in capacitors with 5000 op-amps and 5000 multiplexors will be more expensive and much less flexible than storing those variables digitally in the memory provided on-chip with a RISC processor array.

The problem you describe cannot be economically solved with an analogue computer array. Any wishful thinking that it can be economically solved with an analogue computer is becoming more paralogical by the hour.
 
  • Like
Likes Kirana Kumara P
  • #110
Kirana Kumara P said:
I need the concept of frames because the biological organ is displayed on a monitor which is connected to a digital computer (the analog computer is coupled to that digital computer). In analog computers, I think the "frame rate" is limited by the settling time (time required to change the connections/parameters would also matter of course).
No. There is no "frame rate" in an analog computer. It is responding to the step inputs as the continuous differential equations of the system modeled would respond to such inputs. If you could run your inputs at a much higher rate, the inputs would just have much smaller steps and the results from the analog computer would be more accurate. So the analog part would respond as the real organ would if your poking motions were in steps of 30 Hz. Any problems are not due to the analog computer; they are due to the rough, steps of the inputs.

PS. Insisting that the computer "settle" in for each new input is incorrect. The actual process of poking an organ would behave in a smoother way. You don't want rough 30 Hz steps to be passed through in an unnatural way. Ideally, you would either change your inputs at a faster rate or smooth out the results with some filtering (but that would have to be done carefully).
 
Last edited:
  • Like
Likes Kirana Kumara P
  • #111
I don't know if this discussion about the response of analog computers is beneficial to you. I really don't see how you can make it adapt to the changes that you need in a simulated operation. But maybe others have some ideas.
 
  • Like
Likes Kirana Kumara P
  • #112
Baluncore said:
I
Storing 5000 state variables in capacitors with 5000 op-amps and 5000 multiplexors will be more expensive and much less flexible than storing those variables digitally in the memory provided on-chip with a RISC processor array.

Even if the analog storing is more expensive and less flexible, if it could be faster then still one could think of them (of course, I have taken note of the concerns raised in several of the replies, over the use of analog computers). Of course I would prefer a digital computer (can try RISC also) if there is no advantage going for an analog computer.

Baluncore said:
I
The problem you describe cannot be economically solved with an analogue computer array. Any wishful thinking that it can be economically solved with an analogue computer is becoming more paralogical by the hour.

If "economically" refers to speed (in comparison to a digital computer) then no one would prefer an analog computer. If "economically" refers to cost, someone may try it at least in principle; some may not worry about the future use if they are convinced that there is advantage (in terms of speed) going for an analog computer at present.
 
  • #113
An analogue computer in this application is a low pass filter. If there are no changes it will settle exponentially towards a final value. That says it will never actually settle, but always be on a trajectory towards a closer solution. The frames that are considered for the display will be samples of the state variables at the specified times, but it is important that the process be allowed to continue without interruption by the data sampling that creates the frames.
The implementation of IIR digital filters has the same topology as the analogue computer elements being considered here to solve the equation set.

Kirana Kumara P said:
If "economically" refers to cost, someone may try it at least in principle; some may not worry about the future use if they are convinced that there is advantage (in terms of speed) going for an analog computer at present.
Only a steampunk fanatic would attempt to build an analogue computer to simulate surgery. They would not succeed.
 
  • Like
Likes Kirana Kumara P
  • #114
FactChecker said:
No. There is no "frame rate" in an analog computer. It is responding to the step inputs as the continuous differential equations of the system modeled would respond to such inputs. If you could run your inputs at a much higher rate, the inputs would just have much smaller steps and the results from the analog computer would be more accurate. So the analog part would respond as the real organ would if your poking motions were in steps of 30 Hz. Any problems are not due to the analog computer; they are due to the rough, steps of the inputs.

PS. Insisting that the computer "settle" in for each new input is incorrect. The actual process of poking an organ would behave in a smoother way. You don't want rough 30 Hz steps to be passed through in an unnatural way. Ideally, you would either change your inputs at a faster rate or smooth out the results with some filtering (but that would have to be done carefully).

To avoid confusion, let us not use the word "frame" when it comes to analog computing. All I am interested in is to get the solution within 30 milliseconds. The steps that you have mentioned may refer to how the input is applied. I am interested only in the final value of the input (or the final step). Of course we would use sufficient number of steps so that the result for the final step is acceptably accurate. Once the result for the final step is known, then I would transfer the final result alone (not the results for the intermediate steps) to the digital computer which would display the result on the screen connected to it. It should be possible to get the solution for the final step within 30 miliseconds.

Next, I would change the connections and/or parameters, and run a similar simulation as above again, and again transfer the final result to the digital computer. Again I would transfer only the result for the final step here (I am not interested in the intermediate steps here also). The entire process mentioned in this paragraph should be over within 30 milliseconds.

The tasks mentioned in the last paragraph would continue for the entire duration of the simulation of biological organs (for half an hour, say).

Now the digital computer receives about 30 results per second for the entire duration of the simulation, and it renders the results on the screen. there will be visual continuity since there are about 30 frame per second now.
 
  • #115
Kirana Kumara P said:
To avoid confusion, let us not use the word "frame" when it comes to analog computing. All I am interested in is to get the solution within 30 milliseconds. The steps that you have mentioned may refer to how the input is applied. I am interested only in the final value of the input (or the final step). Of course we would use sufficient number of steps so that the result for the final step is acceptably accurate. Once the result for the final step is known, then I would transfer the final result alone (not the results for the intermediate steps) to the digital computer which would display the result on the screen connected to it. It should be possible to get the solution for the final step within 30 miliseconds.
I understand. I don't want to get hung up on something that is probably of no benefit to you (because I don't think that analog computers are right for your task), but I can't resist making one last point. The actual physical object would react to the changed input in some smooth way that is determined by differential equations. The analog computer will mimic that in a continuous way. It accurately represents the real physics at every point in time, not just at the end of the 30 Hz frames.
 
Last edited:
  • Like
Likes Kirana Kumara P
  • #116
FactChecker said:
The analog computer will mimic that in a continuous way. It accurately represents the real physics at every point in time, not just at the end of the 30 Hz frames.
But the problem definition does not specify how the input varies within 30 milliseconds (input is constant). Once the problem is clearly defined, that definition of the problem would be the true physics (although the reality can be slightly different). Anyway, the very final result is the image that is manipulated on the screen, and that depends only on the value of the final step. Then the use of the intermediate steps would be just a way to address the nonlinearity present in the system.
 
  • #117
Kirana Kumara P said:
But the problem definition does not specify how the input varies within 30 milliseconds (input is constant). Once the problem is clearly defined, that definition of the problem would be the true physics (although the reality can be slightly different). Anyway, the very final result is the image that is manipulated on the screen, and that depends only on the value of the final step. Then the use of the intermediate steps would be just a way to address the nonlinearity present in the system.
Right. My point is that there is no concern about "settling time" and frame rates inside the calculations of the analog computer. All the signal values and states are correct for the given differential equations and input signals at all times. That can greatly reduce the problems of synchronizing computer operations and minimizing latency.
 
  • Like
Likes Kirana Kumara P
  • #119
Nidum said:
These systems (e.g., particle systems) are usually used in computer games and the accuracy offered by them is poor. It is okay to use them for gaming since there it is enough if the simulations "look" realistic. They are usually a very crude approximation of the true physics. They are not usually used for engineering analysis. The accuracy can improve when these types of systems employ methods like the finite element method, but even when this happens to be the case, bad finite elements (low accuracy) are deliberately used to achieve faster simulations, as has been done in the above link. Of course, it may serve their purpose, but it will not serve our purpose.

Again, I have been aware of this type of simulations since long time.
 
  • #120
Kirana Kumara P said:
Next, I would change the connections and/or parameters, and run a similar simulation as above again, and again transfer the final result to the digital computer. Again I would transfer only the result for the final step here (I am not interested in the intermediate steps here also). The entire process mentioned in this paragraph should be over within 30 milliseconds.
Your misunderstanding of analogue computers explains your weird approach and the title of this thread. You are treating the analogue computer as if it is a discrete multi-tasking digital computer running fixed-time algorithms. It is in fact a continuous function of continuous inputs. There can be no final step in an equation solution as the state variables will never really be stable. The output of an analogue processor that you display will be the result of a low-pass filtering process of the recent values of state variables. You cannot afford to wait for the solution to settle, nor can you waste time reloading the state variable values, or restarting the circuit for every frame.
 
  • Like
Likes Kirana Kumara P

Similar threads

Replies
1
Views
2K
Replies
9
Views
7K
Replies
1
Views
4K
  • · Replies 6 ·
Replies
6
Views
3K
  • · Replies 9 ·
Replies
9
Views
948
  • · Replies 3 ·
Replies
3
Views
3K
Replies
2
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 2 ·
Replies
2
Views
7K
  • · Replies 2 ·
Replies
2
Views
2K