(57)【要約】【課題】複数の日を候補日程として提示し、且つ、事業所の回答が候補日程の中でばらついた場合でも、効率よく事業所を訪問し、保健指導を行うことができる日程を作成する。【解決手段】訪問計画作成装置は、クラスタリング部により距離が近く、作業量が１日分になる範囲で事業所をクラスタにまとめ、最適化処理部でクラスタを順番に訪問した場合の経路と付与する日程数から１引いた数離れたクラスタ間の移動コストの合計を最短化する最適化を行い、クラスタの順番に１日ずつずらして日程を付与する。【選択図】図１
2010224660.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサと記憶部とを備えて、予め設定した複数の地点に対する訪問の計画立案を支援する訪問計画作成装置であって、
前記複数の地点間の移動コストに関する情報を移動コストデータとして受け付けて前記記憶部に保持する移動コスト入力部と、
前記地点に対する訪問の候補日の一覧を受け付けて前記記憶部に保持する候補日一覧入力部と、
前記地点に対して付与する訪問の候補日の日数を受け付けて前記記憶部に保持する候補日数入力部と、
前記複数の地点を所定の順序で並べた場合の、地点間の移動コストデータを前記地点の順序で合計した第１の値と、前記地点の順序において、地点と前記候補日数から１を引いた数だけ前の順番の地点との移動コストデータを前記地点の順に合計した第２の値と、前記第１の値と第２の値の和が最小となる前記複数の地点の順序を演算する最適化処理部と、
前記候補日の一覧から前記候補日の日数分の候補日を選択し、前記最適化処理部が求めた複数の地点の順序で各地点に１日ずつずらして前記選択した候補日を付与する日程付与部と、
前記各地点に対する候補日を出力する候補日程出力部と、
を有することを特徴とする訪問計画作成装置。
【請求項２】
請求項１に記載の訪問計画作成装置であって、
訪問する担当者の許容業務量を受け付けて前記記憶部に保持する担当許容量入力部と、
前記地点毎の業務量を受け付けて前記記憶部に保持する業務量入力部と、
前記複数の地点間の移動コストデータと、前記担当者の許容業務量と、前記地点毎の業務量から、前記複数の地点のうち、地点毎の業務量の和と前記地点間の移動コストデータの和が前記許容業務量以下の範囲で複数の地点をひとつにまとめたクラスタを生成するクラスタリング部と、
前記クラスタを一つの地点として、前記地点の移動コストデータを演算する移動コスト計算部と、を有し、
前記最適化処理部は、前記クラスタリング部が生成したクラスタを前記地点として扱い、前記移動コスト計算部が演算した移動コストデータから前記複数の地点の順序を演算することを特徴とする訪問計画作成装置。
【請求項３】
請求項２に記載の訪問計画作成装置であって、
前記候補日程出力部が出力した前記候補日に対する回答として希望する候補日を入力する希望日程入力部を有し、
前記最適化処理部は、前記地点間の移動コストデータを前記地点の順に合計した値と、前記希望する候補日との適合状態から、前記希望する候補日の適合状態が高く、前記地点の順に合計した値の合計が最小となる複数地点の順序を出力することを特徴とする訪問計画作成装置。
【請求項４】
請求項２または請求項３に記載の訪問計画作成装置であって、
健診における検査結果または問診結果を含む健診情報を入力する健診情報入力部と、
保健指導を行った記録または前記保健指導の結果を示す指導情報を入力する指導情報入力部と、
前記健診結果と、前記保健指導結果と、前記地点との関係を示す個人属性情報を入力する個人属性情報入力部と、
前記健診情報と前記指導情報と個人属性情報を用いて地点毎の指導の優先度を算出する優先度算出部を有し、
前記クラスタリング部は、優先度が最大で、且つ、移動コストデータが最小となるように前記クラスタを作成することを特徴とする訪問計画作成装置。
【請求項５】
請求項１ないし請求項４の何れかひとつに記載の訪問計画作成装置あって、
演算結果を表示する出力装置を有し、
前記候補日程出力部は、
前記クラスタリング部で作成したクラスタと、前記最適化処理部で求めたクラスタの順番と、前記日程付与部で付与した候補日を、前記出力装置に表示することを特徴とする訪問計画作成支援装置。
【請求項６】
計算機を制御するプログラムであって、
前記計算機は、前記プログラムが格納されるメモリと、前記メモリに格納された前記プログラムを実行するプロセッサと、を備え、
前記プログラムは、
前記複数の地点間の移動コストに関する情報を移動コストデータとして受け付けて前記記憶部に保持する手順と、
前記地点に対する訪問の候補日の一覧を受け付けて前記記憶部に保持する手順と、
前記地点に対して付与する訪問の候補日の日数を受け付けて前記記憶部に保持する手順と、
前記複数の地点を所定の順序で並べた場合の、地点間の移動コストデータを前記地点の順序で合計した第１の値と、前記地点の順序において、地点と前記候補日数から１を引いた数だけ前の順番の地点との移動コストデータを前記地点の順に合計した第２の値と、前記第１の値と第２の値の和が最小となる前記複数の地点の順序を演算する手順と、
前記候補日の一覧から前記候補日の日数分の候補日を選択し、前記第１の値と第２の値の和が最小となる前記複数の地点の順序で各地点毎に１日ずつずらして前記選択した候補日を付与する手順と、
前記各地点に対する候補日を出力する手順と、
を前記プロセッサに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、訪問計画の立案を支援する装置に関し、特に、保健指導の訪問予定の日程を調整する装置に関する。
【背景技術】
【０００２】
被保険者の健康増進や、医療費を適正化による運営の安定を目的として、被保険者に対する健診や保健指導を実施している保険者がある。特に保健指導は、健診の結果から被保険者個人に生活や健康状態の改善意識付けを行う重要な場となっている。保健指導は、指導対象者が、保健師などの指導者が所属する施設に行って指導を受ける場合と、指導対象者が所属する企業や事業所に指導者が訪問して指導する場合とがある。特に、後者の指導は、日中仕事で抜けられない会社員が保健指導を受けることができる重要な機会となっている。しかし、小規模の事業所を担当する場合には、指導者が１日で複数の事業所を巡回する必要があり、限られた指導者のリソースの中で多くの指導を行う上では、効率よく事業所を訪問できるように保健指導計画の立案を支援することが望まれている。
【０００３】
従来、このような１日に複数の箇所を巡回して訪問する計画を作成する方法として、いくつかの方法が提案されている。例えば、訪問介護に関するスケジュールの作成を支援する方法（特許文献１、２）では、地図、訪問先住所、希望サービス、介護担当者の予定などを入力して、訪問日程を出力するシステムや、巡回セールスマンの訪問先の順序に最適化手法を適用して訪問ルートを短縮する方法、また、巡回先について地図上への経路表示を行う方法などが示されている。また、特許文献３では、訪問を行う担当者の負荷が均等になるように、巡回エリアを分割する方法なども示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−６７４１３号公報
【特許文献２】特開２００３−８５２８７号公報
【特許文献３】特開２００４−１１０３４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記従来例などに示された方法では、基本的に訪問先の地点に行くべき候補日がある程度決まっている場合を前提としている。訪問介護では定期的な訪問が行われ、自動販売機の商品の補充では毎日巡回するような形態で業務が行われる。このような場合の計画では、予め分かっている候補の日程を用いて、一つの場所にある特定の日程や時間を割り当て、巡回する担当者が最短の経路で移動できるような計画を作成することができる。
【０００６】
しかし、保健指導は、１年に１回実施される健診の結果から指導を行うこと、また、指導者リソースの点から必ずしも毎年指導できるわけではないことなどから、事業所を訪問して指導する頻度は必ずしも高くない。事前に候補日は決まっておらず、計画を立てるための候補日程を決めるところからはじめる必要がある。このような保健指導では、日程を決めるためには、事業所に対して候補となる複数の日程を提示して、その中から都合の良い日程を事業所が選べるようにしたい。
【０００７】
また、指導者が複数の候補日程を提示した場合には、事業所側の回答は、候補日程の中でばらつくことになる。このため、指導者は１日に複数の事業所を回れるようにしたいが、地理的に近い事業所に同じ日を割り当てるだけでは、近い事業所同士が別の訪問日になってしまう場合もある。
【０００８】
このように、訪問したい事業所に対して、指導者が複数の日を候補日程として提示し、且つ、事業所の回答が候補日程の中でばらついた場合でも効率よく事業所を訪問し、保健指導を行うことができる日程を作成する方法が必要であるが、上記従来例ではこのようなことは考慮されていなかった。
【０００９】
そこで本発明は、上記問題点に鑑みてなされたもので、複数の訪問先に対して複数の訪問日程を提示したときに、各訪問先が希望する訪問日程が分散したときにも効率よく保健指導を行うことを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、プロセッサと記憶部とを備えて、予め設定した複数の地点に対する訪問の計画立案を支援する訪問計画作成装置であって、前記複数の地点間の移動コストに関する情報を移動コストデータとして受け付けて前記記憶部に保持する移動コスト入力部と、前記地点に対する訪問の候補日の一覧を受け付けて前記記憶部に保持する候補日一覧入力部と、前記地点に対して付与する訪問の候補日の日数を受け付けて前記記憶部に保持する候補日数入力部と、前記複数の地点を所定の順序で並べた場合の、地点間の移動コストデータを前記地点の順序で合計した第１の値と、前記地点の順序において、地点と前記候補日数から１を引いた数だけ前の順番の地点との移動コストデータを前記地点の順に合計した第２の値と、前記第１の値と第２の値の和が最小となる前記複数の地点の順序を演算する最適化処理部と、前記候補日の一覧から前記候補日の日数分の候補日を選択し、前記最適化処理部が求めた複数の地点の順序で各地点に１日ずつずらして前記選択した候補日を付与する日程付与部と、前記各地点に対する候補日を出力する候補日程出力部と、を有する。
【００１１】
さらに、本発明の訪問計画作成装置は、候補日一覧に示す候補日の間の訪問担当者の許容業務量を入力する担当許容量入力部と、前記複数の地点あたりの業務量を入力する業務量入力部と、前記複数の地点間の移動コストの情報、前記担当許容量、前記業務量から、前記複数の地点のうち、地点毎の業務量の和と前記地点間の移動コストの和が前記担当許容量よりも小さい範囲で複数の地点をまとめたクラスタを作るクラスタリング部と、前記クラスタを一つの地点として、前記地点の移動コスト情報を作成する移動コスト計算部と、前記最適化処理部に入力する移動コストを、前記クラスタ間の移動コスト情報とする。
【発明の効果】
【００１２】
したがって、本発明の訪問計画作成装置は、最適化処理部が、各クラスタを順番に訪問した場合の経路だけでなく、付与する日程数から1を引いた数離れたクラスタ間の移動コストについても合計し、最短となる順番を求める。そして、日程付与部がクラスタの順番に1日ずつすらして日程を付与していく。これにより、日程が重なる可能性があるクラスタ間の距離を短くすることができる効果がある。特に、事業所やクラスタを平面に分散している場合、経路の順番を最短化するだけでなく、日程数から1引いた数離れたクラスタ間の距離を考慮することで、日程が重なるクラスタ間の距離を短くすることができる効果がある。
【００１３】
さらに、クラスタリング部において、複数の事業所を、1日分の作業量の範囲でまとめてからクラスタにしてから、最適化処理部と日程付与部で日程を付与する。これにより、距離が近いクラスタは一つの地点として扱うことができるので、最適化処理の組み合わせ計算の数を減らすことができる。また、希望を聞くための日程を作成するだけなので、考慮する必要がない、1日の中でどの順番に巡回するか、ということを計算せずに最適化処理を行うことができる。
【００１４】
これにより、本発明の保険指導計画支援装置は、事業所に対して複数の日程を候補日程として提示することができ、且つ、事業所の回答が候補日程の中でばらついた場合でも、日程が重なる事業所間の距離を短くできるため、1日の指導者の移動距離を短くでき、効率よく事業所を訪問して保健指導を行うことができる日程を作成できる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１の実施形態を示し、訪問計画作成装置の一構成例を示すブロック図である。
【図２】本発明の第１の実施形態を示し、移動コスト入力部から入力する移動コストデータの一例を示す説明図である。
【図３】本発明の第１の実施形態を示し、候補日一覧入力部から入力する、候補日一覧データの一例を示す説明図である。
【図４】本発明の第１の実施形態を示し、業務量入力部から入力する、業務量データの一例を示す図である。
【図５】本発明の第１の実施形態を示し、業務許容量入力部から入力する許容量データで、指導者が１日あたりに働くことができる時間を示す許容量データの一例を示す説明図である。
【図６】本発明の第１の実施形態を示し、候補日程出力部が出力装置に出力する地点番号と候補日の一覧を示す説明図である。
【図７】本発明の第１の実施形態を示し、訪問計画作成装置で行われる処理の一例を示すフローチャートである。
【図８】本発明の第１の実施形態を示し、クラスタリング部が行う近隣事業所をまとめる処理の一例を示すフローチャートである。
【図９】本発明の第１の実施形態を示し、最適化処理部が行う最適化処理の一例を示すフローチャートである。
【図１０】本発明の第１の実施形態を示し、候補日程出力部が出力装置のディスプレイ上に表示する画面の一例を示す画面イメージで、（Ａ）は事業所の位置情報を画面上に表示した画面イメージで、（Ｂ）近隣の事業所同士をクラスタリングした結果を表示した画面イメージで、（Ｃ）は最適化処理部においてクラスタに付与する候補日の順序を決定した結果を表示した画面イメージで、（Ｄ）候補日程付与部によって、クラスタの順番に付与した候補日１０４１を表示した画面イメージである。
【図１１】本発明の第１の実施形態を示し、地点情報入力部から入力する事業所の情報の一例を示す説明図である。
【図１２】本発明の第２の実施形態を示し、訪問計画作成装置の一構成例を示すブロック図である。
【図１３】本発明の第２の実施形態を示し、健診情報入力部１３０１で入力する健診情報１２０１の一例を示す説明図である。
【図１４】本発明の第２の実施形態を示し、訪問計画作成装置２１０１の全体の処理の流れの一例を示す図である。
【図１５】本発明の第２の実施形態を示し、指導情報入力部１３０２で入力する指導情報１２０２の一例を示す説明図である
【図１６】本発明の第２の実施形態を示し、個人属性情報入力部１３０３で入力する個人属性情報１２１４の一例を示す説明図である。
【図１７】本発明の第２の実施形態を示し、優先度計算部１３０４の処理の具体的な手順の一例を示すフローチャートである。
【図１８】本発明の第２の実施形態を示し、訪問日程生成部１２１０で行われる処理の一例を示すフローチャートである。
【図１９】本発明の第１の実施形態を示し、クラスタと事業所の関係を示すクラスタ管理テーブルの一例を示す説明図である。
【発明を実施するための形態】
【００１６】
以下、本発明の一実施形態を添付図面に基づいて説明する。
【００１７】
図１は、本発明の第１の実施形態を示し、訪問計画作成装置の一構成例を示すブロック図である。訪問計画作成装置１０１は、キーボードやマウスなど操作者による入力を受ける入力装置１０２と、ディスプレイやプリンタなどの出力装置１０３と、演算を行うＣＰＵ（プロセッサ）１０４と、演算に用いるメモリ１０５と、ハードディスクなどの記憶装置１０６を含む計算機で構成される。
【００１８】
記憶装置１０６には、移動コスト入力部１１１と、候補日一覧入力部１１２と、付与日数入力部１１３と、担当許容量入力部１１７と、業務量入力部１１８と、最適化処理部１１４と、日程付与部１１５と、候補日程出力部１１６と、クラスタリング部１１９と、移動コスト計算部１２０と、地点情報入力部１２１などを格納している。これらの各機能部位から訪問計画装置が構成され、各機能部位はプログラムで構成されており必要に応じてメモリ１０５に読み出され、ＣＰＵ１０４で実行される。また、図示はしないが、メモリ１０５にはＯＳがロードされてＣＰＵ１０４により実行される。
【００１９】
移動コスト入力部１１１は、保健指導を行う保健師（または指導者）が事業所に訪問する際のコストを移動コストデータとして入力する。候補日一覧入力部１１２は、保健師が事業所を訪問する候補日を入力する。付与日数入力部１１３は、訪問先の一事業所あたりに付与する候補日の数を入力する。担当許容量入力部１１７は、保健師が１日あたりに働くことができる時間を入力する。業務量入力部１１８は、指導を行う訪問先で必要とする保健師の人数と指導時間を入力する。地点情報入力部１２１は、訪問先の事業所の位置情報を入力する。クラスタリング部１１９は、複数の事業所をクラスタ単位にまとめるクラスタリングを行う。移動コスト計算部１２０は作成したクラスタ間の距離を計算する。最適化処理部１１４は、各クラスタを順番に訪問した場合の経路だけでなく、クラスタに付与する候補日の数から１を引いた値だけクラスタ番号が離れたクラスタ間の移動コストについても合計し、最短となる順番を求める。日程付与部１１５は、最適化処理部１１４が求めたクラスタの順序から移動コストの合計が最小になる場合に、クラスタ単位で保健師が訪問する候補日を付与し、候補日程出力部１１６により訪問先の事業所と候補日を出力する。なお、上記各部の詳細については後述する。
【００２０】
図２は、本発明の訪問計画作成装置１０１において、移動コスト入力部１１１から入力する移動コストデータの一例を示す図である。移動コストデータは、本実施形態では、保健指導の訪問先である事業所の所在地を一つの地点として、各事業所間の移動に要するコストを表現したデータである。移動のコストとは、地点間の距離やその移動に要する時間が考えられるが、ここでは、事業所間の移動時間とする。２０１は移動元の事業所の番号、２０２は移動先の事業所の番号を示し、それぞれの交差する点は、移動元事業所から移動先事業所までの移動時間が記録されている。入力装置１０２を介して移動コスト入力部１１１から入力された移動コストデータは記憶装置１０６またはメモリ１０５に保持される。
【００２１】
図３は、本発明の訪問計画作成装置１０１において、候補日一覧入力部１１２から入力する、候補日一覧データの一例を示す図である。候補日一覧データは、事業所を訪問する候補日の番号３０１と、候補日３０２が記録されている。候補日３０２には、今回の訪問計画の作成において、計画立案を行う日程として候補日３０２を列挙して、候補日３０２に候補番号３０１を付与しておく。本実施形態では、候補日３０２の総数が７の例を以下に示す。入力装置１０２を介して候補日一覧入力部１１２から入力された候補日一覧データは記憶装置１０６またはメモリ１０５に保持される。
【００２２】
図４は、本発明の訪問計画作成装置１０１において、業務量入力部１１８から入力する、業務量データの一例を示す図である。業務量データは、各事業所を訪問したときに必要な業務量が記録されたデータで、本実施形態では、事業所を示す地点番号４０１と、事業所毎の指導人数４０２、その事業所で指導人数の指導を行った場合の指導時間４０３が記録されている。入力装置１０２を介して業務量入力部１１８から入力された業務量データは記憶装置１０６またはメモリ１０５に保持される。
【００２３】
図５は、本発明の訪問計画作成装置１０１において、業務許容量入力部１１７から入力する、指導者が１日あたりに働くことができる時間を示す許容量データの一例を示す図である。訪問する指導者を識別する担当者番号５０１と、当該指導者が１日当たりに働く時間（分）を示す許容時間５０２が記録されている。入力装置１０２を介して業務許容量入力部１１７から入力された許容量データは記憶装置１０６またはメモリ１０５に保持される。
【００２４】
図６は、本発明の訪問計画作成装置１０１において、候補日程出力部１１６が出力装置１０３に出力する地点番号６０１と候補日６０２〜６０４の一覧を示す図である。各事業所の番号を示す地点番号６０１に対して、複数の候補日６０２〜６０４が付与された結果を示している。
【００２５】
次に、図７に示すフローチャートを用いて本発明の訪問計画作成装置１０１で行われる処理の一例について説明する。図７のフローチャートは、入力装置１０２から管理者（またはユーザ）が訪問計画の作成を指令したときに実行される。
【００２６】
訪問計画作成装置１０１のＣＰＵ１０４は、まずデータ入力ステップ７０１で、必要なデータの入力を行う。移動コスト入力部１１１が図２に示した事業所間の移動時間に関する移動コストデータを入力し、候補日一覧入力部１１２が図３に示した候補日の一覧データを入力し、業務量入力部１１８が図４に示した事業所訪問時の指導人数や指導時間を示した業務量データを入力し、担当許容量入力部１１７が図５に示した指導者１日あたりに働くことができる時間を示す許容量データを入力する。また、付与日数入力部１１３では、一つの事業所あたりに付与する候補日の数を入力する。本実施形態では各事業所に３日ずつの候補日を付与するように、キーボード等の入力装置１０２から“３”を入力するものとする。
【００２７】
次に、地点クラスタリングステップ７０２では、クラスタリング部１１９が、複数の事業所のクラスタリングを行う。本実施形態では、図５の許容量データから、担当者番号５０１＝１の指導者（以下、指導者１とする）の業務について考える。指導者１は、許容時間５０２が３００分である。そこで、図４の業務量データ事業所毎の指導時間４０３と図２の移動コストデータの事業所間の移動時間が３００分以内に収まるように、複数の事業所をまとめていく。例えば、移動時間を示す図２の移動コストデータが近い複数の事業所を一つのクラスタにまとめ、指導時間４０３と移動コストデータの合計が、３００分以内の範囲でクラスタを作る。
【００２８】
クラスタの数は、候補日の総数（以下、候補日総数）が７日、ひとつの事業所に付与する候補日の数（以下、付与候補日数）が３であるので、７から３−１を引いた５個のクラスタを作るものとする。すなわち、
クラスタの数  ＝  候補日総数−（付与候補日数−１）
となる。
【００２９】
また、図１９で示すように、クラスタの識別子と事業所の識別子である図２の地点番号の関連付けを定義する対応表を作成しておく。この対応表は、クラスタ管理テーブルとして記憶装置１０６またはメモリ１０５に保持される。クラスタ管理テーブルは、クラスタ番号１９０１と、各クラスタに所属する地点番号１９０２と、各クラスタに所属する事業所を訪問する指導人数１９０３と、各クラスタに割り当てられて指導者の指導時間の総和を格納する指導時間１９０４で構成される。なお、クラスタ管理テーブルは、地点番号に代わって事業所番号を格納するようにしても良い。クラスタリングステップ７０２の詳細な処理については後述する。
【００３０】
次に、クラスタ間距離計算ステップ７０３で、移動コスト計算部１２０において、作成したクラスタ間の距離を計算する。図１９で示したように、一つのクラスタには、複数の事業所が含まれているので、ここでは、一つ目のクラスタに含まれる事業所と、２つ目の事業所に含まれる事業所の間の移動コストの平均値を、クラスタ間の移動コストとする。作成した移動コストデータは、図2で示したデータと同様の形式のデータとなる。図2では、各行、列が事業所を示していたが、ここでは、行、列は各々クラスタを示すことになる。また、図４の業務量データについても、クラスタ内に属する事業所を訪問する指導人数４０２と、指導時間４０３を合計して、クラスタ毎の業務量データを作成し、図１９のクラスタ管理テーブルの指導人数１９０３と指導時間１９０４へ格納しておく。
【００３１】
次に、最適化処理ステップ７０４で、最適化処理部１１４において、クラスタ単位の訪問の順番について最適化処理を行う。最適化処理部１１４では、クラスタ間の移動コストデータと付与日数入力部１１３から入力された付与日数の情報を用いて、各クラスタを巡回した場合の順番を決定する。
【００３２】
クラスタの順番は、クラスタの順番で移動した場合の各クラスタ間の移動コストを集計した値と、あるクラスタと付与日数から１を引いた数だけ前の順番のクラスタとの間の移動コストを全てのクラスタ間について集計した値の合計が最小となる順番を求める。下記の式１から式３は、この最適化を行う問題を表現した式の一例である。式１から式３において、ｘｉｊはｉ番目に地点ｊに行くことを示し、ｃｊｋは地点ｊと地点ｋの間を移動する場合の移動コストを示す。
【００３３】
式１は、最小化する移動コストの合計Ｚの式を示し、１番目の項は、ｎ個（ここでは５個）のクラスタを順番に移動する場合の移動コストの合計である。また、２番目の項は、あるクラスタと、付与候補日数から１を引いた数だけ前の順番のクラスタの移動コストの合計を示し、ここでは、付与する候補日数が３なので、順番の３番目から１番目、４番目から２番目、５番目から３番目の移動コストを合計したものとなる。
【００３４】
式２は一つの順番には一つのクラスタのみに行くこと、式３は一つのクラスタには１回だけ行くことを示す条件式である。このように、順番に移動した場合の移動時間、および、付与する候補日の数から１を引いた数だけ離れた区間の移動時間を合計した値が、最小になるクラスタの順番を求める。最適化処理（最適化処理部１１４）のより具体的な処理の流れについては、別途後述する。
【００３５】
【数１】
2010224660.tif 000003
【００３６】
【数２】
2010224660.tif 000004
【００３７】
【数３】
2010224660.tif 000005
【００３８】
次に、日程付与ステップ７０５では、日程付与部１１５において、訪問先の事業所に対して候補日を付与する。日程付与部１１５は、最適化処理ステップ７０４で求めたクラスタの順番を元に、図３の候補日一覧データから、付与日数３日ずつ付与する。例えば、最適化処理ステップ７０４の出力として、クラスタの順序で５−１−４−２−３の順番が最も移動コストの合計が最小になる場合、クラスタ５に対して、候補日一覧データの候補日番号１から３を、次のクラスタ１に対して候補日一覧データの候補日番号２から４を、クラスタ４に対して候補日番号３から５を、クラスタ２に対して候補日番号４から６を、クラスタ３に対して候補日番号５から７の候補日を、というように、候補日番号を１日ずつずらして候補日を付与する。そして、クラスタリングステップ７０２で作成したクラスタと事業所のクラスタ管理テーブルを用い、各クラスタに属する事業所に対して、クラスタに付与された候補日を付与する。そして、候補日程出力部１１６から、図６に示すような事業所毎の候補日の表を出力する。候補日程出力部１１６は、出力装置１０３に図６を表示する。
【００３９】
候補日程出力部１１６で出力された候補日を各事業所に送付して、各事業所の希望候補日を選択してもらう。そして、各事業所からの回答を得て最終的な候補日を決定する。
【００４０】
以上の処理手順により、各事業所に対して、３日ずつの候補日を付与することができる。このとき、最適化処理部１１４が、各クラスタを順番に訪問した場合の経路だけでなく、候補日を付与する候補日数から１を引いた数だけクラスタ番号が離れたクラスタ間の移動コストについても合計し、クラスタ間の距離が最短となる順番を求める。そして、日程付与部１１５がクラスタの順番に１日ずつすらして候補日を付与していく。これにより、候補日が重なる可能性があるクラスタ間の距離を短くすることができる効果がある。特に、事業所やクラスタを平面に分散している場合、経路の順番を最短化するだけでなく、付与候補日数から１引いた数離れたクラスタ間の距離を考慮することで、候補日が重なるクラスタ間の距離を短くすることができる。
【００４１】
さらに、クラスタリング部１１９において、複数の事業所を、１日分の作業量の範囲でまとめてからクラスタにしてから、最適化処理部１１４と日程付与部１１５で候補日を付与する。これにより、距離が近いクラスタは一つの地点として扱うことができるので、最適化処理の組み合わせ計算の数を減らすことができる。また、希望を聞くための候補日を作成するだけなので、考慮する必要がない、１日の中でどの順番に巡回するか、ということを計算せずに最適化処理を行うことができる。
【００４２】
これにより、本発明の保険指導計画支援装置１０１は、訪問先の事業所に対して複数の候補日を候補日程として提示することができ、且つ、事業所の回答が候補日程の中でばらついた場合でも、候補日が重なる事業所間の距離を短くできるため、効率よく事業所を訪問し、保健指導を行うことができる候補日を作成できる。
【００４３】
次に、近隣事業所をまとめるクラスタリングの処理手順について、図８のフローチャートを用いて詳細に説明する。図８は、クラスタリングステップ７０２において、クラスタリング部１１９が行う、近隣事業所をまとめるクラスタリングの処理手順の一例を示すフローチャートである。
【００４４】
まず、候補日一覧入力部１１２で取得した候補日の日数から、クラスタ数を上述のように計算する（８０１）。図３の候補日一覧のデータは７日間分の候補日を持つものとする。また、付与日数入力部１１３から、入力された付与候補日数は３である。そこで、付与候補日数３から１を引いた２を候補日の数７から引いた、５をクラスタの数とする。
【００４５】
次に、移動コスト入力部１１１から入力した図２の移動コストデータから、移動コストの最小値を求め、最小の移動コストとなる２つの地点を選択する（８０２）。図２に示す移動コストデータの対角線より上のデータのみを探索するものとした場合、最小値は１０であり、ここでは、地点番号１と２を選択したものとする。
【００４６】
そして、選択した２つの地点が、これまで作成したクラスタに含まれるか否かを判定する（８０３）。ここでは、まだクラスタは作られていないのでどちらの地点（地点番号１、２）もクラスタには含まれない。そこで、ステップ８０５を処理し、業務量入力部１１８で取得した図４の業務量データから、２つの地点の指導時間４０３と、２つの地点間の移動コストを合計し、２つの地点の事業所を１日で指導する場合の作業時間を計算する。ここでは、地点番号１の事業所の指導時間４０３の９０分と地点番号２の指導時間４０３の６０分と、移動コストとして所定値の１０を足して１６０分が２つの地点における作業（指導）時間となる。
【００４７】
次に、許容量データ入力部１１７で入力した値で保健師が１日当たりに働くことができる時間を示す許容時間５０２と、上記計算した２つの地点における１日分の作業時間を比較する（８０６）。ここでは、担当者番号１の場合のみ考慮するものとし、許容時間の３００分と、上記２つの地点における１日の作業時間１６０分とを比較する。２地点の作業時間よりも許容時間が小さい場合は、これら２つの地点の事業所をひとりの指導者が１日で指導できるので、上記地点番号１，２の事業所を一つのクラスタにまとめて、図１９のクラスタ管理テーブルにクラスタとして登録する（８０７）。一方、上記２つの地点で計算した作業時間が、許容量データよりも大きい場合は、これらの２つの地点をひとりの指導者によって１日で指導することができないので、クラスタにまとめない。ここでは、１日の作業時間１６０分が、許容時間３００分よりも小さいので、一つのクラスタにまとめる。
【００４８】
次に、移動コストデータの中から、今回の処理で選択した移動コストを対象から除く（８０８）ここでは、地点番号１と地点番号２の移動コストを対象から外すため、これらのデータを削除するか、あるいは予め設定した大きな値（９９９９９など）を入れておく。そして、終了条件に一致するかを判断し、終了条件に一致しない場合は、８０２のステップから繰り返す（８０９）。
【００４９】
終了条件を満足していない場合には、８０２のステップに戻って、図２に示した移動コストデータの最小値が１５の地点番号２と地点番号３を選択する。このとき、８０３のステップで、地点番号２は、地点番号１とのクラスタが形成されているので、８０４のステップで図４の業務量データから作業時間を計算する。作業時間は、地点番号１と地点番号２の作業時間９０分と６０分と移動コスト１０分に、地点番号３の作業時間９０分と地点番号２と地点番号３の移動コスト１５を加えた２６５分となる。
【００５０】
以上のような処理を繰り返すことで、複数の地点番号（または事業所番号）を一つのクラスタにまとめてクラスタを形成していく。また、ステップ８０９の終了条件としては、全ての移動コストデータを検索した、または、移動コストデータの最小値が許容時間を越えた、作成したクラスタ数がステップ８０１で計算したクラスタ数以下になった、などの予め設定した条件を満足したときに終了する。また、作成したクラスタ数が、ステップ８０１で計算したクラスタ数よりも大きい場合は、クラスタ内の地点番号の指導人数４０２の合計が大きい方から、必要なクラスタの数だけ取ることでクラスタを作ることができる。
【００５１】
以上に示したように、本発明の訪問計画作成装置１０１は、近隣の複数の事業所をまとめたクラスタを作成する。これにより、後の最適化処理において、距離が近い事業所同士をまとめたクラスタを一つの地点として扱うことができるので、組合せ計算の数を減らすことができる効果がある。また、事業所間の移動コストと、指導に要する時間を合計して、指導者の許容時間以内となるクラスタを作成することで、指導と移動を含めた作業時間が１日の業務に収まるようなクラスタを作成することができる。
【００５２】
次に、図７の最適化処理ステップ７０４で行われる最適化処理部１１４が行う最適化処理について説明する。図９は最適化処理の具体的な処理の流れの一例を示すフローチャートである。最適化の具体的な処理については、幾つか方法があるが、ここでは、総当りで解を探索する方法を示す。
【００５３】
まず、クラスタの順序に関する初期の順列を作成する（９０１）。図１９において、クラスタ番号１９０１が１から５まである場合は、例えば１、２、３、４、５のクラスタ番号の昇順でソートしたものを初期値とする。
【００５４】
次に、上記初期値の順列の順に移動コストデータを合計する（９０２）。ここでは、初期値のクラスタ番号の順列が１、２、３、４、５なので、クラスタ１から２への移動コスト、クラスタ２から３への移動コストというように、クラスタ１−２間、２−３間、３−４間、４−５間の移動コストデータを合計していく。この移動コストデータを合計することが上記式１の１番目の項に相当し、ここでは、移動コストデータの合計を移動コスト計ａとする。
【００５５】
次に、上記初期値の順列のｉ＋付与候補日数−１番目のクラスタからｉ番目のクラスタへの移動コストを合計する（９０３）。ここでは、付与候補日数は３なので、クラスタ３−１間、４−２間、５−３間の移動コストデータを合計する。この移動コストデータの合計が上記式１の２番目の項に相当し、ここでは、これを移動コスト計ｂとする。ただし、ｉは１からクラスタ数−（付与候補日数−１）まで演算を行う。
【００５６】
次に、この移動コスト計ａとｂの和について、これまでに求めた移動コスト計ａとｂの和の最小値（最小時間）と比較し（９０４）、これまでの最小値より小さければ、移動コスト最小の順列として、順列と移動コストデータを登録する（９０５）。この時点では、最小値は存在しないので、この値を最小値として登録する。
【００５７】
そして、全ての順列について比較するまで（９０６）、次々と順列を作成して繰り返す（９０７）。９０７のステップでは、次の順列は、例えば１、２、３、５、４として、次の計算をし、９０２から９０７を繰り返して、全ての順列の中で、クラスタ間の移動コストの合計と、付与候補日数−１だけ順列中の順番がはなれたクラスタの間の移動コストの合計の和が最小になる順列を求める。
【００５８】
以上の処理により、隣り合うクラスタ間の移動コストと、付与候補日数−１だけ離れたクラスタ間の移動コストの合計が最小になるクラスタの順列を作ることができる。これにより、候補日を付与する処理において、付与する候補日が重複するクラスタ間の移動コストを小さくすることができる。
【００５９】
上述の説明では、総当りで移動コストデータの合計が最小となる順列を求めているが、実際は、クラスタ数に応じて処理時間が長くなるのに対応して、高速化の工夫を行う。具体的には、不要な順列に対する評価を省略する分枝限定法を用いる方法、また、遺伝的アルゴリズムなどに代表される公知または周知の最適化手法を用いて所定の時間内、または、所定の繰り返し回数内での最小値を求める方法などを適用する方法もある。これらの手法を導入することにより、処理を高速化することができる。
【００６０】
次に、本発明の訪問計画作成装置１０１の表示画面について説明する。図１０（Ａ）〜（Ｄ）は、本発明の訪問計画作成装置１０１において、候補日程出力部１１６が出力装置１０３のディスプレイ上に表示する画面の一例を示す図である。図１０は、４つの画面を示しており、処理の進行に応じて変化するものとする。
【００６１】
また、図１１は、地点情報入力部１２１から入力する事業所の情報の一例を示す図で、地点番号１１０１と、その地点の事業所のＩＤ１１０２、その地点の事業所の名称１１０３、住所１１０４と、その地点のＸ座標１１０５、Ｙ座標１１０６などの情報を持つ。Ｘ座標１１０５、Ｙ座標１１０６の位置は、事業所を代表する地点（中心や入り口位置など）の座標で、例えば地図情報処理などで用いられる平面直角座標系の座標を用いて表現する。住所情報と緯度経度や座標との対応関係については、国土交通省の公開情報や、各種地図ソフトなどを用いて別途対応させておく。
【００６２】
図１０（Ａ）において、画面１００１は、事業所の位置情報を、画面上に表示したもので、ここでは、事業所１０１１を、地点番号１から２１までの２１個の例を表示している。図１０（Ａ）は、候補日付与の処理を始める前の段階の状態を示している。事業所の表示位置は、図１１のＸ座標、Ｙ座標などに基づいて表示する。
【００６３】
次に、図１０（Ｂ）の画面１００２は、クラスタリング部１１９において行われた、近隣の事業所同士をクラスタリングした結果を表示した例である。地点番号１から３の事業所１０１１を一つのクラスタ１０２１として、クラスタに番号１を付与している。これを全ての地点番号に適用して、各事業所が各々７つのクラスタに分割された様子を表示している。
【００６４】
次の図１０（Ｃ）に示す画面１００３は、最適化処理部１１４においてクラスタに付与する候補日の順序を決定した結果を表示した例である。図中クラスタ１〜７内に表示した丸数字１〜７のクラスタ１０２１対して、最適化処理によって決定した日程付与順序１０３１と、その順番を示す矢印１０３２及び移動コストデータの合計で考慮した距離１０３３を示している。
【００６５】
また、図１０（Ｄ）に示す画面１００４は、候補日程付与部１１６によって、クラスタ１０２１の順番１０３１に付与した候補日１０４１を表示した例である。
【００６６】
以上に示したように、本発明の訪問計画作成装置１０１は、事業所位置（地点番号）と、事業所をまとめたクラスタ位置と、そのクラスタに対して求めた候補日を付与する順序と、各クラスタに対して付与した候補日などを表示する。これにより、訪問計画作成装置１０１の利用者は、訪問予定の事業所がまとめられたクラスタの位置と、また、それぞれのクラスタに候補日を付与する順番と、事業所に付与された候補日などを、分かりやすく参照することができる。
【００６７】
また、上述の実施形態では、クラスタを作成する方法として、最短距離の事業所のペアからクラスタにまとめていく方法を示したが、他の方法を用いても良い。例えば、候補日の数が決まっている場合は、候補日の数だけ、ランダムに事業所を選択し、選択した事業所を中心として周囲の事業所とクラスタを作成し、クラスタ内の事業所の移動と指導が１日の業務に収まるようにしつつ、全事業所がクラスタに収まるように、あるいは、指導の人数が多くなるように、中心となる事業所を移動しながらクラスタを作成しても良い。前述の方法では、近接する事業所を中心に離れた事業所が周囲に存在するような場合、近い事業所同士のクラスタの他は離れた事業所が孤立してしまう可能性があるが、この方法を用いると孤立した事業所を減らして地域全体を幾つかのクラスタに分割することができる。
【００６８】
また、上述の実施形態では、クラスタ間の移動距離計算のステップ７０３では、クラスタに属する事業所間の距離の平均を用いる方法を例として説明したが、他の方法を用いても良い。クラスタの重心間の移動コストを計算する方法、クラスタ間で一番近い事業所間の移動コストを用いる方法、または、クラスタ間で一番遠い事業所間の移動コストを用いる方法などがある。クラスタを作成したときに、これらの計算を行い、クラスタ同士について、図２のような移動コストデータを作成する。
【００６９】
＜第２実施形態＞
次に、本発明の第２の実施の形態について、健診情報等を利用した事業所の選定から、事業所の希望に基づいた最終的な訪問の候補日の生成までの流れの一例について説明する。
【００７０】
図１２は、本発明の第２実施形態の訪問計画作成装置２１０１の構成の一例を示すブロック図である。前記第１実施形態の図１の構成に対して、過去に実施した健診や指導の対象となる人の健診情報を入力する健診情報入力部１３０１と、過去の保健指導の内容や結果を入力する指導情報入力部１３０２と、健診情報や指導情報の個人の所属事業所など属性情報を入力する個人属性情報入力部１３０３と、健診情報や指導情報を基に事業所別の指導の優先度を算出する優先度計算部１３０４と、事業所からの指導の希望候補日を入力する希望日程入力部１３０５と、事業所の希望候補日を反映させた確定日程を生成する訪問日程作成部１２１０を加えたもので、その他の構成は前記第１実施形態と同様である。
【００７１】
図１３は、健診情報入力部１３０１で入力する健診情報１２０１の一例を示す図である。健診の１回分を識別する健診ＩＤ１４１０と、個人を識別する個人ＩＤ１４０１と、健診の受診日１４０２と、受診時の年齢１４０３と、腹囲１４０４と、最低血圧１４０５と、最高血圧１４０６と、血糖値１４０７と、中性脂肪１４０８など、検査の結果や問診の結果などが記録されている。なお、入力された健診情報は記憶装置１０６またはメモリ１０５に保持される。
【００７２】
図１５は、指導情報入力部１３０２で入力する指導情報１２０２の一例を示す図である。個人を識別する個人ＩＤ１５０１と、指導内容を示すプログラムＩＤ１５０２と、指導に入る判断を行った健診を示す導入判定健診ＩＤ１５０３と、指導の開始日１５０４と、指導の終了日１５０５と、指導の結果、改善した（１）か、改善できなかった（０）かを示す指導結果１５０６などが記録されている。なお、入力された指導情報は記憶装置１０６またはメモリ１０５に保持される。
【００７３】
図１６は、個人属性情報入力部１３０３で入力する個人属性情報１２１４の一例を示す図である。個人を識別する個人ＩＤ１６０１と、氏名１６０２と、性別１６０３と、個人が所属する事業所のＩＤ１６０４などが記録されている。なお、入力された個人属性情報は記憶装置１０６またはメモリ１０５に保持される。
【００７４】
図１４は、本発明の訪問計画作成装置２１０１の全体の処理の流れの一例を示す図である。健診情報１２０１は図１３の健診情報が記録されたデータであり、指導情報１２０２は図１５の指導情報が記録されたデータであり、個人属性情報１２１４は図１６の個人属性情報が記録されたデータである。指導者勤務予定１２０４は保健指導を行う指導者のスケジュールから求めた図５の許容量データである。事業所情報１２０５は図１１に示した事業所の座標などの位置を示すデータである。候補日一覧１２１３は、図３に示した候補日一覧データである。
【００７５】
訪問計画作成装置２１０１は、健診情報１２０１と、指導情報１２０２と、個人属性情報１２１４を用いて優先的に指導する事業所の優先度を計算する優先度計算部１３０４を含む。そして、訪問計画作成装置２１０１は、指導者の勤務予定１２０４と、事業所情報１２０５と、候補日一覧１２１３を用いて、事業所毎に保健指導に訪問する候補日の生成を行う訪問日程作成部１２０６を含む。なお、訪問日程作成部１２０６は、図１２の移動コスト入力部〜移動コスト計算部１２０の各部に相当する。
【００７６】
訪問計画作成装置２１０１は、事業所に対する候補日の通知１２０７を出力し、事業所１２０８に送付または送信する。事業所１２０８では、受け付けた通知１２０７に対して指導者の訪問を受け入れられる希望候補日を回答１２０９を返信する。
【００７７】
訪問計画作成装置２１０１は、事業所からの回答１２０９を入力し、事業所の希望を基にした訪問候補日の生成を行う訪問日程作成部１２１０を含む。そして、訪問日程作成部１２１０が、最終的な訪問日程１２１１を出力する。
【００７８】
図１７は、優先度計算部１３０４の処理の具体的な手順の一例を示すフローチャートである。事業所の優先度の付け方には幾つか考えられるが、ここでは、過去の健診情報、指導情報から、指導によって改善する可能性が高い人に高い優先度をつける事業所の選定方法について示す。
【００７９】
まず、ステップ１７０１では、優先度計算部１３０４が健診情報入力部１３０１と、指導情報入力部１３０２と、個人属性情報入力部１３０３から、図１３に示した健診情報１２０１と、図１５に示した指導情報１２０２と、図１６に示した個人属性情報１２１４を取得する。このとき、健診情報１２０１は過去の５年分、指導情報１２０２は過去４年分を取得する。ここでは、過去分として、受診日１４０２と指導開始日１５０４が２００７年以前のものを取得する。
【００８０】
次に、ステップ１７０２では、優先度計算部１３０４が上記取得した指導情報１２０２と健診情報１２０１をつき合わせて指導を受けた人のデータを取り出し、健診の検査項目と、指導結果との関連を分析して、指導結果に関連する項目を抽出する。
【００８１】
具体的には、指導情報１２０２の導入判定健診ＩＤ１５０３と、健診情報１２０１の健診ＩＤ１４１０が同じ健診情報を取り出し、年齢１４０３、腹囲１４０４、最低血圧１４０５、最高血圧１４０６、血糖値１４０７、中性脂肪１４０８などの検査値と、指導結果１５０６の改善１／非改善０との関係を分析する。指導結果１５０６の１、０毎に検査値の平均値を求め、平均値に違いがあるものを指導結果に関連する項目とする。平均値の差はＴ検定などにより差の有無を検定する。また、検査値だけでなく、個人ＩＤ１４０１が同じで受診日１４０２が前年の健診との検査値の差や変化率なども対象とする。ここでは、腹囲、血糖値の前年からの変化率などが指導結果に関連する項目として抽出されたものとする。
【００８２】
次に、ステップ１７０３では、優先度計算部１３０４が上記ステップ１７０２で抽出した検査項目と指導結果を回帰分析して優先度モデルを作成する。優先度モデルは、腹囲１４０４と血糖値１４０７の前年からの変化率を説明変数とし、指導結果１５０６の改善１、非改善０の値を目的変数として回帰分析を行い、指導結果を推定する回帰式を作成してモデルとする。
【００８３】
次に、ステップ１７０４では、選定の対象となる健診情報を取得する１７０４。ここでは、今回の選定の対象は、２００８年の８月に健診を受けた人として、受診日１４０２が２００８年８月の人を抽出する。
【００８４】
次に、ステップ１７０５では、上記ステップ１７０３で作成した優先度モデルに最新（または直近）の２００８年８月の健診情報を適用して、個人の毎の優先度を計算する。ここでは、健診ＩＤ１４１０が０８０１から０８０４の腹囲データ１４０４と、健診ＩＤ１４１０が０７０１と０８０１、０７０２と０８０２、０８０３と０７０３、０８０４と０７０４の血糖値１４０７の変化率を、上記回帰式に代入して、指導結果の推定値を求める。指導結果の推定値は、改善と推定される場合は１に近い値、非改善と推定される場合は０に近い値が得られるので、これを優先度とする。
【００８５】
次に、ステップ１７０６では、上記ステップ１７０４で個人毎に求めた優先度を事業所毎に集計し、事業所毎の優先度を求める。この集計は、事業所に属する個人の優先度を合計した値や、合計値を事業所に属する人数で割った値などを用いる。
【００８６】
次に図１４の訪問日程作成部１２０６では、優先度計算部１３０４による事業所の優先度の算出に続いて、事業所の希望を問い合わせる訪問日程の生成を行う。ここでは、所定の前処理の後、前記第１実施形態に示した図７、図８、図９に示したフローチャートで、候補日程の生成を行う。前処理としては、優先度計算部１３０４での事業所優先度の算出で対象となった事業所の事業所情報１２０５から、前記第１実施形態の図２に示した移動コストデータと、図４に示す業務量データを作成する処理を行う。
【００８７】
図２の移動コストデータは、本第２実施形態では、事業所間の直線距離から求めた移動時間とし、各々の事業所のＸ座標１１０５、Ｙ座標１１０６から、事業所間の直線距離を求め、そこに移動時間に関する定数として、１ｋｍあたり２分として距離から時間を求める方法とする。座標からの距離の計算方法については、国土地理院が公開している方法を用いることで計算できる。また、別途地図ソフトなどを用いて、事業所間の移動距離、移動時間を求めても良い。これらの方法で移動コストデータを作成することができる。また、前記第１実施形態に示した図４の業務量データは、優先度計算部１３０４での事業所優先度の算出の処理で、事業所毎の指導対象者の人数が集計されているので、ここでは、一人当たりの指導時間を３０分として、指導時間４０３を計算する。
【００８８】
さらに、前記第１実施形態に示した図８のクラスタリングの処理の説明では、作成したクラスタ数が、前記第１実施形態の図８のステップ８０１で計算したクラスタ数よりも大きい場合に、クラスタ内の地点の指導人数４０２の合計が大きいクラスタから採用する方法について説明したが、ここでは、クラスタに属する事業所の優先度の合計が大きいクラスタから採用する方法を取る。これにより、改善の可能性の高いクラスタから指導を行うことができる。
【００８９】
次に、図１４の訪問日程生成部１２１０の処理について説明する。図１８は、訪問日程生成部１２１０で行われる処理の一例を示し、事業所の希望日程を受け付けて最終的な訪問日程を生成する処理のフローチャートの一例を示す図である。
【００９０】
まず、訪問日程生成部１２１０は、ステップ１８０１で日程生成の対象とする事業所について、事業所毎の希望日（事業所が選択した候補日）と、事業所毎の業務量と、事業所間の移動コストデータを取得し、さらに、候補日を取得する。事業所毎の希望日は、事業所から得られた回答１２０９を、キーボードなどの入力装置１０２を用いて、希望日程入力部１３０５から入力する。事業所毎の業務量は図４に示したデータで、事業所間の移動コストは図２に示したデータである。これらのデータは、各々、前述の候補日の生成１２０６の前処理で作成している。また、候補日の一覧は、前記第１実施形態の図３に示したデータで、候補日一覧１２１３から取得する。
【００９１】
次に、ステップ１８０２では、事業所の訪問順序に関する初期の順列を作成する１８０２。例えば、事業所が１から１０まである場合は、地点番号の１、２、３、４、５、６、７、８、９、１０という順列を最初の順列とする。
【００９２】
次に、ステップ１８０３では、候補日番号ｄを１、事業所の地点番号の順列の縦列内の番号ｊを１として初期化する。候補日番号ｄは、前記第１実施形態の図３に示した候補日番号３０１とする。
【００９３】
次に、ステップ１８０４では、候補日番号ｄの候補日の業務時間として、ｊ番目の事業所とｊ−１番目の事業所の移動コストと、事業所ｊにおける指導時間を加算する１８０４。ここでは、ｊ−１は０であるので、移動コストデータを無視し、１番目の事業所（地点番号１）の事業所の指導時間（４０３）９０分を加える。
【００９４】
そして、ステップ１８０５では、候補日番号ｄの候補日の業務時間が、指導担当者の許容時間より大きいか否かを判定する。候補日番号１の業務時間はここでは９０分で、指導担当者の許容時間５０２は、ここでは３００分なので、事業所の番号ｊを１加算するステップ１８１２に進み、上記ステップ１８０４から処理を繰り返す。
【００９５】
ステップ１８０４では、図２の移動コストデータから、事業所の地点番号２と地点番号１の間の移動コスト１０と、図４に示した業務量データから地点番号２の指導時間６０を加算し、例えば、図３に示した候補日番号１の業務時間は９０＋１０＋６０で１６０分となる。
【００９６】
ステップ１８０５では、候補日番号ｄの業務時間が担当指導者の許容時間よりも大きいか否かを判定し、大きければステップ１８０６に進み、等しいまたは小さい場合にはステップ１８１２へ進む。上記ステップ１８０４の加算結果は、まだステップ１８０５では担当指導者の許容時間３００分より小さいので、さらにステップ１８１２、１８０４を繰り返す。そして、ステップ１８０５の判定で候補日番号ｄの業務時間が許容時間３００より大きくなったときには、ステップ１８０６に進んで候補日番号ｄの業務時間を、事業所ｊの分を加算する前の状態として、候補日番号ｄを次の候補日とする。
【００９７】
そして、ステップ１８０７では、全ての候補日を計算したか、または、全ての事業所について計算したか否かを判断する１８０７。ここでは、まだ、次の事業所と候補日があるものとして、候補日番号ｄを２として、上記ステップ１８０４から１８０６を繰り返す。
【００９８】
候補日の全ての候補日について事業所の順番を割り当てたか、全ての事業所の候補日の割当が完了した場合、次のステップ１８０８に進む。
【００９９】
ステップ１８０８では、全候補日の移動コストの合計と、希望候補日を外れた事業所数、優先度の合計などを計算する。全候補日の移動コストの合計は、各候補日において、１日の間に事業所間を移動する移動コストの、全候補日での合計である。また、希望候補日を外れた事業所数は、前述の順列の順番に候補日を前から割り当てた結果、各事業所に割り当てられた候補日と、１８０１で取得した事業所毎の希望日が異なる事業所の数を数えて求める。また、優先度の合計は優先度計算部１３０４で求めた事業所の優先度を、候補日が割り当てられた事業所について合計した値である。また、指導人数の合計は、候補日が割り当てられた事業所の指導人数４０２の合計である。
【０１００】
次に、ステップ１８０９では、全候補日の移動コストデータの合計が、既に求めた移動コストデータの合計値の最小値より小さく、かつ、希望日を外れた事業所数が、既に求めた希望日を外れた事務所数の最小値より小さく、かつ、優先度の合計が最大値より大きいか、または、指導人数の合計が最大値より大きいか、の判定を行なう。これらの条件を満たせば適合状態が高いと判定してステップ１８１０へ進み、満足しない場合にはステップ１８１１へ進む。そして、上記ステップ１８０９の全ての条件を満足する場合、ステップ１８１０で、選択した順列に基づく候補日を解の候補日として保存する。ステップ１８０９の条件は、各々スコア化して組合せ合計するなどで評価しても良い。
【０１０１】
次に、ステップ１８１１では、事業所の順列について全ての順列について比較したか否かを判定する。ここでは、まだ、地点番号の１、２、３、・・・、１０の順列しか実施していないので、次に、１、３、２、・・・、１０というように別の順列を作成して１８１３、１８０３のステップから、１８１０のステップを繰り返す。このようにして、全ての順列について比較したら処理を終了する。
【０１０２】
ここで、ステップ１８０９において、複数のパラメータを比較している。例えば、事業所数が多くすべての事業所を回ることが困難な場合、優先度の合計や指導人数の合計が大きいものを採用することで、指導による効果が期待できる事業所、より多くの人を指導できる事業所を回る候補日が作成できる。また、事業所数が少なく、候補日が余る場合は、移動コストの合計が小さいものを採用することで、事業所間の移動の時間を最小にした候補日を作成できる。また、希望候補日を外れた事業所数を最小にすることで、複数の事業所からの希望候補日を反映した候補日を作成できる。
【０１０３】
以上に示したように、健診情報１２０１や指導情報１２０２等に基づいて個人毎の改善の可能性から事業所単位の優先度を求め、この優先度に応じて候補日を割り当てることで、全体としての指導の効率、効果を高めることができる。また、事業所に複数の候補日を提示し、その回答（希望候補日）を受け付けて、優先度の合計や指導人数の合計、また、移動コストや希望候補日を見ながら候補日を作成することで、事業所の希望候補日を反映しつつ、効率的な訪問予定日を作成することができる。
【０１０４】
また、上記第２の実施形態では、全候補日の移動コストの合計、希望候補日を外れた事業所数、優先度の合計の、それぞれ最大値や最小値となるものを解とする場合を例に説明したが、他の方法を用いてもよい。例えば、それぞれの条件をスコア化して全て、または一部を合計し、そのスコアが最大または最小となるようにすることもできる。このようにすることで、矛盾する条件下でも解を得ることができる。また、それぞれの条件に重要度に応じて重みをつけて、合計するようにしてもよい。事業所の希望を重視するか、優先度を重視するかなど、訪問計画を立てる時点で、計画を立てる人が重視する条件を優先した計画を作成することができる。
【０１０５】
また、クラスタを作成するときの処理として、以下のような処理を加えても良い。例えば、ある事業所の業務量データにおいて、指導人数４０２が２０人や１００人などと大きい場合は、特例の事業所として例外事業所として提示しても良い。また、このような場合は指導時間４０３が許容量データの許容時間５０２より大きいので、一つの事業所を、指導時間４０３が許容時間５０２に収まるような数に分割して、分割した一つ一つを事業・クラスタとして扱ってもよい。このようにすることで、規模の大きな事業所について複数の指導日を割り当てることができる。
【０１０６】
また、ある事業所について、他の全ての事業所との移動コストが大きく許容時間５０２を超える場合、候補日を重複させても移動が困難なので、孤立事業所として別扱いとしても良い。その場合、この事業所に対しては、１日分の候補日を提示し、他の事業所と、候補日から１日除いた日程を用いて、これまで述べた処理を行うようにしても良い。他の事業所と同日に訪問することが困難な事業所については、同じ候補日に重複することを避けることができる。
【０１０７】
また、上記各実施形態では、クラスタリングの処理を行ってから、最適化処理を行う方法について示したが、クラスタを作る処理と、順番を決める最適化処理とを同時に行うようにしても良い。例えば、クラスタの分割について複数のパターンを作成し、最適化処理において、クラスタのパターン毎に最適化処理を行い、さらにそのクラスタのパターンの間で、最も移動コストが小さいクラスタのパターンと訪問順番の組合せを求める方法を用いることもできる。このようにすることで、クラスタの分割方法と、候補日の作成の両方を最適にすることができる効果がある。特に、事業所の数が候補日の数に比べて多く、全ての事業所を訪問することが困難な場合などにおいて、優先度と事業所間の移動コストの両方の観点から候補日を生成することができる。
【０１０８】
また、上記各実施形態では、訪問する指導者が１人の場合を例に説明したが、複数の指導者が訪問するようにしてもよい。例えば、図５のように、担当者番号５０１が１、２、３と複数存在するが、１日あたりの許容時間は、許容時間５０２の３００、２００、１２０を合計した６２０を用いるようにしても良い。また、別の方法として、指導者の人数分、クラスタリングと最適化処理を行うようにしても良い。この場合、一人目の指導者の許容時間５０２を用いて図７に示すように、クラスタリング７０２から最適化処理７０４、候補日の付与７０５まで行った後、既に候補日を付与した事業所を除いたデータを用い、２人目の許容時間５０２を用いて図７の処理を行う、というように、指導担当者の人数分繰り返す方法を用いても良い。この方法では、一人当たりの許容時間の違いに対応して候補日を作成することができる。また、ここまで示した実施形態では、許容時間は１日あたりの勤務の時間を用いる方法を示したが、候補日に対する勤務予定から求めた１日毎の勤務時間を、候補日別の許容時間としてもよい。この場合、クラスタリングや最適化処理については、指導担当者の勤務が予定されている日のみを候補日の中から抜き出し、その平均の勤務時間を許容時間として用いてもよい。また、事業所の希望に基づく訪問日程生成部１２１０では、候補日別の勤務予定を許容時間とすることで、各訪問日毎の指導担当者の勤務時間に応じて訪問予定日を作成することができる。
【０１０９】
また、上記各実施形態では、健診情報や指導情報を事業所の優先度の算出に用いる方法について示したが、別の活用をしてもよい。例えば、図４に示した業務量データは、指導一人当たり３０分というように固定していたが、健診の結果が比較的良くない人がいる場合には、指導時間を長くして、比較的軽い人が多い場合には指導時間を短くして、事業所毎の指導時間を計算するようにしても良い。また、指導の実績から、前年の指導の結果に改善が見られた人については指導時間を短くし、前年の指導結果が良くない人については指導時間を長くする方法もある。また、事業所毎に、以前に指導に訪問した実績がある事業所は時間を短く、指導に訪問した実績が無い事業所は時間を長く取るなどの方法を取っても良い。このように、健診情報や指導情報に基づいて、指導時間を調整することで、最適化処理において事業所に重み付けをすることができる。
【０１１０】
また、上記各実施形態では、最適化処理において総当り的に解を求める方法について説明したが、事業所の数やクラスタの数が多い場合には、現実的な時間では困難となる場合がある。そのような場合には、他の方法を用いても良い。例えば、予め処理時間や繰り返し回数を指定しておき、その中で最小の値を解とするようにしても良い。また、焼きなまし法や遺伝的アルゴリズムなどの手法を用いて解を探索してもよい。繰り返し回数や処理時間の制限などの条件を用いて、その中での最小値となる候補日を解とすることで、事業所数やクラスタ数が多い場合でも、実際に処理可能な時間の中で処理を行うことができる。
【０１１１】
また、クラスタリングの処理や、事業所の希望に応じた候補日を生成する処理においても、高速化の手法を取り入れても良い。高速化の手法を加えることで、処理時間や繰り返し回数の条件を設定し、その範囲内で最小となるクラスタ区分や候補日を解とすることで、現実的な時間で処理可能となる。
【０１１２】
また、上記の各実施形態では、式１が最小になるクラスタの順列を求める方法を例に説明したが、別の式を用いてもよい。例えば、式４は、式１の第２項の計算の順番を変えたものである。式１では、ｉ＋付与候補日数−１番目のクラスタからｉ番目のクラスタへの移動コストを合計していたが、この場合は、i番目のクラスタからi＋付与候補日数−１番目のクラスタへの移動コストを合計する場合の式である。行きと帰りの移動コストが同じ場合は同じ結果が得られる。また、最適化処理で行うクラスタの順列は一般の順列を用いていたが、円順列の考え方を用いるようにしても良い。この場合は、式１や式４の変わりに式５の結果を最小とする順列を求めるようにする。式５では、第１項、第２項は式４と同じで、第３項は、順列の最後尾のクラスタと先頭のクラスタの移動コスト、さらに、第４項は、順列の後ろから先頭で、付与候補日数−１はなれたクラスタ間の移動コストを計算している。例えば、クラスタリング部１１９による、クラスタ数の計算ステップ８０１において、クラスタ数を候補日数と同数とする。例えば、候補日が５日の場合には、クラスタ数を５とする。さらに、最適化処理部１１４の処理を示す図９の説明では、１、２、３、４、５という順列の場合、９０２のステップでは、クラスタ１と２の移動コストからクラスタ４と５の移動コストまでの各地点間の移動コストを合計していたが、さらに、順列の最後尾と先頭の間の移動コストであるクラスタ５と１の移動コストを合計する。また、９０３のステップでは、第２項では、クラスタ１から３、クラスタ２から４、クラスタ３から５のみを合計していたが、さらに、クラスタ４から１、クラスタ５から２の移動コストを合計する。その上で、移動コストが最小となる順列を求めるようにする。そして、日程付与部１１５による候補日を付与するステップ７０５では、１日ずつずらしながら候補日を付与するとき、順列の１番目のクラスタに候補日番号１から３の候補日、２番目のクラスタに候補日番号２から４の候補日、３番目のクラスタに候補日番号３から５の候補日、４番目のクラスタに候補日番号４、５、１、５番目のクラスタに候補日番号５、１、２と、循環するように候補日を付与する。このようにすることで、クラスタ数と候補日の数を同数とすることができ、候補日の無駄を省くことができる。さらに、円順列とすることで、順列の数を減らすことができ、組合せ計算の繰り返し数を減らすことで、計算負荷を軽減することができる。
【０１１３】
【数４】
2010224660.tif 000006
【０１１４】
【数５】
2010224660.tif 000007
【０１１５】
また、上記実施形態では、訪問保健指導を例に説明したが、営業担当者の訪問計画など他の利用場面にも応用することができる。地域の中に存在する地点の家庭や企業などの団体や個人に対して、複数の候補日を提示して希望日を聞いた上で訪問計画を作成するような場合において、本発明の訪問計画作成装置は、近隣の地点をクラスタ化し、候補日の数のクラスタ同士が近くなるように順番を決めて、その順番に１日ずつずらして候補日を付与することで、効率的な訪問を行うことができる候補日の作成、及び、効率的な実際の訪問の候補日を作成することができる。
【産業上の利用可能性】
【０１１６】
以上のように、本発明は訪問日程を検討する計算機システムに適用することができ、特に保健指導の管理を行う計算機システムに好適である。
【符号の説明】
【０１１７】
１０１  訪問計画作成装置
１０２  入力装置
１０３  出力装置
１０４  ＣＰＵ
１０５  メモリ
１０６  記憶装置
１１１  移動コスト入力部
１１２  候補日一覧入力部
１１３  付与日数入力部
１１４  最適化処理部
１１５  日程付与部
１１６  候補日程出力部
１１７  許容量入力部
１１８  業務量入力部
１１９  クラスタリング部
１２０  移動コスト計算部
１２１  地点情報入力部
１２１０  訪問日程作成部
１３０１  健診情報入力部
１３０２  指導情報入力部
１３０３  個人属性情報入力部
１３０４  優先度計算部
１３０５  希望日程入力部
【図１】
2010224660.tif 000008
【図２】
2010224660.tif 000009
【図３】
2010224660.tif 000010
【図４】
2010224660.tif 000011
【図５】
2010224660.tif 000012
【図６】
2010224660.tif 000013
【図７】
2010224660.tif 000014
【図８】
2010224660.tif 000015
【図９】
2010224660.tif 000016
【図１０】
2010224660.tif 000017
【図１１】
2010224660.tif 000018
【図１２】
2010224660.tif 000019
【図１３】
2010224660.tif 000020
【図１４】
2010224660.tif 000021
【図１５】
2010224660.tif 000022
【図１６】
2010224660.tif 000023
【図１７】
2010224660.tif 000024
【図１８】
2010224660.tif 000025
【図１９】
2010224660.tif 000026