Barrodale-Roberts algoritması kullanarak en az mutlak sapmalar çözme: Erken sonlandırma?


9

Lütfen uzun soruya izin verin, asıl soruna ulaşmak için biraz açıklamaya ihtiyacı var. Bahsedilen algoritmalara aşina olanlar muhtemelen doğrudan ilk simpleks tablasına atlayabilirler.


En az mutlak sapma problemlerini (yani -optimizasyon) çözmek için Barrodale-Roberts-algoritması, uygun bir minimum bulmak için çok daha az depolama ve hesaplama çabalarına ihtiyaç duyan özel amaçlı bir tek yönlü yöntemdir.L1

Algoritmanın uygulanması, uygun bir minimum değere ulaşılmadan önce basit bir örnekle sona erer. Ancak, muhtemelen sorunu daha ayrıntılı bir şekilde belirtmeme izin verin:

Verilen veriler , -optimization çalışır bulmak en aza indirebilmektedir burada a, üzerinde bir şekilde bağlıdır matris . Bu problem doğrusal bir program olarak ifade edilebilir ve bu nedenle diğerleri arasında simpleks benzeri yöntemler kullanılarak çözülebilir.(xi,yi)L1cm

i=1n|yif(xi)|withf(x):=Axϕ
Axn×mx

Barrodale ve Roberts, özel yapısını kullanarak simpleks yöntemini kökten basitleştiren simpleks yönteminin (görünüşte yaygın olarak kullanılan) bir modifikasyonunu . En önemlisi, bu, optimal bir çözümün , verilen veri en azından enterpolasyonudur . Jstor erişimi olanlar ilgili makaleyi burada bulabilirler .L1rank(A)

2002 yılında Lei ve Anderson, sayısal kararlılığı arttırması ve bu nedenle simpleks algoritması ile ilgili bilinen sorunların üstesinden gelmesi beklenen küçük bir değişiklik önerdiler .

Temel olarak, bu algoritma enterpolasyon yapılması gereken belirli bir nokta kümesiyle başladığınızı, bir simpleks tableau oluşturmak için verilen prosedürleri kullandığınızı ve daha sonra hangi temel değişkenlerin değiştirileceğine karar vermek ve bu nedenle yaklaşık veri noktaları kümesi.

Barrodale ve Roberts, çoğaltmaya çalıştığım küçük bir örnek veriyorlar. Bu sayı yaklaşık çalışır bir işlev tarafından . Algoritmalarını aşağıdaki yoğunlaştırılmış simpleks tablo ile bitirin:{(1,1),(2,1),(3,2),(4,3),(5,2)}a1+a2x

BasisRu1u3b11/23/21/2v21/21/21/2b21/21/21/2u41/21/23/2v5112Marginal cost210

En önemlisi, birinci ve üçüncü nokta enterpole edilir ve genel hata eşittir . Sonuçta2

Tüm temel olmayan vektörlerin pozitif olmayan marjinal maliyeti olduğundan [...]

yineleme bitti ve optimum seviyeye ulaşıldı.

Lei ve Anderson algoritmasını kullanırsam, beklendiği gibi {1,3} enterpolasyon seti için bu tek yönlü tabloyu çoğaltabilirim. Ancak, algoritmayı setiyle başlatırsam (ki bu açıkça optimal değildir), aşağıdaki tek yönlü tabloyu alırım:{2,5}

BasisRu2u5u11/34/31/3b11/35/32/3u32/32/31/3u44/31/32/3b21/31/31/3Marginal cost7/310/35/3

Bu sonuç beni şaşırtıyor. Yukarıdaki alıntıyı doğru anlarsam, pozitif marjinal maliyete sahip olmamanız, optimumun elde edildiğini gösterir. Bununla birlikte, yaklaşık 2.33'ün fonksiyon değeri kesinlikle optimal değildir. Alma ile Barrodale ve Roberts çözeltisi ve bu nedenle en iyi ile eşit bir sonuç vermez.u2u1

Ek bilgi: Barrodale ve Roberts tarafından verilen ilk tablo ile başlasam, yukarıdaki tabloyu sıradan simpleks basamaklarla yeniden oluşturabilirim, bu nedenle gerçek sayısal değerlerin doğru olduğundan ve pivot seçim kuralını yorumladığımdan oldukça eminim Hatalı.

Bunun hakkında bir fikrin var mı?

Sorunun kendisinin oldukça karmaşık olduğunu ve muhtemelen en azından Barrodale ve Roberts algoritması bilgisinin yeterince cevaplanmasını gerektirdiğini anlıyorum. Algoritma bir bütün olarak burada tam olarak tekrarlamak için uzun zamandır. Ancak, attığım adımlar veya eksik bilgi parçaları hakkında ek sorularınız varsa, sormaktan çekinmeyin ve soruyu memnuniyetle artıracağım.


Eğer yeterli itibara sahip biri "En az mutlak sapma" ya da "L1 yaklaşımı" çizgileri boyunca bir etiket oluşturabilirse, minnettar olurum.
Thilo

Optimallik koşulu, temel çözümün uygulanabilir olması (olumsuzluk kısıtlamalarına göre) ve azaltılmış maliyetlerin 0'a eşit veya daha düşük olması gerektiğidir. Temel çözümünüz mümkün değilse, tüm bahisler iptal edilir.
Brian Borchers

Temel çözüm inşaat ile mümkündür. Bu nedenle, hiçbir sorun olmamalıdır. Ancak, sorunun nerede olabileceği konusunda ilk fikrim var. Haklıysam karşılık gelen bir cevap ekleyeceğim.
Thilo

Yanıtlar:


4

Çözüldü. Aslında Barrodale ve Roberts bunu çözdüler ve ben dikkatlice okumadım.

Soruma göre u_i etiketli ve Roberts değişkenlerinin mevcut uyumla ilgili veri noktasının pozitif kalıntılarını temsil ettiğini anlamak için okuyucuya bıraktım . Kalıntı negatifse, ve karşılık gelen değeri alır. Bunlardan sadece biri temelde olabileceğinden ve simpleks tablodaki katsayılar sadece birbirlerinin negatifleri olduğundan, bunları simpleks tabloda açıkça belirtmek gerekli değildir. Barrodale ve Roberts makalelerinde şöyle diyorlar:uiiui=0vi

[...] ve ve marjinal (veya azaltılmış) maliyetlerinin toplamının sıfır, ve -2'dir.bjcjuivi

Bu nedenle, yukarıdaki simpleks tablom aşağıdaki gibi düşünülmelidir:

BasisRu2u5v2v5u11/34/31/34/31/3b11/35/32/35/32/3u32/32/31/32/31/3u44/31/32/31/32/3b21/31/31/31/31/3Marginal cost7/310/35/34/31/3

burada daha iyi bir sonucu arşivlemek için alınabileceğini açıkça görüyoruz . Bunu yapmak, algoritma, birinci ve beşinci veri noktasını genel 2 hatasıyla enterpolasyon yaparken sona erer - ki bu en iyi çözümdür.v2

Okuduğum ve sorunumu yazmam için bana bir yer verdiğiniz için teşekkürler, bu da genellikle çözümü önemli ölçüde daraltmaya yardımcı olur. Umarım, bu cevap bazen Barrodale & Roberts'ı uygulamaya çalışan herkes için yararlı olabilir.

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.