PSO-BP Sinir Ağına Dayalı İnsan Akupunktur Konumlandırma Sisteminin Tasarımı

0 Önsöz

İnsan akupunktur noktalarının dağılımı, insan vücudunun boyutundan ve oranından kolayca etkilenir, bu nedenle şu iki özelliğe sahiptir: doğrusal olmama ve bulanık belirsizlik. İnsan akupunktur noktalarının dağıtımında üç ana çözüm vardır: görme teknolojisi, optik konumlandırma yöntemi ve uzman sistem yöntemi. Bununla birlikte, bu yöntemlerin bazı eksiklikleri vardır: görme teknolojisi, akupunktur noktalarını manuel olarak işaretlemek için görüntü işleme ile birlikte iki boyutlu görme ölçümü kullanır, devasa analiz sistemi, konumlandırmanın gerçek zamanlı konumlandırmasını azaltır ve uygulama sınırlıdır; optik konumlandırma yöntemi insan gözünü simüle edebilir Konumlandırma amacına ulaşmak için nesnenin üç boyutlu koordinatları elde edilir, ancak konumlandırma hedefi ve çevreleyen ortam arka planı, konumlandırmaya büyük müdahaleye neden olacak ve konumlandırma doğruluğunu azaltacaktır; uzman sistem yöntemi, uzman deneyim ve bilgisini entegre etmektir ve bu deneyimleri pratik uygulamalarda dönüştürmek zordur. Bir dizi kuralın içine.

Yapay zeka ve biyonik teknolojinin gelişmesiyle birlikte birçok yapay zeka tabanlı tahmin yöntemi ortaya çıkmıştır. TCM masaj robotunun akupunktur noktası bulma davranış planlamasının doğruluğunu artırmak için, Shandong Jianzhu Üniversitesi, BP sinir ağını optimize etmek için genetik algoritmaya dayalı TCM masaj robotunun akupunktur noktası koordinatlarını tahmin etmek için bir yöntem önerdi. Sonuçlar, bu yöntemin Çin tıbbı masaj robotunun hastanın akupunktur noktası koordinatlarını bulması için iyi bir doğruluğa ve tahmin doğruluğuna sahip olduğunu göstermektedir. Genetik algoritmanın çapraz mutasyon kısmı tüm yakınsama sürecini yavaşlattığından, pratik uygulamalarda stabilite nispeten düşük olabilir. Parçacık sürüsü algoritma süreci nispeten basittir, bu nedenle parçacık sürüsü algoritması, kararlı ve doğru bir akupunktur noktası koordinat tahmin modeli oluşturmak için BP sinir ağı algoritmasını optimize etmek, öğrenme sürecini basitleştirmek ve ardından süreci ARM'ye aktarmak için kullanılır. Son test, optimize edilmiş BP sinir ağının daha hızlı yakınsama ve uyarlanabilirliğin yanı sıra daha yüksek tahmin doğruluğu ve kararlılığına sahip olduğunu gösteriyor.

Bu makalede önerilen genel sistem tasarımı, insan akupunktur noktası konumlandırması için ARM ve PSO-BP'ye dayanmaktadır.Sistem ayrıca akupunktur noktası koordinatlarının gerçek zamanlı gösterimi ve akupunktur noktası bilgilerinin yayınlanması işlevlerine de sahiptir. Tüm algoritmanın öğrenme süreci nispeten karmaşık olduğundan, döngü sayısı çok büyüktür ve bu da tüm sistemin çalışma hızını yavaşlatır, böylece tüm dinamik öğrenme süreci bilgisayarda tamamlanır ve ardından optimum ağırlıklar ve eşikler kaydedilir ve çıkarılır ve basitleştirilmiş algoritma gömülür. ARM'de, akupunktur noktası konumlandırma amacına, gerçek kullanımdaki istemlere göre doğrudan bilgi girildikten sonra ulaşılabilir.

1.1 Algoritma modeli tasarımı

BP sinir ağı şu anda en yaygın kullanılan ve başarılı sinir ağlarından biridir Bu ağın özellikleri, ağın ağırlığını ve eşiğini ayarlamak için sinyal iletimi ve hata geri yayılımıdır. BP sinir ağının topolojik yapısı, bir giriş katmanı (giriş), bir gizli katman (gizleme katmanı) ve bir çıkış katmanı (çıkış katmanı) içerir.Şekil 1'de gösterildiği gibi, sistemin elde etmek istediği son etki, bilinen bir akupunktur noktası koordinat değerini girmektir. (X koordinatı, Y koordinatı) ve ardından diğer 3 akupunktur noktasının koordinat değerlerini tahmin edin.

