algorithmic modeling for Rhino

Simulating the Dynamic Features of Using Scenarios

As a user navigates a space to address a set of tasks, his/her level of satisfaction changes according to changes in the surrounding environment. This video ...

Views: 450


You need to be a member of Grasshopper to add comments!

Join Grasshopper

Comment by Saied Zarrinmehr on October 22, 2013 at 1:26pm

The basic assumption in this early prototype was that the importance of nursing tasks overrides the preferences of the nurse to change the walking trail. The evaluation was done in relation to daylight intensity and quality of view from a specific window. In healthcare literature there are strong experimental evidence supporting their significance. In equal time intervals we collected the daylight intensity data and then checked to see how often and where an agent will be pushed out of his/her comfort zone. The following image shows an example of this type of evaluation.

•Light: Over 10 seconds in light intensities over 800 lux or less that 300 lux

•Decision: More than 25% chance of making decisions
•Walking Distance: Continuously walked over 2500 ft

As you would expect we were involved in quite a lot of programming. Grasshopper does not provide an environment for extensive programming. You need to write everything in one page. You can use SDK connections to develop your own battery; however, every time you want to test the code, you need to compile it, add the battery to GH and test it. Also, GH does not provide a line by line debugging mode, which is a real barrier. I am sorry to say all of that when surrounded by great fans of GH … lool .. but I hope they take care of that soon :). So around a year ago, I faced real obstacles and switched to Autodesk Revit, and C# programming in Visual Studio IDE. Apart from the changes in platforms, the basic ideas are still unchanged.

Comment by Saied Zarrinmehr on October 22, 2013 at 1:24pm

Dear Everyone,

I would appreciate all of you for sharing your ideas and comments with me. Some of you asked questions about implementation and others focused on the measurement of the satisfaction. I am afraid I cannot explain everything in detail because I am too lazy to write extensively:) However, the framework is much easier to deal with.

This animation emerged during our efforts to develop an application for evaluating using scenarios. The collaboration of our lab at the collage of architecture of Texas A&M University with another lab at the department of computer science ended up in a developing a tool that was presented last Summer in EDRA 44. The reference is below:

Zarrinmehr, S., Rodriguez, S., Giese, A., Al-Douri, F., Clayton, M., & Amato, N., (2013). “Prototyping an Evidence-Based Evaluation System for Nursing Scenarios Using Agent-Based Modeling”, Presented in EDRA44, Providence, Rhode Island, United States.

The agent (i.e. nurse) navigates the environment to reach certain destinations where patients need care delivery. On regular occasions each patient’s room needs to be checked even though care delivery might not be asked for. I also need to add that the periodical visits to the destinations also have some randomness. Therefore, the walking trail is not predetermined, while the destinations and their periodical visits are determined.

The path is always selected from the cone of vision. The implementation method used partial isovist calculation to capture the cone of vision and Dijkstra algorithm to find the shortest path. The partial isovist finds the potential points in the visible scene and Dijkstra connects them to the temporary destinations.

The whole operation was done in a one battery in GH because of several reasons which mainly include the iterative process of decision-making. Grasshopper has an isovist calculation battery that shoots rays at equal angles. This battery missed many of the potential exit points needed to calculate the shortest paths. A potential exit point is a point in the visible scene which may offer an exit. In the example below these points are highlighted in green. I developed another algorithm to capture isovist that walked with equal step lengths on the visible edges. Their difference in 360 degree cone of vision is shown in the following images.


GH isovist

My isovist an potential exit points

Dijkstra Algorithm is very well-known and you just need to search it online to find tones of examples and tutorials to learn and use it.

Comment by bea franko on October 22, 2013 at 8:08am

this is great!

how do you let this guy walk and decide?

Comment by Nick Tyrer on October 22, 2013 at 3:46am

Saied, i really like this idea! How is the 'satisfaction' displayed. Am i missing it?

Two comments; if you had some sort of graph/bar at the side that displayed in real time the 'satisfaction' it would make it more clear, how different spaces affect overall levels.

Second, as previously noted, is your user's path defined by a curve or is it an agent? If defined by a curve, i would try and make it a bit more believable, possibly, staying in a certain space for a moment.

Comment by Benjamin Felbrich on October 22, 2013 at 1:49am

Did you use Hoopsnake for the iterative process?

Comment by beta on October 21, 2013 at 8:39pm

i second that!

Comment by Nitya Balan on October 21, 2013 at 8:36pm

What has that agent been smoking! :D No seriously, Wow! 

Good Work, though I would really like you to explain it more so that newbies like me can also grasp the idea in a better way!






  • Add Photos
  • View All

© 2019   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service