(57)【要約】【課題】パッキング計算した際に生じる線材の偏りを軽減するための計算方法、その装置及びそのプログラムを提供する。【解決手段】複数の線材をパッキングしたときの包含円Ｃ内の複数の円Ｃiのそれぞれに対して、包含円Ｃ内の他の任意の２円に外接するような移動位置候補が探索され（ステップＰ１）、移動位置候補のうちで、包含円Ｃの中心に現在よりも近接し（ステップＰ２のＮ）、他の任意の２円と重なることがなく（ステップＰ３のＮ）、且つ、包含円Ｃの中心に最も近接する移動位置に当該円が移動される（ステップＰ４）。これにより、包含円内の複数の円が包含円の中心により近接するように寄せ集められる。【選択図】図１２
2005174753.tif 000002
【特許請求の範囲】
【請求項１】
複数の線材をパッキング計算した際に生じる前記線材の偏りを軽減するための計算方法であって、
前記パッキング計算するための、前記複数の線材に対応する複数の円を互いに重ならないように円形状に束ねてパッキングしたときの前記複数の円の包含円を求めると共に、この包含円及びこのときの前記複数の円の位置に関する情報を算出する包含円計算工程と、
前記包含円計算工程で求めた前記複数の円のそれぞれに対して、前記包含円内の他の任意の２円に外接するような移動位置候補を探索し、前記移動位置候補のうちで、前記包含円の中心に現在よりも近接し、前記他の任意の２円と重なることがなく、且つ、前記包含円の中心に最も近接する移動位置に当該円を移動する移動工程と、
少なくとも、前記移動工程で求めた前記複数の円の位置に関する情報を出力する出力工程と、
を含むことを特徴とする線材パッキング計算における偏り軽減計算方法。
【請求項２】
請求項１記載の計算方法において、
前記移動工程で求めた前記複数の円の凸包を求める凸包計算工程、
を更に含むことを特徴とする線材パッキング計算における偏り軽減計算方法。
【請求項３】
請求項１又は請求項２記載の計算方法において、
前記包含円計算工程は、
前記複数の線材の断面形状をそれぞれの外形に対応した直径を有する複数の円とみなして、平面上に互いに重ならないように配置される前記複数の円を包含する包含円を想定する包含円想定工程と、前記包含円と同じ中心を有し、かつこの包含円より少し小さく、少なくとも、前記複数の円のうちのひとつがはみ出す目標円を定める目標円定義工程と、前記目標円からはみ出している円を挿込試行円とし、前記挿込試行円以外の前記複数の円が、互いに重なることなく前記目標円内できるだけ遠くに移動可能な位置を探索する探索工程と、前記探索工程による探索結果に基づいて前記複数の円を配置変更することによりできる前記目標円内のスペースに前記挿込試行円を挿し込む挿込工程と、前記挿込試行円のすべてが前記目標円内に挿し込まれた場合には、現在よりも少し小さく、かつ前記挿込試行円を有する新たな前記目標円を定めたうえで、前記探索工程に戻る第１探索制御工程、を含んで構成され、前記目標円定義工程、前記探索工程、前記挿込工程及び前記第１探索制御工程を繰り返し実行することにより、前記包含円を徐々に小さくしていき、前記包含円を求めると共に、この包含円の位置及び前記複数の円の位置に関する情報を算出する、
ことを特徴とする線材パッキング計算における偏り軽減計算方法。
【請求項４】
請求項１〜請求項３のいずれか一項に記載の計算方法において、
前記目標円定義工程、前記探索工程、前記挿込工程及び前記第１探索制御工程と共に繰り返し実行され、
前記挿込試行円の挿し込みが不可能である場合には、前記包含円と現在の前記目標円との中間的な大きさであって、かつ前記挿込試行円を有する他の新たな前記目標円を定めたうえで、前記探索工程に戻る第２探索制御工程、
を更に含むことを特徴とする線材パッキング計算における偏り軽減計算方法。
【請求項５】
請求項１〜請求項４のいずれか一項に記載の計算方法において、
前記探索工程では、
前記挿込試行円及び前記複数の円のうちのひとつを除いた円群と、前記目標円と、で円ボロノイ図を作成し、前記円ボロノイ図における各境界辺を形成する両側円に接する前記ひとつの円の中心が、前記境界辺上にあるか否かを前記挿込試行円以外の前記複数の円に対して調べていくことにより、これらの円が前記目標円内で移動可能である位置を探索する、
ことを特徴とする線材パッキング計算における偏り軽減計算方法。
【請求項６】
複数の線材をパッキング計算した際に生じる前記線材の偏りを軽減するための計算装置であって、
前記パッキング計算するための、前記複数の線材に対応する複数の円を互いに重ならないように円形状に束ねてパッキングしたときの前記複数の円の包含円を求めると共に、この包含円及びこのときの前記複数の円の位置に関する情報を算出する包含円計算手段と、
前記包含円計算手段で求めた前記複数の円のそれぞれに対して、前記包含円内の他の任意の２円に外接するような移動位置候補を探索し、前記移動位置候補のうちで、前記包含円の中心に現在よりも近接し、前記他の任意の２円と重なることがなく、且つ、前記包含円の中心に最も近接する移動位置に当該円を移動する移動手段と、
少なくとも、前記移動手段で求めた前記複数の円の位置に関する情報を出力する出力手段と、
を含むことを特徴とする線材パッキング計算における偏り軽減計算装置。
【請求項７】
請求項６記載の計算装置において、
前記移動手段で求めた前記複数の円の凸包を求める凸包計算手段、
を更に含むことを特徴とする線材パッキング計算における偏り軽減計算装置。
【請求項８】
複数の線材をパッキング計算した際に生じる前記線材の偏りを軽減するために、コンピュータを、
前記パッキング計算するための、前記複数の線材に対応する複数の円を互いに重ならないように円形状に束ねてパッキングしたときの前記複数の円の包含円を求めると共に、この包含円及びこのときの前記複数の円の位置に関する情報を算出する包含円計算手段、
前記包含円計算手段で求めた前記複数の円のそれぞれに対して、前記包含円内の他の任意の２円に外接するような移動位置候補を探索し、前記移動位置候補のうちで、前記包含円の中心に現在よりも近接し、前記他の任意の２円と重なることがなく、且つ、前記包含円の中心に最も近接する移動位置に当該円を移動する移動手段、
少なくとも、前記移動手段で求めた前記複数の円の位置に関する情報を出力する出力手段、として機能させる、
ことを特徴とする線材パッキング計算における偏り軽減計算プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワイヤーハーネス等を構成する複数の線材をできるだけコンパクトにパッキング計算した際に生じる、複数の線材の偏りを軽減するための計算方法、その装置及びそのプログラムに関する。
【背景技術】
【０００２】
車両や屋内には、複数の線材等の線材が束ねられて構成され、電子機器、電子部品等を電気的に接続するワイヤーハーネスとよばれるワイヤー様構造物が配策されている。このようなワイヤーハーネスは、近年、スペース効率向上等の観点から、電気的特性を低下させず、且つできるだけコンパクトなものが求められている。これにともない、設計段階において、できるだけコンパクト且つ精度良く、実際の断面に近いワイヤーハーネスを計算しておく必要がでてくるが、従来、このための有効な計算方法は特に提案されていなかった。
【０００３】
そこで、本特許出願人らは、下記特許文献１にて、コンピュータを用いて、複数の線材の断面形状に対応する各円を互いに重ならないようにできるだけ小さい円形状に束ねてパッキングしてその外径及び各線材の位置情報を取得するための計算方法を提案した。これにより、従来、計算困難であると考えられていた、複数の円が互いに重ならないようにできるだけ小さい円形状に束ねてパッキングされた際の包含円の計算が可能になった。なお、包含円は、複数の線材が束ねららたワイヤーハーネスの断面に対応するものである。
【０００４】
なお、本出願の発明に関連する先行技術文献情報としては次のものがある。
【特許文献１】特願２００３−１７９７１８号
【非特許文献１】Ａ．オカベ，Ｂ．ブーツ，Ｋ．スギハラ  アンド  Ｓ．Ｎ．チョイ（Ａ．Ｏｋａｂｅ，  Ｂ．Ｂｏｏｔｓ，  Ｋ．Ｓｕｇｉｈａｒａ  ａｎｄ  Ｓ．Ｎ．Ｃｈｏｉ）著，「スペーシアル  テセレーションズ−コンセプツ  アンド  アプリケーションズ  オブ  ボロノイ  ダイアグラムズ（Ｓｐａｔｉａｌ  ステップＴｅｓｓｅｌｌａｔｉｏｎｓ−Ｃｏｎｃｅｐｔｓ  ａｎｄ  Ａｐｐｌｉｃａｔｉｏｎｓ  ｏｆ  Ｖｏｒｏｎｏｉ  Ｄｉａｇｒａｍｓ）」，第２版，ジョン  ワイリー  アンド  サンズ，チチェスター（Ｊｏｈｎ  Ｗｉｌｅｙ  ａｎｄ  Ｓｏｎｓ，Ｃｈｉｃｈｅｓｔｅｒ），２０００年
【非特許文献２】Ｄ．Ｓ．キム  アンド  Ｋ．スギハラ（Ｄ．Ｓ．Ｋｉｍ  ａｎｄ  Ｋ．Ｓｕｇｉｈａｒａ）著，「ボロノイ  ダイアグラム  オブ  ア  サークル  セット  フロム  ボロノイ  ダイアグラム  オブ  ア  ポイント  セット，Ｉ（Ｖｏｒｏｎｏｉ  ｄｉａｇｒａｍ  ｏｆ  ａ  ｃｉｒｃｌｅ  ｓｅｔ  ｆｒｏｍ  Ｖｏｒｏｎｏｉ  ｄｉａｇｒａｍ  ｏｆ  ａ  ｐｏｉｎｔ  ｓｅｔ，Ｉ）」，第１８巻，トポロジー  コンピュータ  エイディッド  ジオメトリック  デザイン（ステップＴｏｐｏｌｏｇｙ  Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｇｅｏｍｅｔｒｉｃ  Ｄｅｓｉｇｎ），２００１年，ｐｐ．５４１−５６２
【非特許文献３】Ｄ．Ｓ．キム  アンド  Ｋ．スギハラ（Ｄ．Ｓ．Ｋｉｍ  ａｎｄ  Ｋ．Ｓｕｇｉｈａｒａ）著，「ボロノイ  ダイアグラム  オブ  ア  サークル  セット  フロム  ボロノイ  ダイアグラム  オブ  ア  ポイント  セット，II（Ｖｏｒｏｎｏｉ  ｄｉａｇｒａｍ  ｏｆ  ａ  ｃｉｒｃｌｅ  ｓｅｔ  ｆｒｏｍ  Ｖｏｒｏｎｏｉ  ｄｉａｇｒａｍ  ｏｆ  ａ  ｐｏｉｎｔ  ｓｅｔ，II）」，第１８巻，ジオメトリ．コンピュータ  エイディッド  ジオメトリック  デザイン（Ｇｅｏｍｅｔｒｙ．Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｇｅｏｍｅｔｒｉｃ  Ｄｅｓｉｇｎ），２００１年，ｐｐ．５６３−  ５８５
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところが、上記特許文献１の方法では、複数の線材をできるだけ小さい円形状に束ねてパッキングすることを主目的としているため、最小に近い包含円を効率的に求めるためには非常に有効であるが、各線材の最適配置までは考慮されていなかった。例えば、図１５（ａ）に示すように、複数の線材の断面形状に対応する各円Ｃ11、Ｃ12、Ｃ13、Ｃ14、…、の包含円Ｃを、上記特許文献１の方法で求めた場合、包含円Ｃの直径は最小となるが、小円Ｃ13、Ｃ14、…、が、包含円Ｃの一箇所に偏ってしまう場合も発生する。
【０００６】
そして、図１５（ａ）のような算出結果に基づいて凸包計算すると、図１５（ｂ）に示すようになる。これを複数の線材で構成されるワイヤーハーネスに当てはめると、このワイヤーハーネスの断面形状は、図１５（ｂ）に示す凸包Ｖ′から明らかなように非常に歪なものとなることがわかる。このような断面形状のワイヤーハーネスに対して、テープ巻き等の外装部材を装着する場合、必要以上に外装部材が必要となったり、装着作業がしづらくなることもある。また、線材の偏りによって、屈曲特性が悪化したり、線材の破損がしやすくなることもあり得る。このような問題までも解決したパッキング計算方法は、未だ提案されてない。
【０００７】
よって本発明は、上述した現状に鑑み、パッキング計算した際に生じる線材の偏りを軽減するための計算方法、その装置及びそのプログラムを提供することを課題としている。
【課題を解決するための手段】
【０００８】
上記課題を解決するためになされた請求項１記載の計算方法は、複数の線材をパッキング計算した際に生じる前記線材の偏りを軽減するための計算方法であって、前記パッキング計算するための、前記複数の線材に対応する複数の円を互いに重ならないように円形状に束ねてパッキングしたときの前記複数の円の包含円を求めると共に、この包含円及びこのときの前記複数の円の位置に関する情報を算出する包含円計算工程と、前記包含円計算工程で求めた前記複数の円のそれぞれに対して、前記包含円内の他の任意の２円に外接するような移動位置候補を探索し、前記移動位置候補のうちで、前記包含円の中心に現在よりも近接し、前記他の任意の２円と重なることがなく、且つ、前記包含円の中心に最も近接する移動位置に当該円を移動する移動工程と、少なくとも、前記移動工程で求めた前記複数の円の位置に関する情報を出力する出力工程と、を含むことを特徴とする。
【０００９】
上記課題を解決するためになされた請求項２記載の計算方法は、請求項１記載の計算方法において、前記移動工程で求めた前記複数の円の凸包を求める凸包計算工程、を更に含むことを特徴とする。
【００１０】
上記課題を解決するためになされた請求項３記載の計算方法は、請求項１又は請求項２記載の計算方法において、前記包含円計算工程は、前記複数の線材の断面形状をそれぞれの外形に対応した直径を有する複数の円とみなして、平面上に互いに重ならないように配置される前記複数の円を包含する包含円を想定する包含円想定工程と、前記包含円と同じ中心を有し、かつこの包含円より少し小さく、少なくとも、前記複数の円のうちのひとつがはみ出す目標円を定める目標円定義工程と、前記目標円からはみ出している円を挿込試行円とし、前記挿込試行円以外の前記複数の円が、互いに重なることなく前記目標円内できるだけ遠くに移動可能な位置を探索する探索工程と、前記探索工程による探索結果に基づいて前記複数の円を配置変更することによりできる前記目標円内のスペースに前記挿込試行円を挿し込む挿込工程と、前記挿込試行円のすべてが前記目標円内に挿し込まれた場合には、現在よりも少し小さく、かつ前記挿込試行円を有する新たな前記目標円を定めたうえで、前記探索工程に戻る第１探索制御工程、を含んで構成され、前記目標円定義工程、前記探索工程、前記挿込工程及び前記第１探索制御工程を繰り返し実行することにより、前記包含円を徐々に小さくしていき、前記包含円を求めると共に、この包含円の位置及び前記複数の円の位置に関する情報を算出する、ことを特徴とする。
【００１１】
上記課題を解決するためになされた請求項４記載の計算方法は、請求項１〜請求項３のいずれか一項に記載の計算方法において、前記目標円定義工程、前記探索工程、前記挿込工程及び前記第１探索制御工程と共に繰り返し実行され、前記挿込試行円の挿し込みが不可能である場合には、前記包含円と現在の前記目標円との中間的な大きさであって、かつ前記挿込試行円を有する他の新たな前記目標円を定めたうえで、前記探索工程に戻る第２探索制御工程、を更に含むことを特徴とする。
【００１２】
上記課題を解決するためになされた請求項５記載の計算方法は、請求項１〜請求項４のいずれか一項に記載の計算方法において、前記探索工程では、前記挿込試行円及び前記複数の円のうちのひとつを除いた円群と、前記目標円と、で円ボロノイ図を作成し、前記円ボロノイ図における各境界辺を形成する両側円に接する前記ひとつの円の中心が、前記境界辺上にあるか否かを前記挿込試行円以外の前記複数の円に対して調べていくことにより、これらの円が前記目標円内で移動可能である位置を探索する、ことを特徴とする。
【００１３】
上記課題を解決するためになされた請求項６記載の計算装置は、図１の基本構成図に示すように、複数の線材をパッキング計算した際に生じる前記線材の偏りを軽減するための計算装置であって、前記パッキング計算するための、前記複数の線材に対応する複数の円を互いに重ならないように円形状に束ねてパッキングしたときの前記複数の円の包含円を求めると共に、この包含円及びこのときの前記複数の円の位置に関する情報を算出する包含円計算手段３Ａと、前記包含円計算手段３Ａで求めた前記複数の円のそれぞれに対して、前記包含円内の他の任意の２円に外接するような移動位置候補を探索し、前記移動位置候補のうちで、前記包含円の中心に現在よりも近接し、前記他の任意の２円と重なることがなく、且つ、前記包含円の中心に最も近接する移動位置に当該円を移動する移動手段３Ｂと、少なくとも、前記移動手段３Ｂで求めた前記複数の円の位置に関する情報を出力する出力手段３Ｄと、を含むことを特徴とする。
【００１４】
上記課題を解決するためになされた請求項７記載の計算装置は、図１の基本構成図に示すように、請求項６記載の計算装置において、前記移動手段３Ｂで求めた前記複数の円の凸包を求める凸包計算手段３Ｃ、を更に含むことを特徴とする。
【００１５】
上記課題を解決するためになされた請求項８記載の計算プログラムは、図１の基本構成図に示すように、複数の線材をパッキング計算した際に生じる前記線材の偏りを軽減するために、コンピュータを、前記パッキング計算するための、前記複数の線材に対応する複数の円を互いに重ならないように円形状に束ねてパッキングしたときの前記複数の円の包含円を求めると共に、この包含円及びこのときの前記複数の円の位置に関する情報を算出する包含円計算手段３Ａ、前記包含円計算手段３Ａで求めた前記複数の円のそれぞれに対して、前記包含円内の他の任意の２円に外接するような移動位置候補を探索し、前記移動位置候補のうちで、前記包含円の中心に現在よりも近接し、前記他の任意の２円と重なることがなく、且つ、前記包含円の中心に最も近接する移動位置に当該円を移動する移動手段３Ｂ、少なくとも、前記移動手段３Ｂで求めた前記複数の円の位置に関する情報を出力する出力手段３Ｄ、として機能させる、ことを特徴とする。
【００１６】
請求項１、請求項６及び請求項８記載の発明によれば、複数の線材をパッキングしたときの包含円内の複数の円のそれぞれに対して、包含円内の他の任意の２円に外接するような移動位置候補が探索され、移動位置候補のうちで、包含円の中心に現在よりも近接し、他の任意の２円と重なることがなく、且つ、包含円の中心に最も近接する移動位置に当該円が移動される。これにより、包含円内の複数の円が包含円の中心により近接するように寄せ集められる。すなわち、線材の中央寄せが行われる。
【００１７】
請求項２及び請求項７記載の発明によれば、包含円の中心により近接するように寄せ集められた複数の円の凸包が求められる。
【００１８】
請求項３記載の発明によれば、包含円の計算においては、目標円定義工程（手段）、探索工程（手段）、挿込工程（手段）及び第１探索制御工程（手段）が繰り返し実行されて、複数の線材に対する包含円が徐々に小さくされていき、包含円が効率的に求められると共に、この包含円の位置及び複数の円の位置に関する情報も算出されるので、中央寄せの前提となる包含円が効率的に求められる。
【００１９】
請求項４記載の発明によれば、挿込試行円の挿し込みが不可能である場合には、包含円と現在の目標円との中間的な大きさの目標円を定めたうえで、探索工程に戻す第２探索制御工程を更に含んでいるので、中央寄せの前提となる包含円が効率的に求められる。
【００２０】
請求項５記載の発明によれば、円ボロノイ図を利用することにより、挿込試行円の移動候補位置探索が非常に簡便化される。したがって、中央寄せの前提となる包含円が短時間に求められる。
【発明の効果】
【００２１】
請求項１、請求項６及び請求項８記載の発明によれば、複数の線材をパッキングしたときの包含円内の複数の円のそれぞれに対して、包含円内の他の任意の２円に外接するような移動位置候補が探索され、移動位置候補のうちで、包含円の中心に現在よりも近接し、他の任意の２円と重なることがなく、且つ、包含円の中心に最も近接する移動位置に当該円が移動される。これにより、包含円内の複数の円が包含円の中心により近接するように寄せ集められる。したがって、複数の線材をパッキングしたときの線材の偏りを軽減できる。
【００２２】
請求項２及び請求項７記載の発明によれば、包含円の中心により近接するように寄せ集められた複数の円の凸包が求められる。したがって、線材の偏りが軽減されたワイヤーハーネスに対して、更にテープ巻き等の外装部材の予測や見積もり等も行うことができる。
【００２３】
請求項３記載の発明によれば、包含円の計算においては、目標円定義工程（手段）、探索工程（手段）、挿込工程（手段）及び第１探索制御工程（手段）が繰り返し実行されて、複数の線材に対する包含円が徐々に小さくされていき、包含円が効率的に求められると共に、この包含円の位置及び複数の円の位置に関する情報も算出される。したがって、中央寄せの前提となる包含円をより効率的に求めることができる。
【００２４】
請求項４記載の発明によれば、挿込試行円の挿し込みが不可能である場合には、包含円と現在の目標円との中間的な大きさの目標円を定めたうえで、探索工程に戻す第２探索制御工程を更に含んでいるので、中央寄せの前提となる包含円を更に効率的に求めることができる。
【００２５】
請求項５記載の発明によれば、円ボロノイ図を利用することにより、挿込試行円の移動候補位置探索が非常に簡便化される。したがって、中央寄せの前提となる包含円をより短時間に求めることができる。
【発明を実施するための最良の形態】
【００２６】
以下、本発明の実施の形態を図面に基づいて説明する。まず、図２を用いて、本線材パッキング計算方法を実現するためのハードウエア構成を説明する。図２は、本発明の計算方法及びその装置を実現するためのハードウエア構成の一例を示すブロック図である。
【００２７】
図２に示すように、そのハードウエア構成は、公知のパーソナルコンピュータや汎用コンピュータ等で実現される。このコンピュータは、入力装置１、Ｉ／Ｏ（入出力インターフェース回路）２、ＣＰＵ（Central Processing Unit）３、メモリ４、出力装置５及びリードライト装置６を含んで構成される。入力装置１、メモリ４、出力装置５及びリードライト装置６は、Ｉ／Ｏ２等を介して、ＣＰＵ３に電気的に接続されている。
【００２８】
入力装置１は、後述の処理においてその入力データを投入するのに用いられる、例えば、キーボードやマウスデバイスである。ＣＰＵ３は、入力装置１や出力装置５等を制御するための制御部３１及び後述の本計算方法に係る処理をメモリ４に格納されるプログラムにしたがって行う演算部３２を含んでいる。
【００２９】
メモリ４は、後述の本計算方法に係る各処理に対応するプログラム等を格納するプログラムメモリ４１及びＣＰＵ３が行う各種処理のための作業領域が割り当てられた演算用メモリ４２を含んでいる。そして、出力装置５は、ＣＰＵ３が行った処理結果を出力する、例えば、モニタディスプレイや印字装置である。
【００３０】
リードライト装置６は、ＣＤやＤＶＤ等の記録媒体７に格納される本発明に係る偏り計算プログラムを含む、線材パッキング計算プログラム７ａ（例えば、後述する図３、図６、図７、図８、図９、図１０、図１２に示すような処理手順のプログラム）を読み込み、これを上記プログラムメモリ４１に転送するための装置である。また、リードライト装置６は、計算結果を記録媒体７に書き込む機能も有する。なお、このコンピュータには、図示しないモデムボードやＬＡＮカード等の通信インターフェースが含まれていてもよい。
【００３１】
ＣＰＵ３は、リードライト装置６にて読み込まれた線材パッキング計算プログラム７ａをメモリ４のプログラムメモリ４１にインストールする。そして、電源投入後には、このプログラム７ａが立ちあがり、このコンピュータは偏り計算処理を含む、線材パッキング計算装置として機能する。線材パッキング計算プログラム７ａは、上記構成を有する他のパーソナルコンピュータや汎用コンピュータ等にもインストール可能であり、インストール後は、そのコンピュータが線材パッキング計算装置として機能する。
【００３２】
なお、記録媒体７に格納される線材パッキング計算プログラム７ａは、請求項８に対応する計算プログラムも含む。線材パッキング計算プログラム７ａは、ＣＤやＤＶＤ等の記録媒体７のみならず、インターネットや専用回線、ＬＡＮ等の通信回線を経由して、このコンピュータに提供されたものであってもよい。
【００３３】
次に、図３〜図５を用いて、本発明の一実施形態に係る基本処理手順について説明する。図３は、本発明の計算方法の一実施形態に係る基本処理手順を示すフローチャートである。図４は、配置図及び配置表の例を示す図である。図５（ａ）は、図３の処理手順による計算結果の例を示す図であり、図５（ｂ）は、図５（ａ）の計算結果に対して凸包計算した結果の例を示す図である。
【００３４】
本計算方法では、ワイヤーハーネスを構成する複数の線材の断面形状をそれぞれの外形に対応した直径を有する複数の円とみなす。複数の円は、例えば、上述した図１５（ａ）に示したように、Ｃ11、Ｃ12、Ｃ13、Ｃ14、…、で表される。
【００３５】
本計算方法では、まず、図３のステップＴ１において、任意に初期配置されたＣ11、Ｃ12、Ｃ13、Ｃ14、…、が、例えば、図１５（ａ）に示したようなイメージの配置図（但し、初期配置ではまだこのように偏っていなく分散的である場合が多い）として、そして、その数値情報が、例えば、図４に示すようなイメージの配置表として、出力装置５にて出力される。但し、ここでは、まだ包含円Ｃは計算されていないので、これに関する情報は出力されない。上記配置図及び配置表は、モニタディスプレイ上への表示のみならずプリントアウトするようにしてもよい。なお、初期配置図は、例えば、図４に示すように、各円に予め割り付けられた電線ＩＤ、各円の中心位置（ｘ１、ｙ１）、…、（ｘ５、ｙ５）、…、そして、電線半径ｒ１、…、ｒ３、…、等が含まれる。
【００３６】
次に、ステップＴ２において、包含円計算処理が行われる。包含円計算処理については、図６以降でＳ１〜Ｓ９として詳細に説明するが、ここで簡単に説明すると、この処理では、上記各円ｃiを互いに重ならないようにできるだけ小さい円形状に束ねてパッキングしたときの各円ｃiの包含円を求めると共に、この包含円及びこのときの各円ｃiの位置に関する情報、例えば、中心位置座標及び半径を算出する。なお、ステップＴ２は、請求項中の包含円計算工程及び包含円計算手段に対応する。
【００３７】
次に、ステップＴ３において、ステップＴ２で計算された包含円Ｃ及びこれを構成する円Ｃ11、Ｃ12、Ｃ13、Ｃ14、…、が、例えば、図１５（ａ）に示したようなイメージの配置図として、そして、その数値情報が、例えば、図４に示すようなイメージの配置表として、出力装置５にて出力される。ここでは、計算された包含円Ｃ及びこれに関連する情報、すなわち、包含円Ｃの中心位置（Ｘ１、Ｙ１）やその半径Ｒ１も追加される。
【００３８】
次に、ステップＴ４において、上記ステップＴ２の包含円計算処理の結果に対して、中央寄せ計算処理が行われる。中央寄せ計算処理については、図１２以降でステップＰ１〜ステップＰ５として詳細に説明するが、ここで簡単に説明すると、この処理では、上記ステップＴ２の包含円計算処理で求めた複数の円Ｃ11、Ｃ12、Ｃ13、Ｃ14、…、のそれぞれに対して、包含円Ｃ内の他の任意の２円に外接するように移動試行し、移動試行の結果、包含円Ｃの中心により近接し、且つ、他の任意の２円と重なることのない場合にのみ、当該円を試行した位置に移動する。このような、中央寄せ計算処理の結果は、例えば、図５（ａ）に示すようになる。なお、ステップＴ４は、請求項中の移動工程及び移動手段に対応する。
【００３９】
次に、ステップＴ５において、上記ステップＴ４の中央寄せ計算処理の結果に対して、凸包計算が行われる。この凸包計算については、周知の手法が利用可能である。凸包計算の結果は、例えば、図５（ｂ）に示すようになる。したがって、偏りが軽減されたワイヤーハーネスに対して、テープ巻き等の外装部材の予測や見積もり等も行うことができる。なお、ステップＴ５は、請求項中の凸包計算工程及び凸包計算手段に対応する。
【００４０】
そして、ステップＴ６において、ステップＴ４による中央寄せ計算処理の結果及びステップＴ５による凸包計算の結果が出力される。中央寄せ計算処理の結果としては、包含円Ｃ及びこれを構成する円Ｃ11、Ｃ12、Ｃ13、Ｃ14、…、が、例えば、図５（ａ）に示すようなイメージの配置図として、そして、その数値情報が、例えば、図４に示すようなイメージの配置表として、出力装置５にて出力される。ここでも、計算された各円Ｃ11、Ｃ12、Ｃ13、Ｃ14、…、包含円Ｃ及びこれに関連する情報、すなわち、それらの中心位置やその半径が出力される。また、凸包計算の結果としては、複数の円Ｃ11、Ｃ12、Ｃ13、Ｃ14、…、及びこれらの凸包Ｖが、例えば、図５（ｂ）に示すようなイメージの凸包図として出力装置５にて出力される。なお、凸包計算後の複数の円Ｃ11、Ｃ12、Ｃ13、Ｃ14、…、の数値情報は、上記中央寄せ計算処理の結果と同様なので必ずしも出力する必要はない。
【００４１】
次に、図６〜図１１を用いて、図３におけるステップＴ２の包含円計算処理について詳細に説明する。そこで、まず、図６を用いて、この包含円計算処理の基本処理手順について説明する。図６は、包含円計算処理に係る基本処理手順を示すフローチャートである。
【００４２】
本計算処理では、ワイヤーハーネスを構成する複数の線材の断面形状をそれぞれの外形に対応した直径を有する複数の円とみなし、これら円を断面にもつｎ本の円柱を束ねた時、その全体を囲む円の大きさを調べるという問題に帰着させる。実際的には、上記コンピュータを用いて、複数の線材をできるだけ小さい円形状に束ねてパッキングしてその外径を取得するための有効な計算方法を考える。なお、図６〜図１１においては、本包含円計算処理を汎用的に理解するために、図４及び図５で示した各円ｃiとはその大きさ、その数及びその配置を若干変えて記載している。
【００４３】
図６に示す基本処理においては、入力情報としては、ワイヤーハーネスを構成する線材等の複数の線材の断面形状をそれぞれの外形に対応したｎ個の円ｃ1、ｃ2、…、ｃnの半径ｒ1、ｒ2、…、ｒn、１より小さくて十分１に近い数ｐ、例えば、ｐ＝０．９５、及び十分小さい正数である終了基準値ε、例えば、終了基準値ε＝ｍｉｎ（（ｒ1、ｒ2、…、ｒn）／１００）が与えられる。
【００４４】
また、出力情報としては、ｎ個の円ｃ1、ｃ2、…、ｃnを互いに重ならないように詰め込める、なるべく小さい円の半径Ｒ、及びこのときの円Ｃ、円ｃ1、ｃ2、…、ｃnの位置情報が出力される。
【００４５】
このため、図６に示すステップＳ１においては、まず、円ｃ1、ｃ2、…、ｃnを互いに重ならないように平面上に配置し、それらを囲む大円、すなわち包含円Ｃを見つける。
【００４６】
次に、ステップＳ２、ステップＳ３及びステップＳ４においては、上記包含円Ｃと同じ中心を持ち、半径が包含円Ｃの上記ｐ倍である円、すなわち、目標円Ｄを定める。すなわち、ステップＳ２、ステップＳ３のＮ及びステップＳ４からなるループでは、包含円Ｃと同じ中心を有し、且つこの包含円Ｃより少し小さく、少なくとも、複数の円ｃ1、ｃ2、…、ｃnのうちのひとつが包含円Ｃからはみ出すような目標円Ｄを定める。なお、以下の処理過程では、円ｃ1、ｃ2、…、ｃnが目標円Ｄの中に入るように配置を変更していく。
【００４７】
次に、ステップＳ５においては、探索挿込処理を行う。すなわち、ここでは、目標円Ｄからはみ出している任意のひとつの円ｃiから、距離の大きい順に円ｃi以外の円を取り出し、より遠くへ置けるものはできるだけ遠くへ移動させ、そのような移動ができない場合は現位置に残す。そして、このような移動によりできたスペースにひとつのこの円ｃiを移動する、すなわち、挿し込むことを試みる。なお、このステップＳ５の処理については、図８〜図１１を用いて後で説明を加える。
【００４８】
次に、ステップＳ６においては、上記ステップＳ５における円ｃiの挿し込みが成功したか否かを判定し、成功の場合はステップＳ３に戻り（ステップＳ６のＹ）、さもなければステップＳ７に進む（ステップＳ６のＮ）。ステップＳ３に戻ると、他にはみ出している円があるか否を判定し、これがあればこのはみ出している円に対して再度ステップＳ５の探索挿込処理を行い、なければステップＳ４に進んで上記と同様の処理を行うことになる。
【００４９】
一方、ステップＳ７においては、上記包含円Ｃと挿込みが成功しなかった上記目標円Ｄとの中間の大きさの円を、新たに目標円Ｄに定める。次に、ステップＳ８において、上記ステップＳ７の処理に用いられた包含円及び目標円Ｄのそれぞれの半径の差が上記終了基準値ε以下か否かを判定し、この差が終了基準値εより大きければ上記ステップＳ３に戻り上記と同様の処理を繰り返し（ステップＳ８のＮ）、この差が終了基準値ε以下であればステップＳ９に進む（ステップＳ８のＹ）。
【００５０】
ステップＳ９においては、この包含円Ｃの半径を最終的な、ワイヤーハーネスの半径Ｒとしてこれを算出する。また、このときの包含円Ｃ及び各円ｃ1、ｃ2、…、ｃnの位置情報も算出する。これら算出結果は、上記図３で示したステップＴ６の処理のために受け渡される。なお、上記ｐ及び終了基準値εを適宜、若干変更してもよい。
【００５１】
上記処理手順による各円のふるまいを図７を用いて示す。図７は、図６の処理手順によるふるまいを示す図であり、特に、図７（ａ）は初期状態を示し、図７（ｂ）は目標円からはみ出した挿込試行円を示し、図７（ｃ）は図７（ｂ）の挿込試行円を目標円の内部に挿し込んだ様子を示し、そして、図７（ｄ）は最終結果を示す図である。
【００５２】
図７（ａ）においては、与えられたｎ個の円ｃiの初期配置と、それらを囲む包含円Ｃが示されている。図７（ｂ）においては、処理の途中の状態が示され、現在得られている包含円Ｃより少し小さい目標円Ｄ、及びこの目標円Ｄからはみ出す円のひとつであり、挿し込みが試行される挿込試行円ｃnが示されている。
【００５３】
また、図７（ｃ）においては、図７（ｂ）で示した挿込試行円ｃnに対して、図６に示したステップＳ５の探索挿込処理が施されたあとの状態が示されている。なお、図７（ｃ）中、円ｍi（粗斜線を囲む円群）は、上記探索挿込処理において挿込試行円ｃnを挿し込むために移動した移動円群を示している。なお、この図からわかるように、他のはみ出している円も、挿込試行円ｃnの挿込処理の過程で、目標円Ｄに入ることもある。そして、図７（ｄ）においては、すべてのはみだしている円に対して、挿込処理が行われた結果が示されている。
【００５４】
このように、ワイヤーハーネスを構成する複数の線材を、包含円からはみ出している線材からできるだけ遠くに配置変更し、これによりできたスペースにはみ出している線材を挿し込むという操作を繰り返し計算することにより、複数の線材を囲むワイヤーハーネスの外径が効率的に取得される。
【００５５】
次に、上記図６のステップＳ５の探索挿込処理について、図８を用いて説明を加える。図８は、図６における探索挿込処理を示すフローチャートである。
【００５６】
図８に示す探索挿込処理においては、入力情報として、ｎ個の円ｃiの半径ｒiと、それらの中心（ｘi、ｙi）、ｉ＝１、２、…、ｎ、及び目標円Ｄが与えられる。但し、ｎ個の円ｃiは互いに重なることはなく、また最後の円ｃnは目標円Ｄからはみ出しているとする。なお、この他にもはみ出している円があってもよい。
【００５７】
また、出力情報としては、既に目標円Ｄ内に入っている円をこの目標円Ｄからはみ出させることなく、最後の円ｃnを目標円Ｄ内へ挿し込むことができるなら成功結果としてそれを実現するｎ個の円の中心位置が出力され、できないなら失敗結果としてその旨示すメッセージが出力される。
【００５８】
まず、探索挿込処理のステップＳ５１においては、ｎ個の円ｃiを、上記最後の円ｃnから遠い順に並べ替える。この順は、詳しくは、ｎ個の円ｃiのそれぞれの中心と、最後の円ｃnの中心と、の距離に基づく。そして、ここで、並び替えた結果の円番号を、簡単のために、新ためてｃ1、ｃ2、…、ｃnとする。なお、以下、この最後の円を挿込試行円とよぶ。
【００５９】
次に、ｉ＝１、２、…、ｎ−１に対して、ステップＳ５２〜ステップＳ５４ａ（又はステップＳ５４ｂ）に示す処理を行う。ステップＳ５２においては、探索処理を行う。すなわち、円ｃiが、目標円Ｄ内で他の円と重ならずに移動可能な移動候補位置を探索する。詳しくは、この探索処理では、図９に示す第１探索処理、又は図１０に示す第２探索処理が行われる。第１探索処理では、円ｃiが目標円Ｄ内で他の円と重ならずに、現在の円ｃiの位置より、挿込試行円ｃnから遠くなるような移動候補位置を探索する。また、図１０に示す第２探索処理では、円ボロノイ図の概念を用いて、円ｃiが目標円Ｄ内で他の円と重ならずに移動可能な移動候補位置を探索する。これらについては後述する。
【００６０】
そして、ステップＳ５３及びステップＳ５４ａ、ステップＳ５４ｂにおいては、上記探索処理にて移動候補位置があればその中で挿込試行円ｃnから最も遠い位置へ円ｃiを移動し（ステップＳ５３のＹ、ステップＳ５４ａ）、移動候補位置がなければ円ｃiを現在位置に残す（ステップＳ５３のＮ、ステップＳ５４ｂ）。このような処理が、ｉ＝１、２、…、ｎ−１に対して行われた後、ステップＳ５５に進む。なお、上記ステップＳ５２〜ステップＳ５４が請求項の探索工程に対応している。
【００６１】
次に、ステップＳ５５においては、上記ステップＳ５２〜ステップＳ５４ａ（又はステップＳ５４ｂ）からなるループ処理にてできた目標円Ｄ内のスペースに対しての、挿込試行円ｃnの挿し込みを試行する。
【００６２】
そして、ステップＳ５６及びステップＳ５７ａ、ステップＳ５７ｂにおいては、上記挿し込みの試行により挿し込みが成功すれば、挿込試行円ｃnをそこへ移動し（ステップＳ５６のＹ、ステップＳ５７ａ）、挿し込みができなければ、その旨示すメッセージを出力する（ステップＳ５６のＮ、ステップＳ５７ｂ）。なお、上記成功時には、それを実現するｎ個の円の中心位置が出力される。そして、これらステップＳ５１〜ステップＳ５７ａ（又はステップＳ５７ｂ）からなる一連の処理が終了すれば、図６に示すこれに続く処理に戻る。
【００６３】
更に、図９及び図１０を用いて、上記探索処理の２例について説明を加える。まず、第１探索処理を図９を用いて説明する。図９は、第１探索処理を示すフローチャートである。
【００６４】
図９の第１探索処理においては、ｎ個の円ｃiを移動するスペースがあった時、上記挿込試行円ｃnから最も遠くへ移動した状態では、円ｃiは２つの円に接しているはずであるということに着目している。但し、この接する２つの円のうちのひとつは、上記目標円Ｄの場合もある。そこで、ここでは、与えられたｎ個の円ｃiと目標円Ｄの全体がなす集合をＳ＝｛ｃ1、ｃ2、…、ｃn、Ｄ｝とおく。そして、円ｃi以外の全ての２つの円ｃj、ｃk∈Ｓに対して、以下のステップＳ５２１〜ステップＳ５２９に示す処理を行う。
【００６５】
まず、ステップＳ５２１においては、半径ｒiの円ｃiが、円ｃjと円ｃkの両方に接する位置を探す。但し、円ｃj又は円ｃkが目標円Ｄ以外の円なら外側から接し、目標円Ｄなら内側から接するものとする。そのような位置は、高々、２個しかなく、その場合の中心をそれぞれ（ｘ′i、ｙ′i）、（ｘ″i、ｙ″i）とする。
【００６６】
次に、ステップＳ５２２においては、上記２個のうちの一方の位置に移動させると、円ｃiは現在位置よりも挿込試行円Ｃnから遠くなるか否かを判定する。すなわち、一方の中心（ｘ′i、ｙ′i）から挿込試行円Ｃnの中心までの距離Ｘ′と、現在位置の円ｃiの中心から挿込試行円Ｃnの中心までの距離Ｘと、を比較し、距離Ｘ′が距離Ｘより大きければステップＳ５２３に進み（ステップＳ５２２のＹ）、さもなければ後述するステップＳ５２６に進む（ステップＳ５２２のＮ）。
【００６７】
ステップＳ５２３においては、円ｃi、円ｃj、円ｃk及び目標円Ｄ以外の全ての円に対して、半径ｒiの円ｃiを上記中心（ｘ′i、ｙ′i）に置いた時、重なるか否かを調べ、その重なりをステップＳ５２４において判定する。ここで、どの円とも重ならないと判定されればステップＳ５２５に進み（ステップＳ５２４のＮ）、ステップＳ５２５において上記中心（ｘ′i、ｙ′i）を円ｃiの移動候補位置のひとつに加え、さもなければステップＳ５２６に進む（ステップＳ５２４のＹ）。
【００６８】
更に、上記一方の中心（ｘ′i、ｙ′i）を他方の中心（ｘ″i、ｙ″i）に置き換えて、上記ステップＳ５２２〜ステップＳ５２５と同様、以下のステップＳ５２６〜ステップＳ５２９の処理を行う。ステップＳ５２６においては、上記２個のうちの他方の位置に移動させると、円ｃiは現在位置よりも挿込試行円Ｃnから遠くなるか否かを判定する。すなわち、他方の中心（ｘ″i、ｙ″i）から挿込試行円Ｃnの中心までの距離Ｘ″と、現在位置の円ｃiの中心から挿込試行円Ｃnの中心までの距離Ｘと、を比較し、距離Ｘ″が距離Ｘより大きければステップＳ５２７に進み（ステップＳ５２６のＹ）、さもなければ直接次に進む（ステップＳ５２６のＮ）。
【００６９】
ステップＳ５２７においては、円ｃi、円ｃj、円ｃk及び目標円Ｄ以外の全ての円に対して、半径ｒiの円ｃiを上記中心（ｘ″i、ｙ″i）に置いた時、重なるか否かを調べ、その重なりをステップＳ５２８において判定する。ここで、どの円とも重ならないと判定されればステップＳ５２９に進み（ステップＳ５２８のＮ）、ステップＳ５２９において上記中心（ｘ″i、ｙ″i）を円ｃiの移動候補位置のひとつに加え、さもなければ直接次に進む（ステップＳ５２８のＹ）。このような処理が、円ｃi以外の全ての２つの円ｃj、ｃkに対して行われると、図８に示すこれに続く処理に戻る。
【００７０】
このような、第１探索処理を用いることにより、従来、図８で示した方法や経験により行っていたワイヤーハーネスの外径の計算が改善されて、より正確に行えるようになる。したがって、ワイヤーハーネスの設計の一助となる。その一方で、第１探索処理を用いると、計算量が膨大になるという問題も生じる。すなわち、上記図９に示した第１探索処理では、円ｃi、円ｃj、円ｃkの組に対して、上記のような操作を行うので、その計算時間はＯ（ｎ3）となる。上記図８の探索挿入処理では、これをすべてのｉ＝１、２、…、ｎに対して行うので、その計算時間はＯ（ｎ4）となる。更に、図６の処理では、これを組み込んで繰り返し処理が行われるので、全体の計算量は、膨大なものになってしまう。これを以下の図１０に示す第２探索処理では改善する。
【００７１】
図１０は、第２探索処理を示すフローチャートである。図１１（ａ）は円の集合の一例を示す図であり、図１１（ｂ）及び図１１（ｃ）はそれぞれ、図１１（ａ）の円の集合に対する円ボロノイ図及びラゲール円ボロノイ図である。
【００７２】
まず、この第２探索処理の基本的な考え方を示す。この第２探索処理においては、公知のボロノイ図の概念を利用して、挿込試行円ｃiの移動候補位置の探索を効率化する。すなわち、上記第１探索処理においては、この円ｃiの移動候補位置を求めるために、すべての円の組ｃj、ｃkと接する位置を求めたが、ボロノイ図の概念を利用すると、その候補を限定することができる。
【００７３】
平面上に互いに重ならない有限個の円が与えられた時、どの円に最も近いかによって平面を分割することができる。この分割図形は円ボロノイ図とよばれ、これは、上記非特許文献１にも示されている。
【００７４】
例えば、図１１（ａ）に示される円群に対する円ボロノイ図は、図１１（ｂ）に示す通りである。図１１（ｂ）におけるボロノイ辺とよばれる境界辺ｅj上の点は、２つの円ｃk、ｃlから等しい距離にあって、他の円はもっと遠くにあるという性質を持っている。したがって、２つ円ｃk、ｃlに接し、他の円と重ならない円は、円ボロノイ図の境界辺ｅj上に中心をもつことになる。よって、円ｃiの移動候補位置は、円ボロノイ図の境界辺ｅjを挟む２つの円ｃk、ｃlの組だけに対して探せばよい。ｎ個の円の円ボロノイ図の境界辺ｅjの数はｎに比例する本数だから、検索すべき円ｃk、ｃlの組は、上記図９の第１探索処理がＯ（ｎ2）であるのに対し、ここでは、Ｏ（ｎ）になる。
【００７５】
更に、２つの円ｃk、ｃlと接する円ｃiの移動位置候補に対して、上記図９の第１探索処理では、円ｃi以外のすべての円ｃj、ｃkとの重なりの検査を行ったが、ここでは、その必要もなくなる。すなわち、円ｃiの移動候補位置が、境界辺ｅj上にあるか否かを調べれば十分である。なぜなら、境界辺ｅj上にあれば、他の円と重なることはなく、境界辺ｅj上になければ他の円と重なることが、円ボロノイ図の性質から導かれるからである。したがって、Ｏ（ｎ）の検査時間をＯ（１）にすることができる。
【００７６】
このような考え方に基づく、第２探索処理の処理手順は以下の図１０に示すようになる。図１０のステップＳ５２１′においては、まず、上記円集合Ｓ−｛ｃi｝、すなわち、円ｃi以外の全円に対する円ボロノイ図を作る。ここで、この円集合Ｓ−｛ｃi｝はｎ個の円で構成されるので、境界辺の数もｎに比例する。
【００７７】
そして、各境界辺ｅj、（ｊ＝１、２、…、ｎ）に対して、以下のステップＳ５２２′〜ステップＳ５２５′の処理を行う。
【００７８】
ステップＳ５２２′においては、境界辺ｅjの両側の円ｃk、ｃlに接する半径ｒiの円ｃ′iを作る。但し、ここでも、円ｃk又は円ｃlが目標円Ｄ以外の円なら外側から接し、目標円Ｄなら内側から接するものとする。なお、そのような円は、高々、２個、存在する。
【００７９】
そして、ステップＳ５２３′において上記のように接する半径ｒiの円ｃ′iが有りと判定され（ステップＳ５２３′のＹ）、更にステップＳ５２４′においてその中心が境界辺ｅj上に有ると判定されれば（ステップＳ５２４′のＹ）、ステップＳ５２５′に進んでこの円ｃ′iを円ｃiの移動候補位置に加える。さもなければ、直接次に進む（ステップＳ５２３′のＮ、ステップＳ５２４′のＮ）。このような処理が、すべての境界辺ｅjに対して行われると、図８に示すこれに続く処理に戻る。
【００８０】
上記説明から明らかなように、ボロノイ図の概念を利用することにより、円ｃiの移動候補位置の探索が非常に簡略化されることがわかる。ｎ個の円の円ボロノイ図は、Ｏ（ｎlogｎ）の計算時間で作ることができることが、上記非特許文献１に示されている。したがって、上記ステップＳ５２１′の処理は、Ｏ（ｎlogｎ）時間で実行できる。一方、ｎ個の円の円ボロノイ図の境界辺はｎに比例する本数しかないので、上記ステップＳ５２２′〜ステップＳ５２４′の処理は、Ｏ（ｎ）時間で実行できる。以上より、図１０で示した第２探索処理の計算時間は、Ｏ（ｎlogｎ）となる。参考までに、上記図９で示した第１探索処理では、Ｏ（ｎ3）の計算時間を要したので、大きく効率向上していることがわかる。ちなみに、この図１０の第２探索処理を、上記図８の探索挿込処理に組み込むと、上記図８の探索挿込処理では、この図１０の処理をＯ（ｎ）回実行するので、図８の探索挿込処理の計算時間はＯ（ｎ2logｎ）となる。
【００８１】
なお、上記円ボロノイ図の簡便な計算法は、上記非特許文献１記載のラゲールボロノイ図を作り、次に、上記非特許文献２及び上記非特許文献３記載の辺のフリップ操作によって、これを円ボロノイ図に変更する方法である（図１１（ｃ）参照）。
【００８２】
このように、本包含円計算処理によると、コンピュータを用いて、ワイヤーハーネスを構成する複数の線材を、包含円からはみ出している線材からできるだけ遠くに配置変更し、これによりできたスペースにはみ出している線材を挿し込むという操作を繰り返し計算することにより、複数の線材を囲むワイヤーハーネスの外径が効率的に取得できる。特に、円ボロノイ図の概念を採用することにより、非常に簡便、且つ短時間で、ワイヤーハーネスの外径を取得することができるようになる。
【００８３】
更に、図１２〜図１４を用いて、図３におけるステップＴ４の中央寄せ計算処理について詳細に説明する。図１２は、中央寄せ計算処理に係る処理手順を示すフローチャートである。図１３（ａ）〜図１３（ｃ）は、中央寄せ計算処理における各円の振る舞いを示す図である。図１４は、中央寄せ計算処理を補足説明するための図である。
【００８４】
中央寄せ計算処理は以下の基本処理手順にしたがう。
１．ある円Ｃiについて、任意の２円に接する位置で、包含円の中心から一番近い位置に移動する。任意の２円の組み合わせは、自円を除くすべての円の組み合わせについて行う。
（ア）移動した結果、現在の位置より包含円の中心から遠くなる場合には移動しない。
（イ）移動した結果、他の円と重なる場合には移動しない。
２．全ての円について上記１を行う。
【００８５】
フローチャートを用いてより具体的に説明すると、図１２のステップＰ１においては、包含円Ｃ内の複数の円Ｃ1、Ｃ2、Ｃ3、Ｃ4、Ｃ5、…、ＣmのうちのひとつＣiに対して移動位置を探索する。例えば、図１３（ａ）のＣ1については、図１３（ｂ）の点線で示すように、Ｃ1以外の全ての２円の組み合わせに基づく、複数の移動位置候補が探索される。なお、任意の２円に接する円、例えば、図１４の点線で示すように、２円Ｃ2、Ｃ3に接する円Ｃ1は２つ存在するが、図１３では、図をみやすくするため、一方を省略している。
【００８６】
そして、ステップＰ２〜ステップＰ４において、上記探索した円Ｃi（例えば、Ｃ1）の移動位置候補のうちで、包含円Ｃの中心Ｐから遠ざかることなく（ステップＰ２のＮ）、この円Ｃi以外の円と重なることがなく（ステップＰ３のＮ）、最も包含円Ｃの中心Ｐに近接する移動位置にこの円Ｃiを移動する（ステップＰ４）。すなわち、ステップＰ２でＹ又はステップＰ３でＹの場合には、この円Ｃiの移動は実行されない。
【００８７】
そして、このような処理が、全ての円Ｃ1、Ｃ2、Ｃ3、Ｃ4、Ｃ5、…、Ｃmについて試行され、これが終了すると、図３の処理に戻る。
【００８８】
このように、本中央寄せ計算処理によれば、例えば、図６〜図１１で説明した特許文献１に基づく処理手順を用いて、複数の線材をパッキングしたときに算出される包含円Ｃ内の複数の円Ｃiのそれぞれに対して、包含円Ｃ内の他の任意の２円に外接するような移動位置候補が探索され（ステップＰ１）、移動位置候補のうちで、包含円Ｃの中心Ｐに現在よりも近接し（ステップＰ２のＮ）、他の任意の２円と重なることがなく（ステップＰ３のＮ）、且つ、包含円Ｃの中心Ｐに最も近接する移動位置に当該円が移動される（ステップＰ４）。これにより、包含円Ｃ内の複数の円が包含円の中心Ｐにより近接するように寄せ集められる。したがって、複数の線材をパッキングしたときの線材の偏りを軽減できる。
【００８９】
なお、上記実施形態においては、パッキング計算を特許文献１の処理手順を利用する例を示したが、本発明は、パッキング計算をこれに限定するものでない。なお、例示したパッキング計算において、ワイヤーハーネスの外径を求めるために、半径を出力しているが、これは直径であってもよいことはいうまでもない。また、包含円計算処理におけるｐ及びεの値は、上記実施形態で示した値に限定されず、本発明の主旨の範囲で適宜変更可能である。更に、本発明は、車両内に配策されるワイヤーハーネスのみならず、屋内等に配策されるワイヤーハーネスにも同様に適用可能である。
【図面の簡単な説明】
【００９０】
【図１】本発明の基本構成を示すブロック図である。
【図２】本発明の計算方法及びその装置を実現するためのハードウエア構成の一例を示すブロック図である。
【図３】本発明の計算方法の一実施形態に係る基本処理手順を示すフローチャートである。
【図４】配置図及び配置表の例を示す図である。
【図５】図５（ａ）は、図３の処理手順による計算結果の例を示す図であり、図５（ｂ）は、図５（ａ）の計算結果に対して凸包計算した結果の例を示す図である。
【図６】包含円計算処理に係る基本処理手順を示すフローチャートである。
【図７】図７（ａ）は初期状態を示し、図７（ｂ）は目標円からはみ出した挿込試行円を示し、図７（ｃ）は図７（ｂ）の挿込試行円を目標円の内部に挿し込んだ様子を示し、そして、図７（ｄ）は最終結果を示す図である。
【図８】図６における探索挿込処理を示すフローチャートである。
【図９】第１探索処理を示すフローチャートである。
【図１０】第２探索処理を示すフローチャートである。
【図１１】図１１（ａ）は円の集合の一例を示す図であり、図１１（ｂ）及び図１１（ｃ）はそれぞれ、図１１（ａ）の円の集合に対する円ボロノイ図及びラゲール円ボロノイ図である。
【図１２】中央寄せ計算処理に係る処理手順を示すフローチャートである。
【図１３】図１３（ａ）〜図１３（ｃ）は、中央寄せ計算処理における各円の振る舞いを示す図である。
【図１４】中央寄せ計算処理を補足説明するための図である。
【図１５】図１５（ａ）は、パッキング計算により、偏りが発生した例を示す図であり、図１５（ｂ）は、図１５（ａ）の計算結果に対して凸包計算した結果の例を示す図である。
【符号の説明】
【００９１】
１  入力装置
２  入出力インターフェース回路
３  ＣＰＵ
４  メモリ
５  出力装置
Ｃ  包含円
Ｄ  目標円
ｃn  挿込試行円
ｍn  移動円
ｅj  境界辺
【図１】
2005174753.tif 000003
【図２】
2005174753.tif 000004
【図３】
2005174753.tif 000005
【図４】
2005174753.tif 000006
【図５】
2005174753.tif 000007
【図６】
2005174753.tif 000008
【図７】
2005174753.tif 000009
【図８】
2005174753.tif 000010
【図９】
2005174753.tif 000011
【図１０】
2005174753.tif 000012
【図１１】
2005174753.tif 000013
【図１２】
2005174753.tif 000014
【図１３】
2005174753.tif 000015
【図１４】
2005174753.tif 000016
【図１５】
2005174753.tif 000017