Sistem tarafından tasarlanan BP sinir ağı yapısı, giriş katmanında 2 nöron ve çıkış katmanında 6 nöron olmak üzere neredeyse tüm doğrusal olmayan fonksiyonları tahmin edebilen üç katmanlı bir topoloji yapısını benimser. Gizli katmandaki (orta katmandaki) nöron sayısının seçimi formül (1) ile belirlenir:

Bunlar arasında, MidNum gizli katman düğümlerinin sayısıdır, InNum ve OutNum sırasıyla giriş ve çıkış düğümlerinin sayısıdır ve a, 1 ile 10 arasında bir sabittir.

Son olarak, BP sinir ağının topolojik yapısı 2-8-6'dır; eğitim işlevi "taingdx" i benimser; gizli katman ve çıktı katmanı için seçilen transfer işlevleri hem "tansig"; seçilen eğitim süreleri 3.000; eğitim hedefi hatası 0.0001.

Ağ eğitimi için kullanılan parçacık sürüsü optimizasyonu (PSO) algoritması, başlangıç değerlerini körü körüne ayarlamak yerine ağırlıkların ve eşiklerin seçimini optimize edebilir ve optimize edilmiş sinir ağı, sinir ağının yerel bir optimuma düşmesini önleyecek ve doğruluğu artıracaktır. Bu nedenle, PSO optimizasyonu BP sinir ağının özü şudur: BP ağındaki ağırlık ve eşik kümesi, gruptaki her parçacığın konumlarının kümesidir ve sayı, parçacıkların boyutudur. Daha sonra sinir ağı üzerinde yinelemeli optimizasyon eğitimi yapılır ve ağın çıkış hatası, denklem (2) olan algoritmanın uygunluk fonksiyonu olarak kullanılır.

Formülde, S öğrenme eğitimi örneğidir, Tk beklenen çıktıdır ve Yk gerçek çıktıdır. Algoritma akışının tamamı Şekil 2'de gösterilmektedir.

1.2 MATLAB simülasyonu

Örnek olarak insan vücudunun arkasını ele alırsak, akupunktur noktaları düzenli olarak dağıtılır, bu nedenle Dazhui noktası koordinat sistemi oluşturmak için koordinat orijini (0,0) olarak kullanılır ve ardından Dazhui noktasının göreceli koordinatları girdi olarak seçilir.Hedef çıktı Pishu, Geguan ve Mingmen'in göreceli koordinatları. Simülasyon eğitimi, farklı testçilerden oluşan 70 grubun akupunktur noktalarının göreceli koordinatlarını ölçtü ve öğrenme örnekleri olarak rastgele seçilen 60 grup ve geri kalan 10 grup sinir ağını eğitmek için test örnekleri olarak kullanıldı.

MATLAB'da programlama yaparken, parçacık sürüsü algoritması 200 kez yinelenir ve ardından ağın öğrenme sürecine devam etmeden önce parçacık kodunu BP sinir ağının başlangıç eşiğine ve ağırlığına dönüştürür. Simülasyon sonucu Şekil 3'te gösterilmektedir. Eğitim 1.015 kat olduğunda gerekli hata değerine ulaşılıncaya kadar, ortalama kare hatasının eğitim sayısının artmasıyla kademeli olarak azaldığı görülmektedir.

Açık gözlemi kolaylaştırmak için, tahmin eğrisi diyagramını MATLAB aracılığıyla çıkarmak için ilk tahmin verilerini örnek olarak alın.Şekil 4'te gösterildiği gibi, tahmin değerinin gerçek değere çok yakın olduğu görülebilir, bu da tahmin modelinin kurulmasının doğru olduğunu ön olarak kanıtlar.

Son olarak, tahmin edilen değer ile PSO-BP algoritma verilerinin gerçek değeri arasındaki mutlak hatayı hesaplayın ve Tablo 1'de gösterildiği gibi, Dazhu akupunktur noktasının (X ekseni: 24 mm, Y ekseni: 24 mm) bir dizi koordinatını girin, mutlak hata 10'u geçmez mm, akupunktur noktası konumu için sinir ağının tahmin doğruluğunun, konumlandırma gereksinimlerini karşılayan 10 mm içinde garanti edilebildiği görülebilir.

