JPH0221361A - 行列演算処理方法 - Google Patents

行列演算処理方法

Info

Publication number
JPH0221361A
JPH0221361A JP17150688A JP17150688A JPH0221361A JP H0221361 A JPH0221361 A JP H0221361A JP 17150688 A JP17150688 A JP 17150688A JP 17150688 A JP17150688 A JP 17150688A JP H0221361 A JPH0221361 A JP H0221361A
Authority
JP
Japan
Prior art keywords
row
rows
matrix
pivot
selection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP17150688A
Other languages
English (en)
Other versions
JPH0748204B2 (ja
Inventor
Masanori Sugita
杉田 正憲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP63171506A priority Critical patent/JPH0748204B2/ja
Publication of JPH0221361A publication Critical patent/JPH0221361A/ja
Publication of JPH0748204B2 publication Critical patent/JPH0748204B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、演算装置、特に各種行列演算命令の処理機能
を有する演算処理装置の行列演算処理方式に関する。
〔従来の技術〕
従来より、行列の逆行列の算出や、連立1次方程式の解
法としては例えば、山内二部他著[電子計算機のための
数値計算法IJ P7〜P22に示されるように掃き出
し法や、ガウスの消去法が、一般的に知られている。
逆行列の算出は、単位行列をEとすれば、A・X=Eと
なる様なXを求めればよく、それには、辿立−次方程式
AXJ −el (X、はXの第3列、e、はEの第1
列)をj=1.2・・・ nについて解けばよい。従っ
て、以下の説明では、P−X−Qを満たす、行列Xの算
出について述べる。ここで、P、Qは、それぞれm行m
列、m行n −m列の与えられた行列であり、Xは求め
るべき、m行n −m列の行列である。
掃き出し法では、 なる行列人について、 1)第に行をakkで割る。(akhをピボットと呼ぶ
) 2)j=1.2.−=  mに対しくたt! シj =
 kを除<)、第1行から第に行のaJk倍を引く。
