Gröbner bazları ve polinom sistemi çözümü için testler


10

Son soruda , doğrusal olmayan 7 cebirsel denklemi sembolik olarak çözme sistemi olan Brian Borchers, Maple'ın Matlab / Mupad'ın işleyemediği bir polinom sistemini çözebileceğini deneysel olarak doğruladı. Geçmişte bu alanda çalışan insanlardan Maple'ın Gröbner üslerinin ve ilgili algoritmaların (burada kullanılan şey olduğunu varsayıyorum) yüksek kaliteli bir uygulaması olduğunu duydum.

Bu yüzden "Matlab bu tür problemlerde yavaş, Maple'a geç" önermek için cazipim, ama bu ifadeyi yedeklemek için veri istiyorum.

Farklı bilgisayar cebir sistemlerinde Gröbner tabanlı uygulamaların ve polinom sistemi çözümlerinin hızını ve etkinliğini karşılaştıran bir dizi karşılaştırma sonucu var mı? (Maple, Mathematica, Matlab'ın sembolik araç kutusu, vb.).


Unutma sympy!
Christian Clason

@ChristianClason Evet, prensipte bir sürü var. Singular, Macaulay, Magma, CoCoA, Gap, Sage, Axiom, Maxima, Yacas ... Senfoninin özellikle iyi olduğuna inanıyor musunuz? Alaa'nın problemine nasıl yaklaşıyor?
Federico Poloni

Özellikle iyi olduğuna inanmıyorum, sadece ilgilendiğim için yaygın olarak erişilebilir, açık kaynaklıdır ve öğrenmesi oldukça kolaydır. Sorunu denedim, ancak sonuç alamadım (ama çok fazla sabrım da yoktu).
Christian Clason

Bence genel amaçlı sembolik yazılım (SymPy, Maple, Matlab'ın araç kutusu, Mathematica) ve daha endüstriyel güç, özel amaçlı paketler (Singular, CoCoA, Macaulay) arasında ayrım yapılması gerekir. Adaçayı biraz farklıdır, çünkü aslında sadece birçok özel amaçlı paketi bir araya getirir (birkaç genel amaçlı paketle birlikte). Orada Vikipedi'de kullanışlı liste .
Christian Clason

Sympy'den bahsetmemin bir başka nedeni, Alaa'nın ilgilendiği rolü doldurmasıdır - sonuçları lambdifysayısal hesaplamalarda (aracılığıyla ) kullanmak kolaydır .
Christian Clason

Yanıtlar:


10

Burada bazı ölçütler yayınladım: http://www.cecm.sfu.ca/~rpearcea/mgb.html

Bunlar toplam derece siparişleri içindir. Sistemleri çözmek için genellikle daha fazla iş yapmanız gerekir. 2015'ten itibaren zamanlamalar tipik bir orta kademe masaüstü içindir (Haswell Core i5 dört çekirdekli).

Bir çekirdekteki en hızlı sistem, kayan noktalı aritmetik ve SSE / AVX kullanan Magma'dır. Magma en güçlü sistemdir, çünkü FGLM ve Groebner yürüyüşünün iyi uygulamaları vardır (test edilmemiştir). Bu algoritmalar, toplam derece temelini üçgen biçime sahip sözlükbilimsel temellere dönüştürmek için kullanılır. O zaman genellikle en düşük değişkenlerdeki polinomları hesaba katarsınız.

mgb, Maple 2016'da toplam derece ve eleme siparişleri için F4 algoritmasını uygulayan C kütüphanesidir. Birden fazla çekirdek kullandığında performansı Magma ile karşılaştırılabilir.

FGb, Faugere'nin F4'ü uygulamasıdır. Burada test edilen sürüm web sitesinden ve Maple'daki sürümden daha hızlı.

Giac, F4 uygulaması olan açık kaynaklı bir sistemdir. Bunu açıklayan bir makale var http://arxiv.org/abs/1309.4044

Singular, cebirsel geometride birçok hesaplama için açık kaynaklı bir sistemdir. Buradaki karşılaştırmalar, Buchberger algoritmasının çok modüler bir versiyonu olan "modStd" i kullanıyor. Buchberger algoritmasının F4 ile rekabetçi olmadığını görebilirsiniz. Temel neden F4'ün tüm monomiyal operasyonların maliyetini amorti etmesidir. Bunun yanı sıra, Singular, FGLM ve Groebner Walk'un yanı sıra çözme için yararlı diğer algoritmaların oldukça iyi uygulamalarına sahiptir.


Teşekkürler, bu çok faydalı. Kabul edilen cevabı değiştirmeyi düşünüyorum.
Federico Poloni

8

Google'da çalışmak benchmark polynomial systems, Mannheim Üniversitesi Bilgisayar Cebir Kıyaslama Girişimi de dahil olmak üzere birkaç isabete yol açar . Ne yazık ki, bunların çoğu güncel değil veya geçersiz. En aktif olanı SymbolicData Wiki gibi görünüyor , ancak söyleyebildiğim kadarıyla , kıyaslama sonuçlarını değil, sadece kıyaslama sorunlarını topluyor .

Axiom, Macsyma, Maple, Mathematica, MuPAD ve Polinom sistemlerini çözme çözümlerinin bazı karşılaştırmaları (1996'ya kadar uzanıyor) Hans-Gert Gräbe, Polinom Sistemi Hakkında Axiom, Macsyma, Maple, Mathematica, MuPAD Hakkında and Reduce , Preprint 11/96 des Instituts für Informatik, Universität Leipzig, Almanya, Aralık 1996 . Sonuç, Axiom, Maple ve Reduce'un Gröbner üslerini kullanması nedeniyle kazandıkları (diğerleri bu noktada olmadı) ve Maple diğerlerinden biraz önce çıkıyor.

SINGULAR web sitesinde SINGULAR 2.0'ı (Aralık 2015 itibariyle şu an 4.0.2'dir) gösteren eski bir karşılaştırma da var .

Öte yandan, daha yakın tarihli bir yayın ( Yao Sun, Dongdai Lin ve Dingkang Wang. 2015. M4RI'den lineer cebirsel rutinleri kullanarak imza tabanlı Gröbner temel algoritmaları uygulama hakkında. ACM Commun. Comput. Algebra 49, 2 (Ağustos 2015) , 63-64 yazarların Gröbner temel algoritmasını uygulamalarını Maple, Singular ve Magma'nınkiyle karşılaştırır, Magma büyüklük sırasına göre (ve yazarların uygulamasına bağlı olarak) diğer iki paketten daha hızlıdır.

Bu nedenle, soruna (boyutun yanı sıra yapıya) ve hangi paketin en hızlı olduğu yazılım sürümüne çok bağlı olduğu görülmektedir. Bununla birlikte, genel amaçlı bir sembolik hesaplama yazılımı yerine Singular, Magma veya Maple gibi aktif olarak geliştirilmiş, özel amaçlı bir bilgisayar cebiri sisteminin kullanılması önerisi sağlamdır. Bu , başka bir ek yük seviyesi ekleyen ve genellikle dayandıkları bağımsız yazılımın (Matlab'ın araç kutusu durumunda daha önce Maple olan MuPAD) arkasındaki birkaç sürüm olan sayısal bir yazılımdaki bir araç kutusu için iki katına çıkar .


Bu kaynakları sağladığınız için teşekkür ederiz. Kapsamlı ve güncel kıyaslamaların çok az olması veya hiç olmaması şaşırtıcı.
Federico Poloni

6

Herhangi bir karşılaştırmanın sonucunun, sorunun boyutuna ek olarak, üzerinde polinom halkasının tanımlandığı taban alanına (rasyonel sayılar veya tamsayılar bir asal sayının bazı gücünü modulo) bağlı olacağını daima unutmayın.

FGB kütüphane F5 algoritmasının aktif olarak geliştirilen ve yüksek performanslı bir uygulamasıdır. FGb ile Magma'yı karşılaştıran bir karşılaştırma ölçütü şurada bulunabilir:

Faugère, J.-C. (2010). FGb: Gröbner Üslerini Hesaplamak için bir Kütüphane (s. 84-87). DOI: 10.1007 / 978-3-642-15582-6_17

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.