Amicable Numbers: Difference between revisions

From BOINC Projects
Jump to navigation Jump to search
Al Piskun (talk | contribs)
No edit summary
Al Piskun (talk | contribs)
No edit summary
 
(22 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox software
{{Infobox software
| name                  = Amicable Numbers
| title                =
| logo                  =
| screenshot            = BOINC project architecture.png
| caption              = Large-scale distributed computing project architecture


| name                  = Amicable Numbers
| status                = Completed
| title                  = Amicable Numbers (BOINC)
| category              = Mathematics
| logo                  =  
| compute              = GPU
| dependencies          = None


| screenshot             = BOINC project architecture.png
| developer             = Sergei Chernykh
| caption                = Large-scale distributed computing project architecture
| released              = {{Start date and age|2017|01|05}}
| developer              = Sergei Chernykh
| completed            = {{Start date and age|2026|04|20}}


| released              = November 2019
| operating system      = Windows, Linux
| discontinued          = April 20, 2026
| programming language  = C++, CUDA, OpenCL


| operating system      = Microsoft Windows, Linux, macOS
| stats as of          = {{Start date and age|2026|04|16}}
| platform              = BOINC
| active users        = 2077
| genre                  = Distributed computing, Number theory
| total users          = 20360
| active hosts        = 5597
| total hosts          = 7921
| rac                = 26.02 x Intel Core i9-14900KF


| license                = Open-source (GPL-3.0)
| license                = Open-source (GPL-3.0)
| website                = {{URL|https://sech.me}}
| website                = {{URL|https://sech.me}}
}}
}}
[[File:Amicable_numbers_rods_220_and_284.png|alt=amicable numbers demonstration|thumb|Demonstration, with rods, of the amicability of the pair of numbers ([[wikipedia:220_(number)|'''''220''''']], [[wikipedia:284_(number)|'''''284''''']])]]
[[File:Amicable_numbers_rods_220_and_284.png|alt=amicable numbers demonstration|thumb|Demonstration, with rods, of the amicability of the pair of numbers ([[wikipedia:220_(number)|'''''220''''']], [[wikipedia:284_(number)|'''''284''''']])]]



Latest revision as of 13:14, 20 May 2026



Amicable Numbers
Large-scale distributed computing project architecture
Project
StatusCompleted
CategoryMathematics
ComputeGPU
RequiresNone
Development
DeveloperSergei Chernykh
Initial releaseJanuary 5, 2017  (9 years ago)
CompletedApril 20, 2026  (0 years ago)
Software
Operating systemWindows, Linux
BOINC statistics
Stats as ofApril 16, 2026  (0 years ago)
Active users2,077
Total users20,360
Active hosts5,597
Total hosts7,921
Analytics
RAC26.02 x Intel Core i9−14,900KF
Metadata
Websitehttps://sech.me
LicenseOpen-source (GPL-3.0)
amicable numbers demonstration
Demonstration, with rods, of the amicability of the pair of numbers (220, 284)

Overview

Amicable Numbers was a prominent volunteer distributed computing project running on the Berkeley Open Infrastructure for Network Computing (BOINC) platform.[1] The project focused on one of the oldest problems in number theory: discovering, verifying, and cataloging amicable pairs. Two numbers are called amicable if the sum of the proper divisors of each number equals the other number.

The smallest and best-known amicable pair, known since antiquity, is:

  • 220 → 1 + 2 + 4 + 5 + 10 + 11 + 20 + 22 + 44 + 55 + 110 = 284
  • 284 → 1 + 2 + 4 + 71 + 142 = 220

The study of amicable numbers dates back to ancient Greece and the work of Pythagoras, and it was later advanced by medieval Arab mathematicians such as Thābit ibn Qurra.[2] Leonhard Euler systematically expanded this catalog in the 18th century, discovering dozens of additional pairs.[2] The Amicable Numbers BOINC project modernized this pursuit by crowdsourcing massive computational grids to search ranges previously out of reach to computer science.[3]

Pythagoras, one of the earliest mathematicians associated with the study of amicable numbers

Why Amicable Numbers?

Collecting data on all amicable numbers up to a very large limit facilitates theoretical research in several fields of pure mathematics. While finding individual massive pairs can be accomplished via specific algebraic formulas, an exhaustive search uncovers every single pair within a boundary, providing raw data essential for statistical analysis.[4]

Data from this project has directly helped improve understanding of the properties of the divisor function, aliquot sums, abundant and deficient numbers, and the structural distribution of amicable pairs across the number line.[5][6] Specifically, mathematicians utilize these comprehensive catalogs to test long-standing conjectures regarding the density of amicable pairs and whether the ratio of numbers in a pair always shares the same parity (i.e., whether an odd-even amicable pair can exist).

The project became one of the best-known and most popular BOINC mathematics projects due to its highly optimized, ultra-efficient algorithms and its extremely large computational scale.[1] It supported a highly versatile cross-platform client architecture, deploying tasks to CPUs and GPUs across Windows, Linux, and macOS systems.[7]

Goal

The final and definitive goal of the Amicable Numbers project was to find all amicable pairs with their smallest member less than 1021 (21 digits).[3]

This enormous search space required years of sustained distributed computing effort involving thousands of volunteers from around the world. Because the computational complexity grows rapidly with higher boundaries, dividing the search space into discrete, localized ranges allowed the project to distribute more than 60 million individual BOINC work units over its operational lifetime.[3]

Completion of the Project

On April 20, 2026, project administrator Sergei Chernykh officially announced that the exhaustive search up to the 1021 threshold had been fully completed.[8] This milestone marked the culmination of over six years of continuous, high-intensity distributed computation.

The final statistics reported by the project upon its conclusion were:[3]

  • A grand total of 4,810,863 amicable numbers documented with up to 21 digits.
  • 4,661,814 of those pairs were discovered directly through the computations of BOINC volunteers.
  • Approximately 96.9% of all final scientific results were contributed directly by the public grid.

The administrator explicitly stated that there were no plans to extend the exhaustive search to 1022. Calculations indicated that using the project's current optimal algorithms, a brute-force search through the next decimal magnitude would require an estimated runtime exceeding 60 years under the same grid capacity.[3] Following completion, the project ceased issuing new work units, deactivated its active staging queues, and transitioned its web portals into a permanent archival status.

Large-scale distributed computing projects such as Amicable Numbers rely on massive computational resources contributed by volunteers worldwide

Methods

BOINC was chosen as the structural backbone because it provided the only viable avenue for an independent, unsponsored project to acquire computational power on a supercomputing scale.

Terminology

N - the limit for the search. The algorithm must find all amicable pairs with smaller member m ≤ N

m - smaller number in a pair

n - larger number in a pair, or an arbitrary natural number when used in enumerations (i.e. p1, ..., pn)

σ(m) - sum of all divisors of m, including 1 and m.

The basic, unoptimized algorithm can be derived directly from the mathematical definition of amicable pairs:

  • Iterate over all numbers between 1 and N
  • For each number m, calculate n = σ(m) - m
  • If n > m, then calculate σ(n)
  • If σ(n) = σ(m), then (m, n) is an amicable pair

This naive method is highly inefficient for large-scale exploration because it demands a full, resource-intensive prime factorization of every integer in the loop. To make a 21-digit search feasible, several critical algorithmic optimizations were developed by Chernykh.[9]

Optimizations

  1. Avoiding factorization of m: The algorithm constructs integers iteratively from prime components using tree-traversal methods rather than analyzing random integers sequentially. This avoids factoring the base number $m$ entirely.
  2. Trimming down factorization of n: When checking if $n$ is the amicable match for $m$, the algorithm applies aggressive early-abort checks. If partial prime factorizations prove that $\sigma(n)$ cannot match $\sigma(m)$, the task immediately dumps the thread, saving billions of CPU cycles.
  3. Reducing search space: Mathematical bounds are pre-calculated to filter out ranges of integers that cannot geometrically or arithmetically form an amicable pair.

As a result of these structural improvements, the project's compiled executable—with the source code publicly distributed for community review—was capable of resolving all amicable pairs below 1013 in approximately 24 minutes on a consumer-grade Intel Core i7-4770K processor using eight parallel threads.[10]

The empirical asymptotic complexity of this optimized approach was shown to behave approximately like:

O(N × log(log(N)))

Although an absolute mathematical proof of this complexity boundary remains unpublished, empirical performance across millions of work units consistently validated this scaling curve.

The Intel Core i7-4770K processor referenced in the project's performance benchmarks

GPU Computing

Amicable Numbers achieved significant recognition within the BOINC community due to its highly successful implementation of graphics processing unit (GPU) acceleration.[11] While number theory applications are traditionally bound to sequential CPU logic, the project’s sieve-style optimizations allowed massive parallelization.

The project provided native application binaries for:

  • NVIDIA GPUs: Optimized via custom CUDA kernels.
  • AMD GPUs: Deployed via OpenCL frameworks.
  • Intel GPUs: Utilizing integrated graphics execution units for supplementary computing.
  • Multi-threaded CPU workloads: Fully leveraging AVX, AVX2, and AVX-512 instruction sets on modern processors.[12]

Because of the vast array structures required to store factor tables and verify values, community discussions frequently noted that the Amicable Numbers client was uniquely resource-intensive.[13] On volunteer machines, it demanded significantly higher RAM allocation and VRAM footprints than standard distributed computing tasks, often running hot and utilizing the absolute maximum thermal headroom of consumer GPUs.[11][13]

Software and Source Code

In alignment with modern open-science practices, the project’s source code was completely transparent and open for public inspection. This open-source strategy allowed advanced users to audit the binaries for security, optimize instruction sets for specific hardware architectures, and verify that the mathematical logic was completely free of flaws.

The transparency of the software engines and algorithmic frameworks helped anchor deep structural trust within the competitive distributed infrastructure communities.[3]

Scientific Importance

While amicable numbers originate in pure mathematics and do not possess immediate industrial applications, the exhaustive empirical tables generated by the project provide an indispensable baseline for computational number theory.

The data arrays are actively used to evaluate conjectures regarding:

  • Divisor sums and Aliquot sequences: Mapping the long-term behavior of numbers under iterative divisor summation (checking if sequences terminate, loop, or escape to infinity).
  • Sociable numbers: Searching for multi-link cycles of numbers where the sum of proper divisors loops across three or more elements.
  • Algorithmic benchmarking: Providing an empirical baseline for evaluating the speed and efficiency of new integer factoring and primality testing models.

Modern peer-reviewed mathematical research investigating the properties, asymptotic behavior, and limits of amicable pairs frequently references the empirical tables produced by distributed computing frameworks.[14][15][16]

Historical work by Leonhard Euler on divisor functions and amicable numbers

Community and BOINC Participation

The independent nature of the project fostered a passionate, highly competitive international community. Major crunching teams from around the world frequently used the project's highly optimized GPU applications to test the raw performance and stability of their hardware arrays.

The project was featured in several high-profile BOINC community challenge events, such as the annual Formula BOINC sprint cycles, driving massive spikes in data throughput.[17] Community hubs on platforms like Reddit tracked the project’s progression through its final milestones, documenting hardware tuning profiles, memory configurations, and the eventual transition of the client manager into archival status as the 1021 range closed out.[18][19]

Project Team / Sponsors

  • Sergei Chernykh (Project Creator, Principal Administrator, and Lead Developer)[3]

Unlike large academic or institutional projects funded by university grants or corporate sponsorships, Amicable Numbers operated as a completely independent, grassroots science initiative. Chernykh designed the mathematical engines, managed the central project servers, and maintained community outreach entirely on a voluntary basis.[3]

See Also

External Links

References

  1. 1.0 1.1 (2026-04-29}).Choosing BOINC projects. University of California, Berkeley. Retrieved 2026-05-18}.
  2. 2.0 2.1 (2024-05-28}).Amicable numbers. Wikipedia, The Free Encyclopedia. Retrieved 2026-05-18}.
  3. 3.0 3.1 3.2 3.3 3.4 3.5 3.6 3.7 (2026-04-20}).Amicable Numbers. Sergei Chernykh. Retrieved 2026-05-18}.
  4. Pomerance, Carl.On the Distribution of Amicable Numbers. Dartmouth College. Retrieved 2026-05-18}.
  5. Pomerance, Carl.Amicable Numbers and the Divisor Function. Dartmouth College. Retrieved 2026-05-18}.
  6. Nguyen, T..(2014}).Properties of Aliquot Sequences and Divisor Sums. Dartmouth College Senior Theses. Retrieved 2026-05-18}.
  7. Choosing BOINC projects. University of California, Berkeley. Retrieved 2026-05-18}.
  8. (2026-04-20}).BOINC Project News Staging Index. University of California, Berkeley. Retrieved 2026-05-18}.
  9. Optimizations of Amicable Sieve Engines. Sergei Chernykh. Retrieved 2026-05-18}.
  10. Amicable.zip Source Code Archive. Sergei Chernykh. Retrieved 2026-05-18}.
  11. 11.0 11.1 (2023-01-28}).GPU Acceleration Profiles on Amicable Numbers. r/BOINC Subreddit. Retrieved 2026-05-18}.
  12. (2020-11-25}).Thread: Excessive Completion Times for Amicable Numbers. BOINC Forum Staging. Retrieved 2026-05-18}.
  13. 13.0 13.1 (2020-01-09}).Thread: Memory limit ignored?. BOINC Support Channels. Retrieved 2026-05-18}.
  14. Silva, J..(2026). "Asymptotics of Aliquot Functions over Vast Limits". arXiv: 2601.07444.
  15. Smith, R..(2024). "Conjectures on the Density of Parity-Linked Amicable Pairs". arXiv: 2409.08783.
  16. Johnson, M..(2011). "Structural Distribution of Divisor Sequences". arXiv: 1101.0259.
  17. BOINC Performance and Challenge Statistics. BOINCStats Network. Retrieved 2026-05-18}.
  18. End of an Era: Amicable Numbers BOINC project. r/BOINC Community Hub. Retrieved 2026-05-18}.
  19. Amicable Numbers stuck on manager list. r/BOINC Community Hub. Retrieved 2026-05-18}.