[Opensim-dev] Can OpenSim be used for physically realistic training simulator?

Diva Canto diva at metaverseink.com
Fri Sep 5 14:51:38 UTC 2008


The answer to your questions on the bottom is yes, as long as what you 
want is a credible visualization rather than a scientifically accurate 
simulation. On the server side you can affect avatars in all sorts of 
ways. Just don't try to stuff a lot of computation in between every 
heartbeat, because the simulator core is a busy bee. There's only so 
many cycles, and they seem to be already pretty full, especially when 
there's a physics engine in action. You may want to look at writing your 
own physics optimized for your visualization, instead of using the 
existing physics engines which are pretty generic. (Case in point: for 
my simple traffic simulation, I had to make my vehicles phantom, because 
the physics engine was way too heavy on them, and ultimately didn't add 
anything to the purpose of that particular traffic simulation)

Yasir Assam wrote:
> Hello Mike,
>
> Thanks for your considered response - much appreciated.
>
> I should say that I know very little about OpenSim - it's mainly
> because of my ignorance that I asked my question, in order to see
> whether it's worth me investing time in learning it.
>
> If I understand you correctly what you're suggesting is that it might
> be a good idea to write the physics simulation in a separate process
> to OpenSim and let OpenSim just render the salient parts of the
> simulation results somehow. Is that right?
>
> For the app that I have in mind, the realism I'm after is important
> only insofar as it affects the experience of the avatars participating
> in it. The sim would only be used for training emergency services
> staff to respond effectively to natural disasters. Realism is
> important because the user needs to see their avatar affected by the
> environment in realistic ways. For example, if my avatar wades into a
> rushing creek during a flash flood, I need to get a good sense of just
> how much force there is in the water flow, and how easy it is to be
> swept away. The detailed results of what the simulation does in the
> backend don't count, only the in-world effects of the simulation on
> the avatars. I appreciate that I may need to do a lot of processing to
> achieve this, but my intention is to model no more than I need to get
> the desired effect.
>
> Assuming that I can write a physics engine to model enough of what I
> need to render this stuff in-world, would OpenSim be able to constrain
> avatars in the ways I described (e.g. sweep an avatar away in a flash
> flood), and would OpenSim allow me to do things like fast-forward and
> the features I mentioned in my original email?
>
> Thanks,
> Yasir
>
> On Thu, Sep 4, 2008 at 11:58 PM, Mike Pitman <pitman at us.ibm.com> wrote:
>   
>> Hello Yassir,
>>
>> I'm happy to hear of your interest in using the opensim platform for
>> realistic physical process simulation. There are several scattered efforts
>> that have looked at this, including a few I'm involved with. I'll offer some
>> thoughts on this, which are just my suggestions to guide your approach.
>> There is a larger discussion that should eventually take place on
>> opensim-dev when opensim is further along.
>>
>> The physics engines in opensim really are not designed to be general purpose
>> simulation engines for models of physically realistic processes. Domain
>> models will have a level of detail specific to the model which strongly
>> determines force calculation and integration. The physics engine in opensim
>> is purposed for keeping avatars from bumping into things, (hopefully soon)
>> vehicles, and basically running the coarse level of everyday realism that
>> keeps the user's mind in connection with what is happening in world. We
>> really wouldn't want to push more realism on to the internal physics engine
>> until a number of other issues get resolved.
>>
>> Having said that, I'm very optimistic about opensim as a platform for
>> scientific work. The critical point is where you factor the workload, and
>> specifically what you use opensim for. I see opensim more of an interface to
>> backend systems that perform special simulations rather than a tool to
>> simulate. Simulations of physical process can produce enormous amounts of
>> data ( I deal with close to a petabyte of all-atom dynamics trajectories).
>> Most of simulation data is not interpretively useful, and analysis of that
>> data has to be understood well enough to write papers with figures in them,
>> and make simple clear points about what you learned. Opensim's greatest role
>> here, in my opinion, sits in between the simulation and the paper writing,
>> closer to the paper than the simulation. The part where you're working
>> collaboratively to analyze what it means, and what you found. In my
>> experience, this comes down to simple models that make simple points, which
>> could not have been arrived at without the heavy realistic simulation.
>>
>> Ok, so why do I think this post belongs in opensim-dev? Because the use case
>> of interfacing with backend simulations is a recurring one, and a sensible
>> way to approach that class is to bring it to a discussion of what interfaces
>> are needed to set up the simulations in world, execute and manage job queues
>> controlling the simulation, maintaining simulation parameters, managing
>> output and archiving, accessing meta data about the simulation, control the
>> data reduction from inworld, maintaining domain specific metrics and
>> measurement procedures, and then the interesting part: data visualization,
>> understanding, sharing and group discussions in the context of the data.
>> There are lots of aspects to that process where opensim can bring real
>> advances to the table, and genuinely lead to the dismissal of contempory
>> techniques for the great new way, but I feel actually doing the simulation
>> in opensim misses the point. Where we need to focus in this context, is what
>> are the use cases that drive easier integration from inworld to backend
>> systems, both for controlling backend systems, and understanding the simple
>> summaries of what backend systems can tell us.
>>
>> I'll invite you to think more about how best to factor your overall use case
>> in a way that keeps opensim as a 'thin' layer of control and shared coarse
>> visualization, and discuss more specifically what the actual requirements
>> might look like to produce results in your domain, and share them with
>> others.
>>
>>
>> -Mike Pitman/ Rez Tone
>>
>>
>> Yasir Assam ---09/04/2008 08:08:03 AM---Hello,
>>
>> Yasir Assam <yassam at gmail.com>
>> Sent by: opensim-dev-bounces at lists.berlios.de
>>
>> 09/04/2008 04:59 AM
>>
>> Please respond to
>> opensim-dev at lists.berlios.de
>>
>> To
>> opensim-dev at lists.berlios.de
>> cc
>>
>> Subject
>> [Opensim-dev] Can OpenSim be used for physically realistic training
>> simulator?
>> Hello,
>>
>> I'm considering writing modules for OpenSim to enable me to create a
>> physically realistic training simulator.
>>
>> In brief, my simulator has to
>>
>>    * simulate & render certain physical processes realistically (e.g.
>>      weather events such as hurricanes and their effects on the
>>      environment)
>>    * constrain avatar movements (e.g. no flying, and impede motion on
>>      fatigue)
>>    * allow a privileged user to fast-forward/rewind simulation (e.g.
>>      jump forward 6 hours in the simulation of the hurricane)
>>    * allow a privileged user to have multiple views of simulation (I
>>      realise this depends in part on the client app)
>>    * be able to morph/add/remove physical objects in real-time for all
>>      users to see and interact with
>>    * log user actions for assessment purposes
>>    * voice chat with simulated distance & direction (someone far away
>>      in the sim sounds distant)
>>
>> There's no need for the simulator to integrate with other grids (but
>> there's no harm if it gets that capability out of the box).
>>
>> Is it sensible to build something like this on top of OpenSim or should
>> I just write my own engine?
>>
>> Thanks,
>> Yasir
>>
>> _______________________________________________
>> Opensim-dev mailing list
>> Opensim-dev at lists.berlios.de
>> https://lists.berlios.de/mailman/listinfo/opensim-dev
>>
>>
>> _______________________________________________
>> Opensim-dev mailing list
>> Opensim-dev at lists.berlios.de
>> https://lists.berlios.de/mailman/listinfo/opensim-dev
>>
>>
>>     
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/opensim-dev
>
>   

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20080905/fb636afa/attachment-0001.html>


More information about the Opensim-dev mailing list