2 Sistem donanımı tasarımı

Sistem, çalışmak için çift makine iletişimi ve bağımsız güç kaynağı kullanır.Ana olarak iki kısma ayrılır: ana bilgisayar, akupunktur noktası öngörü işlevini gerçekleştirmek için akupunktur noktası konumlandırma sistemidir ve köle, akupunktur noktası gerçekleştirme işlevini elde etmek için konum kontrol sistemidir. Sistemin genel donanım yapısı Şekil 5'te gösterilmektedir.

2.1 Akupunktur noktası konumlandırma sistemi

Bu bölüm esas olarak görsel ve işitsel amaçlıdır Tuşlar, 0-9 sayı tuşları ve onayla ve iptal tuşları dahil olmak üzere 4 × 4 belirleyici olarak düzenlenmiştir. Parametre girişi ve tahmin sonuç ekranı için 3,2 inç TFT LCD ekranı kullanın. İstenilen akupunktur noktası koordinatlarını girmek için tuşuna basın.Bu sırada LCD, girişin doğru olup olmadığını izleyebilir.Onaylama düğmesine basıldıktan sonra, programlanmış tahmin programı çalıştırılabilir ve akupunktur noktalarının çıkış koordinatları LCD ekranda görüntülenecek ve konum kontrol sistemi WiFi aracılığıyla iletilecektir. Koordinat değerlerini gönderin.

2.2 Pozisyon kontrol sistemi

Bu bölüm esas olarak kontrol işlemleri içindir.WiFi bağlantısı başarılı olduğunda, bir sesli uyarı olacak ve ardından motoru başlatacaktır.Motor kontrol modülünde, arkadaki 3 ana meridyene ve iki ayak güneş kesesi meridyenine karşılık gelen 4 doğrusal adımlı motor bulunur. . Akupunktur noktası konumlandırma sistemi ilgili akupunktur noktası konumunu gönderdikten sonra, motor cihazı ilgili konuma hareket ettirir.Hareket bittiğinde, LED göstergesi yanarak kullanıcıya işlemin tamamlandığını hatırlatır.Kontrol sistemi tarafından alınan konum bilgisi yanlışsa, zil üç kez çalar. alarm. Son olarak, doğru ses, kullanıcıların akupunktur noktalarının ilgili bilgileri ve terapötik etkilerini anlamaları için uygun olan akupunktur noktaları ile ilgili bilgileri yayınlayacaktır.

3 PSO-BP algoritması, yazılım tasarımını basitleştirir

Tüm algoritma sistemi çok büyüktür ve veri işleme formunun tümü kayan noktalı sayılarla gerçekleştirilir, tek çipli bilgisayarın hesaplama gücü sınırlıdır, bu nedenle algoritmayı basitleştirmesi ve akupunktur noktası konumlandırma sisteminin ana çipine aktarılması düşünülmektedir. Fikir, sinir ağının optimum ağırlığını ve eşik matrisini eğitmek için önce MATLAB kullanmak ve ardından sinir ağını ARM'e aktarmak ve nakletmektir. Sabit noktalı CPU'lar için, hesaplamaların çok fazla zaman harcayacak olan IEEE-754 standart algoritmasına göre tamamlanması gerekir. Sistemde kullanılan konumlandırma yongası STM32F407I, 32 bitlik tek hassasiyetli donanım FPU'su ile Cortex-M4F mimarisine aittir ve kayan noktalı komut setlerini destekler.Cortex-M0 ve Cortex-M3 ile karşılaştırıldığında, hesaplama performansı onlarca hatta yüzlerce kat daha yüksektir.

Sinir ağı algoritması esas olarak iki aşamaya bölünmüştür: birincisi öğrenme aşamasıdır.Bu aşamanın görevi, ters hata yayılımı yoluyla optimum ağırlıkları ve eşikleri ayarlamaktır.PSO algoritması esas olarak bu süreci optimize eder ve optimum başlangıç ağırlıklarını bulur. Ve eşik ağa verilir; ikincisi uygulama aşamasıdır, bu aşama gerçek sorunları çözmek için gerekli ağırlık ve eşiği kullanmaktır. İlk aşama çok sayıda döngü gerektirir ve PSO algoritmasının eklenmesi, bu işlemi hesaplama açısından daha pahalı hale getirir, bu nedenle ikinci aşama, ARM yongasıyla birleştirmek için C dili çıktısını kullanır.

