Adjustment of bicycle profile to review comments
This commit is contained in:
		
							parent
							
								
									a3e0eb03db
								
							
						
					
					
						commit
						a41caf0efb
					
				| @ -25,6 +25,16 @@ Feature: Bicycle - Adds penalties to unsafe roads | |||||||
|     Scenario: Bike - Apply no penalties to ways with cycleways |     Scenario: Bike - Apply no penalties to ways with cycleways | ||||||
|         Then routability should be |         Then routability should be | ||||||
|             | highway        | cycleway    | forw    | backw   | forw_rate | backw_rate | |             | highway        | cycleway    | forw    | backw   | forw_rate | backw_rate | | ||||||
|  |             | motorway       | track       | 15 km/h |         |       4.2 |            | | ||||||
|  |             | primary        | track       | 15 km/h | 15 km/h |       4.2 |        4.2 | | ||||||
|  |             | secondary      | track       | 15 km/h | 15 km/h |       4.2 |        4.2 | | ||||||
|  |             | tertiary       | track       | 15 km/h | 15 km/h |       4.2 |        4.2 | | ||||||
|  |             | primary_link   | track       | 15 km/h | 15 km/h |       4.2 |        4.2 | | ||||||
|  |             | secondary_link | track       | 15 km/h | 15 km/h |       4.2 |        4.2 | | ||||||
|  |             | tertiary_link  | track       | 15 km/h | 15 km/h |       4.2 |        4.2 | | ||||||
|  |             | residential    | track       | 15 km/h | 15 km/h |       4.2 |        4.2 | | ||||||
|  |             | cycleway       | track       | 15 km/h | 15 km/h |       4.2 |        4.2 | | ||||||
|  |             | footway        | track       | 15 km/h | 15 km/h |       4.2 |        4.2 | | ||||||
|             | motorway       | lane        | 15 km/h |         |       4.2 |            | |             | motorway       | lane        | 15 km/h |         |       4.2 |            | | ||||||
|             | primary        | lane        | 15 km/h | 15 km/h |       4.2 |        4.2 | |             | primary        | lane        | 15 km/h | 15 km/h |       4.2 |        4.2 | | ||||||
|             | secondary      | lane        | 15 km/h | 15 km/h |       4.2 |        4.2 | |             | secondary      | lane        | 15 km/h | 15 km/h |       4.2 |        4.2 | | ||||||
| @ -40,31 +50,51 @@ Feature: Bicycle - Adds penalties to unsafe roads | |||||||
| 
 | 
 | ||||||
