Adding Visibility to Visibility Graphs: Weighting Visibility Analysis with Attenuation Coefficients

A collaboration between informatics, design, and physics, we extend the long-used visibility graph to include attenuation based on the distance and environmental conditions.


Evaluating the built environment based on visibility has been long used as a tool for human-centric design. The origins of isovists and visibility graphs are within interior spaces, while more recently, these evaluation techniques have been applied in the urban context. One of the key differentiators of an outside environment is the weather, which has largely been ignored in the design computation and space-syntax research areas. While a visibility graph is a straightforward metric for determining connectivity between regions of space through a line of sight calculation, this approach largely ignores the actual visibility of one point to another. This paper introduces a new method for weighting a visibility graph based on weather conditions (i.e. rain, fog, snow). These new factors are integrated into visibility graphs and applied to sample environments to demonstrate the variance between assuming a straight line of sight and reduced visibility.

(Above) Overview of framework. An input model is provided, which we calculate the visibility graph for. The user then sets the weather condition(s). We apply attenuation coefficients calculated per weather condition on the edge distances and re-weight the visibility graph.

Visibility Based on Weather Conditions

When translating the experience a person has of large open halls and high ceilings of a building to the urban scale, there may be an assumption that these spatial experiences translate well, as humans remain the same. However, at large distances, atmosphere and environmental conditions impact visibility (right). The intuition and
results gained from spatial analysis and human subject studies at the
building scale and, in many cases of urban environments,
miss the impact of adverse weather.

The importance of considering how adverse weather impacts
visibility–and therefore, human experience in the built environment–
is tied not only to the visceral experience, but to proper wayfinding and navigational cues as well (right). While adverse weather is
not the status quo in many regions, it is important to consider the
human experience of the built environment not only at the optimal
condition of what we (as designers) intend for the possibility of
a design, but to the very real problems and conditions of the environment as well

Visibility Analysis

Visibility is a function of the distance and attenuation coefficient when light passes through a uniform media such as the atmosphere. The term is used when reporting the maximum distance one can see the difference in maximum contrast in a particular light and weather condition.

For example, this relationship between distance and attenuation is used in reference to weather reports (e.g., 0.25mi, above, left), where it is used to show the distance at which an object or light can be clearly identified. However, the use of the Koschmieder equation as a reference to visibility can be confusing in the context of the built environment and design, where the visibility of something is unlikely to be considered in absolutes. Rather, this reference of visibility with a specific distance should be considered as object detection and not necessarily identification. The original equation, the logarithm of a percentage, defines the Contrast Ratio (??). The visual contrast within an environment is determined by the light difference between an observer from the background and a black object. This value, reported as a ratio (referred to here as ??), is shown in Equation 2 (above, right).

When considering an overcast sky, the contrast reduction of the sky by clouds creates a blank view for an occupant (4a), standing on the top of the building on the right, looking up (field of view shown as a triangle). This view is near identical to that of a person looking across the street to a building with adverse weather conditions. At the same time, they would be able to see the building and/or information associated (e.g., signage) when close (4b), represented by two people on a sidewalk facing the left and right buildings


Comparative Models. To provide a comparison to the breadth of existing research on visibility graphs and space syntax analysis, a set of basic models that have been seen throughout the literature is used for explaining how the weather-based calculations perform. Below, five models are shown in a 3D perspective.

City Generation. As a more specific example of when such an approach may be of interest, a sample city was created (below). The environment was created using CityEngine with 2m sidewalks defined around the buildings, using one of the automated features for generating a sample city with a hexagonal street network pattern.

Visibility Graph Case

First, a basic measure using the models from Figure 5 in visibility graph analysis is performed to ensure the system is able to replicate past results.

Fig. 7a: Individual

Fig. 7b: Comparison

(Above) Degree of each node. In Figure 7a the color-scale is individual to each case. In Figure 7b, the heatmap of all figures is normalized, showing the third option has the highest number of total edge connections.

Fig. 9a: Rain

Fig. 9b: Fog

Fig. 9c: Snow

(Above) Figure 9a shows results of Rain condition with a rainfall rate of 8(mm/h). Figure 9b shows Heavy Advection fog with parameters from Table 2. Figure 9c shows results of Dry Snow (Table 1) at a rate of 4(mm/h).

In addition to the graphs all-to-all ??, another analysis is done with the graph nodes connected to one location (below).

Large Scale Case

To demonstrate how the metric may perform when analyzing an urban environment, we focus on a central region of the city model (below). Three sample points are queried at a multi-segment intersection, referred to as P1, P2, and P3. P1 is placed on the sidewalk corner opposite where the ?? visually has the highest connectivity

(Above) Heatmap visualizing the ?? score for a snowfall condition where the entire ?? is ??? and for each, case the point is ???. Colorscale is from high (red) to low (blue) visibility. Calculated results are: ?? (?1) = 709, ?? (?1) = 0.014, ?? (?2) = 610, ?? (?2) = 0.0121, ?? (?3) = 686, ?? (?3) = 0.0136.