Bu sürecin çevrimiçi eğitimi için bir sinir ağı öğrenme çerçevesi oluşturmak için MATLAB'ı kullanın, giriş katmanı ve gizli katmanın ağırlıklarını ve eşiklerini çıkarın ve bu eğitimli parametreleri ARM'de kayan nokta dizileri biçiminde saklayın. Bir sonraki adım, insan akupunktur noktalarının konumunu tahmin etmek için ARM'de sinir ağı algoritmalarını uygulamaktır Bu kısım, bilinen bir yapıya sahip bir sinir ağına veri girmek ve ardından ağın ileri sürecini çözmektir.

Basitleştirilmiş süreç, normalleştirme, nöron çarpma ve toplama ve transfer fonksiyonu hesaplamasını içerir. Normalleştirme, giriş verilerinin değerini aralarında sınırlandırmaktır, böylece birleşik bir standart verilerin doğruluğunu artıracaktır. Sistem tarafından benimsenen yöntem dağılım standardizasyonu, orijinal verilerin doğrusal dönüşümüdür, dönüştürme işlevi şöyledir:

Xmax, örnek verilerin maksimum değeridir ve Xmin, örnek verilerin minimum değeridir. Bir sonraki nöron ekleme ve çarpma işlemi Şekil 6'da gösterilmektedir.

Yani toplama ve çarpma formülü şöyledir:

Bu formülde yer alan iki anahtar parametre, ağırlık Wkn ve bias bk, ARM'de float'a dönüştürülebilir ve 7 ondalık basamağa kadar doğru olabilir.

Transfer fonksiyonunun seçimi doğrusal olmayan hiperbolik tanjant sigmoid fonksiyonu tanh'dir STM32F4'ün fonksiyon kütüphanesinde böyle bir hiperbolik tanjant fonksiyonu yoktur, bu nedenle Taylor genişlemesi şeklinde basitleştirilmelidir. Tanh'ın formülü:

E2x genişlemesinin sonucunu formül (6) 'ya getirin, doğruluk 4 ondalık basamağa ulaşabilir.

STM32F4, FPU'yu açmak için donanımı kullanır. İlk olarak, yardımcı işlemci kontrol yazmacının (CPACR) 20 ila 23'ünü 1'e ayarlayın ve ardından derleyicinin kod üretiminde FPU'nun donanım etkinleştirmesini açmak için FPU kullan'ı ayarlayın. Yukarıdaki üç parçayı üç C dili programı alt yordamına dönüştürün ve ardından gerçek zamanlı çıktı tahmin sonuçlarının amacına ulaşmak için bunları ana programda çağırın. Tüm sistemin yazılım tasarımı Şekil 7'de gösterilmektedir.

4 Donanım testi ve sonuç analizi

Algoritma sadeleştirme programını STM32F4'e yazın, konumlandırma sistemine bir dizi Dazhu akupunktur noktası koordinatı (X ekseni: 24 mm, Y ekseni: 24 mm) girin ve ardından tahmin sonuçlarını LCD ekranda, göreceli hatayı da bir ölçü olarak kullanarak kaydedin. Tablo 2'de gösterildiği gibi göstergeler.

Tablo 2'den görülebileceği gibi tahminin mutlak hatasının 15 mm'yi geçmediği ancak MATLAB tarafından verilen tahmin sonuçlarının (Tablo 1) doğruluğunun azaldığı görülmektedir. Bunun nedeni, MATLAB'den türetilen parametreler ARM'de kayan nokta sayıları şeklinde depolandığında, doğruluk etkilenecek ve transfer fonksiyonunun Taylor genişlemesi için bir miktar doğruluk feda edilecektir.Bu kayıpların üst üste gelmesi, son pozisyon çıktısının doğruluğunu etkileyecektir.

5. Sonuç