3)上記1)、21をに=1.2.−mについて繰り返
す。
という計算を行なう。
ガウスの消去法では、 1) J= k+1 、−、 a+に対し、第3行から
第に行のa+h/aih倍を引く。(a kkをピボッ
トと呼ぶ) 2)上記1)をに=1.2.−  m−1について繰り
返す。
という計算を行なう。
掃き出し法においても、ガウスの消去法においても、各
階階のピボット(a kk)は、″0”であってはなら
ない。また゛0″ではなくても、計算の途中て、ピボッ
トが極く小さな値となることがある。この場合に、この
まま計算を続けることは、2(算の精度上、好ましくな
い。
従って、従来より、ビボノ)・の選択という操作が、必
要であった。
この操作は、例丸ばに回目のピボットを決定する際に、
akkを無条件にピボットとするのではなく、i=に、
に+1.−  mなるl1lkの中で、絶対値が最も大
きなものを選択するものである。そして、その要素を含
む行をピボット行とし、第に行とピボット行との間で行
の入れ換えを行なった後、計算を行なう。
この際に、ピボット行の番号r、を覚えておき、掃き出
しが全部終わった後で、入れ換えを行なったk(k=m
−1,・・ 1)に対してのみ、結果の第に列と第rk
列の入れ換えを行なう必要がある。
第6図は、前記の演算を行なうための従来の行列演算処
理装置の一列をブロック図で示したものであり、図にお
いて、(1)は演算対象の行列を記憶する主メモIJ 
、+21は演算処理を行なう中央処理装置(CPU)、
(31は主メモリ(1)から演算の対象となる行列を読
み出して、保持するベクトルアキュムレータ、(4)は
ピボット選択の履歴を記憶し、演算の最後で、列入れ換
えを行なう際に参照されるコラム・インデックス・テー
ブル(以下C,I。
デープルと呼ぶ)である。
第7図にC,Iテーブルの内容、第8図〜第10図に、
掃き出し法により、PX=Qを満たす行列Xを求めろ場
合の従来の演算処理方式のフローチャートをそれぞれ示
す。
次に、第8図〜第10図のフローチャー1・に基づき、
従来の行列演算処理方式について説明する。
なお、ここでは、帰き出し法により、前述したP・X=
Qの方程式を解く場合を例にとって、説明する。
第8図において、まず、演算の対象となる行列P−Qを
主メモリ(1)からベクトルアキュムレータ(3)にロ
ードする(ステップ81)。次に、k=1とし、(ステ
ップ82)第9図に示すフローチャートに従って、ピボ
ット選択を行なう (ステップ83)。第9図において
、ピボット選択は、先ず、alk(J−に、に+1.2
m)の中で絶対値が最大のものを選択し、ビボッ1−値
とする(ステップ91)。このピボッ1−行の番号rk
をC,Iテーブル(4)のに番目要素として登録する(
ステップ92)。ここで、ピボット値が零であれば、エ
ラーとなる(ステップ93)。次に、riとkとを比較
しくステップ94) 、rk =にであれば第8図のフ
ローへ戻り、rkf−にであれば、行列のに行目とrk
行目を入れ替え(ステップ95)、第8図のフローへ戻
る。第8図において、上記のピボット選択が行われろと
、ピボット行をピボット値で割る(ステップ84)。そ
して、ピボット行を除いた全ての行に対して掃き出しを
行なう (ステップ85〜87)。次に列の入れ換え(
ステップ88)を行なう。列の入れ換えは、第10図に
示すステップ101〜105により行なわれる。
即ち、CP U (21は、k−1,・・・、+!1の
各行について、前述したピボット選択を行ない、一連の
掃き出し操作を行なう。掃き出し操作完了後に、ピボッ
ト選択の際に作成したCI子テーブル4)を参照しなが
ら、第10図に示す、フローチャートに従って、列の入
れ替えを行なう。そしてベクトルアキュムレータ(3)
上の結果を主メモリ(1)にストアして演算を終了する
〔発明が解決しようとする課題] 従来の方式によれば、ピボット選択の際に、各行毎に、
行の入れ替え操作が必要となる可能性がある。
この操作では、ベクトルアキュムレータ内の入れ替え行
の要素群の1つ1つ交換しなければならないため、処理
に時間を要し、演算時間が大きくなるという課題があっ
た。
本発明は、上記のような課題を解消するためになされた
もので、逆行列演算もしくは、係数が等しい複数の連立
1次方程式を高速に処理できる行列演算処理装置を得る
ことを目的とする。
〔課題を解決するための手段〕
本発明に係る行列演算処理方式は、ピボット選択の際に
、前記C,Iテーブルのほかに、各行の行変換状態を記
録しておくためのロウ・インデックステーブル(以下R
,Iテーブルと呼ぶ)を作成するものである。
〔作用〕
ピボット選択により、行の入れ換えの必要性が生じた場
合には、行の各要素を入れ換える代わりに、本発明にお
けるR1テーブルの入れ換え行に対応する行番号を入れ
替えておき、演算の最終段階で、とのR0Iテーブルを
参照しながら、ベクトル1キユムレータ内の結果を主メ
モリに格納する。
〔発明の実施例〕
以下、この発明の一実施例を図について説明する。第1
図において、(1)は主メモリ、(2)は中央演算処理
装置(CPU)、(31は、演算対象となる行列を保持
するベクトルアキュムレータ、(4)は、CI子テーブ
ル、テーブルのに行目には、k回目のピボット選択にて
、選択された、ピボット行の行番号が書き込まれる。(
5)も前記CI子テーブル4)と同じく、演算の対象と
なる行列と同じ行数(1)から成り、ピボット選択によ
り行の入れ換えの必要性が生じた場合に、実際の行を入
れ替える代わりに、対応する行の行番号を入れ換えるた
めのR0■テーブルである。
また、第2図は、R,Iテーブル(5)の行番号の入れ
換えを示す説明図、第3図〜第5図は、掃き出し法によ
り、P −x=QIt’fAt=T行列X e 求メる
場合の、本発明のフローチャートである。
演算の対象となる行列、P、Qはそれぞれ主メモリ+1
1からベクトルアキュムレータ(3)にロード(ステッ
プ30)された後、第1回目のピッポット選択を行なう
(ステップ31〜33及び第4図)。第1回目のピボッ
ト選択では、all、”!lpa□の中で絶対値が最も
大きな要素を選び出し、その要素をピボットとしくステ
ップ41)その要素を含む行がピボット行となる(ステ
ップ42)。
今、仮にartがピボットに選ばれたとすれば、1行目
とr行目の交換を行なう必要があるが、本発明では、実
際の行の交換を行なう代わりにRI子テーブル5)の1
行目とr行目を交換する(ステップ45)。RI子テー
ブル5)は、演算がはじまる前に、1行目から順に1,
2.・r、・・・釦の値が初期設定されているから、1
回目のピボット選択により、RI子テーブル5)の内容
は、1行目から順にr、2゜・・ 1.・ mとなる。
この時、CI子テーブル4)の1行目は、やはり r″
となるが、r行目は、そのままである。
2回目以降m −1回目までのピボット選択についても
同様で、第2図に示す様にR回目のピボット選択で、第
0行がピボット行となった場合には、RI子テーブル5
)の第8行目の内容R6と第に行目の内容Rkを入れ換
える。
このCI子テーブル4)を使用することにより、1回の
行変換で、m個の要素を交換しなければならなかったも
のが、1要素の交換だけで済ませる事ができる。もしも
、ff+−1回のピボット選択で毎回行変換が必要とな
る場合には(m −1)  ・ (n−1)回分の要素
交換をしなくて済む。
ピボット選択と、ピボット行以外の全ての行に対する掃
き出しが、1〜ff1行について行なわれた後は、従来
と同様に、CI子テーブル4)を参照しながら列の入れ
換えが行われるが、この時、行列の各行がどんな順番に
並んでいようが問題と(才ならない。問題となるのは、
ベクトルアキュムレータ(3)内の結果を、主メモリ(
11にストアする際である。
ベクトルアキュムレータ(3)には、行変換されないま
ま結果が残っているため、RI子テーブル5)を参照し
ながら、正しい行順でストアする(ステップ39)必要
がある。即ち、第5図に示す様に、RI子テーブル5)
のに行目にRkが入っていたとすれば、ベクトルアキュ
ムレータ(3)内の行列の第R3行の要素群を主メモリ
(1)内の行列の第に行にストアする。
なお上記実施例では、CI子テーブル41、RI子テー
ブル5)を主メモ1月1)とは別に設けたものを示した
が、主メモリ(1)内にCI子テーブル4)、およびR
I子テーブル5)を、設けてもよい。
また、上記実施例では、掃き出し法を用いて、PX=Q
を満たすXを求める場合について説明したが、ガウスの
消去法や、その他、行列の行や列の入れ換え操作を要す
る演算にも適用できる。
〔発明の効果〕
以上のように、この発明によれば、行の入れ換え状態を
示ずRI子テーブル設置したために、行の入れ換え操作
を要する行列演算において、入れ換え行を構成する全要
素群を入れ換えなくて済み、RIテーブル内の1要素間
を交換するだけでよいため、演算時間が短縮され、高速
な行列演算が可能となる。
【図面の簡単な説明】
第1図は本発明の一実施例による行列演算処理装置のブ
ロック図。第2図本発明による、行変換状態を記録する
テーブルの説明図、第3図〜第5図は、本発明による掃
き出し法のフローチャー1・、第6図は従来の方式によ
る行列演算処理装置のブロック図、第7図は本発明およ
び従来の方式での行変換履歴を記録するテーブルの説明
図、第8図〜第10図は、従来の方式による掃き出し法
のフローチャー1・である。 図中、(11は主メモ’J 、f21は、中央処理装置
、(3)はベクトルアキュムレータ、(4)は、C,I
テーブル、(5)はR,Iテーブルを示す。 なお、図中、同一符号は、同−又は相当部分を示す。

Claims (1)

    【特許請求の範囲】
  1. (1)主メモリと、主メモリから読み出した行列の要素
    データを保持するベクトルアキュムレータと、行列の演
    算を行なう中央処理装置とを備えた行列演算処理装置に
    おいて、行又は列の交換状態を記録するテーブルを設け
    、前記テーブルの内容を書き換えることにより、行又は
    列の交換処理を行なうことを特徴とする行列演算処理方
    式。
JP63171506A 1988-07-08 1988-07-08 行列演算処理方法 Expired - Lifetime JPH0748204B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63171506A JPH0748204B2 (ja) 1988-07-08 1988-07-08 行列演算処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63171506A JPH0748204B2 (ja) 1988-07-08 1988-07-08 行列演算処理方法

Publications (2)

Publication Number Publication Date
JPH0221361A true JPH0221361A (ja) 1990-01-24
JPH0748204B2 JPH0748204B2 (ja) 1995-05-24

Family

ID=15924375

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63171506A Expired - Lifetime JPH0748204B2 (ja) 1988-07-08 1988-07-08 行列演算処理方法

Country Status (1)

Country Link
JP (1) JPH0748204B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7603402B2 (en) 2004-09-17 2009-10-13 Fujitsu Limited Solution program recording media for simultaneous linear equations having band coefficient matrix

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5547565A (en) * 1978-09-29 1980-04-04 Fujitsu Ltd Fourier conversion processing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5547565A (en) * 1978-09-29 1980-04-04 Fujitsu Ltd Fourier conversion processing system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7603402B2 (en) 2004-09-17 2009-10-13 Fujitsu Limited Solution program recording media for simultaneous linear equations having band coefficient matrix

Also Published As

Publication number Publication date
JPH0748204B2 (ja) 1995-05-24

Similar Documents

Publication Publication Date Title
KR960001948B1 (ko) 에러 조정 및 테스트 기능을 가진 프로그램 가능 메모리 제어 방법 및 장치
EP0447995B1 (en) Analyzing device for saving semiconductor memory failures
US4694411A (en) Simulation apparatus and method
US20080028013A1 (en) Two-dimensional fast fourier transform calculation method and apparatus
WO1991010963A1 (en) Blocked matrix multiplication for computers with hierarchical memory
CA1223664A (en) Address computation system for digital processing apparatus
US4937780A (en) Single instruction updating of processing time field using software invisible working registers
US5408628A (en) Solid state recorder with flexible width data bus utilizing lock mapping and error correction and detection circuits
US6408319B1 (en) Electronic device for computing a fourier transform and corresponding control process
JPH0221361A (ja) 行列演算処理方法
Vassiliadis et al. Block based compression storage expected performance
JPH05143633A (ja) イソジオメトリツク形高速フーリエ変換実現方式
US6438568B1 (en) Method and apparatus for optimizing conversion of input data to output data
US5592655A (en) Logic simulation method
JP2021149333A (ja) 画像処理装置
JPH05108500A (ja) メモリ回路
JPS6285383A (ja) ベクトルプロセツサ
JPS5819206B2 (ja) 計量装置における計量デ−タの表示用デ−タへの処理方法および処理装置
JPH0520350A (ja) ベクトル処理装置
JPH02144737A (ja) カウント回路制御方式
RU1827676C (ru) Устройство дл отслеживани контуров двумерных объектов
JP3105577B2 (ja) 分割積型乗算装置
JPS6019258A (ja) 記憶装置
SU1405073A1 (ru) Устройство дл решени системы линейных алгебраических уравнений
JPH03189868A (ja) データ処理プロセツサ