> one would have to determine the main
> "sources and sinks" -- the places where riders show up needing
> transport and where they most often reach their destination,
> relinquishing the bikes.

For designing a sharing program, I would immediately think of an agent
based model layered built on a geospatial database or a graph.  The
database/graph would encode the features of interest in the region, and the
constraints and distances of connectivity between the features.  The
relevant sites could be collected from travel brochures or guides, or
expected business travel (e.g. restaurant owner runs across town to buy
small items from cash-n-carry).  The distances would come from the database
(a map).  

I imagine what would happen is that the users of the bicycles would have
some itinerary, drawn from some set of known-popular or expected
attractions and starting locations (e.g. hotels, time shares, etc).  I
expect a person touring all day would have to intend to start early, while
other folks just zipping across town would have fewer time constraints.  So
there could be more or less variance in when they started their trip.  

Anyway, define your itineraries and sample from it randomly.  Bicycles make
their trips and are deposited and reclaimed.  Iterate that process hundreds
or thousands of times and see where the bikes tend to pile up vs. where
they tend to get exhausted.   Prioritize load balancing between those two. 
To close the loop, introduce agents that are the bike movers (pick-up
trucks) which automatically load balance..  Continue to iterate to make
sure a steady state is achieved and that exhaustion events are rare.

Or, if the sharing program is already underway, do site-by-site human
surveillance (or put a GPS/RFID on each bike with the needed
telemetry/sensors) and directly enter the data into a geospatial database. 
Prioritize the load balancing between the high and low demand regions on
whatever frequency is needed.  Do bikes run out in a day, a week or what? 
A geospatial database makes it easy to calculate those averages over
different periods and plot 'em. 

I haven't looked into the APIs for Google Maps, but one way might be to
drive that with a robot agent, and scrape/collect the trips from "Get
directions" pages.  That is, don't be concerned with an explicit
representation of the map in the model, but rather just think of it
transactionally.  "I was at Site A now at Site B", with the elapsed time a
linear function of the distance of the "Get Directions" guidance of Google
Maps.  

Marcus

--------------------------------------------------------------------
myhosting.com - Premium Microsoft® Windows® and Linux web and application
hosting - http://link.myhosting.com/myhosting



============================================================
FRIAM Applied Complexity Group listserv
Meets Fridays 9a-11:30 at cafe at St. John's College
to unsubscribe http://redfish.com/mailman/listinfo/friam_redfish.com

Reply via email to