Từ quan điểm về mật độ dân số, một "khu vực đô thị" thường phải đáp ứng chỉ một vài tiêu chí tiên đề :
Ranh giới của nó không được bao gồm bất kỳ điểm nào có mật độ cao (tương đối) so với mật độ tối đa bên trong nó.
Nó nên được kết nối đơn giản (không có "lỗ").
Mật độ dân số trung bình của nó phải vượt quá một số ngưỡng quy định trước.
Tiên đề (1) là tự nhiên nhất: nếu một điểm biên có mật độ cao, chúng ta sẽ chỉ di chuyển ranh giới ra bên ngoài để bao gồm điểm đó trong khu vực đô thị. Tôi muốn đề xuất rằng "tương đối" có nghĩa là một tỷ lệ tối đa , chẳng hạn như một phần mười hoặc một phần trăm hoặc bất cứ điều gì. Tiên đề (2) tránh loại trừ các công viên và các khu vực mật độ thấp khác xảy ra tự nhiên trong các thành phố. Tiên đề (3) , bởi vì nó phụ thuộc vào một ngưỡng có phần tùy ý, loại bỏ các làng nhỏ gọn.
Trên thực tế, có ít nhất một yếu tố khác của sự độc đoán: bất kỳ bản đồ mật độ dân số nào được ghi nhận trung bình dân số trên các vùng lân cận địa phương (trong một số trường hợp và bằng bán kính hạt nhân cho ước tính mật độ hạt nhân). Chúng ta hãy chấp nhận kích thước vùng lân cận ngầm định này (có thể được thay đổi bằng các phương tiện tiêu cự đầu tiên chạy hoặc làm mịn hạt nhân khác trên bản đồ mật độ ban đầu), ngưỡng dân số này và ý nghĩa "tương đối cao" trong tiên đề 1 là các tham số có thể xác định được của người dùng kiểm soát kết quả.
Các tiên đề này dẫn đến một thuật toán khá đơn giản : người ta phải xác định vị trí cực đại cục bộ, tìm trong vùng lân cận của chúng cho đến khi tìm thấy một ranh giới để thỏa mãn tiên đề (1), điền vào bất kỳ lỗ nào để thỏa mãn tiên đề (2), và sau đó sàng lọc tất cả các khu vực ứng cử viên đó theo (3). Điều này được thực hiện như sau:
Tùy chọn, làm mịn bản đồ mật độ.
Thực hiện thuật toán "điền" vào bản đồ liên quan đến mật độ (xem bên dưới).
Groupgroup kết quả.
Loại bỏ các lỗ khỏi đa giác của Groupgrouped.
Thực hiện các tổng số của mật độ dân số trên các đa giác đầy.
Loại bỏ bất kỳ đa giác có tổng (hoặc mật độ trung bình) dưới ngưỡng dân số (mật độ).
Những gì còn lại là giải pháp của bạn.
Hãy để tôi nói thêm một chút về bước (1), đó là chìa khóa. Một thuật toán điền xác định "chìm" và "lấp đầy" chúng đến một mức không đổi trên độ cao của chúng. Đây chính xác là những gì Axiom (1) yêu cầu chúng ta làm, với điều kiện (a) chúng ta có thể làm cho "chìm" đóng vai trò "tối đa cục bộ" và (b) làm cho "số lượng không đổi ở trên" đóng vai trò là " phần không đổi của. " Cách để làm điều này là bằng cách điền vào logarit âm của mật độchứ không phải là mật độ chính nó. (Thêm một hằng số nhỏ đầu tiên vào mật độ - giả sử, khoảng 0,1 người trên mỗi km vuông - trước khi ghi nhật ký, để bất kỳ ô nào chứa số 0 sẽ không gây ra vấn đề.) "Hồ" trong mật độ nhật ký âm xác định ứng cử viên khu vực thành thị. Bạn vẫn có ba tham số độc lập để chơi (nhập ở các bước 0, 1 và 5); thiết lập chúng sẽ đòi hỏi một số suy nghĩ về những gì bạn thực sự có nghĩa là "khu vực đô thị" cũng như một số thử nghiệm.