Upload
meris
View
24
Download
3
Embed Size (px)
DESCRIPTION
Buffalo Urban Development Simulator (BUDS). “SimCity ”-like simulation for downtown and waterfront development - PowerPoint PPT Presentation
Citation preview
Buffalo Urban Development Simulator(BUDS)
“SimCity”-like simulation for downtown and waterfront development
Produce a game, like SimCity, in which Buffalo area residents can attempt to design construction and architectural restoration projects in Buffalo. The game would have to include: - the ability to design building, street, traffic, etc. icons - lace the icons and pre-constructed maps - run simulations for cost, environmental and traffic impact, decay, etc.
Users
Urban planners: Professional environment More control needed
Hobbyists: Relaxed, “Entertainment” environment More aesthetics less specifics
Crowdsourcing: Hold a contest where anyone can submit a design. The
winner’s design is then adapted from the hobbyist layout to the professional environment.
Provides Numerous Ideas and User/Customer involvement
Functionality
Map changes in 2 ways: Input from user Formulas that advance time
Traffic: Cannot keep track of every persons location Instead, buildings have “flux” values
Higher = likely source of traffic, lower = likely destination Changes as cars enter or leave location, as well as with time of day
Other things to account for: Construction Weather Save/Load functionality
Future Plans
CAD-integration: Input CAD files for specific buildings to add. Users can see buildings that they have designed as
they would look in real lifeZoning/Building Code:
Include relevant zoning/building code for specific areas
Allows for better estimates of time and cost as well as restrictions on where and what can be built
Expansion: Including additional locations, larger maps and
completely different cities.
Save Load Exit
Buffalo Urban Development Simulator
2D/3D
Population:300,000
Speed: 2x ▌▌ - + 12:03:49 PM July 15th , 2012
Weather: Sunny 70F
Buildings Roads OptionsBuffalo
Menus
Info Panel
Date + Time
Simulation Speed Control2D/3D
Toggle
Mini Map
Exit Button
Save/Load Commands
Detailed Default Screen
Congestion: 0
Buffalo Urban Development Simulator
2D/3D
Back
Speed Limit:35 Actual:35Length :8
Speed: 2x ▌▌ - + 12:03:49 PM July 15th , 2012
ExtendTwo Way Single Lane
Close Road Work
Main St
Road Selected ScreenShot
Demolish Edit Back
Buffalo Urban Development Simulator
2D/3D
Flux:0
Speed: 2x ▌▌ - + 12:03:49 PM July 15th , 2012
Height:3 Width:6 Length:4
StoreExpand CloseRenovate
Joe’s Diner
Building Selected Screenshot
Special Event More Back
Buffalo Urban Development Simulator
2D/3D
Population:300,000
Speed: 2x ▌▌ - + 12:03:49 PM July 15th , 2012
Weather: Sunny 70F
Workplace
Residential Store
Buffalo
Buildings
Buildings Menu Screenshot
Save Load Exit
Buffalo Urban Development Simulator
2D/3D
Population:300,000
Speed: 2x ▌▌ - + 12:03:49 PM July 15th , 2012
Weather: Sunny 70F
Buildings Roads OptionsBuffalo
2D Map Mode
Traffic
Creation Traffic created at Buildings Buildings have a “flux” value that determines how much
traffic leaves/enters the building. Roads:
Have a weighted value based on congestion and speed limit Factors like construction and delays affect congestion
Routes: Traffic paths(including destination) are made at Traffic
Creation Paths are maintained unless a road on the initial path gets
closed. The path is then recalculated
Traffic Pathing Algorithm Idea
When Traffic is being created, it gets a destination from the Buildings database, where is chooses at random from buildings with high flux values.
The roads have weighted values based on their actual speeds(value derived from the speed limit and the congestion of the road). We use weighted values for roads and treat them as edges and the Buildings(Creation and Destination) as vertexes as well as road intersections.
We then use a modified form of Dijkstra’s algorithm to find the shortest path between the starting location and the destination.
In the case where a road get closed while traffic is inbetween buildings, a new path is found from the nearest intersection and the destination.
Dijkstra’s Algorithm
1)Assign to every node a tentative distance value: set it to zero for our initial node and to infinity for all other nodes.2)Mark all nodes unvisited. Set the initial node as current. Create a set of the unvisited nodes called the unvisited set consisting of all the nodes except the initial node.3)For the current node, consider all of its unvisited neighbors and calculate their tentative distances. For example, if the current node A is marked with a tentative distance of 6, and the edge connecting it with a neighbor B has length 2, then the distance to B (through A) will be 6+2=8. If this distance is less than the previously recorded tentative distance of B, then overwrite that distance. Even though a neighbor has been examined, it is not marked as "visited" at this time, and it remains in the unvisited set.4)When we are done considering all of the neighbors of the current node, mark the current node as visited and remove it from the unvisited set. A visited node will never be checked again; its distance recorded now is final and minimal.5)If the destination node has been marked visited (when planning a route between two specific nodes) or if the smallest tentative distance among the nodes in the unvisited set is infinity (when planning a complete traversal), then stop. The algorithm has finished.6)Set the unvisited node marked with the smallest tentative distance as the next "current node" and go back to step 3.
Integration Thread
Integration Thread Description
An integration thread is the foundation of the system to which it belongs. It is the essential functionality that the rest of the system requires in order to run smoothly. Once an integration thread is developed, any other functionality can be built and easily added onto the rest of the system.We have identified an integration thread for BUDS. The essential functionality of this system is to be able to view the map, to interact with it by adding and removing buildings and roads, and to have traffic flow along the roads as time passes.
Integration Thread Description cont’d
Any of the other functionality can easily be added to the program with this in place. More advanced traffic management algorithms can be inserted into their modules. Any time-dependent functionality such as construction or weather can be designed and added since the necessary information is already present along with the aspect of time flowing. Buttons for the added functionality can be added into the GUI, and other settings can be made available as the functionality they modify is added.
References
BUDS Phase 1-http://team43buds.weebly.com/phase-1.htmlBUDS Phase 2-http://team43buds.weebly.com/phase-2.htmlBUDS Phase 3-http://team43buds.weebly.com/phase-3.htmlCormen, Thomas H.; Leiserson, Charles E.; Rivest, Ronald
L.; Stein, Clifford (2001). "Section 24.3: Dijkstra's algorithm". Introduction to Algorithms (Second ed.). MIT Press and McGraw-Hill. pp. 595–601. ISBN 0-262-03293-7.
Picture in User Interfaces Screen Shots- http://community.simtropolis.com/topic/12825-atheneedocumentary-of-a-city-by-paletexan/page__st__60
Mini-Map in User Interfaces Screen Shot- https://maps.google.com/