|     Scenario: Bike - Apply no penalties to ways in direction of cycleways |     Scenario: Bike - Apply no penalties to ways in direction of cycleways | ||||||
|         Then routability should be |         Then routability should be | ||||||
|             | highway       | cycleway:right | cycleway:left | forw       | backw      | forw_rate | backw_rate | |             | highway        | cycleway:right | cycleway:left | forw        | backw       | forw_rate | backw_rate | | ||||||
|             | motorway      | lane           |               | 15 km/h    |            | 4.2       |            | |             | motorway       | track          |               | 15 km/h     |             |       4.2 |            | | ||||||
|             | primary       | lane           |               | 15 km/h    | 15 km/h    | 4.2       | 2.9        | |             | primary        | track          |               | 15 km/h     | 15 km/h     |       4.2 |        2.9 | | ||||||
|             | secondary     | lane           |               | 15 km/h    | 15 km/h    | 4.2       | 2.9        | |             | secondary      | track          |               | 15 km/h     | 15 km/h     |       4.2 |        2.9 | | ||||||
|             | tertiary      | lane           |               | 15 km/h    | 15 km/h    | 4.2       | 2.9        | |             | tertiary       | track          |               | 15 km/h     | 15 km/h     |       4.2 |        2.9 | | ||||||
|             | primary_link  | lane           |               | 15 km/h    | 15 km/h    | 4.2       | 2.9        | |             | primary_link   | track          |               | 15 km/h     | 15 km/h     |       4.2 |        2.9 | | ||||||
|             | secondary_link| lane           |               | 15 km/h    | 15 km/h    | 4.2       | 2.9        | |             | secondary_link | track          |               | 15 km/h     | 15 km/h     |       4.2 |        2.9 | | ||||||
|             | tertiary_link | lane           |               | 15 km/h    | 15 km/h    | 4.2       | 2.9        | |             | tertiary_link  | track          |               | 15 km/h     | 15 km/h     |       4.2 |        2.9 | | ||||||
|             | residential   | lane           |               | 15 km/h    | 15 km/h    | 4.2       | 4.2        | |             | residential    | track          |               | 15 km/h     | 15 km/h     |       4.2 |        4.2 | | ||||||
|             | cycleway      | lane           |               | 15 km/h    | 15 km/h    | 4.2       | 4.2        | |             | cycleway       | track          |               | 15 km/h     | 15 km/h     |       4.2 |        4.2 | | ||||||
|             | footway       | lane           |               | 15 km/h    | 6 km/h +-1 | 4.2       | 1.7        | |             | footway        | track          |               | 15 km/h     | 6 km/h +-1  |       4.2 |        1.7 | | ||||||
|             | motorway      |                | lane          |            | 15 km/h    |           | 4.2        | |             | motorway       |                | track         |             | 15 km/h     |           |        4.2 | | ||||||
|             | primary       |                | lane          | 15 km/h    | 15 km/h    | 2.9       | 4.2        | |             | primary        |                | track         | 15 km/h     | 15 km/h     |       2.9 |        4.2 | | ||||||
|             | secondary     |                | lane          | 15 km/h    | 15 km/h    | 2.9       | 4.2        | |             | secondary      |                | track         | 15 km/h     | 15 km/h     |       2.9 |        4.2 | | ||||||
|             | tertiary      |                | lane          | 15 km/h    | 15 km/h    | 2.9       | 4.2        | |             | tertiary       |                | track         | 15 km/h     | 15 km/h     |       2.9 |        4.2 | | ||||||
|             | primary_link  |                | lane          | 15 km/h    | 15 km/h    | 2.9       | 4.2        | |             | primary_link   |                | track         | 15 km/h     | 15 km/h     |       2.9 |        4.2 | | ||||||
|             | secondary_link|                | lane          | 15 km/h    | 15 km/h    | 2.9       | 4.2        | |             | secondary_link |                | track         | 15 km/h     | 15 km/h     |       2.9 |        4.2 | | ||||||
|             | tertiary_link |                | lane          | 15 km/h    | 15 km/h    | 2.9       | 4.2        | |             | tertiary_link  |                | track         | 15 km/h     | 15 km/h     |       2.9 |        4.2 | | ||||||
|             | residential   |                | lane          | 15 km/h    | 15 km/h    | 4.2       | 4.2        | |             | residential    |                | track         | 15 km/h     | 15 km/h     |       4.2 |        4.2 | | ||||||
|             | cycleway      |                | lane          | 15 km/h    | 15 km/h    | 4.2       | 4.2        | |             | cycleway       |                | track         | 15 km/h     | 15 km/h     |       4.2 |        4.2 | | ||||||
|             | footway       |                | lane          | 6 km/h +-1 | 15 km/h    | 1.7       | 4.2        | |             | footway        |                | track         | 6 km/h +-1  | 15 km/h     |       1.7 |        4.2 | | ||||||
|             | motorway      | shared_lane    |               | 15 km/h    |            | 4.2       |            | |             | motorway       | lane           |               | 15 km/h     |             |       4.2 |            | | ||||||
|             | primary       | shared_lane    |               | 15 km/h    | 15 km/h    | 4.2       | 2.9        | |             | primary        | lane           |               | 15 km/h     | 15 km/h     |       4.2 |        2.9 | | ||||||
|             | motorway      |                | shared_lane   |            | 15 km/h    |           | 4.2        | |             | secondary      | lane           |               | 15 km/h     | 15 km/h     |       4.2 |        2.9 | | ||||||
|             | primary       |                | shared_lane   | 15 km/h    | 15 km/h    | 2.9       | 4.2        | |             | tertiary       | lane           |               | 15 km/h     | 15 km/h     |       4.2 |        2.9 | | ||||||
|  |             | primary_link   | lane           |               | 15 km/h     | 15 km/h     |       4.2 |        2.9 | | ||||||
|  |             | secondary_link | lane           |               | 15 km/h     | 15 km/h     |       4.2 |        2.9 | | ||||||
|  |             | tertiary_link  | lane           |               | 15 km/h     | 15 km/h     |       4.2 |        2.9 | | ||||||
|  |             | residential    | lane           |               | 15 km/h +-1 | 15 km/h +-1 |       4.2 |        4.2 | | ||||||
|  |             | cycleway       | lane           |               | 15 km/h     | 15 km/h     |       4.2 |        4.2 | | ||||||
|  |             | footway        | lane           |               | 15 km/h     | 6 km/h +-1  |       4.2 |        1.7 | | ||||||
|  |             | motorway       |                | lane          |             | 15 km/h     |           |        4.2 | | ||||||
|  |             | primary        |                | lane          | 15 km/h     | 15 km/h     |       2.9 |        4.2 | | ||||||
|  |             | secondary      |                | lane          | 15 km/h +-1 | 15 km/h +-1 |       2.9 |        4.2 | | ||||||
|  |             | tertiary       |                | lane          | 15 km/h     | 15 km/h     |       2.9 |        4.2 | | ||||||
|  |             | primary_link   |                | lane          | 15 km/h     | 15 km/h     |       2.9 |        4.2 | | ||||||
|  |             | secondary_link |                | lane          | 15 km/h     | 15 km/h     |       2.9 |        4.2 | | ||||||
|  |             | tertiary_link  |                | lane          | 15 km/h     | 15 km/h     |       2.9 |        4.2 | | ||||||
|  |             | residential    |                | lane          | 15 km/h     | 15 km/h     |       4.2 |        4.2 | | ||||||
|  |             | cycleway       |                | lane          | 15 km/h     | 15 km/h     |       4.2 |        4.2 | | ||||||
|  |             | footway        |                | lane          | 6 km/h +-1  | 15 km/h     |       1.7 |        4.2 | | ||||||
|  |             | motorway       | shared_lane    |               | 15 km/h     |             |       4.2 |            | | ||||||
|  |             | primary        | shared_lane    |               | 15 km/h     | 15 km/h     |       4.2 |        2.9 | | ||||||
|  |             | motorway       |                | shared_lane   |             | 15 km/h     |           |        4.2 | | ||||||
|  |             | primary        |                | shared_lane   | 15 km/h     | 15 km/h     |       2.9 |        4.2 | | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|     Scenario: Bike - Don't apply penalties for all kind of cycleways |     Scenario: Bike - Don't apply penalties for all kind of cycleways | ||||||
|  | |||||||
| @ -32,10 +32,6 @@ local profile = { | |||||||
|   u_turn_penalty            = 20, |   u_turn_penalty            = 20, | ||||||
|   turn_penalty              = 6, |   turn_penalty              = 6, | ||||||
|   turn_bias                 = 1.4, |   turn_bias                 = 1.4, | ||||||
| 
 |  | ||||||
|   -- reduce the driving speed by 30% for unsafe roads |  | ||||||
|   -- only used for cyclability metric |  | ||||||
|   safety_penalty            = 0.7, |  | ||||||
|   use_public_transport      = true, |   use_public_transport      = true, | ||||||
| 
 | 
 | ||||||
|   allowed_start_modes = Set { |   allowed_start_modes = Set { | ||||||
| @ -59,17 +55,17 @@ local profile = { | |||||||
|   }, |   }, | ||||||
| 
 | 
 | ||||||
|   access_tag_whitelist = Set { |   access_tag_whitelist = Set { | ||||||
|   	'yes', |     'yes', | ||||||
|   	'permissive', |     'permissive', | ||||||
|    	'designated' |     'designated' | ||||||
|   }, |   }, | ||||||
| 
 | 
 | ||||||
|   access_tag_blacklist = Set { |   access_tag_blacklist = Set { | ||||||
|   	'no', |     'no', | ||||||
|    	'private', |     'private', | ||||||
|    	'agricultural', |     'agricultural', | ||||||
|    	'forestry', |     'forestry', | ||||||
|    	'delivery' |     'delivery' | ||||||
|   }, |   }, | ||||||
| 
 | 
 | ||||||
|   restricted_access_tag_list = Set { }, |   restricted_access_tag_list = Set { }, | ||||||
| @ -77,34 +73,36 @@ local profile = { | |||||||
|   restricted_highway_whitelist = Set { }, |   restricted_highway_whitelist = Set { }, | ||||||
| 
 | 
 | ||||||
|   access_tags_hierarchy = Sequence { |   access_tags_hierarchy = Sequence { | ||||||
|   	'bicycle', |     'bicycle', | ||||||
|   	'vehicle', |     'vehicle', | ||||||
|   	'access' |     'access' | ||||||
|   }, |   }, | ||||||
| 
 | 
 | ||||||
|   restrictions = Set { |   restrictions = Set { | ||||||
|   	'bicycle' |     'bicycle' | ||||||
|   }, |   }, | ||||||
| 
 | 
 | ||||||
|   cycleway_tags = Set { |   cycleway_tags = Set { | ||||||
|   	'track', |     'track', | ||||||
|   	'lane', |     'lane', | ||||||
|   	'opposite', |     'opposite', | ||||||
|   	'opposite_lane', |     'opposite_lane', | ||||||
|   	'opposite_track', |     'opposite_track', | ||||||
|   	'share_busway', |     'share_busway', | ||||||
|   	'sharrow', |     'sharrow', | ||||||
|   	'shared', |     'shared', | ||||||
|     'shared_lane' |     'shared_lane' | ||||||
|   }, |   }, | ||||||
| 
 | 
 | ||||||
|   unsafe_highway_list = Set { |   -- reduce the driving speed by 30% for unsafe roads | ||||||
|   	'primary', |   -- only used for cyclability metric | ||||||
|    	'secondary', |   unsafe_highway_list = { | ||||||
|    	'tertiary', |     primary = 0.7, | ||||||
|    	'primary_link', |     secondary = 0.7, | ||||||
|    	'secondary_link', |     tertiary = 0.7, | ||||||
|    	'tertiary_link' |     primary_link = 0.7, | ||||||
|  |     secondary_link = 0.7, | ||||||
|  |     tertiary_link = 0.7, | ||||||
|   }, |   }, | ||||||
| 
 | 
 | ||||||
|   service_penalties = { |   service_penalties = { | ||||||
| @ -504,17 +502,18 @@ function way_function (way, result) | |||||||
| 
 | 
 | ||||||
|   -- convert duration into cyclability |   -- convert duration into cyclability | ||||||
|   if properties.weight_name == 'cyclability' then |   if properties.weight_name == 'cyclability' then | ||||||
|       local is_unsafe = profile.safety_penalty < 1 and profile.unsafe_highway_list[data.highway] |       local safety_penalty = profile.unsafe_highway_list[data.highway] or 1. | ||||||
|  |       local is_unsafe = safety_penalty < 1 | ||||||
|       local forward_is_unsafe = is_unsafe and not has_cycleway_right |       local forward_is_unsafe = is_unsafe and not has_cycleway_right | ||||||
|       local backward_is_unsafe = is_unsafe and not has_cycleway_left |       local backward_is_unsafe = is_unsafe and not has_cycleway_left | ||||||
|       local is_undesireable = data.highway == "service" and profile.service_penalties[service] |       local is_undesireable = data.highway == "service" and profile.service_penalties[service] | ||||||
|       local forward_penalty = 1. |       local forward_penalty = 1. | ||||||
|       local backward_penalty = 1. |       local backward_penalty = 1. | ||||||
|       if forward_is_unsafe then |       if forward_is_unsafe then | ||||||
|         forward_penalty = math.min(forward_penalty, profile.safety_penalty) |         forward_penalty = math.min(forward_penalty, safety_penalty) | ||||||
|       end |       end | ||||||
|       if backward_is_unsafe then |       if backward_is_unsafe then | ||||||
|          backward_penalty = math.min(backward_penalty, profile.safety_penalty) |          backward_penalty = math.min(backward_penalty, safety_penalty) | ||||||
|       end |       end | ||||||
| 
 | 
 | ||||||
|       if is_undesireable then |       if is_undesireable then | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user