Bu makale, Dazhu akupunktur noktasının giriş pozisyonuna göre Mingmen, Pishu ve Geguan'ın akupunktur noktası koordinatlarını tahmin edebilen ARM ve PSO-BP'ye dayalı bir insan akupunktur noktası konumlandırma sistemi tasarlar. BP sinir ağının yerel optimuma düşmesi kolay olduğundan, onu optimize etmek için PSO algoritması eklenir ve ardından akupunktur noktalarının koordinatlarını gerçek zamanlı olarak tahmin edebilen PSO-BP basitleştirilmiş algoritma yazılımı STM32F407I'ye gömülür. Deneyler, sistemin akupunktur noktası konumunu daha iyi öngörebildiğini ve ardından motoru karşılık gelen konuma hareket ettirmek için kontrol ettiğini ve ardından akupunktur noktası konumlandırmasını tamamlamak için ince ayarlamalar yaptığını gösteriyor.

Referanslar

Ma Zhewen, Yu Haoguang Görsel konumlandırmaya dayalı masaj robotu için akupunktur noktası izleme sistemi Robot Teknolojisi ve Uygulaması, 2010 (6): 33-35.

Lin Xuehua, İnsan Meridyenlerinin Optik Konumlandırma Yöntemi ile Görselleştirilmesinde Doğruluğu İyileştirme Yöntemleri Üzerine Araştırma Fuzhou: Fuzhou Üniversitesi, 2014.

Zhang Qiuyun, Zhang Ying, Li Chen. Geleneksel Çin masaj robotlarında BP sinir ağını optimize etmek için genetik algoritmanın uygulanması. Applied Science and Technology, 2017, 44 (2): 73-77.

Xu Shun, Lu Wenke, Zuo Feng.PSO-BP Sinir Ağına Dayalı Optik Fiber Basınç Sensörünün Sıcaklık Telafisi Araştırması. Enstrümantasyon Teknolojisi ve Sensörü, 2016 (10): 1-5, 9.

Li Rui, Xiong Jie. BP sinir ağına dayalı ham petrol suyu tutma dedektörü. Enstrüman Teknolojisi ve Sensörü, 2017 (10): 29-32.

Zhao Yanjun, Cheng Shouguang, Gao Chengbin, vb BPNN'ye dayalı katı faz kütle akışı yumuşak ölçüm yöntemi Enstrümantasyon Teknolojisi ve Sensörü, 2014 (7): 103-105.

Huang Jiacai, Li Hongsheng, Teng Fulin, vb. BP ağının empedans tipi ham petrol su içeriği ölçüm cihazında uygulanması Cihaz Teknolojisi ve Sensörü, 2011 (12): 24-26.

yazar bilgileri:

Yang Xiangping, Wu Yudan

(Makine Mühendisliği Okulu, Donghua Üniversitesi, Şangay 201600)

Samsung, Hindistan için tasarlanmış 32 milyona kadar pikseli destekleyen Exynos 7904 çipini piyasaya sürdü
önceki
Notre Dame Katedrali yangınından sonra Fransız lüks eşya devi 760 milyon yuan bağışladı ve Çin'deki Eski Yaz Sarayı'nın hayvan başını bedavaya iade etti.
Sonraki
CPR Eylül Önerilen Okuma
Zamanla yarışan HP, A3 sahasında mucize yaratabilir mi?
Zynq-7000'e Dayalı Otomatik İzleme Sisteminin BSP'sinin Tasarımı ve Gerçekleştirilmesi
"Resimlerin Kralı"
Bu İtalyan bir kadınla evlendi ve Chongqing'de bir kız çocuğu dünyaya getirdi.Ailesinin dört kuşak Çin'le ilişkilendirildi.
"Super Smash Bros. Special Edition" 8 Ağustos yüz yüze toplantı zekası özeti
Mevcut durum izleme analizine dayalı bir sistem kendi kendini izleyen yönetim teknolojisi
Bilim ve Teknoloji Bakanlığı, yapay zeka için yeni nesil akıllı vizyon ulusal açık inovasyon platformu oluşturmak için SenseTime'a güveneceğini resmi olarak duyurdu.
İnançtan kültüre, Lo Niangın enfes hayatını dinleyin
"Super Smash Bros. Special Edition" 900 parça içerir ve Switch'i MP3 olarak kullanabilirsiniz
Sabah Okuma 2019 Bahar Şenliği Tren Biletleri bugün satışta
Reklam şirketi Guan Peisheng neden OPPO K1'i seviyor? Sır burada
To Top