Public service agencies typically operate within a geographical area (for example, a district, city, county, or similar jurisdictional boundary). The geographical area is partitioned into multiple non-overlapping geographical service areas. A particular set of geographical service areas that divide the geographical area may be referred to as a partition map. Workers are then assigned to a particular geographical service area within which they respond to service calls. Service calls could relate to services provided by police, fire, sanitation, and other public and private service agencies.
The accompanying figures, where like reference numerals refer to identical or functionally similar elements throughout the separate views, together with the detailed description below, are incorporated in and form part of the specification, and serve to further illustrate embodiments of concepts that include the claimed invention, and explain various principles and advantages of those embodiments.
Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of embodiments of the present invention.
The apparatus and method components have been represented where appropriate by conventional symbols in the drawings, showing only those specific details that are pertinent to understanding the embodiments of the present invention so as not to obscure the disclosure with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.
Determining precisely how to divide a geographical area into different service areas is challenging due to the number of different possible combinations of geographical service areas, the number of parameters that affect the determination of the geographical service areas, and the workload associated with each geographical service area.
Additionally, even if several different combinations of the geographical service areas are generated, it is difficult to determine which combinations are better than others. Rather, managers and other individuals at service agencies (sometimes referred to as users herein) rely on previous experience to determine, subjectively, an appropriate combination of the geographical service areas for a given geographical area (for example, a city, district, county, or the like). It may not be apparent that an inadequate partition map was selected until, for example, certain partitions (that is, geographical service areas) consistently show a significantly higher or lower workload than the rest of the partitions (that is, the workload among partitions is unbalanced). Even when it is determined that a partition map was selected erroneously, no further insight is gained as to which map would be better, except that the appropriate partition map was not the previously selected one.
One embodiment provides a method of determining geographic service areas. The method includes receiving, at an electronic processor, map information corresponding to a geographical area, and receiving, at the electronic processor, incident information corresponding to the geographical area. The method also includes generating, with the electronic processor, a plurality of partition maps of the geographical area based on the map information and the incident information, and displaying the plurality of partition maps as symbols on a chart according to a compactness index and a workload distribution index of each partition map. Each partition map includes one or more partitions, and each partition represents a geographical service area.
Another embodiment provides a service area determination system including a memory, an electronic processor coupled to the memory, and a display screen coupled to the electronic processor. The electronic process is configured to extract instructions from the memory, and execute the instructions to receive map information corresponding to a geographical area, and receive incident information corresponding to the geographical area. The electronic processor also executes the instructions to generate a partition map of the geographical area based on the map information and the incident information. The partition map includes one or more partitions, and each partition represents a geographical service area. The display screen is configured to display the partition map as a symbol on a chart according to a compactness index and a workload distribution index of the partition map.
The communication network 140 may be a wired network or a wireless network and may be implemented using a wide area network, such as the Internet, a local area network, such as Wi-Fi, or combinations or derivatives thereof. It should be understood that the computing device 103 and the databases 130, 135 may communicate over more than one communication network and different pairs of components may communicate over different networks. Also, in some embodiments, the computing device 103 may communicate with the databases 130, 135 over a dedicated connection rather than a communication network.
In the example shown in
As illustrated in
The electronic processor 105, the storage device 110, the communication interface 115, the input device 125, and the display screen 120 communicate over one or more wired communication lines or buses or wirelessly. The storage device 110 stores software (instructions). For example, the storage device 110 stores instructions to be extracted and executed by the electronic processor 105 to determine (for example, generate) geographical service areas for the public service agency.
Through the communication interface 115, the computing device 103 communicates with the geographical database 135 via the communication network 140 to receive geographical boundaries and other geographical data for a specific public service agency. The computing device 103 may receive, for example, the geographical boundaries that indicate the limits of jurisdiction for a public service agency (for example, a police district boundary). The geographical boundaries include, for example, latitudinal and longitudinal coordinates that indicate the boundary for the specific public service agency. In some embodiments, the geographical information database 135 also stores other map landmarks such as roads, lakes, rivers, bridges, and the like. In some embodiments, the geographical information database 135 stores the geographical boundaries for several different public service agencies. For example, the geographical information database 135 may store the jurisdictional boundaries for several police districts. In another example, instead of accessing a geographical information database 135 as shown in
The computing device 103 also communicates with the incident database 130 over the communication network 140 using the communication interface 115 to receive incident data associated with a particular public service agency. In particular, the incident database 130 stores information regarding calls for service received and/or handled by the public service agency. In other words, the incident information includes information regarding calls for service received, but not attended to (for example, because the service agency attended to a different call for service), as well as dispatch information for the calls for service, which the service agency attended. In some cases, the information regarding calls for service received, but not addressed may be referred to as an expected workload demand, while the dispatch information may be referred to as an actual workload demand. In the illustrated embodiment, the incident information from the incident database 130 also corresponds to the geographical area of the public service agency. For example, when the public service agency includes a police department, the incident information stored in the incident database 130 corresponds to the geographical area assigned to the police department. In some embodiments, the incident database 130 stores information for multiple public service agencies, for example, multiple police departments. In such embodiments, the incident information is associated with geographical information such that the incident data may be sorted by the geographical area (for example, the originating location of a service call) for a specific public service agency. The incident database 130 may be maintained remotely from the computing device 103, or, in some embodiments, may be maintained by the computing device 103. In one example, the incident database 130 stores incident information that includes unattended incident data and/or dispatch data for a public service agency (such as, for example, a police department). In such an example, the unattended incident data includes type of incident, a location of the incident, an expected time to resolve the incident for the calls for service received by the public service agency but not addressed by the public service agency. The dispatch data includes, for example, a type of incident, a location of the incident, an identification code for a worker who responded to the incident, a time allocated to the incident, and the like.
After receiving the map information and the incident information corresponding to the geographical area, the electronic processor 105 generates a plurality of partition maps of the geographical area based on the map information and the incident information (block 215).
The electronic processor 105 then utilizes the display screen 120 to display the plurality of partition maps as symbols on a chart according to a compactness index and a workload distribution index of each partition map (block 230). The compactness index provides a measure of the relative compactness of each partition within the particular partition map, while the workload distribution index provides a measure of the workload balance achieved by dividing the partition map into the different partitions. The compactness index decreases as the partitions within a partition map are more compact. Analogously, the workload distribution index also decreases as the workload among the different partitions is more balanced.
Generating such a display allows users to intuitively identify the partition maps with better compactness indices and better workload distribution indices, indicating which partition maps are expected to perform better when implemented by the public service agency. Without calculating the compactness index and the workload distribution index for each partition map, users are trapped visually inspecting each partition map without any particular measures indicating which partition maps may perform better when implemented. Additionally, generating the chart displaying the symbols representing the different partition maps allows the user to more easily identify the better partition maps option without searching through cumbersome tables.
Typically, determining how to divide a geographical area assigned or associated with a public service agency (for example, a police department) requires long hours and a significant amount of previous experience to select the appropriate division of the geographical area into partitions corresponding to geographical service areas. Typical software used to generate different partition maps uses a variety of input parameters. Slight changes to the input parameters, however, generate significantly different partition maps. Therefore, if the input parameters are varied, a large number of potential partition maps are generated. However, comparing two different partition maps and predicting how well each partition map may perform while implemented has been left to the subjective opinion of those users with sufficient experience. That is, an experienced police officer or sergeant may visually inspect each of the partition maps and determine, based on his/her experience policing the associated geographical area which partition maps may perform better than others. The experienced individual may look, for example, for elongated partitions (see, for example, 320 on
The experienced individual may also determine, based on his/her own previous experience in the geographical area, approximately how the workload may be balanced in different partition maps, but assessing the workload balance of the partitions may also be a subjective process in some cases. While it may be obvious which partition maps have the worst workload balance, selecting among the partition maps that have more similar workload balance is significantly more difficult to perform subjectively. The users assigned to determine the geographical service areas (that is, the partitions) for the geographical area for the public service agency, therefore, may have no objective measures that indicate how to select a partition map that is expected to perform well when implemented. In some cases, measurements like an average workload balance and a standard deviation are used to help determine which partition map to select, but as discussed in further detail with respect to
As discussed above, the partition maps generated by the electronic processor 105 are based on the incident information and the map information. The partition maps are also based on the values assigned to various input parameters. In some embodiments, the electronic processor 105 receives an indication of the desired value for some or all of the input parameters. In other embodiments, the electronic processor 105 selects a value for some or all of the input parameters. In the illustrated embodiment, however, the electronic processor 105 generates various sets of partition maps by changing the values of the input parameters. The input parameters include, for example, a desired number of geographical service areas (that is, beats), a region size, buffer distance, edge connectivity, edge weight, desired workload distribution, and workload imbalance threshold.
The desired number of geographical service areas is specified by a user based on, for example, the typical number of workers during a shift, or other aspects of the public service agency. The electronic processor 105 receives an indication via the input device 125 of the desired number of geographical service areas (that is, the number of partitions) for the geographical area. In some embodiments, the user may indicate a range of desired number of geographical service areas such as, for example, four to six geographical areas. The electronic processor 105 will then generate different partition maps including four, five, or six geographical service areas. The desired workload distribution and the workload imbalance threshold are also received by the electronic processor 105 from the user via the input device 125. The desired workload distribution (for example, a target workload for each geographical service area) indicates the percentage of total workload that is to be allocated to each of the geographical service areas (or partitions). While in some embodiments, the desired workload distribution is uniform (that is, each partition within a partition map should have approximately equal workload), in other embodiments, each partition may have varying workloads and the workforce of the public service agency is allocated accordingly. In one example, a geographical area is divided into three geographical service areas, and the workload distribution indicates that a first partition should handle 20% of the workload, the second partition should handle 30% of the workload, and the third partition should handle 50% of the workload. In other embodiments, the specific percentages associated with each partition may vary. The workload imbalance threshold indicates the allowed disparity between the desired workload distribution and the actual workload distribution of the partition. For example, in embodiments in which the workload distribution is equal, the workload imbalance threshold may be set to about 10%. For example, if the geographical area is divided into five geographical service areas (that is, beats) and a uniform workload distribution is desired, then the maximum workload in any geographical service area is not to exceed 22% (that is 20% plus 10% of the 20% (2%)) or be lower than 18% (20% minus 10% of the 20% (2%)). The workload imbalance is not set greater than 100% or lower than 0%. In other examples, the workload imbalance threshold may be set to 5%, 15%, 20%, among others.
The buffer distance parameter refers to a deviation distance from the geographical boundaries indicated from the map information for the specific public service agency. In other words, the buffer distance includes a distance extending from a perimeter of the geographical boundary for the geographical area. The buffer distance accounts for any time that may be allocated to responding to service calls that are just outside the geographical boundaries for the specific public service agency. For example, a police department may answer to service calls that are a city block from its official geographical boundaries. The buffer distance may be set, for example, to 10 meters, 25 meters, 50 meters, and the like. Including this additional area into the calculations allows the electronic processor 105 to create more alternative partition maps that may have lower compactness indices and/or lower workload distribution indices. Additionally, including the buffer distance allows the geographical service area generation system 100 to account for a workload experienced by workers of the public service agency when responding to calls for service (that is, to account for a real workload).
The electronic processor 105 then calculates a workload for each region based on the incident information (block 510). In the illustrated embodiment, the electronic processor 105 calculates the workload for each region based on the dispatch information to calculate the actual workload for each region. A workload vector is assigned to each region. The workload vector characterizes the time historically allocated to handle different types of incidents (or calls for service). In other words, the vector specifies the time spent on resolving incidents of a first type, incidents of a second type, incidents of a third type, and the like. The workload for each region is then calculated based on the number of service calls received for the region for a particular type of incident and for the time allocated to the incident. Because the workload vector separately indicates the time allocated to different types of incidents, the workload associated with specific types of incidents can be individually analyzed, as described below with respect to
The electronic processor 105 then generates an adjacency graph in which each region is represented by a node in the adjacency graph (block 515). The electronic processor 105 generates the adjacency graph based on the edge connectivity parameter and the edge weight parameter. The edge connectivity parameter indicates how the nodes of the adjacency graph are to be connected (that is, the linkage structure of the adjacency graph). In particular, the edge connectivity parameter indicates that the nodes connect in a 4-linkage or orthogonal linkage (
As mentioned above, the adjacency graph is also based on the edge weight parameter. The edge weight parameter is a vector with the cardinality equal to the number of edges in the adjacency graph. In the illustrated embodiment, a first weight value is assigned to all the diagonal edges, and a second weight value, which may be different than the first weight value, is assigned to all the orthogonal edges. In some embodiments, the first weight value and the second weight value may be equal. In the illustrated embodiment, the electronic processor 105 assigned higher weight values to orthogonal edges (that is, the second weight value is higher or exceeds the first weight value). Such higher weights encourage the formation of compact structures. In the illustrated embodiment, the connection in the 4-linkage adjacency graph are equally weighted (because the 4-way linkage graph includes only orthogonal edges), while the connection in the 8-linkage adjacency graph are weighted according to the edge weight parameter (since the 8-linkage adjacency graph includes both orthogonal and diagonal edges). In some embodiments, the electronic processor 105 varies the weights of orthogonal and/or diagonal (non-orthogonal) connections to generate more partition maps with potentially better workload distribution and/or compactness indices. For example, the electronic processor 105 may generate a first partition map when the diagonal edges (for example, a first diagonal edge) and the orthogonal edges (for example, a second orthogonal edge) have equal weights (that is, the first weight value and the second weight value are equal). The electronic processor 105 may then generate a second partition map when the orthogonal edge weight (that is, the second weight value) is set to 2, and the diagonal edge weight (that is, the first weight value) is set to 1. Similarly, the electronic processor 105 may also generate a third partition map when the orthogonal edge weight (that is, the second weight value) is set to 3 and the diagonal edge weight (that is, the first weight value) remains at 1.
Returning to
The electronic processor 105 then calculates a compactness index and a workload distribution index for the generated partition map (block 525). The compactness index provides an objective and numerical measure that indicates how compact a particular geographical service area is. Typically, a compactness of a particular partition map is determined by dividing the perimeter of the geographical service area (or partition) over the area of the partition (sometimes referred to as the Schwarzberg Index). The electronic processor 105, however, considers not only the perimeter and the area of a partition, but also the length of a diagonal of a circumscribing shape (for example, a circumscribing rectangle or circle) for the partition. In particular, the electronic processor 105 determines the compactness index for each partition according to Equation 1 below, where P is the perimeter of the partition, S is the area of the partition, and D is the diagonal of the circumscribing shape:
The compactness index calculated by the electronic processor 105 is superior to the index calculated using only the perimeter and the area because the compactness index can differentiate among a wider set of partitions that have the same area and perimeter but are nevertheless more compact.
To assign a compactness index to the partition map rather than to each partition, the electronic processor 105 calculates the average compactness index of the partition map. In one example, a partition map is divided into three partitions having a compactness index of 20.02, 13.17, and 12.65, respectively. The electronic processor 105 calculates the average of the compactness indices for the partition map to be 15.28, and assigns the average to be the compactness index associated with the partition map. In some embodiments, the maximum compactness index for a partition of the partition map is assigned as the compactness index associated with the partition map. In other embodiments, the minimum compactness index for a partition of the partition map is assigned as the compactness index associated with the partition map.
The electronic processor 105 also calculates a workload distribution index indicative of how well the actual workloads for the various partitions follow the desired workload distribution. To calculate the workload distribution index, the electronic processor 105 compares the actual workload (that is, the total time allocated to service calls) within each partition to the desired workload distribution for that particular partition.
In the example shown in
The mean normalized workload and the standard deviation may, in some instances, be used to compare different partition maps. However, because two different measurements are used, it is hard to compare two different partition maps, especially when each partition map includes a more desirable value in only one of the measurements. For example, referring back to the example of
In particular, the workload distribution index calculates the deviation of the normalized workload for each partition (that is, τi) from a constant value (that is, 100). By contrast, the standard deviation calculation calculates the difference between the normalized workload for each partition (τi) and the mean of the normalized workload. In other words, the calculation of the standard deviation depends on the calculated mean normalized workload for the partition map, whereas the calculation of the workload distribution index uses a constant value (that is, 100) instead of the variable of the mean normalized workload. Calculating the workload distribution index using a constant value for all the partition maps, allows direct comparisons between different partition maps using a single value.
Referring back to
By generating a plurality of partition maps, each based on different input parameters, the electronic processor 105 increases the options for dividing the geographical area. In some embodiments, the electronic processor 105 receives an indication of the different values to be used for each of the input parameters. In other embodiments, the electronic processor 105 accesses from memory the different values to be used for each of the input parameters. In other words, the electronic processor 105 generates partition maps based on the same values of input parameters for different geographic areas (for example, districts, cities, counties, and the like). In yet other embodiments, the electronic processor 105 continues to vary the values of the input parameters until a certain number of partition maps are generated (for example, the electronic processor 105 generates 500 partition maps).
After the electronic processor 105 has generated the plurality of partition maps, the electronic processor 105 uses the display screen 120 to generate a display the plurality of partition maps on a chart as described with respect to block 230 of
Additionally, as shown in
While
Additionally, due to the versatility of the work vector for each region of the adjacency graph, other factors may be considered and/or isolated when generating the partition maps. For example, the time allocated to resolve the call for service may, in some embodiments, include travel time to reach the location of the call for service. The work vector may also be separated based on the times that the calls for service were received and/or resolved such that a workload vector may be generated for each of the regions of the adjacency graphs based on different work shifts or times of day. The electronic processor 105 may then be able to determine a plurality of partition maps for a particular shift. The electronic processor 105 may also incorporate other factors into the work vector for each region of the adjacency graph such as, for example, census data.
In some embodiments, the electronic processor 105 also calculates a stability index for each partition map. The stability index measures how well the workload distribution for a particular partition map is expected to perform for an extended period of time. In other words, the stability index indicates how likely it is for the workload distribution associated with a partition map will remain relatively constant for extended periods such as, for example one year. To assess the stability of the workload distribution and balance for the partition maps, the incident data is used to determine the stability workload vectors for each of the regions of the adjacency graph. In contrast to what was described with respect to block 510 above, however, the incident data and the stability workload vectors also specify a particular yearly quarter during which the time was allocated to resolve the calls for service. For example, a workload vector without dividing based on which yearly quarter the call for service was resolved may include the following vector, where i represents the type of incident:
When the workload is divided based on the yearly quarter during which the incident was resolved, the workload vector for each region can be represented as shown below, where each column represents a yearly quarter. The example shown below illustrates the workload vector including incident data for four quarters (that is, a year).
By dividing the workload vector by the yearly quarter in which the time was allocated to the incident, the electronic processor 105 can then determine what the workload distribution index would be for each quarter for a particular partition map. Based on the variability of the workload distribution index between previous quarters, the electronic processor 105 determines a measure of how well the workload distribution index is expected to perform in future yearly quarters. For example, when the electronic processor 105 determines that a particular partition map has a good workload distribution index when the workload is not divided by yearly quarter, but has a high variability (for example, a high standard deviation) when the workload is divided by the yearly quarter, the electronic processor 105 assigns a higher stability index. That is, a higher stability index indicates high variability of the workload distribution over time, while a lower stability index indicates lower variability of the workload distribution over time. In some embodiments, the electronic processor 105 divides the workload data based on a different time period instead of yearly quarters. For example, the electronic processor 105 divides the workload data based on which month the time was allocated to particular incidents or calls for service.
The stability index can be added as a third axis on the chart such that the symbols representing the different partition maps may also be graphed according to their stability index. Other ways of representing which partition maps are associated with lower stability indices may be used. For example, the electronic processor 105 may highlight just the symbols or partition maps with the lowest, for example, 10 stability indices. In some embodiments, the electronic processor 105 may use a color scheme to represent which partition maps have higher or lower stability indices. In yet other embodiments, a slider may be generated as part of the graphical user interface. The position of the slider may correspond to different values or ranges for the stability index. The chart showing the symbols based on the compactness index and the workload distribution index would then change to show the partition maps that are associated with a stability index within the range indicated by the position of the slider. In other embodiments, however, the electronic processor 105 may chart the partition maps based on only the compactness index and the workload distribution index, but provide the stability index when a particular symbol for a partition map is selected.
In some embodiments, the electronic processor 105 also executes a method 700 of determining a similarity value, as shown in
Public service agencies typically prefer not to change partition maps too drastically because, for example, workers may get confused on which areas they are to patrol. Calculating and displaying the similarity value allows the users (for example, supervisors) to determine an adequate partition map that balances the workload for the geographical area, but also resembles the baseline partition map so as to minimize the changes to each partition. In some embodiments, the electronic processor 105 may generate a chart in which one of the axes corresponds to the similarity value. Additionally or alternatively, the electronic processor 105 may generate a list of the possible partition maps in which the partition maps are displayed according to the workload distribution index, the compactness index, the stability index, and/or the similarity value.
In the foregoing specification, specific embodiments have been described. However, one of ordinary skill in the art appreciates that various modifications and changes can be made without departing from the scope of the invention as set forth in the claims below. Accordingly, the specification and figures are to be regarded in an illustrative rather than a restrictive sense, and all such modifications are intended to be included within the scope of present teachings.
The benefits, advantages, solutions to problems, and any element(s) that may cause any benefit, advantage, or solution to occur or become more pronounced are not to be construed as a critical, required, or essential features or elements of any or all the claims. The invention is defined solely by the appended claims including any amendments made during the pendency of this application and all equivalents of those claims as issued.
Moreover in this document, relational terms such as first and second, top and bottom, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. The terms “comprises,” “comprising,” “has”, “having,” “includes”, “including,” “contains”, “containing” or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises, has, includes, contains a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. An element proceeded by “comprises . . . a”, “has . . . a”, “includes . . . a”, “contains . . . a” does not, without more constraints, preclude the existence of additional identical elements in the process, method, article, or apparatus that comprises, has, includes, contains the element. The terms “a” and “an” are defined as one or more unless explicitly stated otherwise herein. The terms “substantially”, “essentially”, “approximately”, “about” or any other version thereof, are defined as being close to as understood by one of ordinary skill in the art, and in one non-limiting embodiment the term is defined to be within 10%, in another embodiment within 5%, in another embodiment within 1% and in another embodiment within 0.5%. The term “coupled” as used herein is defined as connected, although not necessarily directly and not necessarily mechanically. A device or structure that is “configured” in a certain way is configured in at least that way, but may also be configured in ways that are not listed.
It will be appreciated that some embodiments may be comprised of one or more generic or specialized electronic processors (or “processing devices”) such as microprocessors, digital signal processors, customized processors and field programmable gate arrays (FPGAs) and unique stored program instructions (including both software and firmware) that control the one or more processors to implement, in conjunction with certain non-processor circuits, some, most, or all of the functions of the method and/or apparatus described herein. Alternatively, some or all functions could be implemented by a state machine that has no stored program instructions, or in one or more application specific integrated circuits (ASICs), in which each function or some combinations of certain of the functions are implemented as custom logic. Of course, a combination of the two approaches could be used.
Moreover, an embodiment can be implemented as a computer-readable storage medium having computer readable code stored thereon for programming a computer (for example, comprising a processor) to perform a method as described and claimed herein. Examples of such computer-readable storage mediums include, but are not limited to, a hard disk, a CD-ROM, an optical storage device, a magnetic storage device, a ROM (Read Only Memory), a PROM (Programmable Read Only Memory), an EPROM (Erasable Programmable Read Only Memory), an EEPROM (Electrically Erasable Programmable Read Only Memory) and a Flash memory. Further, it is expected that one of ordinary skill, notwithstanding possibly significant effort and many design choices motivated by, for example, available time, current technology, and economic considerations, when guided by the concepts and principles disclosed herein will be readily capable of generating such software instructions and programs and ICs with minimal experimentation.
The Abstract of the Disclosure is provided to allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in various embodiments for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separately claimed subject matter.